System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 报文转发系统、设备及集群技术方案_技高网

报文转发系统、设备及集群技术方案

技术编号:44034358 阅读:15 留言:0更新日期:2025-01-15 01:13
本申请提供了一种报文转发系统、设备及集群。系统包括:主机,包括内核空间以及用户空间,用户空间运行数据平面开发套件及开放虚拟交换机,网卡,包括第一端口、第二端口及第三端口,第一端口和第二端口组成逻辑上的单一的端口,第一端口包括第一队列及第二队列,第一队列和内核空间的第三队列之间存在地址映射关系,第一队列及第三队列用于在网卡和内核空间之间传输链路聚合端口的控制报文,第二队列和数据平面开发套件中的第四队列之间存在地址映射关系,链路聚合端口用于在接收到数据报文之后,通过第二队列将数据报文传输至数据平面开发套件中的第四队列;数据平面开发套件用于在开放虚拟交换机协助下,将数据报文发送给网卡的第三端口。

【技术实现步骤摘要】

本申请涉及计算机领域,尤其涉及一种报文转发系统、设备及集群


技术介绍

1、链路聚合(link aggregation)是指将多个物理端口汇聚在一起,形成一个逻辑端口,即链路聚合端口,以实现出/入流量吞吐量在各成员端口的负荷分担。链路聚合在增加链路带宽、实现链路传输弹性和工程冗余等方面是一项重要的技术。链路聚合的主要目的是提升网络带宽和可靠性。通过将多个物理链路捆绑在一起,形成一个逻辑链路,可以显著增加带宽,理论上最大带宽为成员带宽总和,有效地提升了带宽。此外,链路聚合还通过备份链路的机制提高了链路的可靠性。当一个物理链路发生故障或断开连接时,数据可以自动切换到其他正常工作的链路上,确保网络正常运行。

2、但是,目前链路聚合端口都是内核空间创建的,因此,涉及链路聚合端口的数据报文要通过内核空间进行处理,因此,一次数据报文转发需要经过2次拷贝,而且,这2次拷贝都需要切换用户空间和内核空间,导致性能浪费比较多。


技术实现思路

1、本申请提供了一种报文转发系统、设备及集群,能够绕过内核空间对涉及链路聚合端口的数据报文进行转发,从而避免了性能的浪费。

2、第一方面,提供了一种报文转发系统,包括:

3、主机,包括内核空间以及用户空间,所述用户空间运行有数据平面开发套件以及开放虚拟交换机,

4、网卡,包括第一端口、第二端口以及第三端口,所述第一端口和所述第二端口通过链路聚合组成逻辑上的单一的链路聚合端口,所述第一端口包括第一队列以及第二队列,其中,所述第一队列和所述内核空间的第三队列之间存在地址映射关系,所述第一队列以及所述第三队列用于在所述网卡和所述内核空间之间传输所述链路聚合端口的控制报文,所述第二队列和所述数据平面开发套件中的第四队列之间存在地址映射关系,

5、所述链路聚合端口用于在接收到数据报文之后,通过所述第二队列将所述数据报文传输至所述数据平面开发套件中的第四队列;

6、所述数据平面开发套件用于在所述开放虚拟交换机的协助下,确定所述第三端口为所述数据报文的出端口,将所述数据报文发送给所述网卡的第三端口。

7、上述方案中,关于链路聚合端口的数据报文的转发都是在用户空间进行,可以有效避免内核空间和用户空间的频繁切换,导致资源的浪费。

8、在一些可能的设计中,所述第一端口以及所述第三端口被所述开放虚拟交换机管理,

9、所述内核空间用于确定所述第一端口被所述开放虚拟交换机管理之后,保留所述第一端口的第一队列,并将所述第一端口的第二队列释放给所述开放虚拟交换机管理。

10、在一些可能的设计中,所述第一端口用于在接收到第一数据报文之后,通过所述第二队列将所述数据报文传输至所述数据平面开发套件中的第四队列;或者,

11、所述第二端口用于在接收到第二数据报文之后,通过所述第二队列将所述数据报文传输至所述数据平面开发套件中的第四队列。

12、在一些可能的设计中,所述内核空间用于创建所述链路聚合端口,并将所述链路聚合端口的信息进行保存,其中,所述链路聚合端口的信息包括所述链路聚合端口的成员。

13、在一些可能的设计中,所述数据平面开发套件用于定期从所述内核空间获取所述链路聚合端口的信息。

14、上述方案中,数据平面开发套件定期从内核空间获取链路聚合端口的变化,避免了链路聚合端口的变化导致数据平面开发套件对数据报文的处理出现问题。

15、在一些可能的设计中,所述数据平面开发套件用于根据所述链路聚合端口的信息确定所述第一端口属于所述链路聚合端口,将所述数据报文的扩展头的源端口替换为所述链路聚合端口,并将替换后的数据报文发送给所述开放虚拟交换机。

16、在一些可能的设计中,所述数据平面开发套件用于在所述数据报文为第一地址解析协议报文时,复制所述第一地址解析协议报文得到第二地址解析协议报文,并将所述第二地址解析协议报文保存到所述数据平面开发套件的巨页中。

17、上述方案中,地址解析协议报文的复制发生在数据平面开发套件,数据平面开发套件使用的都是巨页,能够有效减少内存碎片的出现。

18、在一些可能的设计中,所述数据平面开发套件用于将所述数据报文发送给所述开放虚拟交换机;

19、所述开放虚拟交换机用于确定所述数据报文的出端口为所述第三端口,将所述数据报文发送给所述数据平面开发套件;

20、所述数据平面开发套件用于将所述数据报文发送给所述网卡的第三端口。

21、第二方面,提供了一种计算设备,包括报文转发系统以及存储单元,所述报文转发系统以及所述存储单元之间能够进行通信,所述报文转发系统为如第一方面任一项所述的系统。

22、第三方面,提供了一种计算设备集群,包括多个计算设备,至少一个计算设备包括报文转发系统以及存储单元,所述报文转发系统以及所述存储单元之间能够进行通信,所述报文转发系统为如第一方面任一项所述的系统。

本文档来自技高网...

【技术保护点】

1.一种报文转发系统,其特征在于,包括:

2.根据权利要求1所述的系统,其特征在于,所述第一端口以及所述第三端口被所述开放虚拟交换机管理,

3.根据权利要求1所述的系统,其特征在于,

4.根据权利要求1所述的系统,其特征在于,

5.根据权利要求4所述的系统,其特征在于,

6.根据权利要求4所述的系统,其特征在于,

7.根据权利要求1所述的系统,其特征在于,

8.根据权利要求7所述的系统,其特征在于,

9.一种计算设备,其特征在于,包括报文转发系统以及存储单元,所述报文转发系统以及所述存储单元之间能够进行通信,所述报文转发系统为如权利要求1-8任一项所述的系统。

10.一种计算设备集群,其特征在于,包括多个计算设备,至少一个计算设备包括报文转发系统以及存储单元,所述报文转发系统以及所述存储单元之间能够进行通信,所述报文转发系统为如权利要求1-8任一项所述的系统。

【技术特征摘要】

1.一种报文转发系统,其特征在于,包括:

2.根据权利要求1所述的系统,其特征在于,所述第一端口以及所述第三端口被所述开放虚拟交换机管理,

3.根据权利要求1所述的系统,其特征在于,

4.根据权利要求1所述的系统,其特征在于,

5.根据权利要求4所述的系统,其特征在于,

6.根据权利要求4所述的系统,其特征在于,

7.根据权利要求1所述的系统,其特征在于,

<...

【专利技术属性】
技术研发人员:常伟
申请(专利权)人:珠海星云智联科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1