Linux
減慢通過 Linux 路由器的單個連接?
我們有一台 Linux 伺服器作為我們辦公室的路由器/防火牆。偶爾有人會上傳一個佔用我們所有頻寬的大文件。我不想實施任何復雜的規則或流量整形,但我想知道是否有辦法在現場減慢單個連接?我找到了 tcpnice,但它並沒有減慢我測試中的傳輸速度。
如果流量整形不能正確地整形 shell 和主動上傳的流量(我認為可以,但不確定),那麼您可以:
a) 在兩個埠上執行 ssh - 您可以優先考慮一個用於文件傳輸和一個用於互動工作。
b) 限制總 ssh 速率 - 唯一的問題是,如果你填滿了連結的上傳容量,並且如果你將速率限制在 50kbps 之類的東西,ssh 將很好地互動工作(這將迫使使用者使用其他協議來傳輸更大的文件)
c)如果可以的話,優先考慮源地址上的流量
此外,流量整形應該使流量更加平衡,以使單個連接不會壟斷整個鏈路。
編輯:這是一個使用 bash 腳本的範例。它提到 ssh 確實將 TOS 設置為互動到互動,所以我認為 Wondershaper 會利用這一點。
如果您想要除Wondershaper之外的其他選項,請務必查看shorewall或pyshape。
Shorewall 非常成熟,在靈活性、功能和簡單性之間取得了很好的平衡。