QOS
通常QoS提供以下三种服务模型:
1、Best-Effort service(尽力而为服务模型):Best-Effort服务模型是一个单一的服务模型,也是最简单的服务模型。对Best-Effort服务模型,网络尽最大的可能性来发送报文。但对延时、可靠性等性能不提供任何保证。Best-Effort服务模型是网络的缺省服务模型,通过 FIFO(first in first out 先入先出) 队列来实现。它适用于绝大多数网络应用,如FTP、 E-Mail等。
2、Integrated service(综合服务模型,简称Int-Serv):Int-Serv服务模型Int-Serv是一个综合服务模型,它可以满足多种QoS需求。该模型使用 资源预留协议(RSVP),RSVP运行在从源端到目的端的每个 设备上,可以监视每个流,以防止其消耗资源过多。这种体系能够明确区分并保证每一个 业务流的服务质量,为网络提供最细粒度化的服务质量区分。但是,Inter-Serv模型对设备的要求很高,当网络中的数据流数量很大时,设备的存储和处理能力会遇到很大的压力。Inter-Serv模型可扩展性很差,难以在Internet核心网络实施。
3、Differentiated service(区分服务模型,简称Diff-Serv):Diff-Serv服务模型Diff-Serv是一个多服务模型,它可以满足不同的QoS需求。与Int-Serv不同,它不需要通知网络为每个业务预留资源。区分服务实现简单,扩展性较好。
重点介绍 Differentiated service Qos
1. 分类
QOS主要进行分类的依据就是DSCP(different services code point :区别服务编码点)。其实,这里说的这个8位的DSCP值更准确说应该是内部DSCP值。后面就会知道了。对于2层的数据帧来说,我们使用COS来区分不同的数据流,并且这个3位的字段只出现的ISL或者802.1Q的封装帧中。存在VLAN标记中的,只占3位。对于3层的数据包来说,我们使用的是IP数据包头中的TOS字段来表示的。TOS在IP数据报头中有一个字节的长度,但是并不是所有的位都来担任进行区分不同IP数据流的服务的。而只是高6位。其中高3位表示的是IP优先级。所以我们一般看的就是IP优先级,平时的映射关系说的也是IP优先级和内部DSCP的映射。中间的3位都是0。 使用的是COS或者TOS的高6位。
COS和TOS都是要和内部DSCP进行映射的,无论是人工映射,还是默认的映射关系。3位COS和3位的IP优先级是一样的。只是COS作用在2层,而IP优先级是对于3层。当然了,他们映射到一个内部的DSCP得到的数值也是一样的的。
2. 标记
3. 流量调节
4. 拥塞管理
5. 拥塞避免
PRI
长度为4字节的802.1Q帧头字段插在源MAC地址之后,其中有一个用于中继功能的VLAN ID字段,还有一个被称为Cos(802.1p)的3比特用户优先级字段(PRI),Cos用于Qos机制,可以提供8种可选值。如下表
EXP
MPLS包就是增加了一个或多个长度为4字节的MPLS头的IP包,增加了MPLS头后的IP包在传送之前需要被封装在二层PDU中,因而常常将MPLS头称为SHIM(”垫片”)或2.又2分之一层头。
MPLS头中的EXP字段用于Qos,其3比特长度也是为了与IP头中的3比特IP优先级字段以及802.1Q头中的3比特PRI字段相兼容。
DA
SA
类型x8847
Label
Exp
S
TTL
IP包
48比特
48比特
16比特
20比特
3比特
1比特
8比特
默认情况下,当IP包进入MPLS网络时,边缘路由器会将IP包头ToS(Type of Service,服务类型)字节中最高3位复制到MPLS头中的EXP字段中,其中,IP包头ToS字节中的最高3位称为IP优先级比特。
除了自动复制IP优先级的数值之外,MPLS边缘路由器的网络管理员还可以再边缘路由器上手工将EXP设定为期望值。
IP优先级和DSCP
在IPv4的报文头中,TOS字段是1字节,如下图所示。根据RFC1122的定义,IP优先级(IPPrecedence)使用最高3比特(第0~2比特)。
+++++++++++++++++++++++++++++++++
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
+++++++++++++++++++++++++++++++++
3比特可以定义8个等级。
8个优先级的定义如下:
111 -Network Control 网络控制
110 -Internetwork Control 网间控制
101 -Critic 关键
100 - FlashOverride 疾速
011 -Flash 闪速
010 -Immediate 快速
001 -Priority 优先
000 -Routine 普通
优先级6和7一般保留给网络控制数据使用,比如路由。
优先级5推荐给语音数据使用。
优先级4由视频会议和视频流使用。
优先级3给语音控制数据使用。
优先级1和2给数据业务使用。
优先级0为缺省标记值。
在标记数据时,既可以使用数值,也可以使用名称(英文名称)。
DSCP
DSCP由RFC2474定义,它重新命名了IPv4报头中TOS使用的那1字节和IPv6报头中数据类(TrafficClass)那1字节,新的名字称为DS字段(Differentiated ServicesField)。该字段的作用没有变,仍然被QoS工具用来标记数据。不同的是IPv4使用3比特,而DSCP使用6比特,最低2比特不用。
RFC2474 定义最高3比特为级别/类别选择代码(ClassSelector Codepoints,CS),其意义和IPv4报头中IP优先级的定义是相同的,CS0 ~CS7的级别相等于IP优先级0 ~7。但它并没有定义第3到第5比特的具体含义以及使用规则。DSCP使用6比特,可以定义64个优先级(0-63)。
AF
保证转发(Assured Forwarding,AF)由RFC2597对CS1~CS4进行进一步定义。它使用第3和第4比特做丢弃优先级标志。01-低丢弃优先级;10-中丢弃优先级;11-高丢弃优先级。这样,在同一类数据中,又根据被丢弃的可能性划分出3档。下表列出了AF服务等级及其对应的DSCP值:
CS1 CS2 CS3 CS4
Lowdrop AF11 AF21 AF31 AF41
001010 010010 011010 100010
Mediumdrop AF12 AF22 AF32 AF42
001100 010100 011100 100100
Highdrop AF13 AF23 AF33 AF43
001110 010110 011110 100110
AF的定义为数据分类提供了方便,比如,运营商可以向用户提供4中服务协约(SLA):白金,金,银,铜,并为每一种服务的数据分配一定的带宽。当然,不同服务的收费标准也是不同的。
EF
无阻碍转发(Expedited Forwarding,EF)由RFC2598定义,DSCP值为46(101110)。EF服务适用于低丢包率,低延迟,低抖动及保证带宽的业务,如VOIP。
其他
DSCP = 000000 尽力转发服务等级 (EF);
CS = 6 网间控制(Internetwork Control),DSCP= 48 (110000)
CS = 7 网内控制 (Intranetwork Control),DSCP= 56 (111000)
在配置命令中,既可以使用十进制数值,也可以使用二进制数值,还可以使用名称。例如,28, 011100, AF32三个写法意义相同