支持端口标识的移动ip注册的制作方法

文档序号:7581560阅读:167来源:国知局

专利名称::支持端口标识的移动ip注册的制作方法
技术领域
:本发明涉及移动IP网络技术。更具体地说,本发明涉及移动IP注册。
背景技术
:移动IP是这样的协议,其允许膝上型计算机和其他移动计算机单元(“移动节点”)在多个子网之间漫游,而同时维持因特网和/或WAN连通性。没有移动IP或者类似的协议,移动节点在从由一个子网服务的位置漫游到正由不同的子网服务的另一个位置时,就不能保持连接。这是因为每个IP地址都具有指定该节点所驻留的具体子网的字段。如果用户要携带正常附接到一个网络的计算机并漫游,使得该计算机通过不同的子网,则漫游的计算机就不能使用其基于本地的(homebase)IP地址。结果,跨国旅行的商人就不能携带他或她的计算机跨过地理上不同的网段或者无线节点,并同时维持因特网连通性。在便携式计算设备的时代里,这是不可接受的。为了解决这个问题,已开发并实现了移动IP协议。在网络工作组的RFC3220,“IPMobilitySupportforIPv4”(C.Perkins,Ed.,2002年1月)中描述了移动IP的实现。在1998年PrenticeHall出版的J.Solomon的课本“MobileIP,TheInternetUnplugged”中也描述了移动IP。这里为了一切目的,通过引用整体并入了这两个参考文献的内容。在图1中图示了移动IP过程和环境。移动IP环境100包括因特网(或者WAN)105,在其上移动节点110可以用本地代理115或者外地代理120经由媒介作用通信。一般来说,本地代理115和外地代理120都是执行由软件、硬件和/或固件实现的适当的移动IP功能的路由器或者其他网络连接设备。注意,整个网络的拓扑是随意的,并且诸如本地代理115之类的元件并不需要直接连接到因特网105。例如,本地代理115可以通过另一个路由器R1125被连接。而路由器R1125将一个或多个其他路由器R3130连接到因特网105。当移动节点110插入到其本地网段135中时,该移动节点通过它的指定的本地代理115连接到因特网105。当移动节点110漫游时,该移动节点可以可用的外地代理120连接到远程网段140,并且通过进行通信。远程网段140上的诸如PC145之类的其他节点也通过外地代理120与因特网105通信。可以假定,在地理上不同的位置处存在许多可用的外地代理,以允许利用移动IP协议的广泛分布的因特网连接。移动节点110可以通过形成移动IP协议一部分的各种代理恳求和代理广告来识别外地代理120。当移动节点110与远程网段140交互作用时,该移动节点形成注册请求,以使得本地代理115将移动节点110的当前位置与其本地位置绑定。然后,外地代理120将注册请求150中继至本地代理115。然后在注册过程期间,本地代理115和移动节点110可协商移动节点110附接到外地代理120的条件。例如,移动节点110可能请求5小时的注册生存期,但是本地代理115可能仅仅授予3小时的期间。当协商成功完成时,本地代理115更新内部的“移动性绑定表”,该表通过移动节点的转交地址(care-ofaddress)(例如,协同定位的转交地址或外地代理的IP地址)将移动节点110的当前位置链接到移动节点110的标识(例如,本地地址)。此外,如果移动节点110经由外地代理120注册,则外地代理120更新内部的“访问者表”(visitortable),该表指定移动节点地址、本地代理地址等。本地代理115的在移动节点的基于本地的IP地址与移动节点的当前转交地址之间的关联、以及该关联的剩余生存期称作绑定。如果移动节点110希望从其新位置向通信节点155发送消息,则移动节点110会根据标准的因特网协议,在因特网105上通过外地代理120向通信节点155转发分组化的输出消息160。但是,如果通信节点155希望向移动节点110发送消息165,(不管是对来自移动节点110的消息的答复,还是因为任何其他原因),通信节点155都把移动节点110的IP地址作为该消息的地址,好像移动节点110在本地网段135上一样。来自通信节点155的消息分组通过因特网105转发到路由器R2125,并且最终到达本地代理115。根据本地代理115的移动性绑定表,本地代理115识别出移动节点110不再附接到本地网段135。然后,本地代理115根据移动IP协议,封装来自通信节点155的分组(这些分组的地址都被设置为本地网段135上的移动节点110的地址),并且向移动节点110的适当的转交地址转发这些封装后的分组170。如果该转交地址是外地代理120的IP地址,则外地代理120剥离该封装,并且将消息转发到远程网段140上的移动节点110。由本地代理115实现的到外地代理120的分组转发机制常常称作“隧道传输”。当前,IP地址是要允许路由至连网的设备的具体接口。为了使得能够在多个设备之间通信,这些设备一般通过网络或者网络基础设施连接。接入内部网络中的通信一般限于输入了用户名和口令的用户。例如,用户一般登录到诸如公司网络之类的专用网络,以便阅读经由该专用网络发送给该用户(例如,Pascal@Cisco.com)的电子邮件。类似地,为了加入专用网络中的视频会议,用户必须首先登录到该专用网络。除了登录到专用网络中之外,用户一般必须发起所使用的应用。例如,为了使用诸如web信使服务的系统,用户必须经由服务器注册到目录。因此,为了发起这种对等应用,客户一般必须通过联系服务器来发起应用。也就是说,服务器执行的处理要求在对等方之间维持通信。由客户经由登录或者其他注册过程执行的发起是时间密集的,这需要用户努力,也需要向应用分配服务器的资源。因此,对等类型的应用一般要求中间系统或服务器建立这种连接。如上所述,用户执行的注册一般使用单个本地地址执行。一旦注册,用户就经由关联到那个具体本地地址的设备在该本地地址处接收所有的通信。遗憾的是,当用户希望使用另一个设备时,注册就不再有效,用户必须经由具有标识出那个设备的本地地址的设备重注册。此外,尽管不同的设备可能更适合于不同类型的流量(例如,语音,电子邮件),但是用户只可以经由单个转交地址和本地代理注册一次。结果,不能将流量区分地路由至由单个用户使用的不同的设备。考虑上述内容,如果不需要中间服务器就能够访问诸如对等应用之类的应用,则是有益的。此外,如果一旦完成注册,流量的路由方式就可以使得用户能够经由不同的设备进行通信,并且区分要被路由的流量的类型,则是有益的。
发明内容本发明提供了用于处理注册请求的方法和装置。根据本发明的一个方面,公开了使用“个人”IP地址向本地代理注册的方法和装置。首先,用户经由网络设备使用他或她的用户名登录来获得IP地址,该IP地址将被关联到用户名。然后,形成注册请求,其中该注册请求包括包括有所获得的个人IP地址的本地地址字段。该注册请求然后被发送到与用户名相关联的本地代理。发送到本地代理的注册请求包括标识用户名的NAI、转交地址和包括有所获得的IP地址的本地地址字段。一旦使用NAI验证用户之后,本地代理就更新其移动性绑定表来包括转交地址、NAI和所获得的IP地址。然后,本地代理向转交地址发送注册答复。一旦完成注册,所指定的地址为用户名的数据分组或服务器请求就可以由本地代理路由至所获得的IP地址。这样,就建立了对用户是私人的注册(而不是与具体的设备相关联),这使得能够在通信节点和移动节点之间进行对等通信。向某个用户发送的通信将由该用户接收,而不考虑用户注册所经由的网络设备。根据本发明的另一个方面,公开了用于经由网络设备的一组指定的端口将网络设备注册到本地代理的方法和装置。网络设备向本地代理发送包括本地地址字段的注册请求,其中本地地址字段包括有IP地址,且本地代理与该IP地址相关联。IP地址可以是已静态分配给网络设备的IP地址,或者是与用户(例如,用户名或NAI)相关联的个人IP地址。注册请求指示网络设备的一个或多个端口,其中经由这些端口将接收到所指定的地址为IP地址的数据分组或服务器请求。在一种实施方式中,在注册请求的端口扩展中指定端口。另外,注册请求还可以指示与注册相关联的优先级,该优先级也可以在注册请求的扩展中提供。本地代理利用IP地址和转交地址,以及在注册请求中指定的其他信息(例如,端口和/或优先级信息)来更新其移动性绑定表。然后,本地代理向网络设备发送注册答复。在注册请求不是由网络设备直接发送时(例如,经由配置的转交地址),一旦接收到注册答复,外地代理就用本地代理地址和IP地址、以及端口和/或优先级信息更新其访问者表。然后,注册答复被发送给网络设备。这样,可以根据指定的(一个或多个)端口建立针对单个设备或用户的多个注册。这些注册还可以被分配不同的优先级,以使得能够对各种应用和/或设备区分优先级。根据本发明的另一个方面,一旦完成在其中已指定端口和/或优先级信息的注册过程,本地代理就根据端口和优先级信息转发分组。分组可以是导向到作为服务器运行的网络设备的数据分组或服务器请求。通过具体注册中的一个或多个端口的指定,可以有差别地向不同的设备路由流量。这些设备可以与单个用户(例如,用户名)相关联,并由此与相同的IP地址相关联,或者可以与不同的IP地址相关联。此外,通过在具体的注册请求中使用优先级,优先级可以指示在各种设备(或者注册)之间的偏好。例如,多个注册之间的这种优先级可以指示对于不同类型的流量(例如,语音,电子邮件)该注册或设备是优先级更高的。作为一种示例,当预见到将要传输语音流量时,用户可以使用较高的优先级来经由蜂窝电话注册,并且使用较低的优先级来经由膝上型计算机注册。另外,优先级可以用于在已经作为移动节点被注册到具体的本地代理(或者本地代理池)的服务器之间的负载分配。根据本发明的另一个方面,当实现了外地代理时,外地代理更新其访问者表来使得能够将分组导向至正访问的移动节点。具体地说,当移动节点指定一组端口和/或优先级信息时,外地代理用这种信息,以及本地代理的身份更新其访问者表。通过在每个注册中的不同组端口的指定,可以使用相同的本地地址建立多个注册。结果,外地代理存储信息,以便区分这些不同的会话。另外,可以使用优先级信息,以便确定多个注册中的哪一个应当接收数据分组或服务器请求。本地代理也在其移动性绑定表中存储相似的信息。本发明的另一个方面属于计算机程序产品,该计算机程序产品包括机器可读介质,在机器可读介质中提供有用于全部或部分实现上述方法和技术的程序指令。任何本发明的方法都可以全部或者部分表现为可以在这种机器可读介质中提供的程序指令。另外,本发明属于如这里所述生成和/或使用的数据的各种组合和配置。例如,具有这里描述的格式,并且在合适的介质中提供的注册请求和答复分组是本发明的一部分。作为另一个示例,具有这里描述的格式的访问者表和移动性绑定表也是本发明的一部分。在下面本发明的详细描述中将结合附图更加详细地描述本发明的这些和其他特性。图1是移动IP环境的方框图。图2图示了可以在其中实现本发明的系统。图3A和图3B是图示了根据本发明各种实施方式处理注册请求的方法的控制流程图。图4是图示了如图3的方框304中所示从DNS服务器获得个人IP地址的方法的过程流程图。图5图示了根据本发明各种实施方式由DNS服务器用来将各个用户名映射到个人IP地址的表。图6图示了根据本发明各种实施方式而被发送的示例性注册请求。图7图示了根据本发明各种实施方式而被发送的示例性注册答复。图8图示了根据本发明各种实施方式由本地代理维护的示例性移动性绑定表。图9图示了根据本发明各种实施方式由外地代理维护的示例性访问者表。图10是图示了根据本发明各种实施方式,一旦完成注册之后,经由本地代理传输数据分组或服务器请求的方法的数据流程图。图11图示了可以在其中实现本发明各种实施方式的示例性网络设备。具体实施例方式在下面的描述中,阐述了许多具体细节,以充分理解本发明。但是,对于本领域的技术人员很清楚,没有这些具体细节中的某些或者全部也可以实施本发明。另外,没有对公知的过程进行详细地描述,以免不必要地模糊了本发明。尽管在图1中,移动节点图示为连接到外地代理,但是,移动节点也可以注册到本地代理306,而不访问外地代理。更具体地说,在因特网协议版本4(Ipv4)中,移动节点可以经由外地代理或者配置的转交地址注册。类似地,移动节点可以利用因特网协议版本6(Ipv6)中的分级移动IP(HMIP)移动性锚定点(MAP)来直接(不需要外地代理)或者间接注册,这在由Soliman等提交给IETF移动IP工作组的题为“HierarchicalMobileIPv6mobilitymanagement(HMIPv6)”的因特网草案(2002年10月公布)中作了阐述。因此,可以在这样的系统中实现本发明,在该系统中,本地代理和多个移动节点支持Ipv4或Ipv6。根据一种实施方式,本发明使得在给定的时刻能够将消息路由至个别选择使用的任何设备。这部分是通过使用个人IP地址实现的。图2图示了可以在其中实现本发明的系统。如图所示,DNS202可以用来在用户用他或她的用户名和口令登录时返回个人IP地址。然后,用户可以使用这个个人IP地址来完成他或她的移动IP注册。因此,通过使用分配给用户的个人IP地址,无论用户在何处登录,移动IP都可以向该用户路由分组。网络设备可以直接访问DNS服务器。或者,用户可以在注册请求中指示用户希望从本地代理或者其他实体接收本地地址分配。然后,本地代理可以分配个人本地地址,例如经由图2所示的DNS服务器。在Leung的题为“MobileIPDynamicHomeAddressResolution”的专利申请No.09/227,397中更加详细地描述了向移动节点动态分配本地地址的方法,这里为了一切目的,并入了该申请的内容。图3A是图示了根据本发明的各种实施方式处理注册请求的方法的控制流程图。具体地说,图3A描述了经由所配置的转交地址执行注册的方法。该方法可在Ipv4和Ipv6中执行。将在下面参考图3B更加详细地描述在Ipv4中经由外地代理执行注册的方法。如上所述,用户可以使用个人IP地址完成注册过程。为了获得这种个人IP地址,用户经由支持移动IP的网络设备登录到他或她的本地网络中。具体地说,如方框302所示,用户通过输入与该用户相关联的用户名登录到本地网络中。另外,一般也输入口令,以使得能够使用口令和用户名对该用户的身份进行核实(例如,验证)。在网络工作组的1999年1月的RFC2486(其通过引用被结合于此)中提出了一种用于标识用户的标准化方法,该方法提出了NAI的语法,其中NAI是客户在点到点协议(PPP)验证期间提交的用户ID。例如,移动节点可以配置有诸如mnl@cisco.com之类的NAI。因此,当基于NAI验证客户时,可以分配IP地址(例如,本地地址)以由客户使用。一旦网络设备已验证了用户,在方框304中,该网络设备就获得与该用户相关联的个人IP地址。具体地说,根据一种实施方式,网络设备从DNS服务器获得与用户名相关联的IP地址,将在下面参考图4对其进行更加详细地描述。然后,在方框306中,形成注册请求。具体地说,注册请求包括本地地址字段,该字段包括有所获得的IP地址。另外,注册请求还包括转交地址字段,该字段包括有转交地址。根据各种实施方式,转交地址是与网络设备相关联的IP地址(例如,分配给网络设备的接口的)。另外,注册请求优选地包括有注册请求的NAI扩展,该扩展包括有NAI(例如,当在IPv4中执行注册时)。通过向本地代理提供NAI,该本地代理可以将NAI映射到其动态分配的个人IP地址,这使得本地代理能够正确地向适当的IP地址转发所指定的地址为用户名的数据分组或服务器请求。如上参考方框302-306所述,用户可以使用个人IP地址注册到他或她的本地代理。或者,用户可以使用已被静态分配给正使用的设备的接口的IP地址来发起注册过程。网络设备可以用于任何应用,包括IP通信之上的文本和语音。因此,一旦完成注册过程,网络设备就可以发送并接收IP数据分组。此外,网络设备可以用作处理服务器请求的网络服务器。另外,担当服务器的网络设备可以充当作为移动节点注册到本地代理的服务器集群的成员。一旦移动节点已经注册到本地代理,则可以将服务器请求分派给任何移动节点,从而使得服务器请求能够被转发到能满足该请求的服务器。在由Thubert等于2002年10月3日提交的题为“MobileDirector”的美国专利申请(代理人案卷号No.CISCP316)中更加详细地描述了这种系统,这里为了一切目的,通过引用并入该专利申请的内容。诸如服务器之类的网络设备可以专用于诸如HTTP或SSL(安全套接字层)之类的特定应用。当服务器接收诸如Web通信之类的通信时,一般用特定的端口(例如,端口80)标识那些应用。类似地,当用户使用网络设备来漫游,而不是用作服务器时,用户可能希望指定特定的(一个或多个)端口,以在具体的会话期间由特定的(一个或多个)应用使用。因此,如方框308所示,用户可能希望在注册请求中指定一个或多个端口。具体地说,注册请求指定网络设备的一个或多个端口,经由这些端口,将接收到以用户名为地址的数据分组或服务器请求。当然,可以提供这样的默认端口选择模式,在该模式中,如果用户没有选择端口,则指定所有的端口(或者选择特定的(一个或多个)端口)。根据一种实施方式,将在其中指定或者指出所选择的(一个或多个)端口的端口号扩展附加到注册请求。用户也可能希望对不同的注册区分优先级次序。具体地说,可能更希望以特定的设备使用各种应用。例如,可能希望向膝上型计算机发送web通信并经由蜂窝电话发送IP传输上的语音。作为另一个示例,可能也希望注册以经由膝上型计算机接收语音通信,但是对这些注册区分优先级次序,以使得只在蜂窝电话无响应时才向膝上型计算机发送语音通信。因此,如方框310所示,注册请求也可以指示优先级。例如,优先级可以与网络设备的一个或多个指定的端口相关联,利用所指示的优先级,地址为用户名的数据分组或服务器请求可以在在网络设备的一个或多个端口处被发送到所获得的IP地址(例如,个人IP地址或静态分配的IP地址)。可以在注册请求的附加优先级扩展中指定优先级。然后,在方框312中,注册请求被发送到与用户相关联的本地代理。在下面将参考图6更详细地描述示例性的注册请求。如上所述,取决于实现了Ipv4还是Ipv6,可以直接发送注册请求,或者经由配置的转交地址、或者经由外地代理发送注册请求。将在下面参考图3B更加详细地描述经由外地代理注册的方法。在方框314中,当本地代理接收到注册请求时,该本地代理验证移动节点,并且更新其移动性绑定表。具体地说,当移动节点使用动态分配的个人IP地址时,本地代理使用NAI验证移动节点。当然,当在注册请求中提供了本地地址(例如,个人IP地址),并且消息标记有IPSec(因特网协议安全性)时,不需要在注册请求中提供NAI。将在下面参考图8详细描述示例性的移动性绑定表。然后,在方框316中,本地代理发送注册答复。如方框320所示,网络设备直接接收注册答复,或者经由外地代理接收注册答复。一旦经由一个或多个端口注册,用户可能希望经由相同或者不同的网络设备发送随后的注册请求。各种注册请求可以指定不同的端口,以及不同的优先级。这样,用户可以对不同的应用区分优先级次序,以与不同的设备一起使用。图3B是图示了在Ipv4中经由外地代理执行注册的方法的过程流程图。在方框322中,用户用用户名和口令登录,如上所述。然后,在方框324中,形成注册请求并且将其发送到外地代理。例如,可以经由从外地代理接收到的代理广告定位该外地代理。注册请求优选地包括包括有NAI的NAI扩展,以及具有值为0的本地地址字段,该值指示本地地址分配的请求。在方框326中,经由外地代理向本地代理发送这个初始注册请求。也可以与NAI一起添加额外的扩展,来指示请求个人IP地址分配。在方框328中,一旦接收到注册请求,本地代理就获得与NAI相关联的个人IP地址(例如,经由DNS服务器)。然后,在方框330中,本地代理发送包括有所获得的个人IP地址的注册答复。注册答复可以指示移动节点要用所获得的IP地址重新注册。在方框332中,外地代理接收并向移动节点转发包括有所获得的个人IP地址的注册答复。在随后的注册请求中,在方框334中,移动节点形成包括有所获得的本地地址(例如,个人IP地址)和转交地址(例如,外地代理地址)的注册请求。如上面参考图3A所述,在方框336和338中,可以附加可选的端口号扩展和可选的优先级扩展。然后,在方框340中,向本地代理(例如,经由外地代理)发送注册请求。在方框342中,本地代理接收该注册请求,并且更新其移动性绑定表。在方框344中,本地代理形成并发送注册答复。在方框346中,外地代理接收该注册答复,并且更新其访问者表。将在下面参考图9更详细地描述示例性的访问者表。在方框348中,网络设备接收注册答复。在上面参考图3B所述实施方式中,经由本地代理获得个人IP地址。然而,重要的是,要注意到也可以经由静态获得的IP地址执行注册。因此,当经由个人IP地址执行注册时,只需要执行步骤322至332。然后,如上面参考方框334至348所述的执行该过程。图4是图示了如图3的方框304所示从DNS服务器获得个人IP地址的方法的过程流程图。如方框402所示,向DNS服务器发送包括有用户名的DNS请求。在方框404中,DNS服务器通过获得用户名和个人IP地址之间的映射,转变用户名。然后,在方框406中,DNS服务器发送包括有个人IP地址的DNS响应。图5图示了如上参考图4所述,根据本发明的各种实施方式,由DNS服务器用来将各个用户名映射到个人IP地址的表。具体地说,当DNS服务器接收到DNS请求时,该DNS服务器就利用映射表502来解析用户名。DNS服务器获得用户名504和个人IP地址506之间的映射。然后,如上所述,DNS服务器在DNS响应中提供个人IP地址。图6图示了根据本发明各种实施方式发送的示例性注册请求。注册请求602包括包括有本地地址(例如,个人IP地址或静态分配的IP地址)的本地地址字段604。另外,注册请求602也包括指定转交地址的转交地址字段606,该字段可以指定外地代理和所配置的转交地址,或者接口地址。当要由本地代理动态分配地址时,NAI可以在注册请求中被传输。因此,可以将包括有NAI的NAI扩展608附加到注册请求602,来使得本地代理能够向移动节点分配本地地址。如上参考图3所述,注册请求可以传输端口信息和优先级信息。因此,注册请求602可以可选地包括端口号扩展610,该扩展指示网络设备的一个或多个端口,经由这些端口接收所指定的地址为本地地址(或者关联的用户名)的数据分组或服务器请求。类似地,注册请求602可以可选地包括优先级扩展612,该扩展指示注册的优先级,因此该优先级可用来对与网络设备的一个或多个端口相关联的注册区分优先级次序。图7图示了根据本发明各种实施方式发送的示例性注册答复。注册答复指示用户向本地代理的注册的成功或失败。当注册答复指示IP地址向本地代理的注册成功时,用户可以随后接收所指定的地址为该IP地址(例如,用户名)的分组。如图所示,注册答复702包括包括有本地地址(例如,个人IP地址或静态分配的IP地址)的本地地址字段704。另外,注册答复702包括指定转交地址的转交地址字段706,该字段可以指定外地代理和所配置的转交地址。当要由本地代理动态分配地址时,可以在注册答复中传输NAI。另外,注册答复可以包括优先级和端口信息。因此,注册答复702可以可选地包括端口号扩展710,该扩展指示网络设备的一个或多个端口,经由这些端口可利用IP地址接收所指定的地址为用户名的数据分组或服务器请求。类似地,注册请求702可以可选地包括优先级扩展712,该扩展指示注册的优先级,因此可以将该优先级用来对与网络设备的一个或多个端口相关联的注册区分优先级次序。因此,注册答复可用来对在注册答复中所请求的注册的细节(例如,端口和优先级设置)进行确认。如上参考方框314所述,本地代理用那个注册的信息更新其移动性绑定表。图8图示了根据本发明各种实施方式由本地代理维护的示例性移动性绑定表。具体地说,移动性绑定表800包括与本地地址802相关联的多个条目801。此外,每个条目包括用于已经动态分配的那些本地地址的可选的NAI806和转交地址804。具体地说,NAI806存储来以便维护NAI和租借的本地地址之间的映射。另外,每个条目都可以指示由网络设备的一个或多个端口808组成的不同的组,以及从注册请求分组所获得的优先级810。如图所示,移动性绑定表的每个条目标识隧道812,经由隧道812向IP地址发送分组(例如,数据分组或服务器请求)。重要的是应当注意到,因为可以结合每个注册来指定不同组端口,所以相同的IP地址可用于多个注册。结果,对于给定的IP地址,可能存在多于一个隧道,因此对于给定的IP地址,在移动性绑定表中存在多于一个条目。图9图示了根据本发明各种实施方式由外地代理维护的示例性访问者表。具体地说,访问者表900包括与本地地址902相关联的多个条目901。此外,每个条目包括用于已动态分配的那些本地地址的可选的NAI906和本地代理地址904,这使得由其NAI所标识的移动节点能够接收动态分配的本地地址。另外,每个条目都可以指示由网络设备的一个或多个端口908组成的不同的组,以及从注册请求分组获得的优先级910。如图所示,移动性绑定表的每个条目标识隧道912,经由隧道912向IP地址发送分组。重要的是要注意到,因为可以结合具体的注册指定一组端口,所以对于给定的IP地址,可能存在多于一个隧道,因此对于给定的IP地址,在移动性绑定表中可能存在多于一个条目。当然,如果本地代理在其移动性绑定表中存储了优先级信息,则访问者表就不需要存储优先级信息,因为本地代理在向外地代理转发通信之前,将优选地对这些通信区分优先级次序。图10是图示了根据本发明各种实施方式在注册完成之后经由本地代理传输数据分组或服务器请求的方法的数据流程图。如方框1002所示,通信节点向用户名发送数据分组或服务器请求,在方框1004中由本地代理接收到该数据分组或服务器请求。然后,在方框1006中,本地代理在移动性绑定表中执行NAI的查找,以从移动性绑定表确定与用户名相关联的IP地址,以及关联的转交地址。从而,当用户向用户名发送数据分组时,本地代理可以经由移动性绑定表中NAI到本地地址的映射,确定本地地址。另外,还可以与隧道信息一起,从移动性绑定表标识出指定的端口和优先级信息。然后,在方框1008中,根据端口和优先级信息,本地代理经由该隧道向在转交地址处的IP地址发送数据分组。具体地说,该优先级使得所指定的地址为该IP地址(例如,用户名)的数据分组或服务器请求以这样的优先级被发送到网络设备的一个或多个端口。根据本发明的各种实施方式,对于重叠或者不重叠的不同的端口组,可以执行具体IP地址的多个注册。从而,当使用具体IP地址的两个或更多不同注册来指定不同的端口组时,优先级可以用来区分哪一个注册优先于其他注册。这样,不同的设备(例如,膝上型计算机、蜂窝电话、寻呼机)可以经由不同的端口注册。通过这些注册,可以用端口标示来指示该(一个或多个)设备支持不同应用(例如,HTTP、SSL、语音)(例如,端口80用于HTTP端口)。还可以通过使用不同的优先级来进一步区分多个注册。此外,当具有不同优先级的多个服务器已注册到本地代理时,可以根据各自的优先级执行这多个服务器之间的负载均衡。通常,可以在软件和/或硬件中实现本发明的技术。例如,可以在操作系统内核中、在分离的用户进程中、在绑定到网络应用的库程序包中、在特殊构建的机器上、或者在网络接口卡上实现本发明的技术。在本发明的一种特定的实施方式中,在诸如操作系统之类的软件中,或者在运行在操作系统之上的应用中实现本发明的技术。可以在由存储在存储器中的计算机程序有选择地激活或者重配置的通用可编程机器中实现本发明技术的软件实现或者软件/硬件混和实现。这种可编程机器可以是设计来处理网络流量的网络设备,例如,路由器或交换机。这种网络设备可以具有多个网络接口,例如包括帧中继和ISDN接口。这种网络设备的特定的示例包括路由器和交换机。例如,本发明的本地代理和外地代理可以实现在专门配置的路由器、交换机或者服务器中,例如,可从SanJose,Califrnia的思科系统公司获得的型号为2600、3200、3600、4500、7200和7500的路由器。从下面给出的描述将清楚这些机器中的某些的通用体系结构。在可替换实施方式中,本发明的技术可以实现在通用网络主机中,例如,个人计算机或工作站。此外,本发明还可以至少部分实现在用于网络设备或通用计算设备的卡(例如,接口卡)上。现在参考图11,适于实现本发明的技术的网络设备1500包括主中央处理单元(CPU)1505、接口1510、存储器1515和总线1520。当在适当软件或固件的控制下动作时,CPU1505可以负责实现与期望的网络设备的功能相关联的特定的功能。例如,当配置为中间路由器时,CPU1505可以负责分析分组、封装分组、并且转发分组,以传输到机顶盒(set-topbox)。CPU1505优选地在包括操作系统(例如,视窗NT)和任何适当的应用软件在内的软件的控制下实现所有这些功能。CPU1505可以包括一个或多个处理器,例如来自Motorola微处理器系列或者MIPS微处理器系列的处理器。在可替换实施方式中,处理器是用于控制网络设备1500的运行的特殊设计的硬件。接口1510一般为接口卡(某些时候称作“线卡”)。通常,它们控制网络上数据分组的发送和接收,并且有些时候支持与网络设备1500一起使用的其他外设。可提供的接口有以太网接口、帧中继接口、线缆接口、DSL接口、令牌环接口等。另外,可以提供各种甚高速接口,例如快速以太网接口、G比特以太网接口、ATM接口、HSSI接口、POS接口、FDDI接口、ASI接口、DHEI接口等。通常,这些接口可以包括适于与合适的介质通信的端口。在某些情形中,它们也可以包括独立的处理器和(在某些情形中)易失性RAM。这些独立的处理器可以控制诸如分组交换、介质控制和管理这一类的通信密集任务。通过向通信密集任务提供分离的处理器,这些接口允许CPU1505有效地执行路由计算、网络诊断、安全功能等。尽管图11所示的系统图示了本发明的一种特定的网络设备,但是它并不是可以在其上实现本发明的唯一的网络设备体系结构。例如,常常使用具有处理通信和路由计算等的单个处理器的体系结构。此外,也可以与网络设备一起使用其他类型的接口和介质。不管网络设备的配置如何,该网络设备都可以采用一个或多个存储器或存储器模块(例如,存储器1515),这些存储器或存储器模块配置来存储数据、用于通用网络操作的程序指令和/或涉及在这里描述的技术的功能的其他信息。例如,程序指令可以控制操作系统和/或一个或多个应用的运行。因为这种信息和程序指令可以用来实现这里所述的系统/方法,所以本发明涉及包括有用于执行这里所述的各种操作的程序指令、状态信息等的机器可读介质。机器可读介质的示例包括但不限于诸如硬盘、软盘和磁带之类的磁介质;诸如CD-ROM光盘之类的光介质;诸如可光读的盘(flopticaldisk)之类的磁光介质;和专门配置来存储并执行程序指令的硬件设备,例如,只读存储器设备(ROM)和随机访问存储器(RAM)。本发明也可以实施在在合适的介质上传播的载波中,所述介质如无线电波、光线、电线等。程序指令的示例既包括诸如由编译器生成的机器码,又包括包含有高级代码的文件,其中高级代码可由计算机使用解释器执行。尽管在这里已经图示并描述了本发明的说明性实施例和应用,但是可以作出许多仍在本发明的概念、范围和精神之内的变化和修改,并且在研读本申请之后,对于本领域的技术人员,这些变化将变的更清楚。例如,尽管在撰写本文件时,将本发明描述为配置来有效地遵从移动IP标准。但是,应当理解,本发明并不受限于这种实现。因此,应当将这些实施方式考虑为示例性地,而不是限制性地,并且本发明不受限于这里给出的细节,而是可以在所附权利要求的范围和等同物之内做出修改。权利要求1.一种在支持移动IP的网络设备中,注册到本地代理的方法,包括形成具有本地地址字段的注册请求,其中所述本地地址字段包括有IP地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;向与所述IP地址相关联的本地代理发送所述注册请求;和接收来自所述本地代理的注册答复。2.如权利要求1所述的方法,其中,所述注册答复标识所述网络设备的所述一个或多个端口。3.如权利要求2所述的方法,其中,所述注册答复包括标识所述网络设备的所述一个或多个端口的端口号扩展。4.如权利要求1所述的方法,其中,所述IP地址与所述网络设备相关联。5.如权利要求1所述的方法,还包括附加指示所述网络设备的所述一个或多个端口的端口号扩展,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求。6.如权利要求1所述的方法,其中,所述注册请求还包括与所述网络设备的所述一个或多个端口相关联的优先级,其中所指定的地址为所述IP地址的数据分组或服务器请求以所述优先级被发送到所述网络设备的所述一个或多个端口。7.如权利要求6所述的方法,还包括将指示所述优先级的优先级扩展附加到所述注册请求。8.如权利要求6所述的方法,其中,所述注册答复包括所述优先级。9.如权利要求8所述的方法,其中,所述注册答复包括包括有所述优先级的优先级扩展。10.如权利要求1所述的方法,其中,所述网络设备是专门用来执行由所述一个或多个端口标识出的应用的服务器。11.如权利要求1所述的方法,其中,所述注册请求还包括优先级,数据分组或服务器请求将经由所述优先级被发送到所述IP地址。12.如权利要求11所述的方法,还包括附加指示所述优先级的优先级扩展。13.一种在本地代理中处理注册请求的方法,包括接收来自网络设备的注册请求,所述注册请求包括标识IP地址的本地地址字段和转交地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;更新移动性绑定表来包括所述IP地址的条目,所述条目标识所述网络设备的所述一个或多个端口,所述IP地址和所述转交地址;和向所述网络设备发送注册答复。14.如权利要求13所述的方法,其中,所述移动性绑定表的所述条目标识隧道,经由所述隧道向所述IP地址发送分组。15.如权利要求13所述的方法,其中,所述IP地址与所述网络设备的接口相关联。16.如权利要求13所述的方法,其中,所述移动性绑定表包括多个与所述IP地址相关联的条目,每个所述条目都标识由一个或多个端口组成的不同的组。17.如权利要求13所述的方法,所述方法还包括对于标识所述网络设备的第二个一个或多个端口的组的注册请求,重复所述接收、更新和发送步骤。18.如权利要求13所述的方法,所述注册请求包括优先级,其中数据分组或服务器请求以所述优先级被发送到所述一个或多个端口。19.如权利要求18所述的方法,所述注册请求包括指示所述优先级的优先级扩展。20.如权利要求18所述的方法,其中,所述注册答复包括所述优先级。21.如权利要求20所述的方法,其中,所述注册答复包括指示所述优先级的优先级扩展。22.如权利要求18所述的方法,还包括在所述移动性绑定表的所述条目中存储所述优先级。23.如权利要求22所述的方法,还包括接收所指定的地址为所述IP地址的数据分组或服务器请求;根据所述移动性绑定表确定与所述IP地址相关联的所述优先级;和根据所述优先级,向在所述网络设备的所述一个或多个端口处的所述IP地址转发所述数据分组或服务器请求。24.如权利要求13所述的方法,所述注册请求具有标识所述一个或多个端口的端口扩展。25.一种在外地代理中处理注册请求的方法,包括接收来自网络设备的注册请求,所述注册请求包括标识IP地址的本地地址字段,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;向标识出与所述IP地址相关联的本地代理的本地代理地址转发所述注册请求;接收来自所述本地代理的注册答复;更新访问者表来包括所述IP地址的条目,所述条目标识所述网络设备的所述一个或多个端口、所述IP地址和所述本地代理地址;和向所述网络设备转发所述注册答复。26.如权利要求25所述的方法,其中,所述访问者表的所述条目标识隧道,经由所述隧道向所述IP地址发送分组。27.如权利要求25所述的方法,其中,所述IP地址与所述网络设备的接口相关联。28.如权利要求25所述的方法,其中,所述访问者表包括多个与所述IP地址相关联的条目,每个所述条目都标识由一个或多个端口组成的不同的组。29.如权利要求25所述的方法,所述注册请求包括优先级,所述优先级指示向所述一个或多个端口发送数据分组或服务器请求时使用的优先级。30.如权利要求29所述的方法,所述注册请求包括指示所述优先级的优先级扩展。31.如权利要求29所述的方法,其中,所述注册答复包括所述优先级。32.如权利要求31所述的方法,其中,所述注册答复包括指示所述优先级的优先级扩展。33.如权利要求29所述的方法,还包括在所述访问者表的所述条目中存储所述优先级。34.如权利要求25所述的方法,所述注册请求具有标识所述一个或多个端口的端口扩展。35.一种在其上存储有计算机可读指令的计算机可读介质,其中所述计算机可读指令用于使支持移动IP的网络设备注册到本地代理,所述计算机可读指令包括用于形成具有本地地址字段的注册请求的指令,其中所述本地地址字段包括有IP地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;用于向与所述IP地址相关联的本地代理发送所述注册请求的指令;和用于接收来自所述本地代理的注册答复的指令。36.一种支持移动IP,并且适于注册到本地代理的网络设备,包括处理器;和存储器,至少所述处理器和所述存储器之一适于形成具有本地地址字段的注册请求,其中所述本地地址字段包括有IP地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;向与所述IP地址相关联的本地代理发送所述注册请求;和接收来自所述本地代理的注册答复。37.一种支持移动IP,并且适于注册到本地代理的网络设备,包括用于形成具有本地地址字段的注册请求的装置,其中所述本地地址字段包括有IP地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;用于向与所述IP地址相关联的本地代理发送所述注册请求的装置;和用于接收来自所述本地代理的注册答复的装置。38.一种在其上存储有计算机可读指令的计算机可读介质,其中所述计算机可读指令用于在本地代理中处理注册请求,所述计算机可读指令包括用于接收来自网络设备的注册请求的指令,所述注册请求包括标识IP地址的本地地址字段和转交地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;用于更新移动性绑定表来包括所述IP地址的条目的指令,所述条目标识所述网络设备的所述一个或多个端口、所述IP地址和所述转交地址;和用于向所述网络设备发送注册答复的指令。39.一种适于处理注册请求的本地代理,包括处理器;和存储器,至少所述处理器和所述存储器之一适于接收来自网络设备的注册请求,所述注册请求包括标识IP地址的本地地址字段和转交地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;更新移动性绑定表来包括所述IP地址的条目,所述条目标识所述网络设备的所述一个或多个端口、所述IP地址和所述转交地址;和向所述网络设备发送注册答复。40.一种适于处理注册请求的本地代理,包括用于接收来自网络设备的注册请求的装置,所述注册请求包括标识IP地址的本地地址字段和转交地址,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;用于更新移动性绑定表来包括所述IP地址的条目的装置,所述条目标识所述网络设备的所述一个或多个端口、所述IP地址和所述转交地址;和用于向所述网络设备发送注册答复的装置。41.一种在其上存储有计算机可读指令的计算机可读介质,其中所述计算机可读指令用于在外地代理中处理注册请求,所述计算机可读指令包括用于接收来自网络设备的注册请求的指令,所述注册请求包括标识IP地址的本地地址字段,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;用于向标识出与所述IP地址相关联的本地代理的本地代理地址转发所述注册请求的指令;用于接收来自所述本地代理的注册答复的指令;用于更新访问者表来包括所述IP地址的条目的指令,所述条目标识所述网络设备的所述一个或多个端口、所述IP地址和所述本地代理地址;和用于向所述网络设备转发所述注册答复的指令。42.一种适于处理注册请求的外地代理,包括处理器;和存储器,至少所述处理器和所述存储器之一适于接收来自网络设备的注册请求,所述注册请求包括标识IP地址的本地地址字段,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;向标识出与所述IP地址相关联的本地代理的本地代理地址转发所述注册请求;接收来自所述本地代理的注册答复;更新访问者表来包括所述IP地址的条目,所述条目标识所述网络设备的所述一个或多个端口、所述IP地址和所述本地代理地址;和向所述网络设备转发所述注册答复。43.一种适于处理注册请求的外地代理,包括用于接收来自网络设备的注册请求的装置,所述注册请求包括标识IP地址的本地地址字段,所述注册请求指示所述网络设备的一个或多个端口,其中经由所述一个或多个端口将接收到所指定的地址为所述IP地址的数据分组或服务器请求;用于向标识出与所述IP地址相关联的本地代理的本地代理地址转发所述注册请求的装置;用于接收来自所述本地代理的注册答复的装置;用于更新访问者表来包括所述IP地址的条目的装置,所述条目标识所述网络设备的所述一个或多个端口、所述IP地址和所述本地代理地址;和用于向所述网络设备转发所述注册答复的装置。全文摘要本发明公开了用于注册到本地代理的方法和装置。网络设备向本地代理发送具有本地地址字段的注册请求,其中本地地址字段包括有IP地址,且本地代理与该IP地址相关联。注册请求指示网络设备的一个或多个端口,其中经由这些端口将接收到所指定的地址为该IP地址的数据分组或服务器请求。可以在注册请求的端口扩展中指定端口。另外,注册请求还可以指示与注册相关联的优先级。本地代理利用IP地址和转交地址,以及在注册请求中指定的其他信息(例如,端口和/或优先级信息)来更新其移动性绑定表。然后,本地代理向网络设备发送注册答复。在注册请求不是由网络设备直接发送时(例如,经由配置的转交地址),一旦接收到注册答复,外地代理就利用本地代理地址和IP地址、以及端口和/或优先级信息更新其访问者表。然后,注册答复被发送给网络设备。这样,可以根据指定的(一个或多个)端口建立针对单个设备或用户的多个注册,从而使得能够对各种应用和/或设备区分优先级。文档编号H04L29/06GK1714558SQ200380103822公开日2005年12月28日申请日期2003年11月10日优先权日2002年11月20日发明者帕斯卡尔·蒂贝尔,埃里克·莱维·阿贝格诺里申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1