一种报文传输方法以及通信装置与流程

阅读: 评论:0



1.本技术实施例涉及通信领域,尤其涉及一种报文传输方法以及通信装置。


背景技术:



2.随着数据规模急剧增大,应用性能对处理系统的算力需求指数型扩大,高性能计算(high performance computing,hpc)机应用需求剧增。hpc互联网络中采用以太和无限带宽技术(infiniband,ib)网络集占比78%,远超其他互联网络。远程直接内存访问(remote direct memory access,rdma)技术最早出现在ib网络,ib因其高性能低时延自诞生以来一直是超算互联的首选,但基于以太的远程直接访问(rdma over converged ethernet version2,rocev2)网络出现后,因其完全兼容以太互联网协议(internet protocol,ip)网络并且支持rdma协议而被越来越多的超算互联采用。
3.以太网络ip报文通过网关设备采用运行在ib上的互联网协议(internet protocol over infiniband,ipoib)技术实现以太ip报文在ib网络上传输。
4.但是,由于以太网络ip报文通过隧道技术直接封装在ib报文传输,报文仍然经过内核拷贝和软件协议栈,无法实现ib网络的远程直接访问效果,影响传输效率。


技术实现要素:



5.本技术实施例提供了一种报文传输方法以及通信装置,用于提高报文传输速率。
6.本技术实施例第一方面提供了一种报文传输方法,该方法包括:网关接收来自第一网络设备的第一报文,第一报文的第一报文头包括第二网络设备的互联网协议ip地址,第二网络设备为第一网络设备传输报文的目的网络设备;网关根据第二网络设备的ip地址,结合查表确定第二网络设备的本地标识符lid,查表包括ip地址和lid的关联关系;网关将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文,第二报文头包括本地路由头,本地路由头包括第二网络设备的lid;网关根据第二网络设备的lid发送第二报文。
7.上述第一方面中,网关将第一网络设备的第一报文解析获得第二网络设备的ip地址,在查表匹配第二网络设备的ip地址对应的lid,将包括第二网络设备的lid的第二报文头封装到,剥离第一报文头后的第一报文中生成第二报文,然后根据第二网络设备的lid发送该第二报文,第二报文为普通的ib格式报文,第二网络设备的lid存储在第二报文的本地路由头,第二报文在ib网络的传输不需要经过内核拷贝,可以实现ib网络的远程直接访问效果,提高了报文传输效率。
8.一种可能的实施方式中,上述步骤网关接收来自第一网络设备的第一报文包括:网关根据信用流控机制在大容量的缓冲区接收第一报文;网关通过暂停报文向第一网络设备反馈大容量的缓冲区的状态信息,以使得第一网络设备调整报文传输。
9.上述可能的实施方式中,网关可以采用ib网络的信用流控机制的基础上结合一个大容量的缓冲区接收来自第一网络设备的报文,大容量的缓冲区可以接收更多的飞行报
文,网关还可以通过暂停报文指示第一网络设备该缓冲区的状态信息,以便第一网络设备调整后续报文的传输,第一网络设备可以相应减少或停止报文的发送,可以避免报文传输拥塞。
10.一种可能的实施方式中,上述步骤网关接收来自第一网络设备的第一报文之前,该方法还包括:网关根据路由变化向子网管理器申请lid,路由变化指示第一网络设备加入网络;网关接收第一网络设备的lid;网关获取来自第二网络设备的响应报文,响应报文包括第二网络设备的lid和ip地址;网关根据第一网络设备的ip地址和lid,以及第二网络设备的ip地址和lid更新查表。
11.上述可能的实施方式中,网关可以为接入网络的第一网络设备在ib侧的子网管理器申请lid,并根据第一网络设备的广播报文获取第二网络设备的响应报文,根据响应报文中第二网络设备的ip地址和lid,生成或更新查表,提高本方案的可行性。
12.一种可能的实施方式中,上述步骤网关根据路由变化向子网管理器申请lid包括:网关接收来自第一网络设备的地址解析协议arp报文,arp报文包括第一网络设备的ip地址和第二网络设备的ip地址;网关根据arp报文向子网管理器申请第一网络设备的lid。
13.上述可能的实施方式中,广播报文可以是arp报文,路由变化也可以是由arp报文确定的,网关将arp报文转换成ib格式的arp报文,并发送给第二网络设备,第二网络设备反馈arp响应报文,该arp响应报文包括第二网络设备的ip地址和lid,提高本方案的可行性。
14.一种可能的实施方式中,上述步骤网关将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文之后,该方法还包括:网关更新第二报文的不变循环冗余校验码(invariant cyclic redundancy check,icrc)和可变循环冗余校验码(variant cyclic redundancy check,vcrc)。
15.上述可能的实施方式中,网关将第一报文转换成第二报文后,网关需要修改第二报文的icrc和vcrc,以增加查错能力。
16.一种可能的实施方式中,第一报文为以太报文,第二报文为ib报文。
17.一种可能的实施方式中,以太报文包括以太网头、ip头、udp头、ib传输头、ib有效负载、icrc和循环冗余校验码(cyclic redundancy check,crc)。
18.一种可能的实施方式中,ib报文包括本地路由头、ib传输头、ib有效负载、icrc和vcrc。
19.本技术实施例第二方面提供了一种报文传输方法,包括:网关接收来自第一网络设备的第三报文,第三报文的第三报文头包括本地路由头,所述本地路由头包括第二网络设备的本地标识符lid,第二网络设备为第一网络设备传输报文的目的网络设备;网关根据第二网络设备的lid,结合查表确定第二网络设备的互联网协议ip地址,查表包括ip地址和lid的关联关系;网关将第三报文的第三报文头剥离,并封装第四报文头,以获得第四报文,第四报文头包括第二网络设备的ip地址;网关根据第二网络设备的ip地址发送第四报文。
20.上述第二方面中,网关将第一网络设备的第一报文解析获得第二网络设备的lid,在查表匹配该lid对应的ip地址,将包括第二网络设备的ip地址的第二报文头封装到,剥离第一报文头后的第一报文中生成第二报文,然后根据第二网络设备的lid发送该第二报文,第二报文在以太网络的传输不需要经过内核拷贝,可以实现以太网络的远程直接访问
效果,提高了报文传输效率。
21.一种可能的实施方式中,该方法还包括:网关根据建链报文,获取第一网络设备的队列对序号(queue pair number,qpn)和第二网络设备的qpn;网关根据第一网络设备的qpn和第二网络设备的qpn获取第二网络设备的用户数据报协议udp端口号,查表还包括qpn、udp端口号、ip地址和lid的关联关系,第四报文头还包括第二网络设备的媒体介入控制层mac地址和udp端口号,第二网络设备的mac地址为根据第二网络设备的ip地址广播获得的。
22.上述可能的实施方式中,网关在第一网络设备和第二网络设备建立传输链路的时候,还可以记录第一网络设备和第二网络设备的qpn,并通过第一网络设备和第二网络设备的qpn计算出第二网络设备的udp端口号,网关还可以根据第二网络设备的ip地址向roce网络发送广播报文,以使得第二网络设备反馈mac地址,并将第二网络设备的mac地址和udp端口号封装到第二报文中,以使得网关可以根据第二网络设备的ip地址、mac地址和udp端口号传输第二报文,提高报文传输的可靠性。
23.一种可能的实施方式中,上述步骤网关根据第二网络设备的ip地址发送第四报文包括:网关根据信用流控机制和第二网络设备的ip地址在大容量的缓冲区发送第四报文;网关通过暂停报文向第二网络设备反馈大容量的缓冲区的状态信息,以使得第二网络设备调整报文传输。
24.一种可能的实施方式中,上述步骤网关接收来自第一网络设备的第三报文之前,该方法还包括:网关根据路由变化向子网管理器申请lid,路由变化指示第二网络设备加入网络;网关接收第二网络设备的lid;网关获取来自第一网络设备的响应报文,响应报文包括第一网络设备的lid和ip地址;网关根据第一网络设备的ip地址和lid,以及第二网络设备的ip地址和lid更新查表。
25.一种可能的实施方式中,上述步骤网关根据路由变化向子网管理器申请lid包括:网关接收来自第二网络设备的地址解析协议arp报文,arp报文包括第一网络设备的ip地址和第二网络设备的ip地址;网关根据arp报文向子网管理器申请第二网络设备的lid。
26.一种可能的实施方式中,上述步骤网关将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文之后,该方法还包括:网关更新第二报文的icrc和crc。
27.一种可能的实施方式中,第一报文为以太报文,第二报文为ib报文。
28.一种可能的实施方式中,以太报文包括以太网头、ip头、udp头、ib传输头、ib有效负载、icrc和crc。
29.一种可能的实施方式中,ib报文包括本地路由头、ib传输头、ib有效负载、icrc和vcrc。
30.本技术实施例第三方面提供了一种通信装置,包括:接收单元,用于接收来自第一网络设备的第一报文,第一报文的第一报文头包括第二网络设备的互联网协议ip地址,第二网络设备为第一网络设备传输报文的目的网络设备;确定单元,用于根据第二网络设备的ip地址,结合查表确定第二网络设备的本地标识符lid,查表包括ip地址和lid的关联关系;封装单元,用于将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文,第二报文头包括本地路由头,所述本地路由头包括第二网络设备的lid;发送单元,用于根据第二网络设备的lid发送第二报文。
31.该通信设备用于执行前述第一方面的方法或第一方面任意一种实施方式。
32.本技术实施例第四方面提供了一种通信装置,包括:接收单元,用于接收来自第一网络设备的第三报文,第三报文的第三报文头包括本地路由头,所述本地路由头包括第二网络设备的本地标识符lid,第二网络设备为第一网络设备传输报文的目的网络设备;确定单元,用于根据第二网络设备的lid,结合查表确定第二网络设备的互联网协议ip地址,查表包括ip地址和lid的关联关系;封装单元,用于将第三报文的第三报文头剥离,并封装第四报文头,以获得第四报文,第四报文头包括第二网络设备的ip地址;发送单元,用于根据第二网络设备的ip地址发送第四报文。
33.该通信设备用于执行前述第二方面的方法或第二方面任意一种实施方式。
34.本技术实施例第五方面提供了一种通信设备,包括:处理器、存储器、以及通信接口,该处理器用于执行该存储器中存储的指令,使得通信设备执行上述第一方面或第一方面任一种可选方式所提供的方法,该通信接口用于接收或发送指示。第五方面提供的通信设备的具体细节可参见上述第一方面或第一方面任一种可选方式,此处不再赘述。
35.本技术实施例第六方面提供了一种通信设备,包括:处理器、存储器、以及通信接口,该处理器用于执行该存储器中存储的指令,使得通信设备执行上述第二方面或第二方面任一种可选方式所提供的方法,该通信接口用于接收或发送指示。第六方面提供的通信设备的具体细节可参见上述第二方面或第二方面任一种可选方式,此处不再赘述。
36.本技术实施例第七方面提供了一种计算机可读存储介质,该计算机可读存储介质中保存有程序,当该计算机执行程序时,执行前述第一方面或第一方面任一种可选方式提供的方法。
37.本技术实施例第八方面提供了一种计算机可读存储介质,该计算机可读存储介质中保存有程序,当该计算机执行程序时,执行前述第二方面或第二方面任一种可选方式提供的方法。
38.本技术实施例第九方面提供了一种计算机程序产品,当该计算机程序产品在计算机上执行时,该计算机执行前述第一方面或第一方面任一种可选方式提供的方法。
39.本技术实施例第十方面提供了一种计算机程序产品,当该计算机程序产品在计算机上执行时,该计算机执行前述第二方面或第二方面任一种可选方式提供的方法。
附图说明
40.图1为本技术实施例提供的hpc系统框图;
41.图2为本技术实施例提供的数据中心内部的短距场景示意图;
42.图3为本技术实施例提供的超算中间互联的长距场景示意图;
43.图4为本技术实施例提供的报文传输方法一实施例示意图;
44.图5为本技术实施例提供的报文传输方法另一实施例示意图;
45.图6为本技术实施例提供的网关一结构示意图;
46.图7为本技术实施例提供的网关另一结构示意图;
47.图8为本技术实施例提供的网关另一结构示意图;
48.图9为本技术实施例提供的通信装置一结构示意图;
49.图10为本技术实施例提供的通信装置另一结构示意图;
50.图11为本技术实施例提供的通信设备一结构示意图;
51.图12为本技术实施例提供的通信设备另一结构示意图。
具体实施方式
52.本技术实施例提供了一种报文传输方法以及通信装置,用于提高报文传输速率。
53.下面结合附图,对本技术的实施例进行描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
54.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
55.在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
56.本技术中的表格可以进行拆分和合并,并不局限于此,此处仅仅给出一种示例。
57.另外,为了更好的说明本技术,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本技术同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本技术的主旨。
58.随着数据规模急剧增大,应用性能对处理系统的算力需求指数型扩大,高性能计算(high performance computing,hpc)应用需求剧增。高性能计算(hpc)的主要行业和应用在学校、研究所等科学研究机构。石油部门、医学生物、计算化学和汽车与航空航天设计、建筑结构设计、三维图形运算等领域。hpc是指使用很多处理器(单个机器的一部分)或者某集中若干计算机(作为单个计算资源操作)的计算系统和环境。面对大规模运算任务使用并行算法,将一个大任务拆分并分发到集内的不同节点上进行并行运算,再将计算结果汇总,实现快速得到最终结果,可见hpc系统性能不仅与计算节点算力、存储性能还与节点互联网络性能密切相关。无限带宽技术(infiniband,ib)因其高性能低时延自诞生以来一直是超算互联的首选,但基于以太的远程直接访问(rdma over converged ethernet version2,rocev2)网络出现后,因其完全兼容以太ip网络并且支持远程直接内存访问(remote direct memory access,rdma)协议而被越来越多的超算互联采用。
59.其中,以太报文为以太网络中传输的报文,基于ip头中的ip地址在以太网络中传输。
60.ib报文为ib网络中传输的报文,ib网络不感知ip地址,ib网络中的网络设备分配有本地标识符(local identification,lid),ib报文基于本地路由头中的lid在ib网络中传输。
61.目前数据中心存在ib网络和roce网络同时并存的并且需要进行交互场景,比如存储和计算采用不同的高速互联网络,需要支持ib网络和roce网络互联的设备和装置。如图1
所示为本技术实施例提供的hpc系统框图,在hpc集环境下,计算节点和存储节点间采用高性能rdma网络互联,目前主流的采用ib和rocev2网络互联,如图1所示的存在ib和roce混合互联连,存在以太报文转换为ib报文的情况。
62.hpc集内部大部分采用ib和roce网络组网,存在跨ib和roce网络数据传输需求,需要实现ib网络和roce网络高效互通。
63.本技术实施例实现ib和以太roce转换方法可以用于跨ib网络和roce网络高效数据交互场景,主要存在数据中心内部的短距以及超算中心间的长距场景,如图2所示为本技术实施例提供的数据中心内部的短距场景示意图,ib网络和roce网络间通过网关(gateway)传输,ib网络的ib报文通过网关转换成以太报文以在roce网络传输,或者roce网络的以太报文通过网关转换成ib报文以在ib网络中传输。如图3所示为本技术实施例提供的超算中间互联的长距场景示意图,ib网络1、网关1、ib网络2和网关2,ib网络1将ib报文通过网关1转换成以太报文传输到网关2,网关2将以太报文转换成ib报文以在ib网络2中传输。本技术实施例以短距场景为例。
64.现有技术中,以太网络ip报文通过网关设备(gateway)采用运行在ib上的互联网协议(internet protocol over infiniband,ipoib)技术实现以太ip报文在ib网络上传输,其中,tcp/ip报文通过隧道技术直接封装在ib报文传输,报文仍然经过内核拷贝和软件协议栈,不能发挥ib网络内核旁路(kernel bypass)、零复制(zero copy)优势,时延大cpu占用率高,传统报文经过ib网络封装,不能发挥ib网络承载效率高优势,特别对于小消息报文,报文封装效率降低明显。
65.为解决上述问题,本技术实施例提供了一种报文传输方法,该方法如下所示。
66.请参阅图4,如图4所示为本技术实施例提供的一种报文传输方法一实施例,该方法包括:
67.401.第一网络设备向网关发送第一报文。
68.本技术实施例中,第一网络设备为roce网络侧的网络设备,第二网络设备为ib网络侧的网络设备。其中,roce网络侧的网络设备需要将数据发送到ib网络侧的网络设备,具体的,第一网络设备可以通过网关向第二网络设备发送包括该数据的第一报文,该第一报文为以太报文。其中,该第一报文包括第一网络设备的介质访问控制(media access control,mac)地址,互联网协议(internet protocol,ip)地址,用户数据报协议(user datagram protocol,udp)端口号,以及,第二网络设备的mac地址,ip地址。
69.第一报文的报文格式如下表1所示,该第一报文包括以太网(ethernet,eth)头(header),ip header,udp header,ib传输(transport)header,ib有效负荷(payload),不变循环冗余校验码(invariant cyclic redundancy check,icrc)和循环冗余校验码(cyclic redundancy check,crc)字段,其中,eth header存储有第一网络设备和第二网络设备的mac地址,ip header存储有第一网络设备和第二网络设备的ip地址,udp header存储有第一网络设备的udp端口号,ib transport header字段存储有第一网络设备的qpn和第二网络设备的qpn,icrc字段和crc字段用于对帧内数据进行校验,保证数据传输的正确性。
70.表1
[0071][0072]
402.网关根据第二网络设备的ip地址,结合查表确定第二网络设备的lid。
[0073]
本技术实施例中,网关在接收到该第一报文后,可以对该第一报文进行解析,获得ip header中第二网络设备的ip地址,然后可以根据查表中ip地址和lid的关联关系,将第二网络设备的ip地址与该查表进行匹配获得该第二网络设备的lid。
[0074]
可选的,在步骤401之前,网关根据路由变化向子网管理器申请lid;网关接收第一网络设备的lid;网关获取来自第二网络设备的响应报文;网关根据第一网络设备的ip地址和lid,以及第二网络设备的ip地址和lid更新查表。具体的,当第一网络设备接入网络时,网关需要增加路由路径,即网关可以确定路由变化,该网关可以向子网管理器申请lid,该子网管理器位于ib网络,子网管理器可以随机分配一个lid,网关即可以将该lid与第一网络设备的ip地址对应。网关还可以接收来自第一网络的广播报文,并转换成ib报文转发给第二网络设备,以使得第二网络设备反馈响应报文,该响应报文中包括该第二网络设备的ip地址和lid,网关即可将第一网络设备的ip地址和lid,与第二网络设备的ip地址和lid对应起来,并保存在查表中,或者对该查表进行更新。
[0075]
可选的,网关根据路由变化向子网管理器申请lid可以是,网关接收来自第一网络设备的地址解析协议(address resolution protocol,arp)报文,根据arp报文向子网管理器申请第一网络设备的lid。具体的,网关还可以是通过接收到以太侧arp报文或者其他协议的报文识别以太侧有新加入的终端,当接收到该arp报文时,网关即可获得arp报文中的ip地址,并为第一网络设备向子网管理器申请lid。相应的,网关将arp报文转换成ib侧的arp报文,并发送给第二网络设备,第二网络设备发送的响应报文即为arp响应报文。
[0076]
可选的,上述查表在生成或更新后,还可以进行老化设置,可以以该查表中的源ip地址和目的ip地址为判断依据,如果在一个设定的时间内没有收到包括该源ip地址和目的ip地址的报文,则删除该源ip地址和目的ip地址在查表中的关联关系,或者如果在一个设定的时间内没有收到包括该源ip地址和目的ip地址的报文,则查表进入老化计数流程,当老化计数器达到预设数值,再删除该源ip地址和目的ip地址在查表中的关联关系,本实施例对删除源ip地址和目的ip地址在查表中的关联关系的方式不作限定。具体的,如果在老化计数流程的计数期间内收到含有特定ip的以太报文则重新进入老化计数流程。
[0077]
403.网关将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文。
[0078]
本技术实施例中,网关根据第二网络设备的ip地址从查表获得第二网络设备的lid后,即可将第一报文的第一报文头剥离,其中,第一报文包括如表1中的eth header、ip header和udp header,网关即可将剥离第一报文头后的第一报文再封装上第二报文头,组成第二报文,第二报文头包括第二网络设备的lid,第二报文头为ib报文,采用硬件查表方式实现ib报文和以太报文转换。第二报文的格式如表2所示,本地路由头(local route header)包含于第二报文头,该local route header字段包括第一网络设备和第二网络设备的lid。
[0079]
表2
[0080][0081]
网关在剥离第一报文头,封装第二报文头后,还可以将第一报文头中的udp端口号和ib transport header中的qpn更新到查表中。
[0082]
该查表的格式可以如下表3所示,src表示来源设备,dst表示目的设备,src udp port1表示第二网络设备的udp端口号。
[0083]
表3
[0084]
src ip1dst ip1src lid1dst lid1dst qpn1src qpn1src udp port1src ip2dst ip2src lid2dst lid2dst qpn2src qpn2src udp port2src ip3dst ip3src lid3dst lid3dst qpn3src qpn3src udp port3
…………………
src ipndst ipnsrc lidndst lidndst qpnnsrc qpnnsrc udp portn
[0085]
可选的,网关在向第二网络设备发送第二报文之前,还可以更新第二报文的icrc和可变循环冗余校验码(variant cyclic redundancy check,vcrc)。具体的,网关将第一报文转换成第二报文后,网关需要修改第二报文的icrc和vcrc,以增加整个编码系统的码距和查错纠错能力。
[0086]
实现以太报文转化为ib报文转换并更新报文icrc以及vcrc同时记录udp端口号,另外将rocev2的业务类型(type of service,tos)/差分服务代码点(differentiated services code point,dscp)映射ib报文的服务级别(service level)sl字段,实现服务质量(quality of service,qos)信息传递。dscp在每个数据包ip header的服务类别tos标识字节中,利用已使用的6比特和未使用的2比特,通过编码值来区分优先级。从ib侧的16个虚拟端口中选择8个与roce网络的8个发送队列进行映射,以太侧dscp字段的取值范围与ib侧sl字段映射方式如表4所示。
[0087]
表4
[0088]
rocev2侧dscp(6bits)ib侧sl(4bits)优先级(priority)0-70priority 08-151priority 116-232priority 224-313priority 332-394priority 440-475priority 548-556priority 656-637priority 7
[0089]
404.网关根据第二网络设备的lid发送第二报文。
[0090]
本技术实施例中,网关在生成第二报文后,即可将根据第二网络设备的lid,将该第二报文发送到ib网络中的第二网络设备。
[0091]
针对超算中心互联长距互联场景,本地网关和远端网关需要协商出共同的子网管理器,即子网管理器分配的lid需要在本地网关和远端网关所在ib网络中唯一标识。本地网
关将ib报文转换成以太报文,ip地址和mac地址可以在本地网关配置。
[0092]
本地网关接收来自远端网关的报文采用两级流控方式:
[0093]
可选的,网关接收来自第一网络设备的第一报文可以是网关根据信用(credit)流控机制在大容量的缓冲区接收第一报文;网关通过暂停(pause)报文向第一网络设备反馈大容量的缓冲区的状态信息,以使得第一网络设备调整报文传输。具体的,网关采用ib网络原生的credit流控机制,基于虚拟通道(virtual lane,vl)粒度采用先入先出队列(first input first output,fifo)的大容量的缓冲区对接,采用可配置fifo水线,同时实时监测fifo内部存储情况,大容量的缓冲区可以接收更多的飞行报文。当远端以太侧向本地网关传输大量数据时,本地网关将fifo状态信息通过以太流控pause报文传递到远端网关的以太端口,同时解析pause报文结合水线设置判断对端拥塞情况对发端进行调节,确保对端高效传输且不拥塞。具体的,可以使用端口的基于优先级流量控制(priority-based flow control,pfc)功能,可以基于802.1p优先级对报文进行流量控制,将pfc中的停顿时间更改为缓冲区(buffer)的堆叠情况。
[0094]
本技术实施例的技术方案通过网关将第一网络设备的第一报文解析获得第二网络设备的ip地址,在查表匹配第二网络设备的ip地址对应的lid,将包括第二网络设备的lid的第二报文头封装到,剥离第一报文头后的第一报文中生成第二报文,然后根据第二网络设备的lid发送该第二报文,第二报文在ib网络的传输不需要经过内核拷贝,可以实现ib网络的远程直接访问效果,提高了报文传输效率。
[0095]
上面讲述了网关将以太报文转换为ib报文的方法,下面讲述网关将ib报文转换成以太报文的方法,第一网络设备为ib网络的网络设备,第二网络设备为以太网络的网络设备。
[0096]
请参阅图5,如图5所示为本技术实施例提供的一种报文传输方法另一实施例示意图,该方法如下所示。
[0097]
501.第一网络设备向网关发送第三报文。
[0098]
本技术实施例中,第三报文为ib报文,该ib报文的格式可以参照步骤403中ib报文的格式,第三报文的第三报文头包括local route header,该local route header包括第一网络设备的lid和第二网络设备的lid,以及第一网络设备的qpn和第二网络设备的qpn。
[0099]
502.网关根据第二网络设备的lid,结合查表确定第二网络设备的互联网协议ip地址。
[0100]
步骤502根据lid查ip地址以及查表的更新方式可以参照步骤402中根据ip地址查lid以及查表的更新方式的相关描述,此处不再赘述。
[0101]
503.网关将第三报文的第三报文头剥离,并封装第四报文头,以获得第四报文。
[0102]
本技术实施例中,第四报文头包括eth header,ip header,udp header,ib transport header,ib payload和crc字段,网关接收到ib报文,解析ib报文内部的lrh字段的源lid和目的lid以及目的qpn,通过报文的源lid和目的lid、目的qpn匹配查表实现以太报文的以太头ip header源ip地址、目的ip地址以及udp头的udp端口号,同时将ib transport header和ib payload直接封装到rocev2相应的位置字段,其中,网关还可以根据目的ip地址向roce网络发送广播报文,以使得第二网络设备反馈mac地址,则该mac地址为目的mac地址,并将该目的mac地址存储在eth header字段。基于以太报文eth header内
mac地址逐跳性,可以采用网关以太侧接口的mac地址作为源mac地址,同时更新报文的icrc和crc字段并封装到相应的校验字段内,至此网关实现ib侧的ib报文和以太侧以太报文相互转化。第四报文可以参照图4中第一报文的格式,此处不再赘述。
[0103]
可选的,网关根据建链报文,获取第一网络设备的qpn和第二网络设备的qpn;网关根据第一网络设备的qpn和第二网络设备的qpn获取第二网络设备的udp端口号。具体的,当第一网络设备和第二网络设备建立连接时,第一网络设备可以向网关发送建链报文,网关将建链报文转换为ib格式并发送给第二网络设备,第二网络设备则反馈建链响应报文;也可以是第二网络设备向网关发送建链报文,网关将建链报文转换为以太格式并发送给第一网络设备,第一网络设备则反馈建链响应报文。网关可以根据建链报文获取第一网络设备的qpn和第二网络设备的qpn,并根据qpn和udp端口号的映射关系,结合第一网络设备的qpn和第二网络设备的qpn计算出第二网络设备的udp端口号,网关可以将该第一网络设备的qpn、第二网络设备的qpn以及第二网络设备的udp端口号的对应关系存储在查表中,当网关为第二网络设备分配lid后,该查表还可以包括ip地址、lid、qpn以及udp端口号的关联关系。则网关可以根据第三报文,确定第四报文头所需的第一网络设备的mac地址和第二网络设备的mac地址、第一网络设备的ip地址和第二网络设备的ip地址、第一网络设备的qpn和第二网络设备的qpn,以及第二网络设备的udp端口号。
[0104]
504.网关根据第二网络设备的ip地址发送第四报文。
[0105]
本技术实施例中,网关可以按照以太报文的传输方式,根据第四报文中第二网络设备的ip地址传输该第四报文。
[0106]
可选的,网关根据第二网络设备的ip地址发送第四报文可以采用两级流控传输,网关根据信用流控机制和第二网络设备的ip地址在大容量的缓冲区发送第四报文;网关通过暂停报文向第二网络设备反馈大容量的缓冲区的状态信息,以使得第二网络设备调整报文传输。其中,该两级流控传输的相关描述可以参照步骤304中的相关描述,此处不再赘述。
[0107]
本技术实施例的技术方案通过网关将第一网络设备的第一报文解析获得第二网络设备的lid,在查表匹配该lid对应的ip地址,将包括第二网络设备的ip地址的第二报文头封装到,剥离第一报文头后的第一报文中生成第二报文,然后根据第二网络设备的lid发送该第二报文,第二报文在以太网络的传输不需要经过内核拷贝,可以实现以太网络的远程直接访问效果,提高了报文传输效率。
[0108]
本技术实施例的网关的结构可以是如图6所示的网关一结构示意图,该网关包括交换芯片和处理芯片,其中,交换芯片主要实现基本的转发功能,处理芯片可以是cpu、fpga等,负责实现不同协议报文转换所需的查表的建立和维护以及不同协议报文转换。
[0109]
本技术实施例的网关的结构可以是如图7所示的网关另一结构示意图,该网关包括交换芯片,其中,该交换芯片包括接收模块,处理模块和发送模块,由接收模块和发送模块实现基本的转发功能,由处理模块负责实现不同协议报文转换所需的查表的建立和维护以及不同协议报文转换。
[0110]
本技术实施例中,处理芯片的结构可以参照图8所示的处理芯片结构示意图,该处理芯片包括以太接口、封装/解封模块、缓冲模块、ib信用流控模块、ib接口、服务质量模块和管理模组。
[0111]
其中,以太接口用于接收以太报文或输出以太报文;
[0112]
封装/解封装模块用于执行以太报文和ib报文的转换。
[0113]
缓冲模块用于存储飞行报文,并且将缓冲模块的状态信息通过roce网络发送给对端。
[0114]
ib信用流控模块用于调整ib侧报文传输。
[0115]
服务质量模块用于确定以太侧和ib侧之间传输的虚拟端口。
[0116]
管理模组用于管理lid,示例性的可以是向子网管理器申请lid,并为节点分配lid。
[0117]
上面讲述了报文传输方法,下面对可以执行该报文传输方法的通信装置进行描述。
[0118]
请参阅图9,如图9所示为本技术实施例提供的通信装置一结构示意图,该通信装置90包括:
[0119]
接收单元901,用于接收来自第一网络设备的第一报文,第一报文的第一报文头包括第二网络设备的互联网协议ip地址,第二网络设备为第一网络设备传输报文的目的网络设备;
[0120]
确定单元902,用于根据第二网络设备的ip地址,结合查表确定第二网络设备的本地标识符lid,查表包括ip地址和lid的关联关系;
[0121]
封装单元903,用于将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文,第二报文头包括本地路由头,本地路由头包括第二网络设备的lid;
[0122]
发送单元904,用于根据第二网络设备的lid发送第二报文。
[0123]
可选的,接收单元901具体用于:
[0124]
根据信用流控机制在大容量的缓冲区接收第一报文;
[0125]
通过暂停报文向第一网络设备反馈大容量的缓冲区的状态信息,以使得第一网络设备调整报文传输。
[0126]
可选的,发送单元904还用于:
[0127]
根据路由变化向子网管理器申请lid,路由变化指示第一网络设备加入网络;
[0128]
接收单元901还用于:
[0129]
接收第一网络设备的lid;
[0130]
获取单元905还用于:
[0131]
获取来自第二网络设备的响应报文,响应报文包括第二网络设备的lid和ip地址;
[0132]
通信装置还包括更新906单元,更新单元906具体用于:
[0133]
根据第一网络设备的ip地址和lid,以及第二网络设备的ip地址和lid更新查表。
[0134]
可选的,发送单元904还用于:
[0135]
接收来自第一网络设备的地址解析协议arp报文,arp报文包括第一网络设备的ip地址和第二网络设备的ip地址;
[0136]
根据arp报文向子网管理器申请第一网络设备的lid。
[0137]
可选的,更新单元906还用于:
[0138]
更新第二报文的不变循环冗余校验码icrc和可变循环冗余校验码vcrc。
[0139]
可选的,第一报文为以太报文,第二报文为ib报文。
[0140]
可选的,以太报文包括以太网头、ip头、udp头、ib传输头、ib有效负载、icrc和crc。
[0141]
可选的,ib报文包括本地路由头、ib传输头、ib有效负载、icrc和vcrc。
[0142]
请参阅图10,如图10所示为本技术实施例提供的通信装置另一结构示意图,该通信装置100包括:
[0143]
接收单元1001,用于接收来自第一网络设备的第三报文,第三报文的第三报文头包括本地路由头,本地路由头包括第二网络设备的本地标识符lid,第二网络设备为第一网络设备传输报文的目的网络设备;
[0144]
确定单元1002,用于根据第二网络设备的lid,结合查表确定第二网络设备的互联网协议ip地址,查表包括ip地址和lid的关联关系;
[0145]
封装单元1003,用于将第三报文的第三报文头剥离,并封装第四报文头,以获得第四报文,第四报文头包括第二网络设备的ip地址;
[0146]
发送单元1004,用于根据第二网络设备的ip地址发送第四报文。
[0147]
可选的,通信装置100还包括获取单元1005,获取单元1005具体用于:
[0148]
根据建链报文,获取第一网络设备的qpn和第二网络设备的qpn;
[0149]
根据第一网络设备的qpn和第二网络设备的qpn获取第二网络设备的用户数据报协议udp端口号,查表还包括qpn、udp端口号、ip地址和lid的关联关系,第四报文头还包括第二网络设备的媒体介入控制层mac地址和udp端口号,第二网络设备的mac地址为根据第二网络设备的ip地址广播获得的。
[0150]
可选的,发送单元1004具体用于:
[0151]
根据信用流控机制和第二网络设备的ip地址在大容量的缓冲区发送第四报文;
[0152]
通过暂停报文向第二网络设备反馈大容量的缓冲区的状态信息,以使得第二网络设备调整报文传输。
[0153]
可选的,发送单元1004还用于:
[0154]
根据路由变化向子网管理器申请lid,路由变化指示第二网络设备加入网络;
[0155]
接收单元1001还用于:
[0156]
接收第二网络设备的lid;
[0157]
获取单元1005还用于:
[0158]
获取来自第一网络设备的响应报文,响应报文包括第一网络设备的lid和ip地址;
[0159]
通信装置100还包括更新单元1006,更新单元1006具体用于:
[0160]
根据第一网络设备的ip地址和lid,以及第二网络设备的ip地址和lid更新查表。
[0161]
可选的,发送单元1004还用于:
[0162]
接收来自第二网络设备的地址解析协议arp报文,arp报文包括第一网络设备的ip地址和第二网络设备的ip地址;
[0163]
根据arp报文向子网管理器申请第二网络设备的lid。
[0164]
可选的,更新单元1006还用于:
[0165]
更新第二报文的不变循环冗余码校验icrc和循环冗余码校验crc。
[0166]
可选的,第一报文为以太报文,第二报文为ib报文。
[0167]
可选的,以太报文包括以太网头、ip头、udp头、ib传输头、ib有效负载、icrc和crc。
[0168]
可选的,ib报文包括本地路由头、ib传输头、ib有效负载、icrc和vcrc。
[0169]
图11所示,为本技术的实施例提供的通信设备110的一种可能的逻辑结构示意图。通信设备110包括:处理器1101、通信接口1102、存储系统1103以及总线1104。处理器1101、通信接口1102以及存储系统1103通过总线1104相互连接。在本技术的实施例中,处理器1101用于对通信设备110的动作进行控制管理,例如,处理器1101用于执行图4的方法实施例中网关所执行的步骤。通信接口1102用于支持通信设备110进行通信。存储系统1103,用于存储通信设备110的程序代码和数据。
[0170]
其中,处理器1101可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1101也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。总线1104可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0171]
通信装置90中的接收单元901和发送单元904相当于通信设备110中的通信接口1102,通信装置90中的确定单元902、封装单元903、获取单元905和更新单元906相当于通信设备110中的处理器1101。
[0172]
本实施例的通信设备110可对应于上述图4方法实施例中的网关,该通信设备110中的通信接口1102可以实现上述图4方法实施例中的网关所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
[0173]
图12所示,为本技术的实施例提供的通信设备120的一种可能的逻辑结构示意图。通信设备120包括:处理器1201、通信接口1202、存储系统1203以及总线1204。处理器1201、通信接口1202以及存储系统1203通过总线1204相互连接。在本技术的实施例中,处理器1201用于对通信设备120的动作进行控制管理,例如,处理器1201用于执行图5的方法实施例中网关所执行的步骤。通信接口1202用于支持通信设备120进行通信。存储系统1203,用于存储通信设备120的程序代码和数据。
[0174]
其中,处理器1201可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1201也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。总线1204可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0175]
通信装置100中的接收单元1001和发送单元1004相当于通信设备120中的通信接口1202,通信装置100中的确定单元1002、封装单元1003、获取单元1005和更新单元1006相当于通信设备120中的处理器1201。
[0176]
本实施例的通信设备120可对应于上述图5方法实施例中的网关,该通信设备120
中的通信接口1202可以实现上述图5方法实施例中的网关所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
[0177]
在本技术的另一实施例中,还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当设备的处理器执行该计算机执行指令时,设备执行上述图4方法实施例中的网关备所执行的报文传输方法的步骤。
[0178]
在本技术的另一实施例中,还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当设备的处理器执行该计算机执行指令时,设备执行上述图5方法实施例中的网关所执行的报文传输方法的步骤。
[0179]
在本技术的另一实施例中,还提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;当设备的处理器执行该计算机执行指令时,设备执行上述图4方法实施例中的网关所执行的报文传输方法的步骤。
[0180]
在本技术的另一实施例中,还提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;当设备的处理器执行该计算机执行指令时,设备执行上述图5方法实施例中的网关所执行的报文传输方法的步骤。
[0181]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0182]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0183]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0184]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0185]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。

技术特征:


1.一种报文传输方法,其特征在于,包括:网关接收来自第一网络设备的第一报文,所述第一报文的第一报文头包括第二网络设备的互联网协议ip地址,所述第二网络设备为第一网络设备传输报文的目的网络设备;所述网关根据所述第二网络设备的ip地址,结合查表确定所述第二网络设备的本地标识符lid,所述查表包括ip地址和lid的关联关系;所述网关将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文,所述第二报文头包括本地路由头,所述本地路由头包括所述第二网络设备的lid;所述网关根据所述第二网络设备的lid发送所述第二报文。2.根据权利要求1所述的报文传输方法,其特征在于,所述网关接收来自第一网络设备的第一报文包括:所述网关根据信用流控机制在大容量的缓冲区接收所述第一报文;所述网关通过暂停报文向所述第一网络设备反馈所述大容量的缓冲区的状态信息,以使得所述第一网络设备调整报文传输。3.根据权利要求1-2任一项所述的报文传输方法,其特征在于,所述网关接收来自第一网络设备的第一报文之前,所述方法还包括:所述网关根据路由变化向子网管理器申请lid,所述路由变化指示所述第一网络设备加入网络;所述网关接收所述第一网络设备的lid;所述网关获取来自所述第二网络设备的响应报文,所述响应报文包括第二网络设备的lid和ip地址;所述网关根据所述第一网络设备的ip地址和lid,以及所述第二网络设备的ip地址和lid更新所述查表。4.根据权利要求3所述的报文传输方法,其特征在于,所述网关根据路由变化向子网管理器申请lid包括:所述网关接收来自所述第一网络设备的地址解析协议arp报文,所述arp报文包括所述第一网络设备的ip地址和所述第二网络设备的ip地址;所述网关根据所述arp报文向子网管理器申请所述第一网络设备的lid。5.根据权利要求1-4任一项所述的报文传输方法,其特征在于,所述网关将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文之后,所述方法还包括:所述网关更新所述第二报文的不变循环冗余校验码icrc和可变循环冗余校验码vcrc。6.根据权利要求1-5任一项所述的报文传输方法,其特征在于,所述第一报文为以太报文,所述第二报文为ib报文。7.根据权利要求6所述的报文传输方法,其特征在于,所述以太报文包括以太网头、ip头、udp头、ib传输头、ib有效负载、icrc和循环冗余校验码crc。8.根据权利要求6所述的报文传输方法,其特征在于,所述ib报文包括所述本地路由头、ib传输头、ib有效负载、icrc和vcrc。9.一种报文传输方法,其特征在于,包括:网关接收来自第一网络设备的第三报文,所述第三报文的第三报文头包括本地路由头,所述本地路由头包括第二网络设备的本地标识符lid,所述第二网络设备为第一网络设
备传输报文的目的网络设备;所述网关根据所述第二网络设备的lid,结合查表确定所述第二网络设备的互联网协议ip地址,所述查表包括ip地址和lid的关联关系;所述网关将第三报文的第三报文头剥离,并封装第四报文头,以获得第四报文,所述第四报文头包括所述第二网络设备的ip地址;所述网关根据所述第二网络设备的ip地址发送所述第四报文。10.根据权利要求9所述的报文传输方法,其特征在于,所述方法还包括:所述网关根据建链报文,获取所述第一网络设备的队列对序号qpn和所述第二网络设备的qpn;所述网关根据所述第一网络设备的qpn和所述第二网络设备的qpn获取所述第二网络设备的用户数据报协议udp端口号,所述查表还包括qpn、udp端口号、ip地址和lid的关联关系,所述第四报文头还包括所述第二网络设备的媒体介入控制层mac地址和udp端口号,所述第二网络设备的mac地址为根据所述第二网络设备的ip地址广播获得的。11.根据权利要求9或10所述的报文传输方法,其特征在于,所述网关根据所述第二网络设备的ip地址发送所述第四报文包括:所述网关根据信用流控机制和所述第二网络设备的ip地址在大容量的缓冲区发送所述第四报文;所述网关通过暂停报文向所述第二网络设备反馈所述大容量的缓冲区的状态信息,以使得所述第二网络设备调整报文传输。12.根据权利要求9-11任一项所述的报文传输方法,其特征在于,所述网关接收来自第一网络设备的第三报文之前,所述方法还包括:所述网关根据路由变化向子网管理器申请lid,所述路由变化指示所述第二网络设备加入网络;所述网关接收所述第二网络设备的lid;所述网关获取来自所述第一网络设备的响应报文,所述响应报文包括第一网络设备的lid和ip地址;所述网关根据所述第一网络设备的ip地址和lid,以及所述第二网络设备的ip地址和lid更新所述查表。13.根据权利要求12所述的报文传输方法,其特征在于,所述网关根据路由变化向子网管理器申请lid包括:所述网关接收来自所述第二网络设备的地址解析协议arp报文,所述arp报文包括所述第一网络设备的ip地址和所述第二网络设备的ip地址;所述网关根据所述arp报文向子网管理器申请所述第二网络设备的lid。14.根据权利要求9-13任一项所述的报文传输方法,其特征在于,所述网关将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文之后,所述方法还包括:所述网关更新所述第二报文的不变循环冗余码校验icrc和循环冗余码校验crc。15.根据权利要求9-14任一项所述的报文传输方法,其特征在于,所述第一报文为以太报文,所述第二报文为ib报文。16.根据权利要求15所述的报文传输方法,其特征在于,所述以太报文包括以太网头、
ip头、udp头、ib传输头、ib有效负载、icrc和crc。17.根据权利要求15所述的报文传输方法,其特征在于,所述ib报文包括所述本地路由头、ib传输头、ib有效负载、icrc和可变循环冗余校验码vcrc。18.一种通信装置,其特征在于,包括:接收单元,用于接收来自第一网络设备的第一报文,所述第一报文的第一报文头包括第二网络设备的互联网协议ip地址,所述第二网络设备为第一网络设备传输报文的目的网络设备;确定单元,用于根据所述第二网络设备的ip地址,结合查表确定所述第二网络设备的本地标识符lid,所述查表包括ip地址和lid的关联关系;封装单元,用于将第一报文的第一报文头剥离,并封装第二报文头,以获得第二报文,所述第二报文头包括本地路由头,所述本地路由头包括所述第二网络设备的lid;发送单元,用于根据所述第二网络设备的lid发送所述第二报文。19.根据权利要求18所述的通信装置,其特征在于,所述接收单元具体用于:根据信用流控机制在大容量的缓冲区接收所述第一报文;通过暂停报文向所述第一网络设备反馈所述大容量的缓冲区的状态信息,以使得所述第一网络设备调整报文传输。20.根据权利要求18-19任一项所述的通信装置,其特征在于,所述发送单元还用于:根据路由变化向子网管理器申请lid,所述路由变化指示所述第一网络设备加入网络;所述接收单元还用于:接收所述第一网络设备的lid;所述获取单元还用于:获取来自所述第二网络设备的响应报文,所述响应报文包括第二网络设备的lid和ip地址;所述通信装置还包括更新单元,所述更新单元具体用于:根据所述第一网络设备的ip地址和lid,以及所述第二网络设备的ip地址和lid更新所述查表。21.根据权利要求20所述的通信装置,其特征在于,所述发送单元还用于:接收来自所述第一网络设备的地址解析协议arp报文,所述arp报文包括所述第一网络设备的ip地址和所述第二网络设备的ip地址;根据所述arp报文向子网管理器申请所述第一网络设备的lid。22.根据权利要求18-21任一项所述的通信装置,其特征在于,所述更新单元还用于:更新所述第二报文的不变循环冗余校验码icrc和可变循环冗余校验码vcrc。23.根据权利要求18-22任一项所述的通信装置,其特征在于,所述第一报文为以太报文,所述第二报文为ib报文。24.根据权利要求23所述的通信装置,其特征在于,所述以太报文包括以太网头、ip头、udp头、ib传输头、ib有效负载、icrc和循环冗余校验码crc。25.根据权利要求23所述的通信装置,其特征在于,所述ib报文包括所述本地路由头、ib传输头、ib有效负载、icrc和vcrc。26.一种通信装置,其特征在于,包括:
接收单元,用于接收来自第一网络设备的第三报文,所述第三报文的第三报文头包括本地路由头,所述本地路由头包括第二网络设备的本地标识符lid,所述第二网络设备为第一网络设备传输报文的目的网络设备;确定单元,用于根据所述第二网络设备的lid,结合查表确定所述第二网络设备的互联网协议ip地址,所述查表包括ip地址和lid的关联关系;封装单元,用于将第三报文的第三报文头剥离,并封装第四报文头,以获得第四报文,所述第四报文头包括所述第二网络设备的ip地址;发送单元,用于根据所述第二网络设备的ip地址发送所述第四报文。27.根据权利要求26所述的通信装置,其特征在于,所述通信装置还包括获取单元,所述获取单元具体用于:根据建链报文,获取所述第一网络设备的队列对序号qpn和所述第二网络设备的qpn;根据所述第一网络设备的qpn和所述第二网络设备的qpn获取所述第二网络设备的用户数据报协议udp端口号,所述查表还包括qpn、udp端口号、ip地址和lid的关联关系,所述第四报文头还包括所述第二网络设备的媒体介入控制层mac地址和udp端口号,所述第二网络设备的mac地址为根据所述第二网络设备的ip地址广播获得的。28.根据权利要求26或27所述的通信装置,其特征在于,所述发送单元具体用于:根据信用流控机制和所述第二网络设备的ip地址在大容量的缓冲区发送所述第四报文;通过暂停报文向所述第二网络设备反馈所述大容量的缓冲区的状态信息,以使得所述第二网络设备调整报文传输。29.根据权利要求26-28任一项所述的通信装置,其特征在于,所述发送单元还用于:根据路由变化向子网管理器申请lid,所述路由变化指示所述第二网络设备加入网络;所述接收单元还用于:接收所述第二网络设备的lid;所述获取单元还用于:获取来自所述第一网络设备的响应报文,所述响应报文包括第一网络设备的lid和ip地址;所述通信装置还包括更新单元,所述更新单元具体用于:根据所述第一网络设备的ip地址和lid,以及所述第二网络设备的ip地址和lid更新所述查表。30.根据权利要求29所述的通信装置,其特征在于,所述发送单元还用于:接收来自所述第二网络设备的地址解析协议arp报文,所述arp报文包括所述第一网络设备的ip地址和所述第二网络设备的ip地址;根据所述arp报文向子网管理器申请所述第二网络设备的lid。31.根据权利要求26-30任一项所述的通信装置,其特征在于,所述更新单元还用于:更新所述第二报文的不变循环冗余码校验icrc和循环冗余码校验crc。32.根据权利要求26-31任一项所述的通信装置,其特征在于,所述第一报文为以太报文,所述第二报文为ib报文。33.根据权利要求32所述的通信装置,其特征在于,所述以太报文包括以太网头、ip头、
udp头、ib传输头、ib有效负载、icrc和crc。34.根据权利要求32所述的通信装置,其特征在于,所述ib报文包括所述本地路由头、ib传输头、ib有效负载、icrc和可变循环冗余校验码vcrc。35.一种通信设备,其特征在于,包括:处理器以及存储器,所述处理器用于执行所述存储器中存储的指令,使得所述通信设备执行权利要求1至8中任一项所述的方法。36.一种通信设备,其特征在于,包括:处理器以及存储器,所述处理器用于执行所述存储器中存储的指令,使得所述通信设备执行权利要求9至17中任一项所述的方法。37.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在所述计算机上运行时,使得所述计算机执行如权利要求1至17中任一项所述的方法。38.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上执行时,所述计算机执行如权利要求1至17中任一项所述的方法。

技术总结


本申请实施例公开了一种报文传输方法以及通信装置,用于提高报文传输速率。本申请实施例方法包括:网关将第一网络设备的第一报文解析获得第二网络设备的IP地址,在查表匹配第二网络设备的IP地址对应的LID,将包括第二网络设备的LID的第二报文头封装到,剥离第一报文头后的第一报文中生成第二报文,LID存储在第二报文的本地路由头,然后根据第二网络设备的LID发送该第二报文。备的LID发送该第二报文。备的LID发送该第二报文。


技术研发人员:

蒋有军 吴涛 郑合文 韩磊 范多亮

受保护的技术使用者:

华为技术有限公司

技术研发日:

2021.07.30

技术公布日:

2023/2/6

本文发布于:2023-03-06 02:47:41,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/67434.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:报文   网络设备   所述   网关
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图