System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及通信,尤其涉及一种报文处理方法、装置、设备及计算机可读存储介质。
技术介绍
1、tcp/ip是广泛应用于互联网中最基本的通信协议,计算机通过tcp/ip协议来进行相互通信。在传统的tcp/ip技术中,tcp(transimision control protocal)的协议解析和交互通常在软件侧实现,即调用软件的tcp协议栈来解析tcp报文数据。在使用软件tcp协议栈处理tcp报文数据的时候,会调用大量的中央处理器(central processing unit,cpu)资源,给软件系统带来了巨大的资源消耗,并且处理速度相比于硬件tcp协议栈也会慢很多。
2、为了降低cpu的资源消耗,并且提高tcp报文的处理速度,tcp全卸载协议栈技术也随之应运而生。tcp全卸载协议栈是将软件tcp协议栈完全卸载到硬件中,由硬件代替软件tcp协议栈实现tcp链接管理、tcp重传、乱序重排、状态管理、建链断链等工作。软件只需要将待发送的数据通过直接存储器访问(direct memory access,dma)传递给硬件,硬件的tcp协议栈会根据当前链接状态,自动向对方主机发送tcp报文以传递数据。
3、但是,该方案对于硬件tcp协议栈的编码能力要求较高,需要考虑到实际互联网中的各种异常情况。同时硬件tcp协议栈向软件同步当前链接状态的流程较为复杂,在一定程度上增加了软硬件的交互复杂度,在实际应用场景中容易出现各种突发异常情况。
技术实现思路
1、为了解决上述技术问题
2、第一方面,本公开实施例提供一种报文处理方法,包括:
3、获取待处理报文;
4、确定所述待处理报文的报文类型,所述报文类型为控制侧报文与数据侧报文中的一种;
5、若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理;
6、若所述待处理报文为数据侧报文,则由所述半卸载引擎对所处待处理报文进行处理。
7、在一些实施例中,若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理,包括:
8、将远端服务器发送的控制侧报文转发至本端服务器;
9、响应于接收到所述本端服务器下发的控制信号,执行所述控制信号对应的指令,所述控制信号是由所述本端服务器对所述控制侧报文进行处理后生成的。
10、在一些实施例中,若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理,包括:
11、将本端服务器发送的控制侧报文转发至远端服务器进行处理。
12、在一些实施例中,当所述控制侧报文为链接建立报文时,所述控制信号为链接建立信号,所述响应于接收到所述本端服务器下发的控制信号,执行所述控制信号对应的指令,包括:
13、接收到所述本端服务器下发的链接建立信号,所述半卸载引擎开始工作。
14、在一些实施例中,当所述控制侧报文为链接结束报文时,所述控制信号为链接结束信号,所述响应于接收到所述本端服务器下发的控制信号,执行所述控制信号对应的指令,包括:
15、接收到所述本端服务器下发的链接结束信号,所述半卸载引擎停止工作。
16、在一些实施例中,所述若所述待处理报文为数据侧报文,则由所述半卸载引擎对所处待处理报文进行处理,包括:
17、对来自于远端服务器的所述数据侧报文进行解析,得到解析结果;
18、将所述解析结果发送至本端服务器。
19、在一些实施例中,所述方法还包括:
20、接收所述本端服务器下发的待发送数据;
21、对所述待发送数据进行封装,得到待发送报文;
22、将所述待发送报文发送至远端服务器。
23、第二方面,本公开实施例提供一种报文处理装置,包括:
24、获取模块,用于获取待处理报文;
25、确定模块,用于确定所述待处理报文的报文类型,所述报文类型为控制侧报文与数据侧报文中的一种;
26、第一处理模块,用于若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理;
27、第二处理模块,用于若所述待处理报文为数据侧报文,则由所述半卸载引擎对所处待处理报文进行处理。
28、第三方面,本公开实施例提供一种电子设备,包括:
29、存储器;
30、处理器;以及
31、计算机程序;
32、其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面所述的方法。
33、第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现第一方面所述的方法。
34、第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的报文处理方法。
35、本公开实施例提供的报文处理方法、装置、设备及计算机可读存储介质,通过将报文数据处理的功能卸载至半卸载引擎中,而链接管理、状态控制仍由服务器中的软件协议栈进行,实现协议栈的半卸载,减少了服务器中的资源占用,同时无需软硬件之间进行链接状态的同步,降低了交互复杂度。
本文档来自技高网...【技术保护点】
1.一种报文处理方法,其特征在于,所述方法应用于半卸载引擎中,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理,包括:
3.根据权利要求1所述的方法,其特征在于,若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理,包括:
4.根据权利要求2所述的方法,其特征在于,当所述控制侧报文为链接建立报文时,所述控制信号为链接建立信号,所述响应于接收到所述本端服务器下发的控制信号,执行所述控制信号对应的指令,包括:
5.根据权利要求2所述的方法,其特征在于,当所述控制侧报文为链接结束报文时,所述控制信号为链接结束信号,所述响应于接收到所述本端服务器下发的控制信号,执行所述控制信号对应的指令,包括:
6.根据权利要求1所述的方法,其特征在于,所述若所述待处理报文为数据侧报文,则由所述半卸载引擎对所处待处理报文进行处理,包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.一种报文处理装置,其
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
...【技术特征摘要】
1.一种报文处理方法,其特征在于,所述方法应用于半卸载引擎中,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理,包括:
3.根据权利要求1所述的方法,其特征在于,若所述待处理报文为控制侧报文,则将所述待处理报文发送至目标服务器进行处理,包括:
4.根据权利要求2所述的方法,其特征在于,当所述控制侧报文为链接建立报文时,所述控制信号为链接建立信号,所述响应于接收到所述本端服务器下发的控制信号,执行所述控制信号对应的指令,包括:
5.根据权利要求2所述的方法,其特征在于,当...
【专利技术属性】
技术研发人员:吕蒙,
申请(专利权)人:中科驭数北京科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。