[发明专利]连接建立方法和装置有效
申请号: | 201910226248.2 | 申请日: | 2019-03-25 |
公开(公告)号: | CN109981640B | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 宛清 | 申请(专利权)人: | 新华三技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 310052 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 连接 建立 方法 装置 | ||
本申请提供了连接建立方法和装置。在本申请中,通过为Redis客户端上连接指定Redis服务端的指定接口绑定VPN标识,以基于VPN标识区分Redis服务端,实现了在同一Redis客户端同时连接至少两个不同Redis服务端(IP地址相同)的前提下,只要Redis客户端上连接这些不同Redis服务端的端口绑定的VPN标识不同,Redis客户端便能通过VPN标识区分各不同Redis服务端,成功与IP地址相同的各不同Redis服务端建立TCP连接。
技术领域
本申请涉及网络通信技术,特别涉及连接建立方法和装置。
背景技术
远程字典服务器(Redis:Remote dictionary server),是一种开源的基于内存的数据结构存储器,通常可作为数据库。在应用中,Redis客户端负责向Redis服务端备份数据。
在网络应用环境中,Redis客户端与Redis服务端之间会建立属于公有虚拟专用网络(VPN:Virtual Private Network)的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索引的套接字地址结构,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新华三技术有限公司,未经新华三技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910226248.2/2.html,转载请声明来源钻瓜专利网。