婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Linux模擬網絡丟包與延遲的方法

Linux模擬網絡丟包與延遲的方法

熱門標簽:智能電話機器人線路 江蘇電銷外呼防封系統是什么 長沙開福怎么申請400電話 東莞人工智能電銷機器人供應商 金融行業外呼線路 百度地圖標注要不要錢 高德地圖標注無營業執照 廣州電銷機器人系統圖 賀州市地圖標注app

netem 與 tc:

netem 是 Linux 2.6 及以上內核版本提供的一個網絡模擬功能模塊。該功能模塊可以用來在性能良好的局域網中,模擬出復雜的互聯網傳輸性能,諸如低帶寬、傳輸延遲、丟包等等情況。使用 Linux 2.6 (或以上) 版本內核的很多發行版 Linux 都開啟了該內核功能,比如Fedora、Ubuntu、Redhat、OpenSuse、CentOS、Debian等等。

tc 是 Linux 系統中的一個工具,全名為traffic control(流量控制)。tc 可以用來控制 netem 的工作模式,也就是說,如果想使用 netem ,需要至少兩個條件,一個是內核中的 netem 功能被包含,另一個是要有 tc 。

需要注意的是:本文介紹的流控只能控制發包動作,不能控制收包動作,同時,它直接對物理接口生效,如果控制了物理的eth0,那么邏輯網卡(比如eth0:1)也會受到影響,反之,如果您在邏輯網卡上做控制,該控制可能是無效的。(注:虛擬機中的多個網卡可以在虛擬機中視為多個物理網卡)。

Linux 有個 tc 工具,即 traffic control,可以用來模擬網絡丟包和延遲。在開發后臺 server 時,如果我們想要知道這個 server 在特定的網絡丟包情況下,是否能表現良好,就可以用 tc 來模擬丟包率。

模擬丟包

下面命令可以模擬丟包,從 eth0 網口出去的包將隨機丟失 10%:

sudo tc qdisc add dev eth0 root netem loss 10%

模擬延遲

下面命令,從 eth0 網口出去的包將延遲 40ms:

sudo tc qdisc add dev eth0 root netem delay 40ms

特定場景下的丟包和延遲

注意,上面我們介紹的命令,是針對整個 eth0 網口起作用的,也就是說,只要是從 eth0 出去的所有的包,都會產生隨機丟包或者延遲。但有時候,我們只想讓丟包和延遲作用于某個目的地址,那要怎么做呢?

sudo tc qdisc add dev eth0 root handle 1: prio
sudo tc qdisc add dev eth0 parent 1:3 handle 30: netem loss 13% delay 40ms
sudo tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 199.91.72.192 match ip dport 36000 0xffff flowid 1:3

上面的命令,我們告訴 tc,對發往 199.91.72.192:36000 的網絡包產生 13% 的丟包和 40ms 的延遲,而發往其它目的地址的網絡包將不受影響。

刪除規則

好了,模擬完丟包和延遲之后,要記得刪除掉規則:

sudo tc qdisc del dev eth0 root

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

標簽:北京 松原 玉樹 滄州 張家界 廊坊 洛陽 永州

巨人網絡通訊聲明:本文標題《Linux模擬網絡丟包與延遲的方法》,本文關鍵詞  Linux,模擬,網絡,丟包,與,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux模擬網絡丟包與延遲的方法》相關的同類信息!
  • 本頁收集關于Linux模擬網絡丟包與延遲的方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 小金县| 稻城县| 客服| 尚义县| 遂川县| 荆门市| 西青区| 财经| 新邵县| 当涂县| 青川县| 平遥县| 通渭县| 兖州市| 巴南区| 泾源县| 电白县| 博白县| 米泉市| 南部县| 会同县| 金阳县| 新沂市| 平南县| 丰镇市| 无极县| 措勤县| 芦山县| 东乡族自治县| 霞浦县| 江安县| 昌黎县| 陆川县| 离岛区| 福清市| 尖扎县| 晴隆县| 防城港市| 阳谷县| 道孚县| 平原县|