一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种报文传输方法、装置、设备及可读存储介质与流程

2022-03-19 12:27:30 来源:中国专利 TAG:


1.本发明涉及通信技术领域,尤其涉及一种报文传输方法、装置、设备及可读存储介质。


背景技术:

2.quic(quick udp internet connection,基于udp的低时延的互联网传输层协)协议采用udp(user datagram protocol,用户数据报协议)作为传输层。现网很多nat(network address translation,网络地址转换)路由器通过对tcp(transmission control protocol,传输控制协议)连接中syn(同步)、ack(肯定确认)和fin(结束)报文的观察,来判断连接的建立和终止,进而精确维护nat映射表中表项的生命周期。
3.现网中的很多nat设备不支持quic协议的识别,因此,现有技术的处理方式,可能导致nat设备对quic长连接会话进行nat映射超时老化和重新绑定,导致会话源端口改变的问题。


技术实现要素:

4.本发明实施例提供一种报文传输方法、装置、设备及可读存储介质,以解决nat设备对quic长连接会话进行nat映射超时老化和重新绑定而导致的会话源端口改变的问题。
5.第一方面,本发明实施例提供了一种报文传输方法,应用于nat设备,包括:
6.从quic客户端获取第一quic报文,所述第一quic报文的连接标识字段用于标识quic连接;
7.根据所述第一quic报文,得到第二quic报文;
8.向接收端发送所述第二quic报文;
9.其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。
10.其中,所述根据所述第一quic报文,得到第二quic报文,包括:
11.在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
12.在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
13.其中,所述在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文,包括:
14.读取所述第一quic报文的标记字段flags的编码值;
15.根据所述flags字段的编码值,确定所述quic连接的目标标识;
16.将所述quic连接的目标标识填充在ipv4报文头的选项字段,获得所述第二quic报文。
17.其中,所述在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第
二quic报文,包括:
18.读取所述第一quic报文的flags字段的编码值;
19.根据所述flags字段的编码值,确定所述quic连接的目标标识;
20.将所述quic连接的目标标识填充在ipv6报文头的扩展字段,获得所述第二quic报文。
21.其中,所述根据所述flags字段的编码值,确定所述quic连接的目标标识,包括:
22.根据所述flags字段的bit2和bit3的取值,确定所述第一quic报文的连接标识字段的信息;
23.根据所述第一quic报文的连接标识字段的信息,确定所述quic连接的目标标识。
24.其中,所述根据所述flags字段的bit2和bit3的取值,确定所述第一quic报文的连接标识字段的信息,包括:
25.若所述flags字段的bit2和bit3均为1,则所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识;
26.若所述flags字段的bit2取值为0,bit3取值为1,则所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识;
27.若所述flags字段的bit2取值为1,bit3取值为0,则所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识;
28.若所述flags字段的bit2和bit3均为0,则所述第一quic报文的连接标识字段中未存储quic连接标识。
29.其中,所述根据所述第一quic报文的连接标识字段的信息,确定所述quic连接的目标标识,包括:
30.若所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识,则将所述8个字节的quic连接标识进行哈希运算并得到32bit的哈希值,将所述32bit的哈希值作为所述quic连接的目标标识;
31.若所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识,则将所述4个字节的quic连接标识作为所述quic连接的目标标识;
32.若所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识,则将所述1个字节的quic连接标识作为低8bit,并将高24bit补0,得到所述quic连接的目标标识;
33.若所述第一quic报文的连接标识字段中未存储有quic连接标识,则随机生成32bit的数值,并将所述32bit的数值作为所述quic连接的目标标识。
34.第二方面,本发明实施例还提供一种报文传输方法,应用于接收端,包括:
35.接收nat设备发送的第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据quic客户端的第一quic报文的连接标识字段中的信息获得的;
36.根据所述第二quic报文进行处理。
37.其中,所述第二quic报文是通过如下方式获得的:
38.在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
39.在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报
文。
40.第三方面,本发明实施例提供了一种报文传输装置,应用于nat设备,包括:
41.第一获取模块,用于从quic客户端获取第一quic报文,所述第一quic报文的连接标识字段用于标识quic连接;
42.第二获取模块,用于根据所述第一quic报文,得到第二quic报文;
43.第一发送模块,用于向接收端发送所述第二quic报文;
44.其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。
45.其中,所述第二获取模块包括:
46.第一获取子模块,用于在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
47.第二获取子模块,用于在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
48.其中,所述第一获取子模块包括:
49.第一获取单元,用于读取所述第一quic报文的标记字段flags的编码值;
50.确定单元,用于根据所述flags字段的编码值,确定所述quic连接的目标标识;
51.第一填充单元,用于将所述quic连接的目标标识填充在ipv4报文头的选项字段,获得所述第二quic报文。
52.其中,所述第二获取子模块包括:
53.第二获取单元,用于读取所述第一quic报文的flags字段的编码值;
54.确定单元,用于根据所述flags字段的编码值,确定所述quic连接的目标标识;
55.第二填充单元,用于将所述quic连接的目标标识填充在ipv6报文头的扩展字段,获得所述第二quic报文。
56.其中,所述确定单元包括:
57.第一确定子模块,用于根据所述flags字段的bit2和bit3的取值,确定所述第一quic报文的连接标识字段的信息;
58.第二确定子模块,用于根据所述第一quic报文的连接标识字段的信息,确定所述quic连接的目标标识。
59.其中,所述第一确定子模块,用于:
60.若所述flags字段的bit2和bit3均为1,则所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识;
61.若所述flags字段的bit2取值为0,bit3取值为1,则所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识;
62.若所述flags字段的bit2取值为1,bit3取值为0,则所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识;
63.若所述flags字段的bit2和bit3均为0,则所述第一quic报文的连接标识字段中未存储quic连接标识。
64.其中,所述第二确定子模块,用于:
65.若所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识,则将所
述8个字节的quic连接标识进行哈希运算并得到32bit的哈希值,将所述32bit的哈希值作为所述quic连接的目标标识;
66.若所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识,则将所述4个字节的quic连接标识作为所述quic连接的目标标识;
67.若所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识,则将所述1个字节的quic连接标识作为低8bit,并将高24bit补0,得到所述quic连接的目标标识;
68.若所述第一quic报文的连接标识字段中未存储有quic连接标识,则随机生成32bit的数值,并将所述32bit的数值作为所述quic连接的目标标识。
69.第四方面,本发明实施例提供了一种报文传输装置,应用于接收端,包括:
70.第一接收模块,用于接收nat设备发送的第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据quic客户端的第一quic报文的连接标识字段中的信息获得的;
71.第一处理模块,用于根据所述第二quic报文进行处理。
72.其中,所述第二quic报文是通过如下方式获得的:
73.在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
74.在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
75.第五方面,本发明实施例提供了一种报文传输装置,应用于nat设备,包括:处理器和收发器;
76.所述收发器,用于从quic客户端获取第一quic报文,所述第一quic报文的连接标识字段用于标识quic连接;
77.所述处理器,用于根据所述第一quic报文,得到第二quic报文;
78.所述收发器,用于向接收端发送所述第二quic报文;
79.其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。
80.其中,所述处理器,用于在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者,在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
81.其中,所述处理器,用于读取所述第一quic报文的标记字段flags的编码值;根据所述flags字段的编码值,确定所述quic连接的目标标识;将所述quic连接的目标标识填充在ipv4报文头的选项字段,获得所述第二quic报文。
82.其中,所述处理器,用于读取所述第一quic报文的flags字段的编码值;根据所述flags字段的编码值,确定所述quic连接的目标标识;将所述quic连接的目标标识填充在ipv6报文头的扩展字段,获得所述第二quic报文。
83.其中,所述处理器,用于根据所述flags字段的bit2和bit3的取值,确定所述第一quic报文的连接标识字段的信息;根据所述第一quic报文的连接标识字段的信息,确定所述quic连接的目标标识。
84.其中,所述处理器,用于:
85.若所述flags字段的bit2和bit3均为1,则所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识;
86.若所述flags字段的bit2取值为0,bit3取值为1,则所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识;
87.若所述flags字段的bit2取值为1,bit3取值为0,则所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识;
88.若所述flags字段的bit2和bit3均为0,则所述第一quic报文的连接标识字段中未存储quic连接标识。
89.其中,所述处理器,用于:
90.若所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识,则将所述8个字节的quic连接标识进行哈希运算并得到32bit的哈希值,将所述32bit的哈希值作为所述quic连接的目标标识;
91.若所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识,则将所述4个字节的quic连接标识作为所述quic连接的目标标识;
92.若所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识,则将所述1个字节的quic连接标识作为低8bit,并将高24bit补0,得到所述quic连接的目标标识;
93.若所述第一quic报文的连接标识字段中未存储有quic连接标识,则随机生成32bit的数值,并将所述32bit的数值作为所述quic连接的目标标识。
94.第六方面,本发明实施例提供了一种报文传输装置,应用于接收端,包括:处理器和收发器;
95.所述收发器,用于接收nat设备发送的第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据quic客户端的第一quic报文的连接标识字段中的信息获得的;
96.所述处理器,用于根据所述第二quic报文进行处理。
97.其中,所述第二quic报文是通过如下方式获得的:
98.在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
99.在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
100.第七方面,本发明实施例还提供一种通信设备,包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如上所述的报文传输方法中的步骤。
101.第八方面,本发明实施例还提供一种可读存储介质,所述可读存储介质上存储程序,所述程序被处理器执行时实现如上所述的报文传输方法中的步骤。
102.在本发明实施例中,根据quic客户端获取的第一quic报文,并得到第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。通过这种方式,可使得不支持quic协议的nat设备准确的维护quic长连接端口映射表项的生命周期,从而可避免nat设备对quic长连接会话进行nat映射超时老化和重新绑定而导致的会话源端口改变的情况发生。
附图说明
103.图1是本发明实施例提供的报文传输方法的流程图之一;
104.图2是quic报文格式的示意图;
105.图3是本发明实施例提供的报文传输方法的流程图之二;
106.图4是本发明实施例提供的报文传输装置的结构图之一;
107.图5是本发明实施例提供的报文传输装置的结构图之二;
108.图6是本发明实施例提供的报文传输装置的结构图之三;
109.图7是本发明实施例提供的报文传输装置的结构图之四。
具体实施方式
110.本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
111.本技术实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
112.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,并不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
113.参见图1,图1是本发明实施例提供的报文传输方法的流程图,应用于nat设备,如图1所示,包括以下步骤:
114.步骤101、从quic客户端获取第一quic报文,所述第一quic报文的连接标识字段用于标识quic连接。
115.其中,第一quic报文的格式如图2所示,其中,connection id(连接标识)字段用来标识一个quic的连接,例如可存储quic连接的connection id等。这个字段的长度是可变的,可以是0、1、4或者8字节,具体长度取决于flags(标记)字段的编码。
116.其中,flags字段的bit2、bit3两位用于表示报文中的connection id的长度。其中,bit2、bit3编码与connection id长度的对应关系如下:
117.0x0c(bit3及bit2均为1)表示connection id的长度是8字节;
118.0x08(bit3位1,bit2为0)表示connection id的长度是4字节;
119.0x04(bit3位0,bit2为1)表示connection id的长度是1字节;
120.0x00(bit3及bit2均为0)表示无connection id。
121.步骤102、根据所述第一quic报文,得到第二quic报文。
122.其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。
123.具体的,在此步骤中,可在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者,在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
124.如果在ipv4报文头的选项字段填充所述quic连接的目标标识,那么,可读取所述第一quic报文的flags字段的编码值,根据所述flags字段的编码值,确定所述quic连接的
目标标识。之后,将所述quic连接的目标标识填充在ipv4报文头的选项字段,获得所述第二quic报文。在这种方式中,通过扩展ipv4报文头的选项字段实现quic连接的目标标识的填充,对ipv4协议改动小,而且无需对quic协议栈进行改动,易实现。
125.如果在ipv6报文头的扩展字段填充所述quic连接的目标标识,那么,可读取所述第一quic报文的flags字段的编码值,根据所述flags字段的编码值,确定所述quic连接的目标标识。之后,将所述quic连接的目标标识填充在ipv6报文头的扩展字段,获得所述第二quic报文。在这种方式中,通过扩展ipv4报文头的选项字段实现quic连接的目标标识的填充,对ipv6协议改动小,而且无需对quic协议栈进行改动,易实现。
126.在以上两种情况中,可通过如下方式确定所述quic连接的目标标识:根据所述flags字段的bit2和bit3的取值,确定所述第一quic报文的连接标识字段的信息,以及,根据所述第一quic报文的连接标识字段的信息,确定所述quic连接的目标标识。
127.根据步骤101中所描述的bit2、bit3编码与connection id长度的对应关系,若所述flags字段的bit2和bit3均为1,则所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识;若所述flags字段的bit2取值为0,bit3取值为1,则所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识;若所述flags字段的bit2取值为1,bit3取值为0,则所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识;若所述flags字段的bit2和bit3均为0,则所述第一quic报文的连接标识字段中未存储quic连接标识。
128.在本发明实施例中,如果扩展ipv4报文头的选项字段,由于ipv4报文头的选项字段最多可以是32bit,因此,在此种情况下,利用32bit来标识quic连接。如果扩展ipv6报文头的扩展字段,虽然其可超过32bit,但是,在本发明实施例中,仍可利用32bit来标识quic连接。
129.根据第一quic报文的连接标识字段中存储的信息不同,可有不同的方式确定所述quic连接的目标标识:
130.(1)若所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识,则将所述8个字节的quic连接标识进行哈希运算并得到32bit的哈希值,将所述32bit的哈希值作为所述quic连接的目标标识。
131.即,如果第一quic报文头的connection id为8个字节即64bit,那么,对64bit的connection id作哈希运算,产生32bi t的哈希值,利用该32bi t的哈希值作为所述目标标识。
132.(2)若所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识,则将所述4个字节的quic连接标识作为所述quic连接的目标标识。
133.即,如果第一quic报文头的connection id为4个字节即32bit,那么,直接采用第一quic报文的connection id作为目标标识。
134.(3)若所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识,则将所述1个字节的quic连接标识作为低8bit,并将高24bit补0,得到所述quic连接的目标标识。
135.即,如果第一quic报文头的connection id为1个字节即8bit,那么,采用第一quic报文头的connection id作为低8bit,高24bit全部补0,得到目标标识。
136.(4)若所述第一quic报文的连接标识字段中未存储有quic连接标识,则随机生成32bit的数值,并将所述32bit的数值作为所述quic连接的目标标识。
137.即,如果第一quic报文头的connection id为0个字节,那么,nat设备可生成随机生成32bit的数值并将所述32bit的数值作为所述quic连接的目标标识。其中,该随机生成的32bit的数值可不同于其他quic连接的标识。例如,nat设备可利用随机数生成器生成32bit的随机数,且该随机数唯一,并利用该随机数作为目标标识。
138.步骤103、向接收端发送所述第二quic报文。
139.其中,所述接收端可以是服务器,负载均衡设备、防火墙、交换路由设备等。
140.通过以上描述可以看出,在本发明实施例中,根据quic客户端获取的第一quic报文,并得到第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。通过这种方式,可使得不支持quic协议的nat设备准确的维护quic长连接端口映射表项的生命周期,从而可避免nat设备对quic长连接会话进行nat映射超时老化和重新绑定,导致的会话源端口改变的情况发生。也就是说,nat设备不需要支持对quic协议的识别能力就可以精确维护端口映射表项的生命周期,从而防止对quic长连接的随机老化。
141.另外,通过ipv4报文的选项字段或ipv6报文的扩展字段来标识quic连接,引入的开销小;不需要对存量nat设备进行改造升级,从而有利于quic协议在现网的部署和推广。
142.参见图3,图3是本发明实施例提供的报文传输方法的流程图,应用于接收端,如图3所示,包括以下步骤:
143.步骤301、接收nat设备发送的第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据quic客户端的第一quic报文的连接标识字段中的信息获得的。
144.其中,所述接收端可以是服务器,负载均衡设备、防火墙、交换路由设备等。
145.步骤302、根据所述第二quic报文进行处理。
146.根据接收端的不同,处理方式不同。例如如果接收端是负载均衡设备,那么,负载均衡设备将根据第二quic报文进行负载均衡处理等。
147.通过以上描述可以看出,在本发明实施例中,根据quic客户端获取的第一quic报文,并得到第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。通过这种方式,可使得不支持quic协议的nat设备准确的维护quic长连接端口映射表项的生命周期,从而可避免nat设备对quic长连接会话进行nat映射超时老化和重新绑定,导致的会话源端口改变的情况发生。
148.本发明实施例还提供了一种报文传输装置,应用于nat设备。参见图4,图4是本发明实施例提供的报文传输装置的结构图。由于报文传输装置解决问题的理与本发明实施例中报文传输方法相似,因此该报文传输装置的实施可以参见方法的实施,重复之处不再赘述。
149.如图4所示,报文传输装置400包括:第一获取模块401,用于从quic客户端获取第一quic报文,所述第一quic报文的连接标识字段用于标识quic连接;第二获取模块402,用于根据所述第一quic报文,得到第二quic报文;第一发送模块403,用于向接收端发送所述
第二quic报文;其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。
150.其中,所述第二获取模块包括:
151.第一获取子模块,用于在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
152.第二获取子模块,用于在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
153.其中,所述第一获取子模块包括:
154.第一获取单元,用于读取所述第一quic报文的标记字段flags的编码值;
155.确定单元,用于根据所述flags字段的编码值,确定所述quic连接的目标标识;
156.第一填充单元,用于将所述quic连接的目标标识填充在ipv4报文头的选项字段,获得所述第二quic报文。
157.其中,所述第二获取子模块包括:
158.第二获取单元,用于读取所述第一quic报文的flags字段的编码值;
159.确定单元,用于根据所述flags字段的编码值,确定所述quic连接的目标标识;
160.第二填充单元,用于将所述quic连接的目标标识填充在ipv6报文头的扩展字段,获得所述第二quic报文。
161.其中,所述确定单元包括:
162.第一确定子模块,用于根据所述flags字段的bit2和bit3的取值,确定所述第一quic报文的连接标识字段的信息;
163.第二确定子模块,用于根据所述第一quic报文的连接标识字段的信息,确定所述quic连接的目标标识。
164.其中,所述第一确定子模块,用于:
165.若所述flags字段的bit2和bit3均为1,则所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识;
166.若所述flags字段的bit2取值为0,bit3取值为1,则所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识;
167.若所述flags字段的bit2取值为1,bit3取值为0,则所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识;
168.若所述flags字段的bit2和bit3均为0,则所述第一quic报文的连接标识字段中未存储quic连接标识。
169.其中,所述第二确定子模块,用于:
170.若所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识,则将所述8个字节的quic连接标识进行哈希运算并得到32bit的哈希值,将所述32bit的哈希值作为所述quic连接的目标标识;
171.若所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识,则将所述4个字节的quic连接标识作为所述quic连接的目标标识;
172.若所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识,则将所述1个字节的quic连接标识作为低8bit,并将高24bit补0,得到所述quic连接的目标标识;
173.若所述第一quic报文的连接标识字段中未存储有quic连接标识,则随机生成32bit的数值,并将所述32bit的数值作为所述quic连接的目标标识。
174.本发明实施例提供的装置,可以执行上述方法实施例,其实现理和技术效果类似,本实施例此处不再赘述。
175.本发明实施例还提供了一种报文传输装置,应用于接收端。参见图5,图5是本发明实施例提供的报文传输装置的结构图。由于报文传输装置解决问题的理与本发明实施例中报文传输方法相似,因此该报文传输装置的实施可以参见方法的实施,重复之处不再赘述。
176.如图5所示,报文传输装置500包括:第一接收模块501,用于接收nat设备发送的第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据quic客户端的第一quic报文的连接标识字段中的信息获得的;第一处理模块502,用于根据所述第二quic报文进行处理。
177.其中,所述第二quic报文是通过如下方式获得的:
178.在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
179.在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
180.本发明实施例提供的装置,可以执行上述方法实施例,其实现理和技术效果类似,本实施例此处不再赘述。
181.本发明实施例还提供了一种报文传输装置,应用于nat设备。参见图6,图6是本发明实施例提供的报文传输装置的结构图。由于报文传输装置解决问题的理与本发明实施例中报文传输方法相似,因此该报文传输装置的实施可以参见方法的实施,重复之处不再赘述。
182.如图6所示,报文传输装置600包括:处理器601和收发器602;
183.所述收发器602,用于从quic客户端获取第一quic报文,所述第一quic报文的连接标识字段用于标识quic连接;
184.所述处理器601,用于根据所述第一quic报文,得到第二quic报文;
185.所述收发器602,用于向接收端发送所述第二quic报文;
186.其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据连接标识字段中的信息获得的。
187.其中,所述处理器601,用于在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者,在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
188.其中,所述处理器601,用于读取所述第一quic报文的标记字段flags的编码值;根据所述flags字段的编码值,确定所述quic连接的目标标识;将所述quic连接的目标标识填充在ipv4报文头的选项字段,获得所述第二quic报文。
189.其中,所述处理器601,用于读取所述第一quic报文的flags字段的编码值;根据所述flags字段的编码值,确定所述quic连接的目标标识;将所述quic连接的目标标识填充在ipv6报文头的扩展字段,获得所述第二quic报文。
190.其中,所述处理器601,用于根据所述flags字段的bit2和bit3的取值,确定所述第
一quic报文的连接标识字段的信息;根据所述第一quic报文的连接标识字段的信息,确定所述quic连接的目标标识。
191.其中,所述处理器601,用于:
192.若所述flags字段的bit2和bit3均为1,则所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识;
193.若所述flags字段的bit2取值为0,bit3取值为1,则所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识;
194.若所述flags字段的bit2取值为1,bit3取值为0,则所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识;
195.若所述flags字段的bit2和bit3均为0,则所述第一quic报文的连接标识字段中未存储quic连接标识。
196.其中,所述处理器601,用于:
197.若所述第一quic报文的连接标识字段中存储有8个字节的quic连接标识,则将所述8个字节的quic连接标识进行哈希运算并得到32bit的哈希值,将所述32bit的哈希值作为所述quic连接的目标标识;
198.若所述第一quic报文的连接标识字段中存储有4个字节的quic连接标识,则将所述4个字节的quic连接标识作为所述quic连接的目标标识;
199.若所述第一quic报文的连接标识字段中存储有1个字节的quic连接标识,则将所述1个字节的quic连接标识作为低8bit,并将高24bit补0,得到所述quic连接的目标标识;
200.若所述第一quic报文的连接标识字段中未存储有quic连接标识,则随机生成32bit的数值,并将所述32bit的数值作为所述quic连接的目标标识。
201.本发明实施例提供的装置,可以执行上述方法实施例,其实现理和技术效果类似,本实施例此处不再赘述。
202.本发明实施例还提供了一种报文传输装置,应用于接收端。参见图7,图7是本发明实施例提供的报文传输装置的结构图。由于报文传输装置解决问题的理与本发明实施例中报文传输方法相似,因此该报文传输装置的实施可以参见方法的实施,重复之处不再赘述。
203.如图7所示,报文传输装置700包括:处理器701和收发器702;
204.所述收发器702,用于接收nat设备发送的第二quic报文,其中,所述第二quic报文的报文头的预留字段用于唯一标识所述quic连接,且所述预留字段中的信息是根据quic客户端的第一quic报文的连接标识字段中的信息获得的;
205.所述处理器701,用于根据所述第二quic报文进行处理。
206.其中,所述第二quic报文是通过如下方式获得的:
207.在ipv4报文头的选项字段填充所述quic连接的目标标识,获得所述第二quic报文;或者
208.在ipv6报文头的扩展字段填充所述quic连接的目标标识,获得所述第二quic报文。
209.本发明实施例提供的装置,可以执行上述方法实施例,其实现理和技术效果类似,本实施例此处不再赘述。
210.本发明实施例还提供一种通信设备,包括:收发机、存储器、处理器及存储在存储
器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如上所述的报文传输方法中的步骤。
211.本发明实施例还提供一种可读存储介质,可读存储介质上存储有程序,该程序被处理器执行时实现上述文本处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的可读存储介质,可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nand flash)、固态硬盘(ssd))等。
212.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
213.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。根据这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁盘、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
214.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献