2011/02/21

Dummynet и io_fast

Проблема: ipfw не ограничивает полосу пропускания как мы того хотим. Например, мы ограничили клиенту полосу таким образом (целиком на его vlan):

${ipfw} pipe 1 config bw 100Mbit/s
${ipfw} pipe 2 config bw 200Mbit/s
${ipfw} 10 pipe 2 ip from any to any via vlan1541 in
${ipfw} 11 pipe 1 ip from any to any via vlan1541 out

Через некоторое время увидели на графиках, что входящий трафик составил примерно 400Мбит. Оказалось дело в sysctl net.inet.ip.dummynet.io_fast, который у нас был выставлен в режим fast (1).

После установки в режим normal все встало на свои места. Графики (io_fast=1 — около 400Мбит/с, и после включения io_fast=0 — 200Мбит/с):

cpu
traf

man 8 ipfw:

There are two modes of dummynet operation: ``normal'' and ``fast''. The
``normal'' mode tries to emulate a real link: the dummynet scheduler
ensures that the packet will not leave the pipe faster than it would on
the real link with a given bandwidth. The ``fast'' mode allows certain
packets to bypass the dummynet scheduler (if packet flow does not exceed
pipe's bandwidth). This is the reason why the ``fast'' mode requires
less CPU cycles per packet (on average) and packet latency can be signif-
icantly lower in comparison to a real link with the same bandwidth. The
default mode is ``normal''. The ``fast'' mode can be enabled by setting
the net.inet.ip.dummynet.io_fast sysctl(8) variable to a non-zero value.

Комментариев нет:

Ярлыки

perl (30) infosec (26) links (21) freebsd (16) url (16) zabbix (14) ipv6 (13) linux (12) asterisk (10) mojo (10) monitoring (10) snmp (10) fun (8) openssl (7) security (7) bgbilling (6) cisco (6) mysql (6) ubuntu (6) blogs (5) dlink (5) kannel (5) crypto (4) exploits (4) ipv4 (4) java (4) js (4) law (4) microsoft (4) mikrotik (4) mojolicious (4) oracle (4) performance (4) postfix (4) radio (4) ssl (4) tools (4) utf-8 (4) vmware (4) windows (4) android (3) apache (3) books (3) debug (3) dns (3) google (3) hp (3) json (3) latex (3) openbsd (3) python (3) quotes (3) rhel (3) ripe ncc (3) syslog (3) ubnt (3) vim (3) vm (3) agi (2) ansible (2) atlassian (2) backup (2) bgp (2) bind (2) centos (2) console (2) cpan (2) cpanmin (2) css (2) ctf (2) docker (2) dwpd (2) edge-core (2) editors (2) elasticsearch (2) endurance (2) git (2) gns3 (2) graphite (2) hack (2) hdd (2) hyper-v (2) isp (2) mac (2) management (2) mibs (2) movie (2) msa (2) ntp (2) pentest (2) puppet (2) qa tests (2) reverse engeenering (2) shell (2) smpp (2) social engineering (2) spf (2) ssd (2) statistic (2) storage (2) switches (2) tbw (2) tcp/ip (2) tex (2) usb (2) websec (2) wsl (2) xsrf (2) yandex (2) ПДн (2) электронное правительство (2) #snmp #cisco (1) ESNI (1) Xorg (1) amavis (1) amazon s3 (1) analyze (1) anonymous (1) applications (1) as (1) ascii (1) autofs (1) balancer (1) bandwidth (1) bem (1) bl (1) brendan gregg (1) cache (1) certificate (1) chef (1) chief (1) cluster (1) cnupm (1) cnupmsave (1) confluence (1) cpu (1) cvs (1) dbi (1) ddos (1) deploy (1) devices (1) dhcp (1) dht (1) diet (1) disk (1) diskarray (1) dummynet (1) dynax60 (1) epub (1) equipment (1) esx (1) esxi (1) fax (1) firefox (1) firmware (1) fitness (1) form (1) fs (1) fsb (1) ftp (1) go (1) golf (1) gprs (1) graphics (1) gsm (1) honeypot (1) hpe (1) hpe ilo manager (1) html (1) img (1) iops (1) ios (1) ipn (1) ipsec (1) iptv (1) iso (1) itil (1) itsm (1) jabber (1) jira (1) joke (1) jsonp (1) kafka (1) kubernetes (1) law. simcards (1) lens (1) logstash (1) mem (1) memory (1) metasploit (1) microscope (1) mindmap (1) mobile (1) modem (1) mp3 (1) music (1) nano (1) nas (1) netbox (1) netdev (1) netmiko (1) noc (1) nvme (1) ocfs2 (1) ocs2 (1) openfire (1) openvpn (1) oscm (1) ospf (1) otrs (1) packet filter (1) packet tracer (1) parsing (1) pass-the-hash (1) pf (1) pgu.mos.ru (1) phd (1) php (1) poe (1) ports (1) postfixadmin (1) ppp (1) presentation (1) profiler (1) protobuf (1) quickspecs (1) rabbitmq (1) radmin (1) raid (1) repo (1) rest (1) riemann (1) rkn (1) rrd (1) rs-232 (1) rss (1) rtp (1) ruby (1) runet (1) scanners (1) serialization (1) sip (1) skype (1) sms (1) snmptranslate (1) soap (1) spam (1) spamcop (1) specs (1) sql (1) ssrf (1) standarts (1) strategy (1) sudoers (1) svn (1) syslog-ng (1) tde200 (1) tftp (1) tls (1) tomcat (1) tuning (1) uce (1) underground (1) ups (1) video (1) voip (1) vpn (1) wds (1) web (1) websockets (1) wifi (1) wireless (1) x-plane (1) xml (1) xss (1) zabbix snmp (1) верстка (1) гибдд (1) гипервизоры (1) здоровье (1) панчеры (1)