【技术实现步骤摘要】
一种报文处理方法、装置及系统
本专利技术涉及网络通信
,特别是涉及一种报文处理方法、装置及系统。
技术介绍
TCP(TransmissionControlProtocol,传输控制协议)和UDP(UserDatagramProtocol,用户数据报协议)是常见的传输协议,局域网之间的数据交互通常采用上述传输协议。当采用TCP或者UDP协议对报文进行处理时,例如,发送端发送一条报文时,如果该报文的数据包为小数据包,即数据量小于一阈值的数据包(通常指单包大小小于1500字节的数据包),则先将该小数据包缓存至发送缓冲区,待与其他小于上述阈值的多个小数据包合并为一个大数据包后,再发送该大数据包,然而,上述小数据包的缓存和合并过程均需花费时间,导致报文传输出现延迟。
技术实现思路
本专利技术实施例的目的在于提供一种报文处理方法、装置及系统,以实现进一步降低报文传输延迟。具体技术方案如下:第一方面,本专利技术实施例提供了一种报文处理方法,应用于基于数据平面开发套件DPDK封装库实现的发送端,所述 ...
【技术保护点】
1.一种报文处理方法,其特征在于,应用于基于数据平面开发套件DPDK封装库实现的发送端,所述方法包括:/n利用预设的基于DPDK的报文封装格式对数据进行封装,得到待发送报文,所述待发送报文中携带有用于唯一标识该待发送报文的编号,不同待发送报文的编号按封装先后顺序依次增加;/n为所述待发送报文增加第一标识和第二标识,生成所述待发送报文的数据,其中,所述第一标识用于标识所述待发送报文的上次发送时刻,所述第二标识用于标识所述待发送报文的重发次数;/n将所述待发送报文的数据添加至数据队列;/n按照各所述数据在所述数据队列中的先后顺序,依次向基于DPDK封装库实现的接收端发送各所述数 ...
【技术特征摘要】
1.一种报文处理方法,其特征在于,应用于基于数据平面开发套件DPDK封装库实现的发送端,所述方法包括:
利用预设的基于DPDK的报文封装格式对数据进行封装,得到待发送报文,所述待发送报文中携带有用于唯一标识该待发送报文的编号,不同待发送报文的编号按封装先后顺序依次增加;
为所述待发送报文增加第一标识和第二标识,生成所述待发送报文的数据,其中,所述第一标识用于标识所述待发送报文的上次发送时刻,所述第二标识用于标识所述待发送报文的重发次数;
将所述待发送报文的数据添加至数据队列;
按照各所述数据在所述数据队列中的先后顺序,依次向基于DPDK封装库实现的接收端发送各所述数据中的待发送报文,以使所述接收端接收各个所述待发送报文,并基于所述编号确定各个所述待发送报文的先后顺序;
从所述数据队列中删除发送成功的待发送报文的数据;
针对已发送过且仍未发送成功的待发送报文,基于该待发送报文的数据中所包含的第一标识和第二标识,判断是否重新发送该待发送报文。
2.根据权利要求1所述的方法,其特征在于,所述针对已发送过且仍未发送成功的待发送报文,基于该待发送报文的数据中所包含的第一标识和第二标识,判断是否重新发送该待发送报文的步骤,包括:
获取当前时刻,并判断当前时刻与该待发送对应的数据中的第一标识中所对应的上次发送时刻之差是否小于第一预设时间阈值;
如果小于第一预设时间阈值,则确定不重新发送该待发送报文;
如果大于或等于第一预设时间阈值,且该数据的第二标识中所对应的重发次数小于预设次数阈值时,则重新发送该待发送报文;
在该待发送报文对应的数据的第一标识中记录重新发送时刻;
为该待发送报文对应的数据的第二标识中所对应的重发次数加一。
3.根据权利要求1或2所述的方法,其特征在于,所述针对已发送过且仍未发送成功的待发送报文,基于该待发送报文的数据中所包含的第一标识和第二标识,判断是否重新发送该待发送报文之前,所述方法还包括:
如果在预设时长内未接收到接收端返回的、针对所发送的所述待发送报文的应答报文时,确定该待发送报文未发送成功,其中,所述应答报文用于指示所述待发送报文接收成功。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述数据的第二标识中所对应的重发次数大于或等于预设次数阈值时,从所述数据队列中移除所述数据;
将所述数据记录至日志文件中。
5.根据权利要求1所述的方法,其特征在于,所述预设的基于DPDK的报文封装格式中包括:目的机器编号,源机器编号,报文编号,报文类型标识,真实数据,校验和标识。
6.一种报文处理方法,其特征在于,应用于基于数据平面开发套件DPDK封装库实现的接收端,所述方法包括:
接收发送端发送的待发送报文,所述待发送报文是发送端利用预设的基于数据平面开发套件DPDK的报文封装格式对数据进行封装后得到的,所述待发送报文中携带有用于唯一标识该报文的编号,不同待发送报文的编号按封装先后顺序依次增加;
根据所接收的各个所述待发送报文中的编号,确定各个所述待发送报文的先后顺序。
7.根据权利要求6所述的方法,其特征在于,所述根据所接收的各个所述待发送报文中的编号,确定各个所述待发送报文的先后顺序之后,所述方法还包括:
将所述待发送报文按照所确定的先后顺序缓存至缓存队列中;
如果所述缓存队列中存在当前时刻与报文接收时刻小于第二预设时间阈值的所述待发送报文,则将所述待发送报文及所述缓存队列中位于所述待发送报文之前的全部报文从所述缓存队列中移至接收队列中,其中,所述第二预设时间阈值大于第一预设时间阈值与预设次数阈值之积。
8.一种报文处理装置,其特征在于,应用于基于数据平面开发套件DPDK封装库实现的发送端,所述装置包括:
封装模块,用于利用预设的基于DPDK的报文封装格式对数据进行封装,得到待发送报文,所述待发送报文中携带有用于唯一标识该待发送报文的编号,不同待发送报文的编号按封装先后顺序依次增加;
增加模块,用于为所述待发送报文增加第一标识和第二标识,生成所述待发送报文的数据,其中,所述第一标识用于标识所述待发送报文的上次发送时刻,所述第二标识用于标识所述待发送报文的重发次数;
添加模...
【专利技术属性】
技术研发人员:何焕,
申请(专利权)人:杭州海康威视系统技术有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。