QoS(Quality of Service,服務質量)指一個網絡可以利用各類基礎技術,爲指定的網絡通訊提供更好的服務能力, 是網絡的一種安全機制, 是用來解決網絡延遲和阻塞等問題的一種技術。 在正常狀況下,若是網絡只用於特定的無時間限制的應用系統,並不須要QoS,好比Web應用,或E-mail設置等。可是對關鍵應用和多媒體應用就十分必要。當網絡過載或擁塞時,QoS 能確保重要業務量不受延遲或丟棄,同時保證網絡的高效運行。在RFC 3644上有對QoS的說明。html
QoS是經過給定的虛鏈接描述傳輸質量的ATM性能參數術語。這些參數包括:CTD、CDV、CER、CLR、CMR和SECBR、ALLservice classes、Qos Classes、 trafficcontract、traffic control。緩存
QoS(Quality of Service)即服務質量。對於網絡業務,服務質量包括傳輸的帶寬、傳送的時延、數據的丟包率等。在網絡中能夠經過保證傳輸的帶寬、下降傳送的時延、下降數據的丟包率以及時延抖動等措施來提升服務質量。安全
網絡資源老是有限的,只要存在搶奪網絡資源的狀況,就會出現服務質量的要求。服務質量是相對網絡業務而言的,在保證某類業務的服務質量的同時,可能就是在損害其它業務的服務質量。例如,在網絡總帶寬固定的狀況下,若是某類業務佔用的帶寬越多,那麼其餘業務能使用的帶寬就越少,可能會影響其餘業務的使用。所以,網絡管理者須要根據各類業務的特色來對網絡資源進行合理的規劃和分配,從而使網絡資源獲得高效利用。服務器
下面從QoS服務模型出發,對目前使用最多、最成熟的一些QoS技術逐一進行描述。在特定的環境下合理地使用這些技術,能夠有效地提升服務質量。網絡
一般QoS提供如下三種服務模型:異步
l Best-Effort service(盡力而爲服務模型)分佈式
l Integrated service(綜合服務模型,簡稱Int-Serv)函數
l Differentiated service(區分服務模型,簡稱Diff-Serv)性能
1. Best-Effort服務模型是一個單一的服務模型,也是最簡單的服務模型。對Best-Effort服務模型,網絡盡最大的可能性來發送報文。但對時延、可靠性等性能不提供任何保證。Best-Effort服務模型是網絡的缺省服務模型,經過FIFO(first in first out 先入先出)隊列來實現。它適用於絕大多數網絡應用,如FTP、E-Mail等。編碼
2. Int-Serv服務模型Int-Serv是一個綜合服務模型,它能夠知足多種QoS需求。該模型使用資源預留協議(RSVP),RSVP運行在從源端到目的端的每一個設備上,能夠監視每一個流,以防止其消耗資源過多。這種體系可以明確區分並保證每個業務流的服務質量,爲網絡提供最細粒度化的服務質量區分。可是,Inter-Serv模型對設備的要求很高,當網絡中的數據流數量很大時,設備的存儲和處理能力會遇到很大的壓力。Inter-Serv模型可擴展性不好,難以在Internet核心網絡實施。
3. Diff-Serv服務模型Diff-Serv是一個多服務模型,它能夠知足不一樣的QoS需求。與Int-Serv不一樣,它不須要通知網絡爲每一個業務預留資源。區分服務實現簡單,擴展性較好。
分類是指具備QoS的網絡可以識別哪一種應用產生哪一種數據包。沒有分類,網絡就不能肯定對特殊數據包要進行的處理。全部應用都會在數據包上留下能夠用來識別源應用的標識。分類就是檢查這些標識,識別數據包是由哪一個應用產生的。如下是4種常見的分類方法。
(1)協議 有些協議很是「健談」,只要它們存在就會致使業務延遲,所以根據協議對數據包進行識別和優先級處理能夠下降延遲。應用能夠經過它們的EtherType進行識別。譬如,AppleTalk協議採用0x809B,IPX使用0x8137。根據協議進行優先級處理是控制或阻止少數較老設備所使用的「健談」協議的一種強有力方法。
(2)TCP和UDP端口號碼 許多應用都採用一些TCP或UDP端口進行通訊,如 HTTP採用TCP端口80。經過檢查IP數據包的端口號碼,智能網絡能夠肯定數據包是由哪類應用產生的,這種方法也稱爲第四層交換,由於TCP和UDP都位於OSI模型的第四層。
(3)源IP地址 許多應用都是經過其源IP地址進行識別的。因爲服務器有時是專門針對單一應用而配置的,如電子郵件服務器,因此分析數據包的源IP地址能夠識別該數據包是由什麼應用產生的。當識別交換機與應用服務器不直接相連,並且許多不一樣服務器的數據流都到達該交換機時,這種方法就很是有用。
(4)物理端口號碼 與源IP地址相似,物理端口號碼能夠指示哪一個服務器正在發送數據。這種方法取決於交換機物理端口和應用服務器的映射關係。雖然這是最簡單的分類形式,可是它依賴於直接與該交換機鏈接的服務器。
在識別數據包以後,要對它進行標註,這樣其餘網絡設備才能方便地識別這種數據。因爲分類可能很是複雜,所以最好只進行一次。識別應用以後就必須對其數據包進行標記處理,以便確保網絡上的交換機或路由器能夠對該應用進行優先級處理。經過採納標註數據的兩種行業標準,即IEEE 802.1p或差別化服務編碼點(DSCP),就能夠確保多廠商網絡設備可以對該業務進行優先級處理。
在選擇交換機或路由器等產品時,必定要確保它能夠識別兩種標記方案。雖然DSCP能夠替換在局域網環境下主導的標註方案IEEE802.1p,可是與IEEE 802.1p相比,實施DSCP有必定的侷限性。在必定時期內,與IEEE 802.1p 設備的兼容性將十分重要。做爲一種過渡機制,應選擇能夠從一種方案向另外一種方案轉換的交換機。
一旦網絡能夠區分電話通話和網上瀏覽,優先級處理就能夠確保進行Internet上大型下載的同時不中斷電話通話。爲了確保準確的優先級處理,全部業務量都必須在網絡骨幹內進行識別。在工做站終端進行的數據優先級處理可能會因人爲的差錯或惡意的破壞而出現問題。黑客能夠有意地將普通數據標註爲高優先級,竊取重要商業應用的帶寬,致使商業應用的失效。這種狀況稱爲拒絕服務攻擊。經過分析進入網絡的全部業務量,能夠檢查安全攻擊,而且在它們致使任何危害以前及時阻止。
在局域網交換機中,多種業務隊列容許數據包優先級存在。較高優先級的業務能夠在不受較低優先級業務的影響下經過交換機,減小對諸如話音或視頻等對時間敏感業務的延遲事故。
爲了提供優先級,交換機的每一個端口必須有至少2個隊列。雖然每一個端口有更多隊列能夠提供更爲精細的優先級選擇,可是在局域網環境中,每一個端口須要4個以上隊列的可能性不大。當每一個數據包到達交換機時,都要根據其優先級別分配到適當的隊列,而後該交換機再從每一個隊列轉發數據包。該交換機經過其排隊機制肯定下一步要服務的隊列。有如下2種排隊方式。
(1)嚴格優先隊列(SPQ) 這是一種最簡單的排隊方式,它首先爲最高優先級的隊列進行服務,直到該隊列爲空,而後爲下一個次高優先級隊列服務,依此類推。這種方法的優點是高優先級業務老是在低優先級業務以前處理。可是,低優先級業務有可能被高優先級業務徹底阻塞。
(2)加權循環(WRR) 這種方法爲全部業務隊列服務,而且將優先權分配給較高優先級隊列。在大多數狀況下,相對低優先級,WRR將首先處理高優先級,可是當高優先級業務不少時,較低優先級的業務並無被徹底阻塞。
Qos能夠根據報文中的802.1Q判斷優先級
補充:
如今的路由器通常均支持QoS。路由器上的QoS能夠經過下面幾種手段得到:
1.經過大帶寬獲得
在路由器上除增長接口帶寬之外不做任何額外工做來保障QoS。因爲數據通訊沒有相應公認的數學模型做保障,該方法只能粗略地使用經驗值做估計。一般認爲當帶寬利用率到達50%之後就應當擴容,保證接口帶寬利用率小於50%。
2.經過端到端帶寬預留實現
該方法經過使用RSVP或者相似協議在全網範圍內通訊的節點間端到端預留帶寬。該方法能保證QoS,可是代價過高,一般只在企業網或者私網上運行,在大網公網上沒法實現。
3.經過接入控制、擁塞控制和區分服務等方式獲得
該方式沒法徹底保證QoS。這能與增長接口帶寬等方式結合使用,在必定程度上提供相對的QoS。
4.經過MPLS流量工程獲得
是當用戶須要時網絡即能工做的時間百分比。可用性主要是設備可靠性和網絡存活性相結合的結果。對它起做用的還有一些其餘因素,包括軟件穩定性以及網絡演進或升級時不中斷服務的能力。
是在必定時間段內對網上流量(或帶寬)的度量。對IP網而言能夠從幀中繼網借用一些概念。根據應用和服務類型,服務水平協議(SLA)能夠規定承諾信息速率(CIR)、突發信息速率(BIR)和最大突發信號長度。承諾信息速率是應該予以嚴格保證的,對突發信息速率能夠有所限定,以在容納預約長度突發信號的同時容納從話音到視像以及通常數據的各類服務。通常講,吞吐量越大越好。
指一項服務從網絡入口到出口的平均通過時間。許多服務,特別是話音和視像等實時服務都是高度不能容忍時延的。當時延超過200-250毫秒時,交互式會話是很是麻煩的。爲了提供高質量話音和會議電視,網絡設備必須能保證低的時延。
產生時延的因素不少,包括分組時延、排隊時延、交換時延和傳播時延。傳播時延是信息經過銅線、光纖或無線鏈路所需的時間,它是光速的函數。在任何系統中,包括同步數字系列(SDH)、異步傳輸模式(ATM)和彈性分組環路(RPR),傳播時延老是存在的。
是指同一業務流中不一樣分組所呈現的時延不一樣。高頻率的時延變化稱做抖動,而低頻率的時延變化稱做漂移。抖動主要是因爲業務流中相繼分組的排隊等候時間不一樣引發的,是對服務質量影響最大的一個問題。某些業務類型,特別是話音和視像等實時業務是極不容忍抖動的。分組到達時間的差別將在話音或視像中形成斷續。全部傳送系統都有抖動,只要抖動落在規定容差以內就不會影響服務質量。利用緩存能夠克服過量的抖動,但這將增長時延,形成其餘問題。
漂移是任何同步傳輸系統都有的一個問題。在SDH系統中是經過嚴格的全網分級定時來克服漂移的。在異步系統中,漂移通常不是問題。漂移會形成基羣失幀,使服務質量的要求不能知足。
無論是比特丟失仍是分組丟失,對分組數據業務的影響比對實時業務的影響都大。在通話期間,丟失一個比特或一個分組的信息每每用戶注意不到。在視像廣播期間,這在屏幕上可能形成瞬間的波形干擾,而後視像很快恢復如初。即使是用傳輸控制協議(TCP)傳送數據也能處理丟失,由於傳輸控制協議容許丟失的信息重發。事實上,一種叫作隨機早丟(RED)的擁塞控制機制在故意丟失分組,其目的是在流量達到設定門限時抑制TCP傳輸速率,減小擁塞,同時還使TCP流失去同步,以防止因速率窗口的閉合引發吞吐量擺動。但分組丟失多了,會影響傳輸質量。因此,要保持統計數字,當超過預約門限時就向網絡管理人員告警。
QoS是網絡與用戶之間以及網絡上互相通訊的用戶之間關於信息傳輸與共享的質的約定,例如,傳輸延遲容許時間、最小傳輸畫面失真度以及聲像同步等,是用來解決網絡延遲和阻塞等問題的一種技術。如今的路由器通常均支持QoS。QoS 是網絡的一種安全機制,是用來解決網絡延遲和阻塞等問題的一種技術。在正常狀況下,若是網絡只用於特定的無時間限制的應用系統,並不須要QoS,好比 Web應用,或E-mail設置等。可是對關鍵應用和多媒體應用就十分必要。當網絡過載或擁塞時,QoS 能確保重要業務量不受延遲或丟棄,同時保證網絡的高效運行。
在Internet等計算機網絡上爲用戶提供高質量的QoS必須解決如下問題:
1. QoS的分類與定義。對QoS進行分類和定義的目的是使網絡能夠根據不一樣類型的QoS進行管理和分配資源。例如 ,給實時服務分配較大的帶寬和較多的CPU處理時間等,另外一方面,對QoS進行分類定義也方便用戶根據不一樣的應用提出QoS需求。
2. 准入控制和協商。即根據網絡中資源的使用狀況,容許用戶進入網絡進行多媒體信息傳輸並協商其QoS。
3. 資源預定。爲了給用戶提供滿意的QoS,必須對端系統、路由器以及傳輸帶寬等相應的資源進行預定,以確保這些資源不被其餘應用所強用。
4. 資源調度與管理。對資源進行預定以後,是否能獲得這些資源,還依賴於相應的資源調度與管理系統。
目前的Internet僅提供盡力而爲(best-effort service)的傳送服務,業務量儘快傳送,沒有明確的時間和可靠性保障。隨着網絡多媒體技術的飛速發展,Internet上的多媒體應用層出不窮,如IP電話、視頻會議、視頻點播(VOD)、遠程教育等多媒體實時業務、電子商務在Internet上傳送等。Internet已逐步從單一的數據傳送網向數據、語音、圖像等多媒體信息的綜合傳輸網演化。這些不一樣的應用須要有不一樣的Qos(quality of service)要求,Qos一般用帶寬、時延、時延抖動和分組丟失率來衡量。各類應用對服務質量的需求在迅速增加。
顯然,現有的盡力傳送服務已沒法知足各類應用對網絡傳輸質量的不一樣要求,須要Internet提供多種服務質量類型的業務。而盡力而爲的服務仍將提供給那些只須要連通性的應用。服務質量Qos係指用來表示服務性能之屬性的任何組合。爲了使其具備價值,這些屬性必須是可提供的、可管理的、可驗證和計費的,並且在使用時它們必須是始終如一的、可預測的、有的屬性甚至是起決定性做用的。爲了知足各類用戶應用的須要,構建對IP最優並具有各類服務質量機制的網絡是徹底必要的。專線服務、語音、文件傳遞、存儲轉發、交互式視頻和廣播視頻是現有應用的一些例子。
如今,IP網絡如何提供服務質量QoS支持這一問題現已成爲業界關注的焦點。對於由QoS控制來實現QoS保證,國際上不一樣組織和團體提出了不一樣的控制機制和策略,比較著名的有:
1. ISO/OSI提出了基於ODP分佈式環境的QoS控制,但至今仍只停留在只給出了用戶層的QoS參數說明和變成接口階段,具體實現QoS控制策略並未提出;
2. ATM論壇提出了QoS控制的策略和實現,ATM控制是「鏈接預約」型(connection and reservation),它的核心內容是在服務創建以前,經過接納控制和資源預留來提供服務的QoS保證,而在服務交互的過程當中,用戶進程和網絡要嚴格按照約定的QoS實現服務QoS保證;
3.IETF組織也已經提出了多種服務模型和機制來知足對QoS的需求,其中比較典型的有:RFC2115,RFC2117以及199八、1999年提出的 RFC26xx系列中的綜合業務模型(Int-Serv)、差分業務模型(differentiated services)、多協議標籤MPLS技術(Multi-Protocol Label Switching)、流量工程(traffic engineering)和QoS路由(QoS-based routing)等均用於解決Internet網絡的QoS控制和管理。