◎ 何怡潔(台北大學法律系學士)
一、定義
Traffic shaping亦稱為 packet shaping(簡稱 TS ,中文譯為流量整形1/塑形/流量控管2),是一種網路頻寬管理技術(Bandwith Mangement),透過限制頻寬(bandwidth)的方法以滿足 Commited Information Rate3(CIR,中文譯為承諾訊息率),將超出CIR的數據放入shaping queue/ buffer4(緩衝區),維持流量穩定。
二、頻寬管理
- 背景
當企業傳輸需求超過企業和網路服務供應商(例如中華電信、數位聯合Seednet、台灣固網 TFN等等)之間的承諾傳輸量時(CIR),或是網路供應商為了提升效率並降低成本,以達到更好的網路服務品質(Quality of Service,QoS5),透過Traffic Shaping 或是 Traffic Policing 的方式調節頻寬,前者的核心概念是延緩超過的數據,後者的核心概念是丟棄超過的資料封包6(packet)。
- 方法
Traffic shaping和Traffic Policing主要透過Leaky Bucket和Token Bucket 等方式來調節頻寬。
Leaky Bucket 即是如同字面上的意思,好比有一個桶子會以固定的速率滴水(意即輸出穩定的網路傳輸速率),桶子本身會接收到忽大忽小忽快忽慢的水滴(意即不規則的數據封包),當桶子裝滿時(意即到達速率大於輸入速率),水滴會暫時放入配置桶等待,依照輸出速率、到達速率、配置桶速率等做出不同的行為,則會有延遲或是拒絕的效果來調節流量。
Token Bucket 則是透過一個以固定速率產生token7將他放入桶子之中,每次傳送數據則依據不同數據大小需要消耗不同數量的Token,當packet通過桶子內也有足夠的token之時,便能夠刪除相對應數量token 之後通過;當桶子內未有足夠的token之時則須等待至累積足夠數量token才能通過:當token bucket 中的token 超過一定數量時則丟棄token。而對於超過速率的packet,則會被丟棄或是標記。
- 例子8
假設傳輸的速度是 100 Mbps,CIR 容許 20 Mbps。當介面以一秒為間距,每一秒只容許傳送 20Mitbs,所以介面以 100 Mbps速度工作時,只需要0.2 秒就可以完成,然後等待 0.8 秒才做下一次傳送。
如果當間距 1 秒縮短至 0.25 秒,每段間距改成只傳送 5 Mbits,則一樣可以達成每秒傳輸 20Mitbs的限制,但每次傳送的間距時間可以大幅降低。
三、與 Traffic Policing 差異
- Traffic Policing簡介
上述介紹中提及的 Traffic Policing(簡稱 TP ,中文譯為流量監管) 也是頻寬管理的方法之一,利用 Token Bucket的原理進行流量調節,透過桶子是否有足夠的Token來進行數據傳輸,再經由比較流量後針對結果發出三種顏色的 Action (行為) ,分別是綠色 Pass/Transmit(傳送)、黃色 Remark(重新標記)、紅色 Drop/Dicard(丟棄)。
- 差異
因為Traffic Shaping 是採取控制出口流量方法,因此僅能用在頻寬帶的出口,但也因此會讓使用者感受到延遲;但因為 Traffic Policing採用丟棄的方法而能夠用在出入口,也因此使用者不會感受到延遲。
Traffic Shaping主要是企業端在面對packet 超過CIR的方法,透過此方式有效率的分配 packet傳送的時間,而Traffic Policing 主要是網路服務商在面對該情況的應對方式,以提供順暢的網路服務。
參考資料
- 林則亦,LTE-A系統下無線資源控制之上行背景流量整形機制,國立交通大學電信工程研究所論文,2004年。
- 廖邦廷,乙太網路流量控管交換器之架構設計,國立台灣大學電信工程研究所論文,2005年。
- Commited Information Rate(承諾訊息率)是網路供應商承諾每段時間內所能通過的流量。
- Buffer(緩衝區)是用來臨時儲存資料的記憶體部分。
- Quality of Service(網路服務品質)是透過特定技術來調節網路流量,以確保資料傳遞維持高效率和品質。
- Packet(資料封包)是將網路傳遞的數據資料切割成數個資料封包。
- Token(代幣)是網路服務端生成的文字、數字或是符號,用以請求連接數據等功能的代幣。
- Network: An overview of traffic shaping,https://www.lumen.com/help/en-us/network/overview-of-traffic-shaping.html