服务质量QoS(Quality of Service)用于评估服务方满足客户服务需求的能力,通过配置QoS,可以对企业的网络流量进行调控,避免并管理网络拥塞,减少报文的丢失率;同时也可以为企业用户提供专用带宽或者为不同的业务(语音、视频、数据等)提供差分服务。在数通HCIE面试中,我们会经常遇到QoS的相关考题。华为认证专家有料栏目将通过三篇系列文稿,完整而有趣地解析QoS,让大家轻松掌握QoS相关知识。首先,我们将带大家了解报文分类和标记。
8 O) B+ W& Z, ^4 G% K QoS简介
$ \1 B/ ~5 d0 R' t2 W* W
! s, v0 K7 p# D2 r) {1 n+ k! c" g$ `我们用一张图来引入QoS,这张图显示出QoS的大致框架及逻辑。% `# x0 R2 l2 f" U/ J& [+ }$ Z" S. h
! v1 b5 [# _0 }# G' A

; _/ ~3 F1 ?" ? ]5 G) g + s) D5 u# R/ g Y* s
QoS目前常用于差分服务模型中,那么QoS到底有几个模型呢?: G$ a% Q( g9 n2 J. a0 @8 X h
① 尽力而为模型——简单粗暴,不区别对待,谁先来就帮谁转发。9 c/ z5 X: o5 @1 O5 a
② 综合服务模型——利用RSVP协议(资源预留协议)预留出例如一个10M的带宽给客户的特殊流量单独使用。优点是特殊流量得到区分对待,缺点是客户不用时,10M带宽也无法给其他流量使用,浪费带宽。
. h7 u+ V3 {4 D* Z7 m③ 差分服务模型——-也就是我们将重点讲到的。' U7 u5 n: V8 n O* R3 T; w
+ H/ S: Y, A( hPS:如果面试时遇到QoS,大家要从头讲这三个模型,讲到差分服务模型时,再顺利承接到下文。1 X) E4 E9 n4 x; M% b; G5 H3 K" ^
( x! x2 N9 T {# A
那差分服务模型如何做到既兼顾区分对待,又不浪费带宽呢?首先从数据、语音、视频流量进入接口,我们会对其进行一个分类和标记!分类怎么分?标记怎么做?标记在哪里?交换机或者路由器是怎么识别这份流量是数据、语音or视频?5 t) {: V8 K; _! A
! q4 A3 d- w' m
报文分类和标记
$ l% r7 A3 x! H7 r 0 y! m& D; H+ Z$ M1 _7 l: B
分类有两种:一为简单流分类:利用我们在VLAN,MPLS,IP报文里面标记的字段进行分类, 称简单流分类;二为复杂流分类:通过五元组:源IP,目的IP,源端口,目的端口,传输层协议来唯一区分一条流。7 i! A% V$ {% }! P$ O* T ?" X
9 j5 {9 ]5 E0 O4 c, B分类完当然是标记啦,标记可以标记在三个地方:
& j, _, D4 K$ M0 k ; | t( S) M1 E1 |, P
1. VLAN tag中的PRI字段(这里要把VLAN的格式+长度记住)
: c2 U e& U7 t' H& H: }
. s9 Z/ z+ l) o3 Z. Z 
! H- d2 ]4 N5 { 8 Z) L: q4 [2 W/ c
2. MPLS中的EXP字段
Y: C+ | [, n : z3 i6 I& v% u$ H d( M
@) Y' t* P. v1 G' `/ g
u5 p* w( ^4 y$ {! i- D3. IP报文中的TOS字段
- o& v/ i0 e! D6 t# A+ O6 n % ]! L4 |. R1 D
; v ~) _1 F* U0 c X/ W& a
IP Precedence 一共3bit,所以可以定义的优先级为0-7;后续不够用又开发了D、T、R位,名为DSCP,所以可以定义的优先级为0-63,用前3位称IPP;用前五位称DSCP。
3 _0 f1 o2 J% p6 Z% D# r6 V
" Y. `/ o0 `9 b% f7 m0 R现在语音、数据、视频流量通过IP优先级或者DSCP优先级、输入接口、IP报文的五元组等规则来对报文进行分类好、标记好了,在进交换机or路由器前,我们可以对其做一个流量管理,这部分我们先不讲,后面会详细讲到哈。然后就要进入交换机or路由器的内部,内部有一个虚拟出来的队列,高优先级的则会进入高队列,低优先级则进入低队列。那么是哪个协议定义了我们标记的优先级7就比优先级0更优呢?是PHB(Per Hop Behavior)协议,一句话概括这个协议的作用:定义服务等级,也就是7>6>5>4>3>2>1>0
' {9 C6 K) }7 _# X ~* O m% R$ ` : i0 t3 Y2 z: o% W+ J2 ?7 {
接下来看一张表,让我们具体了解PHB协议。
9 ~/ B* C8 H( m$ A) A& F3 P4 | - |: V5 @- ?* t J X/ n8 x
PHB协议定义了CS、EF、AF、BE队列。我们这样理解,A:DSCP一共有0-63个优先级,B:IPP、MPLS、VLAN有0-7个优先级。我们来做一个划分,把DSCP称A,IPP、MPLS、VLAN称B,那么:* Y4 N: U0 m/ x+ S9 P8 N# q) [
标记与队列关系表$ K0 W c( |, Z- V4 k5 F
 . q" D- D2 b4 y' Q3 \% D7 h2 `4 z: V4 k
/ W) [: M4 I0 U T- t大家仔细观察一下这个表格可以看出 A-B-CS之间的关系,PHB把这些优先级都纳入到了CS的范围,那么EF、AF、BE是什么呢?
1 f; R# `1 A2 e% F0 w6 {
- Q. g) R ?/ k# ^0 ^BE是CS0中DSCP为0时一个特殊称呼(如果标记成0,进入BE队列,尽力转发)& B2 O) Z, k f7 L6 I; V0 a
9 A3 V" |9 d4 q1 K
EF 则是CS4中DSCP为46时的一个特殊称呼(如果标记成46,进入EF队列,加速转发。)/ j$ T7 z* ~: M4 V) ~
4 i' S: {$ i# ?% B$ Y6 A
AF1则是CS1中DSCP为10、12、14时的特殊称呼(如果标记成10、12、14(对应AF11,AF12,AF13)则进入AF1队列,确保转发。)9 u9 E8 H9 J6 Y2 p, ]
* F- f, o9 l/ d# p: \' g
AF2则是CS1中DSCP为18、20、22时的特殊称呼(如果标记成18、20、22(对应AF21、AF22、AF23)则进入AF2队列,确保转发。)
( @1 } p; i5 Y 2 X, V3 m$ ^2 ? w# R
AF3则是CS1中DSCP为26、28、30时的特殊称呼(如果标记成26、28、30(对应AF31、AF32、AF33)则进入AF3队列,确保转发。)- H( E6 G( w; G! g% Z/ Q/ Z8 O
- G9 x' c. s/ O1 E5 K; X
AF4则是CS1中DSCP为34、36、38时的特殊称呼(如果标记成34、36、38(对应AF41、AF42、AF43)则进入AF4队列,确保转发。)
7 M2 V3 Y) r1 Y, k2 `1 \0 D 1 G) U6 J. Q3 l# Z2 |
PS:CS7、CS6默认用于协议报文。如STP等报文 EF>AF4 3 2 1>BE
0 V* c) _* _' U* W9 R9 D. s这里注意一个点:在AF1中 AF13的丢弃等级>AF12>AF11。为什么呢?我们来补回前面DSCP的一个知识点。
# q# v5 C7 f9 a* e, b/ H+ `& v, w. V . y! z7 V8 X) ?1 ^1 t7 @
AF11标记成10写成8bit的二进制则是 001010 008 k) U+ b: I M, n) v8 S& O: s
AF12则是标记成12写成8bit的二进制则是001100 00; S2 L! w9 Q: a9 {
AF13则是标记成14写成8bit的二进制则是001110 00
! L X! k1 a- D; g1 g U
* u9 B2 B+ } C! o1 RTOS字段前3bit为IPP,然后是D、T、R位。这三位置1越多代表丢弃概率越高(D、T、R三个比特,分别表示延迟要求、吞吐量和可靠性。)故AF11比AF12、AF13重要,而AF21比AF11重要。4 s" W# _8 Q6 j2 l* K( ~
" n$ t2 U" E! W! _% { h作者简介:颜桂灵,泰克教育负责路由交换和物联网方向的授课和课程开发,对华为认证有着独到的见解,深受学员好评。6 s+ u: h4 O, D9 W
|