一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种组播报文控制方法、系统、存储介质及电子设备与流程

2022-12-09 23:34:46 来源:中国专利 TAG:


1.本技术涉及网络通信技术领域,特别涉及一种组播报文控制方法、系统、存储介质及电子设备。


背景技术:

2.随着通信技术的发展,组播技术得到了广泛应用,组播技术是一种单个发送端与多个接收端之间进行网络通信的技术,在发送端和每一接收端之间实现点对多点的网络连接,其中组播报文转发是组播技术中重要的组成部分。
3.在现有组播报文转发方案中,一般采用slow path和fast path方式。slow path:通过软件完成组播报文复制。ingress业务线卡将组播报文送到主引擎,主引擎的cpu进行基于软件的组播报文复制,然后通过交换矩阵转发给各个业务线卡。fast path:通过硬件完成组播报文复制。组播报文进入交换矩阵后,进入业务线卡的队列,交换矩阵芯片复制报文,根据目的地址到达业务线卡出口端的队列,和单播报文一起排队,被调度后通过交换矩阵到达不同的业务线卡。由于交换矩阵基于硬件的组播复制,其生成的组播表项,根据组播目的地址,将组播报文复制到多个业务线卡出口端,但此时组播复制没有流量管理,如果对进入交换矩阵的组播报文不进行控制,可能会导致交换矩阵内部拥塞丢包,继而相应地引起单播报文拥塞丢包。


技术实现要素:

4.本技术实施例提供了一种组播报文控制方法、系统、存储介质及电子设备。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
5.第一方面,本技术实施例提供了一种组播报文控制方法,方法包括:
6.获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确定出待传输组播报文;
7.统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量;
8.根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。
9.可选的,获取组播报文队列中每个组播报文的优先级之前,还包括:
10.在接收到报文数据时,解析报文数据的报文类型;
11.根据报文类型将报文数据进行缓存。
12.可选的,根据报文类型将报文数据进行缓存,包括:
13.当报文类型为单播报文时,将报文数据缓存至单播报文队列;
14.或者,
15.当报文类型为组播报文时,将报文数据缓存至组播报文队列。
16.可选的,获取组播报文队列中每个组播报文的优先级,包括:
17.获取组播报文队列中每个组播报文的缓存时刻;
18.根据缓存时刻与当前时刻的时长确定每个组播报文的优先级;
19.或者,
20.获取组播报文队列中每个组播报文的缓存id;
21.根据缓存id的大小确定每个组播报文的优先级。
22.可选的,统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量,包括:
23.解析待传输组播报文,并从解析后的报文中提取业务线卡出口端信息;
24.根据业务线卡出口端信息确定业务线卡出口端所关联的令牌桶;
25.统计令牌桶中的当前令牌数量。
26.可选的,根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端,包括:
27.若当前令牌数量满足待传输组播报文转发条件时,将待传输组播报文转发至与其对应的业务线卡出口端;
28.或者,
29.若当前令牌数量不满足待传输组播报文转发条件时,启动定时器对预设时段进行倒计时;在计时器倒计时过程中,若当前令牌数量满足待传输组播报文转发条件时,将待传输组播报文转发至与其对应的业务线卡出口端;或者,在计时器倒计时结束时,若当前令牌数量不满足待传输组播报文转发条件时,将待传输组播报文丢弃。
30.可选的,方法还包括:
31.统计组播报文队列中组播报文的字节大小;
32.根据字节大小计算组播报文所占带宽;
33.根据组播报文所占带宽更新令牌桶中的令牌数量。
34.第二方面,本技术实施例提供了一种组播报文控制系统,系统包括:
35.待传输组播报文确定模块,用于获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确定出待传输组播报文;
36.当前令牌数量统计模块,用于统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量;
37.组播报文转发模块,用于根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。
38.第三方面,本技术实施例提供一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行上述的方法步骤。
39.第四方面,本技术实施例提供一种电子设备,可包括:处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行上述的方法步骤。
40.本技术实施例提供的技术方案可以包括以下有益效果:
41.在本技术实施例中,硬件芯片首先获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确定出待传输组播报文,然后统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量,最后根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。由于本技术通过令牌桶算法对组播报文的转发进行出
口端的流量带宽管理,使得交换矩阵在出口端方向不发生网络拥塞,从而降低报文丢失率。
42.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
43.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
44.图1是本技术实施例提供的一种组播报文控制方法的流程示意图;
45.图2是本技术提供的一种组播报文控制过程的流程示意图;
46.图3是本技术提供的一种组播报文控制系统的结构示意图;
47.图4是本技术实施例提供的一种电子设备的结构示意图;
48.图5是本技术实施例提供的一种程序产品示意图。
具体实施方式
49.以下描述和附图充分地示出本技术的具体实施方案,以使本领域的技术人员能够实践它们。
50.应当明确,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
51.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的系统和方法的例子。
52.在本技术的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本技术中的具体含义。此外,在本技术的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
53.本技术提供了一种组播报文控制方法、系统、存储介质及电子设备,以解决上述相关技术问题中存在的问题。本技术提供的技术方案中,由于本技术通过令牌桶算法对组播报文的转发进行出口端的流量带宽管理,使得交换矩阵在出口端方向不发生网络拥塞,从而降低报文丢失率,下面采用示例性的实施例进行详细说明。
54.下面将结合附图1-附图2,对本技术实施例提供的组播报文控制方法进行详细介绍。该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的组播报文控制系统上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
55.请参见图1,为本技术实施例提供了一种组播报文控制方法的流程示意图。
56.如图1所示,本技术实施例的方法可以包括以下步骤:
57.s101,获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确
定出待传输组播报文;
58.通常,本技术中的组播报文控制流程应用在硬件芯片上,硬件芯片可以是fpga芯片。业务线卡在硬件芯片上。
59.在本技术实施例中,在获取组播报文队列中每个组播报文的优先级之前,还需要将接收的报文数据进行缓存,首先在接收到报文数据时,解析报文数据的报文类型,然后根据报文类型将报文数据进行缓存。
60.具体的,在根据报文类型将报文数据进行缓存时,当报文类型为单播报文时,将报文数据缓存至单播报文队列;或者,当报文类型为组播报文时,将报文数据缓存至组播报文队列。
61.在一种可能的实现方式中,硬件芯片在接收到报文时,首先解析该报文,然后根据解析的数据将该报文缓存到目标队列。
62.在本技术实施例中,在获取组播报文队列中每个组播报文的优先级时,首先获取组播报文队列中每个组播报文的缓存时刻,然后根据缓存时刻与当前时刻的时长确定每个组播报文的优先级。
63.进一步地,在确定出优先级后,可根据优先级的高低顺序确定出待传输组播报文。
64.例如,组播报文1的缓存时刻是2022年4月19日11:16:01,组播报文2的缓存时刻是2022年4月20日11:16:29,那么组播报文1的优先级大于组播报文2的优先级,此时将组播报文1确定为待传输组播报文。
65.在本技术实施例中,在获取组播报文队列中每个组播报文的优先级时,首先获取组播报文队列中每个组播报文的缓存id,然后根据缓存id的大小确定每个组播报文的优先级。
66.进一步地,在确定出优先级后,可根据优先级的高低顺序确定出待传输组播报文。
67.例如,组播报文1的缓存id是2,组播报文2的缓存id是1,那么组播报文2的优先级大于组播报文1的优先级,此时将组播报文2确定为待传输组播报文。
68.进一步地,组播报文队列也可以是按照先进先出的规则设置好的队列,例如fifo的原则。
69.s102,统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量;
70.其中,令牌桶是根据令牌桶算法创建的,是网络流量整形(traffic shaping)和速率限制(rate limiting)中最常使用的一种算法。
71.在本技术实施例中,在统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量时,硬件芯片首先解析待传输组播报文,并从解析后的报文中提取业务线卡出口端信息,然后根据业务线卡出口端信息确定业务线卡出口端所关联的令牌桶,最后统计令牌桶中的当前令牌数量。
72.s103,根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。
73.在一种可能的实现方式中,在根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端时,若当前令牌数量满足待传输组播报文转发条件时,将待传输组播报文转发至与其对应的业务线卡出口端。
74.在另一种可能的实现方式中,在根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端时,若当前令牌数量不满足待传输组播报文转发条件时,启动定时器对预设时段进行倒计时;在计时器倒计时过程中,若当前令牌数量满足待传输组播报文转发条件时,将待传输组播报文转发至与其对应的业务线卡出口端;或者,在计时器倒计时结束时,若当前令牌数量不满足待传输组播报文转发条件时,将待传输组播报文丢弃。
75.进一步地,硬件芯片还需要更新令牌桶中的令牌数量,首先统计组播报文队列中组播报文的字节大小,然后根据字节大小计算组播报文所占带宽,最后根据组播报文所占带宽更新令牌桶中的令牌数量。
76.例如图2所示,图2是本技术提供的一种组播报文控制过程的流程示意图,首先硬件芯片收到报文时,先判断时单播还是组播报文,将组播报文和单播报文区分开,各自放到各自独立的报文缓存队列中等待处理。对于单播报文队列,根据单播处理流程。对于组播报文,从组播报文队列中按照先进先出原则提取一个报文作为待发送的组播报文,解析到该报文所携带的业务线卡出口端信息,然后检查该业务线卡端口所关联的令牌桶中的令牌是否足够转发报文。如果有足够的令牌,则转发该组播报文,如果没有,则在预设时刻等待释放获得令牌,在预设时刻没有得到足够令牌后丢弃该报文。
77.在本技术实施例中,硬件芯片首先获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确定出待传输组播报文,然后统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量,最后根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。由于本技术通过令牌桶算法对组播报文的转发进行出口端的流量带宽管理,使得交换矩阵在出口端方向不发生网络拥塞,从而降低报文丢失率。
78.下述为本技术系统实施例,可以用于执行本技术方法实施例。对于本技术系统实施例中未披露的细节,请参照本技术方法实施例。
79.请参见图3,其示出了本发明一个示例性实施例提供的组播报文控制装置的结构示意图。该组播报文控制装置可以通过软件、硬件或者两者的结合实现成为设备的全部或一部分。该装置1包括待传输组播报文确定模块10、当前令牌数量统计模块20、组播报文转发模块30。
80.待传输组播报文确定模块10,用于获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确定出待传输组播报文;
81.当前令牌数量统计模块20,用于统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量;
82.组播报文转发模块30,用于根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。
83.需要说明的是,上述实施例提供的组播报文控制装置在执行组播报文控制方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的组播报文控制装置与组播报文控制方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
84.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
85.在本技术实施例中,硬件芯片首先获取组播报文队列中每个组播报文的优先级,
并基于优先级的高低顺序确定出待传输组播报文,然后统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量,最后根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。由于本技术通过令牌桶算法对组播报文的转发进行出口端的流量带宽管理,使得交换矩阵在出口端方向不发生网络拥塞,从而降低报文丢失率。
86.本技术还提供一种计算机可读介质,其上存储有程序指令,该程序指令被处理器执行时实现上述各个方法实施例提供的组播报文控制方法。
87.本技术还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各个方法实施例的组播报文控制方法。
88.请参见图4,图4为一个实施例中电子设备的内部结构示意图,应用于第一电子设备。如图4所示,该电子设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该电子设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种组播报文控制方法。该电子设备的处理器用于提供计算和控制能力,支撑整个电子设备的运行。该电子设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种组播报文控制方法。该电子设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
89.在一个实施例中,提出了一种电子设备,电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
90.获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确定出待传输组播报文;
91.统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量;
92.根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。
93.在一个实施例中,处理器在执行获取组播报文队列中每个组播报文的优先级之前时,还执行以下步骤:在接收到报文数据时,解析报文数据的报文类型;
94.根据报文类型将报文数据进行缓存。
95.在一个实施例中,处理器在执行根据报文类型将报文数据进行缓存时,具体执行以下步骤:
96.当报文类型为单播报文时,将报文数据缓存至单播报文队列;
97.或者,
98.当报文类型为组播报文时,将报文数据缓存至组播报文队列。
99.在一个实施例中,处理器在执行获取组播报文队列中每个组播报文的优先级时,具体执行以下步骤:
100.获取组播报文队列中每个组播报文的缓存时刻;
101.根据缓存时刻与当前时刻的时长确定每个组播报文的优先级;
102.或者,
103.获取组播报文队列中每个组播报文的缓存id;
104.根据缓存id的大小确定每个组播报文的优先级。
105.在一个实施例中,处理器在执行统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量时,具体执行以下步骤:
106.解析待传输组播报文,并从解析后的报文中提取业务线卡出口端信息;
107.根据业务线卡出口端信息确定业务线卡出口端所关联的令牌桶;
108.统计令牌桶中的当前令牌数量。
109.在一个实施例中,处理器在执行根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端时,具体执行以下步骤:
110.若当前令牌数量满足待传输组播报文转发条件时,将待传输组播报文转发至与其对应的业务线卡出口端;
111.或者,
112.若当前令牌数量不满足待传输组播报文转发条件时,启动定时器对预设时段进行倒计时;在计时器倒计时过程中,若当前令牌数量满足待传输组播报文转发条件时,将待传输组播报文转发至与其对应的业务线卡出口端;或者,在计时器倒计时结束时,若当前令牌数量不满足待传输组播报文转发条件时,将待传输组播报文丢弃。
113.在一个实施例中,处理器还执行以下步骤:
114.统计组播报文队列中组播报文的字节大小;
115.根据字节大小计算组播报文所占带宽;
116.根据组播报文所占带宽更新令牌桶中的令牌数量。
117.在本技术实施例中,硬件芯片首先获取组播报文队列中每个组播报文的优先级,并基于优先级的高低顺序确定出待传输组播报文,然后统计待传输组播报文对应的业务线卡出口端上关联的令牌桶中的当前令牌数量,最后根据当前令牌数量控制待传输组播报文转发至与其对应的业务线卡出口端。由于本技术通过令牌桶算法对组播报文的转发进行出口端的流量带宽管理,使得交换矩阵在出口端方向不发生网络拥塞,从而降低报文丢失率。
118.本技术实施方式还提供一种与前述实施方式所提供的组播报文控制方法对应的计算机可读存储介质,请参考图5,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),计算机程序在被处理器运行时,会执行前述任意实施方式所提供的组播报文控制方法。
119.需要说明的是,计算机可读存储介质的例子还可以包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
120.本技术的上述实施例提供的计算机可读存储介质与本技术实施例提供的组播报文控制方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
121.以上,仅为本技术较佳的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
122.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,组播报文控制的程序可存储于计算机可读取存
储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
123.以上所揭露的仅为本技术较佳实施例而已,当然不能以此来限定本技术之权利范围,因此依本技术权利要求所作的等同变化,仍属本技术所涵盖的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献