CN110830386A - 报文保序的方法、装置和系统 - Google Patents
报文保序的方法、装置和系统 Download PDFInfo
- Publication number
- CN110830386A CN110830386A CN201911110264.1A CN201911110264A CN110830386A CN 110830386 A CN110830386 A CN 110830386A CN 201911110264 A CN201911110264 A CN 201911110264A CN 110830386 A CN110830386 A CN 110830386A
- Authority
- CN
- China
- Prior art keywords
- data frame
- message
- kernel
- buffer
- interface
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000004321 preservation Methods 0.000 title abstract description 21
- 230000005540 biological transmission Effects 0.000 claims abstract description 255
- 239000000872 buffer Substances 0.000 claims abstract description 182
- 230000008569 process Effects 0.000 claims abstract description 23
- 239000013307 optical fiber Substances 0.000 claims abstract description 22
- 238000002360 preparation method Methods 0.000 claims 3
- 230000009286 beneficial effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/25—Arrangements specific to fibre transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/31—Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开公开了一种报文保序的方法、装置和系统,属于单向数据传输领域。包括:在报文发送端,网络接口接收多个报文,将多个报文分配到各个内核;各个内核对分配到内核的报文进行处理,并将报文与内核标识一起封装成数据帧,存储在内核对应的缓存队列中;主机将各个缓存队列中的数据帧发送给单向传输卡;单向传输卡将数据帧转换为传输信号,并将传输信号发送到光纤上;在报文接收端,单向传输卡从光纤上接收传输信号,将传输信号转换为数据帧;主机根据数据帧中内核标识,将数据帧中的报文存储在数据帧中内核标识所属的内核对应的缓存队列中;内核读取内核对应的缓存队列中的报文进行处理;网络接口将报文发送出去。本公开可实现报文保序。
Description
技术领域
本公开涉及单向数据传输领域,特别涉及一种报文保序的方法、装置和系统。
背景技术
报文(英文:message)是网络中交换与传输的数据单元,即站点一次性要发送的数据块。报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变。传输报文时,会在报文头添加一些控制信息,将报文封装成组、包、帧来传输。
通常发送端按照时间的先后顺序将报文依次发送出去,报文经过若干中间节点的转发到达接收端,但是接收端接收报文的顺序有可能与发送端发送报文的顺序不同,产生报文乱序。
在普通的双向传输的网络上,网络设备一般采用基于顺序号、窗口、重传机制等方式保证在接收端数据的正确性和完整性。
在实现本公开的过程中,发明人发现现有技术至少存在以下问题:
在基于单向传输卡的单向传输链路上,没有网络回路,采用重传机制的传输控制协议(英文:Transport Control Protocol,简称:TCP)将不能正常工作,如果在传输过程中出现报文乱序,接收端无法正确恢复出数据。在基于单向传输卡的单向传输链路上,基于顺序号的用户数据报协议(英文:User Data Protocol,简称:UDP)的数据,由于接收端缓冲区大小的限制,可能也会因为乱序导致正确的报文无法在报文接收端的接收窗口内到达而影响数据的正确接收。
发明内容
本公开实施例提供了一种报文保序的方法、装置和系统,可以实现报文保序,保证单向传输链路上数据传输的可靠性。所述技术方案如下:
第一方面,本公开实施例提供了一种报文保序的方法,所述方法适用于报文发送端的第一主机,所述第一主机包括第一网络接口、由多个第一内核组成的多核处理器、与所述多个第一内核一一对应的多个第一缓存队列、以及第一单向传输卡;各个所述第一内核分别与所述第一网络接口连接,各个所述第一缓存队列与所述第一缓存队列对应的第一内核连接,所述第一单向传输卡分别与所述多个第一缓存队列连接;所述方法包括:
所述第一网络接口接收多个报文,将所述多个报文分配到各个所述第一内核;
各个所述第一内核对分配到所述第一内核的报文进行处理,并将处理后的报文与所述内核的标识一起封装成数据帧,存储在所述第一内核对应的第一缓存队列中;
所述第一主机将各个所述第一缓存队列中的数据帧发送给所述第一单向传输卡;
所述第一单向传输卡将所述数据帧转换为传输信号,并将所述传输信号发送到光纤上。
可选地,所述第一单向传输卡包括第一总线接口、多个第三缓存队列、与所述多个第三缓存队列一一对应的多个第一处理电路、合并电路和发送接口,所述第一总线接口分别与所述多个第一缓存队列连接,所述多个第三缓存队列分别与所述第一总线接口连接,各个所述第一处理电路与所述第一处理电路对应的第三缓存队列连接,所述合并电路分别与所述多个第一处理电路连接,所述发送接口与所述合并电路连接;
所述第一单向传输卡将所述数据帧转换为传输信号发送到光纤上,包括:
所述第一总线接口依次接收多个所述数据帧,按照接收多个所述数据帧的先后顺序对各个所述数据帧设定标号,并将对所述数据帧设定的标号封装在所述数据帧中;
所述第一单向传输卡将多个所述数据帧存储在所述多个第三缓存队列中;
各个所述第一处理电路读取所述第一处理电路对应的第三缓存队列中的数据帧,将所述数据帧转换为传输信号;
所述合并电路将所述多个第一处理电路转换的传输信号合并到一个队列中;
所述发送接口将合并后的所述传输信号依次发送出去。
第二方面,本公开实施例提供了一种报文保序的方法,所述方法适用于报文接收端的第二主机,所述第二主机包括第二网络接口、由多个第二内核组成的多核处理器、以及与所述多个第二内核一一对应的多个第二缓存队列、以及第二单向传输卡;各个所述第二内核分别与所述第二网络接口连接,各个所述第二缓存队列与所述第二缓存队列对应的第二内核连接,所述第二单向传输卡分别与所述多个第二缓存队列连接;所述方法包括:
所述第二单向传输卡从光纤上接收传输信号,将所述传输信号转换为数据帧;其中,所述数据帧包括报文和内核的标识;
所述第二主机根据所述数据帧中内核的标识,将所述数据帧中的报文存储在所述数据帧中内核的标识对应的第二内核对应的第二缓存队列中;
所述第二内核读取所述第二内核对应的第二缓存队列中的报文进行处理;
所述第二网络接口将处理后的所述报文发送出去。
可选地,所述第二单向传输卡包括第二总线接口、多个第四缓存队列、与所述多个第四缓存队列一一对应的多个第二处理电路、分配电路和接收接口,所述第二总线接口分别与所述多个第二缓存队列连接,所述多个第四缓存队列分别与所述第二总线接口连接,各个所述第二处理电路与所述第二处理电路对应的第四缓存队列连接,所述分配电路分别与所述多个第二处理电路连接,所述接收接口与所述分配电路连接;
所述第二单向传输卡从光纤上接收传输信号,将所述传输信号转换为数据帧,包括:
所述接收接口接收所述传输信号;
所述分配电路将所述传输信号分配到所述多个第二处理电路;
各个所述第二处理电路将分配到所述第二处理电路的传输信号转换为数据帧,存储在所述第二处理电路对应的第四缓存队列中;所述数据帧包括报文、内核的标识和标号;
所述第二总线接口按照所述多个第四缓存队列中的数据帧中标号从小到大的顺序,将所述多个第四缓存队列中的数据帧依次发送出去。
第三方面,本公开实施例提供了一种报文保序的装置,所述装置为报文发送端的第一主机,所述第一主机包括第一网络接口、由多个第一内核组成的多核处理器、与所述多个第一内核一一对应的多个第一缓存队列、以及第一单向传输卡;各个所述第一内核分别与所述第一网络接口连接,各个所述第一缓存队列与所述第一缓存队列对应的第一内核连接,所述第一单向传输卡分别与所述多个第一缓存队列连接;
所述第一网络接口,用于接收多个报文,将所述多个报文分配到各个所述第一内核;
各个所述第一内核,用于对分配到所述第一内核的报文进行处理,并将处理后的报文与所述内核的标识一起封装成数据帧,存储在所述第一内核对应的第一缓存队列中;
所述第一主机,用于将各个所述第一缓存队列中的数据帧发送给所述第一单向传输卡;
所述第一单向传输卡,用于将所述数据帧转换为传输信号,并将所述传输信号发送到光纤上。
可选地,所述第一单向传输卡包括第一总线接口、多个第三缓存队列、与所述多个第三缓存队列一一对应的多个第一处理电路、合并电路和发送接口,所述第一总线接口分别与所述多个第一缓存队列连接,所述多个第三缓存队列分别与所述第一总线接口连接,各个所述第一处理电路与所述第一处理电路对应的第三缓存队列连接,所述合并电路分别与所述多个第一处理电路连接,所述发送接口与所述合并电路连接;
所述第一总线接口,用于依次接收多个所述数据帧,按照接收多个所述数据帧的先后顺序对各个所述数据帧设定标号,并将对所述数据帧设定的标号封装在所述数据帧中;
所述第一单向传输卡,用于将多个所述数据帧存储在所述多个第三缓存队列中;
各个所述第一处理电路,用于读取所述第一处理电路对应的第三缓存队列中的数据帧,将所述数据帧转换为传输信号;
所述合并电路,用于将所述多个第一处理电路转换的传输信号合并到一个队列中;
所述发送接口,用于将合并后的所述传输信号依次发送出去。
第四方面,本公开实施例提供了一种报文保序的装置,所述装置为报文接收端的第二主机,所述第二主机包括第二网络接口、由多个第二内核组成的多核处理器、以及与所述多个第二内核一一对应的多个第二缓存队列、以及第二单向传输卡;各个所述第二内核分别与所述第二网络接口连接,各个所述第二缓存队列与所述第二缓存队列对应的第二内核连接,所述第二单向传输卡分别与所述多个第二缓存队列连接;
所述第二单向传输卡,用于从光纤上接收传输信号,将所述传输信号转换为数据帧;其中,所述数据帧包括报文和内核的标识;
所述第二主机,用于根据所述数据帧中内核的标识,将所述数据帧中的报文存储在所述数据帧中内核的标识对应的第二内核对应的第二缓存队列中;
所述第二内核,用于读取所述第二内核对应的第二缓存队列中的报文进行处理;
所述第二网络接口,用于将处理后的所述报文发送出去。
可选地,所述第二单向传输卡包括第二总线接口、多个第四缓存队列、与所述多个第四缓存队列一一对应的多个第二处理电路、分配电路和接收接口,所述第二总线接口分别与所述多个第二缓存队列连接,所述多个第四缓存队列分别与所述第二总线接口连接,各个所述第二处理电路与所述第二处理电路对应的第四缓存队列连接,所述分配电路分别与所述多个第二处理电路连接,所述接收接口与所述分配电路连接;
所述接收接口,用于接收所述传输信号;
所述分配电路,用于将所述传输信号分配到所述多个第二处理电路;
各个所述第二处理电路,用于将分配到所述第二处理电路的传输信号转换为数据帧,存储在所述第二处理电路对应的第四缓存队列中;所述数据帧包括报文、内核的标识和标号;
所述第二总线接口,用于按照所述多个第四缓存队列中的数据帧中标号从小到大的顺序,将所述多个第四缓存队列中的数据帧依次发送出去。
第五方面,本公开实施例提供了一种报文保序的系统,所述系统包括报文发送端的第一主机和报文接收端的第二主机;所述第一主机包括第一网络接口、由多个第一内核组成的多核处理器、与所述多个第一内核一一对应的多个第一缓存队列、以及第一单向传输卡;各个所述第一内核分别与所述第一网络接口连接,各个所述第一缓存队列与所述第一缓存队列对应的第一内核连接,所述第一单向传输卡分别与所述多个第一缓存队列连接;所述第二主机包括第二网络接口、由多个第二内核组成的多核处理器、以及与所述多个第二内核一一对应的多个第二缓存队列、以及第二单向传输卡;各个所述第二内核分别与所述第二网络接口连接,各个所述第二缓存队列与所述第二缓存队列对应的第二内核连接,所述第二单向传输卡分别与所述多个第二缓存队列连接;
所述第一网络接口,用于接收多个报文,将所述多个报文分配到各个所述第一内核;
各个所述第一内核,用于对分配到所述第一内核的报文进行处理,并将处理后的报文与所述内核的标识一起封装成数据帧,存储在所述第一内核对应的第一缓存队列中;
所述第一主机,用于将各个所述第一缓存队列中的数据帧发送给所述第一单向传输卡;
所述第一单向传输卡,用于将所述数据帧转换为传输信号,并将所述传输信号发送到光纤上;
所述第二单向传输卡,用于从光纤上接收传输信号,将所述传输信号转换为数据帧;其中,所述数据帧包括报文和内核的标识;
所述第二主机,用于根据所述数据帧中内核的标识,将所述数据帧中的报文存储在所述数据帧中内核的标识对应的第二内核对应的第二缓存队列中;
所述第二内核,用于读取所述第二内核对应的第二缓存队列中的报文进行处理;
所述第二网络接口,用于将处理后的所述报文发送出去。
可选地,所述第一单向传输卡包括第一总线接口、多个第三缓存队列、与所述多个第三缓存队列一一对应的多个第一处理电路、合并电路和发送接口,所述第一总线接口分别与所述多个第一缓存队列连接,所述多个第三缓存队列分别与所述第一总线接口连接,各个所述第一处理电路与所述第一处理电路对应的第三缓存队列连接,所述合并电路分别与所述多个第一处理电路连接,所述发送接口与所述合并电路连接;所述第二单向传输卡包括第二总线接口、多个第四缓存队列、与所述多个第四缓存队列一一对应的多个第二处理电路、分配电路和接收接口,所述第二总线接口分别与所述多个第二缓存队列连接,所述多个第四缓存队列分别与所述第二总线接口连接,各个所述第二处理电路与所述第二处理电路对应的第四缓存队列连接,所述分配电路分别与所述多个第二处理电路连接,所述接收接口与所述分配电路连接;
所述第一总线接口,用于依次接收多个所述数据帧,按照接收多个所述数据帧的先后顺序对各个所述数据帧设定标号,并将对所述数据帧设定的标号封装在所述数据帧中;
所述第一单向传输卡,用于将多个所述数据帧存储在所述多个第三缓存队列中;
各个所述第一处理电路,用于读取所述第一处理电路对应的第三缓存队列中的数据帧,将所述数据帧转换为传输信号;
所述合并电路,用于将所述多个第一处理电路转换的传输信号合并到一个队列中;
所述发送接口,用于将合并后的所述传输信号依次发送出去;
所述接收接口,用于接收所述传输信号;
所述分配电路,用于将所述传输信号分配到所述多个第二处理电路;
各个所述第二处理电路,用于将分配到所述第二处理电路的传输信号转换为数据帧,存储在所述第二处理电路对应的第四缓存队列中;所述数据帧包括报文、内核的标识和标号;
所述第二总线接口,用于按照所述多个第四缓存队列中的数据帧中标号从小到大的顺序,将所述多个第四缓存队列中的数据帧依次发送出去。
本公开实施例提供的技术方案带来的有益效果是:
通过在报文发送端中,将处理报文的内核的标识与报文一起封装成数据帧,这样在报文接收端中,可以根据数据帧中内核的标识,将报文分配到内核的标识所属的内核进行处理,使得同一个报文在报文发送端和报文接收端分配到相同标识的内核处理,从而保证作为报文接收端的主机中报文的先后顺序与作为报文发送端的主机中报文的先后顺序一致,实现报文保序,有利于提高网络传输性能,特别适用于单向传输链路的数据传输。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例提供的一种报文保序的方法的应用场景图;
图2是本公开实施例提供的一种报文保序的方法的流程图;
图3是本公开实施例提供的一种报文保序的方法的流程图;
图4是本公开实施例提供的一种单向传输卡结构下实现报文保序的示意图;
图5是本公开实施例提供的另一种单向传输卡结构下实现报文保序的示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
下面先简单介绍一下本公开实施例提供的一种报文保序的方法的应用场景。目前处理器性能的增长速度远慢于数据增长对处理器性能的要求,处理器本身已无法满足高性能计算应用软件的性能要求,采用的解决方法是采用专用协处理器的异构计算方式来提升计算性能,如将数据传输相关的运算交由单向传输卡来处理,处理器本身专注于数据所包含信息的处理。另外,处理器可以采用多内核处理器,即在一个处理器中集成至少两个计算引擎(内核),这样既能有效提高处理器的处理速度和处理性能,又不会出现如单核处理器存在的提高速度会产生过多热量,却无法带来相应性能改善的问题,以及速度提高导致处理器价格也大幅提高的问题。并且,单向传输卡可以提升网络的安全性。
图1为本公开实施例提供的一种报文保序的方法的应用场景图。参见图1,作为报文发送端的第一主机10包括第一网络接口11、由多个第一内核12组成的多核处理器、与多个第一内核12一一对应的多个第一缓存器13、以及第一单向传输卡14;第一网络接口11用于从本地用户接收报文提供接口;多个第一内核12分别与第一网络接口11连接,用于分别对不同的报文进行处理;各个第一缓存器13分别与对应的第一内核12连接,用于存储对应的第一内核12处理的报文;第一单向传输卡14分别与多个第一缓存器13连接,作为主机的网络设备,为多核处理器分担数据传输相关的运算,如加密、编码等,实现报文在两个主机之间的传输。
作为报文接收端的第二主机20包括第二网络接口21、由多个第二内核22组成的多核处理器、与多个第二内核22一一对应的多个第二缓存器23、以及第二单向传输卡24。第二网络接口21用于向本地用户发送报文提供接口;多个第二内核22分别与第二网络接口21连接,用于分别对不同的报文进行处理;各个第二缓存器23分别与对应的第二内核22连接,用于存储对应的第二内核22处理的报文;第二单向传输卡24分别与多个第二缓存器23连接,作为主机的网络设备,为多核处理器分担数据传输相关的运算,如解密、解码等,实现报文在两个主机之间的传输。
在实际应用中,由于多核处理器由多个内核组成,各个内核处理报文的时间不同,因此在同一个主机中,单向传输卡中报文的先后顺序可能与网络接口中报文的先后顺序不同,进而造成作为报文接收端的第一主机10中报文的先后顺序与作为报文发送端的第二主机20中报文的先后顺序不同,即产生报文乱序。例如,在作为报文发送端的第一主机10中,虽然第一网络接口11先接收到第一报文,后接收到第二报文,但是第一报文分配到的第一内核12处理第一报文的时间比第二报文分配到的第一内核12处理第二报文的时间长,导致第一单向传输卡14先发出第二报文,后发出第一报文,因此在作为报文接收端的第二主机20中,会先接收到第二报文,后接收到第一报文,作为报文接收端的第一主机10中报文的先后顺序与作为报文发送端的第二主机200中报文的先后顺序不同,产生报文乱序。
为了解决上述问题,本公开实施例提供了一种报文保序的方法,该方法适用于报文发送端的第一主机。第一主机包括第一网络接口、由多个第一内核组成的多核处理器、与多个第一内核一一对应的多个第一缓存队列、以及第一单向传输卡;各个第一内核分别与第一网络接口连接,各个第一缓存队列与第一缓存队列对应的第一内核连接,第一单向传输卡分别与多个第一缓存队列连接。图2为本公开实施例提供的一种报文保序的方法的流程图。参见图2,该方法包括:
步骤101:第一网络接口接收多个报文,将多个报文分配到各个第一内核。
步骤102:各个第一内核对分配到第一内核的报文进行处理,并将处理后的报文与内核的标识一起封装成数据帧,存储在第一内核对应的第一缓存队列中。
步骤103:第一主机将各个第一缓存队列中的数据帧发送给第一单向传输卡。
步骤104:第一单向传输卡将数据帧转换为传输信号,并将传输信号发送到光纤上。
本公开实施例通过在报文发送端中,将处理报文的内核的标识与报文一起封装成数据帧,这样在报文接收端中,可以根据数据帧中内核的标识,将报文分配到内核的标识对应的内核进行处理,使得同一个报文在报文发送端和报文接收端分配到相同标识的内核处理,从而保证作为报文接收端的主机中报文的先后顺序与作为报文发送端的主机中报文的先后顺序一致,实现报文保序,有利于提高网络传输性能,特别适用于单向传输链路的数据传输。
而且内核对应的缓存器采用缓存队列实现,队列的读写采用先进先出的方式,可以保证同一个内核处理的各个数据帧的先后顺序不变,实现报文保序,有利于提高网络传输性能,特别适用于单向传输链路的数据传输。
相应地,本公开实施例提供了一种报文保序的方法,该方法适用于报文接收端的第二主机。第二主机包括第二网络接口、由多个第二内核组成的多核处理器、与多个第二内核一一对应的多个第二缓存队列、以及第二单向传输卡;各个第二内核分别与第二网络接口连接,各个第二缓存队列与第二缓存队列对应的内核连接,第二单向传输卡分别与多个第二缓存队列连接。图3为本公开实施例提供的一种报文保序的方法的流程图。参见图3,该方法包括:
步骤201:第二单向传输卡从光纤上接收传输信号,将传输信号转换为数据帧,并将数据帧发送给主机。
在本实施例中,数据帧包括报文和内核的标识。
步骤202:第二主机根据数据帧中内核的标识,将数据帧中的报文存储在数据帧中内核的标识对应的第二内核对应的第二缓存队列中。
步骤203:第二内核读取第二内核对应的第二缓存队列中的报文进行处理。
步骤204:第二网络接口将处理后的报文发送出去。
本公开实施例通过将接收到的传输信号转换为包括报文和内核的标识的数据帧,根据数据帧中内核的标识,将数据帧中的报文分配到数据帧中内核的标识对应的内核进行处理,使得同一个报文在报文发送端和报文接收端分配到相同标识的内核处理,从而保证作为报文接收端的主机中报文的先后顺序与作为报文发送端的主机中报文的先后顺序一致,实现报文保序,有利于提高网络传输性能,特别适用于单向传输链路的数据传输。
图4为本公开实施例提供的一种单向传输卡结构下实现报文保序的示意图。参见图4,在报文发送端,第一主机10包括第一网络接口11、由多个第一内核12组成的多核处理器、与多个第一内核12一一对应的多个第一缓存队列13、以及第一单向传输卡14;第一单向传输卡14包括依次连接的第一总线接口51、第三缓存队列52、第一处理电路53和发送接口54,第一总线接口51分别与第一主机10中的多个第一缓存队列13连接。
在报文接收端,第二主机20包括第二网络接口21、由多个第二内核22组成的多核处理器、与多个第二内核22一一对应的多个第二缓存队列23、以及第二单向传输卡24;第二单向传输卡24包括依次连接的第二总线接口61、第四缓存队列62、第二处理电路63和接收接口64,第二总线接口61分别与第二主机20中的多个第二缓存队列23连接。
当采用上述结构的单向传输卡时,第一主机10和第二主机20采用如下步骤实现报文保序:
步骤301:第一网络接口接收多个报文,将多个报文分配到各个第一内核。
步骤302:各个第一内核对分配到第一内核的报文进行处理,并将处理后的报文与内核的标识一起封装成数据帧,存储在第一内核对应的第一缓存队列中。
在实际应用中,第一内核根据实际处理需要对报文进行相应的处理。
例如,第一主机10中多个第一内核12的编号分别为0、1、2、……,编号为0的第一内核12处理后的报文与编号0一起封装成数据帧,编号为1的第一内核12处理后的报文与编号1一起封装成数据帧,编号为2的第一内核12处理后的报文与编号2一起封装成数据帧,……
步骤303:第一主机将各个第一缓存队列中的数据帧发送给第一单向传输卡。
可选地,该步骤303可以包括:
第一主机采用轮询的方式读取各个第一缓存队列中的数据帧,并按照读取的先后顺序将数据帧依次发送给第一单向传输卡。
通过采用轮询的方式依次读取各个缓存队列中的数据帧,可以将各个缓存队列对应的内核同时处理的数据帧依次发送给单向传输卡,避免各个内核非同时处理的数据帧混在一起而导致乱序。
步骤3041:第一总线接口接收数据帧。
在实际应用中,总线接口可以采用PCIE(Peripheral Component InterconnectExpress,外设部件互连标准扩展)接口。
步骤3042:第一单向传输卡将数据帧存储在第三缓存队列中。
步骤3043:第一处理电路读取第三缓存队列中的数据帧,将数据帧转换为传输信号。
在实际应用中,第一处理电路可以实现编码、加密等处理。
步骤3044:发送接口将传输信号发送出去。
步骤3051:接收接口接收传输信号。
步骤3052:第二处理电路将传输信号转换为数据帧,存储在第四缓存队列中。
在本实施例中,数据帧包括报文和内核的标识。
在实际应用中,第二处理电路可以实现解码、解密等处理。
步骤3053:第二总线接口将第四缓存队列中的数据帧发送出去。
步骤306:第二主机根据数据帧中内核的标识,将数据帧中的报文存储在数据帧中内核的标识对应的第二内核对应的第二缓存队列中。
例如,第一主机10中多个第一内核12的编号分别为0、1、2、……,第二主机20中多个第二内核22的编号相应为0、1、2、……,数据帧中编号为0的报文存储在编号0的第二内核22对应的第二缓存队列中,数据帧中编号为1的报文存储在编号1的第二内核22对应的第二缓存队列中,数据帧中编号为2的报文存储在编号2的第二内核22对应的第二缓存队列中,……
步骤307:第二内核读取第二内核对应的第二缓存队列中的报文进行处理。
在实际应用中,第二内核根据实际处理需要对报文进行相应的处理。
步骤308:第二网络接口将处理后的报文发送出去。
图5为本公开实施例提供的另一种单向传输卡结构下实现报文保序的示意图。参见图5,在报文发送端,第一主机10包括第一网络接口11、由多个第一内核12组成的多核处理器、与多个第一内核12一一对应的多个第一缓存队列13、以及第一单向传输卡14;第一单向传输卡14包括第一总线接口51、多个第三缓存队列52、与多个第三缓存队列52一一对应的多个处理电路53、合并电路55和发送接口54,第一总线接口51分别与第一主机10中的多个第一缓存队列13连接,多个第三缓存队列52分别与第一总线接口51连接,各个第一处理电路53与第一处理电路53对应的第三缓存队列52连接,合并电路55分别与多个第一处理电路53连接,发送接口54与合并电路55连接。
在报文接收端,第二主机20包括第二网络接口21、由多个第二内核22组成的多核处理器、与多个第二内核22一一对应的多个第二缓存队列23、以及第二单向传输卡24;第二单向传输卡24包括依次连接的第二总线接口61、多个第四缓存队列62、与多个第四缓存队列62一一对应的多个第二处理电路63、分配电路65和接收接口64,第二总线接口61分别与第二主机20中的多个第二缓存队列23连接,多个第四缓存队列62分别与第二总线接口61连接,各个第二处理电路63与第二处理电路63对应的第四缓存队列62连接,分配电路65分别与多个第二处理电路63连接,接收接口64与分配模块65连接。
本公开实施例通过采用多个处理电路实现单向传输卡,可以有效提高单向传输卡的处理速度和处理性能,并且不会出现热量过高、以及成本过高的问题。
同时由于多个处理电路处理报文的时间不同,因此报文进入单向传输卡的先后顺序可能与和报文从单向传输卡出来的先后顺序不同,进而造成作为报文接收端的第一主机10中报文的先后顺序与作为报文发送端的第二主机20中报文的先后顺序不同,即产生报文乱序。
当采用上述结构的单向传输卡时,第一主机10和第二主机20采用如下步骤实现报文保序:
步骤401:第一网络接口接收多个报文,将多个报文分配到各个第一内核。
步骤402:各个第一内核对分配到第一内核的报文进行处理,并将处理后的报文与内核的标识一起封装成数据帧,存储在第一内核对应的第一缓存队列中。
步骤403:第一主机将各个第一缓存队列中的数据帧发送给第一单向传输卡。
步骤4041:第一总线接口依次接收多个数据帧,按照接收多个数据帧的先后顺序对各个数据帧设定标号,并将对数据帧设定的标号封装在数据帧中。
步骤4042:第一单向传输卡将多个数据帧存储在多个第三缓存队列中。
步骤4043:各个第一处理电路读取第一处理电路对应的第三缓存队列中的数据帧,将数据帧转换为传输信号。
步骤4044:合并电路将多个第一处理电路转换的传输信号合并到一个队列中。
步骤4045:发送接口将合并后的传输信号依次发送出去。
步骤4051:接收接口接收传输信号。
步骤4052:分配电路将传输信号分配到多个第二处理电路。
步骤4053:各个第二处理电路将分配到第二处理电路的传输信号转换为数据帧,存储在第二处理电路对应的第四缓存队列中。
在本实施例中,数据帧包括报文、内核的标识和标号。
步骤4054:第二总线接口按照多个第四缓存队列中的数据帧中标号从小到大的顺序,将多个第四缓存队列中的数据帧依次发送出去。
可选地,该步骤4054可以包括:
第二总线接口采用轮询的方式读取多个第四缓存队列中标号最小的数据帧发送出去。
通过采用轮询的方式读取多个缓存队列中标号最小的数据帧发送出去,可以实现各个报文在报文发送端中进入单向传输卡和在报文接收端中从单向传输卡中出来的先后顺序一致,即报文保序。
步骤406:第二主机根据数据帧中内核的标识,将数据帧中的报文存储在数据帧中内核的标识对应的第二内核对应的第二缓存队列中。
步骤407:第二内核读取第二内核对应的第二缓存队列中的报文进行处理。
步骤408:第二网络接口将处理后的报文发送出去。
本公开实施例通过在报文发送端中,按照单向传输卡接收多个数据帧的先后顺序对各个数据帧设定标号,并将对数据帧设定的标号封装在数据帧中,这样在报文接收端,可以按照标号从小到大的顺序,将数据帧从单向传输卡中依次发送出去,使得各个报文在报文发送端中进入单向传输卡和在报文接收端中从单向传输卡中出来的先后顺序一致,实现报文保序,有利于提高网络传输性能,特别适用于单向传输链路的数据传输。
本公开实施例提供了一种报文保序的装置。参见图1,该装置为报文发送端的第一主机10,第一主机10包括第一网络接口11、由多个第一内核12组成的多核处理器、与多个第一内核12一一对应的多个第一缓存器13、以及第一单向传输卡14;多个第一内核12分别与第一网络接口11连接,各个第一缓存器13分别与对应的第一内核12连接,第一单向传输卡14分别与多个第一缓存器13连接。
第一网络接口11,用于接收多个报文,将多个报文分配到各个第一内核;
各个第一内核12,用于对分配到第一内核的报文进行处理,并将处理后的报文与内核的标识一起封装成数据帧,存储在第一内核对应的第一缓存队列中;
第一主机10,用于将各个第一缓存队列中的数据帧发送给第一单向传输卡;
第一单向传输卡14,用于将数据帧转换为传输信号,并将传输信号发送到光纤上。
在本公开实施例的一种实现方式中,第一单向传输卡可以包括依次连接的第一总线接口、第三第二缓存队列、第一处理电路和发送接口,第一总线接口分别与多个第一缓存队列连接;
第一总线接口,用于接收数据帧;
第一单向传输卡,用于将数据帧存储在第三缓存队列中;
第一处理电路,用于读取第三缓存队列中的数据帧,将数据帧转换为传输信号;
发送接口,用于将传输信号发送出去。
在本公开实施例的另一种实现方式中,单向传输卡可以包括第一总线接口、多个第三缓存队列、与多个第三缓存队列一一对应的多个第一处理电路、合并电路和发送接口,第一总线接口分别与多个第一缓存队列连接,多个第三缓存队列分别与第一总线接口连接,各个第一处理电路与第一处理电路对应的第三缓存队列连接,合并电路分别与多个第一处理电路连接,发送接口与合并电路连接;
第一总线接口,用于依次接收多个数据帧,按照接收多个数据帧的先后顺序对各个数据帧设定标号,并将对数据帧设定的标号封装在数据帧中;
第一单向传输卡,用于将多个数据帧存储在多个第三缓存队列中;
各个第一处理电路,用于读取第一处理电路对应的第三缓存队列中的数据帧,将数据帧转换为传输信号;
合并电路,用于将多个处理电路转换的传输信号合并到一个队列中;
发送接口,用于将合并后的传输信号依次发送出去。
本公开实施例提供了一种报文保序的装置。参见图1,该装置为报文接收端的第二主机20,第二主机20包括第二网络接口21、由多个第二内核22组成的多核处理器、与多个第二内核22一一对应的多个第二缓存器23、以及第二单向传输卡24。多个第二内核22分别与第二网络接口21连接,各个第二缓存器23分别与对应的第二内核22连接,第二单向传输卡24分别与多个第二缓存器23连接。
第二单向传输卡24,用于从光纤上接收传输信号,将传输信号转换为数据帧,并将数据帧发送给主机;其中,数据帧包括报文和内核的标识;
第二主机20,用于根据数据帧中内核的标识,将数据帧中的报文存储在数据帧中内核的标识对应的第二内核对应的第二缓存队列中。
第二内核22,用于读取第二内核对应的第二缓存队列中的报文进行处理。
第二网络接口21,用于将处理后的报文发送出去。
在本公开实施例的一种实现方式中,单向传输卡可以包括依次连接的第二总线接口、第四缓存队列第二、处理电路和接收接口,第二总线接口分别与多个第二缓存队列连接;
接收接口,用于接收传输信号;
第二处理电路,用于将传输信号转换为数据帧,存储在第四缓存队列中;数据帧包括报文和内核的标识;
第二总线接口,用于将第四缓存队列中的数据帧发送出去。
在本公开实施例的另一种实现方式中,单向传输卡可以包括第二总线接口、多个第四缓存队列、与多个第四缓存队列一一对应的多个第二处理电路、分配电路和接收接口,第二总线接口分别与多个第二缓存队列连接,多个第四缓存队列分别与第二总线接口连接,各个第二处理电路与第二处理电路对应的第四缓存队列连接,分配电路分别与多个第二处理电路连接,接收接口与分配电路连接;
接收接口,用于接收传输信号;
分配电路,用于将传输信号分配到多个第二处理电路;
各个第二处理电路,用于将分配到第二处理电路的传输信号转换为数据帧,存储在第二处理电路对应的第四缓存队列中;数据帧包括报文、内核的标识和标号;
第二总线接口,用于按照多个第四缓存队列中的数据帧中标号从小到大的顺序,将多个第二缓存队列中的数据帧依次发送出去。
本公开实施例提供了一种报文保序的系统。参见图1,该系统包括报文发送端的第一主机10和报文接收端的第二主机20。其中,第一主机10和第二主机20可以与上述报文保序的装置相同,在此不再详述。
需要说明的是:上述实施例提供的报文保序的装置在报文保序时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的报文保序的装置与报文保序的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种报文保序的方法,所述方法适用于报文发送端的第一主机,所述第一主机包括第一网络接口、由多个第一内核组成的多核处理器、与所述多个第一内核一一对应的多个第一缓存队列、以及第一单向传输卡;各个所述第一内核分别与所述第一网络接口连接,各个所述第一缓存队列与所述第一缓存队列对应的第一内核连接,所述第一单向传输卡分别与所述多个第一缓存队列连接;其特征在于,所述方法包括:
所述第一网络接口接收多个报文,将所述多个报文分配到各个所述第一内核;
各个所述第一内核对分配到所述第一内核的报文进行处理,并将处理后的报文与所述内核的标识一起封装成数据帧,存储在所述第一内核对应的第一缓存队列中;
所述第一主机将各个所述第一缓存队列中的数据帧发送给所述第一单向传输卡;
所述第一单向传输卡将所述数据帧转换为传输信号,并将所述传输信号发送到光纤上。
2.根据权利要求1所述的方法,其特征在于,所述第一单向传输卡包括第一总线接口、多个第三缓存队列、与所述多个第三缓存队列一一对应的多个第一处理电路、合并电路和发送接口,所述第一总线接口分别与所述多个第一缓存队列连接,所述多个第三缓存队列分别与所述第一总线接口连接,各个所述第一处理电路与所述第一处理电路对应的第三缓存队列连接,所述合并电路分别与所述多个第一处理电路连接,所述发送接口与所述合并电路连接;
所述第一单向传输卡将所述数据帧转换为传输信号发送到光纤上,包括:
所述第一总线接口依次接收多个所述数据帧,按照接收多个所述数据帧的先后顺序对各个所述数据帧设定标号,并将对所述数据帧设定的标号封装在所述数据帧中;
所述第一单向传输卡将多个所述数据帧存储在所述多个第三缓存队列中;
各个所述第一处理电路读取所述第一处理电路对应的第三缓存队列中的数据帧,将所述数据帧转换为传输信号;
所述合并电路将所述多个第一处理电路转换的传输信号合并到一个队列中;
所述发送接口将合并后的所述传输信号依次发送出去。
3.一种报文保序的方法,所述方法适用于报文接收端的第二主机,所述第二主机包括第二网络接口、由多个第二内核组成的多核处理器、以及与所述多个第二内核一一对应的多个第二缓存队列、以及第二单向传输卡;各个所述第二内核分别与所述第二网络接口连接,各个所述第二缓存队列与所述第二缓存队列对应的第二内核连接,所述第二单向传输卡分别与所述多个第二缓存队列连接;其特征在于,所述方法包括:
所述第二单向传输卡从光纤上接收传输信号,将所述传输信号转换为数据帧;其中,所述数据帧包括报文和内核的标识;
所述第二主机根据所述数据帧中内核的标识,将所述数据帧中的报文存储在所述数据帧中内核的标识对应的第二内核对应的第二缓存队列中;
所述第二内核读取所述第二内核对应的第二缓存队列中的报文进行处理;
所述第二网络接口将处理后的所述报文发送出去。
4.根据权利要求3所述的方法,其特征在于,所述第二单向传输卡包括第二总线接口、多个第四缓存队列、与所述多个第四缓存队列一一对应的多个第二处理电路、分配电路和接收接口,所述第二总线接口分别与所述多个第二缓存队列连接,所述多个第四缓存队列分别与所述第二总线接口连接,各个所述第二处理电路与所述第二处理电路对应的第四缓存队列连接,所述分配电路分别与所述多个第二处理电路连接,所述接收接口与所述分配电路连接;
所述第二单向传输卡从光纤上接收传输信号,将所述传输信号转换为数据帧,包括:
所述接收接口接收所述传输信号;
所述分配电路将所述传输信号分配到所述多个第二处理电路;
各个所述第二处理电路将分配到所述第二处理电路的传输信号转换为数据帧,存储在所述第二处理电路对应的第四缓存队列中;所述数据帧包括报文、内核的标识和标号;
所述第二总线接口按照所述多个第四缓存队列中的数据帧中标号从小到大的顺序,将所述多个第四缓存队列中的数据帧依次发送出去。
5.一种报文保序的装置,所述装置为报文发送端的第一主机,所述第一主机包括第一网络接口、由多个第一内核组成的多核处理器、与所述多个第一内核一一对应的多个第一缓存队列、以及第一单向传输卡;各个所述第一内核分别与所述第一网络接口连接,各个所述第一缓存队列与所述第一缓存队列对应的第一内核连接,所述第一单向传输卡分别与所述多个第一缓存队列连接;其特征在于,
所述第一网络接口,用于接收多个报文,将所述多个报文分配到各个所述第一内核;
各个所述第一内核,用于对分配到所述第一内核的报文进行处理,并将处理后的报文与所述内核的标识一起封装成数据帧,存储在所述第一内核对应的第一缓存队列中;
所述第一主机,用于将各个所述第一缓存队列中的数据帧发送给所述第一单向传输卡;
所述第一单向传输卡,用于将所述数据帧转换为传输信号,并将所述传输信号发送到光纤上。
6.根据权利要求5所述的装置,其特征在于,所述第一单向传输卡包括第一总线接口、多个第三缓存队列、与所述多个第三缓存队列一一对应的多个第一处理电路、合并电路和发送接口,所述第一总线接口分别与所述多个第一缓存队列连接,所述多个第三缓存队列分别与所述第一总线接口连接,各个所述第一处理电路与所述第一处理电路对应的第三缓存队列连接,所述合并电路分别与所述多个第一处理电路连接,所述发送接口与所述合并电路连接;
所述第一总线接口,用于依次接收多个所述数据帧,按照接收多个所述数据帧的先后顺序对各个所述数据帧设定标号,并将对所述数据帧设定的标号封装在所述数据帧中;
所述第一单向传输卡,用于将多个所述数据帧存储在所述多个第三缓存队列中;
各个所述第一处理电路,用于读取所述第一处理电路对应的第三缓存队列中的数据帧,将所述数据帧转换为传输信号;
所述合并电路,用于将所述多个第一处理电路转换的传输信号合并到一个队列中;
所述发送接口,用于将合并后的所述传输信号依次发送出去。
7.一种报文保序的装置,所述装置为报文接收端的第二主机,所述第二主机包括第二网络接口、由多个第二内核组成的多核处理器、以及与所述多个第二内核一一对应的多个第二缓存队列、以及第二单向传输卡;各个所述第二内核分别与所述第二网络接口连接,各个所述第二缓存队列与所述第二缓存队列对应的第二内核连接,所述第二单向传输卡分别与所述多个第二缓存队列连接;其特征在于,
所述第二单向传输卡,用于从光纤上接收传输信号,将所述传输信号转换为数据帧;其中,所述数据帧包括报文和内核的标识;
所述第二主机,用于根据所述数据帧中内核的标识,将所述数据帧中的报文存储在所述数据帧中内核的标识对应的第二内核对应的第二缓存队列中;
所述第二内核,用于读取所述第二内核对应的第二缓存队列中的报文进行处理;
所述第二网络接口,用于将处理后的所述报文发送出去。
8.根据权利要求7所述的装置,其特征在于,所述第二单向传输卡包括第二总线接口、多个第四缓存队列、与所述多个第四缓存队列一一对应的多个第二处理电路、分配电路和接收接口,所述第二总线接口分别与所述多个第二缓存队列连接,所述多个第四缓存队列分别与所述第二总线接口连接,各个所述第二处理电路与所述第二处理电路对应的第四缓存队列连接,所述分配电路分别与所述多个第二处理电路连接,所述接收接口与所述分配电路连接;
所述接收接口,用于接收所述传输信号;
所述分配电路,用于将所述传输信号分配到所述多个第二处理电路;
各个所述第二处理电路,用于将分配到所述第二处理电路的传输信号转换为数据帧,存储在所述第二处理电路对应的第四缓存队列中;所述数据帧包括报文、内核的标识和标号;
所述第二总线接口,用于按照所述多个第四缓存队列中的数据帧中标号从小到大的顺序,将所述多个第四缓存队列中的数据帧依次发送出去。
9.一种报文保序的系统,所述系统包括报文发送端的第一主机和报文接收端的第二主机;所述第一主机包括第一网络接口、由多个第一内核组成的多核处理器、与所述多个第一内核一一对应的多个第一缓存队列、以及第一单向传输卡;各个所述第一内核分别与所述第一网络接口连接,各个所述第一缓存队列与所述第一缓存队列对应的第一内核连接,所述第一单向传输卡分别与所述多个第一缓存队列连接;所述第二主机包括第二网络接口、由多个第二内核组成的多核处理器、以及与所述多个第二内核一一对应的多个第二缓存队列、以及第二单向传输卡;各个所述第二内核分别与所述第二网络接口连接,各个所述第二缓存队列与所述第二缓存队列对应的第二内核连接,所述第二单向传输卡分别与所述多个第二缓存队列连接;其特征在于,
所述第一网络接口,用于接收多个报文,将所述多个报文分配到各个所述第一内核;
各个所述第一内核,用于对分配到所述第一内核的报文进行处理,并将处理后的报文与所述内核的标识一起封装成数据帧,存储在所述第一内核对应的第一缓存队列中;
所述第一主机,用于将各个所述第一缓存队列中的数据帧发送给所述第一单向传输卡;
所述第一单向传输卡,用于将所述数据帧转换为传输信号,并将所述传输信号发送到光纤上;
所述第二单向传输卡,用于从光纤上接收传输信号,将所述传输信号转换为数据帧;其中,所述数据帧包括报文和内核的标识;
所述第二主机,用于根据所述数据帧中内核的标识,将所述数据帧中的报文存储在所述数据帧中内核的标识对应的第二内核对应的第二缓存队列中;
所述第二内核,用于读取所述第二内核对应的第二缓存队列中的报文进行处理;
所述第二网络接口,用于将处理后的所述报文发送出去。
10.根据权利要求9所述的系统,其特征在于,所述第一单向传输卡包括第一总线接口、多个第三缓存队列、与所述多个第三缓存队列一一对应的多个第一处理电路、合并电路和发送接口,所述第一总线接口分别与所述多个第一缓存队列连接,所述多个第三缓存队列分别与所述第一总线接口连接,各个所述第一处理电路与所述第一处理电路对应的第三缓存队列连接,所述合并电路分别与所述多个第一处理电路连接,所述发送接口与所述合并电路连接;所述第二单向传输卡包括第二总线接口、多个第四缓存队列、与所述多个第四缓存队列一一对应的多个第二处理电路、分配电路和接收接口,所述第二总线接口分别与所述多个第二缓存队列连接,所述多个第四缓存队列分别与所述第二总线接口连接,各个所述第二处理电路与所述第二处理电路对应的第四缓存队列连接,所述分配电路分别与所述多个第二处理电路连接,所述接收接口与所述分配电路连接;
所述第一总线接口,用于依次接收多个所述数据帧,按照接收多个所述数据帧的先后顺序对各个所述数据帧设定标号,并将对所述数据帧设定的标号封装在所述数据帧中;
所述第一单向传输卡,用于将多个所述数据帧存储在所述多个第三缓存队列中;
各个所述第一处理电路,用于读取所述第一处理电路对应的第三缓存队列中的数据帧,将所述数据帧转换为传输信号;
所述合并电路,用于将所述多个第一处理电路转换的传输信号合并到一个队列中;
所述发送接口,用于将合并后的所述传输信号依次发送出去;
所述接收接口,用于接收所述传输信号;
所述分配电路,用于将所述传输信号分配到所述多个第二处理电路;
各个所述第二处理电路,用于将分配到所述第二处理电路的传输信号转换为数据帧,存储在所述第二处理电路对应的第四缓存队列中;所述数据帧包括报文、内核的标识和标号;
所述第二总线接口,用于按照所述多个第四缓存队列中的数据帧中标号从小到大的顺序,将所述多个第四缓存队列中的数据帧依次发送出去。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911110264.1A CN110830386B (zh) | 2019-11-14 | 2019-11-14 | 报文保序的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911110264.1A CN110830386B (zh) | 2019-11-14 | 2019-11-14 | 报文保序的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110830386A true CN110830386A (zh) | 2020-02-21 |
CN110830386B CN110830386B (zh) | 2023-06-30 |
Family
ID=69554853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911110264.1A Active CN110830386B (zh) | 2019-11-14 | 2019-11-14 | 报文保序的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110830386B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363370A (zh) * | 2021-12-29 | 2022-04-15 | 中汽创智科技有限公司 | 车载设备通信方法、装置、系统和车辆 |
WO2022199558A1 (zh) * | 2021-03-22 | 2022-09-29 | 华为技术有限公司 | 一种数据传输方法、相关装置以及设备 |
CN115866105A (zh) * | 2022-12-30 | 2023-03-28 | 北京天融信网络安全技术有限公司 | 一种单向报文传输方法、单向报文提取方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070121659A1 (en) * | 2005-11-30 | 2007-05-31 | Broadcom Corporation | Ring-based cache coherent bus |
CN1996958A (zh) * | 2006-12-30 | 2007-07-11 | 华为技术有限公司 | 保证报文顺序的方法和装置 |
CN102055649A (zh) * | 2009-10-29 | 2011-05-11 | 成都市华为赛门铁克科技有限公司 | 多核系统的报文处理方法、装置及系统 |
JP2011237929A (ja) * | 2010-05-07 | 2011-11-24 | Toyota Motor Corp | マルチコア・プロセッサ |
CN103067304A (zh) * | 2012-12-27 | 2013-04-24 | 华为技术有限公司 | 报文保序的方法及装置 |
CN104468401A (zh) * | 2014-11-20 | 2015-03-25 | 华为技术有限公司 | 一种报文处理方法和装置 |
CN109246021A (zh) * | 2018-09-18 | 2019-01-18 | 武汉海晟科讯科技有限公司 | 一种基于fpga的点对点数据可靠传输系统和方法 |
CN109327405A (zh) * | 2017-07-31 | 2019-02-12 | 迈普通信技术股份有限公司 | 报文保序方法及网络设备 |
-
2019
- 2019-11-14 CN CN201911110264.1A patent/CN110830386B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070121659A1 (en) * | 2005-11-30 | 2007-05-31 | Broadcom Corporation | Ring-based cache coherent bus |
CN1996958A (zh) * | 2006-12-30 | 2007-07-11 | 华为技术有限公司 | 保证报文顺序的方法和装置 |
CN102055649A (zh) * | 2009-10-29 | 2011-05-11 | 成都市华为赛门铁克科技有限公司 | 多核系统的报文处理方法、装置及系统 |
JP2011237929A (ja) * | 2010-05-07 | 2011-11-24 | Toyota Motor Corp | マルチコア・プロセッサ |
CN103067304A (zh) * | 2012-12-27 | 2013-04-24 | 华为技术有限公司 | 报文保序的方法及装置 |
CN104468401A (zh) * | 2014-11-20 | 2015-03-25 | 华为技术有限公司 | 一种报文处理方法和装置 |
CN109327405A (zh) * | 2017-07-31 | 2019-02-12 | 迈普通信技术股份有限公司 | 报文保序方法及网络设备 |
CN109246021A (zh) * | 2018-09-18 | 2019-01-18 | 武汉海晟科讯科技有限公司 | 一种基于fpga的点对点数据可靠传输系统和方法 |
Non-Patent Citations (1)
Title |
---|
李杰: "基于多核 NPU 的 TCP 数据传输卸载" * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022199558A1 (zh) * | 2021-03-22 | 2022-09-29 | 华为技术有限公司 | 一种数据传输方法、相关装置以及设备 |
EP4304134A4 (en) * | 2021-03-22 | 2024-08-28 | Huawei Technologies Co., Ltd. | Data transmission method, and related apparatus and device |
CN114363370A (zh) * | 2021-12-29 | 2022-04-15 | 中汽创智科技有限公司 | 车载设备通信方法、装置、系统和车辆 |
CN114363370B (zh) * | 2021-12-29 | 2023-12-26 | 中汽创智科技有限公司 | 车载设备通信方法、装置、系统和车辆 |
CN115866105A (zh) * | 2022-12-30 | 2023-03-28 | 北京天融信网络安全技术有限公司 | 一种单向报文传输方法、单向报文提取方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110830386B (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240291750A1 (en) | System and method for facilitating efficient event notification management for a network interface controller (nic) | |
EP3719657B1 (en) | Communication with accelerator via rdma-based network adapter | |
CN103888293B (zh) | 多通道fc网络数据仿真系统的数据通道调度方法 | |
US11095626B2 (en) | Secure in-line received network packet processing | |
CN104580011B (zh) | 一种数据转发装置和方法 | |
CN110661725A (zh) | 用于对出口上的网络分组进行重排序的技术 | |
CN110830386B (zh) | 报文保序的方法、装置和系统 | |
CN101459611B (zh) | 用于ip san存储的数据传输调度方法、系统和设备 | |
US20200236089A1 (en) | Rdma-based data transmission method, network interface card, server and medium | |
CN110677220B (zh) | 一种基于多轨冗余应答的rdma消息机制及其实现装置 | |
TW202236104A (zh) | 整合計算元件之間的信息通訊 | |
CN118200253A (zh) | 面向rdma ud传输的可靠通信方法、电子设备及可读介质 | |
CN104598430B (zh) | 一种cpu互联扩展系统的网络接口互联设计与控制系统 | |
US20150199298A1 (en) | Storage and network interface memory share | |
CN110958216B (zh) | 安全的在线网络分组传输 | |
WO2019015487A1 (zh) | 一种数据重传处理方法、rlc实体和mac实体 | |
CN108614786B (zh) | 基于消息业务类型的通道管理电路 | |
CN109862044A (zh) | 一种转换装置、网络设备及数据传输方法 | |
CN114817113B (zh) | 一种用于判断sda数据方向的方法、系统、设备和存储介质 | |
WO2022227053A1 (zh) | 通信设备和通信方法 | |
Lee et al. | The SPI Synchronization Method for Data Efficiency and Integrity between MCUs | |
CN117692109A (zh) | 远程直接内存访问的数据重传方法及相关设备 | |
HK40026403B (zh) | 安全的在綫网络分组传输 | |
HK40017505A (zh) | 安全的在线接收的网络分组处理 | |
HK40026403A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |