CN107547430B - 一种报文发送方法及装置 - Google Patents
一种报文发送方法及装置 Download PDFInfo
- Publication number
- CN107547430B CN107547430B CN201710764546.8A CN201710764546A CN107547430B CN 107547430 B CN107547430 B CN 107547430B CN 201710764546 A CN201710764546 A CN 201710764546A CN 107547430 B CN107547430 B CN 107547430B
- Authority
- CN
- China
- Prior art keywords
- port
- message
- stacking
- forwarding
- utilization rate
- 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
Images
Classifications
-
- 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
Abstract
本申请实施例提供了一种报文发送方法及装置,该方法应用于堆叠设备中的任一成员设备,转发设备通过聚合口与堆叠设备通信,聚合口的成员端口分别为转发设备与堆叠设备的各个成员设备通信的端口;该方法包括:检测成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;如果大于,则将待转发至堆叠设备中的其他成员设备的报文通过与转发设备通信的端口发送至转发设备;其中,上述报文携带转发标识,该转发标识用于指示转发设备将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送。应用本申请实施例提供的方案,能够降低堆叠设备的堆叠分裂风险。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种报文发送方法及装置。
背景技术
目前,随着网络信息传输量的逐渐加大,网络设备的高效利用成为了搭建网络组网时必不可少的考虑因素。在高效利用网络设备的同时还要加强设备的稳定性,于是堆叠技术应运而生。
堆叠技术是将多台成员设备通过链路组合起来共同工作,以便将多台成员设备虚拟化为一台设备的技术,所虚拟成的一台设备可以称为堆叠设备。图1所示为采用堆叠技术进行组网的一种网络连接形式。在图1中,堆叠设备中包含多个成员设备,多个成员设备之间内部通信所用的端口可以称为堆叠口。转发设备通过聚合口与该堆叠设备通信,图1中的椭圆虚线即为聚合口,该聚合口的成员端口分别为转发设备与各个成员设备通信的端口。
在堆叠设备中,当成员设备之间通过堆叠口发送大量报文时,容易导致堆叠设备产生堆叠分裂风险。
发明内容
本申请实施例的目的在于提供了一种报文发送方法及装置,以降低堆叠设备的堆叠分裂风险。
为了达到上述目的,本申请实施例提供了一种报文发送方法,应用于堆叠设备中的任一成员设备,转发设备通过聚合口与所述堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述方法包括:
检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
如果大于,则将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
为了达到上述目的,本申请实施例还提供了另一种报文发送方法,应用于转发设备,所述转发设备通过聚合口与堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述方法包括:
通过所述聚合口的成员端口接收所述成员设备发送的报文;
若所述报文携带转发标识,则将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
为了达到上述目的,本申请实施例提供了一种报文发送装置,应用于堆叠设备中的任一成员设备,转发设备通过聚合口与所述堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述装置包括:
检测模块,用于检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
第一发送模块,用于当检测到所述成员设备的堆叠口的资源利用率大于预设的利用率阈值时,将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
为了达到上述目的,本申请实施例还提供了一种报文发送装置,应用于转发设备,所述转发设备通过聚合口与堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述装置包括:
接收模块,用于通过所述聚合口的成员端口接收所述成员设备发送的报文;
第二发送模块,用于若所述报文携带转发标识,则将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
本申请实施例提供了一种堆叠设备中的成员设备,其中,转发设备通过聚合口与所述堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;成员设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现本申请实施例提供的报文发送方法。该报文发送方法包括:
检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
如果大于,则将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
本申请实施例提供了一种转发设备,所述转发设备通过聚合口与堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;转发设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现本申请实施例提供的另一种报文发送方法。该报文发送方法包括:
通过所述聚合口的成员端口接收所述成员设备发送的报文;
若所述报文携带转发标识,则将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本申请实施例提供的报文发送方法。该报文发送方法包括:
检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
如果大于,则将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本申请实施例提供的另一种报文发送方法。该报文发送方法包括:
通过所述聚合口的成员端口接收所述成员设备发送的报文;
若所述报文携带转发标识,则将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
本申请实施例提供的报文发送方法及装置,在堆叠设备中的成员设备检测到堆叠口的资源利用率大于利用率阈值时,可以将待转发至堆叠设备中的其他成员设备的报文,通过与转发设备通信的端口发送至转发设备,其中,该报文携带转发标识,该转发标识用于指示转发设备将上述报文通过聚合口的除接收该报文的成员端口之外的其他成员端口进行发送。当转发设备接收到该报文后,可以根据报文中携带的转发标识将该报文通过其他成员端口发送至其他成员设备。也就是说,本申请实施例可以在检测到堆叠口存在堆叠分裂风险时,将待转发至其他成员设备且携带转发标识的报文发送至转发设备,通过转发设备将该报文发送至其他成员设备,无需通过成员设备的堆叠口发送至其他成员设备,从而缓解了大量报文对堆叠口的冲击压力,因此能够降低堆叠设备的堆叠分裂风险。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为采用堆叠技术进行组网的一种网络连接形式示意图;
图2为本申请实施例提供的一种报文发送方法的流程示意图;
图2a为本申请实施例中报文的一种流向示意图;
图3为本申请实施例提供的另一种报文发送方法的流程示意图;
图4为本申请实施例提供的一种报文发送装置的结构示意图;
图5为本申请实施例提供的另一种报文发送装置的结构示意图;
图6为本申请实施例提供的堆叠设备中的成员设备的一种结构示意图;
图7为本申请实施例提供的转发设备的一种结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在堆叠设备中,成员设备之间可以通过堆叠口相互发送报文。成员设备之间通过堆叠口相互发送的报文可以包括透传报文、热备报文和握手报文等。如图1所示,转发设备可以将报文从聚合口的成员端口发送至堆叠设备中的成员设备,实现负载分担。堆叠设备中的成员设备在接收到报文之后,当判断出该报文为待发送至其他成员设备的报文时,例如该报文为其他成员设备处理的报文的反馈报文,或者,该报文的目的终端为其他成员设备连接的主机设备,这时会将该报文透传至其他成员设备,这样的报文属于透传报文。同时,堆叠设备的成员设备还需要向其他成员设备发送大量携带自身信息的报文,这些信息包括会话信息、隧道扩展信息等,以相互备份自身信息,这类报文属于热备报文。
当业务繁忙时,成员设备之间会存在大量透传报文和热备报文。这些报文都会对成员设备的堆叠口产生很大的冲击压力,容易导致堆叠设备产生堆叠分裂风险。
为了降低堆叠设备的堆叠分裂风险,本申请实施例提供了一种报文发送方法及装置。下面通过具体实施例,对本申请进行详细说明。
图2为本申请实施例提供的一种报文发送方法的流程示意图。该方法应用于堆叠设备中的任一成员设备,转发设备通过聚合口与堆叠设备通信,聚合口的成员端口分别为转发设备与堆叠设备的各个成员设备通信的端口。在实际应用中,成员设备或转发设备均可以为路由器、交换机等网络设备。
参见图1,该图可以作为本实施例的一种应用场景示意图。在该图中,堆叠设备中的成员设备可以为两个或两个以上,与堆叠设备的成员设备相连的转发设备也可以为两个或两个以上,本申请对具体的组网形式不做限定。该图中任一成员设备均包括与其他成员设备通信的端口(以下将该端口称为堆叠口)和与转发设备通信的端口。转发设备通过自身聚合口的成员端口与各个成员设备通信。
在实际应用中,成员设备中的堆叠口可以由千兆以太网(Gigabit Ethernet,GE)接口(简称GE口)实现,与转发设备通信的端口可以由40GE口(即40G速率的以太网接口)实现。堆叠口的报文收发能力远远小于与转发设备通信的端口的报文收发能力。
本实施例中,该报文发送方法包括如下步骤S201~步骤S202:
步骤S201:检测成员设备的堆叠口的资源利用率是否大于预设的利用率阈值,如果大于,则执行步骤S202。
当检测到成员设备的堆叠口的资源利用率不大于利用率阈值时,仍然可以将待转发至堆叠设备中的其他成员设备的报文从堆叠口发送至其他成员设备。这时不会产生堆叠分裂风险。
当堆叠口的资源利用率已大于利用率阈值时,认为该堆叠口的流量压力较大,存在堆叠分裂风险,为了避免出现堆叠分裂,可以执行步骤S202。当堆叠口的资源利用率不大于利用率阈值时,认为该堆叠口的流量压力较小,不存在堆叠分裂风险,可以将上述报文从堆叠口直接发送至其他成员设备。
步骤S202:将待转发至堆叠设备中的其他成员设备的报文通过与转发设备通信的端口发送至转发设备。
其中,上述报文携带转发标识,该转发标识用于指示转发设备将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送。
为了描述更清楚,在没有特殊说明的情况下,本实施例中所提及的报文均指代上述待转发至堆叠设备中的其他成员设备的报文。
转发设备接收到成员设备发送的报文后,可以在检测到报文携带有转发标识时,将该报文通过聚合口的除接收该报文的成员端口之外的其他成员端口发送至其他成员设备。
作为一个场景示例,图2a为应用本实施例提供方案发送报文的报文流向示意图。在图2a中,堆叠设备的成员设备1包括与成员设备2通信的堆叠口,和与转发设备2通信的端口;转发设备2通过聚合口与堆叠设备通信,并且,通过聚合口的成员端口1与成员设备1通信,通过聚合口的成员端口2与成员设备2通信。成员设备1将待转发至成员设备2的报文发送至转发设备2,转发设备2通过聚合口的成员端口1接收该报文,若该报文中携带转发标识,则转发设备2可以将该报文通过聚合口的成员端口2将该报文发送至成员设备2。
由上述内容可见,在堆叠设备中的成员设备检测到堆叠口的资源利用率大于利用率阈值时,本实施例可以将待转发至堆叠设备中的其他成员设备的报文从与转发设备通信的端口发送至转发设备。该转发标识用于指示转发设备将该报文通过聚合口的除接收该报文的成员端口之外的其他成员端口进行发送。当转发设备接收到该报文后,若检测到该报文携带转发标识,则通过聚合口的除接收该报文的成员端口之外的其他成员端口将该报文发送至其他成员设备。也就是说,本实施例可以在检测到堆叠口存在堆叠分裂风险时,将待转发至其他成员设备且携带转发标识的报文发送至转发设备,通过转发设备将该报文发送至其他成员设备,无需通过成员设备的堆叠口发送至其他成员设备,从而缓解了大量报文对堆叠口的冲击压力,因此能够降低堆叠设备的堆叠分裂风险。
为了提高处理效率,在本申请的另一实施例中,图2中的报文可以为指定协议类型的报文。例如,上述报文可以为FFFE协议类型的报文,或FFFD协议类型的报文。
在实际应用中,成员设备通过堆叠口转发至其他成员设备的报文可以包括多种类型的报文,例如透传报文、热备报文等。透传报文可以采用FFFD协议类型的报文实现,热备报文可以采用FFFE协议类型的实现。
透传报文,可以理解为待发送至其他成员设备的业务报文。例如,当堆叠设备中的各个成员设备均可以处理报文业务时,成员设备在接收到转发设备发送的报文之后,若确定该报文为其他成员设备所建立会话中的反馈报文,则该报文为待发送至其他成员设备的业务报文。热备报文,可以理解为用于发送成员设备中的会话信息、关联信息、隧道扩展信息等信息的报文。
可见,在本实施例中,当检测到成员设备的堆叠口的资源利用率大于预设的利用率阈值时,可以将待转发至堆叠设备中的其他成员设备的报文中的指定协议类型的报文通过转发设备发送至其他成员设备,避免出现成员设备的堆叠口空闲、与转发设备通信的端口的报文数量过大的情况,提高了处理效率。
在本申请的一种实施例中,上述转发标识可以直接采用上述报文中携带的指定协议类型作为转发标识,例如,转发标识可以包括FFFE和FFFD等。这样处理更加简便,能够提高处理效率。
上述转发标识也可以为在将上述报文通过与转发设备通信的端口发送至转发设备之前添加至上述报文中的标识。具体的,成员设备可以在将上述报文通过与转发设备通信的端口发送至转发设备之前,将转发标识添加至上述报文中,将添加转发标识后的报文通过与转发设备通信的端口发送至转发设备。这样可以使转发设备更准确地确定哪些报文可以发送至成员设备,提高转发的准确率。
成员设备自身可以包括多个与转发设备通信的端口,这些端口的资源利用率可能不同,为了提高报文的发送效率,可以从与转发设备通信的多个端口中选择资源利用率不高的端口。具体的实施方式可以参见如下实施例。
在本申请的另一实施例中,图2中的步骤S202,即将待转发至堆叠设备中的其他成员设备的报文通过与转发设备通信的端口发送至转发设备,具体可以包括以下步骤1和步骤2:
步骤1:从与转发设备通信的端口中确定资源利用率不大于预设的利用率阈值的目标端口。
在本实施例中,成员设备可以检测与转发设备通信的各个端口的资源利用率是否大于预设的利用率阈值,如果不大于,则认为该端口的流量压力较小,可以用作发送上述报文。
当与转发设备通信的端口中存在至少两个资源利用率不大于上述利用率阈值的端口时,可以将资源利用率最低的端口作为目标端口。
步骤2:将待转发至堆叠设备中的其他成员设备的报文从目标端口发送至转发设备。
作为一个例子,在图2a中,成员设备1包括与转发设备1通信的40GE1口和与转发设备2通信的40GE2口。该成员设备1可以实时监测各个端口的资源利用率,若当前时刻40GE1口的资源利用率不大于预设的利用率阈值,40GE2口的资源利用率大于预设的利用率阈值,则将该40GE1口作为目标端口,将上述待转发至堆叠设备中的其他成员设备的报文发送至转发设备1,以使转发设备1将该报文发送至成员设备2。若当前时刻40GE2口的资源利用率不大于预设的利用率阈值,40GE1口的资源利用率大于预设的利用率阈值,则将该40GE2口作为目标端口,将上述报文通过转发设备2发送至成员设备2。
在实际应用中,一个成员设备与一个转发设备通信的端口可以有多个。在确定目标端口时,不同时刻确定的目标端口可以为与同一个转发设备通信的不同端口,也可以为与不同转发设备通信的端口。
可见,在本实施例中,成员设备可以从与转发设备通信的各个端口中选择资源利用率不大于利用率阈值的目标端口,将上述报文从该目标端口发送至转发设备,这样能够避免采用流量过大的端口发送该报文,减少丢包风险。
在本申请的另一实施例中,图2中的步骤S201,即检测成员设备的堆叠口的资源利用率是否大于预设的利用率阈值时,具体可以采用以下两种实施方式:
一种是,获取第一时段通过堆叠口收发报文的第一数量,获取第一时段的上一时段通过堆叠口收发报文的第二数量,根据第一数量和第二数量,确定报文收发量的增长率,判断该增长率是否大于预设增长率阈值,如果是,则判定成员设备的堆叠口的资源利用率已大于预设的利用率阈值。
获取第一时段通过堆叠口收发报文的第一数量时,具体可以通过读取堆叠口的寄存器中收发报文的数量来获得该第一数量。更具体的,成员设备可以通过启动预设时长的定时器来周期性地读取寄存器中收发报文的数量。
其中,收发报文的数量可以理解为收到的报文和发送的报文数量的和值。例如,在第一时段通过堆叠口收到的报文个数为10015639,在第一时段通过堆叠口发出的报文个数为13258911,则在第一时段通过堆叠口收发报文的第一数量为10015639+13258911。
本步骤中,收发报文可以包括所有通过该堆叠口的报文。
在实际应用中,第一时段与上一时段之间的时间间隔可以为上述预设时长,例如为100ms等值。在根据第一数量和第二数量,确定报文收发量的增长率时,可以将第一数量减去第二数量所得到的差值再除以预设时长,获得报文收发量的增长率。
在本实施方式中,如果一段时间内堆叠口收发报文量的增长率大于预设增长率阈值,则判定成员设备的堆叠口的资源利用率已大于预设的利用率阈值,这样可以更准确地确定堆叠口的资源利用率情况。
另一种是,获取第一时段通过堆叠口收发报文的第一数量,判断第一数量是否大于预设数量阈值,如果是,则判定成员设备的堆叠口的资源利用率已大于预设的利用率阈值。
其中,预设数量阈值可以为根据实际情况统计得到的数值。本实施方式提供的方案也能够实现对堆叠口资源利用率的监测。
可见,本实施例可以根据通过堆叠口收发报文的数量判断该堆叠口的资源利用率是否大于预设的利用率阈值,能够实时监测堆叠口的流量情况,从而更准确地确定堆叠口的资源利用率。
在本申请的另一实施例中,在检测与转发设备通信的各个端口的资源利用率是否大于预设的利用率阈值时,也可以采用上述实施例中的方式,具体过程不再赘述。
图3所示为本申请实施例提供的另一种报文发送方法的流程示意图。该方法应用于转发设备,转发设备通过聚合口与堆叠设备通信,聚合口的成员端口分别为转发设备与堆叠设备的各个成员设备通信的端口。该方法包括以下步骤S301~步骤S302:
步骤S301:通过聚合口的成员端口接收成员设备发送的报文。
其中,该报文为待转发至堆叠设备中的其他成员设备的报文。该报文为:成员设备在检测到成员设备的堆叠口的资源利用率已大于预设的利用率阈值时发送的。
步骤S302:若上述报文携带转发标识,则将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送,以使该报文到达其他成员设备。也就是说,将上述报文通过聚合口的其他成员端口发送至其他成员设备。
若上述报文不携带转发标识,则可以不予以处理,或者将该报文丢弃,以避免形成环路报文。
其中,上述转发标识用于指示转发设备将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送。
在实际应用中,转发设备在接收到上述报文时,可以检测上述报文是否携带转发标识,如果携带,则将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送;如果不携带,则直接丢弃。
由上述内容可见,本实施例可以通过聚合口的成员端口接收成员设备发送的报文,在检测到报文携带转发标识时将报文通过聚合口的其他成员端口发送至其他成员设备。在堆叠口资源利用率大于利用率阈值时,成员设备通过转发设备将上述报文发送至其他成员设备,无需通过成员设备自身的堆叠口,因此能够缓解大量报文对堆叠口的冲击压力,避免堆叠设备的堆叠分裂风险。
为了能够实现在聚合口的成员端口上进行报文的转发标识检测,转发设备可以预先在聚合口的成员端口上配置入接口和出接口,对匹配上的报文进行转发标识检测。其中,出接口与各个其他成员设备对应。这样,能够更高效地筛选出待进行转发标识检测的报文,提高报文处理效率。
作为一种实施方式,上述转发标识可以为成员设备添加至上述报文中的,也就是成员设备在将上述报文通过与转发设备通信的端口发送至转发设备之前添加至报文中的,也可以为上述报文携带的指定协议类型。
在本申请的另一实施例中,在图3实施例的基础上,检测报文是否携带转发标识时,具体可以为,检测报文携带的协议类型是否为指定协议类型,如果是,则确定报文携带转发标识。在检测报文携带的协议类型时,可以从存储报文的内存缓冲区(MBFF)中获取协议类型。
例如,指定协议类型可以包括FFFE和FFFD等,当检测出报文携带的报文协议类型为FFFE或FFFD后,则认为匹配成功,确定该报文携带转发标识。
在本实施例中,可以将上述指定协议类型以表项的形式存储在转发设备中。该表项可以增加、删除、修改、查找,并且可以支持多种协议类型。这样能够提高表项的可维护性和维护的便利性。
在将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送时,具体可以为,从保存的入端口与出端口之间的对应关系中,确定与上述入端口对应的出端口,作为其他成员端口,将上述报文通过所确定的其他成员端口进行发送。其中,上述入端口为接收上述报文的成员端口。
在本实施例中,可以预先配置入端口与出端口之间的对应关系。这样,可以更准确地将报文发送至目的终端。
在实际应用中,转发设备可以至少接收到三类报文,第一类是由成员设备发送的、目的终端不为与堆叠设备相连的主机的报文。当转发设备接收到该类报文时,可以按照现有的报文处理流程处理。第二类是,通过聚合口的成员端口接收的、出接口为聚合口的其他成员端口的不携带转发标识的报文。当转发设备接收到该类报文时,可以直接丢弃或不做处理,以避免形成环路。第三类时,通过聚合口的成员端口接收的、出接口为聚合口的其他成员端口的携带转发标识的报文。当转发设备接收到该类报文时,可以将该报文通过其他成员端口发送至堆叠设备中的其他成员设备。本实施例中的报文即为上述第三类报文。
可见,本实施例可以在上述报文携带转发标识时,取消聚合口的其他成员端口上添加的掩码阻断,将上述报文通过其他成员端口进行发送,避免出现报文环路问题,又能实现对上述报文的发送,从而提高了报文处理的可靠性。
图4为本申请实施例提供的一种报文发送装置的结构示意图。该装置应用于堆叠设备中的任一成员设备,转发设备通过聚合口与所述堆叠设备通信,聚合口的成员端口分别为转发设备与所述堆叠设备的各个成员设备通信的端口。
该装置实施例与图2所示方法实施例相对应。该装置包括:
检测模块401,用于检测成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
第一发送模块402,用于当检测到所述成员设备的堆叠口的资源利用率大于预设的利用率阈值时,将待转发至堆叠设备中的其他成员设备的报文通过与转发设备通信的端口发送至转发设备;
其中,报文携带转发标识,转发标识用于指示转发设备将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送。
在本申请的另一实施例中,图4所示实施例中,上述报文为指定协议类型的报文。
在本申请的另一实施例中,图4所示实施例中,该装置还可以包括:
添加模块(图中未示出),用于在将上述报文通过与所述转发设备通信的端口发送至转发设备之前,将转发标识添加至所述报文中。
在本申请的另一实施例中,图4所示实施例中,转发标识可以为上述报文中携带的指定协议类型。
在本申请的另一实施例中,图4中的第一发送模块402可以用于:
当检测到成员设备的堆叠口的资源利用率不大于预设的利用率阈值时,将报文从堆叠口发送至其他成员设备。
在本申请的另一实施例中,图4中的检测模块401,具体可以用于:
获取第一时段通过所述堆叠口收发报文的第一数量,获取所述第一时段的上一时刻通过所述堆叠口收发报文的第二数量,根据所述第一数量和第二数量,确定报文收发量的增长率,判断所述增长率是否大于预设增长率阈值,如果是,则判定所述成员设备的堆叠口的资源利用率已大于预设的利用率阈值;或者,
检测模块401,具体可以用于:
获取第一时段通过所述堆叠口收发报文的第一数量,判断所述第一数量是否大于预设数量阈值,如果是,则判定所述成员设备的堆叠口的资源利用率已大于预设的利用率阈值。
图5为本申请实施例提供的另一种报文发送装置。该装置应用于转发设备,转发设备通过聚合口与堆叠设备通信,聚合口的成员端口分别为转发设备与堆叠设备的各个成员设备通信的端口。该装置包括:
接收模块501,用于通过所述聚合口的成员端口接收成员设备发送的报文,;
第二发送模块502,用于若上述报文携带转发标识,则将上述报文通过聚合口的除接收上述报文的成员端口之外的其他成员端口进行发送。
在本申请的另一实施例中,图5所示实施例中,转发标识为成员设备添加至上述报文中的;或者,转发标识为上述报文携带的指定协议类型。
由于上述装置实施例是基于方法实施例得到的,与该方法具有相同的技术效果,因此装置实施例的技术效果在此不再赘述。对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
图6为本申请实施例提供的堆叠设备中的成员设备的一种结构示意图。转发设备通过聚合口与所述堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口。该成员设备包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信;
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现本申请实施例提供的报文发送方法。该报文发送方法包括:
检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
如果大于,则将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
由上述内容可知,本实施例可以在检测到堆叠口存在堆叠分裂风险时,将待转发至其他成员设备且携带转发标识的报文发送至转发设备,通过转发设备将该报文发送至其他成员设备,无需通过成员设备的堆叠口发送至其他成员设备,从而缓解了大量报文对堆叠口的冲击压力,因此能够降低堆叠设备的堆叠分裂风险。
图7为本申请实施例提供的转发设备的一种结构示意图。转发设备通过聚合口与堆叠设备通信,聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口。该转发设备包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信;
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现本申请实施例提供的报文发送方法。该报文发送方法包括:
通过所述聚合口的成员端口接收所述成员设备发送的报文;
若所述报文携带转发标识,则将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
由上述内容可见,本实施例可以通过聚合口的成员端口接收成员设备发送的报文,在检测到报文携带转发标识时将报文通过聚合口的其他成员端口发送至其他成员设备。在堆叠口资源利用率大于利用率阈值时,成员设备通过转发设备将上述报文发送至其他成员设备,无需通过成员设备自身的堆叠口,因此能够缓解大量报文对堆叠口的冲击压力,避免堆叠设备的堆叠分裂风险。
上述成员设备或转发设备提到的通信总线可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended IndustryStandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述成员设备或转发设备与其他设备之间的通信。
存储器可以包括随机存取存储器(RandomAccess Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时实现本申请实施例提供的应用于成员设备的报文发送方法。该报文发送方法包括:
检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
如果大于,则将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
由上述内容可知,本实施例可以在检测到堆叠口存在堆叠分裂风险时,将待转发至其他成员设备且携带转发标识的报文发送至转发设备,通过转发设备将该报文发送至其他成员设备,无需通过成员设备的堆叠口发送至其他成员设备,从而缓解了大量报文对堆叠口的冲击压力,因此能够降低堆叠设备的堆叠分裂风险。
本申请实施例还提供另一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时实现本申请实施例提供的报文发送方法。该报文发送方法包括:
通过所述聚合口的成员端口接收所述成员设备发送的报文;
若所述报文携带转发标识,则将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
由上述内容可见,本实施例可以通过聚合口的成员端口接收成员设备发送的报文,在检测到报文携带转发标识时将报文通过聚合口的其他成员端口发送至其他成员设备。在堆叠口资源利用率大于利用率阈值时,成员设备通过转发设备将上述报文发送至其他成员设备,无需通过成员设备自身的堆叠口,因此能够缓解大量报文对堆叠口的冲击压力,避免堆叠设备的堆叠分裂风险。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (16)
1.一种报文发送方法,其特征在于,应用于堆叠设备中的任一成员设备,转发设备通过聚合口与所述堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述方法包括:
检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
如果大于,则将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送;
所述将待转发至所述堆叠设备中的其他成员设备的报文通过与所述转发设备通信的端口发送至所述转发设备,包括:
从与所述转发设备通信的端口中确定资源利用率不大于预设的利用率阈值的目标端口;
将所述待转发至所述堆叠设备中的其他成员设备的报文从所述目标端口发送至所述转发设备。
2.根据权利要求1所述的方法,其特征在于,所述报文为指定协议类型的报文。
3.根据权利要求1所述的方法,其特征在于,在将所述报文通过与所述转发设备通信的端口发送至所述转发设备之前,所述方法还包括:
将所述转发标识添加至所述报文中。
4.根据权利要求2所述的方法,其特征在于,所述转发标识为所述报文中携带的指定协议类型。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到所述成员设备的堆叠口的资源利用率不大于预设的利用率阈值时,将所述报文从所述堆叠口发送至所述其他成员设备。
6.根据权利要求1~5任一项所述的方法,其特征在于,所述检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值的步骤,为:
获取第一时段通过所述堆叠口收发报文的第一数量,获取所述第一时段的上一时段通过所述堆叠口收发报文的第二数量,根据所述第一数量和第二数量,确定报文收发量的增长率,判断所述增长率是否大于预设增长率阈值,如果是,则判定所述成员设备的堆叠口的资源利用率已大于预设的利用率阈值;或者,
获取第一时段通过所述堆叠口收发报文的第一数量,判断所述第一数量是否大于预设数量阈值,如果是,则判定所述成员设备的堆叠口的资源利用率已大于预设的利用率阈值。
7.一种报文发送方法,其特征在于,应用于转发设备,所述转发设备通过聚合口与堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述成员设备从与所述转发设备通信的端口中确定资源利用率不大于预设的利用率阈值的目标端口;将待转发至所述堆叠设备中的其他成员设备的报文从所述目标端口发送至所述转发设备;所述方法包括:
通过所述聚合口的成员端口接收所述成员设备发送的报文;
若所述报文携带转发标识,则将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
8.根据权利要求7所述的方法,其特征在于,所述转发标识为所述成员设备添加至所述报文中的;或者,
所述转发标识为所述报文携带的指定协议类型。
9.一种报文发送装置,其特征在于,应用于堆叠设备中的任一成员设备,转发设备通过聚合口与所述堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述装置包括:
检测模块,用于检测所述成员设备的堆叠口的资源利用率是否大于预设的利用率阈值;
第一发送模块,用于当检测到所述成员设备的堆叠口的资源利用率大于预设的利用率阈值时,从与所述转发设备通信的端口中确定资源利用率不大于预设的利用率阈值的目标端口;将待转发至所述堆叠设备中的其他成员设备的报文从所述目标端口发送至所述转发设备;
其中,所述报文携带转发标识,所述转发标识用于指示所述转发设备将所述报文通过所述聚合口的除接收所述报文的成员端口之外的其他成员端口进行发送。
10.根据权利要求9所述的装置,其特征在于,所述报文为指定协议类型的报文。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
添加模块,用于在将所述报文通过与所述转发设备通信的端口发送至所述转发设备之前,将所述转发标识添加至所述报文中。
12.根据权利要求10所述的装置,其特征在于,所述转发标识为所述报文中携带的指定协议类型。
13.根据权利要求9所述的装置,其特征在于,所述第一发送模块,还用于:
当检测到所述成员设备的堆叠口的资源利用率不大于预设的利用率阈值时,将所述报文从所述堆叠口发送至所述其他成员设备。
14.根据权利要求9~13任一项所述的装置,其特征在于,所述检测模块,具体用于:
获取第一时段通过所述堆叠口收发报文的第一数量,获取所述第一时段的上一时刻通过所述堆叠口收发报文的第二数量,根据所述第一数量和第二数量,确定报文收发量的增长率,判断所述增长率是否大于预设增长率阈值,如果是,则判定所述成员设备的堆叠口的资源利用率已大于预设的利用率阈值;或者,
所述检测模块,具体用于:
获取第一时段通过所述堆叠口收发报文的第一数量,判断所述第一数量是否大于预设数量阈值,如果是,则判定所述成员设备的堆叠口的资源利用率已大于预设的利用率阈值。
15.一种堆叠设备中的成员设备,其特征在于,转发设备通过聚合口与所述堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述成员设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1~6任一所述报文发送方法。
16.一种转发设备,其特征在于,所述转发设备通过聚合口与堆叠设备通信,所述聚合口的成员端口分别为所述转发设备与所述堆叠设备的各个成员设备通信的端口;所述转发设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求7~8任一所述的报文发送方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710764546.8A CN107547430B (zh) | 2017-08-30 | 2017-08-30 | 一种报文发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710764546.8A CN107547430B (zh) | 2017-08-30 | 2017-08-30 | 一种报文发送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107547430A CN107547430A (zh) | 2018-01-05 |
CN107547430B true CN107547430B (zh) | 2022-05-24 |
Family
ID=60959190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710764546.8A Active CN107547430B (zh) | 2017-08-30 | 2017-08-30 | 一种报文发送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107547430B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110391979B (zh) * | 2018-04-23 | 2021-01-15 | 华为技术有限公司 | 一种网络设备堆叠方法、网络设备及存储介质 |
CN109104376B (zh) * | 2018-07-16 | 2022-04-08 | 新华三技术有限公司 | 一种数据的转发方法、装置、堆叠设备和计算机可读介质 |
CN109462515A (zh) * | 2018-09-11 | 2019-03-12 | 锐捷网络股份有限公司 | 环路处理方法、网络设备、mlag组网及存储介质 |
CN110098967B (zh) * | 2019-05-14 | 2022-08-12 | 浙江国利网安科技有限公司 | 一种通信方法、装置、设备及介质 |
CN114157684B (zh) * | 2020-08-18 | 2024-01-02 | 华为终端有限公司 | 一种报文处理的方法、设备以及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101977153A (zh) * | 2010-11-15 | 2011-02-16 | 杭州华三通信技术有限公司 | 一种流量调节方法和设备 |
CN102724030A (zh) * | 2012-06-29 | 2012-10-10 | 杭州迪普科技有限公司 | 一种高可靠性的堆叠系统 |
CN103780480A (zh) * | 2012-10-17 | 2014-05-07 | 杭州华三通信技术有限公司 | 报文转发方法和设备 |
CN103916319A (zh) * | 2013-01-06 | 2014-07-09 | 杭州华三通信技术有限公司 | Lacp堆叠组网中的链路选择方法和堆叠设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8422504B2 (en) * | 2010-06-28 | 2013-04-16 | Avaya Inc. | Network switch port aggregation |
CN103780496B (zh) * | 2012-10-17 | 2017-07-14 | 新华三技术有限公司 | 应用于星型堆叠系统中的报文转发方法和设备 |
CN103795570B (zh) * | 2014-01-23 | 2018-05-08 | 新华三技术有限公司 | 环形拓扑的堆叠交换机系统的单播报文恢复方法及装置 |
-
2017
- 2017-08-30 CN CN201710764546.8A patent/CN107547430B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101977153A (zh) * | 2010-11-15 | 2011-02-16 | 杭州华三通信技术有限公司 | 一种流量调节方法和设备 |
CN102724030A (zh) * | 2012-06-29 | 2012-10-10 | 杭州迪普科技有限公司 | 一种高可靠性的堆叠系统 |
CN103780480A (zh) * | 2012-10-17 | 2014-05-07 | 杭州华三通信技术有限公司 | 报文转发方法和设备 |
CN103916319A (zh) * | 2013-01-06 | 2014-07-09 | 杭州华三通信技术有限公司 | Lacp堆叠组网中的链路选择方法和堆叠设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107547430A (zh) | 2018-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107547430B (zh) | 一种报文发送方法及装置 | |
JP5233504B2 (ja) | 経路制御装置およびパケット廃棄方法 | |
US11032205B2 (en) | Flow control method and switching device | |
CN106817264B (zh) | 一种链路故障检测的方法、装置和系统 | |
US10346326B2 (en) | Adaptive interrupt moderation | |
JP5673805B2 (ja) | ネットワーク装置、通信システム、異常トラヒックの検出方法およびプログラム | |
CN107196820B (zh) | 一种交换机性能测试方法、装置及系统 | |
WO2021196616A1 (zh) | 一种消息上报方法及装置、设备及存储介质 | |
US11233694B2 (en) | Method and device for processing communication path | |
US10944667B2 (en) | Loop check packets | |
CN102739462B (zh) | 一种测试报文的发送方法以及装置 | |
RU2510142C2 (ru) | Способ и система для передачи сообщения между дополнительным процессором и переключающей схемой | |
CN109347810B (zh) | 一种处理报文的方法和装置 | |
US9537764B2 (en) | Communication apparatus, control apparatus, communication system, communication method, method for controlling communication apparatus, and program | |
JP6376609B2 (ja) | アクセス制御装置および認証制御方法 | |
WO2020155941A1 (zh) | 一种报文调度方法、相关设备及计算机存储介质 | |
CN108243117B (zh) | 一种流量监控方法、装置及电子设备 | |
EP4113944A1 (en) | Detection of network measurement inaccuracies | |
US10129147B2 (en) | Network-on-chip flit transmission method and apparatus | |
US20180063781A1 (en) | Data Packet Processing Method and Related Device | |
CN108322402B (zh) | 报文处理方法、设备及系统 | |
CN110166359B (zh) | 一种报文转发方法及装置 | |
CN106992878B (zh) | 一种组播检测的方法及装置 | |
WO2018209915A1 (zh) | 一种分布式设备中大规模oam检测系统及方法 | |
KR101707073B1 (ko) | Sdn 기반의 에러 탐색 네트워크 시스템 |
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 |