網絡通暢密碼:QoS如何提供差異化服務?
一、網絡質量指標
想知道運營商如何保障網絡服務質量,首先要明確評價網絡質量好壞有哪些指標。主要有以下幾個指標:
01帶寬
網絡帶寬是指在單位時間(一般是1秒鐘)內能傳輸的數據量。我們平時說的家庭寬帶100M實際是100Mbit/s,就是說這個線路1秒鐘可以傳輸100Mbit的數據量。通常情況下,帶寬越大,數據通行能力就越強,網絡服務質量就越好。這就好比高速公路,車道越多,車輛通行能力就越強,發生堵車的概率就越低。對于網絡用戶而言,都希望帶寬越大越好,但是,網絡運營和維護成本也就越高。
02時延
時延是指一個報文或分組從網絡的發送端到接收端所需要的延遲時間,一般由傳輸延遲及處理延遲組成。
以語音傳輸為例,時延是指從說話者開始說話到對方聽到所說內容的時間。一般人們察覺不到小于100毫秒的延遲。當延遲在100~300毫秒之間時,說話者可以察覺到對方回復的輕微停頓,這種停頓可能會使通話雙方都感覺到不舒服。超過300毫秒,延遲就會比較明顯,用戶開始互相等待對方的回復。當通話的一方不能及時接收到期望的回復時,說話者可能會重復所說的話,這樣會與遠端延遲的回復碰撞,導致重復。
圖片
03抖動
抖動是時延的變化,是指同一業務流中不同分組所呈現的時延不同。抖動會對語音、視頻等實時業務造成影響,分組到達時間的差異將在語音或視頻中造成斷續。簡單來說,就是按照順序發的數據報文,沒有按照理想的順序送達到目的地, 需要在目的地重新排列順序。利用緩存技術可以克服抖動, 但是會帶來隊列延遲, 因此對于實時性要求高的業務,抖動影響很大。
下面我們舉個例子來看下時延的影響。
員工A向員工B發送一句語音“我留,他不留“。假設每個字是一個分組,發送端將語音分割為6個分組,以均勻的時間間隔順序發出。由于IP網絡的復雜性,每個分組時延可能不同,導致在接收端收到分組時各分組之間的時間間隔與發送時的時間間隔不一致。加上說話者的語氣等因素,員工B可能會將接收到的語音理解成“我留他?不留!”,從而造成語義上的誤解。
圖片
04丟包率
丟包率是指在網絡傳輸過程中丟失報文的數量占傳輸報文總數的百分比。
“高帶寬、低時延、低抖動、低丟包率”的“一高三底”網絡就是我們的“夢中情網”了,但是,從運營、維護的成本考慮,一味增加網絡帶寬是不現實的。那么,能否在有限的帶寬資源條件下,保證網絡質量呢?QoS出現了。
二、什么是QoS
QoS即服務質量,旨在針對各種應用的不同需求,提供不同的服務質量,如提供專用帶寬、降低報文丟包率、減少報文傳送時延及時延抖動等。
QoS技術本身不會增加網絡帶寬,而是在有限的帶寬資源下,如何平衡地為各種業務分配帶寬,針對各種業務的不同需求,為其提供端到端的服務質量保證。簡單來說,就是把流量分三六九等, 對于不同的流量區別對待, 重要的流量優先服務,不重要的流量延遲轉發甚至丟棄。
三、QoS服務模型
QoS為提供一定的服務保障而提出了兩種類型的服務:綜合服務(Integrated Service)和差分服務(DiffServ)。
- 綜合服務在發送報文前需要通過信令向網絡申請特定的資源,網絡需要為每個流維護一份QoS記錄,這影響了業務的擴展,因此綜合服務在實際應用中并不廣泛。
- 差分服務不需要信令,即應用程序在發出報文前不需要通知路由設備。網絡不需要為每個流維護狀態,僅根據每個報文指定的QoS來提供特定的服務,應用廣泛。
下面我就一起看看QoS差分模型是如何實現差異化服務的吧!
四、實現原理
差分服務通常使用多種QoS技術來實現,包括流分類、流量監管、流量整形、擁塞管理、擁塞避免等。QoS技術為業務流提供差分服務,即對各種應用的不同需求提供不同的服務質量,保證重要的數據應用得到優先服務。
在設備上,先要對接收到的流量報文進行分類,分類后對不同類別的報文采取相應的行為動作,如對進入設備的報文進行流量監管、對從設備發出去的報文進行流量整形、對產生擁塞的隊列進行擁塞管理、對擁塞加劇時的隊列采取擁塞避免等。
圖片
01流分類
流分類能夠將網絡業務流分割成多個服務類別,分類后則可以對不同的業務類別應用不同的QoS處理策略,如報文標記/重標記、流量監管、流量整形、擁塞管理等,這些處理策略又被稱為流行為。
常用的報文分類依據包括報文優先級字段(如802.1q、MPLS exp、IPP、DSCP等)、ACL、協議類型、應用程序端口號等。
02流量監管
流量監管可以及時地檢查流量違約情況,并在違約出現的時候立即采取規定的動作。流量監管能夠確定流量在接口上是否超過了約定的速率,對于超過約定速率的流量進行重標記或丟棄。常用的流量監管工具是CAR(Committed Access Rate,約定訪問速率)。
03流量整形
流量整形的目的是使流量不超過指定的速率,如果流量臨時超過了指定的速率,那么超過指定速率的流量會被緩存并延遲發送。常用的流量整形工具是GTS(Generic Traffic Shaping,通用流量整形)。
04擁塞管理
擁塞管理是一種調度工具,決定了網絡發生擁塞時的不同業務流的調度策略。擁塞管理使用隊列緩存技術,將流量報文根據分類策略導入到多個隊列中,按照設定的調度算法和隊列優先級調度隊列中的緩存報文出隊,保證網絡資源能夠被合理應用。
在所有QoS技術中,擁塞管理對應用程序服務質量的影響最為顯著。常用的隊列緩存技術包括PQ(Priority Queuing,優先排隊)、WFQ(Weighted Fair Queuing,加權公平排隊)、CBWFQ(Class Based Weighted Fair Queuing,基于類的加權公平隊列)等。
05擁塞避免
擁塞避免是擁塞管理的補充,用于監督網絡資源的使用情況,當發現擁塞有加速的趨勢時采取主動丟棄報文的策略來對流量進行調整。常用的擁塞避免機制包括RED(Random Early Detection,隨機早期檢測)、WRED(Weighted Random Early Detection,加權隨機早期檢測)等。
簡單來講,就是QoS通過四大組件來保障差異化服務質量。報文分類是基礎,是有區別地實施服務的前提,流量監管和整形主要用于預防擁塞,而擁塞管理和擁塞避免用來解決擁塞。
圖片
五、舉個例子
舉個例子,假如有數據、語音和視頻三類業務,我們想讓語音業務優先轉發,通過QoS如何實現呢?
在QoS差分模型中,報文通常通過自身優先級和設備內部優先級的映射關系進入不同的隊列,再根據調度算法(比如按優先級調度PQ、按權重調度WFQ/CBWFQ)決定各個隊列之間報文發送的先后順序。
數據、語音、視頻業務的報文,分類進入不同的隊列,這些隊列使用PQ算法分為高、中、低優先級隊列。報文出隊列時,會根據優先級的高低順序進行調度,優先級最高的語音報文會被優先發送,其次是數據報文,最后是視頻報文。
結語
講到這里,我們已經對QoS有了整體的了解。QoS就像是網絡交警,一手抓限流,控制業務流量速度;一手抓調度,指揮哪些業務流量先行。QoS在保障網絡質量上可謂是功不可沒,但它仍具有一定局限性。
傳統QoS只能區分業務優先級,不能區分用戶。只要屬于同一優先級的流量,就使用同一個端口隊列,不同用戶的流量競爭同一個隊列資源。因此無法對端口上多個用戶的多種業務流量進行區分服務。
那么問題來了,有沒有一種技術可以實現這種區分服務呢?答案是肯定的,我們下期為大家揭曉。



















