一区二区三区在线视频播放_一区在线播放视频_欧美.com_亚洲精品无人区_久久亚洲精品视频_国产精品久久久久久久免费软件_久久av一区二区三区_欧美国产日韩精品免费观看_亚洲一区自拍_91久久国产精品91久久性色_亚洲一区二区三区在线播放_久久久久久久一区_国产精品一区二区久久久_精品成人国产_亚洲欧洲精品一区二区三区波多野1战4_在线观看亚洲精品

綠色資源網:您身邊最放心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專題|廠商大全

綠色資源網

技術教程
您的位置:首頁服務器類Linux服務器 → Linux環境使用TC進行服務器流量控制方法

Linux環境使用TC進行服務器流量控制方法

我要評論 2009/07/16 14:39:47 來源:綠色資源網 編輯:佚名 [ ] 評論:0 點擊:704次

公司目前有一臺服務器,網絡環境太高,那臺服務器和源服務器連接下載,就跑到400M-500M,為了控制一下,所以研究了一下TC,來做流量控制。給他控制到小點,不要讓這一臺占了所有的網絡。TC很強大,很多所謂的硬件路由器,都是基于這個做的。

一、Linux下使用TC進行服務器流量控制方法

1)假設eth0位是服務器的外網網絡接口,首先在eth0的qdiscA,qdiscA控制通過本機到外網的速度,因此可用來控制服務器對外數據傳輸速度。

#tc qdisc add dev eth1 root handle 1:htb default 1

添加 設置接口 最上層 句柄(做標記用) 標記 默認使用1的class

解釋如下:無論是隊列,還是class和filter都有ID之類的標志符,一般都有parent(父,上層的),注意ID具有接口本地性,不同的網絡接口可以有相同的ID.對于這里因為qdisc在頂部,所以parent無,用‘root’字樣來標識,ID用1:來標志

‘default 91′表示當某個ip流不滿足任何已設定的filter規則時,將自動歸入class 1中。更詳細的指令規則說明請參考手冊。

2)然后在qdisc下建立兩個class,來指定eth0控制通過本機到外網的速度

#tc class add dev eth0 parent 1:0 classid1:30 htb rate 2mbit ceil 4mbit prio 2

注:以上就是我們控制輸出服務器的速度,為2M,最大可以到4M

rate: 是一個類保證得到的帶寬值。如果有不只一個類,請保證所有子類總和是小于或等于父類。

prio:用來指示借用帶寬時的競爭力,prio越小,優先級越高,競爭力越強。

ceil: ceil是一個類最大能得到的帶寬值。

3)接著針對不同的應用在各root class下設置不同的類,示例如下。(如果只有一個類,這個就沒有必要了)

#tc class add dev eth0 parent 1:30 classid 1:31 htbrate 0.5mbit ceil 2mbit prio 3

同時為了不使一個會話永占帶寬,在節點(即本文的各應用結點)添加隨即公平隊列sfq.(多IP)

#tc qdisc add dev eth0 parent 1:31 handle 31:sfq perturb 10

4)接著添加過濾器。

#tc filter add dev eth0 parent 1: protocol ipprio 31 handle 31 fw flowid 1:31

5)用iptable打標,也可以使用u32之類

#iptables -t mangle -I FORWARD -i !eth1 -p tcp –sport 80 -s xxx.xxx.xxx.xxx –j MARK –set-mark 31

二、TC對最對高速度的控制 | Rate ceiling 速率限度

參數ceil指定了一個類可以用的最大帶寬, 用來限制類可以借用多少帶寬。缺省的ceil是和速率一樣,這個特性對于ISP是很有用的, 因為他們一般限制被服務的用戶的總量即使其他用戶沒有請求服務。(ISPS 很想用戶付更多的錢得到更好的服務) ,注根類是不允許被借用的, 所以沒有指定ceil。

(注: ceil的數值應該至少和它所在的類的速率一樣高, 也就是說ceil應該至少和它的任何一個子類一樣高。)

Burst 突發

網絡硬件只能在一個時間發送一個包這僅僅取決于一個硬件的速率。 鏈路共享軟件可以利用這個能力動態產生多個連接運行在不同的速度。所以速率和ceil不是一個即時度量只是一個在一個時間里發送包的平均值。實際的情況是怎樣使一個流量很小的類在某個時間類以最大的速率提供給其他類。 burst 和cburst 參數控制多少數據可以以硬件最大的速度不費力的發送給需要的其他類。

如果cburst 小于一個理論上的數據包他形成的突發不會超過ceil 速率, 同樣的方法TBF的最高速率也是這樣。

你可能會問, 為什么需要bursts . 因為它可以很容易的提高向應速度在一個很擁擠的鏈路上。 比如WWW 流量是突發的。 你訪問主頁。 突發的獲得并閱讀。 在空閑的時間burst將再”charge”一次。

(注: burst 和cburst至少要和其子類的值一樣大。)

三、TC命令格式:

加入

tc qdisc [ add | change | replace | link ] dev DEV [ parent qdisc-id | root ] [ handle qdisc-id ] qdisc [ qdisc specific parameters ]

tc class [ add | change | replace ] dev DEV parent qdisc-id [ classid class-id ] qdisc [ qdisc specific parameters ]

tc filter [ add | change | replace ] dev DEV [ parent qdisc-id | root ] protocol protocol prio priority filtertype [ filtertype specific parameters ] flowid flow-id

顯示

tc [-s | -d ] qdisc show [ dev DEV ]

tc [-s | -d ] class show dev DEV tc filter show dev DEV

查看TC的狀態

tc -s -d qdisc show dev eth0

tc -s -d class show dev eth0

刪除tc規則

tc qdisc del dev eth0 root

實例

一、下載

下載限制單個IP

tc qdisc add dev eth0 root handle 1: htb r2q 1

tc class add dev eth0 parent 1: classid 1:1 htb rate 30mbit ceil 60mbit

tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.1.2 flowid 1:1

就可以限制192.168.1.2的下載速度為30Mbit最高可以60Mbit

r2q,是指沒有default的root,使整個網絡的帶寬沒有限制

下載整段IP

tc qdisc add dev eth0 root handle 1: htb r2q 1

tc class add dev eth0 parent 1: classid 1:1 htb rate 50mbit ceil 1000mbit

tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.111.0/24 flowid 1:1

就可以限制192.168.111.0 到255 的帶寬為3000k了,實際下載速度為200k左右。

這種情況下,這個網段所有機器共享這200k的帶寬。

還可以加入一個sfq(隨機公平隊列)

tc qdisc add dev eth0 root handle 1: htb r2q 1

tc class add dev eth0 parent 1: classid 1:1 htb rate 3000kbit burst 10k

tc qdisc add dev eth0 parent 1:1 handle 10: sfq perturb 10

tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.111.168 flowid 1:1

sfq,他可以防止一個段內的一個ip占用整個帶寬。

TC簡介

在Linux中,TC有二種控制方法CBQ和HTB.HTB是設計用來替換CBQ的。它是一個層次式的過濾框架。TC包括三個基本的構成塊: 隊列規定qdisc(queueing discipline )、類(class)和分類器(Classifiers)。

隊列(queueing discipline):用來實現控制網絡的收發速度。通過隊列,Linux可以將網絡數據包緩存起來,然后根據用戶的設置,在盡量不中斷連接(如 TCP)的前提下來平滑網絡流量。需要注意的是,linux對接收隊列的控制不夠好,所以我們一般只用發送隊列,即“控發不控收”。它封裝了其他兩個主要 TC組件(類和分類器)。內核如果需要通過某個網絡接口發送數據包,它都需要按照為這個接口配置的qdisc(排隊規則)把數據包加入隊列。然后,內核會 盡可能多地從qdisc里面取出數據包,把它們交給網絡適配器驅動模塊。

最簡單的QDisc是pfifo它不對進入的數據包做任何的處理,數據包采用先入先出的方式通過隊列。不過,它會保存網絡接口一時無法處理的數據包。

隊列規則包括FIFO(先進先出),RED(隨機早期探測),SFQ(隨機公平隊列)和令牌桶(Token Bucket),類基隊列(CBQ),CBQ 是一種超級隊列,即它能夠包含其它隊列(甚至其它CBQ)。

class用來表示控制策略。很顯然,很多時候,我們很可能要對不同的IP實行不同的流量控制策略,這時候我們就得用不同的class來表示不同的控制策略了。

filter用來將用戶劃入到具體的控制策略中(即不同的class中)。比如,現在,我們想對xxa,xxb兩個IP實行不同的控制策略 (A,B),這時,我們可用filter將xxa劃入到控制策略A,將xxb劃入到控制策略B,filter劃分的標志位可用u32打標功能或 IPtables的 set-mark(大多使用iptables來做標記)功能來實現。

目前,TC可以使用的過濾器有:fwmark分類器,u32分類器,基于路由的分類器和RSVP分類器(分別用于IPV6、IPV4)等;其 中,fwmark分類器允許我們使用 Linux netfilter 代碼選擇流量,而u32分類器允許我們選擇基于 ANY 頭的流量 .需要注意的是,filter(過濾器)是在QDisc內部,它們不能作為主體。

數據包->iptables(在通過iptables時,iptables根據不同的ip來設置不同的mark)->TC(class)->TC(queue)。


關鍵詞:Linux,服務器

閱讀本文后您有什么感想? 已有 人給出評價!

  • 1 歡迎喜歡
  • 1 白癡
  • 1 拜托
  • 1 哇
  • 1 加油
  • 1 鄙視
一区二区三区在线视频播放_一区在线播放视频_欧美.com_亚洲精品无人区_久久亚洲精品视频_国产精品久久久久久久免费软件_久久av一区二区三区_欧美国产日韩精品免费观看_亚洲一区自拍_91久久国产精品91久久性色_亚洲一区二区三区在线播放_久久久久久久一区_国产精品一区二区久久久_精品成人国产_亚洲欧洲精品一区二区三区波多野1战4_在线观看亚洲精品
伊人久久综合| 欧美一区二区三区免费在线看| 久久视频在线视频| 欧美精品一卡二卡| 久久精品99| 久久精品视频一| 免费成人高清| 欧美成人性生活| 美女精品在线观看| 亚洲福利专区| 欧美性一二三区| 国产精品久久久久aaaa樱花| 9l视频自拍蝌蚪9l视频成人| 亚洲一区二区影院| 久久久7777| 在线成人激情| 欧美日韩中字| 老司机67194精品线观看| 久久久99精品免费观看不卡| 午夜国产精品视频| 国内外成人免费视频| 国产老女人精品毛片久久| 女人香蕉久久**毛片精品| 亚洲午夜91| 久久人人爽国产| 欧美日韩亚洲在线| 欧美日韩国产区一| 国产精品电影观看| 欧美日韩另类在线| 欧美激情按摩在线| 亚洲精品一区二区三| 韩国一区二区三区美女美女秀| 久久婷婷色综合| 亚洲国产精品黑人久久久| 亚洲国产成人porn| 欧美福利视频网站| 亚洲精品一二| 欧美一区视频在线| 国产视频久久| 9色精品在线| 欧美日韩妖精视频| 欧美主播一区二区三区| 激情综合色综合久久综合| 亚洲三级毛片| 久久精品国产视频| 午夜精品久久久久影视| 久久尤物视频| 久久综合色天天久久综合图片| 伊人成人在线视频| 久久天天躁夜夜躁狠狠躁2022| 欧美一区二区三区视频| 国产视频欧美视频| 久久亚洲综合| 欧美午夜不卡视频| 久久精品国产亚洲a| 亚洲国产清纯| 最近中文字幕mv在线一区二区三区四区| 国产精品综合| 久久久久看片| 亚洲夜晚福利在线观看| 亚洲精品中文字幕在线观看| 欧美日韩国产bt| 国产揄拍国内精品对白| 久久九九精品| 欧美日韩 国产精品| 99成人免费视频| 一区二区电影免费在线观看| 亚洲精品欧洲| 亚洲欧美日韩在线播放| 一区二区日韩免费看| 亚洲一区二区精品在线观看| 在线播放视频一区| 欧美日韩国产精品一卡| 麻豆精品在线视频| 国产一区二区三区在线观看精品| 久久不射中文字幕| 亚洲影视九九影院在线观看| 老色鬼精品视频在线观看播放| 亚洲欧洲日韩综合二区| 欧美日韩国产91| 欧美国产精品久久| 蜜桃av一区二区三区| 欧美一区二粉嫩精品国产一线天| 亚洲自拍电影| 欧美电影专区| 亚洲欧洲日本专区| 韩国精品主播一区二区在线观看| 一区二区在线视频| 99精品欧美一区| 国产精品高潮视频| 美女露胸一区二区三区| 久久九九国产精品怡红院| 99天天综合性| 欧美午夜不卡在线观看免费| 亚洲成在线观看| 久久久7777| 老色批av在线精品| 制服诱惑一区二区| 久久精品网址| 亚洲欧美日韩在线播放| 国产精品影音先锋| 欧美日韩精品综合| 亚洲午夜极品| 久久亚洲春色中文字幕久久久| 国产精品久久久久国产精品日日| 你懂的亚洲视频| 欧美精品一区二区三区久久久竹菊| 亚洲综合色网站| 国产欧美视频一区二区| 亚洲一区二区三区激情| 亚洲黄色在线视频| 免费成人在线观看视频| 国产精品一区二区你懂得| 亚洲欧洲av一区二区三区久久| 午夜性色一区二区三区免费视频| 亚洲欧美日韩国产精品| 亚洲欧美日韩视频二区| 欧美日韩亚洲一区二区三区四区| 国产精品伦子伦免费视频| 亚洲一区二区三区在线| 国产亚洲午夜高清国产拍精品| 国产综合婷婷| 国产精品尤物| 国产精品制服诱惑| 亚洲在线一区二区三区| 亚洲日本成人女熟在线观看| 在线亚洲欧美专区二区| 欧美三级在线播放| 亚洲国产一区二区三区高清| 在线亚洲精品福利网址导航| 国产亚洲欧美日韩一区二区| 亚洲综合电影一区二区三区| 国产视频精品va久久久久久| 久久久综合网| 国产乱码精品一区二区三区不卡| 国产精品亚洲第一区在线暖暖韩国| 欧美性大战久久久久久久| 一区二区精品在线观看| 国产精品九色蝌蚪自拍| 国产精品国产自产拍高清av| 亚洲永久字幕| 久久久久9999亚洲精品| 在线观看亚洲一区| 在线观看国产精品淫| 精久久久久久| 性欧美超级视频| 美日韩精品免费| 在线日韩欧美视频| 亚洲欧洲一区二区在线观看| 久久欧美中文字幕| 久久综合五月| 欧美一区二区精品久久911| 欧美一区二区三区免费观看视频| 亚洲天堂网站在线观看视频| 欧美另类69精品久久久久9999| 亚洲精品少妇| 欧美精品免费观看二区| 国内精品久久久久久久果冻传媒| 久久精品成人欧美大片古装| 国产精品免费网站| 久久久不卡网国产精品一区| 欧美 亚欧 日韩视频在线| 欧美一区二区在线免费观看| 欧美日韩国产高清视频|