CN116319934A - 基于RoCE会话的负载分担方法及装置 - Google Patents
基于RoCE会话的负载分担方法及装置 Download PDFInfo
- Publication number
- CN116319934A CN116319934A CN202310350413.1A CN202310350413A CN116319934A CN 116319934 A CN116319934 A CN 116319934A CN 202310350413 A CN202310350413 A CN 202310350413A CN 116319934 A CN116319934 A CN 116319934A
- Authority
- CN
- China
- Prior art keywords
- message
- session
- forwarded
- path
- load sharing
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种基于RoCE会话的负载分担方法及装置,涉及通信技术领域。该方法包括:接收待转发报文,并识别待转发报文的类型;在确定待转发报文为第二类协议报文时,根据待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,第二类协议报文为RoCE会话的会话数据传输过程中的报文,负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定;根据目标转发路径转发待转发报文。如此,可以减少选路发生在RoCE会话数据传输过程中的情况,从而提高RoCE的传输性能。
Description
技术领域
本申请涉及通信技术领域,具体而言,涉及一种基于RoCE会话的负载分担方法及装置。
背景技术
RDMA(Remote Direct Memory Access,远程直接内存访问),用于InfiniBand网络,是一种直接内存访问技术,它将数据直接从一台计算机的内存传输到另一台计算机,数据从一个系统快速移动到远程系统存储器中,无需双方操作系统的介入,不需要经过处理器耗时的处理,最终达到高带宽、低延迟和低资源利用率的效果。RoCE是一种网络层协议,基于UDP协议封装InfiniBand原始报文,通过IP路由网络部署RDMA业务。RoCE网络为了更好地利用带宽会选用ECMP(Equal CostMulti-path,等价多路径)作为负载分担的策略。传统的ECMP分担策略中,网络芯片使用的选路方式容易出现选路发生在RoCE会话数据传输过程中的情况,导致报文乱序,进而导致报文重传,最终导致传输性能急剧下降。
发明内容
本申请实施例提供了一种基于RoCE会话的负载分担方法、装置、电子设备及可读存储介质,其可以减少选路发生在RoCE会话数据传输过程中的情况,从而提高RoCE的传输性能。
本申请的实施例可以这样实现:
第一方面,本申请提供一种基于RoCE会话的负载分担方法,所述方法包括:
接收待转发报文,并识别所述待转发报文的类型;
在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定;
根据所述目标转发路径转发所述待转发报文。
第二方面,本申请实施例提供一种基于RoCE会话的负载分担方法,所述方法包括:
网络芯片接收待转发报文,并识别所述待转发报文的类型;
所述网络芯片在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定;
所述网络芯片根据所述目标转发路径转发所述待转发报文。
第三方面,本申请实施例提供一种基于RoCE会话的负载分担装置,所述装置包括:
识别模块,用于接收待转发报文,并识别所述待转发报文的类型;
路径确定模块,用于在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定;
转发模块,用于根据所述目标转发路径转发所述待转发报文。
第四方面,本申请实施例提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式所述的基于RoCE会话的负载分担方法。
第五方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式所述的基于RoCE会话的负载分担方法。
本申请实施例提供的基于RoCE会话的负载分担方法、装置、电子设备及可读存储介质,在接收到待转发报文的情况下,若通过报文类型识别确定该待转发报文为第二类协议报文时,则根据待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,并根据该目标转发路径转发接收到的待转发报文。其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定。上述方式在接收到待转发报文时,根据在该报文对应的会话数据传输过程之前进行的选路的结果进行报文转发,可减少选路发生在RoCE会话数据传输过程中的情况,从而减少报文乱序导致报文需重传的情况,进而提高RoCE的传输性能。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为RoCE的封装格式示意图;
图2为RoCE的会话过程示意图;
图3为现有的一种基于RoCE会话的负载分担方法的示意图;
图4为本申请实施例提供的电子设备的方框示意图;
图5为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之一;
图6为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之二;
图7为图6中步骤S120包括的子步骤的流程示意图;
图8为图5中步骤S130包括的子步骤的流程示意图;
图9本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之三;
图10为图9中步骤S150包括的子步骤的流程示意图;
图11为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之四;
图12为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之五;
图13为本申请实施例提供的基于RoCE会话的负载分担方法的举例说明示意图;
图14为本申请实施例提供的基于RoCE会话的负载分担装置的方框示意图之一;
图15为本申请实施例提供的基于RoCE会话的负载分担装置的方框示意图之二。
图标:100-电子设备;110-存储器;120-处理器;130-通信单元;200-基于RoCE会话的负载分担装置;210-识别模块;220-路径维护模块;230-路径确定模块;240-转发模块。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
RDMA(Remote Direct Memory Access,远程直接内存访问),用于InfiniBand网络,是一种直接内存访问技术,它将数据直接从一台计算机的内存传输到另一台计算机,数据从一个系统快速移动到远程系统存储器中,无需双方操作系统的介入,不需要经过处理器耗时的处理,最终达到高带宽、低延迟和低资源利用率的效果。
RoCE协议存在RoCEv1和RoCEv2两个版本。RoCEv1是基于以太网链路层实现的RDMA协议,允许在同一个VLAN中的两台主机进行通信。RoCEv2是一种网络层协议,如图1所示的封装方式,RoCEv2基于UDP协议封装InfiniBand原始报文,通过IP路由网络的部署RDMA业务。RoCEv2克服了RoCEv1绑定到单个VLAN的限制,RoCEv2现在可以跨L2和L3网络使用。
RoCE是一种面向连接的服务。RoCEv1和RoCEv2的会话过程相似。下面结合图2,以基于RoCEv2写数据为例,对RoCE会话过程进行说明。
RoCEv2的会话有三个过程:会话连接创建过程、会话数据传输过程、会话连接关闭过程。会话连接创建成功后,才开始传输数据。会话数据传输过程,为大数据量传输过程,这个过程采用数据块确认方式,如果会话在网络发生丢包或乱序时,采用简单回退机制,即如果收到的帧的序号为:1,2,3,5,6,7,8,9,10,…4,则会回退到序号4开始重新传输4,5,6,7,8,9,10,…,这个机制导致ROCE传输过程中,如果网络发生乱序会导致传输性能的急剧下降。会话连接关闭过程,数据传输结束,会关闭连接。
RoCEv2网络为了更好的利用带宽会选用ECMP((Equal CostMulti-path,等价多路径)作为负载分担的策略。传统的ECMP分担策略一般是CPU(Central Processing Unit,中央处理器)软件系统配置负载分担路径,网络芯片使用基于报文或者报文片段(即一定数量的报文或者一定时长内的报文)的选路方式,这种无状态机械的选路策略,容易出现选路发生在RoCE会话数据传输过程中的情况,导致报文乱序,进而导致报文重传,最终导致传输性能急剧下降,无法最优化网络带宽的利用。
如图3所示,CPU软件系统在网络芯片中配置了负载分担路径组。网络芯片在接收到RoCE报文后,通过路由查找,确定要使用的负载分担路径组,然后基于无状态机械选择算法,从确定出的负载分担路径组中选出要使用的转发路径,进而对RoCE报文进行转发。这种传统的负载分担方式不能精准控制负载路径选择的时机,路径选择可能发生在RoCE会话的会话数据传输过程中,进而导致报文重传,最终导致传输性能急剧下降。
为解决上述问题,本申请实施例提供了一种基于RoCE会话的负载分担方法、装置、电子设备及可读存储介质,可以减少选路发生在RoCE会话数据传输过程中的情况,从而提高RoCE的传输性能。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图4,图4为本申请实施例提供的电子设备100的方框示意图。所述电子设备100可以为网络中用于转发报文的中间设备。所述电子设备100包括存储器110、处理器120及通信单元130。所述存储器110、处理器120以及通信单元130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,存储器110用于存储程序或者数据。所述存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(ErasableProgrammable Read-Only Memory,EPROM),电可擦除只读存储器(Electric ErasableProgrammable Read-Only Memory,EEPROM)等。
处理器120用于读/写存储器110中存储的数据或程序,并执行相应地功能。比如,存储器110中存储有基于RoCE会话的负载分担装置200,所述基于RoCE会话的负载分担装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中的软件功能模块。所述处理器120通过运行存储在存储器110内的软件程序以及模块,如本申请实施例中的基于RoCE会话的负载分担装置200,从而执行各种功能应用以及数据处理,即实现本申请实施例中的基于RoCE会话的负载分担方法。
通信单元130用于通过网络建立所述电子设备100与其它通信终端之间的通信连接,并用于通过所述网络收发数据。
应当理解的是,图4所示的结构仅为电子设备100的结构示意图,所述电子设备100还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
请参照图5,图5为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之一。所述方法可应用于对数据传输实时性要求较高的以太网环境,如数据中心网络、工业网络。该方法应用于网络中用于转发报文的中间设备,该中间设备中包括通信连接的网络芯片及CPU,该方法可由所述网络芯片执行。
下面对基于RoCE会话的负载分担方法的具体流程进行详细阐述。在本实施例中,所述方法可以包括步骤S110、步骤S130~步骤S140。
步骤S110,接收待转发报文,并识别所述待转发报文的类型。
在本实施例中,网络芯片在接收到待转发报文后,对该待转发报文的类型进行识别,以便根据待转发报文的类型进行不同的处理。其中,可以根据待转发报文中相应字段的值确定该转发报文的类型,也可以通过其他方式进行报文类型识别。
步骤S130,在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径。
步骤S140,根据所述目标转发路径转发所述待转发报文。
在本实施例中,所述网络芯片中包括负载分担路径转发表,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径。所述会话标识用于标识一个RoCE会话,会话标识的具体设置方式可以结合实际需求设置。一个会话标识对应的待使用路径,在该会话标识对应的会话数据传输过程之前,根据该会话标识对应的会话信息及预设负载分担算法确定。其中,一个会话标识对应的会话信息,表示为该会话标识对应的RoCE会话进行选路时需要使用的信息,具体可以结合实际需求确定。所述预设负载分担算法用于选取最优路径,具体可以结合实际需求确定。
也即,在一个RoCE会话的会话数据传输过程之前,为该RoCE会话进行了选路,并将选出的待使用路径及对应的会话标识对应保存在所述负载分担路径转发表中。
可选地,在一个RoCE会话的会话数据传输过程之前为该RoCE会话进行的选路,可以是所述网络芯片执行的,可以是CPU执行的,也可以是其他设备执行的,在此不对如何获取待使用路径进行具体限定。本申请实施例中涉及的RoCE会话,可以是RoCEv1会话,也可以是RoCEv2会话。
在本实施例中,通过报文类型识别在确定所述待转发报文为第二类协议报文的情况下,则可以根据所述待转发报文确定出该待转发报文对应的目标会话标识。其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文。所述目标会话标识用于标识该待转发报文对应的目标会话,即用于标识该待转发报文对应的RoCE会话。接着,可根据所述目标会话标识、所述负载分担路径转发表中包括的各会话标识与待使用路径的对应关系,确定出目标转发路径,然后根据该目标转发路径转发所述待转发报文。
在本实施例中,在接收到待转发报文时,根据在该报文对应的会话数据传输过程之前进行的选路的结果进行报文转发,可减少选路发生在RoCE会话数据传输过程中的情况,从而减少报文乱序导致报文需重传的情况,进而提高RoCE的传输性能。
作为一种可能的实现方式,可以通过如下方式识别出RoCEv2报文以及其具体的类型。可以提取出所述待转发报文中的UDP端口号字段的值以及InfiniBand.BTH字段的值,并根据提取出的字段值,识别出该待转发报文为RoCE会话中哪个过程中的报文,即确定出待转发报文所属的状态。其中,RoCEv2报文的UDP端口号字段的值为4791。比如,可以识别出RoCE会话的会话连接创建过程中的ConnectRequest、ConnectReply、ReadyToUse协议报文,RoCE会话的会话数据传输过程中的协议报文,以及RoCE会话的会话连接关闭过程中的DisconnectRequest、DisConnectReply协议报文。根据待转发报文的报文类型识别结果,网络芯片进行不同的处理。
请参照图6,图6为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之二。在本实施例中,在步骤S110之后,所述方法还可以包括步骤S120。
步骤S120,在确定所述待转发报文为第一类协议报文时,获得根据所述待转发报文及所述预设负载分担算法确定出的待使用路径,并将确定出的待使用路径与所述待转发报文对应的目标会话标识对应保存在所述负载分担路径转发表中。
在本实施例中,所述第一类协议报文为RoCE会话的会话连接创建过程中的报文。所述第一类协议报文可以包括RoCE会话的会话连接创建过程中的ConnectRequest、ConnectReply、ReadyToUse协议报文中的任意一项,或者为ConnectRequest及ConnectReply中的至少一项等,具体可以结合实际需求确定。
在确定所述待转发报文为所述第一类协议报文时,所述网络芯片可以通过任意方式,根据该转发报文及预设负载分担算法,确定出该待转发报文对应的目标会话标识所对应的待使用路径。
比如,所述网络芯片可以根据接收到的待转发报文,确定出该待转发报文的目标会话标识及目标会话信息,并结合所述预设负载分担算法,确定出该待转发报文对应的待使用路径,然后将选出的待使用路径与所述目标会话标识对应保存到所述负载分担路径转发表中。如此,网络芯片可以快速确定出待使用路径,无需从其他芯片或其他设备处获得待使用路径。
再比如,所述网络芯片可以通过图7所述方式获得待使用路径并将其保存到所述负载分担路径转发表中。请参照图7,图7为图6中步骤S120包括的子步骤的流程示意图。在本实施例中,步骤S120可以包括子步骤S121~子步骤S122。
子步骤S121,将所述待转发报文发送给CPU,以使所述CPU根据接收到的待转发报文确定该待转发报文对应的目标会话标识,并根据接收到的待转发报文及所述预设负载分担算法确定出该目标会话标识对应的待使用路径。
在本实施例中,所述网络芯片将识别出的为所述第一类协议报文的待转发报文发送给所述CPU。所述CPU可以根据接收到的待转发报文确定出目标会话标识,并确定出目标会话信息,然后根据该目标会话信息、预设负载分担算法及不同负载分担路径组中各路径对应的路径信息,选出所述待转发报文对应的待使用路径。其中,路径信息可以包括出端口、该出端口当前的负载、该出端口对应的延时等。如此,即使使用的预设负载分担算法复杂,也不会增加对网络芯片的要求,可以避免由网络芯片基于预设负载分担算法复杂进行选路时出现的由于网络芯片硬件不满足预设负载分担算法的执行要求导致无法选路的情况,也可以避免由于需要网络芯片基于预设负载分担算法复杂进行选路时导致只能选用高成本的网络芯片的情况。
其中,值得说明的是,若所述CPU可基于一个待转发报文确定出目标会话的目标会话信息,则所述CPU在接收到网络芯片转发的一个待转发报文后即可以完成选路;若所述CPU需要基于多个(比如,两个)待转发报文确定出目标会话信息,则所述CPU在接收到网络芯片转发的一个待转发报文后未完成选路,而是从网络芯片转发的所述多个待转发报文获得完整的目标会话信息后才完成选路。
可选地,所述目标会话标识可以根据IPDA、IPSA、Source QP及Destination QP确定,比如,所述目标会话标识包括IPDA、IPSA、Source QP及Destination QP,或者是利用特定算法根据IPDA、IPSA、Source QP及Destination QP计算出的一个标识字符串等。所述目标会话标识也可以是根据IPDA、IPSA、Source QP、Destination QP即其他信息确定。其中,IPDA表示目的IP地址;IPSA表示源IP地址;InfiniBand协议定义QP(Queue Pair)是会话通信的标识,发送端标识为Source Queue Pair(即Source QP),接收端标识为DestinationQueue Pair(即Destination QP)。
所述目标会话信息中可以包括IPDA,也可以包括IPDA及其他的信息,具体可以结合实际需求确定。所述其他的信息可以包括业务信息,所述业务信息可以是其他的报文所携带的业务所需信息,比如,会话传输的数据量、会话的持续时间、传输带宽等,也即从会话内容中提取出的信息。如此,可以使用复杂的路径选择算法基于会话内容进行选路。其中,在所述目标会话信息中包括业务信息时,所述CPU需要根据多个待转发报文获得该业务信息。所述业务信息可以包括基于字段InfiniBand.DETH、InfiniBand.MADHeader、InifiniBand.CM的值确定出的信息。
所述目标会话标识与所述目标会话信息,可以是相同的,也可能是不同的,具体可以结合实际需求确定。为方便快速获得所述目标会话标识与所述目标会话信息,所述目标会话标识与所述目标会话信息相同,所述目标会话信息可以包括:IPDA、IPSA、Source QP及Destination QP,或者包括:IPDA、IPSA、Source QP、Destination QP及业务信息。
可选地,所述CPU可以通过如下方式获得待使用路径。在下述举例中,所述目标会话标识与所述目标会话信息相同,目标会话标识选用:IPDA、IPSA、Source QP、DestinationQP,路径选择策略为负载最轻路径。
所述CPU可以根据接收到的待转发报文,确定出IPDA、IPSA、Source QP及Destination QP。CPU可以根据网络连接关系进行计算,以确定出发送到目的主机(IPDA标识)可达的所有路径对应的目的端口,进而建立负载分担组。CPU通过比较负载分担组中所有目的端口的空闲带宽,选择空闲带宽最大为当前会话的目的端口,即确定出待转发报文对应的待使用路径。
可选地,在获得所述目标会话信息的情况下,所述CPU还可以根据所述目标会话信息判断是否为所述目标会话选择待使用路径。在确定出为所述目标会话选路的情况下,根据所述目标会话信息及预设负载分担算法进行选路。在确定不为所述目标会话选路的情况下,则不根据所述目标会话信息及预设负载分担算法进行选路。
比如,假设所述目标会话信息中包括业务信息,则所述CPU在进行待使用路径选择之前,可根据业务信息判断是否需要选路。例如,若所述待转发报文对应的目标会话传输的数据量少、或者目标会话的持续时间短,则可以确定不需要选路。
在确定为所述目标会话选路的情况下,所述CPU可以基于预设负载分担算法,根据接收到的待转发报文确定出待使用路径,然后将所述待使用路径及对应的目标会话标识携带于第一指令中发送给所述网络芯片。
子步骤S122,根据接收到的所述CPU的第一指令,将所述第一指令中所包括的所述目标会话标识及对应的待使用路径对应保存到所述负载分担路径转发表中。
所述网络芯片在接收到所述第一指令的情况下,则可以从该第一指令中提取出所述目标会话标识及对应的待使用路径,然后将所述目标会话标识及对应的待使用路径对应保存到所述负载分担路径转发表中。
在本实施例中,作为一种可能的实现方式,所述网络芯片可以将为ConnectRequest协议报文或ConnectReply协议报文的待转发报文发送给所述CPU,以使所述CPU根据所述预设负载分担算法、ConnectRequest协议报文及ConnectReply协议报文获得所述目标会话标识及对应的待使用路径。
在所述目标会话信息为需要基于所述ConnectRequest协议报文及ConnectReply协议报文才能获得的信息时,获得所述目标会话信息及选路则在所述CPU获得所述ConnectRequest协议报文及ConnectReply协议报文之后进行。
由图2可知,在发送ReadyToUse协议报文之后,发送ReadyToUse协议报文的设备则立即开始传输数据。为进一步保证减少路径选择发生在会话数据传输过程的情况,所述网络芯片在识别出ConnectReply协议报文之后,采用拦截转发的方式将为ConnectReply协议报文的待转发报文发送给所述CPU。所述CPU在将选出的待使用路径及对应的目标会话标识配置到所述网络芯片的负载分担路径转发表之后,通过软件转发方式将为ConnectReply协议报文的待转发报文发送给所述网络芯片;网络芯片接收并转发为ConnectReply协议报文的待转发报文。若所述CPU还接收到了RoCE会话的会话连接创建过程中的除ConnectReply协议报文之外的报文,则对该部分报文可立即转发。如此,通过对特定的协议报文进行软转发,可保证芯片下发最优路径早于数据转输。
作为一种可能的实现方式,在所述CPU进行路径维护的情况下,所述网络芯片还可以将为ReadyToUse协议报文发送给所述CPU。所述CPU在将一待使用路径a下发到所述网络芯片中后,可以统计下发待使用路径a到当前的时长,若该时长大于预设时长且仍未接收到该待使用路径a对应的会话中的ReadyToUse协议报文,则可以将之前在网络芯片中配置的待使用路径a对应的条目删除,以节省网络芯片的硬件表项资源。若在该时长未大于预设时长时收到了该待使用路径a对应的会话中的ReadyToUse协议报文,则可以不将之前在网络芯片中配置的待使用路径a对应的条目删除。
在识别出所述待转发为所述第二类协议报文时,可通过图8所示方式确定出所述目标转发路径。请参照图8,图8为图5中步骤S130包括的子步骤的流程示意图。在本实施例中,步骤S130可以包括子步骤S131~子步骤S133。
子步骤S131,判断所述负载分担路径转发表中是否包括所述目标会话标识。
在所述负载分担路径转发表中包括所述目标会话标识的情况下,执行子步骤S132。
子步骤S132,将所述负载分担路径转发表中与所述目标会话标识对应的待使用路径作为目标转发路径。
在所述负载分担路径转发表中不包括所述目标会话标识的情况下,执行子步骤S133。
子步骤S133,将根据所述待转发报文进行路由查找获得的传输路径作为所述目标转发路径。
在本实施例中,可以根据所述目标会话标识在所述负载分担路径转发表中进行查找。若在所述负载分担路径转发表中查找到所述目标会话标识,则可以将所述负载分担路径转发表中与该目标会话标识对应的待使用路径作为目标转发路径。若在所述负载分担路径转发表中未查找到所述目标会话标识,则可以确定在该待转发报文对应的会话的回话数据传输过程之前未针对该待转发报文对应的会话基于预设负载分担算法进行选路,在此情况下,可将路由查找结果作为所述目标转发路径。如此,在因其他因素确定不为某会话提前确定待使用路径的情况下,依然可以保证该会话的会话数据传输过程中的报文能够被正常转发。
其中,路由查找方式可如下所示:首先根据所述待转发报文,获取该待转发报文的IPDA;然后进行传统IP的路由查找,并将查找到的一条传输路径作为所述目标转发路径。
可选地,在负载分担路径转发表中进行查找以获得与目标会话标识对应的待使用路径,与基于待转发报文进行传统IP的路由查找,可以是串行的步骤,也可以是并行的步骤。也即,在负载分担路径转发表中进行查找与路由查找,可以是同时进行的;也可以是先在负载分担路径转发表中进行查找,并在未能查找到的情况进行路由查找。
为避免无用的条目占用网络芯片的硬件表项资源,所述方法还可以包括如图9所示的步骤S150。请参照图9,图9本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之三。在本实施例中,在步骤S110之后,所述方法还可以包括步骤S150。
步骤S150,在所述待转发报文为RoCE会话中的DisConnectReply协议报文,将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除。
可选地,作为一种可能的实现方式,所述网络芯片在识别出待转发报文为DisConnectReply协议报文时,可以根据该待转发报文确定出目标会话标识,然后在所述负载分担路径转发表中查找,若查找到与目标会话标识对应的条目,则将该条目作为目标条目,并将该目标条目删除。如此,相较于统计各条目的未使用时长,并在未使用时长超时时删除的方式,本申请实施例提供的上述方式可以精准控制会话转发路径的删除时机,可以在确保在会话结束的时候,将对应的条目删除。
可选地,作为另一种可能的实现方式,所述负载分担路径转发表中条目的删除可由所述CPU负责。请参照图10,图10为图9中步骤S150包括的子步骤的流程示意图。在本实施例中,步骤S150可以包括子步骤S151~子步骤S152。
子步骤S151,在所述待转发报文为DisConnectReply协议报文时,将所述待转发报文发送给CPU。
子步骤S152,接收所述CPU根据为DisConnectReply协议报文的所述待转发报文发送的第二指令,并根据所述第二指令将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除。
在本实施例中,所述网络芯片在识别到为DisConnectReply协议报文的待转发报文时,可以将该待转发报文转发为所述CPU。所述CPU在接收到为DisConnectReply协议报文的待转发报文时,由于DisConnectReply协议报文是会话的最后一个报文,因此所述CPU可以确定该待转发报文对应的目标会话即将结束,在此情况下,所述CPU可以根据该待转发报文,确定出该待转发报文对应的目标会话标识,并根据该目标会话标识下发第二指令。其中,所述第二指令中可以包括该目标会话表示,该第二指令用于指示删除所述负载分担路径转发表中与所述目标会话标识对应的条目。所述网络芯片在接收到所述第二指令后,可根据所述第二指令将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除。
在本实施例中,针对RoCE的流量使用有状态的负载分担策略,分离转发与路径维护,CPU完成有状态的复杂高效的路径维护,网络芯片则根据CPU指定的路径用于RoCE会话的数据传输过程,从而实现RoCE流量在网络中传输的负载分担效果,提高RoCE的传输性能,同时减轻网络芯片的实现复杂度。
请参照图11,图11为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之四。所述方法可应用于网络设备中通信连接的网络芯片及CPU。下面对图11所示的基于RoCE会话的负载分担方法的具体流程进行阐述。在本实施例中,该方法可以包括步骤S210及步骤S230~步骤S240。
步骤S210,网络芯片接收待转发报文,并识别所述待转发报文的类型。
步骤S220,所述网络芯片在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径。
其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文。所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定。
步骤S240,所述网络芯片根据所述目标转发路径转发所述待转发报文。
请参照图12,图12为本申请实施例提供的基于RoCE会话的负载分担方法的流程示意图之五。在本实施例中,在步骤S210之后,所述方法还可以包括步骤S221~步骤S224。
步骤S221,在确定所述待转发报文为第一类协议报文时,所述网络芯片将所述待转发报文转发给CPU。
其中,所述第一类协议报文为RoCE会话的会话连接创建过程中的报文。
步骤S222,所述CPU根据接收到的所述待转发报文得到目标会话信息,并根据所述目标会话信息确定是否为所述待转发报文对应的目标会话选路。
步骤S223,所述CPU在确定为所述目标会话选路的情况下,根据所述目标会话信息及预设负载分担算法进行选路,并将确定出的待使用路径与对应的目标会话标识下发至所述负载分担路径转发表中。
步骤S224,所述CPU在确定不为所述目标会话选路的情况下,不根据所述目标会话信息及预设负载分担算法进行选路。
可选地,在本实施例中,所述网络芯片在所述待转发报文为DisConnectReply协议报文时,可以将所述待转发报文发送给CPU。所述CPU根据为DisConnectReply协议报文的所述待转发报文,向所述网络芯片发送的第二指令。所述网络芯片接收所述CPU根据为DisConnectReply协议报文的所述待转发报文发送的第二指令,并根据所述第二指令将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除。
在本实施例中,关于应用于网络芯片及CPU的基于RoCE会话的负载分担方法的具体说明,可以参照上文对图5~图11所示的基于RoCE会话的负载分担方法的说明,在此不再赘述。
下面结合图13,对上述基于RoCE会话的负载分担方法进行举例说明。该方法分为三部分:创建负载分担路径转发表中的条目、基于负载分担路径转发表转发数据、删除负载分担路径转发表中的条目。其中,网络芯片中包括:RoCE报文识别模块及路由查找模块,CPU的软件系统包括:RoCE会话信息提取模块、RoCE会话负载分担路径选择模块、负载分担路径转发表维护模块及RoCE会话报文软转发模块。
创建负载分担路径转发表中的条目:
S11.通过RoCE报文识别模块进行报文字段匹配,以识别出RoCE会话的ConnectRequest、ConnectReply协议报文,并将识别出的ConnectRequest、ConnectReply协议报文重定向转发给CPU软件系统。
S12.CPU软件系统中的RoCE会话信息提取模块从ConnectRequest、ConnectReply协议报文中提取出RoCE会话标识信息。
该会话标识信息包括:IPDA、IPSA、Source QP、Destination QP、其他报文携带的业务所需信息(即业务信息)。该会话标识信息可以是所述RoCE会话信息提取模块从ConnectRequest、ConnectReply两个协议报文中提取得到的。
S13.RoCE会话负载分担路径选择模块根据会话标识信息及路径信息,基于软件策略算法选择一条路径作为最优路径。
可选地,数据传输量少、会话持续时间等情况下,所述RoCE会话负载分担路径选择模块可不为接收到的报文所对应的会话进行最优路径选择。
S14.负载分担路径转发表维护模块将提取的RoCE会话标识信息及选出的最优路径下发到网络芯片的负载分担路径转发表中。
S15.在确定步骤S14完成,即确定最优路径成功下发至网络芯片的负载分担路径转发表中后,RoCE会话报文软转发模块转发ConnectReply报文。若CPU接收RoCE会话的会话连接创建过程中的其他报文,RoCE会话报文软转发模块可以立即转发该其他报文。
删除负载分担路径转发表中的条目:
S21.RoCE报文识别模块进行报文字段匹配,以识别出RoCE数据传输报文;在识别出RoCE数据传输报文时,提取会话标识信息。
该会话标识信息包括:IPDA、IPSA、Source QP、Destination QP、其他报文携带的业务所需信息。
S22.网络芯片根据会话标识信息在负载分担路径转发表中进行查找,以获得与会话标识信息对应的路径作为转发路径b。
S23.路由查找模块根据RoCE数据传输报文进行传统IP的路由查找,得到转发路径c。
S24.优先选择转发路径b转发RoCE数据传输报文。
删除负载分担路径转发表中的条目:
S31.通过RoCE报文识别模块进行报文字段匹配,以识别出RoCE会话的ConnectReply协议报文,并将识别到的ConnectReply协议报文重定向转发至CPU软件系统。
S32.CPU软件系统中的RoCE会话信息提取模块从ConnectRequest、ConnectReply协议报文中提取出RoCE会话标识信息。
该会话标识信息包括:IPDA、IPSA、Source QP、Destination QP、其他报文携带的业务所需信息。
S33.负载分担路径转发表维护模块根据提取的RoCE会话标识信息,删除所述网络芯片的负载分担路径转发表中相应的条目。
S34.RoCE会话报文软转发模块转发DisConnectReply报文。若CPU接收了RoCE会话的会话连接关闭过程中的其他报文,RoCE会话报文软转发模块可以立即转发该其他报文。
可选地,可以在确定S33完成,即确定负载分担路径转发表中相应的条目被删除之后,RoCE会话报文软转发模块转发DisConnectReply报文。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种基于RoCE会话的负载分担装置200的实现方式,可选地,该基于RoCE会话的负载分担装置200可以采用上述图4所示的电子设备100的器件结构。进一步地,请参照图14,图14为本申请实施例提供的基于RoCE会话的负载分担装置200的方框示意图之一。需要说明的是,本实施例所提供的基于RoCE会话的负载分担装置200,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。在本实施例中,所述基于RoCE会话的负载分担装置200可以包括:识别模块210、路径确定模块230及转发模块240。
所述识别模块210,用于接收待转发报文,并识别所述待转发报文的类型。
所述路径确定模块230,用于在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径。
其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文。所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定。
所述转发模块240,用于根据所述目标转发路径转发所述待转发报文。
请参照图15,图15为本申请实施例提供的基于RoCE会话的负载分担装置200的方框示意图之二。在本实施例中,所述基于RoCE会话的负载分担装置200还可以包括路径维护模块220。所述路径维护模块220,用于在确定所述待转发报文为第一类协议报文时,获得根据所述待转发报文及所述预设负载分担算法确定出的待使用路径,并将确定出的待使用路径与所述待转发报文对应的目标会话标识对应保存在所述负载分担路径转发表中。其中,所述第一类协议报文为RoCE会话的会话连接创建过程中的报文。
在本实施例中,所述路径维护模块220,还用于在所述待转发报文为RoCE会话中的DisConnectReply协议报文,将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除。
可选地,上述模块可以软件或固件(Firmware)的形式存储于图4所示的存储器110中或固化于电子设备100的操作系统(Operating System,OS)中,并可由图4中的处理器120执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器110中。
本申请实施例还提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的基于RoCE会话的负载分担方法。
综上所述,本申请实施例提供一种基于RoCE会话的负载分担方法、装置、电子设备及可读存储介质,在接收到待转发报文的情况下,若通过报文类型识别确定该待转发报文为第二类协议报文时,则根据待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,并根据该目标转发路径转发接收到的待转发报文。其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定。上述方式在接收到待转发报文时,根据在该报文对应的会话数据传输过程之前进行的选路的结果进行报文转发,可减少选路发生在RoCE会话数据传输过程中的情况,从而减少报文乱序导致报文需重传的情况,进而提高RoCE的传输性能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的可选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种基于RoCE会话的负载分担方法,其特征在于,所述方法包括:
接收待转发报文,并识别所述待转发报文的类型;
在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定;
根据所述目标转发路径转发所述待转发报文。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定所述待转发报文为第一类协议报文时,获得根据所述待转发报文及所述预设负载分担算法确定出的待使用路径,并将确定出的待使用路径与所述待转发报文对应的目标会话标识对应保存在所述负载分担路径转发表中,其中,所述第一类协议报文为RoCE会话的会话连接创建过程中的报文。
3.根据权利要求2所述的方法,其特征在于,所述获得根据所述待转发报文及所述预设负载分担算法确定出的待使用路径,并将确定出的待使用路径与所述待转发报文对应的目标会话标识对应保存在所述负载分担路径转发表中,包括:
将所述待转发报文发送给中央处理器CPU,以使所述CPU根据接收到的待转发报文确定该待转发报文对应的目标会话标识,并根据接收到的待转发报文及所述预设负载分担算法确定出该目标会话标识对应的待使用路径;
根据接收到的所述CPU的第一指令,将所述第一指令中所包括的所述目标会话标识及对应的待使用路径对应保存到所述负载分担路径转发表中。
4.根据权利要求3所述的方法,其特征在于,所述将所述待转发报文发送给中央处理器CPU,以使所述CPU根据接收到的待转发报文确定该待转发报文对应的目标会话标识,并根据所述预设负载分担算法确定出该目标会话标识对应的待使用路径,包括:
将为ConnectRequest协议报文或ConnectReply协议报文的待转发报文发送给所述CPU,以使所述CPU根据所述预设负载分担算法、ConnectRequest协议报文及ConnectReply协议报文获得所述目标会话标识及对应的待使用路径,其中,针对ConnectReply协议报文,采用拦截转发方式;
接收并转发所述CPU在所述第一指令之后发送的为ConnectReply协议报文的待转发报文。
5.根据权利要求2所述的方法,其特征在于,在根据基于所述待转发报文获得的目标会话信息确定不为所述待转发报文对应的目标会话选路时,所述根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,包括:
判断所述负载分担路径转发表中是否包括所述目标会话标识;
在所述负载分担路径转发表中不包括所述目标会话标识的情况下,将根据所述待转发报文进行路由查找获得的传输路径作为所述目标转发路径。
6.根据权利要求1-5中任意一项所述的方法,其特征在于,所述方法还包括:
在所述待转发报文为RoCE会话中的DisConnectReply协议报文,将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除。
7.根据权利要求6所述的方法,其特征在于,所述在所述待转发报文为RoCE会话中的DisConnectReply协议报文,将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除,包括:
在所述待转发报文为DisConnectReply协议报文时,将所述待转发报文发送给CPU;
接收所述CPU根据为DisConnectReply协议报文的所述待转发报文发送的第二指令,并根据所述第二指令将所述负载分担路径转发表中与所述目标会话标识对应的目标条目删除。
8.一种基于RoCE会话的负载分担方法,其特征在于,所述方法包括:
网络芯片接收待转发报文,并识别所述待转发报文的类型;
所述网络芯片在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定;
所述网络芯片根据所述目标转发路径转发所述待转发报文。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在确定所述待转发报文为第一类协议报文时,所述网络芯片将所述待转发报文转发给CPU,其中,所述第一类协议报文为RoCE会话的会话连接创建过程中的报文;
所述CPU根据接收到的所述待转发报文得到目标会话信息,并根据所述目标会话信息确定是否为所述待转发报文对应的目标会话选路;
所述CPU在确定为所述目标会话选路的情况下,根据所述目标会话信息及预设负载分担算法进行选路,并将确定出的待使用路径与对应的目标会话标识下发至所述负载分担路径转发表中;
所述CPU在确定不为所述目标会话选路的情况下,不根据所述目标会话信息及预设负载分担算法进行选路。
10.一种基于RoCE会话的负载分担装置,其特征在于,所述装置包括:
识别模块,用于接收待转发报文,并识别所述待转发报文的类型;
路径确定模块,用于在确定所述待转发报文为第二类协议报文时,根据所述待转发报文对应的目标会话标识及负载分担路径转发表确定目标转发路径,其中,所述第二类协议报文为RoCE会话的会话数据传输过程中的报文,所述负载分担路径转发表的各条目中包括会话标识及该会话标识对应的待使用路径,一个会话标识对应的待使用路径在该会话标识对应的会话数据传输过程之前根据该会话标识对应的会话信息及预设负载分担算法确定;
转发模块,用于根据所述目标转发路径转发所述待转发报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310350413.1A CN116319934A (zh) | 2023-04-04 | 2023-04-04 | 基于RoCE会话的负载分担方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310350413.1A CN116319934A (zh) | 2023-04-04 | 2023-04-04 | 基于RoCE会话的负载分担方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116319934A true CN116319934A (zh) | 2023-06-23 |
Family
ID=86797818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310350413.1A Pending CN116319934A (zh) | 2023-04-04 | 2023-04-04 | 基于RoCE会话的负载分担方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116319934A (zh) |
-
2023
- 2023-04-04 CN CN202310350413.1A patent/CN116319934A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200358886A1 (en) | Data Transmission Method, Apparatus, And System | |
CN113709057B (zh) | 网络拥塞的通告方法、代理节点、网络节点及计算机设备 | |
US8938553B2 (en) | Cooperative proxy auto-discovery and connection interception through network address translation | |
US7107609B2 (en) | Stateful packet forwarding in a firewall cluster | |
US8306039B2 (en) | Methods and systems for automatic transport path selection for multi-homed entities in stream control transmission protocol | |
KR101405340B1 (ko) | 애플리케이션을 위한 네트워크-인식 어댑터 | |
US6795866B1 (en) | Method and apparatus for forwarding packet fragments | |
EP3593498B1 (en) | Router device using flow duplication | |
KR20030094851A (ko) | 아이피 라우터에서 VoIP 트래픽에 대한 QoS를제공하는 장치 및 포워딩방법 | |
CN106576108B (zh) | 通信系统中的通信方法和设备及系统 | |
US6327626B1 (en) | Method and apparatus for MSS spoofing | |
CN110191066B (zh) | 一种确定最大传输单元pmtu的方法、设备及系统 | |
CN112929264B (zh) | 业务流量传输方法、系统及网络设备 | |
WO2020063338A1 (zh) | 一种实现数据传输的方法、装置和系统 | |
WO2021008591A1 (zh) | 数据传输方法、装置及系统 | |
US9917768B2 (en) | System and method for reflecting FEC route information | |
US20070291782A1 (en) | Acknowledgement filtering | |
CN113472646B (zh) | 一种数据传输方法、节点、网络管理器及系统 | |
CN113965521B (zh) | 数据包的传输方法、服务器及存储介质 | |
CN115766605A (zh) | 网络拥塞控制方法、装置及系统 | |
CN107483628B (zh) | 基于dpdk的单向代理方法及系统 | |
US9537764B2 (en) | Communication apparatus, control apparatus, communication system, communication method, method for controlling communication apparatus, and program | |
CN112838983B (zh) | 数据传输方法、系统、设备、代理服务器及存储介质 | |
WO2023186109A1 (zh) | 节点访问方法以及数据传输系统 | |
CN107231316B (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 |