链路聚合
随着网络规模不断扩大,用户对骨干链路的带宽和可靠性提出了越来越高的要求。在传统技术中,常用更换高速率的接口板或更换支持高速率接口板的设备的方式来增加带宽,但这种方案需要付出高额的费用,而且不够灵活。采用链路聚合技术可以在不进行硬件升级的条件下,通过将多个物理接口捆绑为一个逻辑接口,来达到增加链路带宽的目的。在实现增大带宽目的的链路聚合采用备份链路的机制,可以有效的提高设备之间链路的可靠性。
在企业网络中,所有设备的流量在转发到其他网络前都会汇聚到核心层,再由核心区设备转发到其他网络,或者转发到外网。在核心层设备负责数据的高速交换时,容易发生拥塞。在核心层部署链路聚合,可以提升整个网络的数据吞吐量,解决拥塞问题。两台核心交换机SWA和SWB之间通过两条成员链路互相连接,通过部署链路聚合,可以确保SWA和SWB之间的链路不会产生拥塞。链路聚合是把两台设备之间的多条物理链路聚合在一起,当做一条逻辑链路来使用。这两台设备可以是一对路由器,一对交换机,或者是一台路由器和一台交换机。一条聚合链路可以包含多条成员链路,在ARG3系列路由器和X7系列交换机上默认最多为8条。链路聚合能够提高链路带宽。理论上,通过聚合几条链路,一个聚合口的带宽可以扩展为所有成员口带宽的总和,这样就有效地增加了逻辑链路的带宽。链路聚合为网络提供了高可靠性。配置了链路聚合之后,如果一个成员接口发生故障,该成员口的物理链路会把流量切换到另一条成员链路上。链路聚合还可以在一个聚合口上实现负载均衡,一个聚合口可以把流量分散到多个不同的成员口上,通过成员链路把流量发送到同一个目的地,将网络产生拥塞的可能性降到最低。
链路聚合模式
链路聚合包含两种模式:手动负载均衡模式和LACP模式。
手工负载分担模式下,Eth-Trunk的建立、成员接口的加入由手工配置,没有链路聚合控制协议的参与。该模式下所有活动链路都参与数据的转发,平均分担流量,因此称为负载分担模式。如果某条活动链路故障,链路聚合组自动在剩余的活动链路中平均分担流量。当需要在两个直连设备间提供一个较大的链路带宽而设备又不支持LACP协议时,可以使用手工负载分担模式。ARG3系列路由器和X7系列交换机可以基于目的MAC地址,源MAC地址,或者基于源MAC地址和目的MAC地址,源IP地址,目的IP地址,或者基于源IP地址和目的IP地址进行负载均衡。
在LACP模式中,链路两端的设备相互发送LACP报文,协商聚合参数。协商完成后,两台设备确定活动接口和非活动接口。在LACP模式中,需要手动创建一个Eth-Trunk口,并添加成员口。LACP协商选举活动接口和非活动接口。LACP模式也叫M:N模式。M代表活动成员链路,用于在负载均衡模式中转发数据。N代表非活动链路,用于冗余备份。如果一条活动链路发生故障,该链路传输的数据被切换到一条优先级最高的备份链路上,这条备份链路转变为活动状态。
两种链路聚合模式的主要区别是:在LACP模式中,一些链路充当备份链路。在手动负载均衡模式中,所有的成员口都处于转发状态。
数据流负载分担
在一个聚合口中,聚合链路两端的物理口的所有参数必须一致,包括物理口的数量,传输速率,双工模式和流量控制模式。成员口可以是二层接口或三层接口。数据流在聚合链路上传输,数据顺序必须保持不变。一个数据流可以看做是一组MAC地址和IP地址相同的帧。例如,两台设备间的SSH或SFTP连接可以看做一个数据流。如果未配置链路聚合,只是用一条物理链路来传输数据,那么一个数据流中的帧总是能按正确的顺序到达目的地。配置了链路聚合后,多条物理链路被绑定成一条聚合链路,一个数据流中的帧通过不同的物理链路传输。如果第一个帧通过一条物理链路传输,第二个帧通过另外一条物理链路传输,这样一来同一数据流的第二个数据帧就有可能比第一个数据帧先到达对端设备,从而产生接收数据包乱序的情况。
为了避免这种情况的发生,Eth-Trunk采用逐流负载分担的机制,这种机制把数据帧中的地址通过HASH算法生成HASH-KEY值,然后根据这个数值在Eth-Trunk转发表中寻找对应的出接口,不同的MAC或IP地址HASH得出的HASH-KEY值不同,从而出接口也就不同,这样既保证了同一数据流的帧在同一条物理链路转发,又实现了流量在聚合组内各物理链路上的负载分担,即逐流的负载分担。逐流负载分担能保证包的顺序,但不能保证带宽利用率。
负载分担的类型主要包括以下几种,用户可以根据具体应用选择不同的负载分担类型。根据报文的源MAC地址进行负载分担;根据报文的目的MAC地址进行负载分担;根据报文的源IP地址进行负载分担;根据报文的目的IP地址进行负载分担;根据报文的源MAC地址和目的MAC地址进行负载分担;根据报文的源IP地址和目的IP地址进行负载分担;根据报文的VLAN、源物理端口等对LIPvIPv6和MPLS报文进行增强型负载分担。
二层链路聚合配置
本例,通过执行interfaceEth-trunk命令配置链路聚合。这条命令创建了一个Eth-Trunk口,并且进入该Eth-Trunk口视。trunk-id用来唯一标识一个Eth-Trunk口,该参数的取值可以是0到63之间的任何一个整数。如果指定的Eth-Trunk口已经存在,执行interfaceeth-trunk命令会直接进入该Eth-Trunk口视。
配置Eth-Trunk口和成员口,需要注意以下规则:只能删除不包含任何成员口的Eth-Trunk口。把接口加入Eth-Trunk口时,二层Eth-Trunk口的成员口必须是二层接口,三层Eth-Trunk口的成员口必须是三层接口。一个Eth-Trunk口最多可以加入8个成员口。加入Eth-Trunk口的接口必须是hybrid接口。一个Eth-Trunk口不能充当其他Eth-Trunk口的成员口。一个以太接口只能加入一个Eth-Trunk口。如果把一个以太接口加入另一个Eth-Trunk口,必须先把该以太接口从当前所属的Eth-Trunk口中删除。一个Eth-Trunk口的成员口类型必须相同。例如,一个快速以太口和一个千兆以太口不能加入同一个Eth-Trunk。位于不同接口板上的以太口可以加入同一个Eth-Trunk口。如果一个对端接口直接和本端Eth-Trunk口的一个成员口相连,该对端接口也必须加入一个Eth-Trunk口。否则两端无法通信。如果成员口的速率不同,速率较低的接口可能会拥塞,报文可能会被丢弃。接口加入Eth-Trunk口后,Eth-Trunk口学习MAC地址,成员口不再学习。
执行displayinterfaceeth-trunk命令,可以确认两台设备间是否已经成功实现链路聚合。也可以使用这条命令收集流量统计数据,定位接口故障。如果Eth-Trunk口处于UP状态,表明接口正常运行。如果接口处于Down状态,表明所有成员口物理层发生故障。如果管理员手动关闭端口,接口处于AdministrativelyDOWN状态。可以通过接口状态的改变发现接口故障,所有接口正常情况下都应处于Up状态。
[SWA]interface Eth-Trunk 1
[SWA-Eth-Trunk1]interface GigabitEthernet0/0/1
[SWA-GigabitEthernet0/0/1]eth-trunk 1
[SWA-GigabitEthernet0/0/1]interface GigabitEthernet0/0/2
[SWA-GigabitEthernet0/0/2]eth-trunk 1
[SWA]display interface eth-trunk 1
Eth-Trunk1 current state : UP
Line protocol current state : UP
……
-----------------------------------------------------
PortName Status Weight
-----------------------------------------------------
GigabitEthernet0/0/1 UP 1
GigabitEthernet0/0/2 UP 1
-----------------------------------------------------
The Number of Ports in Trunk : 2
The Number of UP Ports in Trunk : 2
三层链路聚合配置
如果要在路由器上配置三层链路聚合,需要首先创建Eth-Trunk接口,然后在Eth-Trunk逻辑口上执行undoportswitch命令,把聚合链路从二层转为三层链路。执行undoportswitch命令后,可以为Eth-Trunk逻辑口分配一个IP地址。
[RTA]interface eth-trunk 1
[RTA-Eth-Trunk1]undo portswitch
[RTA-Eth-Trunk1]ip address 100.1.1.1 24
[RTA-Eth-Trunk1]quit
[RTA]interface GigabitEthernet 0/0/1
[RTA-GigabitEthernet0/0/1]eth-trunk 1
[RTA-GigabitEthernet0/0/1]quit
[RTA]interface GigabitEthernet0/0/2
[RTA-GigabitEthernet0/0/2]eth-trunk 1
[RTA-GigabitEthernet0/0/2]quit
[RTA]display interface eth-trunk 1
Eth-Trunk1 current state : UP
Line protocol current state : UP
……
-----------------------------------------------------
PortName Status Weight
----------------------------------------------------- GigabitEthernet0/0/1 UP 1
GigabitEthernet0/0/2 UP 1
-----------------------------------------------------
The Number of Ports in Trunk : 2
The Number of UP Ports in Trunk : 2
局域网中的用户终端通常采用配置一个默认网关的形式访问外部网络,如果此时默认网关设备发生故障,将中断所有用户终端的网络访问,这很可能会给用户带来不可预计的损失,所以可以通过部署多个网关的方式来解决单点故障问题,那么如何让多个网关能够协同工作但又不会互相冲突就成了最迫切需要解决的问题。于是VRRP应运而生,VRRP能够在不改变组网的情况下,将多台路由器虚拟成一个虚拟路由器,通过配置虚拟路由器的IP地址为默认网关,实现网关的备份。
协议版本:VRRPv2和VRRPvVRRPv2仅适用于IPv4网络,VRRPv3适用于IPv4和IPv6两种网络。VRRP协议报文:只有一种报文:Advertisement报文;其目的IP地址是220.0.1目的MAC地址是01-00-5e-00-00-1协议号是11
VRRP基本概念
VRRP路由器:运行VRRP协议的设备,如RouterA和RouterB。虚拟路由器:又称VRRP备份组,由一个Master设备和多个Backup设备组成,被当作一个共享局域网内主机的缺省网关。如RouterA和RouterB共同组成了一个虚拟路由器。Master路由器:承担转发报文任务的VRRP设备,如RouterA。Backup路由器:一组没有承担转发任务的VRRP设备,当Master设备出现故障时,它们将通过竞选成为新的Master设备,如RouterB。Priority:设备在备份组中的优先级,取值范围是0~250表示设备停止参与VRRP备份组,用来使备份设备尽快成为Master设备,而不必等到计时器超时;255则保留给IP地址拥有者,无法手工配置;设备缺省优先级值是100。vrid:虚拟路由器的标识,如中RouterA和RouterB组成的虚拟路由器的vrid为需手工指定,范围1-25虚拟IP地址:虚拟路由器的IP地址,一个虚拟路由器可以有一个或多个IP地址,由用户配置。如RouterA和RouterB组成的虚拟路由器的虚拟IP地址为254/2IP地址拥有者:如果一个VRRP设备将真实的接口IP地址配置为虚拟路由器IP地址,则该设备被称为IP地址拥有者。如果IP地址拥有者是可用的,则它将一直成为Master。虚拟MAC地址:虚拟路由器根据vrid生成的MAC地址。一个虚拟路由器拥有一个虚拟MAC地址,格式为:00-00-5E-00-01-{vrid}。当虚拟路由器回应ARP请求时,使用虚拟MAC地址,而不是接口的真实MAC地址。如RouterA和RouterB组成的虚拟路由器的vrid为因此这个VRRP备份组的MAC地址为00-00-5E-00-01-0
VRRP的状态
VRRP协议状态机有三种状态:Initialize、Master、Backup。三种状态之间的转换条件如下:
Master:Startuppriority=255;Initialize->Backup:Startuppriority!=255;Master->Initialize:设备关闭;Master->Backup:收到比自己优先级更高的数据包;Backup->Initialize:设备关闭;Backup->Master:在超时时间内没有收到VRRP通告报文或者收到通告报文原Master优先级为0,或者收到的通告报文中的原Master优先级比自己的优先级低。
VRRP工作过程
VRRP的工作过程如下:选举MasterVRRP备份组中的设备根据优先级选举出Master。Master设备通过发送免费ARP报文,将虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务。选举规则:比较优先级的大小,优先级高者当选为Master设备。当两台设备优先级相如果已经存在Master,则其保持Master身份,无需继续选举;如果不存在Master,则继续比较接口IP地址大小,接口IP地址较大的设备当选为Master设备。
Master设备状态的通告:Master设备周期性地发送VRRP通告报文,在VRRP备份组中公布其配置信息和工作状况。Backup设备通过接收到的VRRP报文来判断Master设备是否工作正常。当Master设备主动放弃Master地位时,会发送优先级为0的通告报文,用来使Backup设备快速切换成Master设备,而不用等到Master_Down_Interval定时器超时。这个切换的时间称为Skew_Time,计算方式为:/25单位为秒。当Master设备发生网络故障而不能发送通告报文的时候,Backup设备并不能立即知道其工作状况。等到Master_Down_Interval定时器超时后,才会认为Master设备无法正常工作,从而将状态切换为Master。其中,Master_Down_Interval定时器取值为:3×Advertisement_Interval+Skew_Time,单位为秒。
Master设备故障工作过程:当组内的备份设备一段时间内没有接收到来自Master设备的报文,则将自己转为Master设备。一个VRRP组里有多台备份设备时,短时间内可能产生多个Master设备,此时,设备将会对收到的VRRP报文中的优先级与本地优先级做比较,从而选取优先级高的设备成为Master。设备的状态变为Master之后,会立刻发送免费ARP来刷新交换机上的MAC表项,从而把用户的流量引到此设备上来,整个过程对用户完全透明。
抢占模式具有更高优先级的备用路由器启动后是否能够抢占具有较低优先级的Master路由器,使自己成为Master。缺省为抢占模式。注意:存在的例外情况是如果IP地址拥有者是可用的,则它总是处于抢占的状态,并成为Master设备。抢占延时抢占延迟时间,默认为0,即立即抢占。中RouterA故障恢复后,立即抢占可能会导致流量中断,因为RouterA的上行链路的路由协议可能未完成收敛,这种情况则需要配置Master设备的抢占延时。在性能不稳定的网络中,网络堵塞可能导致Backup设备在Master_Down_Interval期间没有收到Master设备的报文,Backup设备则会主动切换为Master。如果此时原Master设备的报文又到达了,新Master设备将再次切换回Backup,如此则会出现VRRP备份组成员状态频繁切换的现象。为了缓解这种现象,可以配置抢占延时,使得Backup设备在等待了Master_Down_Interval时间后,再等待抢占延迟时间。如在此期间仍没有收到通告报文,Backup设备才会切换为Master设备。
VRRP故障
中RouterA的上行链路故障不会引起VRRP主备切换,这样会造成HostA访问Internet的流量在RouterA处被丢弃,所以需要使VRRP设备能够感知到上行链路故障,并且及时做主备切换。若RouterA或连接RouterB的接口发生故障时都会引起VRRP主备切换,因为Backup设备无法在Master_Down_Interval时间内收到Master设备发送的协议报文了。
VRRP无法感知非运行VRRP接口的状态变化,故当上行链路出现故障时,VRRP无法进行感知,不会进行主备切换,从而导致业务中断。利用VRRP的联动功能监视上行接口或链路故障,主动进行主备切换。
VRRP负载分担
负载分担是指多个VRRP备份组同时承担业务转发,VRRP负载分担与VRRP主备备份的基本原理和报文协商过程都是相同的。对于每一个VRRP备份组,都包含一个Master设备和若干Backup设备。与主备备份方式的不同点在于:负载分担方式需要建立多个VRRP备份组,各备份组的Master设备分担在不同设备上;单台设备可以加入多个备份组,在不同的备份组中扮演不同的角色。
VRRP配置
负载分担方式与主备备份方式配置思路一致,以单个VRRP备份组为例,Master设备配置:vrrpvrid1virtual-ip0.0.10//配置vrid1中的虚拟IP地址。vrrpvrid1priority120//配置在vrid1中的优先级为120,其他设备优先级未手动指定,缺省为100,则本设备为Master。vrrpvrid1preempt-modetimerdelay20//配置Master设备的抢占时延为20秒。vrrpvrid1trackinterfaceGigabitEthernet0/0/0reduce30//跟踪上行接口G0/0/0的状态,如果端口出现故障,则Master设备VRRP优先级降低30。Backup设备配置:vrrpvrid1virtual-ip0.0.10//配置vrid1中的虚拟IP地址。
主备备份模式
RouterA配置:
interface GigabitEthernet0/0/1
ip address 10.0.0.1 255.255.255.0
vrrp vrid 1 virtual-ip 10.0.0.10
vrrp vrid 1 priority 120
vrrp vrid 1 preempt-mode timer delay 20
vrrp vrid 1 track interface GigabitEthernet0/0/0 reduce 30
RouterB配置:
interface GigabitEthernet0/0/1
ip address 10.0.0.2 255.255.255.0
vrrp vrid 1 virtual-ip 10.0.0.10
文章为作者独立观点,不代表股票量化交易软件接口观点
^o^2023-09-15
卖得差不多了就转让重组,再赚一笔。然后重新成立公司准备再上市!上市前把帐上所有的钱分掉。反正股票发行的钱都不知怎么用!老年新手2023-07-09
股票也可以赚钱!价值投资也可以赚钱!只是那个群体是极少数人,所有人都想成为那部分少数人。关键看自己适合什么~∫∫Buy+Selldxdy=$2023-03-16
买股票,不是都盼着跌吗?越跌越高兴才好啊,特别是高分红股票,可以买到更便宜的份额。涨了该哭新仔2023-03-16
大家往后经历的每一个杀跌,去年十月我已经满满的经历了,昨天看到股票只反弹一个点我就割肉了。今天终于不用亏钱了佛乐2023-02-14
机构20元成本,个人80元成本,机构能够把持仓打散分仓博小额,个人只能低位卖出,股票的规则都不一样,你还要同债同权,你以为个人户与监管都是傻的?