技术新讯 > 电子通信装置的制造及其应用技术 > 建立连接的方法、装置、设备、系统、介质及程序产品与流程  >  正文

建立连接的方法、装置、设备、系统、介质及程序产品与流程

  • 国知局
  • 2024-08-02 14:52:06

本技术涉及通信,特别涉及建立连接的方法、装置、设备、系统、介质及程序产品。

背景技术:

1、基于用户数据报文协议(user datagram protocol,udp)的快速udp互联网连接(quick udp internet connections,quic)是一种安全传输协议,运行在udp之上,且与传输层安全(transport layer security,tls)1.3高度集成。基于quic的超文本传输协议第三版(hypertext transfer protocol 3,http/3)可以实现0-往返时间(round trip time,rtt)的应用数据的发送。其中,0-rtt是指客户端向设备发送的第一条消息中即包括应用数据,即在发送应用数据之前,客户端和设备双方之间沟通的轮数为0。

2、例如,当客户端首次成功完成与设备的tls握手后,客户端和设备均可在本地存储预共享的加密密钥,称为恢复密钥。如果客户端再次与设备建立连接,则在向设备发送建连请求的情况下,直接向设备发送使用该恢复密钥加密的应用数据,而无需在发送应用数据之前再次执行tls握手,即实现建立连接和应用数据的同步发送。

3、在该0-rtt场景中,建连方式可以是多互联网协议(internet protocol,ip)并发建连,多ip并发建连是指使用多个ip同时发起建连,以提高连接建立的成功率。相关技术中,在多ip并发建连的0-rtt场景下,客户端会分别尝试基于ip1与设备1建连并发送0-rtt应用数据,基于ip2与设备2建连并发送0-rtt应用数据;由于0-rtt场景中基于ip1的建连发起后会直接默认为建连成功,所以会直接关闭基于ip2的建连。但实际上,由于设备1故障等原因存在基于ip1的建连失败的情况。

技术实现思路

1、本技术提供了一种建立连接的方法、装置、设备、系统、介质及程序产品,用于提高多ip并发建连的0-rtt场景下的建连成功率。

2、第一方面,提供了一种建立连接的方法,该方法包括:获取待访问的服务域名对应的多个ip;基于多个ip分别向多个ip对应的至少一个设备发送建连请求和第一数据包,第一数据包是访问服务域名所需传输的应用数据中的数据包;在接收到至少一个设备中的任一设备基于多个ip中的任一ip返回的应答消息的情况下,确定基于任一ip建立的连接成功,应答消息包括针对建连请求的建连应答以及针对第一数据包的确认包;基于多个ip中除任一ip之外的剩余ip分别向剩余ip对应的设备发送关闭消息,该关闭消息用于关闭基于剩余ip建立的连接。

3、该方法中,针对多ip并发建连的0-rtt场景,在真正接收到任一设备的应答消息后,才确定与任一设备基于任一ip的连接建立成功,进而才关闭基于剩余ip建立的连接。而不是基于任一ip的建连发起后,在未真正收到任一设备的应答消息时就直接默认为建连成功,进而关闭基于其他ip的建连。即解决由未真正收到任一设备的应答消息而提前关闭基于其他ip的建连导致的连接失败问题,也即提高了建连成功率。

4、在一种可能的实施方式中,建连请求中携带第一标识,且第一数据包中携带第二标识,第一标识用于设备对接收的相同第一标识的建连请求进行去重,第二标识用于设备对接收的相同请求标识的第一数据包进行去重。通过分别携带第一标识和第二标识的方式,可以避免重复发送的建连请求和第一数据包被重复处理,提高了处理建连请求和第一数据包的准确性。

5、在一种可能的实施方式中,建连请求和第一数据包封装在报文中传输,报文中还封装有第三标识,第三标识用于设备对接收的相同第三标识的报文进行去重。通过打包携带第三标识的方式,可以避免重复发送的报文被重复处理,提高了处理报文的准确性。

6、在一种可能的实施方式中,第一数据包使用恢复密钥加密,恢复密钥是与服务域名对应的设备进行第一次握手时确定的共享密钥。通过加密提高了第一数据包传输的安全性,并且由于恢复密钥是与服务域名对应的设备进行第一次握手时确定的共享密钥,因此,能够保证第一数据包的加解密过程准确。

7、在一种可能的实施方式中,确定基于任一ip的连接建立成功之后,还基于任一ip向任一ip对应的设备发送第二数据包,第二数据包是第一数据包之后的数据包。在成功建立连接后,即可通过成功建立的连接进行后续数据的传输。

8、第二方面,提供了一种建立连接的方法,该方法包括:基于任一ip接收客户端发送的建连请求和第一数据包,第一数据包是访问服务域名所需传输的应用数据中的数据包;在建连请求和第一数据包是首次处理的情况下,基于任一ip向客户端返回应答消息,确定基于任一ip建立的连接成功,应答消息包括针对建连请求的建连应答以及针对第一数据包的确认包;或者,在建连请求和第一数据包非首次处理的情况下,基于任一ip接收客户端发送的关闭消息,以关闭基于任一ip建立的连接。

9、该方法中,针对多ip并发建连的0-rtt场景,对于接收的建连请求和第一数据包,在判断建连请求和第一数据包是首次处理的情况下,才对建连请求和第一数据包进行处理。由此,可以避免重复发送的建连请求和第一数据包被重复处理,提高了处理建连请求和第一数据包的准确性。

10、在一种可能的实施方式中,建连请求中携带第一标识,且第一数据包中携带第二标识,第一标识用于设备对接收的相同第一标识的建连请求进行去重,第二标识用于设备对接收的相同请求标识的第一数据包进行去重;基于任一ip接收客户端发送的建连请求和第一数据包之后,还包括:如果建连数据库中不包括第一标识且不包括第二标识,确定建连请求和第一数据包是首次处理,建连数据库记录有首次处理的建连请求的标识以及首次处理的第一数据包的标识;如果建连数据库中包括第一标识或第二标识中的至少一个,确定建连请求和第一数据包非首次处理。

11、在一种可能的实施方式中,基于任一ip向客户端返回应答消息之后,还包括:在建连数据库中增加第一标识和第二标识。通过建连数据库来记录首次处理的建连请求的第一标识和第一数据包的第二标识,进而通过建连数据库中是否包含第一标识和第二标识可以准确的判断接收的建连请求和第一数据包是否为首次处理。

12、在一种可能的实施方式中,建连请求和第一数据包封装在报文中传输,报文中还封装有第三标识,第三标识用于设备对接收的相同第三标识的报文进行去重;基于任一ip接收客户端发送的建连请求和第一数据包之后,还包括:如果建连数据库中不包括第三标识,确定建连请求和第一数据包是首次处理,建连数据库记录有首次处理的报文的标识;如果建连数据库中包括第三标识,确定建连请求和第一数据包非首次处理。

13、在一种可能的实施方式中,基于任一ip向客户端返回应答消息之后,还包括:在建连数据库中增加第三标识。通过建连数据库来记录首次处理的报文的第三标识,进而通过建连数据库中是否包含第三标识可以准确的判断接收的报文是否为首次处理。

14、在一种可能的实施方式中,第一数据包使用恢复密钥加密,恢复密钥是与客户端进行第一次握手时确定的共享密钥;基于任一ip向客户端返回应答消息之前,还基于恢复密钥对第一数据包解密。

15、第三方面,提供了一种建立连接的装置,该装置包括收发模块和处理模块。

16、收发模块,用于执行第一方面或第一方面的任一种可能的实施方式中所执行的接收和/或发送相关的操作;处理模块,用于执行第一方面或第一方面的任一种可能的实施方式中的接收和/或发送相关的操作之外的其它操作。

17、或者,收发模块,用于执行第二方面或第二方面的任一种可能的实施方式中所执行的接收和/或发送相关的操作;处理模块,用于执行第二方面或第二方面的任一种可能的实施方式中的接收和/或发送相关的操作之外的其它操作。

18、在一种可能的实施方式中,收发模块包括接收模块和/或发送模块。接收模块用于执行接收相关的操作,发送模块用于执行发送相关的操作。

19、在收发模块,用于执行第一方面或第一方面的任一种可能的实施方式中所执行的接收和/或发送相关的操作;处理模块,用于执行第一方面或第一方面的任一种可能的实施方式中的接收和/或发送相关的操作之外的其它操作的情况下。处理模块,用于获取待访问的服务域名对应的多个ip;收发模块,用于基于多个ip分别向多个ip对应的至少一个设备发送建连请求和第一数据包,第一数据包是访问服务域名所需传输的应用数据中的数据包;处理模块,用于在接收到至少一个设备中的任一设备基于多个ip中的任一ip返回的应答消息的情况下,确定基于任一ip建立的连接成功,应答消息包括针对建连请求的建连应答以及针对第一数据包的确认包;收发模块,用于基于多个ip中除任一ip之外的剩余ip分别向剩余ip对应的设备发送关闭消息,关闭消息用于关闭基于剩余ip建立的连接。

20、在一种可能的实施方式中,建连请求中携带第一标识,且第一数据包中携带第二标识,第一标识用于设备对接收的相同第一标识的建连请求进行去重,第二标识用于设备对接收的相同请求标识的第一数据包进行去重。

21、在一种可能的实施方式中,建连请求和第一数据包封装在报文中传输,报文中还封装有第三标识,第三标识用于设备对接收的相同第三标识的报文进行去重。

22、在一种可能的实施方式中,第一数据包使用恢复密钥加密,恢复密钥是与服务域名对应的设备进行第一次握手时确定的共享密钥。

23、在一种可能的实施方式中,收发模块,还用于基于任一ip向任一ip对应的设备发送第二数据包,第二数据包是第一数据包之后的数据包。

24、在收发模块,用于执行第二方面或第二方面的任一种可能的实施方式中所执行的接收和/或发送相关的操作;处理模块,用于执行第二方面或第二方面的任一种可能的实施方式中的接收和/或发送相关的操作之外的其它操作的情况下。收发模块,用于基于任一ip接收客户端发送的建连请求和第一数据包,第一数据包是访问服务域名所需传输的应用数据中的数据包;在建连请求和第一数据包是首次处理的情况下,基于任一ip向客户端返回应答消息,确定基于任一ip建立的连接成功,应答消息包括针对建连请求的建连应答以及针对第一数据包的确认包;或者,在建连请求和第一数据包非首次处理的情况下,基于任一ip接收客户端发送的关闭消息,以关闭基于任一ip建立的连接。

25、在一种可能的实施方式中,建连请求中携带第一标识,且第一数据包中携带第二标识,第一标识用于设备对接收的相同第一标识的建连请求进行去重,第二标识用于设备对接收的相同请求标识的第一数据包进行去重;处理模块,用于如果建连数据库中不包括第一标识且不包括第二标识,确定建连请求和第一数据包是首次处理,建连数据库记录有首次处理的建连请求的标识以及首次处理的第一数据包的标识;如果建连数据库中包括第一标识或第二标识中的至少一个,确定建连请求和第一数据包非首次处理。

26、在一种可能的实施方式中,处理模块,还用于在建连数据库中增加第一标识和第二标识。

27、在一种可能的实施方式中,建连请求和第一数据包封装在报文中传输,报文中还封装有第三标识,第三标识用于设备对接收的相同第三标识的报文进行去重;处理模块,用于如果建连数据库中不包括第三标识,确定建连请求和第一数据包是首次处理,建连数据库记录有首次处理的报文的标识;如果建连数据库中包括第三标识,确定建连请求和第一数据包非首次处理。

28、在一种可能的实施方式中,处理模块,还用于在建连数据库中增加第三标识。

29、在一种可能的实施方式中,第一数据包使用恢复密钥加密,恢复密钥是与客户端进行第一次握手时确定的共享密钥;处理模块,还用于基于恢复密钥对第一数据包解密。

30、第四方面,提供了一种网络设备,该网络设备包括:处理器,所述处理器与存储器耦合,所述存储器中存储有至少一条程序指令或代码,所述至少一条程序指令或代码由所述处理器加载并执行,以使所述网络设备实现如上第一方面或第二方面任一所述的建立连接的方法。

31、可选地,所述处理器为一个或多个,所述存储器为一个或多个。

32、可选地,所述存储器可以与所述处理器集成在一起,或者所述存储器与处理器分离设置。

33、在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,rom),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本技术对存储器的类型以及存储器与处理器的设置方式不做限定。

34、第五方面,提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该通信装置执行第一方面或第一方面的任一种可能的实施方式中的方法,或者执行第二方面或第二方面的任一种可能的实施方式中的方法。

35、第六方面,提供了一种建立连接的系统,该建立连接的系统包括客户端和至少一个设备;

36、客户端用于执行所述第一方面或第一方面的任一种可能的实现方式中的方法,至少一个设备中的任一设备用于执行所述第二方面或第二方面的任一种可能的实现方式中的方法。

37、第七方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行,以使计算机实现上述第一方面或第一方面的任一种可能的实施方式中的方法,或者实现上述第二方面或第二方面的任一种可能的实施方式中的方法。

38、第八方面,提供了一种计算机程序(产品),所述计算机程序(产品)包括:计算机程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行上述各方面中的方法。

39、第九方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的通信设备执行上述各方面中的方法。

40、第十方面,提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,所述输入接口、输出接口、所述处理器以及所述存储器之间通过内部连接通路相连,所述处理器用于执行所述存储器中的代码,当所述代码被执行时,所述处理器用于执行上述各方面中的方法。

41、应当理解的是,本技术的第二方面至第十方面技术方案及对应的可能的实施方式所取得的有益效果可以参见上述对第一方面及其对应的可能的实施方式的技术效果,此处不再赘述。

本文地址:https://www.jishuxx.com/zhuanli/20240801/244103.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。