服務質量

服務質量(英語:Quality of Service,縮寫QoS)是一個術語,在分組交換網絡領域中指網絡滿足給定業務合約的機率;或在許多情況下,非正式地指分組在網路中兩點間通過的機率。QoS是一種控制機制,它提供了針對不同用戶或者不同數據流採用相應不同的優先級,或者是根據應用程序的要求,保證數據流的性能達到一定的水準。QoS的保證對於容量有限的網路來說是十分重要的,特別是對於串流多媒體應用,例如VoIPIPTV等,因為這些應用常常需要固定的傳輸率,對延遲也比較敏感。

電話業務領域中,服務品質是指線路噪音和聲音,適當的音量水平等指標的衡量,並且不能與服務等級相混淆。

問題的提出

因特網創建初期並沒有意識到QoS應用需要,因此整個因特網運作如一個「竭盡全力」的系統。每段信息都有4個「服務類別」位和3個「優先級」位,但是他們完全沒有派上用場。依發送和接收者看來,數據包從起點到終點的傳輸過程中會發生許多事情,並產生如下有問題的結果:

  • 丟失數據包 - 當數據包到達一個緩衝區已滿的路由器時,則代表此次的發送失敗,路由器會依網路的狀況決定要丟棄一部份不丟棄或者是丟棄所有的數據包,而且這不可能在預先就知道,接收端的應用程式在這時必須請求重新傳送,而這同時可能造成總體傳輸嚴重的延遲。
  • 延遲 - 或許需要很長時間才能將數據包傳送到終點,因為它會被漫長的隊列遲滯,或需要運用間接路由以避免阻塞;也許能找到快速、直接的路由。總之,延遲非常難以預料。
  • 傳輸順序出錯 - 當一群相關的數據包被路由經過因特網時,不同的數據包可能選擇不同的路由器,這會導致每個數據包有不同的延遲時間。最後數據包到達目的地的順序會和數據包從發送端發送出去的順序不一致,這個問題必須要有特殊額外的協議負責重新整理失序的數據包。

需要QoS的應用

流量約定SLAService Level Agreement,服務等級協議)給數據流設定優先級,以此在網絡/協議層面上,根據相互商定的尺度,設定有保障的性能、通過量、延遲等界限。一些特定形式的網絡數據流需要定義服務質量,例如:

這些類型的服務被稱為非彈性,意思是它們需要固定的帶寬才能運作--如果得到多餘的帶寬,它們也無法使用;如果得到較少的帶寬,則根本無法工作。相形之下,彈性應用可以從多餘的帶寬中受益。

保持QoS

實質上有兩種方式提供QoS保證。第一種,就是簡單地提供大量的資源,用豐富、安全的餘量設備應付預期中的「高峰」需求。這樣既好又簡單,然而有人認為這種方式代價昂貴,而且不能應對高峰需求超越預期的情形,部署額外的資源也很耗費時間。

第二種是要求用戶預約帶寬,並且僅在能夠提供可靠服務的前提下接受預約。自然,可以為預約服務向用戶收費。常用的實現方法有兩類。

某些技術的QoS難題

以下的特性也許只會被用在end ports,但不會在服務器,中樞或是其它的端口上,這就緩和了許多並發流的衝突。

參見

外部連結