QOS:服务质量
在共享带宽网络中,由于延时导致丢包和抖动;
带宽取整段路径最小带宽;延时是整段路径消耗的时间总和;
延时:
1.进程延时 路由器转发数据时必须进行步骤消耗的时间;--如路由表查询
2.队列延时 数据在缓存区排队
3.线路传播延时
解决方案:
1、升级物理链路
2、提供更好的查表机制--CEF
3、队列技术,在缓存区内优先重要的报文
4、数据压缩
抖动和丢包其实都是数据溢出导致;默认溢出使用尾丢,导致链路利用率较低;可使用更好的丢弃机制来提高链路利用率。
手工QOS
包含的技术:1、分类 2、标记 3、监管和整形 4、拥塞避免(丢弃机制) 5、队列技术
以上所有的技术在实际应用时可以根据需要选择使用:
1、分类--队列
2、分类--队列---拥塞避免
3、分类--标记---队列
4、分类--标记----队列---拥塞避免
5、分类--标记----队列---整形和监管--拥塞避免
一、分类流量:
1、ACL 可以基于二层、三层、四层流量分类
2、NBAR 关注应用层流量--基于MQC配置
基于PDLM进行流量的匹配;PDLM是一个应用层流量的特征代码文件
假设从互联网中下载一个关于bt的PDLM文档,名为bt.pdlm
需要将其加载到路由器或多层交换机中;使用TFTPserver;
先将该文件放置于TFTP根目录下,然后下载到设备中
r1(config)#ip nbar pdlm flash://bt.pdlm 然后将该PDLM加载到NBAR中
r1(config)#class-map bt
r1(config-cmap)#match protocol bt
r1(config)#policy-map bt
r1(config-pmap)#class bt
r1(config-pmap-c)#set dscp af11
r1(config-pmap-c)#drop
扩展:
r1(config)#class-map ccie
r1(config-cmap)#match protocol http url www.taobao.com
r1(config-cmap)#match protocol http mime *.jpg
默认http流量均基于80端口进行限制,若设备上的httpserve是基于非80端口工作
r1(config)#ip nbar port-map http tcp 80 8080 基于8080端口处理http流量
二、流量的标记:
在IPV4和IPV6的报头中均存在TOS--服务类型字段
IPV4中的TOS字段存在8位;
1)优先级 ---仅取TOS的前3位
0-7共8个优先级
默认普通流量为0;VOIP 语音流量为5
控制层面流量为6;
2)DSCP 差分服务代码 使用TOS的前6位--可以兼容优先级
存在分类便于配置
默认系列 全0
CS系列(类的区分器)---仅使用前3位 CS1--CS7对应优先级的1---7
AF系列(确保转发)
EF系列 固定值为46对应优先级中的5默认均标记语音流量
在二层标记:
1、以太网中只能在802.1q或ISL封装中进行标记;3位8个优先级
修改优先级的802.1q被称为802.1p
2、帧中继的数据帧中存在DE位(合法丢弃位)为0,标示在拥塞时优先丢弃
3、MPLS中存在EXP(试验位)3位8个优先级
配置:
1)PBR--策略路由--用于干涉数据层面流量转发;同时可以实现对ipv4报头的优先级进行标记;
PBR就是将route-map直接调用到接口上的应用;凌驾于路由表之上,当存在PBR时,流量按PBR要求转发,不查看路由表----必须调用于数据层面的入口;
【1】使用PBR来干涉数据层面流量
{1}抓流量--使用ACL,因为抓取数据层面流量
r2(config)#access-list 100 permit ip host 1.1.1.1 host 4.4.4.4
r2(config)#access-list 101 permit ip host 1.1.2.1 host 4.4.4.4
{2}定制route-map
r2(config)#route-map pbr permit 10
r2(config-route-map)#match ip address 100
r2(config-route-map)#set interface serial 1/1
r2(config-route-map)#exit
r2(config)#route-map pbr permit 20
r2(config-route-map)#match ip address 101
r2(config-route-map)#set ip next-hop 25.1.1.2
{3}入接口调用
r2(config)#int s1/0
r2(config-if)#ip policy route-map pbr
注:未定义route-map中流量,基于路由表正常转发
【2】使用PBR来标记IPV4报头中的优先级
r3(config)#access-list 100 permit icmp host 1.1.1.1 host 4.4.4.4
r3(config)#route-map xx permit 10
r3(config-route-map)#match ip address 100
r3(config-route-map)#set ip precedence 4
r3(config-route-map)#exit
r3(config)#int s1/0
r3(config-if)#ip policy route-map xx 必须入口调用
r4(config)#access-list 100 permit icmp host 1.1.1.1 host 4.4.4.4 precedence 4
r4(config)#exit
r4#debug ip packet 100
缺点:PBR本身设计用于干涉数据层面流量转发;故在标记时只能修改IPV4报头中的优先级;
2)CBMARK ---专门用于标记各种流量
基于MQC模块化配置
【1】定义感兴趣流量
r5(config)#ip access-list extended ccie
r5(config-ext-nacl)#permit icmp host 1.1.1.1 host 4.4.4.4
r5(config-ext-nacl)#exit
r5(config)#ip access-list extended ccnp
r5(config-ext-nacl)#permit icmp host 1.1.2.1 host 4.4.4.4
【2】定制分类列表
r5(config)#class-map ccie
r5(config-cmap)#match access-group name ccie
r5(config-cmap)#exit
r5(config)#class-map ccnp
r5(config-cmap)#match access-group name ccnp
r5(config-cmap)#exit
【3】策略表
r5(config)#policy-map cbmark
r5(config-pmap)#class ccie
r5(config-pmap-c)#set precedence 4
r5(config-pmap-c)#exit
r5(config-pmap)#class ccnp
r5(config-pmap-c)#set dscp af11
【4】接口调用
r5(config#int s1/0
r5(config-if)#service-policy output cbmark
注:进出接口均可
QOS的队列技术:
软件队列 硬件队列
使用策略让流量在缓存区内排队 数据包从缓冲区进入出接口后,物理接口实行先进先出
手工QOS中的队列就是软件队列技术;
1、FIFO=FCFS 先进先出 接口带宽大于2.048M以上链路默认
2、PQ =绝对优先 将流量分为高、中、正常、低
3、CQ=公平队列 将流量正常分为1—16号队伍,等量循环转发 0号队伍优先
4、WFQ 加权的公平队列技术,存在自动和手动两种
FBWFQ ---自动 为接口带宽小于2.048M以下链路默认 ---类似于FIFO,但优先级高的数据
包存在优势
CBWFQ----手动加权公平队列技术 手工使用最平凡的QOS技术
无论何种队列技术,均从3个方面进行分析:
1、分类
2、加队、插队 ------存在多个队伍,每个队伍可以容纳的数据包个数,丢弃问题
3、调度
CBWFQ----存在 64种分类;
可分为64类别
存在65个队伍,前64个队伍装载64种分类,第65个队伍装载未分类的流量
调度机制:为每个类别的流量分配相对应的带宽
切记:在使用任何QOS时,需要考虑上传限制还是下载;来定义方向和ACL;
172.16.10.0/24 .253
172.16.20.0/24 .253
172.16.30.0/24 office
172.16.40.250/24 server http
下载--- 老师8M 学生 4M(9:30-12:00 13:30--16:30)
office 6M server 2M
上传--- 老师 6M 学生1M office 3M server 10M
bt bt
下载限制:
1、抓流量
r2(config)#ip access-list extended laoshix
r2(config-ext-nacl)#permit ip any host 172.16.10.253
r2(config-ext-nacl)#permit ip any host 172.16.20.253
r2(config-ext-nacl)#exit
r2(config)#ip access-list extended xueshengx
r2(config-ext-nacl)#deny ip any host 172.16.10.253
r2(config-ext-nacl)#deny ip any host 172.16.20.253
r2(config-ext-nacl)#permit ip any 172.16.10.0 0.0.0.255
r2(config-ext-nacl)#permit ip any 172.16.20.0 0.0.0.255
r2(config-ext-nacl)#exit
r2(config)#ip access-list extended officex
r2(config-ext-nacl)#permit ip any 172.16.30.0 0.0.0.255
r2(config-ext-nacl)#exit
r2(config)#ip access-list extended serverx
r2(config-ext-nacl)#permit ip any host 172.16.40.250
r2(config-ext-nacl)#exit
2、分类
r2(config)#class-map laoshix
r2(config-cmap)#match access-group name laoshix
r2(config-cmap)#exit
r2(config)#class-map xueshengx
r2(config-cmap)#match access-group name xueshengx
r2(config-cmap)#exit
r2(config)#class-map officex
r2(config-cmap)#match access-group name officex
r2(config-cmap)#exit
r2(config)#class-map serverx
r2(config-cmap)#match access-group name serverx
3、策略
r2(config)#policy-map openlabx
r2(config-pmap)#class laoshix
r2(config-pmap-c)#bandwidth 8000
r2(config-pmap-c)#exit
r2(config-pmap)#class xueshengx
r2(config-pmap-c)#bandwidth 4000
r2(config-pmap-c)#exit
r2(config-pmap)#class officex
r2(config-pmap-c)#bandwidth 6000
r2(config-pmap-c)#exit
r2(config-pmap)#class serverx
r2(config-pmap-c)#bandwidth 2000
r2(config-pmap-c)#exit
4、调用
r2(config)#interface fastEthernet 0/0
r2(config-if)#service-policy output openlabx 注意方向,按数据层面计算;
上传限制:
r2(config)#ip access-list extended laoshis
r2(config-ext-nacl)#permit ip host 172.16.10.253 any
r2(config-ext-nacl)#permit ip host 172.16.20.253 any
r2(config-ext-nacl)#exit
r2(config)#ip access-list extended xueshengs
r2(config-ext-nacl)#deny ip host 172.16.10.253 any
r2(config-ext-nacl)#deny ip host 172.16.20.253 any
r2(config-ext-nacl)#permit ip 172.16.10.0 0.0.0.255 any
r2(config-ext-nacl)#permit ip 172.16.20.0 0.0.0.255 any
r2(config-ext-nacl)#exit
r2(config)#ip access-list e offices
r2(config-ext-nacl)#permit ip 172.16.30.0 0.0.0.255 any
r2(config-ext-nacl)#exit
r2(config)#ip access-list extended servers
r2(config-ext-nacl)#permit ip host 172.16.40.250 any
r2(config-ext-nacl)#exit
分类:
r2(config)#class-map laoshis
r2(config-cmap)#match access-group name laoshis
r2(config-cmap)#exit
r2(config)#class-map xueshengs
r2(config-cmap)#match access-group name xueshengs
r2(config-cmap)#exit
r2(config)#class-map xueshengbt
r2(config-cmap)#match access-group name xueshengs
r2(config-cmap)#match protocol bt
r2(config-cmap)#exit
r2(config)#class-map offices
r2(config-cmap)#match access-group name offices
r2(config-cmap)#exit
r2(config)#class-map officebt
r2(config-cmap)#match access-group name offices
r2(config-cmap)#match protocol bt
r2(config-cmap)#exit
r2(config)#class-map officehttp
r2(config-cmap)#match access-group name offices
r2(config-cmap)#match protocol http url www.taobao.com
r2(config-cmap)#exit
r2(config)#class-map servers
r2(config-cmap)#match access-group name servers
r2(config-cmap)#exit
策略
r2(config)#policy-map openlabs
r2(config-pmap)#class laoshis
r2(config-pmap-c)#bandwidth 6000
r2(config-pmap-c)#exit
r2(config-pmap)#class xueshengs
r2(config-pmap-c)#bandwidth 1000
r2(config-pmap-c)#exit
r2(config-pmap)#class xueshengbt
r2(config-pmap-c)#drop
r2(config-pmap-c)#exit
r2(config-pmap)#class offices
r2(config-pmap-c)#bandwidth 3000
r2(config-pmap-c)#exit
r2(config-pmap)#class officebt
r2(config-pmap-c)#drop
r2(config-pmap-c)#exit
r2(config-pmap)#class officehttp
r2(config-pmap-c)#drop
r2(config-pmap-c)#exit
r2(config-pmap)#class servers
r2(config-pmap-c)#bandwidth 10000
r2(config-pmap-c)#exit
基于时间的ACL
r2(config)#time-range openlab
r2(config-time-range)#periodic daily 9:30 to 12:00
r2(config-time-range)#periodic daily 13:30 to 16:30
r2(config-time-range)#exit
r2(config)#ip access-list extended openlab
r2(config-ext-nacl)#permit ip host 172.16.10.253 any
r2(config-ext-nacl)#permit ip host 172.16.20.253 any
r2(config-ext-nacl)#deny ip 172.16.10.0 0.0.0.255 any time-range openlab
r2(config-ext-nacl)#deny ip 172.16.20.0 0.0.0.255 any time-range openlab
r2(config-ext-nacl)#permit ip any any
丢弃机制:传统默认为尾丢,导致链路利用率低;RED随机原始检查,从第二次开始在快到达前一次最大传输率的时候,随机丢弃本次传输的数据包,来延缓带宽升降频率,提高链路的利用率;
CBWRED:专门针对CBWFQ工作,可以基于TCP/UDP/IP流量进行,优先级和DSCP工作;具有不同优先级或不同DSCP值的数据包具有不同的丢弃概率;----缓存区内容量到达一定值才开始丢弃,不同优先级开始的时间不同,默认丢弃概率均为10%;
r2(config)#policy-map openlab
r2(config-pmap)#class xuesheng
r2(config-pmap-c)#random-detect 此时基于优先级工作
r2(config-pmap-c)#random-detect precedence 7 35 40 10
r2(config-pmap-c)#random-detect dscp-based 基于DSCP工作
r2(config-pmap-c)#random-detect dscp af 11 30 40 10
TS:排错
1)线路
双绞线:线序错误,连接错误,单项链路,传输距离;双工和速率匹配
光纤:单项链路、熔接错误、光纤模块错误、弯曲角度
串线:DCE和DTE时钟频问题;对接错误;
2、二层排错
1)WAN
封装协议---HDLC/PPP/FR/ATM 两端封装不一致,导致状态up,协议down
FR--cisco设备默认的LMI传输类型为cisco私有;
r2(config-if)#frame-relay lmi-type ?
cisco
ansi
q933a
当关闭逆向ARP后无法生存MAP,必须手工配置,broadcast 参数必须配置
2)LAN
MAC地址表-----无法生成--端口安全服务,MAC地址攻击,静态CAM配置错误
VLAN--接口划分错误,删除vlan时未处理接口,一台设备未创建某个vlan导致不转发该vlan的流量
Trunk干道:--封装是否一致,多层交换机必须先修改封装才能配置为trunk;native 是否一致,是否封装native 流量;DTP协议的模式;流量只有经过trunk干道才会标记;允许列表必须正确;
#Show vlan dot1q tag native 默认为disabled
#(sw)vlan dot1q tag native
Etherchannel:存在二层和三层的区别;所有物理链路的属性必须一致;若trunk干道,允许
列表必须一致;
三层channel地址需要配置到channel接口上;
VTP----trunk干道必须存在,域名、模式、密码、版本、配置版本号
STP----选举干涉错误;根网桥位置不佳,网络执行效率下降;
使用PVST时,一个设备上若需要某个vlan的STP,需要存在该vlan,以及该vlan
的活动用户或活动trunk干道;
使用802.1W-快速生成树时---必须观察接口的网络类型--半双工接口为共享--不支持
802.1W,必须修改为点到点;且所有的设备均需修改模式为802.1W
使用801.s时,分组信息必须到所有设备上配置,且必须一致;
若STP被关闭,----必须出现环
3、三层排错
1)IP地址
子网应用错误;地址获取失败---DHCP serve被攻击,DHCP server地址池枯竭,DHCP 中继无路由,
2)ARP映射错误---手工绑定错误,关闭了代理ARP
3)网关问题---HSRP/VRRP/GLBP
HSRP:修改了优先级但未开启抢占;上行链路追踪后,上行接口down,但自动下调的优先级小于网络中优先级差值;active 和根网桥必须放置到一起;
4)静态路由:直连路由的down,将导致静态路由down;下一跳建议应用到以太网,出接口在串线链路上,若使用MPLS VPN静态路由必须出接口、下一跳均配置;
汇总后可能产生路由黑洞,考虑放环;
静态中考虑链路单项断开;
5)RIP ---协议不加表
链路不能通讯,未通告或通告错误、版本不兼容、认证
过滤--ACL、分发列表、重发布过滤
AD过大,度量过大----偏移列表设计不合理
被动接口;水平分割;认证时若使用时间,时间需要重叠区;
6)EIGRP
邻居建立问题:hello 中必须匹配的信息---AS号、认证字段、K值必须一致;被动接口,若本地第二地址和对端的第一地址在一个网段,可以正常ping同和建立邻居关系,但生成的路由表将出现问题;卡在活动状态的处理。
EIGRP不加表: 没通告、存在过滤、汇总、度量、AD
EIGRP也存在RID,其选举规则同OSPF一致,若RID相同可能出现无法学习路由
7)OSPF
Hello包中必须匹配:hello和dead、区域ID、认证类型和秘钥、特殊区域标记
RID不能一致;
若卡在init状态---无发收到对端返回的hello包--过滤、网络拥塞、单项链路
若卡在two-way---邻居关系正常;邻接关系若卡在该状态,可能因为优先级为0
若卡在exstart---双方MTU不匹配
若卡在loading----由于LSU更新数据丢失---LSDB总数超量(最大10000条LSA)
8)BGP
卡在 IDLE---没有到达邻居的路由,TTL导致
卡在connect---由于TCP包中的ACK无法返回
卡在active ---AS指定错误、更新源为修改、EBGP--TTL,认证问题;在IDLE和active间翻滚
路由表不加表:优