Relative Content

K4NZDROID

category

「Huawei CSS」- Cluster Switch System、概念、术语

概述介绍
集群交换机系统CSS(Cluster Switch System),又称为集群,是指将两台支持集群特性的交换机设备组合在一起,从逻辑上虚拟成一台交换设备。
CSS 与 iStack 的区别在于:框式交换机堆叠称为 CSS;盒式交换机称为 iStack;堆叠与集群两者只是叫法和实现有些差异,但是功能是一样的。
集群特点: 1)集群内物理设备转发平面合一,转发信息共享并实时同步。 2)集群交换机对外表现为一台逻辑交换机,控制平面合一,统一管理。 3)跨集群内物理设备的链路被聚合成一个 Eth-Trunk 端口和下游设备实现互联。
Switch Roles(交换机角色)
集群中的单台交换机称为集群成员交换机
按照功能不同,可以分为两种角色: 1)主交换机(Master):主交换机,即Master,负责管理整个集群。 2)备交换机(Standby):备交换机,即Standby,是主交换机的备份交换机。当主交换机故障时,备交换机会接替原主交换机的所有业务。集群中只有一台备交换机。
CSS 仅支持两台框式交换机,所以仅有两种角色。
CSS ID(集群 ID)
用来标识成员交换机,在集群中成员交换机的 CSS ID是唯一的。
缺省情况下,交换机的 CSS ID为 1。相同ID的两台交换机不能建立集群,所以在建立集群前,需要手工配置集群中一台交换机的集群ID为2。
CSS Link(集群链路)
组建集群的交换机需要互联,该互联的链路被称为集群链路,专门用于组建集群,实现主交换机和备交换机之间数据通信。
集群链路可以是一条链路,也可以是捆绑在一起的多条链路。
CSS Priority(集群优先级)
即主要用于角色选举过程中确定成员交换机的角色。优先级值越大优先级越高。
交换机的集群优先级越高当选为主交换机的可能性越大,但选举主交换机比较的不止优先级。

集群控制平面
两台交换机使用集群线缆连接好,分别使能集群功能并完成配置后重启,集群系统会自动建立。
当集群系统建立后,在控制平面上: 1)Master Switch 的 主用主控板 成为集群系统的控制平面,作为整个系统的管理主角色。 2)Standby Switch 的 主用主控板 成为集群系统的备用控制平面,作为系统的管理备角色。 3)Master Switch 和 Standby Switch 的备用主控板作为集群系统候选备用主控板。

集群选举规则
主交换机选举规则与堆叠选举规则一致,另外一台交换机则是备交换机。
集群物理连接
根据集群技术发展阶段不同,集群物理连接方式也存在区别: 1)传统 CSS:使用主控板上的集群卡建立集群连接;或使用业务[……]

READ MORE

「Huawei CSS」- 框式、交换机、集群配置、命令、示例

集群配置

// 配置交换机的集群 ID
// 缺省情况下,交换机的集群ID都为1,所以在建立集群前,需要手工配置集群中一台交换机的集群ID为2,相同ID的两台交换机不能建立集群。
[Huawei] set css id <new-id>

// 配置设备的集群优先级
// 缺省情况下,设备的集群优先级为1。
[Huawei] set css priority priority

// 设置设备的集群连接方式
// 缺省情况下设备的集群连接方式与设备型号相关。
[Huawei] set css mode { lpu | css-card }

// 创建集群逻辑接口,绑定物理成员端口到堆叠接口中
// 配置业务口为物理成员端口,并将物理成员端口加入到逻辑集群端口中。
[Huawei] interface css-port port-id
[Huawei-css-port1] port interface { interface-type interface-number1 [ to interface-type interface-number2 ] } &<1-10> enable

// 使能交换机集群功能
// 缺省情况下,交换机的集群功能未使能,使能集群功能后,系统会提示立即重启使配置生效。需要在两台成员交换机上分别使能集群功能。
[Huawei] css enable

// 集群的MAD检测功能,配置方式、配置命令与堆叠一致。
// 略……[……]

READ MORE

「Huawei iStack」- Intelligent Stack、堆叠、概念、术语

Switch Roles(交换机角色)
在堆叠系统中,所有的单台交换机都称为成员交换机,按照功能不同,可以分为三种角色: 1)主交换机(Master Switch):负责管理整个堆叠,在堆叠系统中只有一台 Master Switch; 2)备交换机(Standby Switch):是 Master Swtich 的备份交换机,以在故障时替换 Master Switch 的所有业务。在堆叠系统中只有一台 Standby Switch; 3)从交换机(Slave Switch):负责业务转发,在堆叠系统中可以有多台 Slave Switch。从 Slave Switch 数量越多,堆叠系统的转发带宽越大。除 Master Switch 和 Standby Switch 外,堆叠中其他所有的成员交换机都是 Slave Switch。当 Standby Switch 不可用时,Slave Switch 承担备交换机的角色。

Stack Priority(堆叠优先级)
堆叠优先级是成员交换机的一个属性,主要用于角色选举过程中确定成员交换机的角色。
优先级值越大表示优先级越高,优先级越高当选为 Master Switch 的可能性越大。
Stack ID(堆叠 ID)
Stack ID,用来标识和管理成员交换机,堆叠中所有成员交换机的 Stack ID 都是唯一的。
设备 Stack ID 缺省为 0。在堆叠时,由 Master Switch 对设备的 Stack ID 进行管理。当堆叠系统有新成员加入时,如果新成员与已有成员 Stack ID 冲突,则堆叠主交换机从 0~最大的 Stack ID 进行遍历,找到第一个空闲的ID分配给该新成员。
在建立堆叠时,建议提前规划好设备的 Stack ID 。
当堆叠后,设备的槽位号(Slot ID)将从 0 变为 Stack ID 值:

堆叠系统MAC地址
堆叠系统作为一台设备与网络中其他设备通信,具有唯一的MAC地址,称为堆叠系统MAC地址。
通常情况下使用 Master Switch 的MAC地址作为堆叠系统MAC地址。
当堆叠系统的MAC地址是主交换机的MAC地址,主交换机故障或者离开堆叠系统,在默认情况下堆叠系统 MAC 地址会延时10分钟切换。如果发生堆叠分裂,那么在10分钟内两个分裂的堆叠系统的MAC相同。
堆叠方式
堆叠卡堆叠
使用专用的堆叠插卡或者交换机自身集成的堆叠插卡,使用专用的堆叠线缆进行堆叠。

业务口堆叠
交换机之间使用逻辑堆叠接口(stack-port)相连,可使用普通线缆网线、光纤或者专用堆叠线缆连接物理成员端口。

堆叠逻辑接口
多[……]

READ MORE

「Huawei iStack」- 堆叠配置

配置命令

// 配置设备的堆叠ID
// 缺省情况下,设备的 Stack ID为 0;修改后的堆叠ID在保存当前配置,并重启之后才会生效。
[Huawei] stack slot slot-id renumber new-slot-id

// 配置设备的堆叠优先级
// 缺省情况下,成员交换机的堆叠优先级为100。
[Huawei] stack slot <slot-id> priority priority

// 创建堆叠逻辑接口,绑定物理成员端口到堆叠接口中
// Member-id为设备的堆叠ID,port-id为本地的堆叠逻辑接口编号,只能为 1 或者 2;
[Huawei] interface stack-port member-id/port-id
[Huawei-stack-port0/1] port interface { interface-type interface-number1 [ to interface-type interface-number2 ] } &<1-10> enable

// 堆叠主备倒换
[Huawei] slave switchover

多主检测

// 配置直连方式多主检测
// 在接口视图下配置接口的直连多主检测功能。
[Huawei-GigabitEthernet0/0/1] mad detect mode direct

代理方式多主检测,当代理设备为一台交换机时:

// 在堆叠系统上
// 在与代理设备互联的Eth-Trunk中开启MAD检测。
[Huawei] interface eth-trunk trunk-id
[Huawei-Eth-Trunk1] mad detect mode relay

// 在代理设备上
// 代理设备 与 堆叠系统 互联的Eth-Trunk中开启MAD代理。
[Huawei] interface eth-trunk trunk-id
[Huawei-Eth-Trunk1] mad relay

// 配置堆叠系统MAC地址切换时间
// 缺省情况下,系统MAC地址的切换时间为10分钟,堆叠系统MAC地址切换时间设置为0时,表示不切换,执行undo stack timer mac-address switch-delay命令表示立即切换。
[Huawei] stack timer mac-address switch-delay delay-time

// 清除堆叠的所有配置。执行该命令后会导致原有堆叠系统分裂,设备重启。
// 执行该命令将清除堆叠的所有配置,包括:交换机槽位号、堆叠优先级、堆叠保留VLAN、系统MAC切换时间、堆叠口配置、堆叠口速率配置。例如,交[……]

READ MORE

「Huawei iStack」- 跨设备链路聚合、流量本地优先转发

跨设备链路聚合
堆叠支持跨设备链路聚合技术,堆叠后成为逻辑上的一台交换机,支持将Eth-Trunk的成员接口分布在不同的成员交换机上。
当其中一条聚合链路故障或堆叠中某台成员交换机故障时,Eth-Trunk接口通过堆叠线缆将流量重新分布到其他聚合链路上,实现了链路间和设备间的备份,保证了数据流量的可靠传输。
正常的数据转发
当链路、堆叠设备正常时,数据转发情况:
故障的数据转发

在上行链路出现故障时跨设备链路聚合技术能够通过堆叠线缆将流量负载分担到其他成员交换机上的成员接口,从而提高网络可靠性。
流量本地优先转发
问题描述
链路聚合的负载分担算法根据流量特征将报文分担在不同的成员链路上,对于跨设备链路聚合极有可能出现报文的出接口和入接口不在同一台成员设备之上的情况,此时堆叠成员之间将会通过堆叠线缆转发流量,这增加了堆叠线缆的流量负担,同时也降低了转发效率。

如上图所示,当链路聚合将流量分担到其他成员设备上时,部分流量将会经过堆叠线缆转发,这会大大增加堆叠线缆的带宽承载压力。如果通过堆叠线缆需要转发的流量甚至超过堆叠线缆的带宽,报文将无法及时得到传输。
解决方案
为保证流量转发效率、降低堆叠线缆带宽负载,设备可以开启流量本地优先转发,从本设备进入的流量优先从本地转发出去,当本设备无出接口或者出接口全部故障,才会从其它成员交换机的接口转发出去。

在缺省情况下,流量本地优先转发功能处于使能状态(具体参考设备文档):

[Stack] interface eth-trunk 10
[Stack-Eth-Trunk10] local-preference enable[……]

READ MORE

「Huawei iStack」- 多主检测,Multi-Active Detection

问题描述
堆叠分裂
在稳定运行的堆叠系统中,带电移出部分成员交换机(或者堆叠线缆多点故障)导致堆叠系统变成多个堆叠系统。
分裂后主备仍在一个堆叠系统中;与原主备分离的从交换机因协议报文超时重新选举; 分裂后主备处于两个堆叠系统中;原主交换机所处堆叠系统更新拓扑,重新指定备交换机。原备交换机在新的堆叠系统中升为主,同时选举新的备交换机。

堆叠分裂引起的问题
由于堆叠系统中所有成员交换机都使用同一个IP地址(VLANIF接口地址)和MAC地址(堆叠系统MAC),一个堆叠系统分裂后,可能产生多个具有相同IP地址和MAC地址的堆叠系统,从而引起网络故障,为此必须进行IP地址和MAC地址的冲突检查。
具体故障场景:比如,在部署堆叠时,通常不会部署 STP,那么出现堆叠分列时,交换网络极其可能出现环路。
解决方案
多主检测,MAD,Multi-Active Detection:一种检测和处理堆叠分裂的协议,链路故障导致堆叠系统分裂后,MAD 可以实现堆叠分裂的检测、冲突处理和故障恢复,降低堆叠分裂对业务的影响。
原理简述
MAD,需要中间设备的参与(或者说,要互联,否则两个分裂后的堆叠系统是无法完成检测的)。
当堆叠分裂后: 1)堆叠系统通过 MAD 检测线缆(是普通线缆,但手动配置为 MAD 检测链路)发送 MAD 检测报文进行竞选 2)竞选失败的堆叠系统会关闭所有的物理端口(手动配置的保留端口除外),以保证不会因IP、MAC冲突对业务产生影响。

检测方式
直连检测方式和代理检测方式。在同一个堆叠系统中,两种检测方式互斥,不可以同时配置。
直连检测
直连检测方式是指堆叠成员交换机间通过普通线缆直连的专用链路进行多主检测。在直连检测方式中,堆叠系统正常运行时,不发送 MAD 报文;堆叠系统分裂后,分裂后的两台交换机以 1 秒为周期通过检测链路发送MAD报文进行多主冲突处理。
通过中间设备直连,可以实现通过中间设备缩短堆叠成员交换机之间的检测链路长度,适用于成员交换机相距较远的场景。 Full-mesh 方式直连(与通过中间设备直连相比)可以避免由中间设备故障导致的MAD检测失败,但是每两台成员交换机之间都建立全连接会占用较多的接口,所以该方式适用于成员交换机数目较少的场景。
通过中间设备的直连检测:所有堆叠设备,通过普通线缆与中间交换机直连:
通过 Full-Mesh 方式直连:堆叠系统的各成员交换机之间通过检测链路建立Full-mesh全连接,即每两台成员交换机之间至少有一条检测链路。
代理检测
代理检测方式是在堆叠系统 Eth-Trunk 上启用代理检测,在代理设备上启用MAD检测功能。此种检测方式要求堆叠系统中的[……]

READ MORE

「Huawei iStack」- 选举、状态变迁

堆叠初时阶段
物理连接
选择适当的连接方式和连接拓扑,组建堆叠网络。
确定出堆叠的连接方式和连接拓扑,完成成员交换机之间的物理连接之后,所有成员交换机上电。
主交换机选举
当所有成员交换机上电后,堆叠系统开始进行主交换机的选举。 成员交换机之间相互发送堆叠竞争报文,并根据选举原则,选出堆叠系统主交换机。
1)运行状态比较,已经运行的交换机比处于启动状态的交换机优先竞争为主交换机。堆叠主交换机选举超时时间为20s,堆叠成员交换机上电或重启时,由于不同成员交换机所需的启动时间可能差异比较大,因此不是所有成员交换机都有机会参与主交换机的第一次选举。 2)堆叠优先级高的交换机优先竞争为主交换机 3)当堆叠优先级相同时,MAC Address 小的交换机优先竞争为主交换机
拓扑收集和备交换机选举
主交换机收集所有成员交换机的拓扑信息,向成员交换机分配堆叠ID,之后选出堆叠系统备交换机。
主交换机选举完成后,主交换机会收集所有成员交换机的拓扑信息,并向所有成员交换机分配 Stack ID,之后进行备交换机的选举。
备交换机的选举规则如下(依次从第一条开始判断,直至找到最优的交换机才停止比较): 1)除主交换机外最先完成设备启动的交换机优先被选为备份交换机。当除主交换机外其它交换机同时完成启动时, 2)堆叠优先级最高的交换机成为备交换机 3)堆叠优先级相同时,MAC地址最小的成为备交换机
软件和配置同步
主交换机将堆叠系统的拓扑信息同步给所有成员交换机,成员交换机同步主交换机的系统软件和配置文件,之后进入稳定运行状态。
软件同步: 堆叠具有自动加载系统软件的功能,待组成堆叠的成员交换机不需要具有相同软件版本,只需要版本间兼容即可。 当备交换机或从交换机与主交换机的软件版本不一致时,备交换机或从交换机会自动从主交换机下载系统软件,然后使用新系统软件重启,并重新加入堆叠。
配置同步: 堆叠具有配置文件同步机制,备交换机或从交换机会将主交换机的配置文件同步到本设备并执行,以保证堆叠中的多台设备能够像一台设备一样在网络中工作,并且在主交换机出现故障之后,其余交换机仍能够正常执行各项功能。
堆叠成员加入
解释:堆叠成员加入,指向已经稳定运行的堆叠系统添加一台新的交换机;
1)堆叠角色变迁:选举将未上电的交换机,先连线加入堆叠后,再上电启动,新加入的交换机会选举为 Slave Switch;在堆叠系统中,原有主备从角色不变; 2)主交换机活动:当角色选举结束后,Master Switch 更新堆叠拓扑信息,同步到其他成员交换机上,并向新交换机分配 Stack ID(新交换机未配置 Stack ID;或配置的 Stack ID 与现堆叠系统的 Stack ID 冲突时)。[……]

READ MORE

「NETWORKING」- 高可靠性:不间断数据传输

解决方案
高可靠性的解决方案包括: 1)不间断转发(Non-Stopping Forwarding,NSF) 2)不间断路由(Non-Stopping Routing,NSR)
NSR vs GR
在主备倒换端,系统支持 NSR 和 GR 两种不同的高可靠性保护。
但 NSR 和 GR 是互斥的,即:对于特定协议,当系统倒换后,只能采用 NSR 或 GR 两种处理方式的一种;当然不同的协议,能够采用不同的方式;
当设备在部署 NSR 时,仍然可以支持 GR Helper 的功能,以支持自己的邻居 GR 过程,最大可能的保证用户全网网络节点业务的高可靠性;
应用场景
当网络对丢包的要求、对路由收敛的速度的要求都比较低时,可以使用NSF功能。 当网络对丢包的要求、对路由收敛的速度的要求都比较高时,可以使用NSR功能。[……]

READ MORE

「NETWORKING」- 高可靠性:不间断路由(Non-Stopping Routing,NSR)

解决方案
NSR 是在有 AMB 和 SMB 的设备上, AMB 发生故障时不影响邻居关系的一种可靠性技术。
原理简述
在设备发生倒换的过程中,路由处理不中断,因为:(1)邻居和拓扑信息不丢失;(2)邻居关系不中断;
特性特征
通过协议备份机制,实现主备倒换时控制平面(路由)和转发平面(业务)均不中断。
不依赖也不影响对端设备,没有互通问题; 路由的收敛速度要比 NSF 快;
应用场景
系统级 NSR 功能触发情况: 1)系统故障触发主备倒换。 2)软件升级或系统维护时网络管理员手动触发主备倒换。
原理概述
说明:NSR 对 OSPF、IS-IS、BGP 等协议的实现原理相同,我们以 OSPF 协议为例。

1)在控制平面中,路由协议实时备份路由信息; 2)硬件通道感知 AMB 异常,通知 SMB 升主,同时切换接口板上送报文通道;
NSR 原理主要包括以下三个过程:
批量备份
NSR 功能使能后,备板重启时, AMB 将路由信息和转发信息批量备份到 SMB 上。批量备份过程在实时备份过程之前进行,此时NSR无法实施主备倒换过程。
NSR功能使能后,备板重启时, AMB 上的业务进程会收到 SMB 上线的消息。业务进程开始进行内部数据的批量备份。 1)当批量数据备份完毕时,系统进入冗余保护状态。进入该状态后,如果主控板出现故障,备板升主后就可以利用之前从主板备份过来的数据进行升主,恢复业务。 2)当批量数据备份未完时,主控板故障,备板升主后可能会因为业务数据不全而导致无法升主,因此这个种状态下无法完成NSR倒换,设备会整机重启,恢复故障前状态。

1)备板启动完成。 2)各业务进程通过 HA 通道开始批量备份路由等业务数据,系统进入批量备份阶段。 3)业务进程全部批量备份完成后,系统进入冗余保护状态。
实时备份
当批量备份过程结束后,系统进入实时备份阶段。任何在控制平面和转发平面的改变(邻居状态或路由信息发生变化),都将实时从 AMB 备份到 SMB 上。在该阶段, SMB 能够随时代替 AMB 工作。

1)邻居状态变化或路由变化。 2) AMB 将变化信息通过HA通道备份到 SMB 。 3) SMB 答复 AMB 确认信息。
主备倒换
在已经完成备份的NSR系统 AMB 发生故障时, SMB 会通过硬件状态感知到 AMB 故障,并成为新的 AMB 。 SMB 升主后,该单板会切换接口板的报文上送通道。由于倒换时间足够短,路由协议在主备切换的过程中不会和邻居节点断连。
完成批量备份,进入冗余保护状态的系统,当 AMB 发生软件或硬件故障后, SMB 会从底层硬件感知到 AMB 的故障,并自[……]

READ MORE

「VRRP」- 虚拟路由冗余协议,Virtual Router Redundancy Protocol

问题描述
通常,在同个网段内的所有主机中,其都设置相同的、以网关为下一跳的缺省路由。主机发往其他网段的报文将通过缺省路由发往网关,再由网关进行转发,从而实现主机与外部网络的通信,即:局域网中的用户终端通常采用配置一个默认网关的形式访问外部网络;
但是当网关发生故障时,本网段内所有以网关为缺省路由的主机将无法与外部网络通信,那么所有用户终端访问外部网络的流量将会中断;
增加出口网关是提高系统可靠性的常见方法,通过部署多个网关的方式来解决单点故障;
但是需要解决多个网关之间的冲突问题,此时如何在多个出口之间进行选路就成为需要解决的问题;
解决方案
VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)的出现很好的解决该问题,既能够实现网关的备份,又能解决多个网关间互相冲突的问题,从而提高网络可靠性;
原理简述

在不改变组网的情况下: 1)VRRP 能够将多台路由设备组成一个虚拟路由器,客户端将配置虚拟路由器的 VIP(虚拟网络地址)为默认网关,与外部网络通信; 2)当网关设备发生故障时,VRRP 机制能够选举新的网关设备,并迁移 VIP 至新设备,以承担数据流量,从而保障网络的可靠通信;

该示例中,通过 VRRP 技术,两台路由器合并为一台逻辑路由器,并提供 VIP 192.168.1.254 作为网关地址;
特性说明
冗余备份:VRRP 将多台路由设备配置为缺省网关路由器,当出现单点故障的时候通过备份链路进行业务传输,从而降低网络故障的可能性,保证用户的各种业务不中断传输; 负载分担:VRRP 可以实现多台设备同时承担业务流量,从而减轻主用设备上数据流量的承载压力,在路由设备之间更均衡地分担流量; 联动功能:VRRP 联动可以监视上行链路的故障。当上行接口或链路故障时,VRRP 备份组的 Master 设备降低优先级,重新进行选举,确保 Master 路由器为最佳的 VRRP 路由设备,保证流量的正常转发。VRRP 与 BFD 联动可以提高 VRRP 备份组中主备设备的切换速度。利用 BFD 检测速度快的特点,在 Master 设备和 Backup 设备之间建立 BFD 会话并与 VRRP 备份组进行绑定,实现 Master 设备和 Backup 设备之间的链路出现故障时,Backup 设备迅速切换为 Master,承担网络流量;
应用场景
负载分担
创建多个 VRRP Group 并为每个组使用不同的 VIP 地址,且不同用户使用不同 VIP 作为网关;

监视上行端口
如果用户未配置 VRRP 监视上行端口,则当 VRRP 备份组中的 Master 设备 R1 的上行接口或者链路出现[……]

READ MORE

「VRRP」- 概念、术语

VRRP Router
是指运行 VRRP 协议的路由器,如图 R1 和 R2 设备。VRRP 是配置在路由器的接口上的,而且也是基于接口来工作的;
VRID & VRRP Group
VRID(Virtual Router Identifier,虚拟路由器标识符)、VRRP Group(虚拟路由器冗余协议组):
1)通过 VRID 来表示路由器; 2)具有相同 VRID 的多台路由器(的接口)属于同个 VRRP Group; 3)属于同个 VRRP Group 的路由器间,通过交互 VRRP 协议报文并产生一台虚拟路由器; 4)在同个 VRRP Group 中,只能出现一台 Master Router 角色;
Virtual Router
Virtual Router(虚拟路由器): 1)VRRP 为每个 VRRP Group 抽象出一台 Virtual Router(虚拟路由器) 2)该路由器并非真实存在的物理设备,而是由 VRRP 虚拟出来的逻辑设备; 3)同个 VRRP Group 只会产生一台 Virtual Router 设备;
VIP & VMAC
VIP(Virtual IP Address)、VMAC(Virtual MAC Address): 1)Virtual Router 拥有自己的 IP Address(VIP)以及 MAC Address(VMAC); 2)其中 VIP 由网络管理员在配置 VRRP 时指定;一台 Virtual Router 可有多个 VIP;通常情况用户使用该地址作为网关地址; 3)其中 VMAC 的格式是“0000-5e00-01xx”,其中 xx 为 VRID 值;
Master Router
Master Router(主路由器): 1)在每个 VRRP Group 中,只有 Master Router 才承担报文转发任务; 2)在每个 VRRP Group 中,只有 Master Router 才会响应针对 VIP 的 ARP Request; 3)Master Router 会以一定的时间间隔周期性地发送 VRRP 报文,以便通知同个 VRRP Group 的 Backup Router 关于自己的存活情况;
Backup Router
Backup Router(备路由器): 1)Backup Router 将会实时侦听 Master Router 发送出来的 VRRP 报文,它随时准备接替 Master Router 的工作;
Priority
Priority: 1)是选举 Master Router 和 Backup Router 的依据; 2)优先级取值范围 0-255,值越大越优先。如果值[……]

READ MORE

「VRRP」- 报文格式

VRRP 只有一种报文,即 Advertisement 报文
基于组播方式发送(组播地址为 224.0.0.18),所以只能在同一个广播域传递;
Advertisement(Multicast)

+——————————————-+
| Ethernet Header | IP Header | VRRP Packet |
+——————————————-+

DMAC: 01-00-5E-00-00-12(组播 MAC 地址)
SMAC: 00-00-5E-00-01-XX(虚拟路由器 MAC 地址)

DIP: 224.0.0.18
SIP: Master Router 端口的 IP 地址

Protocol: 0x70(协议号为 112)

报文格式

Ver:VRRP 目前有两个版本,其中 VRRPv2 仅适用于 IPv4 网络,VRRPv3 适用于 IPv4 和 IPv6 两种网络; Virtual Rtr ID:VRID,该报文所关联的虚拟路由器的标识; Priority:发送该报文的 VRRP Router 的优先级; Count IP Addrs:该 VRRP 报文中所包含的 VIP 的数量; Auth Type:VRRP 支持三种认证类型:0:不认证;1:纯文本密码认证;2:MD5 方式认证; Adver Int:发送 VRRP Advertisement 消息的间隔。默认为 1 秒; IP Address:所关联的虚拟路由器的 VIP,可以为多个; Authentication Data:验证所需要的密码信息;[……]

READ MORE

「VRRP」- 选举

当优先级不等时
R1 的接口 VRRP 优先级为 200,R2 的接口 VRRP 优先级为 100: 1)当两台设备完成初始化后,首先切换至 Backup 状态,并等待 Master Router 的 VRRP 报文; 2)R1 与 R2 根据各自 MASTER_DOWN 定时器超时时间,由 Backup 切换到 Master 状态,所以 R1 比 R2 更快切换至 Master 状态; 3)R1 和 R2 通过相互发送 VRRP 报文进行 Master 选举,优先级高的被选举为 Master 设备,因此 R1 被选为 Master Router; 4)R1 被选举为 Master Router 后,立即发送 Gratuitous ARP 报文将 VMAC 通告给与它连接的设备和主机;
初始创建 VRRP 的设备工作在 Initialize 状态,收到接口 Up 的消息后,若此设备的优先级小于 255,则会先切换至 Backup 状态,等待 MASTER_DOWN 定时器超时后再切换至 Master 状态; 如果优先级高的设备先启动,优先级低的设备后启动,则优先级高的设备先进入 Master 状态,优先级低的设备收到高优先级的 VRRP 通告报文,自己仍处于 Backup 状态; 如果优先级低的设备先启动,优先级高的设备后启动,则优先级低的先由 Backup 状态切换为 Master 状态,优先级高的设备收到优先级低的 VRRP 通告报文,重新进行选举,将优先级高的设备切换为 Master 状态。
当优先级相等时
R1(192.168.1.251/24)与 R2(192.168.1.252/24)的 GE0/0/0 接口 VRRP 优先级都是 200: 1)两台设备完成初始化后首先切换至 Backup 状态; 2)由于优先级相同,R1 与 R2 的 MASTER_DOWN 定时器超时后,同时由 Backup 状态切换至 Master 状态。 3)R1 与 R2 交换 VRRP 报文,优先级一样,通过比较接口 IP Address 选举 Master Router,由于 R2 的接口 IP 地址大于 R1 的接口 IP 地址,因此 R2 被选举为 Master Router; 4)R2 被选举为 Master 路由器后,立即发送 Gratuitous ARP 报文将 VMAC 通告给与它连接的设备和主机;
当配置 VIP 为接口地址时
通常情况下,VRRP 路由器的接口 IP 地址不会与虚拟路由器的 IP 地址重叠,也就是说我们会为虚拟路由器单独规划一个 IP 地址,而不会使用某台路由器的接口 IP 地址;
当然也存在特殊的情况,例如在某些网络中 IP 地址资源比较紧缺,那么也有可能会将某台路由器的接口 IP Ad[……]

READ MORE

「VRRP」- 故障切换

Master Router ⇒ Backup Router
Master主动退出VRRP组
当Master设备主动放弃Master地位(如Master设备退出备份组)时,会发送 Priority=0 的通告报文,用来使Backup设备快速切换成 Master 设备,而不用等到MASTER_DOWN定时器超时。这个切换的时间称为Skew_time。
Master设备或者链路故障
当Master设备发生网络故障而不能发送通告报文的时候,Backup设备并不能立即知道其工作状况。等到MASTER_DOWN定时器超时后,才会认为Master设备无法正常工作,从而将状态切换为Master。

切换时间为 (3* ADVER_INTERVAL)+ Skew_time
Backup Router ⇒ Master Router
在 R1 正常情况下,由Master设备负责转发用户报文,如图所示,所有用户流量通过R1到达Internet。 当 R1 出现故障时,网络会重新进行VRRP主备选举,如图所示,此时R2会成为新的Master设备负责转发用户报文。 当 R1 恢复运行后,网络将重新进行VRRP主备选举,由于R1的优先级大于R2,所以R1又重新成为新的Master设备负责转发用户报文。
VRRP Preempt Mode(抢占模式)
抢占模式(默认激活): 如果Backup路由器激活了抢占功能,那么当它发现Master路由器的优先级比自己更低时,它将立即切换至Master状态,成为新的Master路由器
非抢占模式: 如果Backup路由器没有激活抢占功能,那么即使它发现Master路由器的优先级比自己更低,也只能依然保持Backup状态,直到Master路由器失效。
开启抢占模式的场景: 1)当 VRRP 使用负载分担时,建议开启抢占;
Delay Time
在抢占模式下,当 Master Router 状态不稳定 或 网络质量差 时,会影响 Backup 对 Master 的状态判断,进而导致 VRRP 备份组频繁切换,从而引发终端 ARP 表项频繁刷新。
为缓解此问题,通常设置抢占延时定时器,通过 MASTER_INTERVAL 定时器超时时间加上延时时间,确定状态稳定后,再进行主备回切。
在 Backup 中,进行时延配置:此时 Master 故障,Backup 准备抢占,如果高负载会影响 VRRP 接收,所以通过时延,尽量确定是 Master 故障再切换;
在 Master 中,进行时延配置:此时 Backup 正常,Master 恢复正常,建议使用较久的时延,确保自身学习到 IGP 路由,再进行切换,否则会丢包;
开启抢占模式的 VRR[……]

READ MORE

「VRRP」- 常见问题处理

VRRP & BFD
问题描述
当 VRRP 备份组之间的链路出现故障时,由于此时 VRRP 报文无法正常交互,Backup 设备需要等待 Master_Down_Timer 计时器超时后才会切换为 Master 设备,在等待切换期间内,业务流量仍会发往 Master 设备,此时会造成业务流量丢失;
解决方案
在 Master Router 和 Backup Router 间,通过建立 BFD 会话并与 VRRP 备份组进行绑定(配置 VRRP 与 BFD 联动),由 BFD 机制快速检测 VRRP 备份组之间的通信故障,当 Backup 设备通过 BFD 感知故障发生后,不再等待 Master_Down_Timer 计时器超时,而会在 BFD 检测周期结束后及时通知 VRRP 备份组进行主备切换,在出现故障时立即切换 VRRP 状态,从而大大减少应用中断时间。,此时可以实现毫秒级的主备切换;

这是另种 VRRP 与 BFD 联动场景,目的是快速发现 Master 故障;
在普通 BFD 联动中,VRRP 备份组会根据 BFD 会话的状态进行优先级调整,并根据调整后的优先级判断是否进行主备切换。在实际应用中,通常 Master 设备配置延时抢占,而 Backup 设备配置立即抢占,当 Backup 设备检测到 BFD 会话状态出现 DOWN 后,通过增加自身优先级大于 Master 优先级实现快速切换,当故障排除,BFD 会话状态出现 UP 时,新的 Master 通过减小自己的优先级,发送 vrrp 通告报文,经过延迟时间后再次切换为 Backup;[……]

READ MORE

「Huawei eNSP」- 实验:VRRP

配置两个 VRRP Group,并为 Client 使用不同的网关,实现负载分担;
基础配置

################################################################################ for AR4

interface GigabitEthernet0/0/0
ip address 192.168.0.4 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.0.1
vrrp vrid 1 priority 200
vrrp vrid 2 virtual-ip 192.168.0.2

<AR4>display vrrp brief
Total:2 Master:1 Backup:1 Non-active:0
VRID State Interface Type Virtual IP
—————————————————————-
1 Master GE0/0/0 Normal 192.168.0.1
2 Backup GE0/0/0 Normal 192.168.0.2

################################################################################ for AR5

interface GigabitEthernet0/0/0
ip address 192.168.0.5 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.0.1
vrrp vrid 2 virtual-ip 192.168.0.2
vrrp vrid 2 priority 200

<AR5>display vrrp brief
Total:2 Master:1 Backup:1 Non-active:0
VRID State Interface Type Virtual IP
—————————————————————-
1 Backup GE0/0/0 N[……]

READ MORE

「Huawei eNSP」- VRRP and MSTP

问题描述
通过结合 VRRP 与 MSTP 技术,实现负载分担与链路容易。
该过程的重点是:对于同个 VLAN,要保证 VRRP 的 Master Router 与 MSTP Root Bridge 在同个设备上。
实验环境

部署 MSTP 环境

# for SW2 SW3 SW4
stp region-configuration
rigion-name demo01
revsion-level 1
instance 1 vlan 10
instance 2 vlan 20
active regin-configuration

# for SW4
stp instance 1 root primary
stp instance 2 root secondary

# for SW2
stp instance 1 root secondary
stp instance 2 root primary

部署 VRRP 环境

# for SW2

interface Vlanif10
ip address 192.168.10.2 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.10.254

interface Vlanif20
ip address 192.168.20.2 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.20.254
vrrp vrid 1 priority 200

# for SW4

interface Vlanif10
ip address 192.168.10.4 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.10.254
vrrp vrid 1 priority 200

interface Vlanif20
ip address 192.168.20.4 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.20.25[……]

READ MORE

「Network」- 策略路由,Policy-Based Routing

问题描述
传统的路由转发原理是首先根据报文的目的地址查找路由表,然后进行报文转发。随着业务的发展,用户更加希望能够在传统路由转发的基础上根据自己定义的策略进行报文转发和选路。
例如,双 ISP 接入的企业,想要实现 LAN-A 访问 Internet 通过 ISP1、LAN-2 访问 Internet 通过 ISP2,该需求无法通过传统的路由技术实现:

解决方案
PBR(Policy-Based Routing,策略路由):通过 PBR 技术,网络设备不仅能够基于报文的 DST-IPAddress 进行数据转发,更能基于其他元素进行数据转发(例如 SRC-IPAddress、SRC-MACAddress、DST-MACAddress、SRC-Port、DST-Port、VLAN-ID 等等)
注意,PBR 是种技术,而实现这种技术的方法有很多: 1)华为,通过 policy-based-route 实现(初级,简单); 2)华为,通过 MQC 实现 PBR 技术;
原理简述
通过规则匹配数据包,然后对数据包执行策略。
特性特征
若设备部署 PBR,则被匹配的报文优先根据 PBR 的策略进行转发,即 PBR 策略的优先级高于传统路由表。
建议 PRB 优先与 IP Routing Table,所以即使仅有 PBR 条目(且无路由条目)也能够完成数据转发。
应用场景
多个网络出口(为局域网选择不同的出口线路): 1)当企业存在多个网络出口时,若想指定部分网段访问Internet时的网络出口, 2)可以使用 PBR:在出口设备的内网接口配置PBR,匹配来自内网的流量,为其指定不同的下一跳公网地址。

内网防火墙旁挂(企业不愿修改当前网络拓扑): 1)内网防火墙旁挂部署在核心交换机,为防护内网在核心交换机的三层接口上部署PBR,将来自外部网络的流量牵引到防火墙上进行安全检查,检查完的流量再发送回核心交换机,由核心交换机依据路由表转发到内网。 2)将流量牵引到别的设备进行安全检查等类似的行为,我们称之为“引流”,PBR是一种常见的引流工具。[……]

READ MORE

「PBR」- 策略路由,通过 MQC 实现

解决方案
通过 MQC 的 Traffic Behavior 的 redirect ip-nexthop 实现策略路由:

[RTA] traffic behavior to-isp14
[RTA-behavior-to-isp14] redirect ip-nexthop 10.0.14.4

注意事项
在 Traffic Classifier 中,如果通过 ACL 抓取流量,要注意 ACL 默认行为。[……]

READ MORE

「MQC」- 通过 MQC 实现 PBR(选择出口线路)

问题描述

当前网络以同,但由于配置 AR1 等价路由,所以在 PC1 / PC2 中 ping 8.8.8.8 或许到达 AR4 设备或 AR5 设备
我们希望实现: 1)VLAN 10 通过 10.0.14.0/24 去往 AR4 8.8.8.8 地址 2)VLAN 20 通过 10.0.14.0/24 去往 AR3 8.8.8.8 地址
解决方案

// Traffic Classifier Configuration

[RTA] acl number 3010
[RTA-acl-adv-3010] rule 2 permit ip source 192.168.10.0 0.0.0.255 destination 0.0.0.0 0

[RTA] acl number 3020
[RTA-acl-adv-3020] rule 2 permit ip source 192.168.20.0 0.0.0.255 destination 0.0.0.0 0

[RTA] traffic classifier from-lan10
[RTA-classifier-from-lan10] if-match acl 3010

[RTA] traffic classifier from-lan20
[RTA-classifier-from-lan20] if-match acl 3020

// Traffic Behavior Configuration

[RTA] traffic behavior to-isp13
[RTA-behavior-to-isp13] redirect ip-nexthop 10.0.13.3

[RTA] traffic behavior to-isp14
[RTA-behavior-to-isp14] redirect ip-nexthop 10.0.14.4

// Traffic Policy Configuration

[RTA] traffic policy isp-selection
[RTA-trafficpolicy-isp-selection] classifier from-lan10 behavior to-isp14
[RTA-trafficpolicy-isp-selection] classifier from-lan20 behavior to-isp13

[RTA] interface GigabitEthernet 0/0/0
[RTA-GigabitEthernet0/0/0] traffic-policy isp-selection inbound

如果存在内网服务器
配置方法与上面类似,但是要单独处理内网间的流量,即内网间的流[……]

READ MORE

「PBR」- Two ISP, One Server

问题描述
内网存在两个网段,网段 1:10.1.1.0/24,网段 2:10.1.2.0/24,在 RTA 的 GE0/0/0 接口部署 PBR,实现网段 1 访问 Internet 通过 ISP1、网段 2 访问 Internet 通过 ISP2;
RTA 上旁挂了一台服务器,要求在 RTA 上部署的策略路由不影响内网用户访问该服务器;

解决方案

// 10.1.1.0

[RTA] acl number 3000
[RTA-acl-adv-3000] rule 1 deny ip source 10.1.1.0 0.0.0.255 destination 10.1.3.254 0 # 放行去往 Server 的流量
[RTA-acl-adv-3000] rule 2 permit ip source 10.1.1.0 0.0.0.255 destination 0.0.0.0 0

[RTA] policy-based-route hcip permit node 10
[RTA-policy-based-route-hcip-10] if-match acl 3000
[RTA-policy-based-route-hcip-10] apply ip-address next-hop 202.1.2.3

// 10.1.2.0

[RTA] acl number 3001
[RTA-acl-adv-3001] rule 1 deny ip source 10.1.2.0 0.0.0.255 destination 10.1.3.254 0
[RTA-acl-adv-3001] rule 2 permit ip source 10.1.2.0 0.0.0.255 destination 0.0.0.0 0

[RTA] policy-based-route hcip permit node 20
[RTA-policy-based-route-hcip-20] if-match acl 3001
[RTA-policy-based-route-hcip-20] apply ip-address next-hop 154.1.2.3

// Interface PBR

[RTA-GigabitEthernet0/0/0] ip policy-based-route hcip[……]

READ MORE

「Networking」- QoS(概述)

问题描述
随着网络的不断发展,网络规模及流量类型的不断增加,使得互联网流量激增,产生网络拥塞,增加转发时延,严重时还会产生丢包,导致业务质量下降甚至不可用;
IP 网络刚出现的时候,没有服务质量保证。你只知道报文发出去了,至于能不能到,什么时候到,就靠运气了。传统网络,尽力而为。在传统的 IP 网络中,所有的报文都被无区别的等同对待,每个转发设备对所有的报文均采用先入先出的策略进行处理,它尽最大的努力(Best-Effort)将报文送到目的地,但对报文传送的可靠性、传送延迟等性能不提供任何保证;
所以,要在 IP 网络上开展这些实时与非实时业务,就必须解决网络拥塞问题,而解决网络拥塞的最直接的办法就是增加网络带宽,但从网络的建设成本考虑,这是不现实的;
为了支持具有不同服务需求的语音、视频以及数据等业务,要求网络能够区分出不同的通信,进而提供相应的服务。例如 VoIP 等实时业务就对报文的传输延迟提出了较高要求,如果报文传送延时太长,用户将不能接受(相对而言,E-Mail 和 FTP 业务对时间延迟并不敏感);
网络发展日新月异,随着 IP 网络上新应用的不断出现,对 IP 网络的服务质量也提出了新的要求。随着技术的进步、竞争的加剧,客户的要求越来越高,网络提供有质量保证的服务是大势所趋;
传统 IP 网络的尽力服务不可能识别和区分出网络中的各种通信类别,而具备通信类别的区分能力正是为不同的通信提供不同服务的前提,所以说传统网络的尽力服务模式已不能满足应用的需要;
解决方案
QoS(Quality of Service,服务质量)技术就是在这种背景下发展起来的。QoS 用于评估服务方满足客户服务需求的能力。
在带宽有限的情况下,该技术应用一个“有保证”的策略对网络流量进行管理,并实现不同的流量可以获得不同的优先服务。针对各种应用的不同需求,为其提供不同的服务质量;
QoS 旨在针对各种应用的不同需求,为其提供不同的服务质量。如: 1)可以限制骨干网上 FTP 使用的带宽,也可以给数据库访问以较高优先级; 2)对于 ISP,其用户可能传送语音、视频或其他实时业务,QoS 使 ISP 能区分这些不同的报文,并提供不同服务; 3)可以为时间敏感的多媒体业务提供带宽和低时延保证,而其他业务在使用网络时,也不会影响这些时间敏感的业务;
应用场景
通过配置QoS,对企业的网络流量进行调控,避免并管理网络拥塞,减少报文的丢失率,同时也可以为企业用户提供专用带宽或者为不同的业务(语音、视频、数据等)提供差分服务。
在企业广域互联场景下,QoS一般被部署在出口链路上。 通过部署QoS技术能保障高价值业务的带宽与时延。[……]

READ MORE

「QoS」- 指标(Indicators)

影响 QoS 的因素
带宽(Bandwidth):网络中 IP 包的传输速率,可用平均速率或峰值速率来表征。——带宽竞争,可以通过增大带宽来解决,但不能无限增大;
延迟 (Latency):在两个参考点间,某一 IP 包从发送到接收间的时间间隔。——时延敏感流量,如视频、语音等;
时延抖动 (Jitter):沿同一路径传输的一个数据流(Stream)中,不同分组传输延迟的变化。——与时延相关,时延小则抖动的范围小,对语音、视频等实时业务影响大;
丢包率(Packet Loss):某一业务在网络中传输时,可允许的最大丢包率。——衡量网络可靠性,少量丢包对业务的影响不大,但大量丢包会严重影响传输效率;
可用性(Availability):用户与 IP 业务连接的可靠性,包括建立时间、保持时间等;[……]

READ MORE

「QoS」- 服务模型(Service Model)

QoS 服务模型
通常 QoS 提供以下三种服务模型:
Best-Effort service(尽力而为服务模型)
应用程序可以在任何时候,发出任意数量的报文; 网络尽最大的可能性来发送报文。对时延、可靠性等性能不提供任何保证;
Best-Effort 是最简单的服务模型; 应用程序可以在任何时候,发出任意数量的报文,而且不需要事先获得批准,也不需要通知网络; 对 Best-Effort 服务,网络尽最大的可能性来发送报文。但对时延、可靠性等性能不提供任何保证; Best-Effort 服务是现在 Internet 的缺省服务模型,它适用于绝大多数网络应用,如 FTP、E-Mail 等,它通过 FIFO 队列来实现;
Integrated service(综合服务模型,简称 IntServ)
应用程序在发送报文前,需要向网络申请特定的服务; 网络在收到应用程序的资源请求后,通过交换 RSVP 信令信息,为每个信息流预留资源;

IntServ 是一个综合服务模型,它可以满足多种 QoS 需求; 这种服务模型在发送报文前,需要向网络申请特定的服务。这个请求是通过信令 RSVP 来完成的,RSVP 是在应用程序开始发送报文之前来为该应用申请网络资源的; 一旦网络确认为应用程序分配资源,则网络将为每个流(Flow,由两端的 IP 地址、端口号、协议号确定)维护一个状态,并基于这个状态执行报文的分类、流量监管、排队及其调度。应用程序在收到网络的确认信息(即确认网络已经为这个应用程序的报文预留了资源)后,才开始发送报文。只要应用程序的报文控制在流量参数描述的范围内,网络将承诺满足应用程序的 QoS 需求; 小例子:就好比你要预定车辆,需要事先申请,声明想要什么样的服务,在资源满足的情况下,预留资源以满足该请求; 但是这样也有一个缺点,车辆服务方要为此维护大量的订车信息;
缺点:实现较复杂;当无流量发送时,仍然独占带宽,使用率较低;该方案要求端到端所有节点设备都支持并运行 RSVP 协议;
Differentiated service(区分服务模型,简称 DiffServ)
将网络中的流量分成多个类,然后为每个类定义相应的处理行为,使其拥有不同的优先转发、丢包率、时延等;

DiffServ 是一个多服务模型,它也可以满足不同的 QoS 需求。该模型目前 IP 网络广泛使用;
应用程序在发出报文前,不需要通知网络为其预留资源。对 DiffServ 服务模型,网络不需要为每个流维护状态,它根据每个报文的差分服务类(各报文头中的差分服务标记字段,如 IP 头的 DS Field),来提供特定的服务;
其实就是将网络中的流量分成多个类,不同的类采用不同的处理。也就是说,先[……]

READ MORE

「QoS」- Differentiated Service(DiffServ)

常用技术
流量监管 and 流量整形
通过监督进入网络的流量速率,用来限制流量及其资源的使用,保证更好的为用户提供服务;
拥塞避免 and 拥塞管理
拥塞是在共享网络上多个用户竞争相同的资源(带宽、缓冲区等)时发生的问题。例如,由于广域网的带宽通常要比局域网的带宽小,当一个局域网的用户向另一个局域网的用户发送数据时,由于广域网的带宽小于局域网的带宽,数据将不可能按局域网发送的速度在广域网上传输。此时,处在局域网和广域网之间的路由器将发生拥塞;

拥塞经常发生于如图所示的情况: 1)速率不匹配:分组从高速链路进入设备,再由低速链路转发出去; 2)汇聚问题:分组从多个接口同时进入设备,由一个没有足够带宽的接口转发出去;
过度的拥塞会对网络资源造成损害,并引发系列的负面影响: 1)拥塞增加了报文传输的延迟和延迟抖动。 2)过高的延迟会引起报文重传。 3)拥塞使网络的有效吞吐率降低,造成网络资源的损害。 4)拥塞加剧会耗费大量的网络资源(特别是存储资源),不合理的资源分配甚至可能导致系统陷入资源死锁而崩溃。
拥塞的影响:拥塞使流量不能及时获得资源,是造成服务性能下降的源头。然而在分组交换以及多用户业务并存的复杂环境下,拥塞又是常见的。因此采取有效的避免拥塞以及防止拥塞加剧的方法是必需的。
拥塞的管理和对策:在满足用户对服务质量要求的前提下尽可能地充分利用网络资源。通常用如下两种策略来缓解网络拥塞: 1)拥塞避免:通过监视网络资源(如队列或内存缓冲区)的使用情况,在拥塞有加剧的趋势时,主动丢弃报文,通过调整网络的流量来解除网络过载的一种流量控制机制。拥塞避免用于防止因为线路拥塞而使设备的队列溢出。通常作用在接口出方向; 2)拥塞管理:指网络在发生拥塞时,如何进行管理和控制。通过调整报文的调度次序来满足时延敏感业务高 QoS 服务。当网络中发生拥塞时,设备按照一定的调度策略决定报文的转发次序,使关键业务得到优先处理,或者主动丢弃报文,通过调整网络流量来解除网络过载;
数据处理流程

QoS 技术提供下述功能:
1)流量分类和标记(Classification and Marking): 依据一定的匹配规则识别出对象,是有区别地实施服务的前提,通常作用在接口入方向;
2)令牌桶(Token Bucket): 使用令牌桶对流量进行评估,是否满足报文转发的条件; 流量监管和流量整形均会用到令牌桶技术;
3)流量监管(Traffic Policing): 通过监控进入网络的某一流量的规格,限制它在一个允许的范围之内。若某个连接的报文流量过大,就丢弃报文,或重新设置该报文的优先级(比如限制HTTP报文不能占用超过50%的网络带宽),以保护网络资源和运营商的利益不受损害 对进入[……]

READ MORE

「QoS」- DiffServ / Simplified Traffic Policy(简单流分类)

简单流分类是指采用简单的规则(如 只根据 IP 报文的 IP 优先级或 DSCP 值、IPv6 报文的 TC 值、MPLS 报文的 EXP 域值、VLAN 报文的 802.1p 值),对报文进行粗略的分类,以识别出具有不同优先级或服务等级特征的流量,实现外部优先级和内部优先级之间的映射;
简单流分类过程实际上就是信任端口的上行报文携带的优先级标记,并进行优先级映射(即根据优先级映射表,将上行报文携带的 QoS 优先级统一映射到设备内部的服务等级和颜色,将下行报文的内部的服务等级和颜色映射成为 QoS 优先级);

不同的报文使用不同的 QoS 优先级,例如 VLAN 报文使用 802.1p,IP 报文使用 DSCP,MPLS 报文使用 EXP;
为了保证不同报文的服务质量 1)报文在进入设备时,需要将报文携带的 QoS 优先级统一映射到设备内部的服务等级 Service Class(亦称调度优先级 PHB)和丢弃优先级(亦称颜色 Color) 2)报文在设备内部时,根据报文的服务等级进行拥塞管理,根据报文的颜色进行拥塞避免; 3)报文在发出设备时,需要将内部的服务等级和颜色映射为 QoS 优先级,以便后续网络设备能够根据 QoS 优先级提供相应的服务质量;
外部优先级间
报文头优先级:不同的报文,使用不同的 QoS 优先级(外部优先级)
外部优先级 – VLAN 报文
以太网在以太网帧头的 VLAN TAG 中定义了 8 种 PRI(业务优先级):
外部优先级 – MPLS 报文
对于 MPLS 报文,通常将标签信息中的 EXP 域作为 MPLS 报文的外部优先级,用来区分数据流量的服务等级;
外部优先级 – IP 报文
IPv4 报文在 IP 报文头的 ToS 中的 Precedence 字段域中定义了 8 种 IP 业务类型; 后对 IPv4 报文头的 ToS 字段进行了重新定义,称为 DS(Differentiated Services)字段,即对 IP-Precedence 字段进行了扩充;

RFC 1349 IP Precedence
RFC 2474 DSCP
各外部优先级间的对应关系

服务等级 (Service Class)
Service Class:报文在设备内部的服务等级(内部优先级)
服务等级,即队列
Service Class 是指报文在设备内部的服务等级,支持 8 种取值,优先级从高到低依次为 CS7、CS6、EF、AF4、AF3、AF2、AF1、BE;

Service Class 决定了报文在设备内部所属的队列类型; 服务等级的高低取决于具体的队列调度算法配置:[……]

READ MORE

「QoS」- 流量监管(Traffic Policing)

问题描述

通过边缘网络设备连接广域网和局域网,局域网的带宽(100 Mbps)通常比广域网(2 Mbps 或更低)高; 当局域网用户试图通过广域网发送大量数据时,在网络边缘就会发生拥塞;
解决方案
这种情况下,可以在网络边缘的入口处进行流量监管,限制大流量数据的速率;
通过监控进入网络的某一流量的规格,限制它在一个允许的范围之内,若某个连接的报文流量过大,就丢弃报文,或重新设置该报文的优先级,以保护网络资源不受损害;
流量监管可配置在设备的接口 进方向 / 出方向;
原理简述
流量监管采用承诺访问速率 CAR 来对流量进行控制,CAR 使用令牌桶算法进行流量速率的评估,衡量每个数据报文是超过还是遵守所规定的报文速率,依据评估结果,实施预先设定好的监管动作;

CAR 两个功能
流量速率限制:通过使用令牌桶对流经端口的报文进行度量,使得在特定时间内只有得到令牌的流量通过,从而实现限速功能; 流分类:通过令牌桶算法对流量进行测量,根据测量结果给报文打上不同的流分类内部标记(包括服务等级与丢弃优先级)
CAR 处理流程

当报文到来时,首先检查端口的匹配规则,如果匹配上了,则进行速率控制,报文进入令牌桶中进行流量速率评估; 令牌桶评估后,报文被标记为红、黄、绿三种颜色。 1)红色表示报文速率过大,不符合规定,直接丢弃; 2)黄色表示虽然不符合规定,但允许临时的突发,重新标记后,降低优先级进行尽力而为转发; 3)绿色表示符合规定,直接转发;
三种令牌桶类型,均可以使用
1)如果只是为了限制带宽,使用单速单桶;
2)如果在限制带宽的基础上,还要对输入流量的突发情况进行区分,做不同的标记处理,则使用单速双桶。注意:标记为 yellow 的动作一定要同标记为 green 的配置的不一样,否则限速效果与单速单桶一样;
3)如果在限制带宽的基础上,还要对输入流量的带宽情况进行区分,区分出带宽是小于 CIR 还是在 CIR~PIR 之间,则使用双速双桶。注意:标记为 yellow 的动作也要同标记为 green 的动作配置得不一样,否则限速效果与单速单桶一样;
特性特征
丢弃超额流量或将超额流量重标记为低优先级量 不需要额外的内存资源,不会带来延迟和抖动 丢包可能引发重传 可以重标记流
应用场景
在企业网络中
一般用于控制进方向流量,防止过多流量进入设备。对于时延敏感流量(如:视频、语音),推荐使用

存在语音、视频和数据等多种不同的业务,当大量的业务流量进入网络侧时,可能会因为带宽不足产生拥塞,需要对三种业务提供不同的保证带宽,优先保证语音业务的带宽,其次是视频业务,最后是数据业务,因此可以对不同业务进行不同的[……]

READ MORE

「QoS」- 拥塞避免(Congestion Avoidance)

解决方案
拥塞避免是指通过监视网络资源(如队列或内存缓冲区)的使用情况,在拥塞有加剧的趋势时,主动丢弃报文,通过调整网络的流量来解除网络过载的一种流控机制;
原理简述
其本质为丢弃报文:如果拥塞加剧,主动丢弃未进入队列的报文
特性特征
WIP
应用场景

各地用户有可能向同一台服务器上传数据,因此用户与服务器之间的通信会经过广域网,由于广域网带宽小于局域网的带宽,位于广域网和局域网之间的边缘设备将可能发生拥塞,此时可以通过配置拥塞避免,主动丢弃优先级较低的报文(比如数据报文等),减少网络的拥塞,保证高优先级业务正常运行;
丢弃策略
尾丢弃 (Tail Drop)
由于每个队列长度有限,当某一队列已经被装满时,传统的处理方法会将后续向该队列发送的报文全部丢弃,直至拥塞解除,这种处理方式称为尾丢弃(Tail Drop)

当队列的长度达到最大值后,所有新入队列的报文(缓存在队列尾部)都将被丢弃,这将导致: 1)TCP 全局同步现象:其主要原因在于 Tail-Drop 的无差别丢弃,导致所有 TCP 连接同时受到影响; 2)无差别丢弃:尾丢弃无法对流量进行区分,很可能导致大量非关键数据被转发,而大量关键数据被丢弃;
早期随机检测(RED)
为避免 TCP 全局同步现象,出现了 RED(Random Early Detection)技术。RED,随机地丢弃数据报文,让多个 TCP 连接不同时降低发送速度,从而避免了 TCP 的全局同步现象。使 TCP 速率及网络流量都趋于稳定;

RED 为每个队列的长度都设定了阈值门限,并规定: 1)当队列的长度小于低门限时,不丢弃报文; 2)当队列长度在高门限和低门限之间时,开始随机丢弃新到来的报文,且队列越长,丢弃概率越大。方法是为每个到来的报文赋予一个随机数,并用该随机数与当前队列的丢弃概率比较,如果大于丢弃概率则报文被丢弃。队列越长,报文被丢弃的概率越高; 3)当队列长度超过高门限时,丢弃所有新到来的报文,即尾丢弃
仍可能出现 TCP 全局同步现象(RED 也无法对流量进行区分),但链路利用率已大大增加;
加权随机先期检测(WRED)
基于 RED 技术,设备实现了 WRED(Weighted Random Early Detection),通过对不同优先级数据包或队列设置相应的丢弃策略,以实现对不同流量进行区分丢弃;
流队列支持基于 DSCP 或 IP 优先级进行 WRED 丢弃。每一种优先级都可以独立设置报文丢包的上下门限及丢包率,报文到达下限时,开始丢包,随着门限的增高,丢包率不断增加,最高丢包率不超过设置的丢包率,直至到达高门限,报文全部丢弃,这样按照一定的丢弃概率主动丢弃队[……]

READ MORE