用于在多机种ip网络中的客户机与服务器之间建立通信的系统和方法

文档序号:7586149阅读:200来源:国知局
专利名称:用于在多机种ip网络中的客户机与服务器之间建立通信的系统和方法
技术领域
本发明一般涉及在多机种IP网络中的客户机与服务器之间的电子内容传递。特别地,本发明涉及用于允许多机种网络中的客户机与其主机名不可经由DNS服务器解析的服务器进行通信的方法。
背景技术
网际协议(“IP”)是设计用于促进网络内或网络间业务的路由传送的寻址协议。在最近几年中,网际协议正在用于包括因特网和内联网的许多计算机网络上。网际协议的当前版本即版本4(“IPv4”)支持有限的地址空间。借助于32比特地址字段,有可能分配232个不同IPv4地址,即4294967296或大于40亿个全球唯一地址。网际协议版本6(“IPv6”)建议使用128比特地址字段用于IP地址。IPv6还包括超越现存IPv4协议的某些附加结构改进,比如地址自动配置、邻居发现和路由器发现。尽管IPv6提供了诸多优点,但是在未来的许多年,大量的网络(包括大量互联网子网)仍然将使用IPv4。这是因为在现存的互联网基础结构中已经完成的大量的金融和知识投资。因此,转换到IPv6将需要一个延长的时间周期,在此期间IPv6将最初与现存IPv4共存,并且然后逐渐开始取代现有IPv4协议。
由于这些原因,预计将会出现过渡的多机种IPv6/IPv4基础结构,在该结构中出现IPv6/IPv4实体。后者在它们的网络协议栈中支持IPv6和IPv4,并且可以利用这两个协议进行通信。当前的支持IPv4和IPv6共存的努力集中于把现存IPv4主干线用作转接(transit)的“IPv6岛”(或子网)之间的域间路由选择。然而,这些岛自身可以有复杂的多机种IPv4和IPv6内部结构(例如,大型学术或商业学院“内联网”),该内部结构也需要域内IPv4到IPv6转换机制以及策略。
简而言之,转换器和开隧道(tunneling)是公知的转换机制。在该申请中不再考虑前者。开隧道在本领域是公知的并且通过建立点对路由选择基础结构来传送它们。在RFC2893中披露了两种类型的开隧道技术一配置的和自动的。配置开隧道(Configured tunneling)的特征在于,在封装节点上人工配置隧道端点地址。配置开隧道在配置和操作管理资源方面是昂贵的,并且不适于网络拓扑结构改变。自动开隧道的特征在于,在封装节点上自动配置隧道端点地址,即不需要任何人工配置并且适合于网络布局改变。这就是为什么自动开隧道是优选的原因。自动开隧道由于使用特殊的IPv6地址与嵌入的IPv4地址而成为可能。封装节点使用后者来定义隧道的端点。下面列出了有助于自动开隧道的IPv6地址的类型●IPv4-兼容的IPv6地址(参见RFC1886);●IPv4-映射的IPv6地址(参见RFC1886);●6over4地址(参见RFC 2529)●6to4地址(参见RFC3056);●ISATAP地址(参见RFC draft-ietf-ngtrans-isatap-06.txt);如在RFC 3056中定义的6to4地址被用于其中执行站点之间自动开隧道(在不同子网之间)的情况。6to4地址的低阶80比特包含IPv6节点可本地得到的信息,比如站点级集合标识符(Site-LevelAggregation Identifier)(SLA ID)和接口ID。后者通常等于制造时内置的IPv6节点的MAc地址。高阶48比特被称为6to4前缀。IANA已经永久地把数值0x0002,即2002∷/16分配给6to4前缀的高阶16比特。6to4前缀的低阶32比特被预留用于用户站点的全球唯一IPv4地址的冒号-十六进制表示。6to4前缀的实例是对应于公共IPv4地址130.145.174.124的20028291ae7c∷/48。
当客户机为了得到内容(例如网页)或者进行通信(音频/视频会议、聊天、游戏)而联络服务器(在IPv4中或者在IPv6中)时,客户机首先必须知道服务器二进制IP地址。客户机和服务器可以位于相同或者不同网络中。客户机通常通过服务器的主机名(ASCII字符串)如servername.philips.com或者通过电子邮件地址如friend@philips.com,而不通过其二进制IP地址,来查询服务器(主机、邮件箱或者其它资源)。尽管如此,基础IP网络自身仅知道IP地址,所以使用称为域名系统(Domain Name System)(DNS)的机制把ASCII字符串转换成二进制IP地址。DNS最初仅支持IPv4地址,但是后来它扩展到支持IPv6地址集合和重新编号(参见RFC2874)。然而,在从IPv4到IPv6的过渡期间,DNS基础结构也许不完全支持IPv6,即存在不保持IPv6记录(即,AAAA或者A6记录)的隔离的DNS服务器。因此,其主和辅DNS服务器不支持A6记录的IPv6节点将不能通过主机名由其它IPv6节点到达(寻址),因为不能在IPv6地址中解析后者。

发明内容
所以,本发明建议一种新的机制,克服在服务于正被寻址的IPv6节点的主和辅DNS服务器不支持A6记录的情况下,另一个IPv6节点不能寻址一个IPv6节点的当前限制。
本发明涉及一种用于在多机种IPv6/IPv4网络中允许客户机与其主机名不可经由DNS服务器解析的服务器进行通信的方法。
根据本发明的一个方面,用于从客户机寻址IPv6子网中的服务器的方法包括以下步骤由与所述客户机有关的用户向所述网络中的门户(portal)请求能够向所述客户机提供期望内容的服务器节点主机名的列表;响应所述客户机请求,从所述门户向所述客户机提供第一表和第二表,所述第一表包括所述服务器节点主机名的列表;在所述客户机上过滤所述提供的服务器主机名列表,以排除所述客户机不能与之建立通信的那些服务器节点主机名;由所述用户从所述过滤的服务器节点主机名的列表中选择服务器主机名;从所述第一表中确定与所述用户选择的服务器主机名有关的IP地址是否可经由域名服务器(DNS)解析;如果所述步骤(e)(这是哪一个步骤?复制和粘贴问题?)被满足,则从所述DNS获得所述相关IP地址;和如果步骤(e)未满足,则由所述客户机与所述门户执行协议,以确定具有所述选择服务器主机名的服务器的一个或多个默认IP地址。
根据本发明的一个方面,用于从客户机寻址IPv6子网中服务器的系统包括用于由与所述客户机有关的用户向所述网络中的门户请求能够向所述客户机提供期望内容的服务器节点主机名的列表的装置;用于响应所述客户机请求,从所述门户向所述客户机提供第一表和第二表的装置,所述第一表包括所述服务器节点主机名的列表;用于在所述客户机上过滤所述提供的服务器主机名的列表,以排除所述客户机不能与之建立通信的那些服务器主机名的装置;用于由所述用户从所述已过滤的服务器主机名列表中选择服务器主机名的装置;用于从所述第一表中确定与所述用户选择的服务器主机名有关的IP地址是否可经由域名服务器(DNS)解析的装置;用于如果所述用于确定装置被满足,则从所述DNS获得所述相关的IP地址的装置;用于如果所述用于确定装置未满足,则由所述客户机与所述门户执行协议,以确定具有所述选择服务器主机名的服务器的一个或多个默认IP地址的装置。
这里所述的方法和系统可以帮助从网际协议版本4(“IPv4”)网络向网际协议版本6(“IPv6”网络)的过渡。然而,本发明并不限于这样的实施例,并且本发明可以与需要X比特与Y比特网络地址间的转换和双网络使用的事实上的任何网络集合一起使用。
本领域熟练技术人员在阅读结合附图的以下详细说明之后,将会明白本发明这些和其它优点。


图1是图示涉及的允许客户机访问同机种IPv4网络中请求服务器的步骤的流程图;图2是根据现有技术的同机种IPv4网络的示意图;图3是其中可以实行本发明方法的多机种IPv6/IPv4网络的示意图;图4是在图2的网络的门户中提供的服务器的主机名表和主机名2IP地址表的典型结构;和图5是图示涉及的允许客户机访问多机种IPv6/IPv4网络中的请求服务器的步骤的流程图,其中服务器的IP地址能够或不能够通过DNS服务获得。
具体实施例方式
在本发明的以下详细说明中,描述了大量的具体细节,以提供对本发明的彻底理解。然而,本领域熟练技术人员将会理解,没有这些具体细节也可以实行本发明。为了避免混淆本发明,在某些示例中,公知结构和装置以方框图形式显示,而不是详细显示。
A.术语通过简要回顾以下给出的在本申请中使用的有关术语,将会使以下讨论更加清楚。
“节点”被定义为以其网络协议栈实施IPv4或IPv4或者两者的装置。
“路由器”被定义为转发未明确寻址到它自己的IP分组的节点。
“网关”被定义为与路由器比如NA(P)T、DHCP服务器等相比包括附加功能的节点。
“主机”被定义为不是路由器或者网关的任何节点。
“接口”被定义为到链路的节点的连接(attachment)。
“分组”被定义为IP报头加任何有效负载。
术语“IPv4-唯一(IPv4-only)节点”通常是指只实施IPv4但不明白IPv6的主机或路由器。
术语“IPv6-唯一(IPv6-only)节点”通常是指只实施IPv6但不理解IPv4的主机或路由器。
术语“IPv4/IPv6节点”通常是指实施IPv4和IPv6的主机或路由器。
术语“IPv4节点”通常是指实施IPv4的主机或路由器。IPv6/IPv4和IPv4-唯一节点都是IPv4节点。
术语“IPv6节点”通常是指实施IPv6的主机或路由器。IPv6/IPv4和IPv6-唯一节点都是IPv6节点。
术语“IPv4分组”通常是指IPv4报头加有效负载。
术语“IPv6分组”通常是指IPv6报头加有效负载。
“IPv4网络”通常是指专门由IPv4节点组成的网络。
“IPv6网络”通常是指专门由IPv6节点组成的网络。
“IPv6/IPv4网络”通常是指由IPv4节点和IPv6节点组成的网络。
B.传统的IPv4网络为了更好地理解本发明的某些方面,首先考虑客户机如何在传统的IPv4网络中访问服务器是有益的。
图1是一般性描述位于第一IPv4网络中的IPv4-唯一客户机如何经由DNS服务访问位于第二(不同)IPv4网络中的IPv4服务器的流程图。经由DNS服务获得对服务器的访问的这个处理是本领域公知的,并保证总是把主机名解析成同机种网络比如图2的典型IPv4网络中的IP地址。但是,在多机种网络中,如在图3的IPv6/IPv4网络中,DNS服务的可靠性不是在每个场合得到保证的,如下面将要说明的。本发明涉及一种用于在多机种网络中允许客户机在不能依赖DNS服务的那些情况中访问服务器的方法,下面将进行说明的。
现在参见图1的流程图,在步骤106,一旦客户机向网络中的门户请求能够提供某个内容类型(例如音频、视频等)的服务器,就从该门户给该客户机返回可应用的服务器主机名的列表。在步骤108,客户机的用户从提供的列表中选择一个服务器主机名。在步骤110,客户机向网络中的默认DNS服务器发出DHS请求。在步骤112,向客户机返回服务器的Ipv4地址。在步骤114,客户机使用IPv4与服务器通信。
现在通过实例补充图1流程图中所述的在同机种网络中从一个客户机访问服务器的原理。具体而言,图2是一个由公共广域网(“WAN”)24和办公室/家庭局域网(“LAN”)12组成的同机种网络通信系统200。网络12和24都基于IPv4,即客户机14、网关16、厂商门户18、服务器19和服务器20的每一个都支持公共协议,即IPv4协议(参见RFC 791)。在一个示例性网络中,客户机14被假定是能够从多个因特网音乐站(内容供应商)如服务器19和20接收音频内容的因特网无线电客户机。为了在客户机14上获得音频内容,客户机14必需得到能够提供期望内容的服务器主机名的列表(例如服务器19和20)。为了获得服务器主机名的列表,客户机14首先连接到网络中的默认门户,例如厂商门户18。假定包含在该列表中的服务器已经预先在门户19中注册了它们自己。一旦接收到该列表,与客户机14关联的用户随后可以从提供的列表中选择一个服务器主机名。接着,为了把所选择的服务器的主机名映射到二进制IP地址,客户机14像传统的那样,在网络10中使用其默认DNS服务器(未示出)。DNS服务器可以位于家庭网络12中或者位于公共网络24中(包括在厂商门户上)。利用从DNS服务器返回的IPv4地址,客户机14随后能够开始与所选服务器例如服务器20建立通信,以接收音频内容。
当基于同机种IPv4的图2的网络10从IPv4迁移到IPv6时,上述实例变得更加复杂。
C.IPv4到IPv6迁移图3的通信网络系统300表示用于图示本发明原理的示例性多机种IPv6/IPv4网络。网络300通过实例表示其中基于IPv4的图2的网络10将迁移到多机种的IPv6/IPv4网络的一种方式。图2的家庭IPv4网络12被扩展为包括新客户机-IPv6/IPv4客户机34和IPv6-唯一客户机36。公共IPv4网络24被扩展到包含IPv6/IPv4内容供应商22(典型地,6to4路由器,参见RFC 3056)、IPv6-唯一内容供应商30(具本机IPv6地址)和IPv6/IPv4中继路由器28。IPv6/IPv4中继路由器28被配置成支持6to4地址与IPv6-唯一服务器的本机IPv6地址之间的路由选择。
为了便于解释,假定图3的多机种的IPv6/IPv4网络300不支持转换器,而仅仅支持开隧道作为转换机制。因此,IPv4-唯一主机与IPv6-唯一主机之间的通信不被维持(例如,IPv4-唯一客户机14不能与IPv6-唯一服务器30通信)。在下表(I)中通过为具有具有关联的IP版本(第2列)的给定客户机(第1列)指示客户机可以直接或者通过隧道装置与哪一些具有关联的IP版本(第4列)的服务器(第3列)进行通信,概述网络300中的所有可能的通信。
表(I)

参见表(I),显示IPV4-唯一客户机14可以联络IPV4-唯一或者IPv6/IPv4服务器19、20和22,但不联络为IPV6-唯一的服务器26和30。IPv6/IPv4客户机34可以联络所有服务器,即,服务器19、20、22、26和30,并自动地适应由相应服务器使用的IPv4或IPv6。IPv6-唯一客户机36可以联络IPv6-唯一或IPv6/IPv4服务器22、26和30,但是不联络为IPv4-唯一的服务器19和20。
利用图3所示的多机种IPv6/IPv4网络300,说明在该网络中从客户机请求服务器访问的处理。请注意,与图2的同机种网络200相比,图3的多机种网络300中的处理更加复杂。在当前所示的实例中,IPv6/IPv4节点例如客户机34可以试图联络分别是网络300中的IPV4-唯一、IPv6/IPv4和IPV6-唯一的服务器19、20、22、26和30的任何一个。如在以前实例中的那样,联络节点即联络网络中的服务器的IPv6/IPv4客户机34的第一步骤是首先联络厂商门户18,以得到服务器的主机名的列表。然后与客户机34关联的用户可以从返回的列表中选出一个服务器主机名,由此客户机随后提出把所选的服务器主机名映射到二进制IP地址的DNS请求,使得客户机34能够开始与所选服务器进行通信。
假定所有DNS服务器已经被升级到支持IPv6记录(即,A6或AAAA记录),DNS服务将向客户机34返回●在IPV4-唯一服务器19或20被选择的情况下,(至少一个)IPv4地址,或者●在IPv6/IPv4服务器22被选择的情况下,(至少一个)IPv6(和IPv4)地址,(请注意,可以根据服务器22如何在DNS服务器上注册,返回一个或两个地址,即根据6to4方案,单个IPv6地址,或IPv4以及IPv6地址)。
●在IPv6-唯一服务器26或IPv6-唯一服务器30被选择的情况下,(至少一个)IPv6地址。
一旦从DNS服务器获得IP地址,客户机34随后可以开始与以下服务器通信●使用IPv4包的IPv4-唯一服务器19或20;●使用IPv4包或被封装在IPv4包中的IPv6包的IPv6/IPv4服务器22,即,将应用开隧道)。在后一情况下,隧道的起点将是IPv6/IPv4客户机34,而隧道的端点将是服务器22,也就是,这将是主机-主机6to4自动开隧道(参见RFC 2893)。
●使用被封装在IPv4包的IPv6包的IPV6-唯一服务器26,也就是,将应用开隧道。在后一情况下,隧道的起点将是客户机34,而隧道的终点将是服务器22(这是服务器26的路由器),即,这将是主机-路由器6to4自动开隧道(参见RFC 2893)。
●使用被开隧道到IPv4包中的IPv6包的IPV6-唯一服务器30。隧道的起点将是IPv6/IPv4客户机34,而隧道的终点将是IPv6/IPv4中继路由器28。在后者是6to4中继路由器的情况下,可以使用RFC3068中定义的6to4的路由器的任意播放(anycast)前缀自动进行检测。这暗示应利用等于2002:c058:6301∷/48的默认中继路由器前缀配置客户机34。该前缀对应于IPv4地址192.88.99.1。
上述用于多机种网络的寻址方案假定所有DNS服务器已经被升级为支持从IPv4到IPv6迁移中的IPv6记录(即,A6或AAAA记录)。然而,该假定可能是不现实的,因为在从IPv4到IPv6的迁移中,很可能将存在只支持IPv4记录(即,只支持A记录)的“传统”DHS服务器。例如,在所示网络300中,如果用于IPV6-唯一服务器26或IPV6-唯一服务器30的主和辅DNS服务器仅仅支持IPv4记录,而不支持A6记录,则发送解析服务器26或30的主机名的DNS请求的IPv6/IPv4客户机34将失败并且非常有可能由于超时而被中断。
本发明用于克服仅支持IPv4记录的某些DNS服务器的“传统”问题。特别是,本发明公开了一种允许位于通信网络系统中的请求客户机(仅支持开隧道作为转换机制)与那些其主机名不可经由DNS服务器(因为DNS服务器是仅支持IPv4记录的传统DNS服务器)解析的服务器建立通信的方法。
D.实施例根据本发明实施例可以获得否则由于上述原因和其它没有明示的原因不能经由DNS服务器解析的主机名的解析。概括地说,服务器主机名的解析是由得到厂商门户18支持或者与该门户18协作的客户机实现的。厂商门户18通过维护两个新表提供支持,其中第一表称为服务器的主机名表,第二相关表称作主机名2IP地址表。
图4中显示了服务器主机名表50和主机名2IP地址表40的示例结构。这些表最好被存储在门户18中。如图4所示,服务器主机名表50由三列组成。第一列被标注为“主机名”51,列出了厂商门户18知道的所有服务器的主机名。第二列被标注为“IP地址版本”53,列出了服务器地址的IP版本,即IPV4-唯一,或IPv6/IPv4,或IPV 6-唯一。第三列被标注为“可经由DNS服务器获得的IP地址”55,列出了相应服务器的IP地址是否可经由DNS服务器解析(例如yes/no)。期待当每个服务器在厂商门户18上注册时,每个服务器可以在表50中提供表目项。为了注册目的,该信息可以被制作为强制性的。在DNS不可到达服务器的情况下(无论何种原因),应当把至少一个有效IP地址指定给厂商门户18,以作为其可访问性的保证。该信息被维持在图4所示的称之为主机名2IP地址表40的本发明的第二表中。主机名2IP地址表40由三列组成。第一列被标注为“主机名”41,其列出了服务器主机名表50中其主机名不能经由DNS解析成IP地址的那一些服务器的主机名。在所示实例中,这将包括服务器26和服务器X。表40的第二列被标注为“IP地址”43,其列出了作为服务器可访问性保证的至少一个有效IP地址。主机名2IP地址表40的第三列被标注为“中继路由器”45,指示中继路由器的身份(如果可应用的话)。如果具有本机IPv6地址的服务器知道某些特定中继路由器地址,则该服务器应当把它指定给厂商门户18,并且该信息将被存储在表40的列45中。
如果给定的主机具有6to4地址,则可以在因特网的任何地方使用6to4与另一主机交换分组,并因此不需要中继路由器信息。例如,客户机34或36可以不用任何中继路由器与服务器22或26通信。然而,与拥有不是6to4兼容的本机全球IPv6地址的IPV6-唯一节点的通信需要6to4中继路由器(参见ref.RFC2373,2374)。中继路由器被配置成支持6to4地址与本机IPv6地址之间的过渡路由选择。在图3中,客户机34或36可以只通过中继路由器28与服务器30通信。
客户机(例如,客户机14、34或36之一)与厂商门户18之间的交互根据以下规则进行当在客户机与门户18之间建立初始连接时,客户机从厂商门户18获得服务器的主机名表50。客户机知道它自己的IP版本(例如,用于客户机36的IPV6-唯一),并因此内部过滤由门户18提供的表50的第一列51中列出的服务器,以便仅保存已经确定它可以与之通信的那些服务器。过滤在表50的列51中列出的服务器主机名基于在表50的第二列53中提供的信息。在本实例中,IPV6-唯一客户机36过滤表50的列51中的6个主机名的列表,以排除该列表中两个主机名并保留4个主机名,即保留IPV6-唯一服务器26、30、X和IPv6/IPv4服务器22。服务器19和20是根据IPV6-唯一客户机36不能与IPV4-唯一服务器建立通信的确定而被排除的。
在下一个步骤,客户机36经由标准的用户接口向关联的用户提供过滤的服务器主机名列表。该关联用户随后可以从已过滤的列表中选择一个服务器主机名。如果所选服务器的IP地址可经由DNS服务器获得(即,表50的第三列55的“yes”指示符),则客户机36按传统方式进行DNS请求,以解析服务器主机名。否则,如果所选服务器的IP地址不能经由DNS服务器获得(即,“no”指示符),则客户机与门户18执行称之为“HelpMeToGetIPaddress(帮助我获得IP地址)(主机名)”协议的专用协议。在本实例中,如果客户机36从已过滤列表中选择服务器22,则可经由DNS服务器获得其IP地址。作为选择,如果客户机36从已过滤列表中选择服务器26,则该服务器的IP地址不可经由DNS服务器获得,并且在该实例中必需调用协议。该协议包括关联的表40的使用。更加特别地,该协议包括门户18使用选择服务器(例如服务器26)的主机名作为检索关键词或者索引在表40的第一列41中执行查找,以确定在表40的每个记录的第二列43中存储的服务器的一个或多个IP地址。如果可用的话,则从表40的第三列45中确定相应的中继路由器。
图5是图示允许客户机访问多机种IPv6/IPv4网络中已请求服务器的算法的流程图,其中服务器IP地址可以通过DNS服务来解析或者不可以利用DNS服务来解析。继续参考图3中的IPv6/IPv4网络300。在该说明中,客户机是指图3网络的客户机14、34或36的任何一个。门户是指图3中的厂商门户18,并且表50和40被厂商门户18支持。
在步骤52,客户机从门户18获得服务器的主机名表50,并且过滤在表50的第一列51中存储的服务器的已提供列表。过滤是通过将客户机使用的IP版本与列表中相应服务器使用的IP版本进行比较来执行的。特别地,对于表50的每个表目项(记录),将客户机IP版本与表50的服务器IP版本(如第二列53中定义的,即“IP地址版本”)进行比较。如果确定IP版本使得能够在客户机与服务器之间进行通信,则在已过滤的列表中保留该服务器,否则,排除该服务器。随后客户机经由用户接口向关联的用户提交服务器主机名的已过滤列表。
在步骤54,与客户机关联的用户可以从显示的已过滤列表中选择一个服务器主机名。
在步骤56,客户机经由表50的第三列55检验已选择的服务器的IP地址是否可经由DNS服务器获得。如果“YES”,则算法前进到步骤60,反之算法前进到步骤70。
在步骤60,客户机请求它的默认DNS服务器返回选择服务器的主机名的IP地址,并且算法前进到步骤62。
在步骤62,客户机得到选择服务器的一个或多个IP地址。请注意,如果服务器已经利用一个以上的IP地址(例如,两个IPv4地址或IPv4和IPv6地址)注册,则DNS服务器将把它们全部返回。然后,算法前进到步骤80。
在步骤70,客户机与门户18按以上解释的方式执行“HelpMeToGetIPaddress(主机名)”协议,以获得服务器的默认IP地址和任何关联的路由器信息。
在步骤72,客户机得到服务器的IP地址和相应的中继路由器(如果可用的话),作为在步骤70调用的“HelpMeToGetIP地址(主机名)”协议的输出。然后,算法前进到步骤80。
在步骤80,客户机检验作为DNS请求或“HelpMeToGetIP地址(主机名)”协议的输出的(第一)返回地址是否与它自己地址的IP版本相同。如果“yes”,则算法前进到步骤82,反之,算法前进到步骤84。
在步骤82,客户机检验IP地址是否是IPv6地址。如果“yes”,则算法前进到步骤100,反之算法前进到步骤90。
在步骤84,客户机选择由DNS或者“HelpMeToGetIP地址(主机名)”协议返回的下一个地址,并返回到步骤80。请注意,由于在步骤52上执行的服务器过滤,因此将具有客户机能够用来通信的至少一个服务器IP地址。
在步骤90,客户机使用IPv4与服务器进行通信。
在步骤100,客户机检验客户机的和服务器的IPv6地址是否按照6to4方案组成(ref.RFC 3056),即前缀的前16比特等于2002。在“Yes”的情况下,算法前进到步骤102,反之,算法前进到步骤104。
在步骤102,客户机使用IPv6和6to4自动开隧道(ref.RFC2893)与服务器进行通信。
在步骤104,客户机使用IPv6和自动开隧道(ref.RFC 2893)与服务器通信,因为隧道的终点总是中继路由器。如果中继路由器是6to4,则可以通过使用RFC 3068中定义的6to4路由器的任意播放前缀2002:c058:6301∷/48进行自动检测。如果中继路由器不是6to4并且客户机已经执行步骤72,则由门户18从表40中检索中继路由器的地址/前缀,并将其作为执行“HelpMeToGetIP地址(主机名)”协议的输出返回给客户机。
最后,上述讨论仅仅打算说明本发明,而不应被解释为把所附权利要求限制到任何特定实施例或实施例组。因此,尽管已经结合特定的示范性实施例详细说明了本发明,但是应当理解,在不背离以下权利要求所述的本发明的更宽的和期望的精神和范围的条件下,可以对本发明做出众多修改和变化。因此,说明书和附图应当看作一个说明方式,而不是打算限制所附权利要求的范围。
在解释所附权利要求时,应当理解a)单词“包括”并不排除给定权利要求中所列出的那些之外的其它元素或动作的存在;b)元素之前的单词“一”或“一个”并不排除多个这样的元素存在;c)权利要求中的标号不限制其范围;d)若干“装置”可以利用相同项或硬件或软件实现的结构或功能来表示;和e)每个所公开的元素可以包括硬件部分(例如,分立电子电路)、软件部分(例如计算机编程)或者其任何组合。
权利要求
1.一种用于在多机种IP网络(300)中的客户机节点(14,34,36)与服务器节点之间建立通信的方法,所述方法包括以下步骤(a)由与所述客户机有关的用户向所述网络中的门户(18)请求能够向所述客户机提供期望内容的服务器主机名(51)的列表;(b)响应所述客户机请求,从所述门户(18)向所述客户机提供第一表(50)和第二表(40),所述第一表(50)包括所述的服务器节点主机名(51)的列表;(c)在所述客户机(14,34,36)上过滤所述提供的服务器主机名(51)的列表,以排除那些所述客户机(14,34,36)不能与之建立通信的服务器主机名(51);(d)由所述用户从所述过滤的服务器主机名(51)的列表中选择服务器主机名(51);(e)从所述第一表(50)中确定与所述用户选择的服务器主机名(51)相关联的IP地址是否可经由域名服务器(DNS)解析;(f)如果满足所述步骤(e),则从所述DNS获得所述相关联的IP地址;(g)如果不满足所述步骤(e),则由所述客户机(14,34,36)与所述门户(18)执行协议,以确定具有所述选择的服务器主机名(51)的服务器的一个或多个默认IP地址。
2.根据权利要求1所述的方法,还包括在所述步骤(f)之后,使用所述相关联的IP地址与所述选择服务器(19,20,22,26,30)建立通信的步骤。
3.根据权利要求2所述的方法,其中与所述选择服务器(19,20,22,26,30)建立通信的步骤还包括以下步骤(1)确定来自DNS的第一返回的IP地址的IP版本是否是与所述客户机(14,34,36)的IP版本相同的版本;(2)如果不满足所述步骤(1),则从所述DNS获得下一个返回的I P地址并重复所述步骤(1);(3)如果满足所述步骤(1),则确定所述第一返回的IP地址的所述IP版本和所述客户机(14,34,36)的所述IP版本是否为IPv6版本;(4)如果满足所述步骤(3),则确定所述IPv6版本是否为6to4地址;以及(5)如果满足所述步骤(4),使用所述IPv6协议和自动开隧道与所述选择服务器(19,20,22,26,30)建立通信。
4.根据权利要求3所述的方法,其中如果不满足所述步骤(4),使用IPv6协议和具有中继路由器作为端点地址的开隧道方法,与所述选择服务器(19,20,22,26,30)建立通信。
5.根据权利要求3所述的方法,其中如果不满足所述步骤(3),则使用IPv4协议与所述选择服务器(19,20,22,26,30)建立通信。
6.根据权利要求1所述的方法,还包括在所述步骤(g)之后,使用所述相关联的IP地址与所述选择服务器(19,20,22,26,30)建立通信的步骤。
7.根据权利要求6所述的方法,其中与所述选择服务器(19,20,22,26,30)建立通信的步骤还包括以下步骤(1)确定来自所述第二表(40)的第一返回的IP地址的IP版本是否是与所述客户机(14,34,36)的IP版本相同的版本;(2)如果不满足所述步骤(1),则从所述第二表(40)获得下一个返回的IP地址并重复所述步骤(1);(3)如果满足所述步骤(1),则确定所述第一返回的IP地址的所述IP版本和所述客户机(14,34,36)的所述IP版本是否为IPv6版本;(4)如果满足所述步骤(3),则确定所述IPv6版本是否为6to4地址;以及(5)如果满足所述步骤(4),则使用所述IPv6协议和自动开隧道与所述选择服务器(19,20,22,26,30)建立通信。
8.根据权利要求7所述的方法,其中如果不满足所述步骤(4),则使用IPv6协议和开隧道至从所述第二表(40)获得的中继路由器地址作为端点地址,与所述选择服务器(19,20,22,26,30)建立通信。
9.根据权利要求7所述的方法,其中如果不满足所述步骤(3),则使用IPv4协议与所述选择服务器(19,20,22,26,30)建立通信。
10.根据权利要求1所述的方法,其中所述确定步骤还包括由所述客户机(14,34,36)将所述用户选择服务器主机名(51)用作索引在所述第一表(50)中执行查找,以获得指示经由所述DNS的选择服务器主机名(51)的可解析状态的记录值。
11.根据权利要求1所述的方法,其中所述步骤(g)还包括由所述客户机(14,34,36)将所述用户选择服务器主机名(51)用作索引在所述第二表(40)中执行查找,以确定用于与所述选择服务器(19,20,22,26,30)建立通信的、与所述用户选择服务器的主机名(51)关联的一个或多个默认IP地址(43)。
12.根据权利要求1所述的方法,还包括在所述步骤(a)之前,向所述厂商门户(18)上的所述第一表(50)提供多个记录的步骤,每个记录包括能够向所述客户机(14,34,36)提供所述期望内容的所述网络(300)中的服务器的所述服务器主机名(51);与所述服务器主机名(51)相关联的IP地址版本(53);和所述服务器主机名(51)是否可经由所述网络(300)中的DNS服务器解析的指示符(55)。
13.根据权利要求8所述的方法,其中在所述IP网络(300)的操作之前的注册阶段期间,执行所述提供步骤。
14.根据权利要求1所述的方法,还包括在所述步骤(a)之前,向所述厂商门户(18)上的所述第二表(40)提供多个记录的步骤,每个记录包括能够向所述客户机(14,34,36)提供所述期望内容的所述网络(300)中的服务器的所述服务器主机名(41);与所述服务器主机名(41)关联的默认IP地址(43);和中继路由器地址(45)。
15.根据权利要求14所述的方法,其中在所述IP网络(300)的操作之前的注册阶段期间,执行所述提供步骤。
16.根据权利要求1的方法,其中所述步骤(c)还包括以下步骤将所述客户机(14,34,36)的IP地址版本与关联于所述服务器主机名(51)的一个或多个IP地址版本(53)进行比较,以便依据所述比较来确定所述比较的IP地址版本是否能够在所述客户机(14,34,36)与所述服务器之间建立通信;如果满足所述比较步骤,则在所述过滤列表中保留所述服务器主机名(51)和相关联的记录信息;和否则,则从所述过滤列表中删除所述服务器主机名(51)和所述关联信息。
17.一种用于在多机种IP网络(300)中的客户机(14,34,36)节点(14,34,36)与服务器节点(19,20,22,26,30)之间建立通信的系统(300),所述系统包括用于由与所述客户机(14,34,36)关联的用户向所述网络(300)中的门户(18)请求能够向所述客户机(14,34,36)提供期望内容的服务器主机名的列表的装置;用于响应所述客户机请求而从所述门户(18)向所述客户机(14,34,36)提供第一表(50)和第二表(40)的装置,所述第一表(50)包括所述服务器节点主机名(51)的列表;用于在所述客户机(14,34,36)上过滤所述提供的服务器主机名(51)的列表、以排除那些所述客户机(14,34,36)不能与之建立通信的服务器节点主机名(51)的装置;用于由所述用户从所述过滤的服务器主机名的列表中选择服务器主机名(51)的装置;用于从所述第一表(50)中确定与所述用户选择的服务器主机名(51)关联的IP地址是否可经由域名服务器(DNS)解析的装置;用于在满足所述的用于确定的装置时从所述DNS获得所述关联的IP地址的装置;和用于在不满足所述的用于确定的装置时由所述客户机(14,34,36)与所述门户(18)执行协议、以确定具有所述选择服务器主机名(51)的服务器(19,20,22,26,30)的一个或多个默认IP地址(43)的装置。
18.根据权利要求17所述的系统(300),还包括用于在满足所述的用于确定的装置时使用所述相关联的IP地址与所述选择服务器(19,20,22,26,30)建立通信的装置。
19.根据权利要求18所述的系统(300),其中用于使用所述相关联的IP地址与所述选择服务器(19,20,22,26,30)建立通信的所述装置还包括用于确定来自DNS的第一返回的IP地址的IP版本是否是与所述客户机(14,34,36)的IP版本相同的版本的第一装置;用于在不满足所述的确定装置时从所述DNS获得下一个返回的IP地址并重复确定装置的装置;用于在满足所述的第一确定装置时确定所述第一返回的IP地址的所述IP版本和所述客户机(14,34,36)的所述IP版本是否为IPv6版本的第二装置;用于在所述的用于确定的装置在满足所述第二确定装置时确定所述IPv6版本是否为6to4地址的第三装置;以及用于在满足所述第三装置时使用所述IPv6协议和自动开隧道与所述选择服务器(19,20,22,26,30)建立通信的装置。
20.根据权利要求19所述的系统(300),其中如果不满足所述用于确定的第三装置,则使用IPv6协议和具有中继路由器作为端点地址的开隧道方法,与所述选择服务器(19,20,22,26,30)建立通信。
21.根据权利要求19所述的系统(300),其中如果不满足所述用于确定的第二装置,则使用IPv4协议与所述选择服务器(19,20,22,26,30)建立通信。
22.根据权利要求17所述的系统(300),还包括用于在不满足所述用于确定的装置时,使用所述相关联的IP地址与所述选择服务器(19,20,22,26,30)建立通信的装置。
23.根据权利要求22所述的系统(300),其中用于建立通信的所述装置还包括用于确定来自所述第二表(40)的第一返回的IP地址的IP版本是否是与所述客户机(14,34,36)的IP版本相同的版本的第一装置;用于在不满足所述的用于确定的第一装置时从所述第二表(40)获得下一个返回的IP地址并重复所述的用于确定的第一装置的装置;用于在满足所述的用于确定的第一装置时确定所述第一返回的IP地址的所述IP版本和所述客户机(14,34,36)的所述IP版本是否为IPv6版本的第二装置;用于在满足所述的用于确定的第二装置时确定所述IPv6版本是否为6to4地址的第三装置;以及用于在满足所述的用于确定的第三装置时使用所述IPv6协议和自动开隧道与所述选择服务器(19,20,22,26,30)建立通信的装置。
24.根据权利要求23所述的系统(300),其中如果不满足所述的用于确定的第三装置,则使用IPv6协议和具有中继路由器作为端点地址的开隧道方法,与所述选择服务器(19,20,22,26,30)建立通信。
25.根据权利要求26所述的系统(300),其中如果不满足所述的用于确定的第二装置,则使用IPv4协议与所述选择服务器(19,20,22,26,30)建立通信。
26.根据权利要求17所述的系统(300),其中所述第一表(50)驻留在所述厂商门户(18)上,并且包括多个记录,每个记录还包括能够向所述客户机(14,34,36)提供所述期望内容的所述网络(300)中的服务器的所述服务器主机名(51);与所述服务器主机名(51)相关联的IP地址版本;和所述服务器主机名(51)可否经由所述网络(300)中的DNS服务器解析的指示符。
27.根据权利要求17所述的系统(300),其中所述第二表(40)驻留在所述厂商门户(18)上,并且由多个记录组成,每个记录还包括能够向所述客户机(14,34,36)提供所述期望内容的所述网络(300)中的服务器的所述服务器主机名(41);与所述服务器主机名(41)相关联的默认IP地址(43);和中继路由器地址(45)。
全文摘要
一种方法和系统允许客户机(例如,14,34,36)与其主机名不能经由多机种IPv6/IPv4网络(例如300)中的DNS服务器解析的服务器(例如19,20,22,26,30)通信。通过向客户机提供最好存储在网络(300)的门户(18)上的两个表(40,50)来实现解析,从而客户机使用表信息与门户(18)执行协议交换,以便能够与服务器(19,20,22,26,30)通信。
文档编号H04L29/12GK1729673SQ200380107133
公开日2006年2月1日 申请日期2003年12月5日 优先权日2002年12月20日
发明者F·A·C·梅斯, M·V·尼科洛瓦, M·沃克莱尔 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1