1.一种访问互联网的方法,其特征在于,包括:
接收终端发起的域名解析请求,并将所述域名解析请求发送至域名解析服务器;
接收所述域名解析服务器发送的域名解析响应报文,在所述域名解析响应报文中携带了根据所述域名解析出的服务器地址列表,其中,所述服务器地址列表包括所述域名的IPv4服务器地址列表和IPv6服务器地址列表;
根据所述域名解析响应报文中携带的服务器地址的类型查找缓存中记录的相应类型的服务器地址,并将查找出的服务器地址添加到解析出的服务器地址列表的表头,并将更新后的服务器地址列表发送至所述终端,其中,网关装置中缓存的记录区分IPv4和IPv6,并将IP_c和IPv6_c插入响应报文的服务器地址列表的表头,其中,IP_c和IPv6_c分别记录了域名上次通信量最大的IPv4服务器地址和IPv6服务器地址;
持续监测并记录更新后的服务器地址列表中各服务器地址的通信量,其中,所述通信量包括源地址是服务器地址的通信量与目的地址是服务器地址的通信量之和;
在设定时间将通信量最大的服务器地址写入缓存中,其中,计算最大的通信量T、T6,确定通信量最大值T、T6对应的服务器地址分别为IP_r和IPv6_r,将IP_r和IPv6_r作为新的IP_c和IPv6_c进行记录。
2.根据权利要求1所述的访问互联网的方法,其特征在于,所述设定时间为达到预定的时间间隔或本次通信结束时。
3.根据权利要求1所述的访问互联网的方法,其特征在于,所述缓存中记录的是域名解析时曾经获得的在设定时间通信量最大的服务器地址。
4.一种路由型网关装置,其特征在于,包括:
请求转发单元,用于接收终端发起的域名解析请求,并将所述域名解析请求发送至域名解析服务器;
响应接收单元,用于接收所述域名解析服务器发送的域名解析响应报文,在所述域名解析响应报文中携带了根据所述域名解析出的服务器地址列表,其中,所述服务器地址列表包括所述域名的IPv4服务器地址列表和IPv6服务器地址列表;
列表更新单元,用于根据所述域名解析响应报文中携带的服务器地址的类型查找缓存中记录的相应类型的服务器地址,并将查找出的服务器地址添加到解析出的服务器地址列表的表头,并将更新后的服务器地址列表发送至所述终端,其中,网关装置中缓存的记录区分IPv4和IPv6,并将IP_c和IPv6_c插入响应报文的服务器地址列表的表头,其中,IP_c和IPv6_c分别记录了域名上次通信量最大的IPv4服务器地址和IPv6服务器地址;
通信量监测单元,用于持续监测并记录更新后的服务器地址列表中各服务器地址的通信量,其中,所述通信量包括源地址是服务器地址的通信量与目的地址是服务器地址的通信量之和;
记录更新单元,用于在设定时间将通信量最大的服务器地址写入缓存中,其中,计算最大的通信量T、T6,确定通信量最大值T、T6对应的服务器地址分别为IP_r和IPv6_r,将IP_r和IPv6_r作为新的IP_c和IPv6_c进行记录。
5.根据权利要求4所述的路由型网关装置,其特征在于,所述设定时间为达到预定的时间间隔或本次通信结束时。
6.根据权利要求4所述的路由型网关装置,其特征在于,所述缓存中记录的是域名解析时曾经获得的在设定时间通信量最大的服务器地址。
7.一种访问互联网的系统,其特征在于,包括终端、域名解析服务器和权利要求4至6中任一项所述的路由型网关装置。
访问互联网的方法、系统与路由型网关装置\n技术领域\n[0001] 本公开涉及下一代互联网领域,特别地,涉及一种访问互联网的方法、系统与路由型网关装置。\n背景技术\n[0002] 由于全球IPv4地址资源已经分配完毕,终端主机、路由型网关装置、网络与应用服务器等都需要向IPv6演进,这样就需要保持双栈运行。由于IPv6演进推进的进度不同,尤其网络部署和覆盖范围无法在短时间内达到IPv4的覆盖范围,IPv6网络可能出现孤岛。而在IPv6过渡后期,IPv4覆盖范围逐渐缩小,也可能形成IPv4孤岛。\n[0003] 当用户通过DNS(Domain Name Server,域名服务器)查询等方式获得包括IPv4和IPv6在内的多个服务器地址时,用户的访问情况会变得比较复杂,尤其在主机按照缺省策略选择IPv4或IPv6服务器地址进行通信但缺省服务器地址不可达时,可能遇到较高的时延,严重影响用户体验。一个简单的例子是,终端和应用服务器在不同IPv6孤岛中,但域名解析查询能够获得多个IPv4与IPv6服务器地址,而终端根据缺省策略优选IPv6进行通信,从而导致终端持续尝试服务器的IPv6地址,可能导致多达几十秒的时延,严重影响了用户体验。\n[0004] 此外,在实际的IPv6过渡部署中,除了IPv6孤岛之外,不正确的路由同样可能导致服务器不可达,从而影响用户访问。\n[0005] 在采用路由型网关装置的网络中,传统路由型网关装置仅仅负责基本的接入功能、转发域名解析报文和数据报文等功能。在IPv6过渡中,这些装置难以适应存在IPv6或IPv4孤岛的网络环境,影响了用户的正常通信。\n发明内容\n[0006] 本公开鉴于以上问题中的至少一个提出了新的技术方案。\n[0007] 本公开在其一个方面提供了一种访问互联网的方法,其能够提升互联网的访问质量。\n[0008] 本公开在其另一方面提供了一种路由型网关装置,其能够提升互联网的访问质量。\n[0009] 本公开在其又一方面提供了一种访问互联网的系统,其能够提升互联网的访问质量。\n[0010] 根据本公开,提供一种访问互联网的方法,包括:\n[0011] 接收终端发起的域名解析请求,并将域名解析请求发送至域名解析服务器;\n[0012] 接收域名解析服务器发送的域名解析响应报文,在域名解析响应报文中携带了根据域名解析出的服务器地址列表;\n[0013] 根据域名解析响应报文中携带的服务器地址的类型查找缓存中记录的相应类型的服务器地址,并将查找出的服务器地址添加到解析出的服务器地址列表的表头,并将更新后的服务器地址列表发送至终端;\n[0014] 持续监测并记录更新后的服务器地址列表中各服务器地址的通信量;\n[0015] 在设定时间将通信量最大的服务器地址写入缓存中。\n[0016] 在本公开的一些实施例中,通信量包括源地址是服务器地址的通信量与目的地址是服务器地址的通信量之和。\n[0017] 在本公开的一些实施例中,设定时间为达到预定的时间间隔或本次通信结束时。\n[0018] 在本公开的一些实施例中,缓存中记录的是域名解析时曾经获得的在设定时间通信量最大的服务器地址。\n[0019] 根据本公开,还提供了一种路由型网关装置,包括:\n[0020] 请求转发单元,用于接收终端发起的域名解析请求,并将域名解析请求发送至域名解析服务器;\n[0021] 响应接收单元,用于接收域名解析服务器发送的域名解析响应报文,在域名解析响应报文中携带了根据域名解析出的服务器地址列表;\n[0022] 列表更新单元,用于根据域名解析响应报文中携带的服务器地址的类型查找缓存中记录的相应类型的服务器地址,并将查找出的服务器地址添加到解析出的服务器地址列表的表头,并将更新后的服务器地址列表发送至终端;\n[0023] 通信量监测单元,用于持续监测并记录更新后的服务器地址列表中各服务器地址的通信量;\n[0024] 记录更新单元,用于在设定时间将通信量最大的服务器地址写入缓存中。\n[0025] 在本公开的一些实施例中,通信量包括源地址是服务器地址的通信量与目的地址是服务器地址的通信量之和。\n[0026] 在本公开的一些实施例中,设定时间为达到预定的时间间隔或本次通信结束时。\n[0027] 在本公开的一些实施例中,缓存中记录的是域名解析时曾经获得的在设定时间通信量最大的服务器地址。\n[0028] 根据本公开,还提供了一种访问互联网的系统,包括终端、域名解析服务器和前述实施例的路由型网关装置。\n[0029] 通过本公开的技术方案,由于将通信量最大的服务器地址作为优选地址随服务器地址列表一起发送给终端,加速了终端选择可达服务器地址的速度,进而提升了终端访问互联网的质量。\n附图说明\n[0030] 此处所说明的附图用来提供对本公开的进一步理解,构成本申请的一部分。在附图中:\n[0031] 图1是本公开一个实施例的访问互联网的方法的流程示意图。\n[0032] 图2是本公开另一实施例的访问互联网的方法的流程示意图。\n[0033] 图3是本公开一个实施例的路由型网关装置的结构示意图。\n[0034] 图4是本公开一个实施例的访问互联网的系统的结构示意图。\n具体实施方式\n[0035] 下面将参照附图描述本公开。要注意的是,以下的描述在本质上仅是解释性和示例性的,决不作为对本公开及其应用或使用的任何限制。除非另外特别说明,否则,在实施例中阐述的部件和步骤的相对布置以及数字表达式和数值并不限制本公开的范围。另外,本领域技术人员已知的技术、方法和装置可能不被详细讨论,但在适当的情况下意在成为说明书的一部分。\n[0036] 本公开涉及路由型网关装置,通过在路由型网关装置中增加域名处理方法、报文监视及记录留存方法来提升用户的访问互联网的质量,其工作原理如下:\n[0037] 在域名处理方法中,路由型网关装置缓存各域名的访问量最大的IP地址及其A或AAAA记录,当路由型网关装置接收到域名解析服务器反馈的域名解析响应报文时,路由型网关装置把缓存的A和/或AAAA记录插入域名解析响应报文的服务器地址列表头,并把这些记录作为域名解析响应报文的一部分返回用户终端。缓存的A记录只插入域名解析响应报文的A记录列表,AAAA记录只插入域名解析响应报文的AAAA记录列表。\n[0038] 在报文监视及记录留存方法中,路由型网关装置监视域名解析服务器返回的各服务器地址的通信量,计算并保存通信量最大的服务器地址及其A和/或AAAA记录。\n[0039] 图1是本公开一个实施例的访问互联网的方法的流程示意图。\n[0040] 如图1所示,该实施例可以包括以下步骤:\n[0041] S102,接收终端发起的域名解析请求,并将域名解析请求发送至域名解析服务器。\n[0042] S104,接收域名解析服务器发送的域名解析响应报文,在该域名解析响应报文中携带了根据域名解析出的服务器地址列表,该服务器地址列表可以包括IPv4地址列表和/或IPv6地址列表。\n[0043] S106,根据域名和域名解析响应报文中携带的服务器地址的类型,即,IPv4或IPv6,查找缓存中记录的相应类型的服务器地址,并将查找出的服务器地址添加到解析出的服务器地址列表的表头,使终端能够优先选取自缓存中提取的服务器地址,并将更新后的服务器地址列表发送至终端;\n[0044] 需要指出的是,在首次解析某个域名的情况下,网关装置中并未缓存该域名的服务器地址,此时便将域名解析服务器反馈的服务器地址列表直接转发给终端,在再次解析该域名时,则可以将网关装置中缓存的与该域名对应的服务器地址插入到服务器地址列表的表头;\n[0045] 此外,如果自网关装置的缓存中获取的服务器地址存在于域名解析服务器返回的响应报文中,则在将该服务器地址放置在服务器地址列表表头的同时删除自域名解析服务器返回的服务器地址列表中的该地址,以避免重复。\n[0046] S108,持续监测并记录更新后的服务器地址列表中各服务器地址的通信量,并在设定时间将通信量最大的服务器地址写入缓存中,以使得在再次解析该域名时,能够自网关装置的缓存中获取与该域名对应的通信量最大的服务器地址,在缓存中记录的是曾经访问过的服务器地址,不记录未访问过的服务器地址,即使在域名解析时曾经获得过的服务器地址。\n[0047] 在该实施例中,由于将通信量最大的服务器地址作为优选地址随服务器地址列表一起发送给终端,加速了终端选择可达服务器地址的速度,进而提升了终端访问互联网的质量。\n[0048] 其中,通信量可以包括源地址是服务器地址的通信量与目的地址是服务器地址的通信量之和,此外,通信量可以按照流量进行计算,例如,交换的字节数、传输的报文数、平均传输速度等。\n[0049] 在步骤S108中,设定时间可以为达到预定的时间间隔或本次通信结束。即,在一段时间内根据统计的通信量对缓存进行更新,或者在本次通信结束时对缓存进行更新。\n[0050] 进一步地,缓存中记录的是域名解析时曾经获得的在设定时间通信量最大的服务器地址。\n[0051] 图2是本公开另一实施例的访问互联网的方法的流程示意图。\n[0052] 如图2所示,该实施例可以包括以下步骤:\n[0053] S202,终端装置发起域名解析请求,该请求报文经过网关装置到达域名解析服务器,在域名解析服务器完成域名解析后,将携带了服务器地址列表的域名解析响应报文送回到网关装置。\n[0054] S204,网关装置根据报文类型拦截到域名解析响应报文,并进行处理:网关装置首先确定域名解析响应报文携带的记录类型,例如,A记录和/或AAAA记录;其次,网关装置选择记录的记录,即,当响应报文中携带的是A记录,则自网关装置的缓存中选择所记录的A记录,当响应报文中携带的是AAAA记录,则自网关装置的缓存中选择所记录的AAAA记录;接着,网关装置把选择的记录插入响应报文的服务器地址列表的表头;最后,网关装置按照域名解析响应报文返回终端装置。\n[0055] S206,对于经S204处理后的域名解析列表中的服务器地址,网关装置持续监视并记录其通信量,在指定时间间隔内,或者确定终端装置的本次通信结束时,选择本次域名解析的服务器地址中通信量最大的地址,并写入缓存列表。\n[0056] 在该实施例中,通过在网关装置中引入域名处理功能和报文监视及记录留存等功能,无需终端装置、网络设备、域名解析服务器和应用服务器做改造,即可加快终端选择通信量最大的服务器地址,提升服务质量。\n[0057] 接下来,再通过一个具体实例详细说明本公开是如何加快访问互联网速度的。\n[0058] 假设路由型网关装置中缓存并记录了本域名上次通信量最大的服务器地址及其对应的A记录或AAAA记录。例如,www.a.com:A/a.b.c.d,AAAA/abcd::efgh;www.b.com:A/b.c.d.e,AAAA/bcde:fghi等。网关装置缓存的记录区分IPv4和IPv6,即,为一个域名同时缓存通信量最大的A记录和AAAA记录。\n[0059] 当终端装置需要访问域名为www.a.com的服务器时,终端装置经网关装置向域名解析服务器发送域名解析请求,域名解析服务器按照正常的方式向网关装置返回域名查询结果,假设该域名解析响应报文返回的结果如下:\n[0060] www.a.com:IP_1,IP_2,…..,IP_m;\n[0061] www.a.com:IPv6_1,IPv6_2,…..,IPv6_n。\n[0062] 网关装置缓存的记录是:www.a.com:A/IP_c,AAAA/IPv6_c。\n[0063] 此处的IP_1,……,IP_m,IP_c代表域名www.a.com的IPv4服务器地址列表;IPv6_\n1,…..,IPv6_n,IPv6_c代表域名www.a.com的IPv6服务器地址列表。IP_c和IPv6_c分别记录了域名www.a.com上次通信量最大的IPv4服务器地址和IPv6服务器地址。对于同一个域名,网关装置记录的IP_c和IPv6_c可以不止一个。\n[0064] 在接收到来自域名解析服务器返回的服务器地址列表后,网关装置把IP_c和IPv6_c插入www.a.com响应报文的服务器地址列表的表头,形成如下的列表:\n[0065] www.a.com:IP_c,IP_1,IP_2,……,IP_m (1)\n[0066] www.a.com:IPv6_c,IPv6_1,……,IPv6_n (2)\n[0067] 其中,(1)和(2)分别是经域名处理后的A记录列表和AAAA记录列表。\n[0068] 如果IP_c已经在A记录列表中,则将该地址移到服务器地址列表的表头;如果IPv6_c已经在AAAA记录中,则将该地址移到到服务器地址列表的表头。\n[0069] 在完成域名处理后,网关装置把处理后的响应报文返回终端装置。\n[0070] 在网关装置将处理后的域名解析响应报文发送至终端后,网关装置开始监视域名响应报文中各地址对应的服务器地址的通信量,在设定时间内找出通信量最大的服务器地址并缓存于网关装置内,具体处理如下:\n[0071] 第一步:记录服务器地址列表中各服务器地址的通信量:\n[0072] 不同服务器地址独立统计,考虑到双向通信量,因此区分源地址、目的地址是各服务器地址列表中地址的通信量。\n[0073] (1)A记录列表的通信量:\n[0074] 源地址是服务器地址列表中地址的通信量:\n[0075] In_c,In_1,……,In_m;\n[0076] 目的地址是服务器地址列表中地址的通信量:\n[0077] Out_c,Out_1,……,Out_m;\n[0078] A记录中服务器地址列表中各地址的通信量:\n[0079] In_c+Out_c,In_1+Out_1,……,In_m+Out_m;\n[0080] (2)AAAA记录列表的通信量:\n[0081] 源地址是服务器地址列表中地址的通信量:\n[0082] In6_c,In6_1,……,In6_n;\n[0083] 目的地址是服务器地址列表中地址的通信量:\n[0084] Out6_c,Out6_1,……,Out6_n;\n[0085] AAAA记录中服务器地址列表中各地址的通信量:\n[0086] In6_c+Out6_c,In6_1+Out6_1,……,In6_n+Out6_n;\n[0087] 其中,上述通信量的统计可以采用下述方式:(a)一直累积,不清零;(b)域名解析响应报文返回终端装置时清零;(c)经过指定时间周期清零。\n[0088] 第二步:计算通信量最大的服务器地址:\n[0089] (1)计算最大的通信量:\n[0090] T=Max(In_c+Out_c,In_1+Out_1,……,In_m+Out_m)\n[0091] T6=Max(In6_c+Out6_c,In6_1+Out6_1,……,In6_n+Out6_n)\n[0092] (2)确定通信量最大值T、T6对应的服务器地址,分别是IP_r和IPv6_r。当同时存在多个最大通信量时,IP_r和IPv6_r也可以是多个地址。\n[0093] 第三步:用计算后的IP_r和IPv6_r替换网关装置缓存的记录表中的IP_c和IPv6_c,将IP_r和IPv6_r作为新的IP_c和IPv6_c进行记录。\n[0094] 在上述实施例中,本公开所进行的改进仅涉及路由型网关装置。\n[0095] 本领域普通技术人员可以理解,实现上述方法实施例的全部和部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算设备可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤,而前述的存储介质可以包括ROM、RAM、磁碟和光盘等各种可以存储程序代码的介质。\n[0096] 本公开在路由型网关装置中增加了域名处理、报文监视及记录留存等功能,用于处理域名解析服务器返回的服务器地址列表,把缓存的相应记录插入到域名解析报文的服务器地址列表中,并把域名解析响应报文返回终端装置中;同时路由型网关装置还实现报文监视,统计各域名当前访问量最大的服务器地址,并缓存其对应的记录。\n[0097] 图3是本公开一个实施例的路由型网关装置的结构示意图。\n[0098] 如图3所示,该实施例中的路由型网关装置30可以包括请求转发单元302、响应接收单元304、列表更新单元306、通信量监测单元308和记录更新单元310。其中,[0099] 请求转发单元302,用于接收终端发起的域名解析请求,并将域名解析请求发送至域名解析服务器;\n[0100] 响应接收单元304,用于接收域名解析服务器发送的域名解析响应报文,在域名解析响应报文中携带了根据域名解析出的服务器地址列表;\n[0101] 列表更新单元306,用于根据域名解析响应报文中携带的服务器地址的类型查找缓存中记录的相应类型的服务器地址,并将查找出的服务器地址添加到解析出的服务器地址列表的表头,并将更新后的服务器地址列表发送至终端;\n[0102] 通信量监测单元308,用于持续监测并记录更新后的服务器地址列表中各服务器地址的通信量;\n[0103] 记录更新单元310,用于在设定时间将通信量最大的服务器地址写入缓存中。\n[0104] 在该实施例中,由于将通信量最大的服务器地址作为优选地址随服务器地址列表一起发送给终端,加速了终端选择可达服务器地址的速度,进而提升了终端访问互联网的质量。\n[0105] 其中,通信量包括源地址是服务器地址的通信量与目的地址是服务器地址的通信量之和。\n[0106] 此外,设定时间可以为达到预定的时间间隔或本次通信结束时。\n[0107] 进一步地,缓存中记录的是域名解析时曾经获得的在设定时间通信量最大的服务器地址。\n[0108] 图4是本公开一个实施例的访问互联网的系统的结构示意图。\n[0109] 如图4所示,该实施例中的系统40可以包括终端402、域名解析服务器404和路由型网关装置406,其中,路由型网关装置406可以通过前述实施例实现。\n[0110] 本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同和相似的部分可以相互参见。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处可以参见方法实施例部分的说明。\n[0111] 虽然已参照示例性实施例描述了本公开,但应理解,本公开不限于上述的示例性实施例。对于本领域技术人员显然的是,可以在不背离本公开的范围和精神的条件下修改上述的示例性实施例。所附的权利要求的范围应被赋予最宽的解释,以包含所有这样的修改以及等同的结构和功能。
法律信息
- 2017-06-16
- 2014-12-10
实质审查的生效
IPC(主分类): H04L 12/741
专利申请号: 201310170595.0
申请日: 2013.05.10
- 2014-11-12
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2011-04-20
|
2010-05-14
| | |
2
| |
2012-10-17
|
2011-04-07
| | |
3
| |
2010-02-03
|
2009-04-13
| | |
4
| |
2010-06-30
|
2009-12-30
| | |
5
| |
2012-07-04
|
2012-01-10
| | |
6
| |
2011-05-04
|
2009-10-13
| | |
7
| |
2012-11-28
|
2012-08-23
| | |
8
| | 暂无 |
2006-10-24
| | |
9
| |
2012-07-11
|
2010-12-29
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |