在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux下的流量控制原理

我快閉嘴 ? 來源:奇妙的Linux世界 ? 作者:陳少文 ? 2022-09-07 09:10 ? 次閱讀

	

1. Linux 下的流量控制原理

通過對包的排隊,我們可以控制數據包的發送方式。這種控制,稱之為數據整形,shape the data,包括對數據的以下操作:

  • 增加延時
  • 丟包
  • 重新排列
  • 重復、損壞
  • 速率控制

qdisc-class-filter 結構下,對流量進行控制需要進行三個步驟:

  • 創建 qdisc 隊列

上面提到 Linux 是通過包的排隊進行流量的控制,那么首先得有一個隊列。

  • 創建 class 分類

class 實際上,就是劃分流量策略分類。比如劃分兩檔流量限速 10MBps、20MBbs。

  • 創建 filter 過濾

雖然創建了 class 分類,但是并沒有將任何的 IP、Port 綁定到 class 上,此時并不會有控制作用。還需要創建 filter 將指定的 IP、Port 綁定到 class 上,才能使流量控制 class 生效于資源。

TC 是 Linux 下提供的流量控制工具,也是 Cilium/eBPF 等網絡組件的核心基礎設施之一。

2. 限制指定 IP、Port 對本機的訪問速度

2.1 查看網卡

ifconfig

eth0:flags=4163mtu1500
inet1.1.1.1netmask255.255.254.0broadcast1.1.1.1
inet61:11prefixlen64scopeid0x20
ether111:1txqueuelen1000(Ethernet)
RXpackets2980910bytes2662352343(2.4GiB)
RXerrors0dropped0overruns0frame0
TXpackets1475969bytes122254809(116.5MiB)
TXerrors0dropped0overruns0carrier0collisions0

2.2 配置 qdisc-class-filter

  • 創建 qdisc 根隊列
tcqdiscadddeveth0roothandle1:htbdefault1
  • 創建第一級 class 綁定所有帶寬資源

注意這里的單位是 6 MBps,也就是 48 Mbps

tcclassadddeveth0parent1:0classid1:1htbrate6MBpsburst15k
  • 創建子分類 class

可以創建多個子分類,對資源的流量進行精細化管理。

tcclassadddeveth0parent1:1classid1:10htbrate6MBpsceil10MBpsburst15k

這里 ceil 設置的是上限,正常情況下限速為 6MBps,但網絡空閑時,可以達到 10 MBps。

  • 創建過濾器 filter,限制 IP
tcfilteradddeveth0protocolipparent1:0prio1u32matchipdst1.2.3.3flowid1:10

這里對 1.2.3.4 進行限制帶寬為 1:10,也就是 6MBps。當然,你也可以直接給網段 1.2.0.0/16 加 class 策略。

2.3 查看并清理配置

  • 查看 class 配置
tcclassshowdeveth0

classhtb1:10parent1:1leaf10:prio0rate48Mbitceil80Mbitburst15Kbcburst1600b
classhtb1:1rootrate48Mbitceil48Mbitburst15Kbcburst1590b
  • 查看 filter 配置
tcfiltershowdeveth0

filterparent1:protocolippref1u32chain0
filterparent1:protocolippref1u32chain0fh800:htdivisor1
filterparent1:protocolippref1u32chain0fh800::800order2048keyht800bkt0flowid1:10not_in_hw
match01020303/ffffffffat16
  • 清理全部配置
tcqdiscdeldeveth0root

3. 限制本機對指定 IP、Port 的訪問速度

由于排隊規則主要是基于出口方向,不能對入口方向的流量(Ingress)進行限制。因此,我們需要將流量重定向到 ifb 設備上,再對 ifb 的出口流量(Egress)進行限制,以最終達到控制的目的。

3.1 啟用虛擬網卡

  • 將在 ifb 設備
modprobeifbnumifbs=1
  • 啟用 ifb0 虛擬設備
iplinksetdevifb0up

3.2 配置 qdisc-class-filter

  • 添加 qdisc
tcqdiscadddeveth0handleffff:ingress
  • 重定向網卡流量到 ifb0
tcfilteradddeveth0parentffff:protocolipu32matchu3200actionmirredegressredirectdevifb0
  • 添加 class 和 filter
tcqdiscadddevifb0roothandle1:htbdefault10
tcclassadddevifb0parent1:0classid1:1htbrate6Mbps
tcclassadddevifb0parent1:1classid1:10htbrate6Mbps
tcfilteradddevifb0parent1:0protocolipprio16u32matchipdst1.2.3.4flowid1:10

3.3 查看并清理配置

  • 下面是限速本機對指定 IP 訪問的監控圖

7e175268-2e3d-11ed-ba43-dac502259ad0.png

進入的流量被限制在 6 MBps 以下,而出去的流量不被限制。

  • 查看 class 配置
tcclassshowdevifb0

classhtb1:10parent1:1prio0rate48Mbitceil48Mbitburst1590bcburst1590b
classhtb1:1rootrate48Mbitceil48Mbitburst1590bcburst1590b
  • 查看 filter 配置
tcfiltershowdevifb0

filterparent1:protocolippref16u32chain0
filterparent1:protocolippref16u32chain0fh800:htdivisor1
filterparent1:protocolippref16u32chain0fh800::800order2048keyht800bkt0flowid1:10not_in_hw
match01020304/ffffffffat16
  • 清理全部配置
tcqdiscdeldeveth0ingress
tcqdiscdeldevifb0root
modprobe-rifb

審核編輯:湯梓紅


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11345

    瀏覽量

    210412
  • 流量控制
    +關注

    關注

    0

    文章

    27

    瀏覽量

    9675

原文標題:如何在 Linux 下使用 TC 優雅的實現網絡限流

文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    ATM流量控制器IP核的設計和實現

      ATM異步傳遞方式是建立在電路交換和分組交換基礎上的一種面向連接的快速分組交換技術,它采用定長分組作為傳輸和交換的單位,并具有端到端QOS保證、完善的流量控制和擁塞控制,以及較好的技術綜合能力等
    發表于 09-27 11:54

    韓國MKP質量流量控制

    韓國MKP質量流量控制器韓國MKP質量流量控制器吳經理 1324.6675.433 /0755-26998458 工作Q:1139878854 地址:深圳市南山區科技園南海大道4050號MKP致力于
    發表于 03-27 16:40

    韓國MKP流量計 VIC-D220質量流量控制

    `韓國MKP質量流量計VIC-D220質量流量控制器MKP質量流量控制器(Mass Flow Controller) 深圳市現代豪方儀器儀表科技有限公司吳經理:135.3421.8343工作Q
    發表于 12-06 15:15

    MKP TSC-D230流量控制

    MKP TSC-D230流量控制器MKP TSC-D230流量控制器供應韓國MKP氣體質量流量計吳經理 132.4667.5433 /0755-26998458 工作Q:1139878854 MKP
    發表于 01-15 10:08

    VIC-D145 MKP流量控制

    VIC-D145 MKP流量控制器 VIC-D145 MKP流量控制器供應韓國MKP氣體質量流量計--中國總代理吳經理 ***工作Q:1139878854 MKP氣體流量計 VIC-D
    發表于 03-10 11:56

    MKP TSC-230 質量流量控制

    MKP TSC-230 質量流量控制器MKP TSC-230 質量流量控制器供應韓國MKP氣體質量流量計---中國總代-吳經理(***工作Q: 1139878854地址:深圳市南山區科技園南海大道
    發表于 03-30 15:17

    TSC-210質量流量控制

    TSC-210質量流量控制器TSC-210質量流量控制器詳詢請致電 吳經理: ***工作Q: 1139878854MKP型號質量流量控制器VIC-D210,VIC-D220,VIC-D240
    發表于 07-22 10:36

    什么是數據通信的信息流量控制

    什么是數據通信的信息流量控制 流量控制是網絡技術中的一個重要課題,此處以ATM網絡為例對流量控制的各個問題進行說明。ATM網絡
    發表于 03-18 14:35 ?736次閱讀

    什么是ATM流量控制和擁塞控制

    什么是ATM流量控制和擁塞控制 流量控制是網絡技術中的一個重要課題,此處以ATM網絡為例對流量控制的各個問題進行說明。ATM網絡能夠對不同業務
    發表于 04-06 16:04 ?2775次閱讀

    SpaceWire總線的流量控制機制研究

    SpaceWire總線的流量控制機制研究_趙云富
    發表于 01-03 18:00 ?0次下載

    基于LabVIEW的總流量控制理論的仿真應用

    基于LabVIEW的總流量控制理論的仿真應用
    發表于 02-07 18:01 ?26次下載

    分組交換網流量控制的類型_分組交換網流量控制的方式

    指網內相鄰兩節點之間的流量控制,使之維持一個均勻的流量,避免局部地區的阻塞。
    的頭像 發表于 09-13 16:45 ?2917次閱讀

    流量控制閥的工作原理

    流量控制閥是在一定壓力差下,依靠節流口液阻的改變大小來控制節流口流量,從而調節執行元件的運動速度。主要包括節流閥、調速閥、溢流節流閥和分流集流閥等。 流量控制閥的工作原理: 數顯
    的頭像 發表于 08-08 21:41 ?1.4w次閱讀

    如何在Linux使用TC優雅的實現網絡限流

    TC 是 Linux 提供的流量控制工具,也是 Cilium/eBPF 等網絡組件的核心基礎設施之一。
    發表于 12-26 10:06 ?816次閱讀

    啤酒機如何實現液體流量控制

    啤酒機是現代家庭和餐飲場所中越來越受歡迎的設備,它可以方便地提供各種風味的啤酒。流量控制是啤酒機制作啤酒過程中的重要環節之一,而流量計則是實現這一控制的關鍵部件。本文將介紹啤酒機如何通過流量
    的頭像 發表于 11-02 14:29 ?544次閱讀
    啤酒機如何實現液體<b class='flag-5'>流量控制</b>
    主站蜘蛛池模板: 欧美一级特黄aaaaaaa在线观看 | 久久手机看片你懂的日韩1024 | 永久黄网站色视频免费观看 | a中文字幕1区 | 九九99久久精品午夜剧场免费 | 国产亚洲人成网站观看 | 色网站在线观看 | 天天狠天天透 | 国产精品黄页网站在线播放免费 | 波多久久夜色精品国产 | 国产亚洲精品免费 | 精品亚洲综合在线第一区 | 天天干天天插 | 三级黄色免费 | 神马午夜嘿嘿 | 中文天堂在线观看 | 精品videosex性欧美 | 啪啪中文字幕 | 特级全毛片 | 色免费网站 | 在线网站你懂 | 久久九九国产精品怡红院 | 欧美啊片 | 特级做a爰片毛片免费看一区 | 手机看片1024日韩 | 97理论片| 午夜撸| 米奇777色狠狠8888影视 | 人人看人人鲁狠狠高清 | 亚洲高清色 | 亚洲综合色婷婷 | 国产三级国产精品国产普男人 | 日本aaaa级毛片在线看 | 三级毛片在线播放 | 国产精品色婷婷在线观看 | 狠狠色丁香婷婷久久综合不卡 | 成年人网站免费观看 | 奇米米奇777 | 免费亚洲视频在线观看 | 超级极品白嫩美女在线 | 亚洲精品国产美女在线观看 |