【技术实现步骤摘要】
一种报文处理方法、装置及电子设备
[0001]本申请涉及网络隧道技术,特别涉及一种报文处理方法、装置及电子设备。
技术介绍
[0002]在目前应用中,常用的隧道协议包括:通用路由封装GRE,虚拟扩展局域网VxLAN,互联网安全协议IPSec,基于IPv6的段路由SRv6等。以VxLAN为例,对于采用VxLAN隧道传输的数据报文,需要在原数据报文前封装50个字节长度的隧道头。类似地,对于其它隧道协议下的隧道,在通过隧道传输数据报文时,也会在数据报文上封装相应字节的隧道头。
[0003]在一些情况下,对于网络中传输的小数据报文比如应用于语音、游戏控制的数据报文等,其有效载荷长度比较小,比如一般为35字节左右。而当这些小数据报文在隧道传输时,如上描述,其会封装一定字节的隧道头。该封装的隧道头会使整个报文长度大大增加,占用比较多的网络带宽。例如对于有效载荷长度为35字节的小数据报文,在封装VxLAN隧道头后,报文长度增加到85字节,相比原始小数据报文传输,该封装的VxLAN隧道头会占用比较多的网络带宽。采用其他隧道协议在小数 ...
【技术保护点】
【技术特征摘要】
1.一种报文处理方法,其特征在于,所述方法应用于网络设备,包括:当确定通过本设备与对端设备之间的隧道转发当前接收的数据报文时,将当前接收的数据报文存放至所述隧道对应的出接口队列中;在检测到报文汇聚封装事件时,从所述出接口队列中选择满足预设条件的N个数据报文,N大于等于2;其中,N个数据报文的报文总长度与汇聚封装头长度之和小于或等于所述隧道要求的最大传输单元MTU,所述汇聚封装头长度是指所述网络设备对所述N个数据报文进行汇聚封装时所要求的汇聚封装头的长度,所述汇聚封装头长度至少包括:经由所述隧道传输时封装的隧道头的长度、以及所述网络设备在对所述N个数据报文进行汇聚封装时用于分隔所述N个数据报文的分隔标识的长度;对所述N个数据报文进行汇聚封装得到汇聚报文,通过所述隧道转发所述汇聚报文;所述汇聚报文携带汇聚封装头,所述汇聚封装头至少包括:所述隧道头、用于分隔所述N个数据报文的分隔标识。2.根据权利要求1所述的方法,其特征在于,在所述当前接收的数据报文为所述出接口队列中的首个报文时,该方法进一步包括:启动定时器,所述定时器的定时时间是网络设备依据所述数据报文所属业务流的优先级确定的;通过以下方式检测报文汇聚封装事件:当检测到定时器的定时时间到期时,确定检测到报文汇聚封装事件;从所述出接口队列中选择满足预设条件的N个数据报文,具体包括:选择所述出接口队列中所有的数据报文,作为所述N个数据报文;或者,通过以下方式检测报文汇聚封装事件:当检测到定时器的定时时间未到期但所述出接口队列中的数据报文的报文总长度、以及将所述出接口队列中已有的数据报文进行汇聚封装时所要求的汇聚封装头长度之和大于所述MTU,则确定检测到报文汇聚封装事件;从所述出接口队列中选择满足预设条件的N个数据报文,具体包括:选择所述出接口队列中除指定报文之外的所有的数据报文,作为所述N个数据报文;所述指定报文是指最后一个存放至所述出接口队列中的数据报文。3.根据权利要求2所述的方法,其特征在于,在检测到报文汇聚封装事件时,该方法进一步包括:关闭所述定时器。4.根据权利要求1所述的方法,其特征在于,在所述当前接收的数据报文为所述出接口队列中的非首个报文时,通过以下方式检测报文汇聚封装事件:若当前接收的数据报文的报文长度、所述出接口队列中已有的数据报文的报文总长度、以及对所述当前接收的数据报文和所述出接口队列中已有的数据报文进行汇聚封装时所要求的汇聚封装头长度之和大于所述MTU,则确定检测到报文汇聚封装事件;从所述出接口队列中选择满足预设条件的N个数据报文,具体包括:选择所述出接口队列中除所述当前接收的数据报文以外的所有的数据报文,作为所述N个数据报文。5.根据权利要求1所述的方法,其特征在于,在所述当前接收的数据报文为所述出接口
队列中的非首个报文时,通过以下方式检测报文汇聚封装事件:若当前接收的数据报文的报文长度大于设定长度阈值,则在当前接收的数据报文的报文长度、所述出接...
【专利技术属性】
技术研发人员:郑上闽,
申请(专利权)人:新华三大数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。