CN110868450A - 双机房多入口会话保持方法、系统、装置及存储介质 - Google Patents
双机房多入口会话保持方法、系统、装置及存储介质 Download PDFInfo
- Publication number
- CN110868450A CN110868450A CN201910978218.7A CN201910978218A CN110868450A CN 110868450 A CN110868450 A CN 110868450A CN 201910978218 A CN201910978218 A CN 201910978218A CN 110868450 A CN110868450 A CN 110868450A
- Authority
- CN
- China
- Prior art keywords
- domain name
- name resolution
- region
- client
- operator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明属于安全防护技术领域,公开了一种双机房多入口会话保持方法、系统、装置及存储介质,方法包括:第一域名解析服务器接收用户的访问请求,对目标地址的URL进行域名解析并生成URL域名解析结果,将URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;通过第二域名解析服务器进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与真实IP字段对应的域名解析结果;第一域名解析服务器将第二域名解析服务器返回的域名解析结果返回给客户端,使得下一次同一用户在请求访问时,能在解析缓存列表中查询到与真实IP字段相对应的域名解析结果并返回给客户端,实现会话保持,避免登录超时等异常。
Description
技术领域
本发明涉及安全防护技术领域,尤其涉及一种双机房多入口会话保持方法、系统、装置及存储介质。
背景技术
双数据中心是同时对外提供业务生产服务的双活模式,两个数据中心是对等的、不分主从、并可同时部署业务,可极大的提高资源的利用率和系统的工作效率、性能。双数据中心包括同城双活和异地双活,其中,对于同城双活,同城双活的应用存在双机房双入口,对原来只有单入口时通过F5实现会话保持分流的应用带来新的问题。对于内网而言,在实现同城双活前,内网使用infoblox设备做静态域名解析,只解析到一个入口地址,经过F5的会话保持,就能把同一个用户的多次访问分配到同一个服务器上。但内网有了双机房入口之后,使用全局流量管理(Global Traffic Manager,GTM)设备动态域名解析来进行动态分流,采用按比例分流的策略,对同一个用户来说,就非常容易发生第一次请求被分流到机房一的入口,第二次请求被分流到机房二的入口。另外由于用户连接的域名系统服务器(Domain Name System,DNS)不是GTM设备,而是3台相互冗余备份的infoblox设备,用户请求域名解析需经过infoblox设备的中转,GTM设备无法看到用户的真实IP并根据真实IP来进行会话保持。对于公网而言,公网有了双机房,同一个运营商会存在多条线路,使用全局流量管理的智能解析分流策略时,由于公网环境的复杂性,无法获取到客户端的真实IP,即使GTM设备上设置了会话保持,同一个客户每次请求做域名解析时所经过的域名系统服务器是不一样的,就会导致域名解析出不同的结果,比如:应用在两个机房IDC1和IDC2都存在电信入口,用户第一次经过dns服务器A——>B——>C,然后GTM设备,GTM设备把它分流到IDC1;用户第二次经过dns服务器A——>D——>E,然后到GTM设备,GTM设备就可能把它分流到IDC2,就会导致用户出现登陆超时或没有登录的异常情况。目前,对于双机房多入口,无论是内网应用还是公网应用,均难以实现会话保持。
发明内容
本发明提供一种双机房多入口会话保持方法、系统、装置及存储介质,以解决现有技术难以实现会话保持的问题。
为了实现上述目的,本发明的第一个方面是提供一种双机房多入口会话保持方法,应用于内网应用,所述方法包括以下步骤:
第一域名解析服务器接收用户通过客户端触发的访问请求,所述访问请求包括目标地址的URL,对所述目标地址的URL进行域名解析并生成URL域名解析结果,将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;
第二域名解析服务器对第一域名解析服务器发送的URL域名解析结果进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与客户端的真实IP字段相对应的域名解析结果,若解析缓存列表中存在与客户端的真实IP字段相对应的域名解析结果,则将查询到的域名解析结果返回至第一域名解析服务器,若解析缓存列表中不存在与客户端的真实IP字段相对应的域名解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP作为域名解析结果返回至第一域名解析服务器,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中;第一域名解析服务器将第二域名解析服务器返回的域名解析结果返回给客户端,以供客户端根据返回的所述域名解析结果与应用服务端之间建立连接并进行数据交互。
在一个实施例中,在所述对所述目标地址的URL进行域名解析的步骤之前,所述方法还包括,查询所述客户端的缓存列表中是否存在与URL的域名对应的IP;
若存在与URL的域名对应的IP,则将查询到的IP返回至客户端,若不存在与URL的域名对应的IP,则从配置文件中读取根域名服务器的地址;
所述对所述目标地址的URL进行域名解析的步骤,包括,在本地查找与URL的域名对应的解析结果;对查找到的解析结果进行递归解析,将所述目标地址的URL解析为一个双活域名。
在一个实施例中,所述将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器的步骤之前,所述方法还包括:当将目标地址的URL解析为双活域名时,启用EDNS的ECS类型。
为了实现上述目的,本发明的第二个方面是提供一种双机房多入口会话保持方法,基于解析服务器,所述双机房多入口会话保持方法应用于公网应用,所述方法包括以下步骤:
设置地域运营商region,所述地域运营商region包括对应地区的运营商的网段信息,并且将属于同一地域的双机房对应的地区运营商的网段信息划分至不同的地域运营商region中;
创建pool,并将pool划分到相应的地域运营商region;
设置默认的运营商pool;
根据地域运营商region、pool以及默认的运营商pool,构建region拓扑记录;
根据预先获取的客户端的真实IP字段识别网段信息,根据识别的网段信息确定对应的地域运营商region,在构建的region拓扑记录中查询地域运营商region对应的pool,根据region拓扑记录中记录的pool的优先级确定客户端IP所对应的入口地址。
在一个实施例中,设置地域运营商region的步骤,包括:
设置地区运营商region,每个地区运营商region均包含了对应的地区信息、运营商信息以及网段信息;
根据地区运营商region设置地域运营商region,每个地域运营商region均包括多个地区运营商region。
在一个实施例中,创建pool的步骤,包括:
根据所述公网应用对应的入口创建地区运营商pool;
创建地域运营商pool,并将地区运营商pool划分到相应的地域运营商pool。
在一个实施例中,在构建的region拓扑记录中查询地域运营商region对应的pool的步骤,包括:
根据识别的网段信息,确定所述客户端所属地域以及所属运营商;
在构建的region拓扑记录中查询优先级最高的region记录,查询对应的regionpool中是否存在与所述客户端属于同一运营商的入口地址;
若不存在与所述客户端属于同一运营商的入口地址,则将region记录的优先级降低一级,查询对应的region pool中是否存在与所述客户端所属地域的距离位于预设距离范围内且与所述客户端属于同一运营商的入口地址;
若不存在距离位于预设距离范围内且与所述客户端属于同一运营商的入口地址,则将region记录的优先级再降低一级,查询对应的region pool中是否存在与所述客户端属于同一地域的BGP入口;
若不存在与所述客户端属于同一地域的BGP入口,则查询与所述客户端所属地域的距离位于预设距离范围之内的地域的BGP入口中是否存在与所述客户端属于同一运营商的入口地址;
若与所述客户端所属地域的距离位于预设距离范围之内的地域的BGP入口中不存在与所述客户端属于同一运营商的入口地址,则进入预设的运营商pool,在预设的运营商pool中查询对应的入口地址。
为了实现上述目的,本发明的第三个方面是一种双机房多入口会话保持系统,所述系统包括:
第一域名解析服务器,用于接收用户通过客户端触发的访问请求,所述访问请求包括目标地址的URL,对所述目标地址的URL进行域名解析并生成URL域名解析结果,将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;
第二域名解析服务器,用于对第一域名解析服务器发送的URL域名解析结果进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与客户端的真实IP字段相对应的域名解析结果,若解析缓存列表中存在与客户端的真实IP字段相对应的域名解析结果,则将查询到的域名解析结果返回至第一域名解析服务器,若解析缓存列表中不存在与客户端的真实IP字段相对应的域名解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP作为域名解析结果返回至第一域名解析服务器,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中;
所述第一域名解析服务器,还用于将第二域名解析服务器返回的域名解析结果返回给客户端,以供客户端根据返回的所述域名解析结果与应用服务端之间建立连接并进行数据交互。
为了实现上述目的,本发明的第四个方面是提供一种电子装置,该电子装置包括:处理器,存储器,所述存储器中包括双机房多入口会话保持程序,所述双机房多入口会话保持程序被所述处理器执行时实现如上所述的双机房多入口会话保持方法。
为了实现上述目的,本发明的第五个方面是提供一种计算机可读存储介质,所述计算机可读存储介质中包括双机房多入口会话保持程序,所述双机房多入口会话保持程序被处理器执行时,实现如上所述的双机房多入口会话保持方法。
相对于现有技术,本发明具有以下优点和有益效果:
本发明针对内网应用,通过将客户端的真实IP字段发送给第二域名解析服务器,使得客户端真实IP能够被第二域名解析服务器读取并根据客户端真实IP进行会话保持,实现了同一用户在缓存有效期内的所有访问请求都落在同一个机房的同一个服务器上。并且,只针对双活域名启用EDNS,有效控制域名服务器的资源消耗,保障设备资源消耗稳定。
本发明针对公网应用,根据运营商优先、地域其次的分流方式,使得同一个用户每一次的访问都会被分流到同一个入口,实现用户的会话保持需求,保障业务系统的正常运行,并且,在此基础上,将属于同一地域的双机房对应的网段信息划分至不同的地域运营商region中,使得解析服务器认为两个机房不属于同一地区,从而避免同一用户的两次访问请求被分到不同的机房,避免出现用户没有登录或会话超时等异常情况。
附图说明
图1为本发明所述双机房多入口会话保持方法的一个实施例的流程示意图;
图2为本发明所述双机房多入口会话保持方法的另一个实施例的流程示意图;
图3为本发明中双机房多入口会话保持程序的一个实施例的模块示意图;
图4为本发明中双机房多入口会话保持程序的另一个实施例的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将参考附图来描述本发明所述的实施例。本领域的普通技术人员可以认识到,在不偏离本发明的精神和范围的情况下,可以用各种不同的方式或其组合对所描述的实施例进行修正。因此,附图和描述在本质上是说明性的,仅仅用以解释本发明,而不是用于限制权利要求的保护范围。此外,在本说明书中,附图未按比例画出,并且相同的附图标记表示相同的部分。
图1为本发明所述双机房多入口会话保持方法的一个实施例的流程示意图,如图1所示,本发明所述双机房多入口会话保持方法,应用于内网应用时,包括以下步骤:
步骤S1,第一域名解析服务器接收用户通过客户端触发的访问请求,所述访问请求包括目标地址的URL(Uniform Resource Locator),对所述目标地址的URL进行域名解析并生成URL域名解析结果,将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;
步骤S2,通过第二域名解析服务器对第一域名解析服务器发送的URL域名解析结果进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与客户端的真实IP字段相对应的域名解析结果,若解析缓存列表中存在与客户端的真实IP字段相对应的域名解析结果,则将查询到的域名解析结果返回至第一域名解析服务器,若解析缓存列表中不存在与客户端的真实IP字段相对应的域名解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP作为域名解析结果返回至第一域名解析服务器,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中;
步骤S3,第一域名解析服务器将第二域名解析服务器返回的域名解析结果返回给客户端,以供客户端根据返回的域名解析结果与应用服务端之间建立连接并进行数据交互,使得下一次同一用户在请求访问时,能够在第二域名解析服务器上的解析缓存列表中查询到与客户端的真实IP字段相对应的域名解析结果并返回给客户端,从而实现了同一用户在缓存有效期内的所有访问请求都落在同一个机房的同一个服务器上。
本发明为双机房多入口的内网应用的会话保持提供了具体有效的技术方案,具有普遍适用性。
本发明的一个可选实施例中,在第一域名解析服务器对所述目标地址的URL进行域名解析的步骤之前,所述方法还包括:
查询所述客户端的缓存列表中是否存在与URL的域名对应的IP;
若存在与URL的域名对应的IP,则将查询到的IP返回至客户端,若不存在与URL的域名对应的IP,则从配置文件中读取根域名服务器的地址。其中,根域名服务器为3台第一域名解析服务器,客户端会先连接第一台第一域名解析服务器,第一台连接失败才使用第二台,第二台也连接失败才使用第三台,连接失败的原因包括网络异常、DNS服务器异常等。
在本发明中,可选的,第一域名解析服务器对所述目标地址的URL进行域名解析的步骤,包括:在本地查找与URL的域名对应的解析结果;对查找到的解析结果进行递归解析,将所述目标地址的URL解析为一个双活域名。
进一步地,第一域名解析服务器将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器的步骤之前,所述方法还包括:当将目标地址的URL解析为双活域名时,启用EDNS的ECS类型,只针对双活域名,启动EDNS协议,可以有效控制域名服务器的资源消耗。
进一步地,第二域名解析服务器对双活域名进行解析时,对双活域名启用PreferClient Subnet选项,使得客户端真实IP能被第二域名解析服务器读取到并根据客户端真实IP进行会话保持。
本发明中设定的动态解析策略包括三种策略:第一种是按比例分流策略,按设定比例分流到两个机房,其中一个机房异常,流量自动100%分发到另一个机房;第二种是主备分流策略,以其中一个机房为主,主机房异常时才自动切换到备用机房;第三种是智能分流策略,根据客户端所在机房返回同机房被调用方的IP,比如A调B,A和B都在IDC1和IDC2部署了应用,GTM会给IDC1的A返回B在IDC1的IP,给IDC2的A返回B在IDC2的IP。
本发明的一个实施例中,第一域名解析服务器可以为用于建构infoblox网络核心服务解决方案的infoblox设备,第二域名解析服务器可以为用于广域网流量管理的GTM设备,从整个广域网层面进行机房数据中心之间的数据分发。
实施例:
用户通过客户端触发一个访问请求,该访问请求中包括的URL为:http://www.paic.com.cn/index.jsp,首先查询客户端的缓存列表中是否存在域名www.paic.com.cn对应的IP,若有,则直接将查询到的域名对应的IP返回至客户端,若没有,则从配置文件读取根域名服务器的地址,其中根域名服务器为3台infoblox设备,客户端会先连接第一台infoblox设备,第一台连接失败才使用第二台,第二台也连接失败才使用第三台,然后向第一台infoblox设备发起请求;infoblox设备收到这个请求后,发现是请求paic.com.cn这个域的,这个域的权威解析就在本地,对于paic.com.cn这个域名,infoblox设备拥有绝对的解析权,其他的解析结果都是来自infoblox设备。在infoblox设备本地查找发现www.paic.com.cn对应的解析结果为www.aa.paic.com.cn,其中,A.com.cn可以解析到IP 10.1.1.1,这个10.1.1.1就是一个A(ddress)记录;它也可以解析到A.aa.com.cn,A.aa.com.cn是一个c(name)记录,在infoblox设备中对应的解析结果为一个c记录。于是infoblox设备递归解析www.aa.paic.com.cn,infoblox设备已授权aa.paic.com.cn由GTM设备做权威解析。这是一个双活域名,对这个双活域名,infoblox设备对aa.paic.com.cn域启用了EDNS的ECS类型,于是infoblox设备去请求GTM设备解析www.aa.paic.com.cn时,会把客户端真实IP带过去。GTM设备接到infoblox设备的解析请求,发现aa.paic.com.cn的权威解析就在本地,在本地发现www.aa.paic.com.cn启用了Prefer Client Subnet选项,于是读取到客户端的真实IP字段,检查解析缓存列表里是否存在该IP的解析结果(针对这个客户端IP解析域名www.aa.paic.com.cn请求的解析结果,就是一个A记录),如果存在该IP的解析结果,就把缓存的解析结果返回;如果不存在该IP的解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP返回给infoblox设备,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中。infoblox设备把GTM设备返回的解析结果返回给客户端,以供客户端根据结果和应用服务端建立连接并开始数据交互。下一次同一用户在请求访问时就能在GTM设备上的解析缓存列表中找到上次解析的结果并直接返回,从而实现了让同一个客户在缓存有效期内的所有请求都落到同一个机房的同一个服务器上。
图2为本发明所述双机房多入口会话保持方法的一个实施例的流程示意图,如图2所示,本发明所述双机房多入口会话保持方法,基于解析服务器,应用于公网应用时,包括以下步骤:
步骤S1′,设置地域运营商region,所述地域运营商region包括对应地区的运营商的网段信息,并且将属于同一地域的双机房对应的地区运营商的网段信息划分至不同的地域运营商region中,例如,设置的地域运营商region包括A地域运营商region、B地域运营商region和C地域运营商region,双机房包括A机房和B机房,若仅仅根据双机房所属地域设置,则A机房和B机房对应的地域运营商region均是A地域运营商region,需要将A机房和B机房对应的地区运营商的网段信息均划分至A地域运营商region中,但是,本发明中,在设置地域运营商region时,若将A机房对应的地区运营商的网段信息划分至A地域运营商region中,则将B机房对应的地区运营商的网段信息划分至B地域运营商region或C地域运营商region中,使得属于同一地域的双机房对应的地域运营商region不同;
步骤S2′,创建pool,并将pool划分到相应的地域运营商region;
步骤S3′,设置默认的运营商pool;
步骤S4′,根据地域运营商region、pool以及默认的运营商pool,构建region拓扑记录;
步骤S5′,根据预先获取的客户端的真实IP字段识别网段信息,根据识别的网段信息确定对应的地域运营商region,在构建的region拓扑记录中查询地域运营商region对应的pool,根据region拓扑记录中记录的pool的优先级确定客户端IP所对应的入口地址。
对于同城双活的应用,将双活机房中其中一个机房对应的网段信息划分至其他地区的地域运营商region中,使得同地域不同机房的入口分别属于不同的区域,从而使得同一客户只能匹配一个入口地址,实现同城双活用户的会话保持。
在本发明的一个可选实施例中,设置地域运营商region的步骤,包括:
设置地区运营商region,例如,河南电信设置为henan_ct_region,河南移动设置为henan_cm_region,河南联通设置为henan_cu_region,上海电信设置为shanghai_ct_region,上海移动设置为shanghai_cm_region,每个地区运营商region均包含了对应的地区信息、运营商信息以及网段信息;
根据地区运营商region设置地域运营商region,每个地域运营商region均包括多个地区运营商region,例如,地域运营商region包括北方电信north_ct_region,中部电信middle_ct_region,南方电信sourth_ct_region,北方联通north_cu_region,中部联通middle_cu_region,南方联通sourth_cu_region,北方移动north_cm_region,中部移动middle_cm_region,南方移动sourth_cm_region。其中,北方电信north_ct_region包括内蒙古电信neimenggu_ct_region、黑龙江电信heilongjiang_ct_region等北部区域的地区运营商region(大区域包含小区域),中部电信middle_ct_region包括上海电信shanghai_ct_region、河南电信henan_ct_region等中部区域的地区运营商region,南方电信sourth_ct_region包括广东电信guangdong_ct_region、广西电信guangxi_ct_region等南方区域的地区运营商region。联通、移动运营商以此类推。
在本发明的一个可选实施例中,创建pool的步骤,包括:
根据所述公网应用对应的入口创建地区运营商pool;
创建地域运营商pool,并将地区运营商pool划分到相应的地域运营商pool,例如,应用A有深圳电信入口和上海联通入口,则对应有2个pool:pool名字分别为A_shenzhen_ct_pool,A_shanghai_cu_pool。Pool中包含了A应用的具体入口IP,这两个pool会再被划分到相应的地域运营商pool,sourth_ct_region_pool和middle_cu_region_pool中。
本发明的一个可选实施例中,设置默认的运营商pool的步骤,包括:
将公网应用对应的所有运营商的入口列入默认的运营商列表中;
匹配客户端入口和运营商入口,若不存在与客户端对应的运营商入口,则进入边界网关协议(Border Gateway Protocol,BGP)入口,若不存在BGP入口,则设置默认的运营商入口。
进一步地,默认的运营商pool对应多个入口时,对客户端IP进行hash,根据hash结果确定其中一个入口作为客户端对应的入口地址。
本发明中构建的region拓扑记录如下表1所示:
表1
优选地,在构建的region拓扑记录中查询地域运营商region对应的pool的步骤,包括:
根据识别的网段信息,确定所述客户端所属地域以及所属运营商,包括属于北方、中部还是南方,是电信、联通、移动还是BGP;
在构建的region拓扑记录中查询优先级最高的region记录,查询对应的regionpool中是否存在与所述客户端属于同一运营商的入口地址,若不存在与所述客户端属于同一运营商的入口地址,则将region记录的优先级降低一级,查询对应的region pool中是否存在与所述客户端所属地域的距离位于预设距离范围内且与所述客户端属于同一运营商的入口地址(其中的预设距离范围可以是与客户端属于同一地区或相邻地区等),若不存在距离位于预设距离范围内且与所述客户端属于同一运营商的入口地址,则将region记录的优先级再降低一级,查询对应的region pool中是否存在与所述客户端属于同一地域的BGP入口,若不存在与所述客户端属于同一地域的BGP入口,则查询与所述客户端所属地域的距离位于预设距离范围之内的地域的BGP入口中是否存在与所述客户端属于同一运营商的入口地址,若与所述客户端所属地域的距离位于预设距离范围之内的地域的BGP入口中不存在与所述客户端属于同一运营商的入口地址,则进入预设的运营商pool,在预设的运营商pool中查询对应的入口地址。
本发明中,对于华北、华中或华南地区的异地机房双活,根据region拓扑记录中的优先级,依次查询对应的region pool是否存在与客户端对应的入口地址,即可以找到与客户端同一运营商的入口地址,满足会话保持的要求。
对于同城双活机房,机房是三层互通,逻辑和物理上都是2个机房,若2个机房都在深圳,原有机房的网段已划入华南地区的地域运营商region,将新建的双活机房的网段划入华中地区的地域运营商region,就能把华南新机房的IP识别为华中地区了,就可以确保同城不同机房的入口分属不同区域,在查询region拓扑记录时,在运营商相同的情况下,可以按照地域区分各个机房入口,找到同一运营商的入口地址,满足会话保持需求。
本发明还提供一种双机房多入口会话保持系统,包括:第一域名解析服务器和第二域名解析服务器,其中,第一域名解析服务器用于接收用户通过客户端触发的访问请求,所述访问请求包括目标地址的URL,对所述目标地址的URL进行域名解析并生成URL域名解析结果,将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;第二域名解析服务器,用于对第一域名解析服务器发送的URL域名解析结果进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与客户端的真实IP字段相对应的域名解析结果,若解析缓存列表中存在与客户端的真实IP字段相对应的域名解析结果,则将查询到的域名解析结果返回至第一域名解析服务器,若解析缓存列表中不存在与客户端的真实IP字段相对应的域名解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP作为域名解析结果返回至第一域名解析服务器,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中;所述第一域名解析服务器,还用于将第二域名解析服务器返回的域名解析结果返回给客户端,以供客户端根据返回的所述域名解析结果与应用服务端之间建立连接并进行数据交互。
本发明之双机房多入口会话保持系统的具体实施方式与上述双机房多入口会话保持方法的具体实施方式大致相同,在此不再赘述。
本发明所述双机房多入口会话保持方法应用于电子装置,所述电子装置可以是电视机、智能手机、平板电脑、计算机等终端设备。
所述电子装置包括:处理器;存储器,用于存储双机房多入口会话保持程序,处理器执行所述双机房多入口会话保持程序,实现上述的双机房多入口会话保持方法的步骤。
所述电子装置还包括网络接口和通信总线等。其中,网络接口可以包括标准的有线接口、无线接口,通信总线用于实现各个组件之间的连接通信。
存储器包括至少一种类型的可读存储介质,可以是闪存、硬盘、光盘等非易失性存储介质,也可以是插接式硬盘等,且并不限于此,可以是以非暂时性方式存储指令或软件以及任何相关联的数据文件并向处理器提供指令或软件程序以使该处理器能够执行指令或软件程序的任何装置。本发明中,存储器存储的软件程序包括双机房多入口会话保持程序,并可以向处理器提供该双机房多入口会话保持程序,以使得处理器可以执行该双机房多入口会话保持程序,实现双机房多入口会话保持方法的步骤。
处理器可以是中央处理器、微处理器或其他数据处理芯片等,可以运行存储器中的存储程序,例如,本发明中双机房多入口会话保持程序。
所述电子装置还可以包括显示器,显示器也可以称为显示屏或显示单元。在一些实施例中显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。显示器用于显示在电子装置中处理的信息以及用于显示可视化的工作界面。
所述电子装置还可以包括用户接口,用户接口可以包括输入单元(比如键盘)、语音输出装置(比如音响、耳机)等。
需要说明的是,本发明之电子装置的具体实施方式与上述双机房多入口会话保持方法的具体实施方式大致相同,在此不再赘述。
在其他实施例中,双机房多入口会话保持程序还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器中,并由处理器执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。图3为本发明中双机房多入口会话保持程序的一个实施例的模块示意图,如图3所示,所述双机房多入口会话保持程序可以被分割为:第一域名解析模块1、第二域名解析模块2和域名返回模块3。上述模块所实现的功能或操作步骤均与上文类似,此处不再详述,示例性地,例如其中:
第一域名解析模块1,通过第一域名解析服务器接收用户通过客户端触发的访问请求,所述访问请求包括目标地址的URL,对所述目标地址的URL进行域名解析并生成URL域名解析结果,将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;
第二域名解析模块2,对第一域名解析服务器发送的URL域名解析结果进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与客户端的真实IP字段相对应的域名解析结果,若解析缓存列表中存在与客户端的真实IP字段相对应的域名解析结果,则将查询到的域名解析结果返回至第一域名解析服务器,若解析缓存列表中不存在与客户端的真实IP字段相对应的域名解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP作为域名解析结果返回至第一域名解析服务器,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中;
域名返回模块3,将第二域名解析服务器返回的域名解析结果返回给客户端,以供客户端根据返回的所述域名解析结果与应用服务端之间建立连接并进行数据交互。
图4为本发明中双机房多入口会话保持程序的另一个实施例的模块示意图,如图4所示,所述双机房多入口会话保持程序可以被分割为:region设置模块1′、pool创建模块2′、默认pool设置模块3′、拓扑记录构建模块4′和入口地址确定模块5′。上述模块所实现的功能或操作步骤均与上文类似,此处不再详述,示例性地,例如其中:
region设置模块1′,设置地域运营商region,所述地域运营商region包括对应地区的运营商的网段信息,并且将属于同一地域的双机房对应的地区运营商的网段信息划分至不同的地域运营商region中;
pool创建模块2′,创建pool,并将pool划分到相应的地域运营商region;
默认pool设置模块3′,设置默认的运营商pool;
拓扑记录构建模块4′,根据地域运营商region、pool以及默认的运营商pool,构建region拓扑记录;
入口地址确定模块5′,根据预先获取的客户端的真实IP字段识别网段信息,根据识别的网段信息确定对应的地域运营商region,在构建的region拓扑记录中查询地域运营商region对应的pool,根据region拓扑记录中记录的pool的优先级确定客户端IP所对应的入口地址。
本发明的一个实施例中,计算机可读存储介质可以是任何包含或存储程序或指令的有形介质,其中的程序可以被执行,通过存储的程序指令相关的硬件实现相应的功能。例如,计算机可读存储介质可以是计算机磁盘、硬盘、随机存取存储器、只读存储器等。本发明并不限于此,可以是以非暂时性方式存储指令或软件以及任何相关数据文件或数据结构并且可提供给处理器以使处理器执行其中的程序或指令的任何装置。所述计算机可读存储介质中包括双机房多入口会话保持程序,所述双机房多入口会话保持程序被处理器执行时,实现上述双机房多入口会话保持方法。
本发明之计算机可读存储介质的具体实施方式与上述双机房多入口会话保持方法、电子装置的具体实施方式大致相同,在此不再赘述。
需要说明的是,在本发明中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或者等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种双机房多入口会话保持方法,其特征在于,所述双机房多入口会话保持方法应用于内网应用,所述方法包括以下步骤:
第一域名解析服务器接收用户通过客户端触发的访问请求,所述访问请求包括目标地址的URL,对所述目标地址的URL进行域名解析并生成URL域名解析结果,将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;
第二域名解析服务器对第一域名解析服务器发送的URL域名解析结果进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与客户端的真实IP字段相对应的域名解析结果,若解析缓存列表中存在与客户端的真实IP字段相对应的域名解析结果,则将查询到的域名解析结果返回至第一域名解析服务器,若解析缓存列表中不存在与客户端的真实IP字段相对应的域名解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP作为域名解析结果返回至第一域名解析服务器,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中;
第一域名解析服务器将第二域名解析服务器返回的域名解析结果返回给客户端,以供客户端根据返回的所述域名解析结果与应用服务端之间建立连接并进行数据交互。
2.根据权利要求1所述的双机房多入口会话保持方法,其特征在于,
在所述对所述目标地址的URL进行域名解析的步骤之前,所述方法还包括,查询所述客户端的缓存列表中是否存在与URL的域名对应的IP;
若存在与URL的域名对应的IP,则将查询到的IP返回至客户端,若不存在与URL的域名对应的IP,则从配置文件中读取根域名服务器的地址;
所述对所述目标地址的URL进行域名解析的步骤,包括,在本地查找与URL的域名对应的解析结果;对查找到的解析结果进行递归解析,将所述目标地址的URL解析为一个双活域名。
3.根据权利要求2所述的双机房多入口会话保持方法,其特征在于,所述将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器的步骤之前,所述方法还包括:当将目标地址的URL解析为双活域名时,启用EDNS的ECS类型。
4.一种双机房多入口会话保持方法,基于解析服务器,其特征在于,所述双机房多入口会话保持方法应用于公网应用,所述方法包括以下步骤:
设置地域运营商region,所述地域运营商region包括对应地区的运营商的网段信息,并且将属于同一地域的双机房对应的地区运营商的网段信息划分至不同的地域运营商region中;
创建pool,并将pool划分到相应的地域运营商region;
设置默认的运营商pool;
根据地域运营商region、pool以及默认的运营商pool,构建region拓扑记录;
根据预先获取的客户端的真实IP字段识别网段信息,根据识别的网段信息确定对应的地域运营商region,在构建的region拓扑记录中查询地域运营商region对应的pool,根据region拓扑记录中记录的pool的优先级确定客户端IP所对应的入口地址。
5.根据权利要求4所述的双机房多入口会话保持方法,其特征在于,设置地域运营商region的步骤,包括:
设置地区运营商region,每个地区运营商region均包含了对应的地区信息、运营商信息以及网段信息;
根据地区运营商region设置地域运营商region,每个地域运营商region均包括多个地区运营商region。
6.根据权利要求4所述的双机房多入口会话保持方法,其特征在于,创建pool的步骤,包括:
根据所述公网应用对应的入口创建地区运营商pool;
创建地域运营商pool,并将地区运营商pool划分到相应的地域运营商pool。
7.根据权利要求4所述的双机房多入口会话保持方法,其特征在于,在构建的region拓扑记录中查询地域运营商region对应的pool的步骤,包括:
根据识别的网段信息,确定所述客户端所属地域以及所属运营商;
在构建的region拓扑记录中查询优先级最高的region记录,查询对应的region pool中是否存在与所述客户端属于同一运营商的入口地址;
若不存在与所述客户端属于同一运营商的入口地址,则将region记录的优先级降低一级,查询对应的region pool中是否存在与所述客户端所属地域的距离位于预设距离范围内且与所述客户端属于同一运营商的入口地址;
若不存在距离位于预设距离范围内且与所述客户端属于同一运营商的入口地址,则将region记录的优先级再降低一级,查询对应的region pool中是否存在与所述客户端属于同一地域的BGP入口;
若不存在与所述客户端属于同一地域的BGP入口,则查询与所述客户端所属地域的距离位于预设距离范围之内的地域的BGP入口中是否存在与所述客户端属于同一运营商的入口地址;
若与所述客户端所属地域的距离位于预设距离范围之内的地域的BGP入口中不存在与所述客户端属于同一运营商的入口地址,则进入预设的运营商pool,在预设的运营商pool中查询对应的入口地址。
8.一种双机房多入口会话保持系统,其特征在于,所述系统包括:
第一域名解析服务器,用于接收用户通过客户端触发的访问请求,所述访问请求包括目标地址的URL,对所述目标地址的URL进行域名解析并生成URL域名解析结果,将所述URL域名解析结果与客户端的真实IP字段发送至第二域名解析服务器;
第二域名解析服务器,用于对第一域名解析服务器发送的URL域名解析结果进行域名解析,并读取客户端的真实IP字段,查询解析缓存列表中是否存在与客户端的真实IP字段相对应的域名解析结果,若解析缓存列表中存在与客户端的真实IP字段相对应的域名解析结果,则将查询到的域名解析结果返回至第一域名解析服务器,若解析缓存列表中不存在与客户端的真实IP字段相对应的域名解析结果,则根据设定的动态解析策略确定一个入口IP,将确定的入口IP作为域名解析结果返回至第一域名解析服务器,并将所述入口IP作为与所述客户端的真实IP字段相对应的域名解析结果缓存至解析缓存列表中;
所述第一域名解析服务器,还用于将第二域名解析服务器返回的域名解析结果返回给客户端,以供客户端根据返回的所述域名解析结果与应用服务端之间建立连接并进行数据交互。
9.一种电子装置,其特征在于,该电子装置包括:处理器,存储器,所述存储器中包括双机房多入口会话保持程序,所述双机房多入口会话保持程序被所述处理器执行时实现如权利要求4至7中任一项所述的双机房多入口会话保持方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括双机房多入口会话保持程序,所述双机房多入口会话保持程序被处理器执行时,实现如权利要求4至7中任一项所述的双机房多入口会话保持方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910978218.7A CN110868450B (zh) | 2019-10-15 | 2019-10-15 | 双机房多入口会话保持方法、系统、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910978218.7A CN110868450B (zh) | 2019-10-15 | 2019-10-15 | 双机房多入口会话保持方法、系统、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110868450A true CN110868450A (zh) | 2020-03-06 |
CN110868450B CN110868450B (zh) | 2022-09-23 |
Family
ID=69652609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910978218.7A Active CN110868450B (zh) | 2019-10-15 | 2019-10-15 | 双机房多入口会话保持方法、系统、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110868450B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363287A (zh) * | 2020-10-13 | 2022-04-15 | 中国电信股份有限公司 | 域名递归查询方法、装置、递归服务器以及dns系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110270964A1 (en) * | 2010-04-28 | 2011-11-03 | Microsoft Corporation | Using dns reflection to measure network performance |
US20140149601A1 (en) * | 2012-11-26 | 2014-05-29 | Go Daddy Operating Company, LLC | Systems for accelerating content delivery via dns overriding |
CN106331216A (zh) * | 2016-09-13 | 2017-01-11 | 腾讯科技(深圳)有限公司 | 域名的解析方法和装置 |
CN106506588A (zh) * | 2016-09-23 | 2017-03-15 | 北京许继电气有限公司 | 多地多中心的数据中心双活方法和系统 |
CN108011995A (zh) * | 2017-12-19 | 2018-05-08 | 北京星河星云信息技术有限公司 | 异地多活的实现方法、异地多活服务平台及存储介质 |
CN110177007A (zh) * | 2019-04-16 | 2019-08-27 | 平安科技(深圳)有限公司 | 实现网关异地多活的方法、装置、计算机设备及存储介质 |
-
2019
- 2019-10-15 CN CN201910978218.7A patent/CN110868450B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110270964A1 (en) * | 2010-04-28 | 2011-11-03 | Microsoft Corporation | Using dns reflection to measure network performance |
US20140149601A1 (en) * | 2012-11-26 | 2014-05-29 | Go Daddy Operating Company, LLC | Systems for accelerating content delivery via dns overriding |
CN106331216A (zh) * | 2016-09-13 | 2017-01-11 | 腾讯科技(深圳)有限公司 | 域名的解析方法和装置 |
CN106506588A (zh) * | 2016-09-23 | 2017-03-15 | 北京许继电气有限公司 | 多地多中心的数据中心双活方法和系统 |
CN108011995A (zh) * | 2017-12-19 | 2018-05-08 | 北京星河星云信息技术有限公司 | 异地多活的实现方法、异地多活服务平台及存储介质 |
CN110177007A (zh) * | 2019-04-16 | 2019-08-27 | 平安科技(深圳)有限公司 | 实现网关异地多活的方法、装置、计算机设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
廖维娅等: "基于Tuxedo的核心系统双中心多活部署的技术实现研究", 《金融科技时代》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363287A (zh) * | 2020-10-13 | 2022-04-15 | 中国电信股份有限公司 | 域名递归查询方法、装置、递归服务器以及dns系统 |
CN114363287B (zh) * | 2020-10-13 | 2022-12-20 | 中国电信股份有限公司 | 域名递归查询方法、装置、递归服务器以及dns系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110868450B (zh) | 2022-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11012459B2 (en) | Rule-based network-threat detection | |
CN102299969B (zh) | 一种Web访问方法、七层交换设备和服务网络 | |
CN107733670B (zh) | 一种转发策略配置方法和装置 | |
US10097566B1 (en) | Identifying targets of network attacks | |
US9712422B2 (en) | Selection of service nodes for provision of services | |
US20170237706A1 (en) | Method and apparatus for setting network rule entry | |
US8078723B2 (en) | Dispatching method, dispatching apparatus and dispatching system | |
CN107360270B (zh) | 一种dns解析的方法及装置 | |
CN113037855B (zh) | 一种多媒体访问系统、方法、装置、终端及介质 | |
CN104811371A (zh) | 一种全新的即时通信系统 | |
CN110769080B (zh) | 一种域名解析方法、相关产品及计算机可读存储介质 | |
EP3332533B1 (en) | Parallel detection of updates to a domain name system record system using a common filter | |
US9130938B2 (en) | Method, switch, and system for processing a message | |
WO2014206152A1 (zh) | 一种网络安全监控方法和系统 | |
CN110868450B (zh) | 双机房多入口会话保持方法、系统、装置及存储介质 | |
CN115826444A (zh) | 基于dns解析的安全访问控制方法、系统、装置及设备 | |
CN115913597A (zh) | 确定失陷主机的方法及装置 | |
CN105657077A (zh) | 一种网络地址转换穿越方法和网络地址转换设备 | |
CN104144230A (zh) | 一种简便的监控终端绑定方法和装置 | |
CN111404761A (zh) | 内容成环检测处理方法、装置和计算机可读存储介质 | |
CN109618014B (zh) | 报文转发方法和装置 | |
CN106559271A (zh) | 一种资源接入方法及系统 | |
KR20180120499A (ko) | 데이터베이스 동기화 방법 및 그를 위한 전화 교환기 | |
CN117041203A (zh) | 域名解析方法、装置、设备、存储介质及程序产品 | |
CN114157721A (zh) | 一种路由分发方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |