CN114095420B - 链路聚合方法、装置、电子设备及存储介质 - Google Patents
链路聚合方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114095420B CN114095420B CN202210063517.XA CN202210063517A CN114095420B CN 114095420 B CN114095420 B CN 114095420B CN 202210063517 A CN202210063517 A CN 202210063517A CN 114095420 B CN114095420 B CN 114095420B
- Authority
- CN
- China
- Prior art keywords
- address
- link
- link port
- equipment
- slave
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000002776 aggregation Effects 0.000 title claims abstract description 32
- 238000004220 aggregation Methods 0.000 title claims abstract description 32
- 238000003860 storage Methods 0.000 title claims description 10
- 230000008859 change Effects 0.000 claims abstract description 59
- 238000004891 communication Methods 0.000 claims abstract description 21
- 230000000694 effects Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 238000005520 cutting process Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 208000036555 familial 5 febrile seizures Diseases 0.000 description 2
- 208000013090 familial febrile seizures 5 Diseases 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请提供了一种链路聚合的方法,包括连接第一设备和第二设备,第一设备和第二设备都与接入设备连接;在第一设备和第二设备中选取主设备和从设备;对从设备链路端口进行第一变更操作,将从设备链路端口的MAC地址变更为主设备链路端口的MAC地址。本申请通过修改从设备链路端口的MAC地址,提高了聚合协商的成功率,同时在设备故障时,可以迅速切换流量至另外一台设备上,提高了跨设备链路聚合组之间通信的鲁棒性;此外,本申请还根据修改后的MAC地址刷新从设备的链路本地地址,保证了本地链路上设备之间的通信。
Description
技术领域
本发明涉及数据通讯领域,特别涉及链路聚合方法、装置、电子设备及存储介质。
背景技术
MCLAG(MultiChassis Link Aggregation Group,跨设备链路聚合组),如图1所示,是一种跨设备链路聚合的机制,是将ServerA(可以是设备或主机)与另外两台设备DeviceA(可以是设备或主机)和DeviceB进行跨设备链路聚合,如同ServerA和一台设备建立了链路聚合关系,从而把链路可靠性从单板级提高到了设备级。
DeviceA、DeviceB与ServerA进行链路聚合协商时,当DeviceA、DeviceB其中之一发生故障时,流量可以迅速切换到另外一台设备上,避免了单点故障而导致的网络中断。DeviceA、DeviceB要实现跨设备与ServerA链路聚合,从ServerA的角度看起来,ServerA是在与同一台设备的两个端口进行LACP(Link Aggregation Control Protocol,链路汇聚控制协议)协商。
因此,亟需一种可提高设备聚合协商成功率的链路聚合方法,以实现上述技术效果。
发明内容
为了解决现有技术的不足,本发明的主要目的在于提供一种链路聚合的方法、装置、电子设备及存储介质。
为了达到上述目的,第一方面本发明提供了一种链路聚合方法,所述方法包括:
连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
在所述第一设备和所述第二设备中选取主设备和从设备;
对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址。
在一些实施例中,所述方法还包括:
对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,将所述从设备链路端口的本地链路地址变更为与所述从设备链路端口的所述MAC地址对应的本地链路地址。
在一些实施例中,所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,包括:
对执行所述第二变更操作后的所述从设备链路端口进行down操作,将所述链路端口变为down状态;
对所述变为down状态的所述从设备链路端口进行UP操作,将所述链路端口变为UP状态,以实现所述从设备链路端口的所述本地链路地址的刷新。
在一些实施例中,所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,包括:
删除执行所述第二变更操作后的所述从设备链路端口对应的初始本地链路地址;
添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口,以实现所述从设备链路端口的所述本地链路地址的刷新。
在一些实施例中,所述添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口之前,还包括:
获取执行所述第一变更操作后的所述从设备链路端口对应的所述MAC地址;
根据所述MAC地址及预设规则,生成所述新的本地链路地址。
在一些实施例中,所述在所述第一设备和所述第二设备中选取主设备和从设备包括:
获取所述第一设备对应的第一IP地址;
获取所述第二设备对应的第二IP地址;
比较所述第一IP地址和所述第二IP地址的数值;
若所述第一IP地址的数值大于所述第二IP地址的数值,则选取所述第一设备为主设备,选取所述第二设备为从设备;
若所述第二IP地址的数值大于所述第一IP地址的数值,则选取所述第二设备为主设备,选取所述第一设备为从设备。
在一些实施例中,所述方法还包括:
所述主设备向所述接入设备发送第一报文;
所述从设备向所述接入设备发送第二报文;
在所述主设备故障时,切断所述主设备与所述接入设备的通信,并由所述从设备向所述接入设备发送所述第一报文。
第二方面,本申请提供了一种链路聚合装置,所述装置包括:
连接模块,用于连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
选取模块,用于在所述第一设备和所述第二设备中选取主设备和从设备;
修改模块,用于对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址。
第三方面,本申请提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行权利要求1-7任一所述方法。
第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现权利要求1-7任一项所述的方法。
本申请实现的有益效果为:
本申请提供了一种链路聚合的方法,包括连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;在所述第一设备和所述第二设备中选取主设备和从设备;对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址。本申请通过修改从设备链路端口的MAC地址,提高了聚合协商的成功率,同时在设备故障时,可以迅速切换流量至另外一台设备上,提高了跨设备链路聚合组之间通信的鲁棒性;此外,本申请还根据修改后的MAC地址刷新从设备的链路本地地址,保证了本地链路上设备之间的通信。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,其中:
图1是本申请提供的跨设备链路聚合组示意图;
图2是本申请实施例提供的第一地址转换示意图;
图3是本申请实施例提供的第二地址转换示意图;
图4是本申请实施例提供的方法流程示意图;
图5是本申请实施例提供的链路聚合装置示意图;
图6是本申请实施例提供的电子设备结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,在本申请的描述中,除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
还应当理解,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
需要注意的是,术语“S1”、“S2”等仅用于步骤的描述目的,并非特别指称次序或顺位的意思,亦非用以限定本申请,其仅仅是为了方便描述本申请的方法,而不能理解为指示步骤的先后顺序。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
实施例一
本申请实施例提供了一种链路聚合方法:
S100、连接第一设备、第二设备及接入设备。
其中,第一设备和第二设备可以是交换机,也可以是主机;用户通过将设备上的物理以太网端口配置成一个聚合端口连接到上游或下游设备上,实现多台设备之间的链路聚合;本申请利用这种方式,将接入设备与另外的两台设备(即第一设备、第二设备)进行跨设备链路聚合,从而将链路可靠性从单板级提高到了设备级。
S200、选取主设备和从设备。
具体的,在第一设备和第二设备建立邻居关系后,通过比较第一设备和第二设备的IP地址数值大小,确定主设备和从设备;若所述第一IP地址的数值大于所述第二IP地址的数值,则选取所述第一设备为主设备,选取所述第二设备为从设备;若所述第二IP地址的数值大于所述第一IP地址的数值,则选取所述第二设备为主设备,选取所述第一设备为从设备。例如,第一设备的IP地址为192.168.0.2,第二设备的IP地址为192.168.1.2,此时第一设备的IP地址小于第二设备的IP地址,因此选取第二设备为主设备,第一设备为从设备。
S300、将从设备链路端口的MAC地址修改为主设备链路端口的MAC地址(MediaAccess Control Address)。
将从设备链路端口的MAC地址修改为主设备链路端口的MAC地址后,第一设备和第二设备从链路端口发送的LACP报文中的源MAC地址是相同的,此时从接入设备的角度看起来,就是从同一台设备收到的报文。
S400、基于从设备链路端口的MAC地址,修改链路本地地址。
理论上,在从设备修改链路端口MAC地址时,其链路本地地址应该也随之变化,这样才不会影响本地链路上设备之间的通信。但是,不幸的是,无论是linux系统还是各设备厂家自研的操作系统,都没有实现链路本地地址随链路端口的MAC地址变化而进行变化相应改变的机制。但是,若链路端口地址发送变化,对应接口上的链路本地地址没有发生相应的变化时,就会导致在三层转发的场景中流量的中断。为了避免出现前述的问题,本申请提供了在链路端口的MAC地址发送变化时,相应的修改链路本地地址的方法,具体如下:
1、先对MAC地址发生变化的链路端口进行down操作,将所述链路端口变为down状态;然后再对前述链路端口进行up操作,将所述链路端口变为up状态就可以链路本地地址。
2、当前使用的链路端口的MAC地址和即将要修改成的新MAC地址都是已知的,可以利用链路本地地址的自动生成机制来实现当MAC地址变化时,生成新的链路本地地址,此时当前链路端口的初始链路本地地址和刷新链路本地地址,因此可以先删除链路端口的初始链路本地地址,再将新的链路本地地址添加到链路端口中,就可以实现当MAC地址变化时刷新链路本地地址。
具体的链路本地地址的自动生成机制如下:
链路本地地址(link-local address)是IPv6单播地址的一种。与IPv4不同,IPv6可以在一个接口配置很多地址,所以学习路由就有可能出现很多下一跳。而使用链路本地地址可以唯一标识一个节点,在本地链路看到下一跳都是对端的链路本地地址。链路本地地址专门用来和相同链路上的其他主机或路由器通信。例如:在本链路上,路由表中非直连IPv6路由的下一跳都是对端的链路本地地址,不是公网IPv6地址。
当在一个节点启用IPV6协议,节点的每个接口自动生成一个链路本地地址该地址的前缀为固定的FE80::/10,而默认情况下从11bit到64bit设置为0,即其前缀64位为标准指定的,其后64位按EUI-64格式来构造。具体来说,其后64位会使用接口的48位MAC地址扩展为64位进行填充标识,转换过程如下:
对于一个MAC地址,由两部分组成,24位的公司的ID(由IEEE唯一分配),24位公司的扩展ID(公司自己编制),联合产生全球唯一的48位MAC地址(也称IEEE 802地址),如下:
ccccccUG cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx
| 24位IEEE分配 || 24位厂商自己编 |
第一字节的第7位称为U/L位,表示此地址是全球管理还是本地管理。值为0是全球管理,值为1是本地管理。第一字节第8位称为I/G位,表示此地址是单播地址还是组播地址。值为0是单播地址,值1是组播地址。
先将此48位MAC地址公司ID和公司扩展ID之间插入特定16位值0xFFFE,形成64位的EUI-64地址,如下:
ccccccUG cccccccc cccccccc 11111111 11111110 xxxxxxxx xxxxxxxxxxxxxxxx
| 24位IEEE分配 | FFFE | 24位厂商自己编制 |
再将EUI-64地址的第一字节第7为反转,形成IPv6地址的接口ID,加之IPv6前缀形成完整的IPv6地址。
举个例子,如图2和图3所示:若MAC地址为 00-21-2F-B5-6E-10,转换EUI-64后为00-21-2F-FF-FE-B5-6E-10(在2F、B5之间插入FFFE);对第一个字节的第七位进行反转:第一个字节为0000 0000,第7位反转为0000 0010,转换16进制为0x02;此时得到结果为02-21-2F-FF-FE-B5-6E-10,将其转换为IPv6表示格式为0221:2FFF:FEB5:6E10;最后加上FE80的前缀即可生成链路本地地址:FE80::0221:2FFF:FEB5:6E10。
以linux系统为例,代码实现示例如下:
#define MAC_TO_LINKLOCAL_STR(buf, macArray) \
snprintf(buf, INET6_ADDRSTRLEN, "fe80::%02x%02x:%02xff:fe%02x:%02x%02x/64", \
macArray[0]^2, macArray[1], macArray[2], \
macArray[3], macArray[4], macArray[5]);
#define CMD_LEN 256
int update_if_ipv6_link_local_addr_by_mac(uint8_t old_mac_addr[ETHER_ADDR_LEN], uint8_t new_mac_addr[ETHER_ADDR_LEN])
{
char old_linklocal_str[INET6_ADDRSTRLEN];
char new_linklocal_str[INET6_ADDRSTRLEN];
char syscmd[CMD_LEN];
int ret = 0;
if (memcmp(old_mac_addr, new_mac_addr, ETHER_ADDR_LEN) != 0)
{
MAC_TO_LINKLOCAL_STR(old_linklocal_str, old_mac_addr);
MAC_TO_LINKLOCAL_STR(new_linklocal_str, new_mac_addr);
sprintf(syscmd, "ip -6 addr del %s dev %s > /dev/null 2>&1",old_linklocal_str, lif_po->name);
ret = system(syscmd);
if (ret < 0)
{
printf("cmd: %s\t error: %s", syscmd, strerror(errno));
return ret;
}
sprintf(syscmd, "ip -6 addr add %s dev %s > /dev/null 2>&1",new_linklocal_str, lif_po->name);
ret = system(syscmd);
if (ret < 0)
{
printf("cmd: %s\t error: %s", syscmd, strerror(errno));
return ret;
}
}
return ret;
}
值得注意的是,主设备和从设备分别保持与接入设备的的通信(即第一设备发送第一报文给接入设备,第二设备发送第二报文给接入设备),在主设备故障时,切断第一设备与接入设备之间的通信,由第二设备发送第一报文至接入设备。
基于本申请实施例公开的链路聚合方法,提高了聚合协商的成功率,同时在设备故障时,迅速切换流量至另外一台设备上,提高了跨设备链路聚合组之间通信的鲁棒性,此外,还保证了本地链路上设备之间的通信。
实施例二
对应上述实施例,本申请提供了一种链路方法,如图4所示,所述方法包括:
4100、连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
4200、在所述第一设备和所述第二设备中选取主设备和从设备;
优选的,所述在所述第一设备和所述第二设备中选取主设备和从设备包括:
4210、获取所述第一设备对应的第一IP地址;
4220、获取所述第二设备对应的第二IP地址;
4230、比较所述第一IP地址和所述第二IP地址的数值;
4240、若所述第一IP地址的数值大于所述第二IP地址的数值,则选取所述第一设备为主设备,选取所述第二设备为从设备;
4250、若所述第二IP地址的数值大于所述第一IP地址的数值,则选取所述第二设备为主设备,选取所述第一设备为从设备。
4300、对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址。
优选的,所述方法还包括:
4400、对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,将所述从设备链路端口的本地链路地址变更为与所述从设备链路端口的所述MAC地址对应的本地链路地址。
优选的,所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,包括:
4410、对执行所述第二变更操作后的所述从设备链路端口进行down操作,将所述链路端口变为down状态;
4420、对所述变为down状态的所述从设备链路端口进行UP操作,将所述链路端口变为UP状态,以实现所述从设备链路端口的所述本地链路地址的刷新。
优选的,所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,还包括:
4430、删除执行所述第二变更操作后的所述从设备链路端口对应的初始本地链路地址;
4440、添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口,以实现所述从设备链路端口的所述本地链路地址的刷新。
优选的,所述添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口之前,还包括:
4450、获取执行所述第一变更操作后的所述从设备链路端口对应的所述MAC地址;
4460、根据所述MAC地址及预设规则,生成所述新的本地链路地址。
优选的,所述方法还包括:
4500、所述主设备向所述接入设备发送第一报文;
4510、所述从设备向所述接入设备发送第二报文;
4520、在所述主设备故障时,切断所述主设备与所述接入设备的通信,并由所述从设备向所述接入设备发送所述第一报文。
实施例三
对应上述所有实施例,如图5所示,本申请实施例提供一种链路聚合装置500,包括:
连接模块510,用于连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
选取模块520,用于在所述第一设备和所述第二设备中选取主设备和从设备;
修改模块530,用于对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址。
在一些实施例中,所述修改模块530还用于对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,将所述从设备链路端口的本地链路地址变更为与所述从设备链路端口的所述MAC地址对应的本地链路地址。
在一些实施例中,所述修改模块530还用于对执行所述第二变更操作后的所述从设备链路端口进行down操作,将所述链路端口变为down状态;对所述变为down状态的所述从设备链路端口进行UP操作,将所述链路端口变为UP状态,以实现所述从设备链路端口的所述本地链路地址的刷新。
在一些实施例中,所述修改模块530还用于删除执行所述第二变更操作后的所述从设备链路端口对应的初始本地链路地址;添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口,以实现所述从设备链路端口的所述本地链路地址的刷新。
在一些实施例中,所述修改模块530还用于获取执行所述第一变更操作后的所述从设备链路端口对应的所述MAC地址;根据所述MAC地址及预设规则,生成所述新的本地链路地址。
在一些实施例中,所述选取模块520用于获取所述第一设备对应的第一IP地址;获取所述第二设备对应的第二IP地址;比较所述第一IP地址和所述第二IP地址的数值;若所述第一IP地址的数值大于所述第二IP地址的数值,则选取所述第一设备为主设备,选取所述第二设备为从设备;若所述第二IP地址的数值大于所述第一IP地址的数值,则选取所述第二设备为主设备,选取所述第一设备为从设备。
在一些实施例中,所述装置还包括通讯模块540(图中未示出),所述通讯模块540用于在所述主设备故障时,切断所述主设备与所述接入设备的通信,并由所述从设备向所述接入设备发送所述第一报文。
实施例四
对应上述所有实施例,如图6所示,本申请实施例提供一种电子设备,包括: 一个或多个处理器;以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
在所述第一设备和所述第二设备中选取主设备和从设备;
对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址。
设备的架构,具体可以包括处理器610,视频显示适配器611,磁盘驱动器612,输入/输出接口613,网络接口614,以及存储器620。上述处理器610、视频显示适配器611、磁盘驱动器612、输入/输出接口613、网络接口614,与存储器620之间可以通过总线630进行通信连接。
其中,处理器610可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。
存储器620可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器620可以存储用于控制电子设备600运行的操作系统621,用于控制电子设备600的低级别操作的基本输入输出系统(BIOS)622。另外,还可以存储网页浏览器623,数据存储管理系统624,以及图标字体处理系统625等等。上述图标字体处理系统625就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器620中,并由处理器610来调用执行。
输入/输出接口613用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
网络接口614用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线630包括一通路,在设备的各个组件(例如处理器610、视频显示适配器611、磁盘驱动器612、输入/输出接口613、网络接口614,与存储器620)之间传输信息。
另外,该电子设备600还可以从虚拟资源对象领取条件信息数据库中获得具体领取条件的信息,以用于进行条件判断,等等。
需要说明的是,尽管上述设备仅示出了处理器610、视频显示适配器611、磁盘驱动器612、输入/输出接口613、网络接口614,存储器620,总线630等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
实施例五
对应上述所有实施例,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于如下操作:
连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
在所述第一设备和所述第二设备中选取主设备和从设备;
对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,云服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (7)
1.一种链路聚合的方法,其特征在于,所述方法包括:
连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
在所述第一设备和所述第二设备中选取主设备和从设备;
对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址;
对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,将所述从设备链路端口的本地链路地址变更为与所述从设备链路端口的所述MAC地址对应的本地链路地址;
其中,所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作包括:
对执行所述第二变更操作后的所述从设备链路端口进行down操作,将所述链路端口变为down状态;
对所述变为down状态的所述从设备链路端口进行UP操作,将所述链路端口变为UP状态,以实现所述从设备链路端口的所述本地链路地址的刷新;
所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,还包括:
删除执行所述第二变更操作后的所述从设备链路端口对应的初始本地链路地址;
添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口,以实现所述从设备链路端口的所述本地链路地址的刷新。
2.根据权利要求1所述的方法,其特征在于,所述添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口之前,还包括:
获取执行所述第一变更操作后的所述从设备链路端口对应的所述MAC地址;
根据所述MAC地址及预设规则,生成所述新的本地链路地址。
3.根据权利要求1所述的方法,其特征在于,所述在所述第一设备和所述第二设备中选取主设备和从设备包括:
获取所述第一设备对应的第一IP地址;
获取所述第二设备对应的第二IP地址;
比较所述第一IP地址和所述第二IP地址的数值;
若所述第一IP地址的数值大于所述第二IP地址的数值,则选取所述第一设备为主设备,选取所述第二设备为从设备;
若所述第二IP地址的数值大于所述第一IP地址的数值,则选取所述第二设备为主设备,选取所述第一设备为从设备。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述主设备向所述接入设备发送第一报文;
所述从设备向所述接入设备发送第二报文;
在所述主设备故障时,切断所述主设备与所述接入设备的通信,并由所述从设备向所述接入设备发送所述第一报文。
5.一种链路聚合装置,其特征在于,所述装置包括:
连接模块,用于连接第一设备和第二设备,所述第一设备和所述第二设备都与接入设备连接;
选取模块,用于在所述第一设备和所述第二设备中选取主设备和从设备;
修改模块,用于对所述从设备链路端口进行第一变更操作,将所述从设备链路端口的MAC地址变更为所述主设备链路端口的所述MAC地址;
所述修改模块,还用于对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,将所述从设备链路端口的本地链路地址变更为与所述从设备链路端口的所述MAC地址对应的本地链路地址;
其中,所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作包括:
对执行所述第二变更操作后的所述从设备链路端口进行down操作,将所述链路端口变为down状态;
对所述变为down状态的所述从设备链路端口进行UP操作,将所述链路端口变为UP状态,以实现所述从设备链路端口的所述本地链路地址的刷新;
所述对执行所述第一变更操作后的所述从设备链路端口进行第二变更操作,还包括:
删除执行所述第二变更操作后的所述从设备链路端口对应的初始本地链路地址;
添加新的本地链路地址至删除所述初始本地链路地址的所述从设备链路端口,以实现所述从设备链路端口的所述本地链路地址的刷新。
6.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行权利要求1-4任一所述方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现权利要求1-4任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210063517.XA CN114095420B (zh) | 2022-01-20 | 2022-01-20 | 链路聚合方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210063517.XA CN114095420B (zh) | 2022-01-20 | 2022-01-20 | 链路聚合方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114095420A CN114095420A (zh) | 2022-02-25 |
CN114095420B true CN114095420B (zh) | 2022-05-31 |
Family
ID=80308886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210063517.XA Active CN114095420B (zh) | 2022-01-20 | 2022-01-20 | 链路聚合方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114095420B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378297A (zh) * | 2013-08-15 | 2015-02-25 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN106487941A (zh) * | 2015-08-31 | 2017-03-08 | 北京华为数字技术有限公司 | 一种配置介质访问控制地址的方法和设备 |
CN107113207A (zh) * | 2015-01-29 | 2017-08-29 | 三菱电机株式会社 | 网络系统、地址管理装置以及地址管理方法 |
CN113852514A (zh) * | 2020-06-28 | 2021-12-28 | 华为技术有限公司 | 服务不中断的数据处理系统、处理设备切换方法、连接设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106936655A (zh) * | 2015-12-30 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 链路检测方法、装置及网络设备、控制器 |
CN111884922B (zh) * | 2020-07-21 | 2022-12-02 | 芯河半导体科技(无锡)有限公司 | 跨设备链路聚合的本地转发方法 |
CN112367254B (zh) * | 2020-10-30 | 2022-08-26 | 新华三技术有限公司 | 跨设备链路聚合方法、装置和电子设备 |
-
2022
- 2022-01-20 CN CN202210063517.XA patent/CN114095420B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378297A (zh) * | 2013-08-15 | 2015-02-25 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN107113207A (zh) * | 2015-01-29 | 2017-08-29 | 三菱电机株式会社 | 网络系统、地址管理装置以及地址管理方法 |
CN106487941A (zh) * | 2015-08-31 | 2017-03-08 | 北京华为数字技术有限公司 | 一种配置介质访问控制地址的方法和设备 |
CN113852514A (zh) * | 2020-06-28 | 2021-12-28 | 华为技术有限公司 | 服务不中断的数据处理系统、处理设备切换方法、连接设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114095420A (zh) | 2022-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7561581B2 (en) | Method of allocating IP address and detecting duplication of IP address in an ad-hoc network environment | |
US7826462B2 (en) | Address assignment apparatus, address assignment method, and computer product | |
CN110417657B (zh) | 一种处理组播数据报文的方法及装置 | |
CN107579900B (zh) | 从vlan网络接入vxlan网络的方法、装置及系统 | |
CN109728962B (zh) | 一种发送报文的方法和设备 | |
EP3675466B1 (en) | Duplicate address detection for range of link local ip addresses | |
KR20040065643A (ko) | IPv6 프로토콜을 위한 IP 주소 및 도메인명자동등록 방법 | |
JP4789425B2 (ja) | 経路テーブル同期方法、ネットワーク機器および経路テーブル同期プログラム | |
CN102984288A (zh) | 一种自动管理IPv6地址冲突的方法及系统 | |
EP4009596A1 (en) | Message forwarding method, device, and system in sr network | |
CN102025552A (zh) | 链路状态通告的备份方法及设备 | |
US11606332B1 (en) | Duplicate address detection for ranges of global IP addresses | |
CN105490884A (zh) | 一种vxlan隧道检测方法及装置 | |
CN105227466A (zh) | 通信处理方法和装置 | |
JP7448597B2 (ja) | メッセージ生成方法および装置ならびにメッセージ処理方法および装置 | |
US20220360526A1 (en) | Routing information publishing method, apparatus, and system | |
CN112995027B (zh) | 路由发布方法及vtep节点 | |
CN113938427A (zh) | 通信方法及系统、路由节点 | |
CN115150327A (zh) | 一种接口设置方法、装置、设备及介质 | |
EP3675465A1 (en) | Faster duplicate address detection for ranges of link local addresses | |
CN114095420B (zh) | 链路聚合方法、装置、电子设备及存储介质 | |
US10050932B2 (en) | Method, user node and remote access server for releasing address | |
CN109873764B (zh) | 建立定向ospf邻居关系的方法、装置、电子设备 | |
JP2009194787A (ja) | ゲートウェイ装置 | |
CN108768845B (zh) | 一种多归属主机路由同步方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |