CN104969515A - 处理dns请求的方法和网关 - Google Patents

处理dns请求的方法和网关 Download PDF

Info

Publication number
CN104969515A
CN104969515A CN201280076839.2A CN201280076839A CN104969515A CN 104969515 A CN104969515 A CN 104969515A CN 201280076839 A CN201280076839 A CN 201280076839A CN 104969515 A CN104969515 A CN 104969515A
Authority
CN
China
Prior art keywords
dns
new
request
access network
gateway
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
Application number
CN201280076839.2A
Other languages
English (en)
Other versions
CN104969515B (zh
Inventor
陈永康
陈浩明
周杰怀
叶志斌
蔡旻甫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pismo Labs Technology Ltd
Original Assignee
Pismo Labs Technology Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Pismo Labs Technology Ltd filed Critical Pismo Labs Technology Ltd
Publication of CN104969515A publication Critical patent/CN104969515A/zh
Application granted granted Critical
Publication of CN104969515B publication Critical patent/CN104969515B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

用于对具有多个WAN网络接口的网关中的域名服务(DNS)请求进行处理的方法和系统。通过网关的多个网络接口中的一个网络接口接收第一DNS请求后,网关选择至少一个DNS服务器和至少一个存取网络,并随后经由所选择的至少一个存取网络并通过网关的多个网络接口中的一个网络接口将多个新DNS请求传送给选定的至少一个DNS服务器。

Description

处理DNS请求的方法和网关
技术领域
本公开总的来说涉及计算机网络领域。更具体地,本发明涉及对具有多个广域网(WAN)网络接口的网关中的域名服务(DNS)请求进行处理的方法和装置。
背景技术
域名系统(DNS)是用于计算机、服务、或任何连接到因特网或专用网的资源的分级分布式命名系统。它将各种信息与分配给各个参与实体的域名相关联。DNS将对这些域名的请求解析为IP地址,从而对世界范围的计算机服务和设备进行定位。该领域内的计算人员期望提升答复DNS请求的速度,同时具有更高的可靠性。目前的技术需要DNS代理服务器来对DNS答复进行缓存并将DNS服务器置于靠近网络边缘的位置。但是,目前的技术没有对网关连接多个存取网络的情况给予利用。
发明内容
根据本发明的多个实施例中的一个实施例,网关接收到来自主机的DNS请求后,网关创建多个与接收到的DNS请求相对应的新DNS请求,通过至少一个存取网络发送给至少一个DNS服务器。DNS服务器和用于发送多个新DNS请求的存取网络是由网关选择的。
根据本发明的多个实施例中的一个实施例,网关接收到与新DNS请求相对应的一个或多个DNS响应后,网关选择接收到的DNS响应中的一个DNS响应发送给主机。
附图说明
为了更完整地理解本公开以及它的优点,现将参照下面的连同附图进行的描述,附图中相同的数字代表相同的部件:
图1a是根据本发明的一个实施例的网络环境视图,其中的主机和DNS服务器可连接到网关;
图1b是根据本发明的一个实施例的网络环境视图,其中的主机和DNS服务器可连接到网关;
图2是根据本发明的一个实施例的对于接收到的DNS请求进行处理的进程的流程图;
图3是根据本发明的一个实施例的对于接收到的DNS响应进行处理的进程的流程图;以及
图4是根据本发明的一个实施例的网关的方框图。
具体实施方式
随后的说明仅提供优选的示例性实施例,而非意图限制本发明的范围、可应用性或配置。相反,随后说明的优选的示例性实施例将向本领域技术人员提供能够实施本发明的优选的示例性实施例的说明。应当认识到的是,可在不脱离如所附权利要求所阐述的本发明的精神和范围的情况下,对各元件的功能和设置作出各种变化。
在下面的说明中给出特定细节以提供对实施例的完整理解。但是,本领域的普通技术人员将认识到的是,这些实施例可以无需这些特定细节来实现。例如,可以以框图形式示出电路以避免不必要的细节干扰到实施例。在其他情况下,公知的电路、过程、算法、结构和技术可以在不示出非必要细节的情况下呈现以避免干扰实施例。
同样,应认识到的是,实施例可以描述为以流程图、流程图表、数据流程图、结构图或框图方式示出的过程。虽然流程图可将操作描述为顺序过程,但是很多操作可以并行或同时地执行。此外,可重新排列操作的顺序。当过程的各操作完成时,该过程终结,但是该过程可具有未包括在图中的额外的步骤。过程可与方法、函数、步骤、子程序、副程序等对应。当过程与函数对应时,其终结对应于将函数返回到调用函数或主函数。
此外,如这里所公开的,术语“计算机可读存储介质”、“存储器”和“存储介质”可代表用于存储数据的一个或多个装置,包括只读存储器(ROM)、随机访问存储器(RAM)、磁性RAM、磁芯存储器、磁盘存储介质、光存储介质、闪速存储器装置和/或其他用于存储信息的机器可读介质。术语“机器可读介质”包括但不限于便携式或固定式存储装置、光存储装置、无线信道和能够存储、包含或携带指令和/或数据的各种其他介质。
此外,实施例可通过硬件、软件、固件、中间件、微码、硬件描述语言、或它们的任意组合来实施。当以软件、固件、中间件或微码来实施时,可将执行必须任务的程序代码或代码段存储在诸如存储介质之类的机器可读介质中。处理单元(或者多个)可执行必须任务。代码段或程序指令可代表步骤、函数、副程式、程式、程序、子程序、模块、软件包、类、或者任意组合的指令、数据结构、或程序语句。代码段可通过对信息、数据、自变量(argument)、参数(parameter)、或存储内容进行传递和/或接收来与另一代码段、程序指令或硬件电路耦接。信息、自变量、参数、数据等可经由包括存储器共享、消息传递、令牌传递、网络传输等任何适合的手段来传递、转发或发送。
存取网络允许网关连接其它网络,例如因特网和外联网。为了确定网络是否可访问,网关可周期性地发送数据包来测试可访问性。例如,网关可向主机传送ICPM回声请求数据包并测量ICPM回声应答数据包的到达时间从而确定网络是否可访问。对于本领域内的技术人员显而易见的是,更多的方法和技术可被用于确定网络是否可访问。
本发明的一个目前的优选的实施例可使用网关。网关是位于网络上的设备或节点,其执行不同类型的网络或应用程序之间的协议转换,并且能够对DNS请求和响应进行处理。术语“网关”不是旨在局限于单个类型的设备,因为任何可充当用户与网络之间的网桥的设备、硬件或软件都可被考虑作为本申请的目的的网关。网关可与多个个多重网络耦接。路由器、转换器、桥、无线访问点、计算设备中的虚拟机或任何能够充当其它网络的访问点并对DNS请求和响应进行处理的装置都可被考虑作为本申请的目的的网关。
网络接口可由独立的电子组件实施或者与其它电子组件集成到一起。取决于配置,网络接口也可以不具有任何网络连接或至少一个网络连接。网络接口仅仅连接至一个存取网络。因此,一个存取网络可承载的网络连接数量大于一个。网络接口可以是以太网接口、帧中继接口、光学纤维接口、线缆接口、DSL接口、令牌环网接口、串行总线接口、通用串行总线(USB)接口、火线接口、外围组件互连(PCI)接口等。
存取网络可承载一个或多个网络协议数据,包括但不限于互联网协议(IP)、IPv4、或IPv6。存取网络可以是有线网络或无线网络。可访问的无线网络可使用光纤、线缆、或任何可以传递信息的材料实施。可访问的无线网络也可使用红外线、以太网、DSL、高速数据包访问(HSPA)、HSPA+、长期演进技术(LTE)、WiMax、GPRS、EDGE、GSM、CDMA、WiFi、CDMA2000、WCDMA、TD-SCDMA、BLUETOOTH、WiBRO或任何其它无线技术实施。
图1a示出了根据本发明的多个实施例中的一个实施例的一个网络环境。网关101具有一个局域网(LAN)网络接口102和两个广域网(WAN)网络接口103和104。两个存取网络121和122分别通过网络链路111和112连接到WAN网络接口103和104。因此,网关101具有两个存取网络用于连接到互联网络105,互联网络105可以是因特网。存取网络121和122可以由相同的或不同的互联网服务供应商(ISP)提供。例如,连接到WAN网络接口103的存取网络121可由Verizon使用DSL技术提供,连接到WAN网络接口104的存取网络122可由Sprint使用LTE技术提供。DNS服务器131和132可通过网关101利用网络接口103和104访问。
当网关101通过LAN网络接口102接收到来自发送者的第一DNS请求时,它选择至少一个DNS服务器(例如DNS服务器131或132)和至少一个存取网络用于传送多个新的DNS请求。发送者可以是主机、网络节点、计算设备、网络设备、移动电话、平板、台式电脑、便携式计算机、计量器、视频照相机、录音器、受话器、视频显示器、传感器或任何能够发送DNS请求的电子设备。第一DNS请求可用于向网关101询问有关域名的信息。在一个变型中,当网关101具有用于回答第一DNS请求的信息时,网关101会回答第一DNS请求,而不将第一DNS请求传送给其它DNS服务器。
新DNS请求具有与第一DNS请求中所包含的相同的内容。在一个实例中,当第一DNS请求用于解析域名“happy.com”的IP地址时,所有新的DNS请求都用于解析相同域名“happy.com”的IP地址。在一个实例中,当第一DNS请求用于查询域名“happy.com”的类型的资源记录时,所有新的DNS请求都用于查询相同域名“happy.com”的类型的资源记录。在一个实例中,当第一DNS请求用于查询“yahoo.com”的邮件交换(MX)记录时,所有新的DNS请求都用于查询“yahoo.com”记录的MX记录。对于每个选定的DNS服务器,网关101会通过所选择的存取网络中的一个向该DNS服务器传送DNS请求。因此,网关101可通过两个不同的选定存取网络向选定的DNS服务器传送多于一个新DNS请求。同样,网关101可向多个不同的选定的DNS服务器传送多个新的DNS请求。但是,网关101只通过一个选定存取网络向一个DNS服务器传送一个新的DNS请求。网关101不会通过相同的选定存取网络向相同的选定DNS服务器传送多于一个新DNS请求,除非用于重新传送新DNS请求。这是因为通过相同的选定存取网络向相同的选定DNS服务器传送多于一个的新DNS请求所带来的性能改进和稳定性改进是极小的。
由于网关101可分别通过存取网络121和122使用WAN网络接口103和104连接到DNS服务器131和132,因此网关101具有四个方案来传送新DNS请求。第一个方案是通过存取网络121和通过WAN网络接口103向DNS服务器131传送新DNS请求中的一个。第二个方案是通过存取网络122和通过WAN网络接口104向DNS服务器131传送新DNS请求中的一个。第三个方案是通过存取网络121和通过WAN网络接口103向DNS服务器132传送新DNS请求中的一个。第四个方案是通过存取网络112和通过WAN网络接口104向DNS服务器132传送新DNS请求中的一个。网关101选择这四种方案中的至少两个来传送新DNS请求。使用多于一个方案来传送新DNS请求的优点包括提高第一DNS请求的解析速度和提高第一DNS请求的解析的可靠性。
图1b示出了根据本发明的多个实施例中的一个实施例的一个网络环境。图1b与图1a的不同点在于,存取网络121直接连接到DNS服务器141和142而不经由互联网络105,并且存取网络122直接连接到DNS服务器143而不经由互联网络105。此外,DNS服务器141和142对于主机连接到存取网络121是受限制的,并且DNS服务器143对于主机连接到存取网络122是受限制的。因此,网关101不能通过WAN网络接口103访问DNS服务器143,并且不能通过WAN网络接口104访问DNS服务器141和142。当网关101选择了一个或多个DNS服务器来解析DNS请求时,网关101随后将会确定使用哪个WAN网络接口来传送该一个或多个新DNS请求。替代性地,当网关101选择了一个或多个WAN网络接口来传送该一个或多个新DNS请求时,网关101随后将会确定使用哪些DNS服务器来解析这些新DNS请求。
新DNS请求具有与第一DNS请求中所包含的相同的内容或查询要求。作为示例性目的,当第一DNS请求用于解析域名“happy.com”的IP地址时,所有新的DNS请求都用于解析相同域名“happy.com”的IP地址。对于每个选定的DNS服务器,网关101通过选定的存取网络中的一个向该DNS服务器传送新DNS请求中的一个。因此,网关101可通过两个不同的选定的存取网络向选定的DNS服务器传送多于一个新DNS请求。同样,网关101可向不同的选定DNS服务器传送多个新的DNS请求。但是,网关101只通过一个选定的存取网络向一个选定的DNS服务器传送一个新DNS请求。网关101不会通过相同的选定存取网络向相同的选定DNS服务器传送多于一个新DNS请求。这是因为通过相同的选定存取网络向相同的选定DNS服务器传送多于一个新DNS请求所带来的性能改进和稳定性改进是极小的。
方法
传送DNS请求
图2是示出了根据本发明的多个实施例中的一个实施例的步骤的流程图。为了示出该实施例,使用图1a与图2。当网关在步骤201通过LAN网络接口102接收第一DNS请求时,网关101在步骤202选择至少一个DNS服务器并且在步骤203选择至少一个存取网络。可选择的DNS服务器可由网关的管理员手动配置,其可由存取网络的服务供应商提供、从网关的存储系统获取、或从DHCP消息获得。
当网关101选择DNS服务器131或132时,网关101同样选择被授权向选定DNS服务器发送新DNS请求的存取网络121或122,这是因为一些DNS服务器只对来源于授权的IP地址的DNS请求给予响应。在一个变型中,根据预先定义的策略,网关101随机性地在步骤202选择至少一个DNS服务器并在步骤203选择至少一个存取网络。在一个实例中,预先定义的策略用于根据网关管理员输入的配置选择DNS服务器和存取网络。在一个实例中,预先定义的策略用于根据可用性选择DNS服务器和存取网络。在一个实例中,预先定义的策略用于根据网关管理员输入的配置选择DNS服务器和存取网络。在一个实例中,预先定义的策略用于根据通过可存取网络接收到的来自DNS服务器的DNS响应的统计分析来选择DNS服务器和存取网络。在一个实例中,预先定义的策略用于根据具有有效响应代码的历史平均DNS响应速度来选择DNS服务器和存取网络。
作为示例,网关101通过存取网络121和通过WAN网络接口103选择DNS服务器131、通过存取网络122和通过WAN网络接口104选择DNS服务器131、通过存取网络121和通过WAN网络接口103选择DNS服务器132。因此,在步骤204,网关101创建三个新DNS请求并随后通过WAN网络接口103将新DNS请求传送给DNS服务器131、通过WAN网络接口104将另一个新DNS请求传送给DNS服务器131、通过WAN网络接口103将另一个新DNS请求传送给DNS服务器132。
在步骤204,通过选定的存取网络将新DNS请求传送给选定的DNS服务器。
根据本发明的多个实施例中的一个实施例,执行步骤202和步骤203的顺序可互换或合并为一个单独的步骤。
根据本发明的多个实施例中的一个实施例,图2还连同图1b示出了各实施例的步骤。DNS服务器141和142只能通过存取网络121访问。DNS服务器143只能通过存取网络122访问。
当网关在步骤201通过LAN网络接口102接收第一DNS请求时,网关101在步骤202选择至少一个DNS服务器并在步骤203选择至少一个存取网络。可选择的DNS服务器可由网关的管理员手动配置,其可由存取网络的服务供应商提供、从网关的存储系统获取、或者从DHCP消息获得。
当网关101选择DNS服务器141或142时,网关101使用存取网络121来将新DNS请求发送给选定的DNS服务器。当网关101选择DNS服务器143时,网关101使用网络121来将新DNS请求发送给DNS服务器143。
作为示例,网关101选择DNS服务器141和143。因此,在步骤204,网关101创建两个新的DNS请求并随后通过WAN网络接口103将新DNS请求发送给DNS服务器141、并通过WAN网络接口103将另一个新DNS请求发送给DNS服务器143。
在步骤204,通过选定存取网络将新DNS请求传送给选定的DNS服务器。
根据本发明的多个实施例中的一个实施例,执行步骤202和步骤203的顺序可互换或合并为一个单独的步骤。
根据本发明的多个实施例中的一个实施例,当存在n个DNS服务器和m个存取网络时,总共有n乘m个可用的DNS服务器和存取网络的组合。网关选择至少两个这种DNS服务器和存取网络的组合用于传送多个新DNS请求。因此,当网关只选择一个DNS服务器时,网关选择至少两个存取网络;当网关只选择一个存取网络时,网关选择至少两个DNS服务器。新DNS请求对应于第一DNS请求,从而新DNS请求的查询与第一DNS请求的查询相同。对于本领域内的技术人员显而易见的是,更多的方法和技术可被用于根据第一DNS请求的查询创建新DNS请求。
接收DNS响应
根据本发明的多个实施例中的一个实施例,新DNS请求被传送后,网关101可接收零个、一个或多个DNS响应,作为对来自选定DNS服务器(例如DNS服务器131和132)的新DNS请求的响应。网关101可将一个、多于一个新DNS响应传送给第一DNS请求的发送者。第一DNS请求的发送者为主机,主机通过LAN网络接口102将DNS请求发送给网关101。通过网关传送的新DNS响应包含与网关101接收的DNS响应相同的响应。
当返回代码(RCODE)为零时,认为接收到的DNS响应是有效的。对于本领域内的技术人员显而易见的是,因特网编号管理局对于不同的RCODE赋予了不同的含义。对于本领域内的技术人员显而易见的是,更多的方法和技术可用于在DNS响应已经被传送给第一DNS请求的发送者时对其它DNS响应进行处理。
图3为示出了根据本发明的多个实施例中的一个实施例的流程图。为了示出该实施例,使用图1a和图3。在步骤301,网关101接收来自DNS服务器131和132中的一个的DNS响应。只有当在步骤302确认网关101接收到的DNS响应有效、并且在步骤303没有其它的新DNS请求被传送给之前的第一DNS请求的发送者时,在步骤304网关101将新DNS响应转送给第一DNS请求的发送者。因此,第一DNS请求的发送者只接收一个对于其先前发送的第一DNS请求的新DNS响应。如果网关随后接收到其它DNS响应,则在步骤305网关会丢弃这些接收到的DNS响应。
在步骤304执行的转送中,网关101创建一个新DNS响应并将该新DNS响应传送给第一DNS请求的发送者。新DNS响应的内容与在步骤301接收到的DNS响应中的内容相同。例如,传送给第一DNS请求的发送者的新DNS响应中的RCODE的值与其中一个DNS响应的RECOD相同。
如果在接收到第一个有效的DNS响应前网关101接收到一个或多个无效的DNS响应,则该一个或多个无效DNS响应会在新DNS响应被传送到第一DNS请求的发送者之后被丢弃。
根据本发明的多个实施例中的一个实施例,当在预先定义的时间段内网关101未收到任何与新DNS请求相对应的DNS响应时,网关101会向第一DNS请求的发送者传送一个RCODE非零的新DNS响应。预先定义的时间段的值可以由网关的制造商、网关的管理员、和/或主机确定。在一个变型中,预先定义的时间段处于一百毫秒至二十秒之间的范围内。预先定义的时间段后网关101未收到任何DNS响应的原因可能是没有任何接收到的DNS响应的RCODE为零或者通过任何选定的DNS服务器都未接收到任何DNS响应。
根据本发明的多个实施例中的一个实施例,当在预先定义的超时前网关101接收到了多个DNS响应并且所接收到的这些DNS响应都被认为是无效的,则网关101必须确定如何对第一DNS请求的发送者进行响应。根据本发明的多个实施例中的一个实施例,网关101将新DNS响应传送给第一DNS请求的发送者,其内容是从所接收到的DNS响应中的一个中获得的。在一个变型中,例如,传送给第一DNS请求的发送者的DNS响应中的REODE是网关101接收到的所有DNS响应中包含的大多数RCODE。在一个变型中,网关101传送给第一DNS请求的发送者的DNS响应中的REODE是随机地从网关101接收到的DNS响应中的一个DNS响应中选择的。
根据本发明的多个实施例中的一个实施例,当网关101已经接收到与所有新DNS请求相对应的所有的DNS响应并且这些DNS响应都被认为无效时,网关101将新DNS响应传送给第一DNS请求的发送者。新DNS响应的内容是从所接收到的DNS响应中的一个DNS响应选择的。该选择可根据接收时间或根据接收顺序随机地、统计地确定。
根据本发明的多个实施例中的一个实施例,当网关101已经接收到与所有新DNS请求相对应的所有的DNS响应并且这些DNS响应都被认为无效时,网关101将新DNS响应传送给第一DNS请求的发送者。新DNS响应的内容是从所接收到的DNS响应中的一个DNS响应选择的。对于接收到的DNS响应(新DNS响应应当从这些接收到的DNS响应中选择)的选择可随机地、统计地根据接收时间或根据接收顺序来确定。
图4是示出根据本发明的多个实施例中的一个实施例的流程图。为了示出该实施例,一起使用图1a和图4。在步骤401,如果在网关101处预先定义的时间未期满,则网关101在将通过LAN网络接口102接收到的与新DNS请求相对应的DNS响应存储到存储器的同时进行等待,直到预先定义的时间期满为止。
在步骤402,网关101选择多个DNS响应中的一个。网关101执行DNS响应的选择的方式很多,包括基于到达时间、DNS响应的内容、DNS服务器的身份、DNS响应的来源等的方式。根据本发明的多个实施例中的一个实施例,根据预先定义的策略进行DNS响应的选择。在一个实例中,选择策略是如果在预先定义的时间期满前能够获得DNS响应,则从DNS服务器131选择一个DNS响应。在一个实例中,如果在预先定义的时间前没有DNS响应可用。在一个实例中,策略是选择最早到达DNS服务器131的DNS响应。在一个实例中,可由网关101的管理员远程或本地对选择策略的设置进行配置。
在步骤403,网关101基于所选定的DNS响应将新DNS响应传送给第一DNS请求的发送者。
装置
图5示出了根据本发明描述的具有对DNS请求进行处理的能力的网关的本发明的实施例中的一个实施例。网关101包括一个或多个处理单元505、计算机可读存储介质506、至少一个LAN网络接口502、多个WAN接口,例如第一WAN接口503和第二WAN接口504,用于使用其它网络装置,例如以太网交换机、IP路由器和其它分组网络设备、网络管理和供给系统、多个本地PC等。其它可在网关101中使用的组件包括放大器、插板层次电子组件、以及媒体处理器和其它专业的SoC或ASIC设备。也可根据需要提供对各种处理层和协议(例如,802.3、DOCSIS MAC、DHCP、SNMP、H.323/RTP/RTCP、VoIP、SIP等)的支持。
网关101可采取任何数量的物理形式,包括例如,本领域中已知类型的较大网络边缘或集线设备中的多个分立的模块或卡中的一个,还可包括固件,或者单独或者与其它硬件/软件组件结合。替代性地,网关101可以是置于其它计算设备或网络设备上的独立设备或模块,甚至可包括它自己的射频(RF)前端(例如,调制器、加密器等)或光接口以便与其它计算设备和网络设备直接连接。可以使用许多其它的配置。网关101也可根据需要与其它类型的组件(例如移动基站、卫星收发器、视频机顶盒、编码器/解码器等)和形式因素集成在一起。
可使用一个或多个中央处理单元、多个网络处理器、多个微处理器、多个微控制器、多个FPGA、多个ASIC和任何能够执行系统的基本运算、逻辑和输入/输出操作的设备来实施多个处理单元505。
计算机可读存储介质506可使用至少一个DRAM、SDRAM、闪存、光存储器、磁存储器、硬盘、和/或任何能够提供存储能力的计算机可读介质来实施。计算机可读存储介质506可用于向处理单元505提供指令,以提供存储器来存储标识符、状态、网络性能统计和其它数据来帮助网关的运行。
当一个或多个处理单元505根据预先定义的策略执行选择时,一个或多个处理单元505从计算机可读存储介质506获取对应于预先定义的策略的信息,并随后执行需要的逻辑运算和算术计算从而执行选择。
多个位于网关101的WAN接口,例如WAN接口503和504,可使用串行总线、通用串行总线(USB)、并行总线、通用异步接收器/传送器(UART)、外围组件互连(PCI)、局域总线、或其它用于连接一个或多个处理单元505和代理(其通常与光纤、线缆、或天线连接)的电子组件连接技术来实施。在一个变型中,多个WAN接口中的至少一个接口位于一个或多个处理单元505中,并且用于连接光纤、线缆或天线的代理可以直接与处理单元505连接。在一个变型中,至少一个WAN接口可连接到以太网WAN网络连接的以太网端口。在一个变型中,多个WAN接口中的至少一个接口可连接到Wi-Fi网络连接的Wi-Fi适配器。在一个变型中,多个WAN接口中的至少一个接口可连接到USB端口,并且该USB端口可连接到用于无线连接的外部调制解调器,例如USB 3G调制解调器、USB LTE调制解调器、USB WiMax调制解调器、USB Wi-Fi调制解调器、或其它用于无线通信的调制解调器。在一个变型中,所有的多个WAN接口连接多个用于外部调制解调器连接的USB端口。在一个变型中,所有的多个WAN接口连接到网关101内部的电路。给定本公开,本领域普通技术人员将理解无数其它的上述的组合和排列。
当网关101通过LAN网络接口502接收第一DNS请求(在图1中被描述为第一DNS请求)时,一个或多个处理单元505选择至少一个DNS服务器并选择至少一个存取网络,其连接到WAN网络接口503或504。可选择的DNS服务器可由网关101的管理员手动配置,其可由存取网络的服务供应商提供、从计算机可读存储介质506获得、或者从至少一个DHCP消息中获得。根据本发明的多个实施例中的一个实施例,当一个或多个处理单元505选择DNS服务器时,处理单元505也选择一个存取网络,该存取网络被授权向所选定的DNS服务器发送新DNS请求,这是因为某些DNS服务器只对来源于授权的IP地址的DNS请求进行响应。
根据本发明的多个实施例中的一个实施例,通过LAN网络接口502接收来自发送者的第一DNS请求。
一个或多个处理单元505可根据预先定义的进程、根据统计数值等随机性地选择DNS服务器和选择存取网络。对于本领域内的技术人员显而易见的是,更多的方法和技术可被用于进行该选择。
如上所述,总共有n乘m个可用的DNS服务器和存取网络的组合。一个或多个处理单元505选择至少两个这种服务器和存取网络的组合用于传送多个新DNS请求。因此,当处理单元505只选择一个DNS服务器时,处理单元505选择至少两个存取网络;当处理单元505只选择一个存取网络时,处理单元505选择至少两个DNS服务器。新DNS请求对应于第一DNS请求,从而新DNS请求的查询与第一DNS请求的查询相同。对于本领域内的技术人员显而易见的是,更多的方法和技术可被用于根据第一DNS请求的查询创建新DNS请求。
通过连接到WAN网络接口503和/或504的选定存取网络将新DNS请求传送给选定DNS服务器。
新DNS请求被传送后,一个或多个处理单元505可接收来自多个WAN网络接口中的一个WAN网络接口的DNS响应从而对来自选定DNS服务器的新DNS请求进行响应。一个或多个处理单元505将一个、大于一个或所有接收到的DNS响应传送给主机。新DNS响应包含与接收到的DNS响应相同的响应。第一DNS请求的发送者是主机,它通过LAN网络接口502向网关101发送第一DNS请求。
根据本发明的多个实施例中的一个实施例,处理单元505将所有接收到的DNS响应传送给主机。
当网关101接收到DNS响应时,只有当接收到的DNS响应是有效的并且没有其它新的DNS响应被传送给主机时,处理单元505将新DNS响应传送给主机。因此,主机只接收对于它之前发送的第一DNS请求的DNS响应。如果网关101已经接收到其它的RCODE为零的DNS响应,则处理单元505会将这些接收到的DNS响应丢弃。
根据本发明的多个实施例中的一个实施例,当预先定义的超时后没有任何新DNS响应被传送给主机时,处理单元505会传送一个具有非零RCODE的新DNS响应。预先定义的超时的值被存储在计算机存储介质506。在一个变型中,处理单元505将新DNS响应中的RCODE的值设置为与所接收到的DNS响应中的一个的RCODE相同。当预先定义的超时前网关101已经接收到了多于一个的DNS响应并且这些接收到的DNS响应都不是有效的,处理单元505会确定如何对第一DNS请求进行响应。接收到的DNS响应可被存储在计算机可读存储介质506中。根据本发明的多个实施例中的一个实施例,处理单元505将一个新DNS响应传送给主机,其具有的RCODE是从接收到的DNS响应中的一个中获得的。在一个变型中,第一DNS请求中的RCODE是包含在所有接收到的DNS响应中的大多数RCOED。在一个变型中,例如,第一DNS请求中的RCODE是随机性地从接收到的多个DNS响应中的一个中选择的。
在一个实例中,预先定义的策略是根据在时间阈值内接收到的DNS响应的到达时间从所有接收到的DNS响应中选择一个DNS响应。当网关101通过网络接口503或504中的一个接收到DNS响应时,一个或多个处理单元505首先将接收到的DNS响应的到达时间存储在计算机可读存储介质506中。当达到时间阈值时,一个或多个处理单元505从计算机可读存储介质506中获得所有的到达时间,从而选择具有有效代码的最早到达的DNS响应。

Claims (20)

1.一种用于对具有多个网络接口的网关中的域名服务(DNS)请求进行处理的方法,该方法包括:
通过网关的多个网络接口中的一个网络接口接收来自主机的第一DNS请求;
选择至少一个DNS服务器;
选择至少一个存取网络;
经由所选择的至少一个存取网络并通过网关的多个网络接口中的一个网络接口将多个新DNS请求传送给选定的至少一个DNS服务器;以及
其中新DNS请求的内容与第一DNS请求的内容相同。
2.如权利要求1所述的方法,其中当选定的DNS服务器的数量为一个时,选定的存取网络的数量为至少两个;并且
其中当选定的存取网络的数量为一个时,选定的DNS服务器的数量为至少两个。
3.如权利要求1所述的方法,其中DNS服务器的选择基于DNS服务器的可访问性。
4.如权利要求1所述的方法,其中选定的DNS服务器和选定的存取网络是随机选择的。
5.如权利要求1所述的方法,其中选定的DNS服务器和选定的存取网络是根据至少一个预先定义的选择策略进行选择的。
6.如权利要求1所述的方法,还包括:
接收来自多个存取网络中的一个存取网络的与多个新DNS请求相对应的第一DNS响应;
当第一DNS响应有效时将新DNS响应传送给主机,其中将新DNS响应与第一DNS响应相对应。
7.如权利要求6所述的方法,其中新DNS响应的传送是在没有与多个新DNS请求相对应的其它DNS响应已被传送给主机时执行的。
8.如权利要求1所述的方法,还包括:
不接收任何与多个新DNS请求相对应的DNS响应;
当预先定义的时间段后未接收到任何与新DNS请求相对应的DNS响应时,将新DNS响应传送给主机,其中新DNS响应具有非零返回代码。
9.如权利要求8所述的方法,其中预先定义的时间段处于一百毫秒至二十秒之间。
10.如权利要求1所述的方法,还包括:
在预先定义的时间段内接收与新DNS请求相对应的多个DNS响应;
根据至少一个预先定义的DNS响应选择策略,从接收到的多个DNS响应中选择一个DNS响应;
向主机传送新DNS响应,其中该新DNS响应的内容基于选定的DNS响应的内容。
11.一种处理DNS请求的网关,其包括:
多个广域网(WAN)接口;
至少一个局域网(LAN)接口;
处理单元;
计算机可读存储介质,其包括处理单元可执行的用于执行如下操作的程序指令:
通过至少一个LAN接口中的一个LAN接口接收第一DNS请求;
选择至少一个DNS服务器;
选择至少一个存取网络;
经由所选择的至少一个存取网络并通过多个LAN接口中的一个LAN接口将多个新DNS请求传送给选定的至少一个DNS服务器;以及
其中新DNS请求的内容与第一DNS请求的内容相同。
12.如权利要求11所述的网关,其中当选定的DNS服务器的数量为一个时,选定的存取网络的数量为至少两个;并且
其中当选定的存取网络的数量为一个时,选定的DNS服务器的数量为至少两个。
13.如权利要求11所述的网关,其中DNS服务器的选择基于DNS服务器的可访问性。
14.如权利要求11所述的网关,其中选定的DNS服务器和选定的存取网络是随机选择的。
15.如权利要求11所述的网关,其中选定的DNS服务器和选定的存取网络是根据至少一个预先定义的选择策略进行选择的,其中该至少一个预先定义的选择策略是从计算机可读存储介质中获得的。
16.如权利要求11所述的网关,其中计算机可读存储介质还包含处理单元可执行的用于执行如下操作的程序指令:
接收来自多个存取网络中的一个存取网络的与多个新DNS请求相对应的第一DNS响应;
当第一DNS响应有效时将新DNS响应传送给主机,其中新DNS响应与第一DNS响应相对应。
17.如权利要求16所述的网关,其中新DNS响应的传送是在没有与多个新DNS请求相对应的其它DNS响应已被传送给主机时执行的。
18.如权利要求11所述的网关,其中计算机可读存储介质还包含处理单元可执行的用于执行如下操作的程序指令:
不接收任何与新DNS请求相对应的DNS响应;
当预先定义的时间段后未接收到任何与新DNS请求相对应的DNS响应时,将新DNS响应传送给主机,其中新DNS响应具有非零返回代码。
19.如权利要求18所述的网关,其中预先定义的时间段处于一百毫秒至二十秒之间。
20.如权利要求11所述的网关,其中计算机可读存储介质还包含处理单元可执行的用于执行如下操作的程序指令:
在预先定义的时间段内接收与新DNS请求相对应的多个DNS响应;
根据至少一个预先定义的DNS响应选择策略,从接收到的多个DNS响应中选择一个DNS响应;
向主机传送新DNS响应,其中该新DNS响应的内容基于选定的DNS响应的内容。
CN201280076839.2A 2012-11-05 2012-11-05 处理dns请求的方法和网关 Active CN104969515B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2012/056153 WO2014068373A1 (en) 2012-11-05 2012-11-05 Methods and gateways for processing dns request

Publications (2)

Publication Number Publication Date
CN104969515A true CN104969515A (zh) 2015-10-07
CN104969515B CN104969515B (zh) 2018-04-27

Family

ID=50626566

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280076839.2A Active CN104969515B (zh) 2012-11-05 2012-11-05 处理dns请求的方法和网关

Country Status (4)

Country Link
US (1) US9654439B2 (zh)
CN (1) CN104969515B (zh)
GB (1) GB2513796B (zh)
WO (1) WO2014068373A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107770193A (zh) * 2017-11-17 2018-03-06 新华三信息安全技术有限公司 一种规则匹配方法、装置、防火墙设备及存储介质
CN110138872A (zh) * 2016-06-30 2019-08-16 上海智臻智能网络科技股份有限公司 一种用于网络代理的计算机可读介质
CN112187902A (zh) * 2020-09-21 2021-01-05 普联国际有限公司 IPv6隧道模式下的DNS代理方法、装置、存储介质及终端设备

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9954815B2 (en) * 2014-09-15 2018-04-24 Nxp Usa, Inc. Domain name collaboration service using domain name dependency server
DE112015006397B4 (de) 2015-03-31 2023-05-25 Nec Corporation DNS Optimierung für Multi-Source Download bei Hybridzugriff
CN106302845B (zh) * 2015-05-29 2020-07-17 西安中兴新软件有限责任公司 数据通道产品的域名系统地址配置方法及装置
WO2017147411A1 (en) * 2016-02-25 2017-08-31 Sas Institute Inc. Cybersecurity system
US10469499B2 (en) * 2016-06-30 2019-11-05 Calix, Inc. Website filtering using bifurcated domain name system
US10757075B2 (en) * 2017-04-14 2020-08-25 Calix, Inc. Device specific website filtering using a bifurcated domain name system
CN109889499B (zh) * 2019-01-17 2021-01-12 Oppo广东移动通信有限公司 报文发送方法及相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005184110A (ja) * 2003-12-16 2005-07-07 Matsushita Electric Ind Co Ltd パケット転送装置およびパケット転送方法
CN101764855A (zh) * 2009-12-30 2010-06-30 福建星网锐捷网络有限公司 一种提供域名解析服务的方法、装置及系统
CN101841577A (zh) * 2010-06-07 2010-09-22 中兴通讯股份有限公司 一种实现域名解析代理功能的方法和装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5777989A (en) * 1995-12-19 1998-07-07 International Business Machines Corporation TCP/IP host name resolution for machines on several domains
US6665702B1 (en) * 1998-07-15 2003-12-16 Radware Ltd. Load balancing
US6810411B1 (en) * 1999-09-13 2004-10-26 Intel Corporation Method and system for selecting a host in a communications network
WO2002005510A1 (en) * 2000-07-11 2002-01-17 Nokia Corporation Method for providing a dns server address list from a server to a client
US7099957B2 (en) * 2001-08-23 2006-08-29 The Directtv Group, Inc. Domain name system resolution
US7930428B2 (en) * 2008-11-11 2011-04-19 Barracuda Networks Inc Verification of DNS accuracy in cache poisoning
CN102130820A (zh) * 2010-01-14 2011-07-20 深圳市深信服电子科技有限公司 一种网络服务访问方法以及接入网关设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005184110A (ja) * 2003-12-16 2005-07-07 Matsushita Electric Ind Co Ltd パケット転送装置およびパケット転送方法
CN101764855A (zh) * 2009-12-30 2010-06-30 福建星网锐捷网络有限公司 一种提供域名解析服务的方法、装置及系统
CN101841577A (zh) * 2010-06-07 2010-09-22 中兴通讯股份有限公司 一种实现域名解析代理功能的方法和装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110138872A (zh) * 2016-06-30 2019-08-16 上海智臻智能网络科技股份有限公司 一种用于网络代理的计算机可读介质
CN110138872B (zh) * 2016-06-30 2022-02-25 上海智臻智能网络科技股份有限公司 一种用于网络代理的计算机可读介质
CN107770193A (zh) * 2017-11-17 2018-03-06 新华三信息安全技术有限公司 一种规则匹配方法、装置、防火墙设备及存储介质
CN112187902A (zh) * 2020-09-21 2021-01-05 普联国际有限公司 IPv6隧道模式下的DNS代理方法、装置、存储介质及终端设备
CN112187902B (zh) * 2020-09-21 2023-10-17 普联国际有限公司 IPv6隧道模式下的DNS代理方法、装置、存储介质及终端设备

Also Published As

Publication number Publication date
US9654439B2 (en) 2017-05-16
GB2513796B (en) 2020-06-17
GB201415040D0 (en) 2014-10-08
WO2014068373A1 (en) 2014-05-08
GB2513796A (en) 2014-11-05
US20140379916A1 (en) 2014-12-25
CN104969515B (zh) 2018-04-27

Similar Documents

Publication Publication Date Title
CN104969515A (zh) 处理dns请求的方法和网关
US8228848B2 (en) Method and apparatus for facilitating push communication across a network boundary
US8767737B2 (en) Data center network system and packet forwarding method thereof
US20220159104A1 (en) IPv4/IPv6 BRIDGE
CN102215273B (zh) 一种为内网用户提供外网接入的方法和装置
CN105430059A (zh) 智能客户端路由
CN110677405A (zh) 一种数据处理方法、装置、电子设备及存储介质
US10142282B2 (en) Methods and gateways for processing DNS request
CN105453488A (zh) 用于处理dns请求的方法和系统
US10965640B2 (en) Configuration of an M2M device
CN103581351A (zh) 网络访问的方法和装置
US20120210008A1 (en) Method and Mobile Communication System Capable of Establishing Peer-to-Peer Transmission
CN103581361A (zh) 一种域名解析代理方法、设备及系统
CN115174310B (zh) Pdn拨号及配置方法、系统、装置、设备及存储介质
US20110235641A1 (en) Communication apparatus, method of controlling the communication apparatus,and program
CN107534585A (zh) 通信方法和终端
KR20150002934A (ko) 네트워크 모드 선택 방법과 그를 위한 모바일 라우터
CN102790679B (zh) 上网卡的上网方法和上网卡
CN108076025B (zh) 网络设备的注册方法和装置
CN114745359B (zh) 一种可以减少用户终端地址续约频率的方法
CN113347284B (zh) 资源访问方法、资源访问装置、电子设备及存储介质
CN114615233B (zh) 数据传输方法、装置及系统、网关设备、终端设备及介质
KR20130010698A (ko) 이기종 네트워크 기반 데이터 동시 전송 서비스 방법
CN117675758A (zh) 域名解析方法、系统、装置及非易失性存储介质
KR101238027B1 (ko) 이기종 네트워크 기반 데이터 동시 전송 서비스 시스템 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant