日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Linux 的帶寬管理系統(tǒng)( 二 )



#;tc;qdisc;add;dev;eth0;root;handle;10:;cbq;bandwidth;10Mbit;avpkt;1000

其含義是:我們配置了;eth0;的隊列規(guī)定,root;表示這是根(root)規(guī)定,其句柄;(handle)設定為;10:" 。;其類型為;CBQ 。帶寬為;10;M,平均包大小為;1000;字節(jié) 。
下面生成根類(root;class):

#;tc;class;add;dev;eth0;parent;10:0;classid;10:1;cbq;bandwidth;10Mbit;rate;
10Mbit;allot;1514;weight;1Mbit;prio;8;maxburst;20;avpkt;1000

這條命令其實不比前一條命令有更多的含義 。其中,1514;是;MTU;的值 。;

下面生成;ISP;類:;

#;tc;class;add;dev;eth0;parent;10:1;classid;10:100;cbq;bandwidth;10Mbit;rate;
8Mbit;allot;1514;weight;800Kbit;prio;5;maxburst;20;avpkt;1000;bounded

我們分配了;8;兆的帶寬給它,其中;bounded;表示該類不能超過該閥值 。

下面生成;Office;類:

#;tc;class;add;dev;eth0;parent;10:1;classid;10:200;cbq;bandwidth;10Mbit;rate;
2Mbit;allot;1514;weight;200Kbit;prio;5;maxburst;20;avpkt;1000;bounded

為了更清晰起見,我們的類可以用下圖表示:

我們已經(jīng)向內(nèi)核通知了我們的類,我們還需要告訴內(nèi)核如何管理隊列,如下所示:

#;tc;qdisc;add;dev;eth0;parent;10:100;sfq;quantum;1514b;perturb;15
#;tc;qdisc;add;dev;eth0;parent;10:200;sfq;quantum;1514b;perturb;15

這里,我們使用了隨機公平隊列(sfq),在消耗;CPU;周期較少的情況下,其性能還是可以接受的 。其它一些隊列規(guī)定可能更好,但要占用較多的;CPU;資源 。令牌桶過濾器也經(jīng)常使用 。

下面還有一件事要作:告訴內(nèi)核網(wǎng)絡包和類的映射關系 。

#;tc;filter;add;dev;eth0;parent;10:0;protocol;ip;prio;100;u32;match;ip;dst;
150.151.23.24;flowid;10:200

#;tc;filter;add;dev;eth0;parent;10:0;protocol;ip;prio;25;u32;match;ip;dst;
150.151.0.0/16;flowid;10:100

這里,我們假定;Office;位于防火墻;150.151.23.24;的后面,其它;IP;地址都屬于;ISP 。;u32;匹配是一種比較簡單的匹配,我們可以使用;netfilter;生成更加復雜的匹配規(guī)則 。

我們已經(jīng)分配了下載帶寬,下面是上載帶寬的分配:

#;tc;qdisc;add;dev;eth1;root;handle;20:;cbq;bandwidth;10Mbit;avpkt;1000

#;tc;class;add;dev;eth1;parent;20:0;classid;20:1;cbq;bandwidth;10Mbit;rate;
10Mbit;allot;1514;weight;1Mbit;prio;8;maxburst;20;avpkt;1000

#;tc;class;add;dev;eth1;parent;20:1;classid;20:100;cbq;bandwidth;10Mbit;rate;
8Mbit;allot;1514;weight;800Kbit;prio;5;maxburst;20;avpkt;1000;
bounded

#;tc;class;add;dev;eth1;parent;20:1;classid;20:200;cbq;bandwidth;10Mbit;rate;
2Mbit;allot;1514;weight;200Kbit;prio;5;maxburst;20;avpkt;1000;
bounded

#;tc;qdisc;add;dev;eth1;parent;20:100;sfq;quantum;1514b;perturb;15
#;tc;qdisc;add;dev;eth1;parent;20:200;sfq;quantum;1514b;perturb;15

#;tc;filter;add;dev;eth1;parent;20:0;protocol;ip;prio;100;u32;match;ip;src;
150.151.23.24;flowid;20:200

#;tc;filter;add;dev;eth1;parent;20:0;protocol;ip;prio;25;u32;match;ip;src;
150.151.0.0/16;flowid;20:100

這與前面的描述基本一致,所以就不做更多的解釋了 。

注:;

在前面的例子中,我們注意到:即使;ISP;客戶多數(shù)離線,我們的;Office;用戶也仍然只;有;2;M;的帶寬,這是相當浪費的 。我們可以刪掉;"bounded";參數(shù),這樣,各類之間就可以相互借用帶寬了 。

但是,某些類也許不希望向其它類借用帶寬;比如,一條線路上的兩個互為競爭對手的;ISP;的情況 。在這種情況下,我們可以加上關鍵字;"isolated" 。

3.;結(jié)束語

目前,Linux;所提供的;QoS(服務質(zhì)量)是所有操作系統(tǒng)中最復雜、最完善的 。另外,;BSD;的;ALTQ;應該說也相當不錯;但是,在復雜性、靈活性和可擴展性等方面要落后;Linux;一大截 。我不太清楚微軟的產(chǎn)品是否提供了這方面的功能 。Sun;的;Solaris;提供;了;CBQ;和;RSVP;的功能 。

推薦閱讀