詳細分析幀中繼流量×××技術

45.3.1  幀中繼服務類別
在幀中繼網絡中,擁塞成爲一個非常值得我們關注的問題,  對於網絡管理員和用戶而言需要尋求一
種機制使得在不增加帶寬的基礎上,有效地控制擁塞。
幀中繼標準定義幾個服務類別參數,提供設計和實現幀中繼網絡的一個公共基礎。幀中繼服務類別參
數主要處理帶寬可用性,不直接解決延時或變化。幀中繼標準還定義一個基本的數據流管理方案,幫助控
制和×××提供幀中繼網絡的數據流。下面定義這些服務類別和阻塞管理技術。
基於標準的服務類別(standards-based class of service)按各個PVC定義,這意味着物理端口上的每個PVC
有不同的服務類別分配。基於標準的 CoS 參數處理帶寬和帶寬可用性。延時或延時變化的測量和策略不是
幀中繼標準的一部分,幀中繼通常使用CIR/Bc/Be 這3個參數定義服務類別。
額定突發大小(committed  burst  size)Bc 定義了指定時間段內網絡可以接受的數據量。Bc的單位是二進
制位,與時間間隔一起使用,確定CIR的值。時間間隔和CIR將在下面描述。詞“突發”的使用容易引起誤
解。記住數據流以實際的物理線訪問速率或端口速率傳送這一點很重要,每個分組代表該線路上的一個突
發信息。不要與上面PVC的額定速率的突發概念混淆。
額定速率測量間隔(committed rata measurement interval)Tc 指定數據流被測量的時間段。 Tc以秒的分數
定義,它的典型速率在0.5~2秒之間。Tc的值越大,允許的延時和數據流速率的變化越大;而 Tc的值越小,
數據流傳輸速率越一致。
額定信息速率(Committed  Information  Rate,CIR)指定網絡支持的PVC端點之間的最小傳輸速率。CIR的
計量單位是每秒千位(kbps),是Bc與 Tc的比率。它作爲通常情況下網絡支持的通信的下限。
Be 定義網絡在給定時間段內想傳輸的超過 Bc 的數據量。與 Bc 一樣,Be 以二進制位爲單位計量,但
不同的是,不保證Be數據流能夠被傳輸。當數據流超過Bc的同意值時,它對Be進行計量。多出的數據流
儘可能在網絡上傳輸。
額外信息速率(Excess  Information  rate,EIR)指定網絡同意在給定時間段內傳輸的超過CIR 的數據量。時
間段的長度對於不同的實現是不同的,通常是 Tc 的一個間隔。EIR 是從 Be 對 Tc 的斜率得來的,相應的計
量單位是kbps。CIR和 EIR相加代表PVC的最大傳輸容量。超過CIR+EIR 的數據流可能被傳輸,但不能保證
一定傳輸。

Be 的計算方法如下:

 

從如上公式可以看出:
1.  降低Tc(提供更大粒度的計量值)要求減少Be,限制了網絡的緩衝能力
2.  增加 Bc 以允許更大的突發性,要求增加 Tc,這導致了更小的粒度計量值,所以幀傳遞的變
化更大。
3.  Bc+Be 代表網絡同意在任何時間段Tc接受的信息量。
4.  Bc+Be 的和必須小於或等於端口訪問速率。
 

45.3.2    FECN和BECN
幀中繼網絡中基於標準的阻塞管理使用兩個方法處理:設置幀中明確的阻塞通知位和標記幀中可丟棄
位。阻塞通知位告訴幀中繼終端設備 PVC 路徑中的哪個地方有阻塞,而設置可丟棄位標識在阻塞過程中交
換機將首先丟棄的數據流。下圖給出了幀中繼幀格式和這些位在幀報頭中的位置。

 

當交換機或網絡在支持虛電路的鏈路上遇到阻塞時,轉發明確的阻塞通知(FECN)位可以由幀中繼交換
機設置。FECN 通知接收端設備網絡中的阻塞狀態。理想情況下,接收端將識別到 FECN,並通過壓縮窗口
大小降低發送器的速度。不幸地是,第 2 層 FECN 到高層等效值的映射僅適用於 DECNET 和 CLNS 數據流,
所以在實際應用中,除了統計外,FECN沒有太多的用處。
交換機也可以設置返回給發送端的幀上的後向明確阻塞通知位(BECN),指示網絡中的阻塞狀態。在這
兩個方法中,BECN更有用,因爲它們通知對阻塞有責任的發送端。與 FECN一樣,BECN 的設置不能很好地
映射到高層協議,所以阻塞信息不能回到源站點。但是,因爲發送路由器可以解釋 BECN,它可以對阻塞情
況作出響應。

 

d FCS Flags
戶 用戶-網絡
LAPF核心 R2
Congested
如上圖: 當擁塞發生時,幀中繼交換機向上遊設備發送BECN 消息,同時也向下游設備發送FECN 消息,
如果接收端路由器支持BECN 回覆功能,則它會向數據發送放發送BECN 消息,使得發送方降速。
當收到 FECN 消息時,路由器將 Tc 時間內 FECN 爲 1 和 FECN 爲 0 的幀進行比較,如果 BECN=1 的幀
號>BECN=0 的幀號,則將其吞吐量降爲原來的87.5%,反之,增加原吞吐量的 1/16,進行慢速的啓動操作。
Tc 設置爲 4 倍的端到端傳輸延遲。當連續收到 N 個 BECN=1 的幀時,來自用戶的流量就會通過一定的步長
減少到低於當前提供的速率。這個步長首先由 0.675 倍的吞吐量進行減少,然後 0.5 倍,最後 0.25 倍。同
樣,流量收到連續N/2個BECN=0的幀後,將會按照0.125 倍增加吞吐量。
 
45.3.3 ForeSight
在 Cisco 的設備上,由於對 Stratacom 的收購,獲得了 ForeSight 的技術。ForeSight 採用了一種閉環控
制的方式,在幀中繼網中,將末端監測到的網絡資源的使用情況信息,包括擁塞,嚴重擁塞等,反饋到源
端,  控制用戶端口的  PVC 隊列的發放速率。這樣避免了擁塞同時又動態的分配了閒置帶寬。而對於開環
技術,擁塞發生時將丟棄部分幀,  相對於這種模式,ForeSight可以更好的防止網絡中中繼鏈路的擁塞,同
時避免了丟包。
ForeSight類似於ATM 的ABR 業務,它將用戶幀按照24字節的長度分段封裝(FastPacket),然後在幀中
繼網絡中傳輸。分段的同時標記了起始幀,中間幀和尾幀。在傳輸過程中,爲了減小延遲,網絡端口對先

到的用戶幀的一部分進行打包,並通過幀中繼交換機的 FRM模塊計算CRC值和用戶幀結尾的CRC值進行對
比校驗,爲了減小延遲,支持ForeSight的IGX 交換機通過對緩存的分配減小延遲,在發送端,當PVC建立
時,緩衝區就爲該條PVC建立一個VC隊列,在NNI接口之間通常採用一個Trunk隊列緩衝,而在接收端僅
採用一個公共的TX隊列。如下圖所示:

 

ForeSight在幀中繼網絡中形成一個閉環,   由末端IGX中的FRM將網絡中資源的統計信息反饋到源IGX
的 FRM 中,調整 VC 隊列的發包速率。信息反饋使用 FastPacket 封裝中的 RA 字段。RA 字段爲 FastPacket
封裝頭的一個特定字段,當擁塞發生時,標記 FECN 和 BECN 的哦能夠使,對 RA 進行調整,  RA 有 2 位。
當爲 00 時,表示 VC 隊列的發送速率不調整,  01 時表示發送速率可以上升到 MIR(最小信息速率)的 10%,
RA爲10時,表示VC隊列的當前速率下降13%。當RA 爲11時,VC隊列的速率下降50%。
ForeSight通常將擁塞定義爲Trunk隊列使用超過50%或者TX隊列超過門限值,嚴重擁塞定義爲Trunk
使用率超過 50%,並且 TX 隊列已經溢出。當網絡中有空閒帶寬時,RA 定義爲 01,發生擁塞時 RA 定義爲
10,當嚴重擁塞發生時,RA 定義爲11。末端FRM將 RA 比特所載信息反送給源端FRM,控制VC隊列發包
速率。對於VC 隊列的控制,使用用戶申請的CIR設置,並根據CIR 和RA進行Credit發放。

 

如上圖所示,T0~T1這段時間由於用戶沒有傳送數據,積累了一些Credit,當發送數據時,首先會借用
所有的 Credit,以端口速率發送。然後速率下降到靜態信息速率 QIR.此時收到來自接收端的反饋,網絡有

空閒,RA=01 增加帶寬。經過一段時間後出現擁塞,並收到 RA=10 的消息,速率下降。最後出現嚴重擁塞
使得RA=11消息發出,速率降低爲當前速率的50%。對於調整時間,通常是一個ForeSight閉環的RTD。同
時,如果連路中一直有數據發送,應該保證MIR 在CIR 之上,而上圖使用了MIR=CIR的特例。
 
45.3.4  配置幀中繼流量×××
默認情況下,Cisco路由器忽視FECN 和BECN字節。可以通過如下命令開啓幀中繼流量×××:
Router(config-if)#frame-relay traffic-shaping
 
由於ForeSight爲私有標準,所以默認情況下流量×××使用BECN的方式,可以通過如下命令調整流量
×××模式。
Router(config-if)#frame-relay adaptive-shaping {becn | foresight}

然後就可以在接口下或者子接口下配置,按照前文的定義,我們可以配置 CIR,Bc,Be
traffic-shape rate bit-rate[burst-size[excess-burst-size]]
bit-rate指定想要的輸出速率,它應被設置爲正應用的DLCI的CIR。
burst-size可選,但應該應用於幀中繼接口,並被設置爲幀中繼網絡供應商使用的Bc 值。
excess-burst-size也是可選的,應設置爲幀中繼網絡供應商使用的Be值。
 
例如下圖:A爲一臺帶有語音功能的路由器,需要向C 發送語音外,還需要向B發送一般數據:

 

此時對於路由器A的配置如下:
Interface Serial3/1.301 point-to-point
Description Voice-PVC
Bandwidth 128
Ip address 172.16.1.2 255.255.255.252
Traffic-shape rate 128000 64000 32000
Frame-relay interface-dlci 301
!

Interface Serial3/1.304 point-to-point
Description Data-PVC
Bandwidth 128
Ip address 192.168.1.2 255.255.255.252

得到Bc和Be 的值從供應商那裏得到。假定供應商配置Tc爲0.5秒。使用公式CIR=Bc/Tc  , Bc=CIR×Tc
則得出Bc爲 64000。
因爲僅發送數據的 PVC 將發送突發數據流,對它需要進行控制,使得它不會不平等地從傳送語音的
PVC 那裏篡取帶寬。但是,目標是仍然允許接口利用幀中繼傳送突發數據流的能力。爲了達到這個目的,
一般數據流×××將配置峯值速率等於鏈路帶寬減去傳送語音的 PVC的帶寬。
爲了防止嚴重的數據丟失,應配置每個PVC 對幀中繼阻塞通知作出反應。允許一般數據流×××對 BECN
作出反應的接口命令是:
traffic-shape adaptive [bit-rate]
bit-rate代表在收到BECN時數據流應×××到的最小值。在大多數情況下,這個值應設置爲與
該PVC關聯的 CIR。通過使用 PVC 的CIR,路由器可以回到幀中繼網絡支持的傳輸速
對於BECN/FECN工作原理,有時需要接收端路由器接收到FECN消息後,接收端路由器發送BECN:
traffic-shape fecn-adapt
 
45.3.5  流量×××映射類
在很多情況下,對於接口/子接口定義流量×××過於粗糙,我們可能希望對每個VC進行流量×××和速
度限制等功能,同時還可以對特定的 VC 進行不同的 QoS 隊列處理。通常的做法是使用幀中繼流量×××映
射類。首先定義一個Frame-Relay的map-class
Router(config)#map-class frame-relay QOS
進入map-class 模式後,可以選擇很多參數:
Router(config-map-class)#frame-relay ?

    adaptive-shaping        Adaptive traffic rate adjustment, Default = none
   bc                                   Committed burst size (Bc), Default = 7000 bits
   be                                   Excess burst size (Be), Default = 0 bits
   cir                                  Committed Information Rate (CIR), Default = 56000 bps
   congestion                    Congestion management parameters
   custom-queue-list      VC custom queueing
   end-to-end                    Configure frame-relay end-to-end VC parameters
   fair-queue                    VC fair queueing
   fecn-adapt                    Enable Traffic Shaping reflection of FECN as BECN
   fragment                        fragmentation - Requires Frame Relay traffic-shaping to be
                       configured at the interface level
   holdq                              Hold queue size for VC
   idle-timer                    Idle timeout for a SVC, Default = 120 sec
   interface-queue          PVC interface queue parameters
   ip                                    Assign a priority queue for RTP streams
   mincir                            Minimum acceptable CIR, Default = CIR/2 bps
   priority-group            VC priority queueing
   tc                                    Policing Measurement Interval (Tc)
   traffic-rate                VC traffic rate
   voice                              voice options

如果需要使用自適應的流量速率調整,可以使用
Router(config-map-class)#frame-relay adaptive-shaping{becn | foresight}
然後可以使用如下命令調整虛電路流量速率,average 爲平均輸出速率,設置爲CIR,peak爲最大輸出
速率,設置爲CIR+EIR
Router(config-map-class)#frame-relay traffic-rate average peak

通常情況下還是使用 CIR/Bc/Be/Tc/MINCIR 等參數的調整和使用 ECN/ForeSight 來進行流量控制,默認
情況下Bc爲 56kbps,Be爲0,CIR爲56kbps,MINCIR爲CIR的一半。
map-class frame-relay QOS
  frame-relay traffic-rate 64000 128000
  frame-relay adaptive-shaping becn
  frame-relay cir 128000
  frame-relay bc 16000
  frame-relay be 0
  frame-relay mincir 64000
此後還可以在map-class 中配置CQ/PQ等QoS標準隊列,關於這些隊列,參見以前的QoS章節
Router(config-map-class)#frame-relay priority-group 1
Router(config-map-class)#frame-relay custom-queue-list 1
 
定義好map-class 後,我們就可以將它們掛載到相應的接口/子接口,或者VC上:
Router(config)#interface serial3/0.1 multipoint
Router(config-subif)#frame-relay class fast_vc
 
Router(config)#interface serial3/0.1 multipoint
Router(config-subif)#frame-relay interface-dlci 100
Router(config-fr-dlci)#class slow_vc

45.3.6 Cisco ELMI
如果路由器連接到基於 Cisco-Stratacom 的幀中繼網絡,則可以使用 Cisco 的增強本地管理接口(E-LMI)
自動感應 QoS的參數。E-LMI 傳送端口上所有 PVC 的 CIR、Bc 和 Be 的值,然後路由器可以把它們自動應用
於數據流×××機制。這樣做極大地簡化了路由器的配置,僅需在接口上配置如下命令:
Router(config)#frame-relay qos-autosense
可以通過以下命令查看:
Router#show frame qos-autosense
ELMI information for interface Serial3/1
IP Address used for Address Registration:0.0.0.0 My Ifindex:7
ELMI AR Status:Enabled
  Connected to switch:SWITCH      Platform:IGX      Vendor:CISCO
SW side ELMI AR Status:Disabled
IP Address used by switch for address registration:0.0.0.0 Ifindex:0
               (Time elapsed since last update 00:02:34)
  DLCI = 100
  OUT:     CIR 64000            BC 6000                  BE 5000                  FMIF 4506
  IN:         CIR Unknown        BC Unknown          BE Unknown          FMIF Unknown
  Priority 0          (Time elapsed since last update 00:01:46)
 
ELMI information for interface Serial3/3
IP Address used for Address Registration:0.0.0.0 My Ifindex:9
ELMI AR Status:Enabled
  Connected to switch:SWITCH      Platform:IGX      Vendor:CISCO
SW side ELMI AR Status:Disabled
IP Address used by switch for address registration:0.0.0.0 Ifindex:0
                (Time elapsed since last update 00:01:32)
  DLCI = 200
  OUT:    CIR 64000          BC 6000               BE 5000                    FMIF 4506
  IN:         CIR Unknown      BC Unknown      BE Unknown            FMIF Unknown
  Priority 0          (Time elapsed since last update 00:01:07)
 

45.3.7  查看流量×××信息
配置完流量×××後可以通過如下命令查詢流量×××狀態.
首先可以使用show traffic-shape

 

另一種方法是使用show frame-relay pvc dlci
RouterA#show frame-relay pvc 501
PVC Statistics for interface Serial6/1 (Frame Relay DTE)
DLCI = 501, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial6/1.501
   input pkts 2308                    output pkts 10031                in bytes 151508
   out bytes 9991964                dropped pkts 3783                in FECN pkts 0
   in BECN pkts 278                  out FECN pkts 0                    out BECN pkts 0
   in DE pkts 0                 out DE pkts 0
   out bcast pkts 56                out bcast bytes 16964
    Shaping adapts to BECN
   pvc create time 00:55:40, last time pvc status changed 00:09:40
   cir 128000          bc 16000          be 0               byte limit 2000      interval 125
   mincir 64000         byte increment 1375      Adaptive Shaping BECN
   pkts 6201              bytes 6161964      pkts delayed 6122            bytes delayed 6115040
   shaping active
   traffic shaping drops 0
   Queueing strategy: fifo
Output queue 40/40, 3790 drop, 6122 dequeued
這種方法還可以看到使用的是何種×××方式,如上信息爲 BECN的情景  ,下面爲使用ForeSight的情景  
RouterA#show frame-relay pvc 401
PVC Statistics for interface Serial6/1 (Frame Relay DTE)
DLCI = 401, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial6/1.401
   input pkts 2138                    output pkts 25249                in bytes 141127
   out bytes 25206155              dropped pkts 9581                in FECN pkts 0
   in BECN pkts 93                    out FECN pkts 0                    out BECN pkts 0
   in DE pkts 0                          out DE pkts 0
   out bcast pkts 55                out bcast bytes 16635
   Shaping adapts to ForeSight                in ForeSight signals 606
   pvc create time 00:54:14, last time pvc status changed 00:08:14
   cir 128000          bc 16000          be 0               byte limit 2000      interval 125
   mincir 64000         byte increment 1125      Adaptive Shaping F/S
   pkts 15611            bytes 15568155    pkts delayed 15532          bytes delayed 15513904
   shaping active
   traffic shaping drops 0
   Queueing strategy: fifo
Output queue 40/40, 9598 drop, 15532 dequeued

對於ForeSight可以使用Debug查看ForeSight消息:
Router#debug frame-relay foresight
02:39:50: FR rate control for DLCI 401 due to ForeSight msg
02:39:50: FR rate control for DLCI 401 due to ForeSight msg
 
45.3.8  可丟棄位設置
在幀中繼的地址段有一個專用的字段用於標記在擁塞情況下優先丟棄的報文,  該字段爲 DE 字段
( Discard Eligibility ).如下圖所示:

 

FCS Flags
用戶-網絡
LAPF核心
 
如何標記這個字段,通常使用一個ACL來處理.  可丟棄列表使用標準或擴展訪問列表分類數據流,然後
在幀中繼網絡上發送數據前,有選擇地設置幀中繼報頭中的 DE位。正如前面所述,設置DE位的數據流在
交換機遇到阻塞時被首先丟棄,這使得管理員能夠控制低優先級數據流被網絡首先丟棄,從而改善高優先
級數據流成功通過的情況。
DE-List配置方式如下:
Router(config)#frame-relay de-list list-number {protocol protocol|interface type number}  
  characteristic
其中list-number是唯一標識該列表的數,如果選擇interface 字段, de-list僅對通過指定接口的分組進行
操作。如果選擇protocol,該列表可以更加有識別力。protocol字段的選項包括路由器支持的所有第3層協
議。對於IP網絡,選擇就是IP。
characteristic 字段允許進一步細化第 3 層協議。選項包括:指定 lt(小於)或 gt(大於)操作符後跟大小值
指定最小或最大幀大小;使用TCP或UDP 操作符後跟端口號指定特定的TCP或UDP 端口;或者使用list操
作符通過訪問列表進一步定義。
例如,我們需要對大於4bytes 小於10bytes 的數據標記DE位:
Router(config)#frame-relay de-list 1 protocol ip lt 10 gt 4
或者,使用一個 ACL來對特定流量進行DE標記:
Frame-relay de-list 3    protocol ip list 131
!
Access-list 131 deny tcp any any eq 1720
Access-list 131 deny udp any any range 10000 15334
Access-list 131 permit p any any
完成de-list定義後,  就可以將其掛接到接口上了,掛接方法如下:
Router(config-if)#frame-relay de-group group-number dlci
DE位的設置還可以在Policy-map 中進行使用特定的命令實現:
policy-map QOS
   class class-default
    police cir 80000 pir 100000
      conform-action transmit  
      exceed-action set-frde-transmit  
      violate-action set-frde-transmit

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章