利用IPv6移动路由器穿过IPv4网络的布置的制作方法

文档序号:7605196阅读:293来源:国知局
专利名称:利用IPv6移动路由器穿过IPv4网络的布置的制作方法
技术领域
本发明涉及利用因特网协议版本6(IPv6)节点经由具有网络地址转换器(NAT)或端口地址转换器(PAT)的IPv4网络传输IPv6分组。
背景技术
因特网工程任务组(IETF)的下一代转变(NGTRANS)工作组正在作出提议来使得网络节点能够将根据IPv6协议(由请求注解(RFC)2460规定的)生成的IP分组传输过IPv4网络。具体地说,RFC 3056提出了过渡解决方案(这里称作“6到4提议”)用于将IPv6分组作为IPv4分组的有效负载发送,其中,过渡的唯一IPv6地址前缀被分配给至少具有一个全球唯一IPv4地址的任何节点。这些RFC可以在网址为http//www.ietf.org的万维网上的IETF网站处获得。
“6到4”建议规定一个IPv6节点具有包含所分配的IPv4地址的IPv6地址,这导致IPv6和IPv4地址之间的自动映射。因此,IPv6节点可以基于从其IPv6地址中抽取已分配的IPv4地址,来轻易地用IPv4头部封装IPv6分组。
考虑IPv6节点被耦合到具有网络地址转换器(NAT)的专用IPv4网络。NAT执行第3层IP地址转换,以使公共因特网地址映射到专用IP地址,如请求注解1918(RFC 1918)所详述的。这种映射已允许企业将大量的专用地址映射到有限数量的公共地址,从而限制了因特网用户所要求的公共地址的数量。
然而,如RFC 3056所述,如果IPv6节点被耦合到具有NAT的IPv4网络,则该NAT盒子(box)“必须也包含完整的IPv6路由器的功能,包括6到4机制在内”,以便“6到4”建议在具有NAT的IPv4网络中仍旧可以工作。然而,对现有NAT进行修改来包括IPv6路由器,并且包括“6到4”机制可能是不实际的解决方案。
此外,“6到4”协议的IPv4地址被假定为全球公共地址。因此,如果IPv6节点(即,对端节点)要与正在漫游的移动IPv6节点通信,则正在漫游的IPv6节点的“6到4”地址必须是全球公共地址,而不是专用地址。
IPv6节点使用自动隧道来穿过NAT的一种建议在下文中作了描述Huitema于2002年9月17日提交的题为“TeredoTunneling IPv6 over UDPthrough NATs”的IETF草案,该草案可在网址http//www.ietf.org/internet-drafts/draft-ietf-ngtrans-shipworm-08.txt处获得。
Huitema建议位于NAT背后的IPv6节点可以访问“Teredo服务器”和“Teredo中继”来获知它们的“全球地址”,并且获得连通性,其中,客户端、服务器和中继可以被组织在“Teredo网络”中。Huitema依赖于客户端(即,IPv6节点)与Teredo服务器和Teredo中继之间的复杂的基于客户端服务器的交互,其中,客户端位于专用IPv4地址域(adressrealm)中,在NAT背后,而Teredo服务器和Teredo中继在公共IPv4地址域中,在NAT的相对侧。因此,在NAT的专用侧的IPv6节点与在该NAT的公共侧的Teredo服务器和Teredo中继之间的通信要求IPv6节点具有到公共侧的Teredo服务器和Teredo中继网关的特定路径;因此,该IPv6节点需要使用相同的IPv4标识符(例如,由NAT转换的UDP端口IP地址)。
然而,用于与Teredo服务器和Teredo中继通信的这同一个IPv4标识符不可能利用对称NAT(Symmetric NAT),这是因为Teredo服务器和Teredo中继每个都具有截然不同的对应IPv4公共地址。具体地说,对称NAT不仅利用由专用IPv4节点输出的分组的专用IPv4地址/专用UDP端口/公共IP地址/公共UDP端口来索引它们的地址转换表,而且还利用由去向公共IPv4网络的分组所指定的目的地IP地址和目的地端口来索引它们的地址转换表。因此,由于Teredo服务器和Teredo中继都具有截然不同的IP地址,所以对称NAT将不把这些分组映射到由专用IPv4节点使用的同一专用IP地址/专用UDP端口。因此,Huitema解决方案不能穿过对称NAT。

发明内容
现在,需要一种布置,使得IPv6节点能够透明地跨过IPv4网络进行通信,而不管IPv6节点是否由对称NAT与IPv4网络相分离。
还需要一种布置,使得IPv6节点能将IPv6分组传输过IPv4网络,而无需每个IPv6节点都充当IPv4端点来存储状态信息。
还需要另一种布置,使得能够以最小化对NAT资源的使用的方式来利用IPv6网关建立穿过NAT的IPv4隧道。
这些和其他需求可以利用本发明获得,其中,源IPv6移动路由器配置为使用合成的标签地址(其指定转发协议)和反向路由头部(reverserouting header),建立到目的地IPv6移动路由器的IPv4隧道,其中,反向路由头部使该目的地IPv6移动路由器能够恢复用于经由IPv4网络到达源IPv6移动路由器的路由信息。因此,目的地IPv6移动路由器在将回复发送回源IPv6移动路由器时可能需要的所有IPv4路由信息被维护在在回复中指定的路由头部中。因此,可以经由IPv4网络传输IPv6分组,而不管该IPv4网络是否包括分离源和目的地IPv6移动路由器的NAT。
本发明的一个方面提供了一种IPv6移动路由器中的方法。该方法包括生成IPv6标签地址,所述IPv6标签地址包括规定的协议标识符和公共IPv4网关地址,规定的协议标识符用于配置为在IPv4网络和IPv6网络之间传输分组的IPv6网关,而公共IPv4网关地址用于IPv6网关。该方法还包括生成下述IPv6分组,所述IPv6分组具有指定IPv6标签地址的源地址字段和指定归属地址的反向路由头部。该方法还包括将IPv6分组封装到具有IPv4头部的IPv4分组中,IPv4头部包括指定公共网关IPv4地址的目的地地址字段和指定移动路由器IPv4地址的源地址字段,移动路由器IPv4地址由IPv6移动路由器用来经由IPv4网络访问IPv6网关。IPv4分组经由IPv4网络被输出到IPv6网关,以将IPv6分组传输到IPv6网络上。
本发明的另一个方面提供了一种IPv6移动路由器中的方法。该方法包括使用公共IPv4网关地址附接到公共IPv4网络,并且使用IPv6地址附接到IPv6网络,然后,接收来自公共IPv4网络的IPv4分组,所述IPv4分组具有指定公共IPv4网关地址的目的地地址字段;指定规定的公共网关端口的目的地端口字段;指定公共IPv4地址的源地址字段;以及指定公共端口的源端口字段。该方法还包括响应于检测出目的地端口字段中的规定的公共网关端口,从IPv4分组恢复IPv6分组。该方法还包括响应于检测出用于IPv6网关的规定的协议标识符,将检测出的IPv6分组的源地址字段中的IPv6标签地址修改为修改后的IPv6标签地址,以将IPv6分组从IPv4网络传输到IPv6网络,该修改包括用第二协议标识符替换规定的协议标识符,并且插入公共IPv4地址和公共端口。该方法还包括通过将修改后的IPv6标签地址插入到所检测出的IPv6分组的反向路由头部中,并且将移动路由器的转交地址插入到源地址字段中,从而将IPv6分组更新为更新后的IPv6分组,然后,将更新后的IPv6分组输出到IPv6网络上。
本发明的其他优点和新颖性特征部分将在下面的描述中阐述,部分将在研究下面的描述后对本领域的技术人员变清楚,或者可以通过实施本发明而获知。本发明的优点可以利用在所附权利要求中具体指出的手段和组合来实现并获得。


参考附图,其中在所有附图中具有相同标号的元素表示相似或相同的元素,其中图1示出了根据本发明实施方式的利用网络地址转换器(NAT)建立穿过IPv4网络的IPv4隧道的IPv6移动路由器。
图2示出了根据本发明实施方式的图1的移动路由器的进一步细节。
图3A和3B分别示出了由充当图1的IPv4隧道端点的IPv6源和目的地移动路由器生成的IPv6标签地址。
图4示出了经历利用NAT/PAT的地址转换的IPv4分组,其中该分组是由图1的源移动路由器输出的,并且承载了IPv6分组。
图5示出了根据本发明实施方式的由IPv4隧道端点执行的反向路由头部操作。
图6示出由图1的目的地移动路由器接收到的来自源移动路由器的归属代理的第2类路由头部。
图7A和图7B是概括根据本发明实施方式的用于使IPv6分组隧穿过IPv4网络的方法的流程图。
具体实施例方式
所公开的实施方式集中于基于使用基于IPv6的反向路由头部来用隧道将IPv6分组穿过IPv4网络。生成和使用反向路由头部被发明者于2002年6月19日作为题为“IPv6Reverse Routing Header and its application toMobile Networks”的因特网草案公开了,在网址为http//www.ietf.org/internet-drafts/draft-thubert-nemo-reverse-routing-header-00.txt的万维网上可获得该草案,并且通过参考而被整体结合于此。最近的版本于2002年10月11日公开在网址为http//www.ietf.org/internet-drafts/draft-thubert-nemo-reverse-routing-header-01.txt的万维网上,并且通过参考而被整体结合于此。
图1示出了网络10,其中,移动IPv6网络12被配置为建立穿过IPv4网络14到达目的地IPv6网络16的IPv4隧道13。具体地说,移动网络12至少包括配置为根据IPv6协议发送并接收分组的移动路由器(MR)20a。移动路由器20a也被配置为与对端归属代理(HA)24通信,归属代理24被配置为根据在下述IETF草案中所述的移动IP协议,将去往移动路由器归属地址的分组转发向移动路由器20a的转交地址(CoA),所述IETF草案是由Johnson等于2003年1月20日提交的题为“Mobility Support inIPv6”的IETF草案,该草案在网址为http//www.ietf.org/internet-drafts/draft-ietf-mobileip-ipv6-20.txt的万维网处可获得,并且通过参考其公开整体而被结合于此。
移动路由器20a(“MR2”)可以作为单个正在漫游的移动路由器漫游,或者可以是具有附接的IPv6节点的移动网络12的顶层移动路由器(TLMR)。如图1所示,移动路由器20a充当移动路由器20c(“MR3”)和移动主机(MH)22的移动网络12中的TLMR。
移动路由器20a配置为建立到其对端归属代理(HA)24的双向隧道28,其使得发送向移动路由器20a的归属地址的分组(例如,由对端节点(CN)26发送的)将被归属代理24转发给移动路由器20a的转交地址。
由于源移动路由器20a被附接到IPv4网络14,与IPv6路由器相对的源移动路由器20a也配置为建立到对端IPv6目的地移动路由器(“MR1”)20b的IPv4隧道13(例如,UDP隧道),目的地移动路由器20b在这里也被称作“门户”移动路由器或IPv6网关,其具有IPv4网络14上的连接。因此,移动路由器20a配置为将门户移动路由器20b用作双向IPv6隧道28中的跳,并且作为IPv4隧道13中的端点,从而实现经由IPv4隧道13到其对端归属代理24的双向隧道28。
IPv4网络14可以可选地包括网络地址转换器(NAT)和/或端口地址转换器(PAT)16。如图1所示,移动路由器20a被附接到专用IPv4网络14a移动路由器20a可以基于先前的配置(静态的或者未编号的(unnumbered))、动态主机配置协议(DHCP)、或者用于点到点协议(PPP)链路的IP控制协议(IPCP)而获得其IPv4地址(例如,“10.1.1.2”)。专用IPv4网络14a访问具有端口地址转换器(PAT)的网络地址转换器(NAT)16,来使得专用网络14a中的节点能够在公共IPv4网络14b中可编址。
移动路由器20a也配置为访问在预定IPv4地址(例如,“210.0.2.2”)处的门户移动路由器20b,和规定的门户端口(例如,UDP端口“434”),使得移动路由器20a能够建立到门户移动路由器20b的IPv4隧道13,而不需要任何发现协议。注意,移动路由器20a可以配置为存储多个门户移动路由器的多个门户IPv4地址,在这种情形中,移动路由器20a可以被配置来定位最优的门户移动路由器。
如上所述,建立穿过NAT/PAT 16的IPv4隧道的问题在于对称NAT 16不仅用专用IPv4节点(在此情形中是移动路由器20a)的被转换的分组的专用IP地址/专用UDP端口/公共IP地址/公共UDP端口来索引它们的地址转换表,而且还用从公共IPv4网络到门户移动路由器20b的进入分组的目的地IP地址和目的地端口来索引它们的地址转换表。
根据所公开的实施方式,移动路由器20a配置为使用相同的源/目的地IPv4地址对发起双向IPv4隧道13,确保IPv4隧道端点20a和20b保持相同。由于这些端点保持相同,所以该双向IPv4隧道13可以被可靠地维持穿过用于多个IPv6数据流的NAT 16。
此外,移动路由器20a利用反向路由头部来确保所有必须的路由信息都被提供给门户移动路由器20b和归属代理24,包括合成的转交地址。下面将结合图3A描述,移动路由器20a被配置为生成包括有规定的协议标识符32的IPv6标签地址30协议标识符32由IPv6网关20b用来标识经由IPv4网络14接收到的IPv6分组30要被传输到IPv6网络16。
图2是示出了移动路由器20(例如,20a、20b或20c)的框图,这些移动路由器配置为根据移动IPv6协议发送分组,并且充当IPv4隧道13的端点。移动路由器20包括IPv6部分50、IPv4部分52和封装/解封装资源54。
IPv6部分50包括标签地址生成/修改资源56、IPv6头部生成和解析资源58、绑定更新资源60、源路由资源62和IPv6接口64。标签地址生成/修改资源56配置为在移动路由器20正充当发起经由IPv4网络14到IPv6网关移动路由器20b的连接的移动路由器20a时,生成图3A所示的IPv6标签地址30。具体地说,标签地址生成/修改资源56配置为生成IPv6标签地址30,其包括规定的协议标识符32、移动路由器20a的源IPv4地址34、用于IPv6网关20b的公共IPv4网关地址36(例如,“210.0.2.2”)、源UDP端口38和用于IPv6网关20b的规定的公共UDP端口40。基于连接到专用IPv4网络14a,源IPv4地址34和源UDP端口38可以是专用地址和端口。如上所述,一旦附接到网络14,公共IPv4网关地址36和规定的公共UDP网关端口40就被移动路由器20a所知。如果在IPv4隧道13中未使用传输层头部(例如,在NAT 16不包括PAT的情形中),则值38和40被设置为0。
协议标识符32(例如,12.34.56.78)被门户移动路由器20b用来识别协议,即,经由IPv6网络16将IPv6分组“向上”转发到归属代理24。为了确保IPv6标签地址30不被错误解释为实际IPv6地址,标签地址生成/修改资源56被配置来将协议标识符32的前3个最高有效位设置为0(“000”)根据IPv6协议,IPv6地址的前3个最高有效位必须不能为0;因此,在前3个最高有效位中出现0使得门户移动路由20b能够识别出协议标识符32。
因此,在移动路由器20a被附接到IPv4网络14而不是IPv6附接路由器时,由标签地址生成/修改资源56生成的IPv6标签地址30充当移动路由器20a的转交地址。
如图2所示,移动路由器20还包括头部生成和解析资源58,其包括反向路由头部(RRH)资源66。资源58配置为根据移动IPv6协议来生成IPv6头部,并且反向路由头部资源66被配置为将反向路由头部添加到IPv6头部,如图5所示。移动路由器20还包括绑定更新资源60,其被配置为响应于附接到网络(在此情形中是专用IPv4网络14a),向其对端归属代理24发送绑定更新消息。移动路由器20还包括源路由资源62,其配置为根据移动IPv6协议并按照Thubert等的因特网草案的规定,来路由具有路由头部的所接收到的IPv6分组。
图5是图示了由头部生成和解析资源58和绑定更新资源60生成的IPv6分组70(例如绑定更新消息),用于发送到归属代理24。IPv6分组70包括由IPv6头部生成和解析资源58生成的IPv6头部72,IPv6头部72包括源地址字段74、目的地地址字段76和由RRH资源66生成的反向路由头部(RRH)78。IPv6分组70还包括有效负载88,例如绑定更新消息。源地址字段74指定移动路由器20a的标签地址(“MR2_TAG1”)30,并且目的地地址字段76指定归属代理24的IPv6归属代理地址(“MR2_HA”)80。
由RRH资源66生成的反向路由头部78包括指定路由头部类型(“第4类”)的路由头部类型字段82、以及用于存储路由信息的槽(slot)84a和84b。具体地说,RRH资源66在槽84b(“槽0”)中插入发起IPv6隧道28的移动路由器(MR2)20a的归属地址86。RRH资源66也包括空槽84a(“槽1”),以使得门户移动路由器20b能够插入修改后的IPv6标签(MR2_TAG2)30′来生成要经由IPv6网络16而被输出到归属代理24的修改后的IPv6分组70′。
反向路由头部78示出移动路由器20a(MR2)建立到其对端归属代理24的隧道28的情形。在移动路由器20c(MR3)建立到其归属代理(未示出)的隧道的情形中,移动路由器20c将生成具有3个槽84(例如,槽0、槽1和槽2)的反向路由头部,其中初始槽(槽0)将指定建立该隧道的发起移动路由器(在此情形中为MR3)的归属地址(例如,MR3_HAddr)。因此,移动路由器20a(MR2)将接收来自移动路由器20c(MR3)的下述IPv6分组,该IPv6分组具有指定该移动路由器(MR3)的转交地址(例如,MR3_CoA)的源地址字段,和在初始槽(槽0)中指定归属地址(MR3_HAddr)的反向路由头部。在此情形中,移动路由器20a(MR2)将通过将转交地址(MR3_CoA)插入到下一个可用槽(槽1),并且用其标签地址值(MR2_TAG1)30覆写源地址字段74,从而更新反向路由头部。
再参考图5所示的示例,其中,移动路由器20a(MR2)建立到其对端代理的隧道28,并且生成具有槽84a和84b的反向路由头部一旦移动路由器20a中的标签地址生成/修改资源56生成了IPv6标签地址30,并且头部生成器58生成了用于相应的有效载荷88的IPv6头部72,封装/解封装资源54就将IPv6分组70封装到IPv4分组90中,如图4所示。IPv4分组90包括具有源地址字段92和目的地地址字段94的IP头部,源地址字段92指定移动路由器20a的专用IPv4“转交地址”(例如,“10.1.1.2”)34,而目的地地址字段94指定门户移动路由器20b的公共IPv4网关地址(例如,“210.0.2.2”)36。IPv4分组90还包括传输头部95,传输头部95包括指定源UDP地址(示作“XX”)38的源UDP端口字段96和指定规定的门户端口40(在此情形中是已知的移动IP端口“434”)的目的地UDP端口字段98。图2中的封装/解封装资源54将IPv4分组90提供到IPv4接口100,IPv4接口100配置为根据IPv4协议将IPv4分组90输出到IPv4网络14上。
如图4所示,IPv4分组90经由NAT 16从专用网络14a到公共网络14b的横穿使NAT/PAT 16将IPv4分组90修改为转换后的分组90′。具体地说,NAT/PAT 16分别用公共IPv4地址值(例如,“66.88.1.2”)102和公共端口(示作“YY”)104来转换源地址字段92中的值34和源端口字段96中的值38。从而,门户移动路由器20b经由公共IPv4网络14b接收转换后的分组90′。
门户移动路由器20b配置为将其自身识别为配置来在IPv6网络16和IPv4网络14之间发送IPv6分组的门户移动路由器。因此,图2的门户移动路由器20b的IPv4接口100配置为响应于在目的地端口字段98中检测出规定的公共网关UDP端口40值为“434”,将转换后的分组90′转发向封装/解封装资源54。资源54通过剥离IPv4头部将IPv6分组70解封装,然后将该IPv6分组70转发向IPv6模块50。
头部生成和解析资源58对图5所示的IPv6头部72进行解析。响应于在源地址字段74中的IPv6标签地址30中检测到“向上”协议标识符32,头部生成和解析资源58向标签地址生成/修改资源56发布功能调用,以通过用图3B中所示的“向下”协议标识符(例如,“12.34.32.10”)106覆写“向上”协议标识符32,从而修改IPv6标签地址30。下面将描述,“向下”协议标识符106用来使门户移动路由器20b能够自动发起下述协议,该协议用于将所接收到的“向下”的、来自归属代理的IPv6分组经由IPv4网络14转发到目的地。另外,协议标识符106将前3位最高有效位设置为“000”,以确保修改后的IPv6标签地址30′不被错误解释为IPv6地址。
如图3B所示,修改资源56还用各个转换后的公共值102和104对在IPv6标签地址30中指定的专用源IP地址34和专用源UDP端口38进行覆写,从而得到修改后的IPv6标签地址30′,其指定“向下”协议标识符106、移动路由器20a的公共IPv4地址(“66.88.1.2”)102、移动路由器20a的公共UDP端口(“YY”)104、以及用于门户移动路由器20b的公共IP地址36和UDP端口40。因此,修改后的IPv6标签地址30′包括门户移动路由器20b对要经由IPv4网络14而被转发向移动路由器20a的IPv6分组进行封装所必需的所有参数。
如图5所示,门户移动路由器20b中的反向路由头部资源66将修改后的IPv6标签地址(MR2_TAG2)30′插入到反向路由头部78的空槽84a中,并且将其自己的转交地址(MR1_CoA)110插入到源地址字段74中,从而得到修改后的IPv6分组70′。门户移动路由器20b的IPv6接口64按照在上面结合的Thubert等提交的因特网草案所述,经由IPv6网络16将修改后的IPv6分组70′输出到归属代理24。如上所述,如果反向路由头部最初是由移动路由器20c生成的,则门户移动路由器20b将把修改后的IPv6标签地址插入到反向路由头部中的下一个可用槽中,并且按照目的地地址字段的指定来转发该IPv6分组。
归属代理24响应于检测到目的地地址字段76中的归属代理地址值(MR2_HA)80,接收修改后的IPv6分组70′。响应于接收到修改后的IPv6分组70′,归属代理24读取反向路由头部78的最底条目84b,并且好像该条目是移动IPv6归属地址目的地选项(即,作为到绑定缓存(bindingcache)中的索引)一样使用该条目,从而标识移动路由器20a的归属地址86。然后,归属代理24可以标识出绑定更新请求88,并且将修改后的标签地址30′作为移动路由器20a的“转交地址”存储在其对端绑定缓存条目中。因此,穿过IPv4网络14对于归属代理24来说可以是透明的。
如图6所示,现在,通过在构建路由头部时使用反向路由头部78(指定修改后的标签30′)和源地址110,归属代理24可以经由隧道28直接发送回分组112。还要注意,如果用于移动路由器的绑定缓存条目尚不存在,或者分组发源于转交地址,则归属代理24可以使用反向路由头部来经由隧道28发送分组。根据上面结合的由Thubert等提交的因特网草案,归属代理24将其归属代理IPv6地址(例如,“MR2_HA”)80插入到源地址字段74中,并且将门户移动路由器的转交地址(“MR1_CoA”)110插入到目的地地址字段76中。归属代理24还插入第2类路由头部114,以及槽84a和84b,其中,第2类路由头部114包括指定路由头部类型(“第2类”)的路由头部类型字段82,槽44a和槽84b分别用于存储移动路由器20a的修改后的标签地址30′和归属地址86。然后,归属代理24将包括绑定确认有效载荷116的分组112输出到IPv6网络16上。
门户移动路由器20b响应于接收到来自归属代理24的IPv6分组112,使用它的头部生成和解析资源58来解析路由头部114。响应于在修改后的IPv6标签地址30′中检测到“向下”协议标识符106,门户移动路由器20b通过减少路由头部114中的段剩余字段(未示出),并且用头部字段84a中的修改后的标签地址30′来更新目的地地址字段76,从而执行传统的IPv6源路由。门户移动路由器20b利用其封装/解封装资源54来生成IPv4头部,该IPv4头部在各自的目的地头部中指定移动路由器20a的公共地址102和公共端口104。IPv4接口100将该分组输出到双向隧道13上。
已被NAT/PAT 16转换的分组分别在目的地地址和目的地端口字段中指定专用IP地址34和专用UDP端口38。然后,移动路由器20a可以基于识别出指定公共门户UDP值40的源UDP端口来恢复IPv6分组112。
图7A和图7B示出了根据本发明实施方式经由IPv4隧道发送IPv6分组的方法。这里参考图7A和图7B所描述的步骤可以作为存储在计算机可读介质(例如,软盘、硬盘、EEPROM、CD-ROM等)中的可执行代码,或者经由计算机可读传输介质(例如,光缆、导电传输线介质、无线电磁介质等)传播的可执行代码而实现在各个移动路由器中。
该方法开始于步骤200,在该步骤中,源移动路由器20a的标签地址生成资源56构造作为其转交地址的IPv6标签地址30。在步骤202中,源移动路由器20a的封装/解封装资源54将IPv6分组70封装到IPv4头部中,并且将IPv4分组90输出到专用IPv4网络14a上。在步骤204中,NAT/PAT 16分别将源地址字段92的专用源地址34和源端口字段96的专用UDP端口38转换成公共IP地址102和公共端口104,然后输出转换后的IPv4分组90′。
在步骤206中,门户移动路由器20b接收到转换后的IPv4分组90′。在步骤208中,门户移动路由器20b的IPv4接口100检测出指定移动IP的门户端口值(“434”)40,并且在响应中,封装/解封装资源54剥离IPv4头部。在步骤210中,门户移动路由器20b的头部生成和解析资源58检测出IPv6标签地址30中的“向上”协议标识符32,并且在响应中,标签修改资源56用“向下”协议标识符106更新IPv6标签地址30,还分别用公共地址102和104覆写源MR 20a的专用地址34和38。在步骤212中,门户移动路由器20b的RRH资源66用更新后的IPv6标签地址30′更新反向路由头部。在步骤214中,门户移动路由器20b的IPv6接口64经由IPv6网络16将修改过的IPv6分组70′输出到归属代理24。
在步骤216中,归属代理24检测出来自反向路由头部的槽84b的源移动路由器20a的归属地址86,并且通过更新源移动路由器20a的绑定缓存条目来将更新后的IPv6标签地址(MR2_TAG2)30′指定为源移动路由器20a的转交地址,从而对绑定更新88作出响应。在步骤218中,归属代理输出绑定确认112,该绑定确认112包括指定更新后的IPv6标签地址30′的路由头部114。
参考图7B,在步骤220中,门户移动路由器20b接收到图6的绑定确认消息112。门户移动路由器20b的解析资源58解析路由头部114,并且检测出指定了“向下”协议标识符106的更新后的IPv6标签地址30′。
在步骤222中,门户移动路由器20b通过按照Thubert等提交的因特网草案所规定的更新路由头部114,并且基于为源移动路由器20a指定的公共地址102和公共端口104将绑定确认消息112封装到IPv4头部中,从而对“向下”协议标识符106作出响应。在步骤224中,门户移动路由器20b输出承载绑定确认消息112的IPv4分组。
在步骤226中,NAT/PAT 16将移动路由器20a的目的地公共地址102和目的地公共端口104分别转换为专用地址34和专用端口38,此后,在步骤228中,源移动路由器20a接收转换后的IPv4分组。源移动路由器20a的IPv4接口100识别出源端口字段中规定的门户端口40,然后在步骤230中,在响应中源移动路由器20a的封装/解封装资源54对IPv6分组112进行解封装。
响应于在步骤230中检测出“向下”协议标识符106,源移动路由器在步骤232中获知在更新后的标签地址30′中指定的公共IPv4地址,并且将IPv6分组再引入到IPv6结构中;在此情形中,绑定确认116被源移动路由器20a中的绑定更新资源60记录。或者,如果所接收到的IPv6分组是去往另一个移动路由器的,例如移动路由器20c或移动主机22,则移动路由器20a根据移动IPv6协议转发该IPv6分组。
根据所公开的实施方式,IPv6移动路由器可以有效地建立穿过IPv4网络的隧道,以传输IPv6分组,而不管IPv4网络是否利用了对称NAT。IPv4隧道通常通过MR发送绑定更新而开始因此,IPv4隧道总是可用,因为MR知道在任何时刻它都具有其自己的隧道。如果绑定更新的发送对于资源维持路径来说足够频繁,则仅仅由MR默认执行移动IP协议该路径就将保持活动。因此,IPv4隧道总是活动的,而不需要额外的处理资源开销。
另外,对于门户移动路由器,不需要维持任何状态,或者存储关于通过其漫游的移动路由器的任何信息,因为所有必需的IPv4路由信息都在分组中。此外,IPv4路由信息被存储在归属代理的绑定缓存中。因此,当IPv4路由信息不再有效时,绑定缓存被归属代理自动清空,这消除了IPv6网络中的任何无效状态的可能性。因此,不需要删除网络中由于无效状态(例如,在网关、服务器等中的)而造成的过时信息。
此外,经由NAT从MR到门户的IPv4隧道使用相同的UDP端口,因此,NAT/PAT中的单个资源可以被用于附接到TLMR 20a的所有移动路由器,这使得不必使用NAT/PAT中的多个资源。注意,如果网络不具有PAT,使得隧道13不需要传输头部值,则在标签30中端口字段的UDP资源38和门户端口值40可以为0。
此外,MR 20a可以轻易地切换到新“门户”由源MR 20a输出的下一个分组采用下一个源路由,其更新归属代理中的绑定缓存,这使该归属代理使用新的门户。注意,归属代理甚至于不需要等待绑定更新,这是由于其可以仅使用反向路由头部。
如下所述,可以采用不同的变化和修改。具体地说,假定门户(即,IPv4/IPv6网关)独立于归属代理;因此,当分组被接收到时,门户通过将合成的IPv6标签插入到反向路由头部中,从而通过IPv6接口转发该分组。然而,如果IPv6网关就是归属代理,则分组的IPv6源地址在绑定缓存中将会结束。
因此,归属代理可以配置为使用UDP封装向转发地址发送。因此,不具有RRH功能的移动路由器可以构造同一类型的IPv6标签地址,将该IPv6标签地址插入到IPv6头部的源地址字段中(在目的地选项字段中指定的归属地址),并且经由IPv4隧道将没有RRH的分组输出到其归属代理。归属代理终止IPv4隧道(即,归属代理充当门户),恢复IPv6分组,并且更新具有代表转交地址的标签的绑定缓存。这样,一旦访问绑定缓存条目并探测出标签,归属代理就转发封装的UDP分组形式的任何分组。由于“标签”(代表转交地址)不能被用作源或目的地,所以归属代理和“门户”必须被协同定位。对于较小的实现,这实际上可能有好处。
另一种变化包括所谓分级移动IP(HMIP)的协议。参见由Soliman于2002年7月提交的题为“Hierarchical MIPv6 mobility management(HMIPv6)”的因特网草案,该草案可以在网址为http//www.nal.motlabs.com/nemo/drafts/draft-ietf-mobileip-hmipv6-06.txt处获得,其公开整体通过参考结合于此。具体地说,正在漫游的移动节点(具体地说是移动主机(MH))与移动定位点(mobility anchor point,MAP)交互,该移动定位点代表MH注册到该MH的归属代理。当MH在同一个MAP附近漫游时,该MH不需要改变其注册,因为MAP可以连续将分组转发给该MH。因此,MAP可以是门户。MAP具有其自己的IPv6地址,所以它可以不同于门户。MAP也具有IPv4地址,所以如果MH知道MAP IPv4地址,则MH可以基于MAP IPv4地址来构造它的IPv6标签地址,并且经由关联的IPv4隧道转发承载该IPv6标签地址的IPv6分组;MAP代表MH注册到该MH的归属代理,用该MAP的IPv6地址充当该MH的转交地址(例如,象代理一样)。
因此,在移动节点(具体地说,移动主机)不使用反向路由头部的情形中,HMIP允许拓扑分布在不同的归属代理和不同的门户之间。这些门户实际上使用HMIP来注册MH。
尽管已结合当前认为最实用并优选的实施方式描述了所公开的实施方式,但是,应当理解,本发明不是要受限于所公开的实施方式,相反,而是要覆盖包括在所附权利要求的精神和范围内的各种修改和等同布置。
权利要求
1.一种IPv6移动路由器中的方法,所述方法包括第一生成步骤,用于生成IPv6标签地址,所述IPv6标签地址包括规定的协议标识符和公共IPv4网关地址,所述协议标识符用于配置为在IPv4网络和IPv6网络之间传输分组的IPv6网关,所述公共IPv4网关地址用于所述IPv6网关;第二生成步骤,用于生成IPv6分组,所述IPv6分组具有指定所述IPv6标签地址的源地址字段和指定归属地址的反向路由头部;封装步骤,用于将所述IPv6分组封装到IPv4分组中,所述IPv4分组具有IPv4头部,所述IPv4头部包括指定所述公共网关IPv4地址的目的地地址字段和指定移动路由器IPv4地址的源地址字段,所述移动路由器IPv4地址由所述IPv6移动路由器用来经由所述IPv4网络访问所述IPv6网关;和输出步骤,用于经由所述IPv4网络将所述IPv4分组输出到所述IPv6网关,以将所述IPv6分组传输到所述IPv6网络上。
2.如权利要求1所述的方法,其中所述第一生成步骤包括将规定的协议标识符的前3位设置为值“000”,并且用所述规定的协议标识符作为所述IPv6标签地址的开始;和将所述移动路由器IPv4地址插入到所述IPv6标签地址中。
3.如权利要求1所述的方法,其中,所述IPv6移动路由器具有规定的归属代理,所述归属代理具有对应的归属代理地址,所述第二生成步骤包括在所述IPv6分组的目的地地址字段中指定所述归属代理地址。
4.如权利要求3所述的方法,其中,所述第二生成步骤包括添加至少一个用于所述IPv6网关的空槽,以在将所述IPv6分组转发给所述归属代理之前插入所述IPv6标签。
5.如权利要求4所述的方法,其中,所述第二生成步骤包括基于已附接到所述IPv4网络的所述IPv6移动路由器,在用于所述规定的归属代理的IPv6分组中添加绑定更新。
6.如权利要求1所述的方法,其中所述第一生成步骤包括在所述IPv6标签地址中插入用于所述IPv6网关的规定的公共网关端口;所述封装步骤包括在所述IPv4分组中插入传输头部,所述传输头部具有指定所述规定的公共网关端口的目的地端口字段和指定移动路由器端口的源端口字段,所述移动路由器端口由所述IPv6移动路由器用来经由所述IPv4网络访问所述IPv6网关。
7.如权利要求6所述的方法,还包括接收来自所述IPv4网络的第二IPv4分组,所述第二IPv4分组具有指定所述公共网关IPv4地址的源地址字段;指定所述规定的公共网关端口的源端口字段;指定所述移动路由器IPv4地址的目的地地址字段;以及指定所述移动路由器端口的目的地端口字段;响应于检测出所述源端口字段指定了所述规定的公共网关端口,从所述第二IPv4分组中解封装出第二IPv6分组;检测所述第二IPv6分组的目的地地址字段中的第二IPv6标签地址和第二规定的协议标识符,所述第二IPv6标签地址指定不同于所述移动路由器IPv4地址的公共IPv4地址、不同于所述移动路由器端口的公共端口,所述第二规定的协议标识符指示所述公共IPv4地址和所述公共端口与在所述IPv4分组中指定的所述移动路由器IPv4地址和所述移动路由器端口相对应。
8.如权利要求7所述的方法,还包括基于检测出指定另一目的地的第2类路由头部而有选择地在第二IPv6网络中源路由所述第二IPv6分组。
9.如权利要求8所述的方法,其中,所述移动路由器IPv4地址是专用IP地址,并且所述移动路由器端口是专用UDP端口,所述输出和接收步骤包括利用具有端口地址转换器(PAT)的网络地址转换器(NAT)输出和接收各IPv4分组和所述第二IPv4分组。
10.一种IPv6移动路由器中的方法,所述方法包括使用公共IPv4网关地址附接到公共IPv4网络,并且使用IPv6地址附接到IPv6网络;接收来自所述公共IPv4网络的IPv4分组,所述IPv4分组具有指定所述公共IPv4网关地址的目的地地址字段;指定规定的公共网关端口的目的地端口字段;指定公共IPv4地址的源地址字段;以及指定公共端口的源端口字段;响应于检测出所述目的地端口字段中的所述规定的公共网关端口,从所述IPv4分组恢复IPv6分组;响应于检测出用于IPv6网关的规定的协议标识符,将检测出的所述IPv6分组的源地址字段中的IPv6标签地址修改为修改后的IPv6标签地址,以将所述IPv6分组从所述IPv4网络传输到所述IPv6网络,所述修改包括用第二协议标识符替换所述规定的协议标识符,并且插入所述公共IPv4地址和所述公共端口;通过将所述修改后的IPv6标签地址插入到所检测出的所述IPv6分组的反向路由头部中,并且将所述移动路由器的转交地址插入到所述源地址字段中,从而将所述IPv6分组更新为更新后的IPv6分组;和将所述更新后的IPv6分组输出到所述IPv6网络上。
11.如权利要求10所述的方法,其中所述修改还包括基于具有值“000”的前3位,检测出在所述IPv6标签地址开始处的所述规定的协议标识符;和分别用所述公共IPv4地址和所述公共端口对所述IPv6标签地址中的IPv4地址和端口值进行覆写。
12.如权利要求11所述的方法,其中,所述替换包括将所述第二协议标识符的前3位设置为“000”,所述IPv6移动路由器配置为响应于检测出所述第二协议标识符,将接收自所述IPv6网络并且指定所述第二协议标识符的第二接收到的IPv6分组路由至所述IPv4网络上。
13.如权利要求12所述的方法,其中,所述更新步骤包括基于检测出指定对应的规定的路由器类型选项值的路由器类型选项字段来检测所述反向路由头部,并且将所述修改后的IPv6标签地址插入到所检测出的反向路由头部的空槽中。
14.如权利要求10所述的方法,其中,所述规定的公共网关端口具有指定移动IP的UDP值“434”。
15.如权利要求14所述的方法,其中,所述IPv6标签地址中的所述IPv4地址和端口值分别指定已利用具有端口地址转换器(PAT)的网络地址转换器(NAT)而被分别转换为所述公共IPv4地址和所述公共端口的专用IP地址和专用端口,。
16.如权利要求9所述的方法,还包括经由所述IPv6网络接收具有路由头部的第二IPv6分组,所述路由头部指定所述修改后的IPv6标签地址;检测所述修改后的IPv6标签地址中的所述第二协议标识符、所述公共IPv4地址和所述公共端口;通过将所述修改后的IPv6标签地址插入到所述IPv6分组的所述目的地地址字段中,从而将所述IPv6分组修改为转发的IPv6分组;将所述转发的IPv6分组封装到第二IPv4分组中,所述第二IPv4分组具有指定所述公共IPv4地址的目的地地址字段和指定所述公共端口的端口字段;和将所述第二IPv4分组输出到所述IPv4网络上。
17.一种IPv6移动路由器,其包括第一装置,用于生成IPv6标签地址,所述IPv6标签地址包括规定的协议标识符和公共IPv4网关地址,所述协议标识符用于配置为在IPv4网络和IPv6网络之间传输分组的IPv6网关,所述公共IPv4网关地址用于所述IPv6网关;第二装置,用于生成IPv6分组,所述IPv6分组具有指定所述IPv6标签地址的源地址字段和指定归属地址的反向路由头部;第三装置,用于将所述IPv6分组封装到IPv4分组中,所述IPv4分组具有IPv4头部,所述IPv4头部包括指定所述公共网关IPv4地址的目的地地址字段和指定移动路由器IPv4地址的源地址字段,所述移动路由器IPv4地址由所述IPv6移动路由器用来经由所述IPv4网络访问所述IPv6网关;和用于经由所述IPv4网络将所述IPv4分组输出到所述IPv6网关,以将所述IPv6分组传输到所述IPv6网络上的装置。
18.如权利要求17所述的移动路由器,其中所述第一生成装置配置为将所述规定的协议标识符的前3位设置为值“000”,并且用所述规定的协议标识符作为所述IPv6标签地址的开始;和将所述移动路由器IPv4地址插入到所述IPv6标签地址中。
19.如权利要求17所述的移动路由器,其中,所述IPv6移动路由器具有规定的归属代理,所述归属代理具有对应的归属代理地址,所述第二装置配置为在所述IPv6分组的目的地地址字段中指定所述归属代理地址。
20.如权利要求19所述的移动路由器,其中,所述第二装置配置为添加至少一个用于所述IPv6网关的空槽,以在将所述IPv6分组转发给所述归属代理之前插入所述IPv6标签。
21.如权利要求20所述的移动路由器,其中,所述第二装置配置为基于已附接到所述IPv4网络的所述IPv6移动路由器,在用于所述规定的归属代理的所述IPv6分组中添加绑定更新。
22.如权利要求17所述的移动路由器,其中所述第一装置配置为在所述IPv6标签地址中插入用于所述IPv6网关的规定的公共网关端口;所述封装装置配置为在所述IPv4分组中插入传输头部,所述传输头部具有指定所述规定的公共网关端口的目的地端口字段和指定移动路由器端口的源端口字段,所述移动路由器端口由所述IPv6移动路由器用来经由所述IPv4网络访问所述IPv6网关。
23.如权利要求22所述的移动路由器,其中所述输出装置配置为接收来自所述IPv4网络的第二IPv4分组,所述第二IPv4分组具有指定所述公共网关IPv4地址的源地址字段;指定所述规定的公共网关端口的源端口字段;指定所述移动路由器IPv4地址的目的地地址字段;以及指定所述移动路由器端口的目的地端口字段;所述第三装置配置为响应于检测出所述源端口字段指定了所述规定的公共网关端口,从所述第二IPv4分组中解封装出第二IPv6分组;所述第二装置配置为检测在所述第二IPv6分组的目的地地址字段中的第二IPv6标签地址和第二规定的协议标识符,所述第二IPv6标签地址指定不同于所述移动路由器IPv4地址的公共IPv4地址、不同于所述移动路由器端口的公共端口,所述第二规定的协议标识符指示所述公共IPv4地址和所述公共端口与在所述IPv4分组中指定的所述移动路由器IPv4地址和所述移动路由器端口相对应。
24.如权利要求23所述的移动路由器,其中,所述第二装置配置为基于检测出指定另一目的地的第2类路由头部而有选择地在第二IPv6网络中源路由所述第二IPv6分组。
25.如权利要求24所述的移动路由器,其中,所述移动路由器IPv4地址是专用IP地址,并且所述移动路由器端口是专用端口,所述输出装置配置为利用具有端口地址转换器(PAT)的网络地址转换器(NAT)输出和接收所述各IPv4分组和所述第二IPv4分组。
26.一种IPv6移动路由器,其包括第一装置,用于使用公共IPv4网关地址附接到公共IPv4网络,所述第一装置配置为接收来自所述公共IPv4网络的IPv4分组,所述IPv4分组具有指定所述公共IPv4网关地址的目的地地址字段;指定规定的公共网关端口的目的地端口字段;指定公共IPv4地址的源地址字段;以及指定公共端口的源端口字段;第二装置,用于响应于检测出所述目的地端口字段中的所述规定的公共网关端口,从所述IPv4分组恢复IPv6分组;第三装置,用于响应于检测出用于IPv6网关的规定的协议标识符,将检测出的所述IPv6分组的源地址字段中的IPv6标签地址修改为修改后的IPv6标签地址,以将所述IPv6分组从所述IPv4网络传输到所述IPv6网络,所述第三装置配置为用第二协议标识符替换所述规定的协议标识符,并且插入所述公共IPv4地址和所述公共端口;所述第三装置还配置为通过将所述修改后的IPv6标签地址插入到所检测出的所述IPv6分组的反向路由头部中,并且将所述移动路由器的转交地址插入到所述源地址字段中,从而将所述IPv6分组更新为更新后的IPv6分组;和用于将所述更新后的IPv6分组输出到IPv6网络上的装置。
27.如权利要求26所述的移动路由器,其中所述第三装置配置为基于具有值“000”的前3位,检测出在所述IPv6标签地址开始处的所述规定的协议标识符;并且分别用所述公共IPv4地址和所述公共端口对所述IPv6标签地址中的IPv4地址和UDP端口值进行覆写。
28.如权利要求27所述的移动路由器,其中,所述第三装置配置为将所述第二协议标识符的前3位设置为“000”,所述第三装置还配置为响应于检测出所述第二协议标识符,将接收自所述IPv6网络并且指定所述第二协议标识符的第二接收到的IPv6分组路由至所述IPv4网络上。
29.如权利要求26所述的移动路由器,其中,所述第三装置配置为基于检测出指定对应的规定的路由器类型选项值的路由器类型选项字段来检测所述反向路由头部,并且将所述修改后的IPv6标签地址插入到所检测出的反向路由头部的空槽中。
30.如权利要求26所述的移动路由器,其中,所述规定的公共网关端口具有指定移动IP的UDP值“434”。
31.如权利要求26所述的移动路由器,其中,所述IPv6标签地址中的所述IPv4地址和端口值分别指定已利用NAT而被分别转换为所述公共IPv4地址和所述公共端口的专用IP地址和专用端口,。
32.如权利要求26所述的移动路由器,其中所述用于输出的装置配置为经由所述IPv6网络接收具有路由头部的第二IPv6分组,所述路由头部指定所述修改后的IPv6标签地址;所述第三装置配置为检测所述修改后的IPv6标签地址中的所述第二协议标识符、所述公共IPv4地址和所述公共端口,并且通过将所述修改后的IPv6标签地址插入到所述IPv6分组的所述目的地地址字段中,从而将所述IPv6分组修改为转发的IPv6分组;所述第二装置配置为将所述转发的IPv6分组封装到第二IPv4分组中,所述第二IPv4分组具有指定所述公共IPv4地址的目的地地址字段和指定所述公共端口的端口字段;并且所述第一装置配置为将所述第二IPv4分组输出到所述IPv4网络上。
33.一种计算机可读介质,具有存储在其上的用于由移动路由器输出IPv6分组的指令序列,所述指令序列包括用于下述步骤的指令第一生成步骤,用于生成IPv6标签地址,所述IPv6标签地址包括规定的协议标识符和公共IPv4网关地址,所述协议标识符用于配置为在IPv4网络和IPv6网络之间传输分组的IPv6网关,所述公共IPv4网关地址用于所述IPv6网关;第二生成步骤,用于生成IPv6分组,所述IPv6分组具有指定所述IPv6标签地址的源地址字段和指定归属地址的反向路由头部;封装步骤,用于将所述IPv6分组封装到IPv4分组中,所述IPv4分组具有IPv4头部,所述IPv4头部包括指定所述公共网关IPv4地址的目的地地址字段和指定移动路由器IPv4地址的源地址字段,所述移动路由器IPv4地址由所述IPv6移动路由器用来经由所述IPv4网络访问所述IPv6网关;和输出步骤,用于经由所述IPv4网络将所述IPv4分组输出到所述IPv6网关,以将所述IPv6分组传输到所述IPv6网络上。
34.如权利要求33所述的介质,其中所述第一生成步骤包括将所述规定的协议标识符的前3位设置为值“000”,并且用所述规定的协议标识符作为所述IPv6标签地址的开始;和将所述移动路由器IPv4地址插入到所述IPv6标签地址中。
35.如权利要求33所述的介质,其中,所述IPv6移动路由器具有规定的归属代理,所述归属代理具有对应的归属代理地址,所述第二生成步骤包括在所述IPv6分组的目的地地址字段中指定所述归属代理地址。
36.如权利要求35所述的介质,其中,所述第二生成步骤包括添加至少一个用于所述IPv6网关的空槽,以在将所述IPv6分组转发给所述归属代理之前插入所述IPv6标签。
37.如权利要求34所述的介质,其中,所述第二生成步骤包括基于已附接到所述IPv4网络的所述IPv6移动路由器,在用于所述规定的归属代理的所述IPv6分组中添加绑定更新。
38.如权利要求33所述的介质,其中所述第一生成步骤包括在所述IPv6标签地址中插入用于所述IPv6网关的规定的公共网关端口;所述封装步骤包括在所述IPv4分组中插入传输头部,所述传输头部具有指定所述规定的公共网关端口的目的地端口字段和指定移动路由器端口的源端口字段,所述移动路由器端口由所述IPv6移动路由器用来经由所述IPv4网络访问所述IPv6网关。
39.如权利要求38所述的介质,还包括用于下述步骤的指令接收来自所述IPv4网络的第二IPv4分组,所述第二IPv4分组具有指定所述公共网关IPv4地址的源地址字段;指定所述规定的公共网关端口的源端口字段;指定所述移动路由器IPv4地址的目的地地址字段;以及指定所述移动路由器端口的目的地端口字段;响应于检测出所述源端口字段指定了所述规定的公共网关端口,从所述第二IPv4分组中解封装出第二IPv6分组;检测所述第二IPv6分组的目的地地址字段中的第二IPv6标签地址和第二规定的协议标识符,所述第二IPv6标签地址指定不同于所述移动路由器IPv4地址的公共IPv4地址、不同于所述移动路由器端口的公共端口,所述第二规定的协议标识符指示所述公共IPv4地址和所述公共端口与在所述IPv4分组中指定的所述移动路由器IPv4地址和所述移动路由器端口相对应。
40.如权利要求39所述的介质,还包括基于检测出指定另一目的地的第2类路由头部而有选择地在第二IPv6网络中源路由所述第二IPv6分组。
41.如权利要求40所述的介质,其中,所述移动路由器IPv4地址是专用IP地址,并且所述移动路由器端口是专用端口,所述输出和接收步骤包括利用网络地址转换器(NAT)输出和接收所述各IPv4分组和所述第二IPv4分组。
42.一种计算机可读介质,具有存储在其上的用于由移动路由器输出IPv6分组的指令序列,所述指令序列包括用于下述步骤的指令使用公共IPv4网关地址附接到公共IPv4网络,并且使用IPv6地址附接到IPv6网络;接收来自所述公共IPv4网络的IPv4分组,所述IPv4分组具有指定所述公共IPv4网关地址的目的地地址字段;指定规定的公共网关端口的目的地端口字段;指定公共IPv4地址的源地址字段;以及指定公共端口的源端口字段;响应于检测出所述目的地端口字段中的所述规定的公共网关端口,从所述IPv4分组恢复IPv6分组;响应于检测出用于IPv6网关的规定的协议标识符,将检测出的所述IPv6分组的源地址字段中的IPv6标签地址修改为修改后的IPv6标签地址,以将所述IPv6分组从所述IPv4网络传输到所述IPv6网络,所述修改包括用第二协议标识符替换所述规定的协议标识符,并且插入所述公共IPv4地址和所述公共端口;通过将所述修改后的IPv6标签地址插入到所检测出的所述IPv6分组的反向路由头部中,并且将所述移动路由器的转交地址插入到所述源地址字段中,从而将所述IPv6分组更新为更新后的IPv6分组;和将所述更新后的IPv6分组输出到所述IPv6网络上。
43.如权利要求42所述的介质,其中所述修改还包括基于具有值“000”的前3位,检测出在所述IPv6标签地址开始处的所述规定的协议标识符;和分别用所述公共IPv4地址和所述公共端口对所述IPv6标签地址中的IPv4地址和端口值进行覆写。
44.如权利要求43所述的介质,其中,所述替换包括将所述第二协议标识符的前3位设置为“000”,所述IPv6移动路由器配置为响应于检测出所述第二协议标识符,将接收自所述IPv6网络并且指定所述第二协议标识符的第二接收到的IPv6分组路由至所述IPv4网络上。
45.如权利要求42所述的介质,其中,所述更新步骤包括基于检测出指定对应的规定的路由器类型选项值的路由器类型选项字段来检测所述反向路由头部,并且将所述修改后的IPv6标签地址插入到所检测出的反向路由头部的空槽中。
46.如权利要求42所述的介质,其中,所述规定的公共网关端口具有指定移动IP的UDP值“434”。
47.如权利要求42所述的介质,其中,所述IPv6标签地址中的所述IPv4地址和端口值分别指定已利用NAT而被分别转换为所述公共IPv4地址和所述公共端口的专用IP地址和专用端口。
48.如权利要求42所述的介质,还包括用于下述步骤的指令经由所述IPv6网络接收具有路由头部的第二IPv6分组,所述路由头部指定所述修改后的IPv6标签地址;检测所述修改后的IPv6标签地址中的所述第二协议标识符、所述公共IPv4地址和所述公共端口;通过将所述修改后的IPv6标签地址插入到所述IPv6分组的所述目的地地址字段中,从而将所述IPv6分组修改为转发的IPv6分组;将所述转发的IPv6分组封装到第二IPv4分组中,所述第二IPv4分组具有指定所述公共IPv4地址的目的地地址字段和指定所述公共端口的端口字段;和将所述第二IPv4分组输出到所述IPv4网络上。
全文摘要
源IPv6移动路由器配置为使用合成的标签地址(其指定转发协议),以及IPv4源和目的地地址来建立到目的地IPv6移动路由器的IPv4隧道。如果使用了可选的传输头部(例如,UDP端口),则源端口和目的地端口也被添加到合成的标签地址。IPv6分组包括反向路由头部,其使目的地IPv6移动路由器能够恢复用于经由IPv4网络到达源IPv6移动路由器的路由信息。因此,目的地IPv6移动路由器在将IPv6回复分组发送回源IPv6移动路由器时可能需要的所有IPv4路由信息被维护在IPv6回复分组中指定的路由头部中。
文档编号H04J3/24GK1757221SQ200480006008
公开日2006年4月5日 申请日期2004年3月9日 优先权日2003年3月10日
发明者帕斯卡尔·蒂贝尔, 马尔科·莫尔泰尼, 帕特里克·韦特瓦尔德, 欧利·图恩 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1