连接建立方法和装置制造方法及图纸

技术编号:21552333 阅读:31 留言:0更新日期:2019-07-07 00:20
本申请提供了连接建立方法和装置。在本申请中,通过为Redis客户端上连接指定Redis服务端的指定接口绑定VPN标识,以基于VPN标识区分Redis服务端,实现了在同一Redis客户端同时连接至少两个不同Redis服务端(IP地址相同)的前提下,只要Redis客户端上连接这些不同Redis服务端的端口绑定的VPN标识不同,Redis客户端便能通过VPN标识区分各不同Redis服务端,成功与IP地址相同的各不同Redis服务端建立TCP连接。

Connection Establishment Method and Device

【技术实现步骤摘要】
连接建立方法和装置
本申请涉及网络通信技术,特别涉及连接建立方法和装置。
技术介绍
远程字典服务器(Redis:Remotedictionaryserver),是一种开源的基于内存的数据结构存储器,通常可作为数据库。在应用中,Redis客户端负责向Redis服务端备份数据。在网络应用环境中,Redis客户端与Redis服务端之间会建立属于公有虚拟专用网络(VPN:VirtualPrivateNetwork)的TCP连接。但是,因为网络应用环境中IP地址资源有限,常会出现以下问题:至少两个网络设备比如Redis服务端被分配了相同的IP地址。如图1所示,Redis服务端1020与Redis服务端1021被分配了相同IP地址192.168.5.10。此种情况下,因为Redis服务端1020与Redis服务端1021存在IP地址冲突(IP地址相同),则会导致Redis客户端1011无法与Redis服务端1020、Redis服务端1021成功建立属于公网VPN的TCP连接。
技术实现思路
有鉴于此,本申请提供了一种连接建立方法和装置,以在同一Redis客户端同时连接具有相同IP地址的不同Redis服务端的场景下,实现Redis客户端成功与具有相同IP地址的各不同Redis服务端建立TCP连接。第一方面,本申请提供了一种连接建立方法,该方法应用于Redis客户端,包括:创建至少包括VPN索引的套接字地址结构,套接字地址结构与已创建的套接字对应,套接字与Redis客户端和指定Redis服务端之间待建立的TCP连接关联,VPN索引为Redis客户端上指定接口绑定的VPN标识的索引,指定接口为Redis客户端上连接指定Redis服务端的接口;依据套接字地址结构中的VPN索引在Redis客户端与指定Redis服务端之间建立归属于上述VPN标识对应的VPN的TCP连接。结合第一方面,在第一种可能的实现方式中,在创建套接字地址结构之前,上述方法还包括:接收配置指令,配置指令用于指示为指定接口绑定VPN标识,配置指令携带待与指定接口绑定的VPN标识;检查配置指令携带的VPN标识是否与Redis客户端上除指定接口之外的其它接口绑定的VPN标识相同;如果否,将配置指令携带的VPN标识与指定接口绑定;如果是,依据其它接口连接的对端设备的IP地址、以及指定接口连接的指定Redis服务端的IP地址,判断是否将配置指令携带的VPN标识与指定接口绑定。结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,依据其它接口连接的对端设备的IP地址、以及指定接口连接的指定Redis服务端的IP地址,判断是否将配置指令携带的VPN标识与指定接口绑定,包括:比较上述的其它接口连接的对端设备的IP地址和指定接口连接的指定Redis服务端的IP地址;如果相同,则禁止将配置指令携带的VPN标识与指定接口绑定并返回绑定失败消息;如果不同,则将配置指令携带的VPN标识与指定接口绑定。结合第一方面,在第三种可能的实现方式中,创建至少包括VPN索引的套接字地址结构,包括:获取已记录在Redis客户端的VPN索引;创建套接字地址结构,并将已获取的VPN索引添加至套接字地址结构的指定位置。结合第一方面,在第四种可能的实现方式中,依据套接字地址结构中的VPN索引在Redis客户端与指定Redis服务端之间建立归属于VPN的TCP连接,包括:通过已绑定所述VPN标识的所述指定接口,与所述指定Redis服务端进行用于TCP连接的交互,以在所述Redis客户端的所述指定接口与所述指定Redis服务端之间建立TCP连接,所述TCP连接归属于所述VPN标识对应的VPN。第二方面,本申请提供了一种连接建立装置,该装置应用于Redis客户端,包括:套接字模块,用于创建至少包括VPN索引的套接字地址结构,套接字地址结构与已创建的套接字对应,套接字与Redis客户端和指定Redis服务端之间待建立的TCP连接关联,VPN索引为Redis客户端上指定接口绑定的VPN标识的索引,指定接口为Redis客户端上连接指定Redis服务端的接口;TCP连接模块,用于依据套接字地址结构中的VPN索引在Redis客户端与指定Redis服务端之间建立归属于VPN标识对应的VPN的TCP连接。结合第一方面,在第一种可能的实现方式中,该装置进一步包括:VPN模块,用于在套接字模块创建套接字地址结构之前,接收配置指令,配置指令用于指示为指定接口绑定VPN标识,配置指令携带待与指定接口绑定的VPN标识;检查配置指令携带的VPN标识是否与Redis客户端上除指定接口之外的其它接口绑定的VPN标识相同;如果否,将配置指令携带的VPN标识与指定接口绑定;如果是,依据其它接口连接的对端设备的IP地址、以及指定接口连接的指定Redis服务端的IP地址,判断是否将配置指令携带的VPN标识与指定接口绑定。结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,VPN模块依据其它接口连接的对端设备的IP地址、以及指定接口连接的指定Redis服务端的IP地址,判断是否将配置指令携带的VPN标识与指定接口绑定,包括:比较其它接口连接的对端设备的IP地址和指定接口连接的指定Redis服务端的IP地址;如果相同,则禁止将配置指令携带的VPN标识与指定接口绑定并返回绑定失败消息;如果不同,则将配置指令携带的VPN标识与指定接口绑定。结合第二方面,在第三种可能的实现方式中,套接字模块创建至少包括VPN索引的套接字地址结构,包括:获取已记录在Redis客户端的VPN索引;创建套接字地址结构,并将已获取的VPN索引添加至套接字地址结构的指定位置。结合第二方面,在第四种可能的实现方式中,TCP连接模块依据套接字地址结构中的VPN索引在Redis客户端与指定Redis服务端之间建立归属于VPN的TCP连接,包括:通过已绑定所述VPN标识的所述指定接口,与所述指定Redis服务端进行用于TCP连接的交互,以在所述Redis客户端的所述指定接口与所述指定Redis服务端之间建立TCP连接,所述TCP连接归属于所述VPN标识对应的VPN。第三方面,本申请提供了一种电子设备,包括:机器可读存储介质和处理器,机器可读存储介质:存储指令代码,处理器:与机器可读存储介质通信,读取和执行机器可读存储介质中的指令代码,实现上述连接建立方法。第四方面,本申请提供了一种机器可读存储介质,机器可读存储介质上存储有若干计算机指令,计算机指令被执行时执行上述的连接建立方法。由以上技术方案可以看出,本申请中,通过将Redis客户端上连接指定Redis服务端的指定接口绑定VPN标识,利用绑定VPN标识的指定接口与指定Redis服务端建立TCP连接,进而利用VPN区分具体相同IP地址的不同Redis服务端。因此,实现了在同一Redis客户端同时连接至少两个不同Redis服务端(IP地址相同)的场景下,只要Redis客户端上连接这些不同Redis服务端的端口绑定的VPN标识不同,Redis客户端便能通过VPN标识区分各不同Redis服务端,成功与IP地址相同的各不同Redis服务端建立TCP连接。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本文档来自技高网...

【技术保护点】
1.一种连接建立方法,其特征在于,该方法应用于Redis客户端,包括:创建至少包括VPN索引的套接字地址结构,所述套接字地址结构与已创建的套接字对应,所述套接字与所述Redis客户端和指定Redis服务端之间待建立的TCP连接关联,所述VPN索引为所述Redis客户端上指定接口绑定的VPN标识的索引,所述指定接口为所述Redis客户端上连接所述指定Redis服务端的接口;依据所述套接字地址结构中的VPN索引在所述Redis客户端与所述指定Redis服务端之间建立归属于所述VPN标识对应的VPN的TCP连接。

【技术特征摘要】
1.一种连接建立方法,其特征在于,该方法应用于Redis客户端,包括:创建至少包括VPN索引的套接字地址结构,所述套接字地址结构与已创建的套接字对应,所述套接字与所述Redis客户端和指定Redis服务端之间待建立的TCP连接关联,所述VPN索引为所述Redis客户端上指定接口绑定的VPN标识的索引,所述指定接口为所述Redis客户端上连接所述指定Redis服务端的接口;依据所述套接字地址结构中的VPN索引在所述Redis客户端与所述指定Redis服务端之间建立归属于所述VPN标识对应的VPN的TCP连接。2.根据权利要求1所述的方法,其特征在于,所述创建所述套接字地址结构之前,所述方法还包括:接收配置指令,所述配置指令用于指示为所述指定接口绑定VPN标识,所述配置指令携带待与指定接口绑定的VPN标识;检查所述配置指令携带的VPN标识是否与所述Redis客户端上除所述指定接口之外的其它接口绑定的VPN标识相同;如果否,将所述配置指令携带的VPN标识与所述指定接口绑定;如果是,依据所述其它接口连接的对端设备的IP地址、以及所述指定接口连接的指定Redis服务端的IP地址,判断是否将所述配置指令携带的VPN标识与所述指定接口绑定。3.根据权利要求2所述的方法,其特征在于,所述依据其它接口连接的对端设备的IP地址、以及所述指定接口连接的指定Redis服务端的IP地址,判断是否将所述配置指令携带的VPN标识与所述指定接口绑定,包括:比较所述其它接口连接的对端设备的IP地址和所述指定接口连接的指定Redis服务端的IP地址;如果相同,则禁止将所述配置指令携带的VPN标识与所述指定接口绑定并返回绑定失败消息;如果不同,则将所述配置指令携带的VPN标识与所述指定接口绑定。4.根据权利要求1所述的方法,其特征在于,所述创建至少包括VPN索引的套接字地址结构,包括:获取已记录在所述Redis客户端的所述VPN索引;创建套接字地址结构,并将已获取的所述VPN索引添加至所述套接字地址结构的指定位置。5.根据权利要求1所述的方法,其特征在于,所述依据套接字地址结构中的VPN索引在所述Redis客户端与所述指定Redis服务端之间建立归属于VPN标识对应的VPN的TCP连接,包括:通过已绑定所述VPN标识的所述指定接口,与所述指定Redis服务端进行用于TCP连接的交互,以在所述Redis客户端的所述指定接口与所述指定Redis服务端之间建立TCP连接,所述TCP连接归属于所述VPN标识对应的VPN。6.一种连接建立装置,其特征在于,该装置应用于Redi...

【专利技术属性】
技术研发人员:宛清
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1