QoS(Quality of Service)是服务质量的简称。对于网络业务来说,服务质量包括哪些方面呢?从传统意义上来讲,无非就是传输的带宽、传送的时延、数据的丢包率等,而提高服务质量无非也就是保证传输的带宽,降低传送的时延,降低数据的丢包率以及时延抖动等。广义上讲,服务质量涉及网络应用的方方面面,只要是对网络应用有利的措施,其实都是在提高服务质量。因此,从这个意义上来说,防火墙、策略路由、快速转发等也都是提高网络业务服务质量的措施之一
QoS模型:
Best Effort(尽力而为)模型是最简单的服务模型,应用程序可以在任何时候,发出任意数量的报文,网络尽最大的可能性来发送报文,对带宽、时延、抖动和可靠性等不提供任何保证。
Best Effort是Internet的缺省服务模型,通过FIFO(First In First Out,先进先出)队列来实现。
尽力而为的服务实质上并不属于QoS的范畴,因为在转发尽力而为的通信时,并没有提供任何服务或转发保证。
DiffServ(Differentiated Service,区分服务)模型由RFC2475定义,在区分服务中,根据服务要求对不同业务的数据进行分类,对报文按类进行优先级标记,然后有差别地提供服务。
区分服务一般用来为一些重要的应用提供端到端的QoS,它通过下列技术来实现:
1)流量标记与控制技术:它根据报文的CoS(Class of Service,服务等级)域、ToS域(对于IP报文是指IP优先级或者DSCP)、IP报文的五元组(协议、源地址、目的地址、源端口号、目的端口号)等信息进行报文分类,完成报文的标记和流量监管。目前实现流量监管技术多采用令牌桶机制。
2)拥塞管理与拥塞避免技术:WRED、PQ、CQ、WFQ、CBQ等队列技术对拥塞的报文进行缓存和调度,实现拥塞管理与拥塞避免。
IntServ(Integrated Service,综合服务)模型由RFC1633定义,在这种模型中,节点在发送报文前,需要向网络申请资源预留,确保网络能够满足数据流的特定服务要求。
IntServ可以提供保证服务和负载控制服务两种服务,保证服务提供保证的延迟和带宽来满足应用程序的要求;负载控制服务保证即使在网络过载的情况下,也能对报文提供与网络未过载时类似的服务。
QoS技术包括流分类、流量监管、流量整形、接口限速、拥塞管理、拥塞避免等。
流分类:采用一定的规则识别符合某类特征的报文,它是对网络业务进行区分服务的前提和基础。
**流量监管:**对进入或流出设备的特定流量进行监管。当流量超出设定值时,可以采取限制或惩罚措施,以保护网络资源不受损害。可以作用在接口入方向和出方向。
**流量整形:**一种主动调整流的输出速率的流量控制措施,用来使流量适配下游设备可供给的网络资源,避免不必要的报文丢弃和延迟,通常作用在接口出方向。
拥塞管理:就是当拥塞发生时如何制定一个资源的调度策略,以决定报文转发的处理次序,通常作用在接口出方向。
拥塞避免:监督网络资源的使用情况,当发现拥塞有加剧的趋势时采取主动丢弃报文的策略,通过调整队列长度来解除网络的过载,通常作用在接口出方向。
QoS策略包含了三个要素:类、流行为、策略。
用户可以通过QoS策略将指定的类和流行为绑定起来,灵活地进行QoS配置。
用户可以通过命令定义一系列的规则来对报文进行分类。同时用户可以指定规则之间的关系:and或者or。
流行为用来定义针对报文所做的QoS动作。用户可以通过命令在一个流行为中定义多个动作。
策略用来将指定的类和流行为绑定起来,对分类后的报文执行流行为中定义的动作。用户可以在一个策略中定义多个类与流行为的绑定关系。
流分类策略除可以包括IP报文的IP优先级或DSCP值、802.1Q的VLAN Priority Code Point (PCP)值等带内信令,还可以包括输入接口、源IP地址、目的IP地址、MAC地址、IP协议或应用程序的端口号等。
IPv4报文在IP报文头的ToS(Type of Service)域中定义了8种IP业务类型
拥塞管理是指网络在发生拥塞时,如何进行管理和控制。处理的方法是使用队列技术。将所有要从一个接口发出的报文进入多个队列,按照各个队列的优先级进行处理。不同的队列算法用来解决不同的问题,并产生不同的效果。常用的队列技术有FIFO、PQ、CQ、WFQ、CBWFQ等,下文逐一介绍这些常用队列技术的基本原理。
。。。。。。。。。。
ont-srvprofile gpon profile-id 57 profile-name "srv-profile_57"
ont-port pots 1 eth 4
port vlan eth 1 transparent
port vlan eth 2 transparent
port vlan eth 3 transparent
port vlan eth 4 transparent
commit
ont-lineprofile gpon profile-id 57 profile-name "line-profile_57"
tcont 1 dba-profile-id 10
gem add 0 eth tcont 1
gem mapping 0 1 vlan 57
commit
ont-lineprofile gpon profile-id 513 profile-name "line-profile_513"
mapping-mode port
tcont 1 dba-profile-id 100
gem add 0 eth tcont 1
gem mapping 0 1 iphost
commit
ont-srvprofile gpon profile-id 513 profile-name "srv-profile_513"
ont-port eth 4
transparent enable
port vlan iphost 1 transparent
commit
注册ONU并绑定相应的2个模版
ont add 7 1 sn-auth "43494F5405FB3542" omci ont-lineprofile-id 57
ont-srvprofile-id 57 desc "ONT_NO_DESCRIPTION"
配置service-port
service-port 43 vlan 57 gpon 0/5/7 ont 1 gemport 0 multi-service user-vlan 57 tag-transform transparent
测试IPv4 QoS DSCP标记功能和上传限速功能 ;
需配置ONU WAN连接:静态WANIP
测试IPv6 QoS DSCP标记功能和上传限速功能 ;
需配置ONU IPv6 WAN连接:静态WANIP,如下图所示:且开启LAN侧 DHCP v6 M flags;和IPv6 前缀地址。
4、Itester6000 跑包机 配置 路由性能 测试,如下图
或者上图中PC_MAC 不设置,不连接设备则改地址 默认显示 ff-ff-ff-ff-ff-ff
LAN–>WAN跑流成功后的结果:Port3=LAN;Port4=WAN
4、QoS 测试
1.测试 总上传速率限速,ONU配置上传带宽限速大小
看跑流结果,上行总带宽限速成功
配置QoS 规则 入口限速5M
针对IPv6 源IP限速配置
IPv6 LAN–>WAN限速跑流结果:OK
QoS—IPv6 TC(Traffic Class)重标记功能配置:
开启IPv6 TC重标记功能
802.1p vlan优先级重标记配置:
跑包机中使用wireshare抓包分析,观察IPv4和IPv6 以及vlan优先级标识是否生效;
配置 QoS VLAN 优先级802.1P和 TC重标记
验证VLAN 优先级标识时,把IPv6 WAN连接修改成 vlan transparent方式;
IPv4 QoS 配置
修改LAN侧 发送 流 tos 标记,流经过设备 后 验证 是否会 把之前的tos 改变
VLAN优先级标识 测试 抓取 VLAN ID对应的优先级标志位