应用服务器与终端之间的协议互通装置及其实现方法

文档序号:7808187阅读:425来源:国知局
应用服务器与终端之间的协议互通装置及其实现方法
【专利摘要】本发明公开一种应用服务器与终端之间的协议互通装置及其实现方法,包括:域名解析模块,包含域名信息记录库和域名动态记录处理子模块,用于从动态域名服务器接收域名的记录,并向协议转换模块查询域名的其他记录;协议转换模块,包含地震映射关系记录库和映射关系处理子模块,通过查询地址映射关系记录库或从地址库中选择IP地址生成域名的记录信息,并将该结果返回域名解析模块。采用本发明,能够将应用服务器上线、动态创建域名的记录与协议转换模块创建地址映射关系等过程相关联,改变终端访问触发创建地址映射关系的实现过程和改善不同协议栈互通场景的域名解析过程,优化域名解析模块和协议转换模块创建地址映射关系的过程。
【专利说明】应用服务器与终端之间的协议互通装置及其实现方法

【技术领域】
[0001]本发明涉及下一代互联网技术,尤其涉及一种应用服务器与终端之间的协议互通装置及其实现方法。

【背景技术】
[0002]采用动态接入方式时,应用服务器在经过认证后获得I?地址。当采用单栈接入时,应用服务器只获得地址;当采用1?%单栈接入时,应用服务器只获得1?%地址。在完成I?地址分配后,应用服务器的I?地址将被上报到动态域名服务器(00吧),由00吧服务器将应用服务器域名的八记录或瞧记录同步到域名服务器中。当终端访问应用服务器时,终端按照正常的流程发起域名解析,即可获得应用服务器的I?地址,这样就实现了与应用服务器的通信。
[0003]但在这种实现方式中,域名服务器通常只有应用服务器支持的I?地址类型的记录,比如应用服务器只支持1?4,则域名服务器只有应用服务器域名的4记录;否则,域名服务器只有应用服务器域名的瞧记录或八6记录。当终端与应用服务器采用不同的协议栈时,终端将无法通过域名解析获得正确的应用服务器地址,或即使获得正确的地址也无法发起访问,报文无法到达应用服务器。
[0004]为了解决终端与应用服务器分别采用不同的协议栈的相互通信问题,现在通常采用嫩164协议转换模块与0吧64域名解析服务器一起实现终端与应用服务器的互通。其中,嫩!'64用于协议转换,用报文头替换1?%报文头或用1?%报文头替换报文头,以支持终端与应用服务器之间的通信;同时,0吧64负责域名解析,接收终端的瞧记录域名解析请求,并向授权服务器分别发起4记录解析请求,在获得4记录后,用指定1?乂6前缀生成域名的瞧记录。在嫩164的实现方式中,嫩164互通网关为终端和应用服务器维持1?^4和1?^6地址之间的映射关系;0吧64负责改写域名解析响应报文中的记录类型。嫩丁是一种被废止的协议互通技术,这种技术同时解决1?^4访问1?^6或1?^6访问1?^4的问题,其简化形式即嫩164。无论嫩164协议还是嫩协议都由终端的域名解析请求触发和创建映射关系,并且需要改写域名响应报文的记录形式,从本质上改变了域名解析的过程,并增加了域名解析服务器的复杂性。
[0005]通常来说,嫩164或嫩等协议可以用于应用服务器的域名对应固定I?地址的使用场景,也可以用于采用动态域名的场景,但这种方式并没有很好利用动态域名的特点,也增加了终端访问时延。


【发明内容】

[0006]有鉴于此,本发明的主要目的在于提供一种应用服务器与终端之间的协议互通装置及其实现方法,针对应用服务器动态接入网络、并与终端采用不同协议栈的互通场景,采用为域名动态创建新记录的方式,利用域名解析模块和协议转换模块直接协商,将应用服务器上线、动态创建域名的记录与协议转换模块创建地址映射关系等过程相关联,改变终端访问触发创建地址映射关系的实现过程和改善不同协议栈互通场景的域名解析过程,以优化域名解析模块和协议转换模块创建地址映射关系的过程。并通过域名解析模块实现不同协议转换模块之间的负载均衡,从而有利于协议转换模块的规模部署。
[0007]为达到上述目的,本发明的技术方案是这样实现的:
一种应用服务器与终端之间的协议互通装置,包括域名解析模块和协议转换模块;其中:
所述域名解析模块,用于从动态域名服务器接收域名的记录,并向协议转换模块查询域名的其他记录;
所述协议转换模块,通过查询地址映射关系记录库或从地址库中选择I?地址生成域名的记录信息,并将该结果返回域名解析模块。
[0008]其中,所述域名解析模块包括域名信息记录库和域名动态记录处理子模块,所述域名信息记录库,用于记录域名的八和切拆二鼠X的记录;通过所述域名动态记录处理子模块与所述协议转换模块通信。
[0009]所述协议转换模块,包括地震映射关系记录库和映射关系处理子模块;所述地址映射关系记录库,用于记录域名的八的1?4地址和I邓6=麻X的1?^6地址之间的映射关系,并通过所述映射关系处理子模块根据域名的地址映射关系完成协议转换。
[0010]所述映射关系处理子模块根据域名的地址映射关系完成协议转换,具体为:用1?^6报文头替换报文头或者用报文头替换1?%报文头。
[0011]利用所述协议转换模块和域名解析模块配合生成域名解析模块的双栈记录,同时在本地生成地址映射关系。
[0012]一种应用服务器与终端之间的协议互通装置的实现方法,主要包括:
八、利用域名解析装置创建动态记录的步骤;
8、利用协议转换装置实现地址映射关系的步骤。
[0013]根据权利要求6所述的应用服务器与终端之间的协议互通装置的实现方法,其特征在于,步骤八包括:
八1、接收动态域名服务器发送的记录,包括域名、八记录或仏仏记录;
八2、域名解析模块向协议转换模块查询其他类型的记录;所述域名解析模块提交的信息包括域名、记录类型及其对应的I?地址;
八3、域名解析模块接收协议转换模块返回的指定类型的记录,与原有缓存的记录一起存储到本地资源记录库中。
[0014]较佳地,所述步骤八进一步包括:
该请求携带的信息包括域名、需要删除的记录类型、I?地址;在接收到记录删除请求后,域名解析模块根据域名查询域名信息记录库,并删除域名的八和歐匕的所有记录。
[0015]其中,所述步骤8包括:
81、设置本地地址库;
82、接收域名解析模块的记录查询请求,确定查询请求携带的域名和I?地址;
83、确认地址映射关系记录库中是否有该映射关系。如果有,则直接将地址映射关系记录库中的地址经映射关系处理子模块返回域名解析模块进行处理;否则,从本地地址库中选择一个地址,与查询请求携带的地址建立映射关系,并将查询结果返回给域名解析模块;
B4、在地址映射关系库中记录查询请求的地址映射关系。
[0016]较佳地,所述步骤B之后进一步包括:当应用服务器下线或者其他触发记录删除的情况发生,域名解析模块接收记录删除请求,并将删除请求携带的域名发送到协议转换模块;协议转换模块根据域名查询地址映射关系记录库,并从中删除域名对应的地址映射关系库中的相关记录。
[0017]本发明所提供的应用服务器与终端之间的协议互通装置及其实现方法,具有以下优点:
本发明通过设于应用服务器内的域名解析模块创建动态记录,在接收到A记录时,域名解析模块为应用服务器域名动态创建AAAA记录;在接收到AAAA记录时,域名解析模块为应用服务器域名动态创建A记录,即为IPv4单栈应用服务器域名动态创建AAAA记录,为IPv6单栈应用服务器域名动态创建A记录。并通过协议转换模块的地址映射关系处理子模块进行域名解析模块交换域名相关信息,并动态创建应用服务器域名的A记录IPv4地址和AAAA记录IPv6地址之间的映射关系。域名解析模块在获得单栈应用服务器的域名解析请求后向协议转换模块发起记录查询,协议转换模块接收域名解析模块的查询请求,根据查询请求选择IP地址,并将选择结果返回域名解析模块,同时生成和维护域名的A记录和AAAA记录之间的映射关系,实现终端与应用服务器之间互通时的协议转换过程,降低了时延,从而优化了域名解析模块和协议转换模块创建地址映射关系的过程。并且,通过域名解析模块实现了不同协议转换模块之间的负载均衡,从而有利于协议转换模块的规模部署。

【专利附图】

【附图说明】
[0018]图1为本发明协议互通装置的域名解析模块和协议转换模块示意图;
图2为域名解析模块的动态记录创建流程示意图;
图3为域名解析模块删除动态记录的流程示意图;
图4为协议转换模块创建地址映射关系的流程示意图;
图5为协议转换模块删除地址映射关系的流程示意图。

【具体实施方式】
[0019]下面结合附图及本发明的实施例对本发明的方法作进一步详细的说明。
[0020]图1为本发明协议互通装置的域名解析模块和协议转换模块示意图。如图1所示,所述协议互通装置包括域名解析模块和协议转换模块。其中:
域名解析模块,包括域名动态记录处理子模块和域名信息记录库,并通过域名动态记录处理子模块与协议转换模块通信。
[0021]所述域名解析模块与所述协议转换模块之间的交互过程,包括记录查询和记录删除等过程。其中,记录查询用于动态生成域名的新记录,对原有type=A的记录生成对应的type=AAAA的记录,对于原有type=AAAA的记录生成对应的type=A的记录;同时,协议转换模块生成域名的type=A的IPv4地址与type=AAAA的IPv6地址之间的映射关系。记录删除过程用于删除域名解析模块中域名的所有type=A和type=AAAA的记录,并删除协议转换模块中域名对应的地址映射关系。
[0022]域名解析模块中的域名信息记录库,用于记录域名的type=A和type=AAAA的记录。无论应用服务器运行IPv4单栈,还是运行IPv6单栈,域名信息记录库中都同时记录该域名的type=A和type=AAAA的记录。对于只运行IPv4单栈的应用服务器,域名信息库中的type=AAAA记录由域名解析模块根据向协议转转装置查询获得的地址生成;对于只运行IPv6单栈的应用服务器,域名信息库中的type=A记录的生成过程相同。
[0023]协议转换模块在地址映射关系记录库中记录域名的type=A的IPv4地址和type=AAAA的IPv6地址之间的映射关系。在协议转换模块中,当终端的访问报文到达后,协议转换模块利用映射关系处理子模块根据域名的地址映射关系完成协议转换,即用IPv6报文头替换IPv4报文头或者用IPv4报文头替换IPv6报文头。实际的替换方式决定于报文的发送方向。当初始报文从IPv4网络侧向IPv6网络侧发送,则用IPv6报文头替换IPv4报文头,替换时用地址映射关系中的IPv6地址作为目的地址,IPv4报文源地址的IPv6映射地址作为替换后的报文源地址;当初始报文从IPv6网络侧向IPv4网络侧发送,则用IPv4报文头替换IPv6报文头,替换时用地址映射关系中的IPv4地址作为目的地址,IPv6报文源地址的IPv4映射地址作为替换后的报文源地址。
[0024]在本发明中,域名解析模块接收动态域名服务器提交的应用服务器域名的记录。对于IPv4单栈的应用服务器,应用服务器域名只有A记录,域名解析模块负责为该域名动态创建AAAA记录;对于IPv6单栈的应用服务器,应用服务器域名只有AAAA记录,域名解析模块负责为该域名动态创建A记录。
[0025]在本发明中,域名解析模块同时为终端提供域名解析服务。在访问采用不同协议栈的应用服务器时,终端发起域名解析,从域名解析模块获得应用服务器域名的记录。IPv4单栈终端,只获得A记录;IPv6单栈终端,只获得AAAA记录。终端按照域名解析的服务器地址发起访问,访问报文会路由到协议转换模块,并完成报文的协议转换。
[0026]在本发明中,协议转换模块与域名解析模块配合生成域名解析模块的双栈记录,同时在本地生成地址映射关系。
[0027]如图2所示为域名解析模块描述为域名创建动态记录的过程。如图2所示,包括如下步骤:
步骤21:接收动态域名服务器发送的记录,包括域名、A记录或AAAA记录。
[0028]步骤22:向协议转换模块查询其他类型的记录。
[0029]步骤23:接收其他类型的记录信息,并在本地维护该记录。
[0030]如图1所示的步骤21中,域名解析模块接收动态域名服务器提交的记录。例如,在本发明中,动态域名服务器提交的记录包括A记录或AAAA记录,其形式如下:
www.a.com type=AC1.Ci1
或者,
www.a.com type=AAAA:C1C2C3C40
[0031]其中,Id1.C1.Ci1 和:C1C2C3C4 分别表示 IPv4 地址和 IPv6 地址。IPv4单栈应用服务器的域名只有type=A的记录,IPv6单栈应用服务器的域名只有type=AAAA 的记录。
[0032]所述步骤21中,域名解析模块缓存接收到的域名www.a.com的type=A或type=AAAA的记录。对于IPv4单栈的应用服务器,域名解析模块的缓存中只有type=A的记录;对于IPv6单栈的应用服务器,域名解析模块的缓存中只有type=AAAA的记录。
[0033]步骤22中,域名解析模块向协议转换模块查询域名的其他类型的记录。域名解析模块提交的信息包括域名、记录类型及其对应的IP地址。
[0034]步骤23中,域名解析模块接收协议转换模块返回的指定类型的记录,与原有缓存的记录一起存储到本地资源记录库中。当域名解析模块查询请求携带type=A的记录,则从协议转换模块查询获得type=AAAA的记录;当域名解析模块查询请求携带类型type=AAAA的记录,则从协议转换模块查询获得type=A的记录。具体过程如下,当域名解析模块的记录查询请求携带如下信息:
www.a.com Type=AC1.Ci10
[0035]即查询请求携带域名、type=A及其IPv4地址,则从协议转换模块获得对应的IPv6地址,比如IC1C2C3C4等。当域名解析模块的记录查询请求携带的信息如下:
www.a.com Type=AAAA:C1C2C3C4
即域名解析模块提交的查询请求携带IPv6地址,则协议转换模块返回的信息携带对应的IPv4地址,比如a” Id1.C1.屯。在完成查询后,域名解析模块为域名www.a.com维持如下记录并相应终端的域名解析请求:www.a.com
type=AC1.Ci1
type=AAAA::: C1C2C3C4
在域名解析时,终端发起域名解析请求。当域名解析模块接收到type=A的域名解析请求,则域名解析模块返回al.bl.cl.dl;当接收到type=AAAA的域名解析请求,则域名解析模块返回 B1B2Bga4Ib^abgb4: =C1C2C3Cp
[0036]图3为域名解析模块接收动态域名服务器提交的记录删除请求过程。如图3所示,包括如下步骤:
步骤31:该请求携带的信息包括域名、需要删除的记录类型、IP地址。
[0037]如:
www.a.com Type=AC1.Ci1
或,
www.a.com Type=AAAA B1B2B3B4Ib1B2Bgb4:: C1C2C3C40
[0038]步骤32:在接收到记录删除请求后,域名解析模块根据域名查询域名信息记录库,并删除域名的type=A和type=AAAA的所有记录。
[0039]如图4所示为协议转换模块接收域名解析模块的记录查询请求,并根据查询结果在本地地址库中选择IP地址,创建并维持地址映射关系。协议转换模块的实现过程包括如下步骤:
步骤41:设置本地地址库。
[0040]步骤42:接收域名解析模块的记录查询请求,确定查询请求携带的域名和IP地址。
[0041]步骤43:确认地址映射关系记录库中是否有该映射关系。如果有,则直接将地址映射关系记录库中的地址经映射关系处理子模块返回域名解析模块进行处理;否则,从本地地址库中选择一个地址,与查询请求携带的地址建立映射关系,并将查询结果返回给域名解析模块。
[0042]步骤44:在地址映射关系库中记录查询请求的地址映射关系。
[0043]其中,所述步骤41中,协议转换模块设置本地地址库,用于选择IP地址并与域名解析模块提交的应用服务器域名的记录中的IP地址建立映射关系。当动态接入网络的应用服务器只运行IPv6单栈时,地址转换装置设置IPv4地址库;当动态接入网络的应用服务器只运行IPv4单栈时,地址转换装置设置IPv6地址库。
[0044]所述步骤42中,协议转换模块接受域名解析模块的记录查询请求。该查询请求携带的信息包括:域名、记录类型和IP地址。域名采用画.a.com的形式;记录类型采用type=A或type=AAAA,两者只能选择一个,不同时存在;IP地址指查询请求中type=A或type=AAAA的记录对应的IP地址。
[0045]所述步骤43中,协议转换模块首先查询地址映射关系记录库。如果查询到地址映射关系记录库中有记录,则将查询获得的地址映射关系中的地址与查询请求中原有记录一起返回域名解析模块。
[0046]所述步骤44中,当地址映射记录库中没有相关记录,协议转换模块从本地配置的地址库中选择一个未被使用的IP地址,与记录查询请求中的地址建立地址映射关系,生成的地址映射关系如下:
3<1.b1.Cl.d_i〈〉*:。1。2。3。4,
或者,

〈〉&]_.b^.C-^.ο
[0047]地址映射关系的左边表示记录查询请求携带的指定类型的IP地址,右边表示由协议转换模块从本地地址库中选择的IP地址。协议转换模块将查询请求携带的域名、请求的记录类型及其IP地址、上述映射关系右边对应地址及其对应的记录类型经映射关系处理模块一起返回域名解析模块。
[0048]协议转换模块返回的信息包括: www.a.com
type=AC1.Ci1
type=AAAAB1B2B3B4Ib1B2Bgb4:: C1C2C3C40
[0049]所述步骤44中,经协议转换模块将创建的地址映射关系保存在地址映射关系记录库中,记录的信息包括域名、映射关系中的IPv4地址和IPv6地址。
[0050]图5为本发明协议转换装置删除地址映射关系的流程示意图。如图5所示,包括: 步骤51:当应用服务器下线或者其他触发记录删除的情况发生,域名解析模块接收记录删除请求,并将删除请求携带的域名发送到协议转换模块;
步骤52:协议转换模块根据域名查询地址映射关系记录库,并从中删除域名对应的地址映射关系库中的相关记录。
[0051]以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【权利要求】
1.一种应用服务器与终端之间的协议互通装置,其特征在于,包括域名解析模块和协议转换模块;其中: 所述域名解析模块,用于从动态域名服务器接收域名的记录,并向协议转换模块查询域名的其他记录; 所述协议转换模块,通过查询地址映射关系记录库或从地址库中选择IP地址生成域名的记录信息,并将该结果返回域名解析模块。
2.根据权利要求1所述的应用服务器与终端之间的协议互通装置,其特征在于,所述域名解析模块包括域名信息记录库和域名动态记录处理子模块,所述域名信息记录库,用于记录域名的type=A和type=AAAA的记录;通过所述域名动态记录处理子模块与所述协议转换模块通信。
3.根据权利要求1所述的应用服务器与终端之间的协议互通装置,其特征在于,所述协议转换模块,包括地震映射关系记录库和映射关系处理子模块;所述地址映射关系记录库,用于记录域名的type=A的IPv4地址和type=AMA的IPv6地址之间的映射关系,并通过所述映射关系处理子模块根据域名的地址映射关系完成协议转换。
4.根据权利要求1所述的应用服务器与终端之间的协议互通装置,其特征在于,所述映射关系处理子模块根据域名的地址映射关系完成协议转换,具体为:用IPv6报文头替换IPv4报文头或者用IPv4报文头替换IPv6报文头。
5.根据权利要求1所述的应用服务器与终端之间的协议互通装置,其特征在于,利用所述协议转换模块和域名解析模块配合生成域名解析模块的双栈记录,同时在本地生成地址映射关系。
6.一种应用服务器与终端之间的协议互通装置的实现方法,其特征在于,主要包括: A、利用域名解析装置创建动态记录的步骤; B、利用协议转换装置实现地址映射关系的步骤。
7.根据权利要求6所述的应用服务器与终端之间的协议互通装置的实现方法,其特征在于,步骤A包括: Al、接收动态域名服务器发送的记录,包括域名、A记录或AAAA记录; A2、域名解析模块向协议转换模块查询其他类型的记录;所述域名解析模块提交的信息包括域名、记录类型及其对应的IP地址; A3、域名解析模块接收协议转换模块返回的指定类型的记录,与原有缓存的记录一起存储到本地资源记录库中。
8.根据权利要求6所述的应用服务器与终端之间的协议互通装置的实现方法,其特征在于,所述步骤A进一步包括: 该请求携带的信息包括域名、需要删除的记录类型、IP地址;在接收到记录删除请求后,域名解析模块根据域名查询域名信息记录库,并删除域名的type=A和type=AAAA的所有记录。
9.根据权利要求6所述的应用服务器与终端之间的协议互通装置的实现方法,其特征在于,所述步骤B包括: B1、设置本地地址库; B2、接收域名解析模块的记录查询请求,确定查询请求携带的域名和IP地址; B3、确认地址映射关系记录库中是否有该映射关系; 如果有,则直接将地址映射关系记录库中的地址经映射关系处理子模块返回域名解析模块进行处理;否则,从本地地址库中选择一个地址,与查询请求携带的地址建立映射关系,并将查询结果返回给域名解析模块; B4、在地址映射关系库中记录查询请求的地址映射关系。
10.根据权利要求6所述的应用服务器与终端之间的协议互通装置的实现方法,其特征在于,所述步骤B之后进一步包括: 当应用服务器下线或者其他触发记录删除的情况发生,域名解析模块接收记录删除请求,并将删除请求携带的域名发送到协议转换模块;协议转换模块根据域名查询地址映射关系记录库,并从中删除域名对应的地址映射关系库中的相关记录。
【文档编号】H04L29/12GK104320373SQ201410316342
【公开日】2015年1月28日 申请日期:2014年7月4日 优先权日:2014年7月4日
【发明者】袁凯, 杨林, 檀玉恒, 何万强, 任晓霞, 龙建东, 何昀峰, 史向辉, 陈晓宇, 欧阳星明, 孙丹鸣, 张弛 申请人:中国兵器工业信息中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1