通訊流的QoS優先順序類別

2021-09-03 03:56:37 字數 3273 閱讀 2129

qos一直是許多讀者朋友感到非常頭痛的一項裝置技術,也很少有書進行了比較全面、系統的介紹。筆者也是經過相當長時間的研究,才最終把這部分內容進行了消化,並在我的最新著作——《cisco/h3c交換機高階配置與管理技術手冊》一書中全面剖析。本書是目前國內唯一一本專門介紹cisco和h3c交換機高階功能配置與管理的大型手冊。目前該書已在京東網、卓越網、當當網上有售:

本文僅就通訊過程中的幾種qos優先順序型別進行系統地介紹,它們是進行qos策略配置的基礎。

在qos的分類流程中最關鍵的是對各種不同包配置不同的優先順序,對流入交換機的資料報按優先順序排列,然後交換機就會根據這個優先順序值執行相應的qos行為。而對資料報進行優先化排列的第一步就要對資料報進行分類。

分類規則可以使用ip報文頭的tos(type of service,服務型別)欄位的優先順序位,識別出不同優先順序特徵的流量;也可以由網路管理者設定流分類的策略,例如綜合源位址、目的位址、mac位址、ip協議或應用程式的埠號等資訊對流進行分類。一般的分類依據都侷限在封裝報文的頭部資訊,使用報文的內容作為分類的標準是比較少見的。分類的結果是沒有範圍限制的,它可以是乙個由五元組(源位址、源埠號、協議號、目的位址、目的埠號)確定的狹小範圍,也可以是到某網段的所有報文。這個優先順序資訊所在的位置要區分是二層通訊流還是三層通訊流。

1. 三層通訊流中的優先順序資訊

三層ip包可以攜帶ip優先順序值,或者dscp (differentiated services code point,區分服務**點)值。qos支援使用任何一種優先順序值,因為dscp值向後相容ip優先順序值的。ip包頭的tos欄位有8位,如圖6-2左圖所示。其中:0~2這兩位表示的是ip優先順序,取值範圍為0~7;3~6這四位表示的是tos優先順序,取值範圍為0~15;最後一位為固定的0值。

rfc2474又重新定義了原來ip包頭部的tos欄位,稱之為ds欄位,其中0~5這六位用來表示dscp(differentiated services code point,差分服務**點)優先順序,取值範圍為0~63,最後兩位保留,如圖6-2右圖所示。ipv4和ipv6包中的ip優先順序和dscp優先順序位在ip包的包頭位置如圖6-3所示。

圖6-2 tos欄位中的ip優先順序和ds欄位中的dscp優先順序

圖6-3 ip優先順序和dscp優先順序位在包頭中的位置

總的來說,也就是在ipv4協議包頭的tos欄位(1個位元組)中定義了最高3個有效位作為ip優先順序位,其取值範圍為0(最低)~7(最高)。而三層的區分服務**點(dscp)是由ietf發布的,它是利用tos欄位中的最高的6個有效位作為dscp的。路由包的每跳行為是由配置的dscp值來表示,dscp的取值範圍為0~63。前面說了,dscp優先順序是向後相容ip優先順序的,ip優先順序與dscp優先順序值的對應關係如表6-1所示。

表6-1 ip優先順序與dscp優先順序的對應關係

2. 二層幀的優先順序

在二層幀的幀頭中也有用來對通訊進行分類的優先順序位。如果是二層isl(inter-switch link,交換機內鏈路)幀,則其幀頭有乙個1位元組的使用者(user)字段,在其中的最低3個有效位中就攜帶了ieee 802.1p cos(class of service,服務分類)值。這個cos值就是用來對通訊進行分類的其取值範圍為0(最低)~7(最高)。如果是二層802.1q或802.1p幀,則其幀頭中有乙個2個位元組的tag協議標識(tpid)字段,其中最高的3個有效位(稱為「使用者優先順序位」——user priority)中攜帶了cos值。isl和802.1q、802.1p幀中的cos優先順序所在位置如圖6-4所示。其他幀型別不能攜帶二層cos值。

圖6-4 isl和802.1q、802.1p幀中的cos優先順序所在位置

802.1p優先順序位於二層報文頭部(如圖6-4所示),適用於不需要分析三層報文頭,而需要在二層環境下保證qos的場合。4個位元組的802.1q標籤頭包含了2個位元組的tpid(tag protocol identifier,標籤協議標識,取值為0x8100)和2個位元組的tci(tag control information,標籤控制資訊),如圖6-5所示。tci部分中priority欄位(完整表述應為「user priority」)就是802.1p優先順序,也稱為cos優先順序,如圖6-6所示。它由3個bit位組成,取值範圍為0~7。之所以稱此優先順序為802.1p優先順序,是因為有關這些優先順序的應用是在802.1p規範中被詳細定義。

圖6-5帶有802.1q標籤頭的乙太網幀

圖6-6 802.1q標籤頭格式

3. 本地優先順序

除了前面所說的802.1p優先順序外,交換機的二層幀還有乙個本地優先順序。它是交換機為報文分配的一種具有本地意義的優先順序,對應queue0~queue7八個出埠佇列,本地優先順序值大的報文將被安排在優先順序高的佇列被優先處理。本地優先順序只在本埠的佇列排程時有效。幀在進入交換機以後,交換機會根據自身支援的情況和相應的規則為報文標記802.1p優先順序(它決定了報文在佇列中的優先順序高低)、本地優先順序(它決定了報文所在埠佇列的優先順序高低)等引數。

對埠接收到的不帶有802.1q標籤頭的報文,交換機使用接收埠的優先順序(也就是「埠優先順序」,來自優先順序高的埠的報文將優先處理)作為報文的802.1p優先順序,然後根據802.1p優先順序和本地優先順序對映關係,為報文分配本地優先順序進行佇列排程。

對埠接收到的帶有802.1q標籤頭的報文,使用者可以配置優先順序信任模式:信任埠優先順序模式和信任報文優先順序模式。當選擇信任埠優先順序模式時,在交換機埠接收到帶有802.1q標籤頭的報文時,會使用接收埠的埠優先順序值替換接收到的報文的802.1p優先順序值,然後根據802.1p優先順序和本地優先順序對映關係,為報文分配本地優先順序進行佇列排程;當選擇信任報文優先順序模式時,交換機根據報文自身攜帶的802.1p優先順序建立802.1p優先順序到本地優先順序對映表,然後為報文分配本地優先順序進行佇列排程。 交換機提供預設的802.1p優先順序到本地優先順序對映表,如表6-2所示。

表6-2 802.1p優先順序到本地優先順序對映表

802.1p優先順序(cos)

本地優先順序(local precedence)

所有訪問internet的交換機和路由器都依賴分類資訊來為具有相同分類資訊的包提供相同優先順序對待,為具有不同分類資訊的包提供不同的優先順序對待。包中的分類資訊可以由**路徑中的終端主機,或者交換機,或者路由器來賦值,依據是所配置的策略,詳細的包檢查,或者同時依據兩者。包的詳細檢查將會發生在網路邊緣,以便核心交換機和路由器不會因為當前路徑下的**任務而超載。

**路徑中的交換機和路由器可以使用分類資訊來限制分配給每個類別通訊的資源量。每個裝置在處理不同區分服務架構通訊的行為稱之為每跳(per-hop)行為。如果整個路徑中的所有裝置都能提供一致的每跳行為,則你可以構成端到端(end-to-end)的qos解決方案。

通訊流的QoS優先順序類別

qos一直是許多讀者朋友感到非常頭痛的一項裝置技術,也很少有書進行了比較全面 系統的介紹。筆者也是經過相當長時間的研究,才最終把這部分內容進行了消化,並在我的最新著作 cisco h3c交換機高階配置與管理技術手冊 一書中全面剖析。本書是目前國內唯一一本專門介紹cisco和h3c交換機高階功能配置與...

的優先順序大小 需求價值與優先順序

我們會接到不同 的需求,有的 於業務部門 領導要求,有的 於使用者反饋 線上問題,有的是市場反饋建議,或者競品已支援等等。收到原始需求之後,我們怎麼知道哪些需求要做?哪些需求要優先做,哪些可以往後排?或者在需要澄清需求價值時,我們要回答哪些問題後,才算講清楚了需求價值。又如何做需求的優先順序排序。首...

CSS的優先順序

選擇器一樣的情況下後面的會覆蓋前面的屬性。比如 p p p元素的元素將是藍色,因為遵循後面的規則。然而,你不可能經常用相同的選擇器衝突達到目的,當你使用巢狀選擇器,合理的衝突來了。比如 div p p 也許你看起來p元素在div元素裡面的顏色是藍色,就像後面p元素的規則,但是第乙個選擇器的特性卻是紅...