具体实施方式
参阅图1,为本发明网络系统一实施方式的示意图。在本实施方式中,网络系统包括本地网络(Home Network)10及外地网络(Foreign Network)20。本地网络10可为移动通信网络,如第三代合作伙伴计划(ThirdGeneration Partnership Project,3GPP)网络或第三代合作伙伴计划第二组(Third Generation Partnership Project 2,3GPP2)网络。外地网络20可为无线局域网(Wireless Local Area Network,WLAN)。
本地网络10包括移动节点(Mobile Node,MN)100、本地代理(HomeAgent,HA)200及服务节点400。本地代理200与服务节点400为本地网络10提供服务。外地网络20包括外地代理(Foreign Agent)500。外地代理500为外地网络20提供服务,其定期发送广播通告(Advertisement)封包。
移动节点100可与通信节点(Correspondent Node,CN)300进行无线通信。在本实施方式中,通信节点300可位于本地网络10、外地网络20或其它网络。
移动节点100可由本地网络10漫游至外地网络20。在本实施方式中,移动节点100可通过向本地代理200注册,再通过本地代理200向服务节点400注册,从而可使移动节点100从本地网络10漫游至外地网络20时,维持与通信节点300的通信。
参阅图2,为本发明实施方式中移动节点100及本地代理200的模块图。在本实施方式中,移动节点100包括位置侦测模块(Movement Detector)110、节点控制模块120、路由信息记录(Routing Information Recording,RIR)模块130及连线模块140。
移动节点100的位置侦测模块110用于侦测移动节点100是否发生漫游,及当侦测到发生漫游时,通知节点控制模块120。在本实施方式中,外地代理500定期发送广播通告封包,广播通告封包包括漫游识别码(Identifier,ID)。位置侦测模块110接收外地代理500所发送的广播通告封包,根据广播通告封包的漫游识别码判断移动节点100从本地网络10漫游至外地网络20。
节点控制模块120用于管理位置侦测模块110、路由信息记录模块130及连线模块140,及通过传送移动注册封包给本地代理200作注册。在本实施方式中,位置侦测模块110侦测到发生漫游时,节点控制模块120通知连线模块140从外地网络20取得转交地址(Care-of Address,CoA)。
连线模块140用于从外地网络20取得转交地址。在本实施方式中,外地网络20为WLAN,连线模块140可听取外地代理500的广播通告封包而取得转交地址,即取得外地代理转交地址(Foreign Agent Care-ofAddress,FA CoA)。
在其它实施方式中,外地网络20亦可包括动态主机配置协议服务器(Dynamic Host Configuration Protocol,DHCP Server),连线模块140亦可通过DHCP Server取得转交地址,即取得联合转交地址(Co-located Care-ofAddress,CCoA)。
当连线模块140取得转交地址后,节点控制模块120传送移动注册封包给本地代理200作注册。移动注册封包包括本地地址(Home Address)字段及转交地址字段。本地地址字段设为移动节点100在本地网络10中的因特网协议(Internet Protocol,IP)地址,转交地址字段设为连线模块140所取得的转交地址。在本实施方式中,移动注册封包为移动因特网协议注册封包(Mobile Internet Protocol Registration,MIP_REG)封包1000。
参阅图3,MIP_REG封包1000包括类型(Type)字段1100、有效期(Life Time)字段1300、本地地址字段1400、本地代理字段1500、转交地址字段1600及识别码字段1700。应注意的是,本实施例所描述的所有封包皆符合移动因特网协议(Mobile Internet Protocol,Mobile IP)标准,且每一封包的内容在图上并没有完全揭露,仅有揭露所需的字段部分。类型字段1100用于指明封包的型态,即用于区分MIP_REG封包与移动因特网协定回应封包(Mobile Internet Protocol Reply,MIP_REP)封包。在本实施方式中,类型字段1100设为1,则封包为MIP_REG封包。有效期字段1300用于指明封包的有效期,即经过有效期字段1300所指定的时间后封包即被视为过期而无效。本地地址字段1400设为移动节点100在本地网络10中的IP地址。本地代理字段1500设为本地代理200的IP地址。转交地址字段1600设为移动节点100的转交地址,即连线模块140所取得的转交地址。识别码字段1700设为封包的识别码。
当本地代理200接收移动节点100所传送的移动注册封包后,本地代理200向服务节点400注册。当本地代理200向服务节点400注册成功,则本地代理200传送移动回应封包给移动节点100的节点控制模块120。在本实施方式中,移动回应封包为MIP_REP封包2000。
参阅图4,MIP_REP封包2000包括类型字段2100、代码(Code)字段2200、有效期字段2300、本地地址字段2400、本地代理字段2500及识别码字段2700。类型2100用于指明封包的型态,即用于区分MIP_REG封包与MIP_REP封包。在本实施方式中,类型字段2100设为3,则封包为MIP_REP封包。代码字段2200用于告知MIP_REG封包1000是否注册成功。在本实施方式中,代码字段2200设为0,则MIP_REG封包1000注册成功。
有效期字段2300用于指明封包的有效期。本地地址字段2400设为移动节点100在本地网络10中的IP地址。本地代理字段2500设为本地代理200的IP地址。识别码字段2700设为封包的识别码。
路由信息记录模块130用于管理移动节点100绕送封包的信息。在本实施方式中,当节点控制模块120与本地代理200注册成功时,节点控制模块120通知路由信息记录模块130根据连线模块140所取得的转交地址来修改移动节点100绕送封包的信息。
本地代理200用于接收移动注册封包,并通过传送注册请求封包给服务节点400作注册。在本实施方式中,本地代理200包括封包过滤模块(Packet Filter,PF)210、代理控制模块220、路由信息库(RoutingInformation Database,RID)230及注册模块240。
封包过滤模块210用于侦测移动节点100所传送的移动注册封包,并通知代理控制模块220。在本实施方式中,封包过滤模块210侦测移动节点100传送移动注册封包,则将移动注册封包转交给代理控制模块220。在其它实施方式中,如果封包过滤模块210接收到一般使用者封包,即非移动注册封包的封包,则舍弃该封包。
代理控制模块220用于管理封包过滤模块210、路由信息库230及注册模块240。在本实施方式中,代理控制模块220从封包过滤模块210接收移动注册封包后,通知路由信息库230根据移动注册封包修改移动节点100的绕送封包的信息。
路由信息库230用于管理移动节点100绕送封包的信息。在本实施方式中,路由信息库230包括连结表(Binding Table)231,其包括移动节点100在本地网络10中的IP地址与移动节点100的转交地址之间的对照关系。每当移动节点100进入新的外地网络并传送移动注册封包给本地代理200时,路由信息库230会根据移动注册封包更新连结表231。在本实施方式中,当移动节点100进入外地网络20并传送MIP-REG封包1000给本地代理200时,路由信息库230根据MIP-REG封包1000更新连结表231。
注册模块240用于当代理控制模块220接收到封包过滤模块210的通知时,通过传送注册请求封包给服务节点400作注册。在本实施方式中,当代理控制模块220从封包过滤模块210接收移动注册封包时,代理控制模块220通知注册模块240向服务节点400注册。注册模块240传送注册请求封包给服务节点400作注册,以告知服务节点400关于移动节点100的漫游情况,并要求服务节点400将移动节点100的封包传送给本地代理200。在本实施方式中,注册请求封包包括本地地址字段及转交地址字段。本地地址字段设为移动节点100在本地网络10中的IP地址,转交地址字段设为本地代理200在本地网络10中的IP地址。当服务节点400接收到注册请求封包后,会传送注册回应封包给注册模块240,以告知注册成功。故,注册模块240从服务节点400接收注册回应封包,则本地代理200向服务节点400注册成功。
在本实施方式中,本地网络10可为3GPP网络,服务节点400可为网关通用封包无线服务(General Packet Radio Service,GPRS)支持节点(Gateway GPRS Support Node,GGSN)。注册请求封包为异质跨系统移动注册请求(Heterogeneous Intersystem Mobility Registration Request,HIM_REG_REQ)封包3000。注册回应封包为异质跨系统移动注册回应(Heterogeneous Intersystem Mobility Registration Reply,HIM_REG_REP)封包4000。
参阅图5,HIM_REG_REQ封包3000包括类型字段3100、有效期字段3300、本地地址字段3400、转交地址字段3600及识别码字段3700。类型字段3100用于指明封包的型态,即用于区分HIM_REG_REQ封包与HIM-REG-REP封包。在本实施方式中,类型字段3100设为1,则封包为HIM_REG_REQ封包。有效期字段3300用于指明封包的有效期。本地地址3400设为移动节点100在本地网络10中的IP地址。转交地址字段3600设为本地代理200的IP地址。识别码字段3700设为封包的识别码。
参阅图6,HIM_REG_REP封包4000包括类型字段4100、代码字段4200、有效期字段4300、本地地址字段4400及识别码字段4700。类型字段4100用于指明封包的型态,即用于区分HIM_REG_REQ封包与HIM-REG-REP封包。在本实施方式中,类型字段4100设为3,则封包为HIM_REG_REP封包。代码字段4200用于告知本地代理200HIM_REG_REQ封包3000是否注册成功。在本实施方式中,代码字段4200设为0,则HIM_REG_REQ封包3000注册成功。
有效期字段4300用于指明封包的有效期。本地地址4400设为移动节点100在本地网络10中的IP地址。识别码字段4700设为封包的识别码。
在其它实施方式中,本地网络10亦可为3GPP2网络,服务节点400亦可为封包数据服务节点(Packet Data Serving Node,PDSN)。注册请求封包可为P-P(PDSN-PDSN)注册请求(PDSN-PDSN Registration Request,P_P_REG_REQ)封包5000。注册回应封包为P-P注册回应(PDSN-PDSNRegistration Reply,P_P_REG_REP)封包6000。
参阅图7,P_P_REG_REQ封包5000包括类型字段5100、有效期字段5300、本地地址字段5400、本地代理字段5500、转交地址字段5600及识别码字段5700。类型字段5100用于指明封包的型态,即用于区分P_P_REG_REQ封包与P_P_REG_REP封包。在本实施方式中,类型字段5100设为1,则封包为P_P_REG_REQ封包。有效期字段5300用于指明封包的有效期。本地地址5400设为移动节点100在本地网络10中的IP地址。本地代理字段5500设为服务节点400的IP地址。转交地址字段5600设为本地代理200的IP地址。识别码字段5700设为封包的识别码。
参阅图8,P_P_REG_REP封包6000包括类型字段6100、代码字段6200、有效期字段6300、本地地址字段6400、本地代理字段6500及识别码字段6700。类型字段6100用于指明封包的型态,即用于区分P_P_REG_REQ封包与P_P_REG_REP封包。在本实施方式中,类型字段6100设为3,则封包为P_P_REG_REP封包。代码字段6200用于告知P_P_REG_REQ封包5000是否注册成功。在本实施方式中,代码字段6200设为0,则P_P_REG_REQ封包5000注册成功。
有效期字段6300用于指明封包的有效期。本地地址6400设为移动节点100在本地网络10中的IP地址。本地代理字段6500设为服务节点400的IP地址。识别码字段6700设为封包的识别码。
当本地代理200向服务节点400注册成功时,本地代理200的代理控制模块220还用于传送移动回应封包给移动节点100,以告知注册成功。
参阅图9,为本发明网络漫游方法一实施方式的流程图,其中显示本发明注册方法一实施方式的流程图。在本实施方式中,移动节点100从本地网络10漫游至外地网络20时,需维持传输中的通信。
在步骤S900,移动节点100从本地网络10漫游至外地网络20。在步骤S902,移动节点100传送移动注册封包给本地代理20作注册。在步骤S904,本地代理200接收移动注册封包,并经由代理控制模块220通知注册模块240进行注册。在步骤S906,本地代理200传送注册请求封包给服务节点400作注册。在本实施方式中,注册请求封包包括本地地址字段及转交地址字段。本地地址字段设为移动节点100在本地网络10中的IP地址,转交地址字段设为本地代理200的IP地址。在步骤S908,本地代理200从服务节点400接收注册回应封包,确认注册成功。在步骤S910,本地代理200传送移动回应封包给移动节点100,以告知注册成功。在步骤S912,移动节点100从本地代理200接收移动回应封包,确认注册成功。
在图9所示的网络漫游方法中,步骤S904、S906及S908是本地代理200向服务节点400进行注册的方法的流程图,即本发明注册方法一实施方式的流程图。
参阅图10,为本发明网络漫游方法另一实施方式的示意图。在本实施方式与上述实施方式不同之处在于通信节点300是位于外地网络20。当移动节点100从本地网络10漫游至外地网络20时,移动节点100需维持与通信节点300的通信。
首先,移动节点100侦测发生漫游。在本实施方式中,外地代理500定期发送广播通告封包,广播通告封包包括漫游识别码。移动节点100接收外地代理500所发送的广播通告封包,根据广播通告封包的漫游识别码判断移动节点100发生漫游,即侦测到移动节点100从本地网络10漫游至外地网络20。
然后,移动节点100从外地网络20取得转交地址。在本实施方式中,外地网络20可为WLAN,移动节点100听取外地代理500的广播通告封包以取得转交地址,即取得外地代理转交地址。
在其它实施方式中,外地网络20可更包括DHCP Server,移动节点100亦可通过DHCP Server取得转交地址,即取得联合转交地址。
当移动节点100取得转交地址后,移动节点100向本地代理200注册。移动节点100传送移动注册封包给本地代理200作注册。移动注册封包包括本地地址字段及转交地址字段。本地地址字段设为移动节点100在本地网络10中的IP地址,转交地址设为移动节点100所取得的转交地址。在本实施方式中,移动注册封包为MIP_REG封包1000,如图3所示,MIP_REG封包1000包括类型字段1100、有效期字段1300、本地地址字段1400、本地代理字段1500、转交地址字段1600及识别码字段1700。MIP_REG封包1000与上述相同,因此不再赘述。
当本地代理200接收移动节点100所传送的移动注册封包后,本地代理200根据移动注册封包修改移动节点100的绕送封包的信息,即根据移动注册封包更新连结表231。
接着,本地代理200向服务节点400注册。在本实施方式中,本地代理200传送注册请求封包给服务节点400作注册,以告知服务节点400关于移动节点100的漫游情况,并要求服务节点400将移动节点100的封包传送给本地代理200。注册请求封包包括本地地址字段及转交地址字段。本地地址字段设为移动节点100在本地网络10中的IP地址,转交地址字段设为本地代理200的IP地址。
当服务节点400接收到注册请求封包后,会传送注册回应封包给本地代理200。从而,本地代理200向服务节点400注册成功。
在本实施方式中,本地网络10可为3GPP网络,服务节点400可为GGSN。注册请求封包为HIM_REG_REQ封包3000。注册回应封包为HIM_REG_REP封包4000。请再次参阅图5,HIM_REG_REQ封包3000包括类型字段3100、有效期字段3300、本地地址字段3400、转交地址字段3600及识别码字段3700。在本实施方式中,类型字段3100设为1,则封包为HIM_REG_REQ封包。有效期字段3300用于指明封包的有效期。本地地址3400设为移动节点100在本地网络10中的IP地址。转交地址字段3600设为本地代理200的IP地址。识别码字段3700设为封包的识别码。
在其它实施方式中,本地网络10亦可为3GPP2网络,服务节点400亦可为PDSN。注册请求封包亦可为P_P_REG_REQ封包5000。注册回应封包亦可为P_P_REG_REP封包6000。再次参阅图7,P_P_REG_REQ封包5000包括类型字段5100、有效期字段5300、本地地址字段5400、本地代理字段5500、转交地址字段5600及识别码字段5700。在本实施方式中,类型字段5100设为1,则封包为P_P_REG_REQ封包。有效期字段5300用于指明封包的有效期。本地地址5400设为移动节点100在本地网络10中的IP地址。本地代理字段5500设为服务节点400的IP地址。转交地址字段5600设为本地代理200的IP地址。识别码字段5700设为封包的识别码。
当本地代理200向服务节点400注册成功后,本地代理200传送移动回应封包给移动节点100,以告知注册成功。
然后,移动节点100从本地代理200接收移动回应封包,确定注册成功。在本实施方式中,当移动节点100与本地代理200注册成功时,移动节点100根据所取得的转交地址来修改移动节点100绕送封包的信息。
在本实施方式中,当移动节点100向本地代理200注册成功后,通信节点300要传送给移动节点100的数据封包先送到服务节点400,服务节点400再将数据封包转送给本地代理200,再由本地代理200将数据封包转送给移动节点100。移动节点100要传送给通信节点300的数据封包亦先传给本地代理200,再通过本地代理200将数据封包转送给通信节点300。
在另一实施方式中,参阅图11,通信节点300位于本地网络10。故,当移动节点100向本地代理200注册成功后,通信节点300要传送给移动节点100的数据封包先送到服务节点400,服务节点400再将数据封包转送给本地代理200,再由本地代理200将数据封包转送给移动节点100。移动节点100要传送给通信节点300的数据封包亦先传送给本地代理200,再通过本地代理200将数据封包传送给服务节点400。服务节点400再将数据封包转发给通信节点300。