具体实施方式
图1说明了一个根据本发明实现的示例性的接入节点12,例如接入路由器或基站。接入节点12包括天线203、205和分别对应的接收机、发射机电路202、204。接收机电路202包括解码器233,而发射机电路204包括编码器235。电路202、204通过总线230耦合到输入/输出(I/O)接口208、处理器(例如CPU)206和存储器210。输入/输出接口208把接入节点12(例如基站)耦合到互联网。存储器210包括当其由处理器206执行时使接入节点12根据本发明进行操作的例程。存储器包括用于控制接入节点12以执行各种通信操作并实现各种通信协议的通信例程223。存储器210还包括一个接入节点控制例程225,用来控制接入节点12(例如基站)的操作和信令以执行本发明的方法步骤。接入节点控制例程225包括一个调度器模块222,用来控制传输调度和/或通信资源分配。因此,模块222可以用作一个调度器。存储器210还包括一个移动代理模块226,用来处理和发送用于执行本发明的方法步骤的与移动有关的信令。因此,模块226可以用作一个移动IPv4外部代理或一个移动IPv6服务节点(Attendant)。存储器210还包括由通信例程223、控制例程225和移动代理模块226使用的信息212。信息212包括用于每个活动的端节点(分别为EN1、ENn)的条目213、213′,这些条目包括接入节点处的与每个端节点(EN1、ENn)相关联的环境状态243、243′,所述环境状态在端节点切换期间在接入节点之间进行传递,并且包括诸如端节点配置文件、安全关联和端节点组播成员之类的信息。条目213、213′还包括在这个接入节点处分别与所述端节点(EN1、ENn)相关联的MIP访问者列表状态214、214′。特别地,端节点1213的信息包括端节点1213的环境状态243,并且包括在图4中详细示出的MIP访问者列表状态214。
图2说明了一个根据本发明实现的示例性端节点14。端节点14可以被用户用作一个移动终端(MT),或者端节点能够充当用于一个移动终端(MT)的移动节点代理服务器(MNPS)。端节点14包括接收机和发射机天线303、305,当端节点14经由无线链路连接到接入节点12时,天线303、305分别耦合到接收机和发射机电路302、304。接收机电路302包括解码器333,而发射机电路304包括编码器335。接收机和发射机电路302、304通过总线330耦合到存储器310、处理器306和输入/输出(I/O)接口308。当端节点14经由固定链路连接到接入节点时,使用输入/输出接口308。在存储器310中所存储的一个或多个例程的控制之下,处理器306使端节点14根据本发明的方法进行操作。为了控制端节点14的操作,存储器310包括通信例程323和端节点控制例程325。端节点通信例程323用于控制端节点14以执行各种通信操作并实现各种通信协议。端节点控制例程325负责确保端节点根据本发明的方法来操作并执行关于端节点操作和信令所描述的步骤。存储器310还包括MNPS控制例程326。MNPS控制例程326负责确保端节点根据本发明的方法来操作并执行关于MNPS操作和信令所描述的步骤。存储器310还包括用户/装置/应用/会话/资源信息312(其可以被访问并用于实现本发明的方法)和/或用来实现本发明的数据结构。特别地,用户/装置/应用/会话/资源信息312包括图4中详细描述的MIP访问者状态信息313。信息312还包括MNPS状态314,MNPS状态314在端节点为MT时包括MNPS的地址,或者在端节点14为MNPS时包括MT的归属地址,并且还包括相关联的用于确保MT和其MNPS之间的信令安全的安全关联,以及表示是MT还是MNPS目前正从/向端节点14的归属地址接收/发送分组的状态。信息312还包括应用状态315,其描述了应用软件想要对MT 14和MNPS 14采取的行动,从MT 14发送到MNPS14的应用状态,以及发送给归属代理的分类器信息,其中分类器信息描述了哪些分组流指向MT 14和哪些流发送给MT 14的MNPS 14。
图3说明了一个根据本发明实现的示例性归属移动代理节点15。归属移动代理节点15包括总线430,其把输入/输出接口408、处理器(例如CPU)406和存储器410耦合在一起。输入/输出接口408把归属移动代理节点15耦合到互联网。存储器410包括在其由处理器406执行时使归属移动代理节点15根据本发明进行操作的例程。存储器410包括通信例程423,其用于控制移动代理节点15以执行各种通信操作并实现各种通信协议。存储器410还包括移动代理控制例程425,用来控制移动代理节点15的操作和信令以执行本发明的方法步骤。移动代理节点控制例程425包括一个调度器模块422,用来控制传输调度和/或通信资源分配。因此,模块422可以用作一个调度器。存储器410还包括一个移动代理模块426,用来处理和发送用于执行本发明的方法步骤的与移动有关的信令。因此,模块426可以用作一个移动IP归属代理。存储器410还包括由通信例程423、控制例程425和移动代理模块426使用的信息412。信息412包括分别用于每个活动的端节点(EN1、ENn)的条目413、413′。特别地,端节点1的信息413包括如图4中详细所示的访问者列表状态414。端节点N的信息413′包括也如图4中详细示出的访问者列表状态414′。
图4说明了示例的访问者列表状态100,其与给定的诸如端节点14、接入节点(外部代理)12或归属移动代理节点(归属代理)15之类的移动代理相关联,分别实现图2中的列表状态313、图1中的访问者列表状态214、214′和图3中的访问者列表状态414、414′。分别从图1和2的接入节点12和端节点14的角度来看,访问者列表状态100可以包括许多状态条目110、120。
根据本发明,访问者状态100包括用于至少一个MN14的条目,每个条目都包括可适用于这个移动代理的MN归属地址(HoA)112、归属代理(HA)地址115、转交地址(CoA)116、绑定持续时间113、MIP信令标志117和MIP安全状态关联114的状态。当移动代理是归属移动代理时,那么访问者列表状态信息100还包括缺省CoA状态信息110,其包括例如移动节点(MN)或移动终端(MT)的端节点1的缺省CoA 118,该缺省CoA 118在访问者列表不具有归属地址112的有效CoA 116时由归属代理15采用。缺省CoA状态信息110还包括在端节点14和归属代理节点15之间进行MIP信令和转发操作中使用的MIP控制状态119。另外,当移动代理是归属移动代理时,访问者列表状态信息100包括归属地址112的MNPS CoA状态信息120,该状态状态120在访问者列表由端节点1的对应MNPS而不是端节点1(例如MT自己)保存时被归属代理节点15采用。MNPS CoA状态120包括MNPS CoA127,当MNPS正在向归属代理节点15发出MIP注册时,其被用来代替缺省CoA 118或端节点1CoA 116。状态120还包括用于在归属代理处确保这类注册安全的MIP安全状态128,和用于在MNPS 14和归属代理15之间进行MIP信令和转发操作的MIP控制状态129。
图5说明了一个包括根据本发明实现的多个接入节点505、505′、505″在内的示例性系统500。图5还描述了分别围绕每个接入节点505、505′的通信小区501、501′,其表示由分别与端节点对应的接入节点505、505′所采用的无线电技术的覆盖区。相比之下,接入节点505″采用到端节点的固定链路,由此没有采用通信小区,但是它也是网络的一部分。在每个通信小区501、501′和网络中描述了相同的物理和功能单元,因此关于围绕接入节点505的小区501中的单元的下列描述可直接适用于每个小区501、501′以及包括接入节点505″的网络部分。对接入节点505的描述是图1中描述的接入节点12的一个简化表示。为简单起见,接入节点505被示出为包括一个负责用于实现本发明的信令的移动代理模块507。图5说明了接入节点505,其提供了分别经由对应的接入链路506、508到多个N端节点502、504(端节点(MT)1、端节点(MT)N(X))的连接。端节点502、504是图2中描述的端节点14的简化形式。
接入节点505、505′、505″之间的互连通过网络链路510、511、512和一个中间网络节点520提供。图5中的归属网络530经由链路522和节点520连接到系统的其余部分。归属网络530还包括也连接到链路522的网络节点536,以及经由链路538连接到节点536的移动代理节点532,且移动代理节点532操作作为至少端节点N 504的移动代理。图5中的网络540经由链路523和节点520连接到系统的其余部分。为了说明本发明的方法,网络540还包括也连接到链路523的网络节点546,以及经由链路548连接到节点546的通信节点(CN)542,且通信节点(CN)542操作作为与至少端节点N 504的数据会话中的相应节点。接入节点505被认为在通信网络500中支持移动终端(MT),例如经由链路(506、508)提供与端节点(端节点(MT)1502、端节点(MT)N(X)504)的无线通信。类似地,接入节点505′被认为在通信网络500中支持MT,例如经由链路(506′、508′)提供与端节点(端节点(MT)1502′、端节点(MT)N 504′)的无线通信。相比之下,接入节点505″被认为支持到是MNPS的端节点的固定链路,是MNPS的端节点还在通信系统500中进一步支持是MT的端节点。接入节点505″被示出为分别经由固定链路(506″、508″)耦合到端节点(端节点(MNPS)1502″、端节点(MNPS)N(Y)504″)。
图6-8说明了本发明的不同方法的示例实施例。图6-8是图5中的系统的简化形式,其中包括为进一步解释本发明所必需的单元。图6示出了分别包括移动代理模块507、507″的接入节点505、505″,其提供到MT端节点X 504、向MT端节点X 504提供功能的MNPS端节点Y 504″的接入。图6还示出了服务于端节点(MT)X 504和CN节点542的归属移动代理节点532,CN节点542与所述端节点(MT)X 504正在进行通信会话。在图6中,细实箭头描述了内部数据业务,并且箭头方向指向所述数据业务的目的地;粗实线描述了封装的内部数据业务,并且箭头方向指向所述隧道的目的地;虚线描述了用于向外部移动代理507和归属移动代理532注册端节点的信令消息,并且箭头方向指向所述信令的目的地。虚线还用于其它类型的与MIP切换和控制MNPS功能相关联的信令。
图6示出了用于在网络500中操作的本发明的示例性示例的分组转发和信令。虚箭头表示信令消息,而实箭头表示分组流。细实箭头是内部分组,而粗箭头是使用外部报头的封装的内部分组。在图6中,端节点(MT)X 504最初从CN542接收作为分组流616到归属移动代理节点532的分组,节点532把这些分组作为分组流610隧道传送到接入节点505,然后接入节点505中的外部代理507解封装分组610,并将它们作为分组617转发到端节点(MT)X 504。当端节点(MT)X 504希望调用本发明的MNPS功能时,端节点(MT)X 504经由外部代理507向归属移动代理532发送注册请求信号601、602,并且经由消息603和604接收注册应答。注册消息601包括端节点(MT)X 504的归属地址、移动代理节点532的地址、接入节点505的地址、用于端节点(MT)X504的归属地址的端节点X CoA字段、和所请求的注册持续时间。注册消息用来在外地和归属代理507、532中取消归属地址和端节点(MT)X 504的CoA之间的绑定。为了实现它并不失一般性,CoA可以被设置为等于归属地址,和/或持续时间被设定为零或一个很短的时间值。当归属地址和动态CoA之间的动态绑定在归属代理532中被取消或被端节点(MT)X 504代替时,归属代理用绑定中的缺省CoA条目来代替动态CoA条目。缺省CoA或者经由一个管理处理被预先配置到归属代理中并且可以在MN配置文件中从策略服务器进行递送,或者可以通过在这一条或前一条注册消息中包含一个缺省CoA而由端节点(MT)X 504来动态地配置。缺省CoA是永久性的,并且只有当缺省CoA功能不再适用时,例如当归属地址不再被分配给端节点(MT)X 504时,才从归属代理移动节点532上除去它。归属代理532然后把到达端节点(MT)X 504的归属地址的分组隧道传送到端节点(MNPS)Y 504″的缺省CoA,而不是隧道传送到端节点(MT)X 504的动态CoA。图6中的缺省CoA是端节点(MNPS)Y 504″所连接到的代理节点505″的地址。端节点(MNPS)Y 504″是端节点(MT)X 504的MNPS,从而使发给端节点(MT)X 504的归属地址的分组现在被递送给端节点(MNPS)Y 504″,其中端节点(MT)X 504的应用代理位于端节点(MNPS)Y 504″处。在接入节点505″处的转发用端节点(MT)X 504的归属地址和端节点(MNPS)Y 504″之间的绑定来进行预先配置,以便接入节点505″可以解封装来自归属代理532的分组,并将其作为分组617″转发给端节点(MNPS)Y 504″。端节点(MNPS)Y 504″变成要发给端节点(MT)X 504的归属地址的分组617的网络端点,而缺省CoA在归属代理532是有效的。
在又一个实施例中,归属移动代理节点532、外地移动代理507″、端节点(MNPS)Y 504″或在归属代理532和端节点(MNPS)Y 504″之间的分组流路程上的任何中间节点都可以充当一个网络转换器,并且可以把来自端节点(MT)X 504的归属地址的分组流中的分组目的地址转换成端节点(MNPS)Y 504″的接口地址,以便端节点(MNPS)Y 504″应用代理可以避免把端节点(MT)X 504的归属地址重新使用为一个网络地址。
本发明的这些特征使端节点(MT)X 504能够在端节点(MT)X 504及其归属代理532的控制下将其分组重定向到端节点(MNPS)Y504″。
端节点(MNPS)Y 504″接收分组617″,并且开始对该分组和该分组内的应用数据的处理,就像是端节点(MT)X 504一样。端节点(MNPS)Y 504″具有一个匹配于分组617的目的地址的接口,其把分组内包括的应用数据传递到应用代理中的应用软件,该应用代理被配置为处理所述分组数据。分组数据的处理由应用代理配置状态来控制,该状态使在端节点Y(MNPS)504″处的MNPS能够代表端节点(MT)X 504中的MN向CN542提供服务。这些服务包括能够产生应用数据,创建分组,和把所述分组作为进行中的通信会话的一部分发送到CN542,或把所述分组发送到任何其它端节点(包括端节点(MT)X504)。另外,应用代理能够发送和接收信令分组中的信令数据,信令分组可用于创建、保持和终止与CN的通信会话。
通过使用经过外部代理507″和归属代理532的反向路径和相关处理,由端节点(MNPS)Y 504″(代表端节点(MT)X 504)产生的信令或应用数据分组,作为与CN542的会话的一部分,通常返回给CN542。除了归属代理532之外的替换节点具有动态CoA状态的情况下,例如在当采用移动IP路由优化(
http://www.ietf.org/proceedings/ 99nov/I-D/draft-ietf-mobileip-optim-08.txt)时利用CN542的情况下,CN542可以另外具有本发明中描述的缺省CoA状态。
在本发明的又一个实施例中,归属代理532可以具有一个与端节点(MT)X 504的归属地址的缺省CoA相关联的过滤器,当动态CoA不是有效的时,其识别发给该归属地址的、将被转发给缺省CoA的特定分组子集。在端节点(MNPS)Y 504″处的应用代理能够提供用于所述分组子集的应用服务,而无须支持可以被端节点(MT)X 504采用的其它可能的应用。过滤器可以用任何用于缺省CoA的方法来配置或递送。类似地,应用代理配置可以包括过滤器,其限制可以由应用代理从端节点(MT)X 504的源地址、或被转换为端节点(MT)X 504的归属地址的任何相关联的源地址发出的应用分组的类型。此外,作为选择,过滤器可以安装到外部代理507″中,以控制在CN542和端节点(MNPS)Y 504″之间的任一方向中的分组流。
在本发明的又一个实施例中,消息601可以包括接入节点505″的地址和用于触发消息624以及确认622的指令,该指令使与接入节点505处的端节点(MT)X 504相关联的环境状态传送到接入节点505″,以便接入节点505″可以控制并向分组流617″和端节点Y(MNPS)504″提供服务,如服务由接入节点505提供到端节点(MT)X 504和分组617那样。具体的环境状态例子是策略配置文件、寻呼分类器、组播群成员以及接入节点505、505″所需的用于端节点(MT)X 504的安全关联。作为选择,这个环境状态可以经由一个类似的策略处理在接入节点505″中进行预先配置,策略处理例如是用来向接入节点505递送环境状态的AAA信令,和只被用来向那个预先配置的状态传送增加和/或临时变化的消息624。消息624和622还可以用来在接入节点505和505″之间配置一个隧道620,以便使要发往端节点(MT)X 504的分组还可以指向端节点(MNPS)Y 504″。消息618″在消息622/624之后从接入节点505″发送到端节点(MNPS)Y 504″,以通知端节点(MNPS)Y 504″它现在负责往来于端节点(MT)X 504的归属地址的分组。
在向外部代理505发出消息601之前,通过使用端节点(MT)X 504的归属地址作为源地址和使用端节点(MNPS)Y 504″的接口地址作为目的地址,端节点(MT)X 504可以向端节点(MNPS)Y 504″发出消息634。消息634产生一个应答消息632。消息634用来请求端节点(MNPS)Y 504″变成往来于端节点(MT)X 504的归属地址的分组的端点,端节点(MNPS)Y 504″以一个确认消息632对其作出响应。消息634可以包括在端节点(MNPS)504″中的应用代理处对应用配置的修改,例如应用控制或数据状态,以及由端节点(MNPS)Y 504″用来选择分组流617的子集的过滤器状态,应用代理将代表端节点(MT)X 504来处理这个子集。应答消息632可以包括端节点(MNPS)Y 504″所连接到的接入节点505″的地址,以便端节点(MT)X 504可以在到接入节点505的消息601中包括这个地址,因此接入节点505知道用于环境传送的作为消息624一部分的接入节点505″的地址。作为选择,在端节点(MT)X 504处预先已知端节点(MNPS)Y 504″的接口地址及其接入节点505″。消息632和634应该至少被验证并进行完整性保护,以避免分组流的劫持。端节点(MT)X 504和(MNPS)Y 504″因此共享一个安全关联,以保证它们之间的发往端节点(MT)X 504的归属地址和端节点(MNPS)Y 504″的接口地址的消息是安全的。这个安全关联可以被预先配置、由策略服务器提供或动态地产生。端节点(MT)X 504应该在发送消息634之前知道其MNPS端节点Y504″的接口地址,但是端节点(MNPS)Y 504″可以被动态地通知它经由消息的内容634提供应用代理服务的归属地址。
当端节点(MT)X 504希望从端节点(MNPS)Y 504″回收分组流时,端节点(MT)X 504发送和接收消息601、602、603和604,以在其当前的接入节点505、505′处把动态CoA设置到归属代理532和外部代理507中,因此在归属代理532处否决了缺省CoA。在这之前,端节点(MT)X 504可以向端节点(MNPS)Y 504″发送消息634,以请求返回分组流,并在端节点(MNPS)Y 504″中终止应用代理。端节点(MNPS)Y 504″然后可以当它准备就绪时(即应用数据在传送控制的适宜阶段时)用消息632通知端节点(MT)X 504,并且可以向端节点(MT)X 504返回任何相关联的应用控制状态或数据,以便端节点(MT)X 504可以继续应用处理。消息624和622还可以在接入节点505处由消息601触发,以在这一次建立一个回到接入节点505的隧道620″,用于朝向用于端节点(MNPS)Y 504″的接入节点505″的飞行中的分组,以创建分组流620的反向流。消息624和622还可以将来自接入节点505″的包括在接入节点505″处已经发生的任何变化的环境状态恢复回接入节点505。如果端节点(MT)X 504应当离开接入节点505,从而使该接入节点除去与这个端节点(MT)X 504相关联的所述环境状态,则使接入节点505″能够充当一个用于该环境状态的临时存储点。消息618″用来通知端节点(MNPS)Y 504″它不再负责往返于端节点(MT)X 504的归属地址的分组集。
图7示出了本发明的一个替换实施例,其使用归属代理532中的MNPS CoA而不是缺省CoA。这次它是经由外部代理507″把注册信号作为消息601″和602″发送到归属代理532的端节点(MNPS)Y 504″,其中消息601″和602″包括端节点(MT)X 504的归属地址和端节点(MNPS)Y 504″的CoA。这产生了应答消息603″和604″,并伴随着归属代理532中的绑定更新,以将分组从隧道610中重定向到隧道610″中。端节点(MNPS)Y 504″然后能够重定向发给归属地址的分组以远离端节点(MT)X 504。端节点(MNPS)Y 504″和外部代理507″应当共享与归属代理532的安全关联,以保证这些消息安全,从而避免来自未授权节点的重定向攻击。请注意,来自端节点(MNPS)Y 504″的注册没有除去由端节点(MT)X 504自己发出的注册状态,这两者都被独立地对待,但是来自端节点(MNPS)Y 504″的注册状态并且特别是CoA优先于端节点(MT)X 504的注册状态。因此,端节点(MNPS)Y 504″可以在它与网络断开或遭受故障时安全地重定向端节点(MT)X 504的分组流。
这一次,消息601″触发具有应答消息624的消息622。这些消息再一次用来在接入节点505和接入节点505″之间建立临时分组转发620,并用来从接入节点505取出环境状态。类似地,当端节点(MNPS)Y 504不再希望接收用于端节点(MT)X 504的归属地址的分组时,通过取消归属代理532中的MNPS CoA,消息601″、602″、603″、604″、622和624用来把分组流重定向回端节点(MT)X 504及其接入节点505。作为消息622、624的结果,消息618用来通知端节点(MT)X 504它目前是否负责到其归属地址的分组。端节点(MT)X 504可以触发端节点(MNPS)Y 504″发送消息601″,以通过首先发送消息634到再次以消息632作出响应的端节点(MNPS)Y 504″,或接受或释放分组的重定向。作为选择,诸如接入节点505、CN542或归属代理532之类的其它节点可以触发端节点(MNPS)Y 504″用类似于消息634的消息来发出消息601″。
除下述这个事实之外图8与图6相同,即端节点(MNPS)Y 504″的MNPS CoA这次是一个同机配置的(Co-located)CoA,其等于端节点(MNPS)Y 504″的接口地址。重定向的分组流611′因此现在是一个直接在归属代理532和端节点(MNPS)Y 504″之间的隧道,其避免了对需要外部代理功能507″的接入节点505″的需要。另外,飞行中的分组620可以不经由接入节点505″而直接地被发送到端节点(MNPS)Y 504″的CCoA。然而,如果它是如图7中所示发出消息601″的端节点(MNPS)Y 504″而不是图6中的端节点(MT)X 504,并且应该经由接入节点505″发送的注册或飞行中的分组620仍然被发送到接入节点505,则可能仍然需要外部代理507″。
图9示出了在一个特定情况下的缺省CoA功能的替换实施例,在所述情况中,端节点(MNPS)Y 504″在与归属代理532相同的MAC层网络上,其因此还是端节点(MT)X 504的归属网络530′。图9示出了CN542和图5中的网络530的组件之间的联网。图9引入了链路508和506,其被用来把端节点(MT)X 504和端节点(MNPS)Y 504″连接到归属代理532。这些节点运行这样一种协议,其例如在地址解析协议(ARP)或IPv6(ND)中的邻居发现的情况下分配每个接口的MAC层地址及其相关联的IP地址之间的映射。当端节点(MT)X 504不在归属网络530′上而是连接到一个诸如505之类的外部接入节点,并且端节点(MT)X 504在归属代理532中具有一个动态CoA时,归属代理将发送一个具有其MAC层地址和端节点X504的归属地址之间的映射的代理ARP信号902,用于指示发给这个归属地址的分组应该通过MAC层网络上的节点转发给它。归属代理532然后如大的实箭头所示把这些分组隧道传送给当前注册的动态CoA。然而,当端节点X(MT)504仍然在归属网络530′上时,它将把包括其链路508上的MAC层地址的ARP消息915发到MAC层网络上,以便将这类分组920作为替代地转发给它。这个ARP消息915取消了从归属代理532到MAC层网络上的所有其它节点的代理ARP消息902。请注意,归属代理通常不发送消息902。
在本发明的一个示例性实施例中,端节点(MNPS)Y 504″可以例如不失一般性地发出一个代理ARP消息905,以把到端节点(MT)X 504的归属地址的分组重定向为朝向创建分组流910的端节点(MNPS)Y 504″。这在端节点(MNPS)Y 504″在归属网络上的限制情况中再现了MNPS CoA的重定向功能。代理ARP消息-由归属代理532发送的902、由端节点(MT)X 504发送的915、和由端节点(MNPS)Y 504″发送的905,可以用ARP消息中的一个优先级标志来严格地排序,或者作为替代,最后的消息可以被认为是最新的配置,以及由节点使用来识别谁是发给端节点(MT)X 504的归属地址的分组的当前接收者的使用内部优先级的消息抑制系统。通过作为替代地把缺省ARP绑定存储在归属代理532中,缺省CoA性能可以在这种特殊情况中进行再现,归属代理532在端节点(MT)X 504既不在归属网络上又不具有在归属代理532中注册的有效动态CoA时被激活。缺省ARP绑定然后被归属代理进行公告,并识别端节点(MNPS)Y 504″的MAC层地址而不是归属代理532的MAC层地址。
本发明的实施中存在各种替换实施例。首先,接入节点505″可以包括归属代理532而且同时仍然使用缺省和MNPS CoA特征。另外,每个归属地址有可能具有多个MNPS,过滤器用来把分组路由到分组流的每个子集的正确的MNPS功能。所述MNPS中的其中一个还可以位于与归属代理532相同的节点中。另外,MNPS软件可以位于接入节点505″中。本发明可以使用移动IPv4和/或v6信令和转发,其中包含有包括路由优化的各种转发选项。视应用代理对于从端节点(MT)X 504重定向的分组子集的要求而定,本发明中详细描述的各种消息可用于各种子集和集合中。
现在将描述应用代理特征的一些例子。
首先,缺省CoA可用于把所有到一个分配的归属地址的分组朝着一个通过简单地捕获分组报头来充当差错记录器的应用代理进行重定向,其中分配的归属地址不具有在归属代理532中注册的动态CoA。
其次,可以支持一个扩展的IP寻呼系统,由此端节点(MT)X 504可以在接入节点505处进入睡眠,并且分组可以被重定向到接入节点505″,在端节点(MT)X 504的环境状态内包括一个寻呼分类器。寻呼分类器可以决定分组是被丢掉、被转发给MNPS还是触发一个到端节点(MT)X 504的当前位置的寻呼消息,所述位置可由接入节点505″访问。转发给端节点(MNPS)Y 504″的分组在MNPS中进行处理,并且应用事件然后可以触发消息601″以在其当前位置将分组转发返回给端节点(MT)X 504,使用消息602″在归属代理532中将该位置设置为CoA。作为选择,MNPS可以简单地向端节点X504发送将被传递到接入节点505″的消息632,并且消息632然后将在这个接入节点处触发朝着端节点(MT)X 504的当前位置的寻呼功能。寻呼功能的潜在结果是端节点(MT)X 504将醒来并希望恢复其分组接收和转发。因此,它将使用消息601来更新具有其当前CoA的归属代理,触发622/624以从接入节点505″中恢复其环境状态,并使用消息634和622从MNPS中恢复其应用状态。
当端节点(MT)X 504处于睡眠状态中时,MNPS可以在CN处发出用于任何需要保活(keep-alive)来保持会话的应用和协议的保活分组。如果会话终止或者到来的数据分组在那个会话上到达,则消息634/632交换以及预先配置的应用代理状态由端节点(MT)X 504用来向MNPS通知将被刷新的会话、刷新间隔、用来保证保活信令安全的任何安全状态、保活对等体和响应行为。这使端节点X(MT)504能够进入到功率有效的延长睡眠而不失去与应用服务器和网络网关的连接。
在本发明的第三应用中,可以开发一个内容分配系统,由此端节点(MT)X 504可以命令递送内容块,但是用归属代理532中的过滤器使其递送定向到端节点(MNPS)Y 504″中的MNPS。当该内容已经被全部递送时,MNPS中的应用代理状态然后可以将一个消息定向到端节点(MT)X 504,或者简单地等待端节点(MT)X 504查询其递送状态。端节点(MT)X 504或端节点(MNPS)Y 504″然后可以使用本发明的方法将分组定向回端节点(MT)X 504,并且端节点(MNPS)Y 504″然后可以把内容递送到端节点(MT)X 504。这使端节点X(MT)504或者能够进入睡眠状态或者为了其它目的而使用其带宽,同时内容被递送给端节点(MNPS)Y 504″,并且然后当它最适合这个端节点(MT)X 504时请求递送。
在一个替换的内容分配系统中,端节点(MNPS)Y 504″可以充当一个用于来自端节点(MT)X 504的内容的内容服务器。端节点(MT)X 504然后可以醒来并有效地向端节点(MNPS)Y 504″递送内容更新,同时使用过滤器把内容请求定向到端节点(MNPS)Y 504″处的内容服务器。这避免了端节点(MT)X 504不得不公开其来自自己或固定节点的内容,从而确保该内容在本地被服务。它还意味着不管端节点(MT)X 504或端节点(MNPS)Y 504″是否事实上服务于该内容,服务器地址都是相同的,因此使端节点(MT)X 504能够在其这样希望的部分或全部时间内服务于一个流子集。消息634/632使端节点应用保持同步,而消息601、602、603、604、622、624和618管理分组转发。
图10说明了一个根据本发明的特定示例性实施例的示例性通信系统1000。系统1000包括例如移动节点1001的第一节点、例如可用作MIP外部代理的接入节点1003的第二节点、例如可以是MIP归属代理的区域移动代理节点1005的第三节点、例如是有时被称为通信节点的通信对等节点1007的第四节点、例如网络节点1009的第五节点和例如接入节点1011的第六节点。移动节点(MN)1001经由无线链路1013耦合到接入节点1003。网络节点1009经由链路1017耦合到接入节点1011。归属代理或区域移动代理节点1005包括在路由系统1019中。归属代理或区域移动代理节点1005分别经由链路1023、1025、1027耦合到接入节点1003、接入节点1011和通信对等节点1007。接入节点1003、1011通常是路由系统1019的一部分。例如接入节点1003的第二节点具有一个定义的路由,例如一个由内部存储器内包括的路由表来定义的路由,其用来向所述移动节点1001转发具有对应于所述移动节点1001的CoA的分组。例如接入节点1011的第六节点具有一个定义的路由,例如由内部存储器内包括的路由表来定义的路由,当MNPS负责处理与MN 1001和MNPS 1009共用的共享地址对应的应用分组时,其被用来向所述第五节点1009、即移动节点代理服务器(MNPS)转发具有对应于所述移动节点1001的CoA的分组。不同的节点可以位于不同的编址域(addressing domain)中,与所述不同的域相关联的地址包括用来区别不同编址域的不同地址前缀。系统1000包括至少两个编址域,但是也可以包括更多的(例如3个)编址域。归属移动代理节点1005通常位于一个与FA节点(例如第二节点1003)不同的域中,并且FA节点1003通常位于与区域移动代理1005相同的域中。其它节点1011、1009可以在与FA节点1003或归属代理1005相同的域中,或者一起位于一个不同的域、例如第三编址域中,该第三编址域由与位于第三编址域中的节点相对应的地址中包括的第三前缀标识。
MN 1001包括应用状态1029、应用例程1031(包括基于IP的通信应用1033和第二应用1035)以及共享地址1037。接入节点1003包括移动代理1039和封装/解封装转发例程1041。接入节点1003可以是一个由MN 1001所使用的基站或接入路由器。当MN 1001处于接入节点1003所位于的外部域中时,移动代理1039可以充当MN 1001的外部代理(FA)。归属代理或区域移动代理节点1005包括绑定表1043和封装/解封装转发例程1045。持续时间信息可以与地址绑定信息一起包括在绑定表1043内。节点1005可以充当MN 1001的归属代理(HA)。通信对等节点1007包括例如软件应用之类的应用例程1047,软件应用包括基于IP的通信应用(第一应用)1049和第二应用1051。第四节点1007是在涉及第一应用1033的示例性通信会话中与MN 1001所对应的通信节点(CN)。网络节点1009在MN 1001不可用的至少一些时段期间操作作为一个应用代理,以继续与第一应用进行交互,并且它可以是一个移动节点代理服务器(MNPS)。作为充当应用代理的一部分,MNPS1009接收与具有对应于MN 1001的目的地址的应用流相对应的分组,并处理接收到的分组。处理可以包括从两个接收到的分组主体中产生至少一个分组,以及把产生的分组发送到CN 1007。节点的不可利用性可以是MN 1001的判断结果,例如,为了进入睡眠状态,或者由于在MN 1003的控制之外的事件,例如由于干扰而引起的信号丢失。当节点1009充当一个MNPS时,节点1009可以代替MN 1001与CN 1007通信。为了在MN 1001和MNPS 1009之间传递应用处理和控制,在MN1001和MNPS 1009之间进行交换应用状态、例如与应用处理的当前状态有关的信息和/或从CN 1007接收到的分组的处理结果。这可能涉及把应用处理切换给MNPS 1009,以及然后把应用职责连同表示MNPS1009停止应用处理的状态一起交还给MN 1001。在不同的时间,对于不同应用的职责可以在MN 1001和MNPS 1009之间进行切换。发送到路由系统1019的路由控制信号用来确保:对应于一个应用的分组流在任何给定时间点都被路由到负责处理对应于该特定应用的分组的MN或MNPS。因此,对应于不同MN应用1033、1035的不同分组流可以被路由系统1019分类并路由到不同的节点。事实上,当MN不可用时,不同的MNPS节点1009可用来代表MN 1001支持不同的应用。另外,虽然MN对于一个应用来说可能是不可用的,但是它可以继续处理与另一个应用有关的分组。因此,对于MN正在使用的应用1033、1035的一个或多个子集的职责可以在不同的时间点切换给MNPS 1009。对于是MN 1001还是MNPS 1009正在接收和处理对应于一个特定应用的分组,不必向通信节点1007进行通知,并且通信节点可以在假定对于一个特定应用它总是与MN 1001进行交互的情况下继续操作。如下所述,与重定向对应于一个和MN 1001相关联的特定应用的分组有关的、发往路由系统1019的信号,要么从MN 1001要么从MNPS 1009发送给RS1019。这些信号通常包括一个路由标识符,其标识应用分组将被发往的节点1001或1009。在某些情况下,路由标识符标识一个例如FA1003的中间节点,其具有一个已确定的、到应用分组将被发往的节点的路由。在此情况下,所标识的接收了要发给MN或MNPS的分组的中间节点,向目的地节点转发分组,该目的地节点例如是与之具有路由关系的MN或MNPS。这个关系通常反映在用来把分组路由到MN或MNPS的绑定表中,其被包括在中间节点1003或10011中。例如,发送到RS1019的路由标识符可以是一个对应于MN或MNPS的地址,或者是一个地址和诸如用来影响RS1019做出的路由判断的加权之类的其它路由选择信息的组合。路由标识符还可以选择性地包括诸如分组分类器之类的附加信息,用来使路由系统能够在CN 1007处检测到属于第一或第二应用1049、1051的分组,并且用来使第一和第二应用分组指向不同的节点1001、1009。当分组分类器没有包括在路由标识符中时,路由系统把第一分组流1069中的所有分组都重定向到路由标识符中所标识的节点。
节点1009包括应用状态1053、应用代理例程1055、和共享地址1037,其中应用代理例程1055包括一个对应于第一应用1057的基于IP的通信应用代理例程和对应于第二个所支持应用的第二应用代理例程1059。共享地址1037对应于MN 1001和网络节点(MNPS)1009。接入节点1011包括移动代理1061和封装/解封装转发例程1063。接入节点1011把网络节点1009耦合到系统1000的其余部分。
在系统操作期间,根据本发明,MN 1001或网络节点(MNPS)1009向路由系统1019及其节点1005发送第一消息1065。图10示出了消息1065正由网络节点(MNPS)1009发送。第一消息1065包括路由标识符1067。路由标识符1067唯一地标识在下述节点组中的一个节点,所述节点组包括MN 1001、网络节点(MNPS)1009、和一个具有已定义的到诸如第二节点1003和第六节点1011之类的MN 1001或MNPS1009的路由的节点。路由系统1019把来自CN 1007的第一分组流1069(例如对应于第一应用的分组流)定向到MN 1001或网络节点(MNPS)1009。分组流1069中的至少某些分组对应于第一应用分组1071。由路由标识符标识的节点,例如MN 1001或网络节点(MNPS)1009中的一个,在任何给定的时间点接收第一分组流1069。该分组流指向在任何给定的时间点负责应用处理和与CN 1007进行交互的节点1001或1009。例如,在第一时段期间,第一分组流1069可以包括从CN1007到归属代理移动节点1005的第一分组流1069a、从归属代理移动节点1005到接入节点1003的第一分组流1069b、和从接入节点1003到MN1001的第一分组流1069c。作为选择,例如,在第二时段期间,第一分组流1069包括:从CN 1007到归属代理移动节点1005的第一分组流1069a、从归属代理移动节点1005到接入节点1011的备用第一分组流1069d、和从接入节点1011到网络节点(MNPS)1009的备用第一分组流1069e。
在MN 1001接收到第一分组流1069c的情况下,基于IP的通信应用例程1033处理接收到的分组,并且作为所述应用处理的结果产生包括应用数据1071的附加分组,并且把附加分组流1073中的分组发送到CN 1007。附加的分组流1073包括:从MN 1001到接入节点1003的附加分组流1073a、从接入节点1003到归属代理移动节点1005的附加分组流1073b、和从归属代理移动节点1005到CN 1007的附加分组流1073c。类似地,在网络节点(MNPS)1009接收到备用第一分组流1069e的情况下,基于IP的通信应用代理例程1057处理接收到的分组,并且作为所述代理应用处理的结果产生附加分组,然后发送附加分组流1073中的分组,该附加分组流1073包括:从网络节点(MNPS)1009到接入节点1011的备用附加分组流1073d、从接入节点1011到归属代理移动节点1005的备用附加分组流1073e、从归属代理移动节点1005到CN 1007的附加分组流1073c。
根据本发明的一个实施例,在发送第一消息1065之前,将转移(transfer)消息1075从MN 1001发送到网络节点(MNPS)1009。这个消息1075用来将用于处理发自CN 1007的应用分组的职责从第一节点1001或第五节点1009转移到第一和第五节点中的、在转移消息1075时不负责应用处理的那一个节点。转移消息1075可以包括路由标识符,其标识接管应用处理职责的节点。网络节点(MNPS)1009通过发送包括所述路由标识符的第一消息1065来对转移消息作出响应。从MN1001到网络节点(MNPS)1009的附加消息1077,定义了MN 1001对应用代理、网络节点(MNPS)1009进行分组处理的要求,并且在所述MNPS 1009从所述移动节点1001接管应用处理职责时进行传输。状态信息、例如MN应用状态1029还包括在消息1077中,并且可以传递到MNPS应用状态1053中。这使得MNPS可以从MN 1001把应用处理职责转移到MNPS 1009的那一点起继续应用处理。从网络节点(MNPS)10093到MN 1001的处理结果/状态消息1079,向MN 1001返回从应用代理、网络节点(MNPS)1009的分组处理中导出的信息。返回的信息可以包括一个例如应用数据分组的分组,该分组通过处理对应于MNPS 1009所接收到的第一分组流的至少两个分组的主体而产生。这条消息在应用处理职责正返回给移动节点1001时进行发送,从而允许移动节点从MNPS 1009中止负责应用处理的那一点起继续应用处理。
第二应用通过第二应用例程1051由CN 1007支持。第二应用通过使用第二应用例程1035由MN 1001支持,并且通过使用第二应用代理例程1059由网络节点(MNPS)1009支持。包括第二应用分组1083的第二应用分组流1081如图10中所示,包括:从CN 1007到归属代理移动节点1005的第二应用分组流1081a、从归属代理移动节点1005到接入节点1003的第二应用分组流1081b、和从接入节点1003到MN 1001的第二应用分组流108Ic。作为选择,分组流可以在不同的时间指向网络节点(MNPS)1009而不是MN 1001。相关联的消息、信令、返回的分组流和替换的分组流与关于第一应用所描述的那些类似或者相同,并且对于第二应用,为了简洁起见将不再重复描述。因此,路由系统能够充当一个过滤器,用于向MN代理1009发送对应于一个MN应用的应用分组,同时仍然向移动节点1001发送对应于第二MN应用的应用分组。应该理解,移动节点的可用性对于MN可同时支持的不同应用来说可以是不同的。因此,在不同的实施例中,第一消息表示与一个特定独立应用或在该消息中所标识的应用相对应的分组是否将被重定向到所标识的节点,或者对应于MN 1001可支持的所有应用的分组是否将被重定向到例如MNPS 1009。因此,尽管具有对应于CN地址的源地址和对应于第一和第五节点1001、1009的共享地址的目的地址,但是对应于不同应用的分组也可能由于路由系统的原因而对应于不同的分组流。
在另一个实施例中,第三节点1005、第五节点1009和第六节点1011在相同的网络上,因此共享MAC层连接。请注意,第三节点和第六节点在这种情况下可以是相同的节点,其包括归属和外部移动代理。第五节点可以发出第一消息1065,其包括是第五节点的MAC层地址的路由标识符1067。它作为用于第一分组流的当前的MAC层CoA输入到第三节点中的绑定表1043中,从而使分组经由第五节点的MAC层地址转发给第五节点。此外,这个MAC层CoA还可以作为一个缺省MAC层CoA存储在绑定表1043中,从而当指向第一节点的第二地址(CoA)的绑定表条目的持续时间在第二节点处期满时,在第三节点中分组经由MAC层转发自动地转移到第五节点。当第一节点返回到包括第三、第五和第六节点的网络中时,第一节点可以发出一个具有等于其MAC地址的路由标识符1067的第一消息1065,由于这类消息的广播特性,该消息由第三、第五和第六节点接收,从而使得第五节点停止刷新其绑定表中的用于第一分组流的MAC地址。这个新的MAC层CoA取代了之前由第五节点发出的MAC层CoA,并且因此第一分组流将指向第一节点。
根据本发明,分配给不同节点的地址可以位于相同或不同的编址域中。在某些实施例中,分配给第一、第三和第五节点的地址在第一编址域中。在这种情况下,MN 1001的归属地址来自于与第三节点的地址相同的地址前缀,并且与第五节点共享。与第五或第六节点相关联的第五地址通常在第二编址域中(例如,MNPS 1009的CoA地址通常来自与接入路由器的地址相同的地址前缀)。第二节点和对应于第二节点的第二地址可以在又一个编址域中,例如在第三编址域中。这可能是因为MN 1001移动到外部子网上,并且第二地址是MN 1001的CoA。在不同的实施例中,第一、第二和第三编址域对应于至少两个不同的编址域。在其它情况下,第一、第二和第三地址在三个不同的编址域中。在另外的又一些实施例中,第一、第二和第三地址全部都在同一编址域中。因此,本发明顾及了地址、从而节点在相同或不同编址域中的多种可能性。如果域内使用的地址包含具有相同前缀长度的不同地址前缀,即该组N个地址最高有效位不同,则编址域是不同的。因此,具有长度为N的相同前缀的地址被确定为在相同的域中,其中,N表示前缀长度,并且因此表示用来区分不同域的比特数。在不同的实施例中,第一、第二和第三编址域中的至少一个不同于所述第一、第二和第三编址域中的另一个,对应于不同域的地址包括不同的地址前缀。在其中一个这类实施例中,所述第一和第三编址域是相同的,而所述第二编址域不同于所述第一和第二编址域。在另一个这类实施例中,第二和第三编址域是相同的,而所述第一编址域不同于所述第一和第二编址域。一个或多个地址可以与每个节点相关联,相关联的地址具有节点所位于的编址域的地址前缀。
本发明的各个特征可以设计为:在第一节点处于睡眠状态、或者不存在以及发往第一节点的到来分组不能到达时,不仅可以通过触发网络寻呼的分组到达第二节点,而且可以通过在一个在第一节点不存在的情况下替其处理分组的应用代理模块处产生应用事件,使得第一节点是可寻呼的。这允许更复杂的寻呼,由此第一节点能够进入睡眠,并通知应用代理完成一个任务或检测一个应用事件,并且然后在任务完成或事件发生时寻呼第一节点。然后,当已经递送了文件或者来自特定人的话音呼叫到达时,能够产生寻呼,而不是通过为递送该文件或任何呼入话音呼叫而作出贡献的每个分组实现。为了允许快速寻呼和产生连接,例如为了立即响应于呼叫请求,寻呼机制能够把参数递送到第一和第三节点,以及设置用于第一节点的重定向转发,而不是依赖于在完成寻呼之后来自第一节点的例程消息。这允许寻呼和路由更新、以及地址和移动代理动态分配并行进行。
图11示出了例图1000,其说明了在一个根据本发明的示例性系统中的示例性节点、分组流和寻呼信令。虽然图11和12示出了从CN114到MN 1102的通信,但是应当理解,分组和消息也可以从MN传到CN1114。图11示出了第一节点,例如诸如移动节点(MN)1102之类的端节点,其经由无线链路1106耦合到第三节点、例如接入节点(AN)1104,所述接入节点1104包括与MN 1102(第一节点)相关联的配置文件状态1108,其控制一般由MN 1102执行的什么通信会话能够由应用代理模块1138或1138′执行。应用代理模块1138可以位于第二节点、例如区域移动代理(RMA)节点1110处。应用代理模块1138′可以位于第四节点、例如应用代理节点、移动节点代理服务器(MNPS)1140处。RMA节点1110经由网络链路1112耦合到AN 1104。例如通信节点(CN)1114的一个对等节点耦合到RMA节点1110。CN 1114可以是在通信会话中与MN 1102通信的另一个MN。图11还包括一个经由链路1162耦合到RMA节点1110的寻呼策略服务器1160。寻呼策略服务器1160可以向应用代理模块1138、1138′发送表示寻呼触发事件的信息。RMA节点1110包括一个其自身具有包括转发表1152的转发模块1122的移动代理模块1120,包括第一寻呼信息1125的第一寻呼模块1124,包括第二寻呼信息1127的第二寻呼模块1126,网络寻呼例程1128以及位置例程1130。图11中的分组流用粗实线箭头示出,而信令用粗虚线箭头示出。转发模块1122将从对等节点、即CN 1114接收的、要发给MN 1102的分组1150,作为分组1150A(经由AN 1104)指向MN 1102,或者分别作为分组1150C、1150D指向第一和第二寻呼模块1124、1126。将发送给第一和第二寻呼模块1124、1126的分组1150C、1150D分别与第一寻呼信息1125、第二寻呼信息1127进行比较(匹配于寻呼状态或按寻呼状态分类),以确定随后的分组处理。
如果(一个或多个)分组1150C与第一寻呼信息1125匹配,则(一个或多个)分组1150E将触发网络寻呼例程1128,以向MN 1102的当前位置发送第一寻呼消息1170。在图11的例子中,这个当前位置是使MN1102耦合到AN 1104。作为选择,MN 1102当前可以位于不同的地方,以使MN 1102耦合到系统中的任何类似的接入节点。在假定分组是可触发由第一寻呼信息1125中的匹配条目所标识的寻呼的分组类型时,第一寻呼消息1170可以直接发送到MN 1102的地址或AN 1104的地址,并且在任何一种情况下,第一寻呼消息1170都包括用于寻呼MN 1102的指令。通过直接地或间接地查询位置服务器1132,MN 1102的位置可由网络寻呼例程1128确定,其中位置服务器1132如图11中所示可以在是RMA节点1110、或者经由链路1136耦合到RMA节点1110的另一个节点1134中。响应于网络寻呼例程1128的查询,位置例程1130可以与位置服务器1132交换信令1135,以获得MN 1102(第一节点)的位置状态信息1133。网络寻呼例程1128可以采用不同的技术经由其当前位置联系MN 1102,并且由于用于MN 1102的分组的可用性使MN1102变成是可到达的。第一寻呼模块1124确保,当对于MN 1102来说十分重要的分组到达RMA节点1110时,执行联系MN 1102的尝试。第一寻呼消息1170可以包括第一寻呼信息1125中的条目的信息,并且由此包括触发对MN 1102进行寻呼的已接收分组的特性。第一寻呼消息1170信息还可以包括MN(第一节点)配置文件状态1108向AN 1104的递送,以便AN 1104可以联系MN 1102(标识符、IP地址、寻呼时隙、安全关联),然后可以依据其通信控制MN 1102的活动。第一寻呼消息1170信息还可以包括动态分配的地址和移动代理状态,它们的分配经由第一寻呼信息1125由寻呼触发来进行触发。作为选择,第一寻呼消息1170可以包括这样的信息(例如,策略服务器地址和MN 1102标识符),所述信息使MN 1102和AN 1104能够获得配置文件状态1108并且能够动态地分配参数。第一寻呼消息1170由MN 1102或由AN 1104代表MN 1102进行应答,以便网络寻呼例程1128确定寻呼消息的结果。一个这样的结果是MN 1102变成是可到达的,从而使发给MN 1102的分组(包括最初经由第一寻呼模块1124路由的分组)现在由转发模块1122使用转发表1152在分组1150A、1150B中经由AN 1104转发到MN1102。转发表1152中的变化可以用下述的很多方法来产生。
如果(一个或多个)分组1150D与第二寻呼信息1127匹配,则将(一个或多个)分组1150D作为分组1150F转发到应用代理模块1138或1138′,该应用代理模块1138或1138′可以在RMA节点1110中,或者可以在第四节点中,例如如图11中所示的经由链路1142耦合到RMA节点1110的应用代理节点、即移动节点代理服务器(MNPS)1140中。具体来说,RMA节点1110可以包括第二寻呼信息1127中的条目,该信息1127把分组1150D指向大量的本地和远程应用代理模块1138、1138′。应用代理模块1138、1138′包括一个应用事件和相关联的寻呼动作表1144、1144′,一个应用寻呼例程1146、1146′,以及(一个或多个)MN代理应用1147、1147′。应用代理模块1138、1138′可以在(一个或多个)MN代理应用1147、1147′的控制下,代表MN 1102处理所接收的与第二寻呼信息1127匹配的分组1150F的净荷,所述净荷包括应用数据,所述处理产生应用数据和附加的送出分组,这些分组指回对等节点、CN 1114,指向MN 1102或指向替换的对等节点。(一个或多个)MN代理应用1147、1147′可以包括例如通信应用、数据处理应用、文件下载通信应用、电子表格应用和解码器应用。所述分组、分组净荷和应用数据的处理产生应用事件,将应用事件与这类和MN 1102相关联的事件的表1144、1144′进行比较。当这些应用事件(例如,文件下载完成或用于MN 1102的新邮件消息的可用性指示)发生时,触发相关联的应用寻呼事件。一个这样的寻呼事件是向网络寻呼例程1128发送第二寻呼消息1172以触发第一寻呼消息1170,以便可以在转发表1152中重建与MN 1102的网络可达性。作为选择,应用寻呼例程1146、1146′可以直接向由位置信息1133指示的MN 1102的当前位置发送第二寻呼消息1172A,所述第二寻呼消息1172A与第一寻呼消息1170的不同之处在于,应用事件和相关联的应用状态可以在寻呼消息1172A中递送到AN 1104和/或MN 1102。这向MN 1102给出了关于为什么它正在被寻呼和它是否应该醒来的更精确的信息,然后MN 1102可以用对应用代理1138、1138′的进一步指示来响应于该寻呼并且然后回到睡眠状态。然而,第二寻呼消息1172A还可以包括MN配置文件状态1108(或触发它以便由AN 1104来取得)和动态分配的参数,如关于第一寻呼消息1170信息所述的那样。
图12、即例图1200说明了为网络或应用层寻呼做出准备、或响应于网络或应用层寻呼而采用的信令。如图11中包括和先前描述的那样,图12包括相同或类似的节点MN 1102(第一节点)、AN 1104(第二节点)、RMA节点1110(第三节点)、MNPS 1140、位置服务器1134和CN 1114。第一路由消息1202通过在MN 1102处接收到一个寻呼而触发,并且典型地可以是一个把MN 1102的CoA设置到移动代理模块1120中的MIP注册请求或绑定更新,以便使分组被重定向到MN 1102并且离开寻呼模块1124、1126。当MN 1102将要进入睡眠状态时,要么从MN 1102要么从AN 1104发送第二路由信息消息1204,并且向第一寻呼信息1125中设置条目,所以在假定有到达分组时,可以确定何时对MN 1102进行寻呼。响应消息提供了设置结果。具体地说,第一寻呼信息1125可以包括在MN配置文件状态1108中,以便第二路由消息1204把MN 1102配置文件状态1108移动到第一寻呼信息1125中,并且第一或第二寻呼消息1170、1172(A)在触发寻呼时将其返回到AN1104。第三路由消息1206从MN 1102或AN 1104发送到应用事件和寻呼表1144、1144′,以定义应该处理哪些事件和相关联的寻呼处理。应用代理模块1138、1138′然后用第四路由消息1208把第二寻呼信息1127设置到移动代理模块1120中,以便将正确类型的分组转发给应用代理模块1138、1138′用于进行处理。移动模块1120对应用代理模块1138、1138′进行应答,而应用代理模块1138、1138′对发起第三路由消息1206的MN 1102或AN 1104进行应答。第五路由消息1210或者由网络寻呼例程1128或者由应用寻呼例程1146、1146′用来更新转发表1152,以重定向到/来自MN 1102的分组,并由此重定向来自/到第一和第二寻呼模块1124、1126的分组。当在寻呼例程1128接收到对寻呼序列的请求时,但是在发送第一和/或第二寻呼消息1170、1172(A)之前,第五消息1210可以例如由任一寻呼例程1128触发。作为选择,在发送第一和/或第二寻呼消息1170、1172(A)之后,在从AN 1104或MN 1102接收到寻呼响应时,可以触发第五路由消息1210。最后,第五路由消息1210可以通过在移动代理模决1120或应用代理模块1138、1138′处分别接收到第二、第三或第四路由消息1204、1206或1208而触发。
第六路由消息1212是位置更新消息,按照在系统中每个接入节点处唯一的AN 1104的IP地址或其它标识符,其从MN 1102或AN 1104发送到位置服务器1132以更新MN 1102的位置状态1133。这使得寻呼消息能够在MN 1102未被编址或不能到达时被发送到AN 1104。寻呼消息还可以直接发送到MN 1102的地址,但是由于在RMA节点1110(其作为替代地将分组指向第一和第二寻呼模块1124、1126)中不存在路由,所以它经由AN 1104转发(即,以隧道方式传到AN 1104)。位置信息1133可以包括诸如SIP URI之类的应用标识符,以便应用路由而不是IP路由可用于到达AN 1104并然后到达MN 1102。
当MN 1102或AN 1104代表MN 1102发送揭示了位置变化的路由信号时,第六路由消息1212还可以由第一、第四和第五路由消息1202、1208和1210产生(为简单起见未示出),以间接地更新MN 1102的位置。
下面将参考一个特定的示例性实施例和图14-17所示的处理步骤的相应流程,描述根据本发明的方法执行的示例性处理,该实施例和流程结合起来示出了示例性方法1700的步骤。应当理解,步骤的顺序和/或执行特定步骤的节点的顺序可以有很多变化,示例性流程图示出了一种可能的实施方式。
方法1400从1402开始,其后是初始化步骤1404。在初始化步骤1404中,对各个网络单元(例如移动节点、应用代理模块、移动代理模块等)进行初始化。操作从步骤1404进行到可以并行执行的步骤1406和1410。在步骤1406中,移动节点、用作移动节点的网络连接点的接入节点和/或寻呼策略服务器被操作用来把第一寻呼触发事件信息传递到移动代理,并且在某些情况下还把第二寻呼触发事件信息传递到应用代理。第一寻呼触发事件信息可以包括例如分组报头信息和/或其它用来基于所接收分组的内容判断是否寻呼该移动节点的信息。这类网络寻呼信息通常不包含分组净荷,但是在某些情况下可以包含分组净荷。与第一寻呼信息不同,第二寻呼信息是应用事件寻呼信息。这个信息表示一个或多个应当触发一个寻呼操作的应用事件,例如应用处理结果。用来触发寻呼操作的应用事件经常是包括应用信息或数据的多个分组净荷的处理结果。应用事件的例子包括成功下载对应于特定通信应用(例如网络浏览器)的完整文件、解码对应于已下载文件的数据、和/或完成对应于一个应用的某一或某些计算。可以触发一个应用寻呼事件的完成计算的例子包括:用在多个分组中接收到的数据完成对应于电子表格的计算,用在多个分组中接收到的数据完成科学计算。在移动节点不希望在代表它完成了一定程度的处理之前被寻呼的情况下,例如当应用处理在代理应用服务器处已经进行到了移动节点希望继续直接控制应用处理的那一点时,这类应用触发事件的使用是特别有利的。
操作从步骤1406进行到步骤1408,其中,应用代理、例如MN应用代理被操作用来接收和存储寻呼触发事件信息,例如步骤1406中所传递的信息。操作从步骤1408进行到步骤1406操作,以说明寻呼触发信息可以在不同的时间点发送,例如按照需要进行发送,以便实现期望的应用代理和寻呼操作。
在步骤1410中,移动节点被操作用来执行一个或多个应用,例如一个用于与对等节点通信的通信应用、和一个或多个用于处理从对等节点接收到的分组内容(例如净荷)的应用。执行的应用可以包括例如文件下载应用、用来解码所接收数据的解码器应用、电子表格应用和/或用在一个或多个分组中从对等节点接收到的信息和/或数据来执行计算的另一个应用。
作为在步骤1410中执行一个或多个应用的处理的一部分,移动节点可以开始从对等节点下载文件或其它数据。步骤1412表示这样的一个示例性操作。在步骤1412中,移动节点通信应用开始从对等节点下载文件并处理已下载的文件信息(例如在分组中从对等节点传送到移动节点的已下载文件的信息、数据或部分)。
在步骤1414中,移动节点和/或用作移动节点的网络连接点的接入节点向应用代理发信号通知它应当接管移动节点的应用处理。这类信令可以例如在进入睡眠状态之前由移动节点开始,或者响应于检测到移动节点不可用来继续与对等节点进行交互而由接入节点开始。作为到应用代理的信令的一部分,将移动节点停止应用处理时的状态信息、和/或一个或多个将触发继续处理的应用事件传送到应用代理。另外,通过使用移动节点和应用代理之间的安全关联,用来确保对等节点和移动节点之间的通信安全的共享的保密数据、安全关联信息可以传送到应用代理。这个安全通信可以是用来加密/解密在移动节点和对等节点之间传送的信息的另一个共享保密数据。在本发明的某些实施例中,无须并且没有向对等节点通知把安全关联信息传送到应用代理,这使得即使在对等节点和移动节点之间存在端到端的安全关联时,在这种情况下到应用代理的处理切换对于对等节点来说是透明的。
操作从步骤1416进行到步骤1422。在步骤1422中,移动节点或用作移动节点的网络连接点的接入节点把分组过滤和重定向信息发送到移动节点的移动代理。这个信息用来使移动代理把具有对应于所述移动节点的目的地址的分组、以及已经向应用代理给出了其处理职责的特定应用(一个或多个)重定向到应用代理。该信息可以使具有对应于移动节点的目的地址的某些或全部分组被重定向到应用代理。然而,重定向对应于一个或几个选定的应用的分组是可能的。在此情况下,指向所述移动节点的不同分组流可以被不同地对待,一些分组被重定向到移动节点应用代理,而其它分组则经受其它的处理,例如基于分组内容进行过滤以确定MN是否应该被寻呼。
在步骤1424中,移动节点被操作用来进入睡眠状态。这是在把应用处理职责转移到移动节点应用代理之后的示例性的移动节点操作。当如步骤1426中所示在睡眠状态中时,移动节点周期性地监视寻呼消息。这类寻呼消息的接收可以使移动节点转换到更活动的状态(例如一个接通状态)以及继续应用处理和与对等节点的交互。操作经由连接节点1430从步骤1426进行到步骤1432。
在步骤1432中,移动代理被操作用来接收包括对应于所述移动节点的目的地址的分组。这是在对等节点和移动节点之间进行分组通信的一般处理的一部分。通常,移动代理使这类分组指向移动节点。然而,根据本发明,分组也可以由移动代理重定向到移动节点应用代理。在步骤1434中,移动代理被操作用来将所接收的具有对应于移动节点的目的地址的分组中的信息与用来把接收到的分组分类为不同流(例如对应于不同的移动节点应用的流)的第一和第二分组类型信息进行比较。在接收到第一类型的分组的情况下,操作处理从步骤1434进行到步骤1436。在步骤1436中,移动代理将所接收分组的至少一部分内容与第一寻呼触发信息进行比较,以确定该移动节点是否应该被寻呼。假定分组内容匹配于一个寻呼触发,那么在步骤1438中,移动代理响应于检测到所接收分组的内容匹配于寻呼触发而进行寻呼,例如向移动节点发送一条寻呼消息。寻呼触发信息可以被更新以反映移动节点的状态。例如,如果移动处于睡眠状态中,则一些分组的接收可能触发寻呼,而当移动节点处于活动状态中时,它们可以被简单地转发。在步骤1440中,第一类型的分组转发给移动节点。在接收到寻呼之后,移动节点在步骤1442中被操作用来接收和处理第一类型的分组。如图所示,操作从步骤1442进行到步骤1436,以示出当检测到第一类型的分组时,处理没有在步骤1442停止,而是继续执行。
如果在步骤1434中检测到第二类型的分组,则操作进行到步骤1444而不是步骤1436。对应于不同流的多种类型的分组可以被同时处理。在步骤1444中,移动代理把第二类型的分组重定向到移动节点应用代理而不是重定向到移动节点。然后,在步骤1448中,应用代理接收经重定向的分组以便进行处理。接下来,在步骤1450中,应用代理被操作用来使用多个接收到的经重定向的分组的净荷内容执行应用处理。应用处理产生应用事件,例如完成文件下载、完成基于在多个分组中接收到的数据/值而进行的对于特定应用的计算、和/或解码已下载的文件。执行这类处理的应用可以结合负责监督与对等节点通信的通信应用来实现,对等节点基于来自移动节点应用代理的信息将保持它正继续与移动节点进行交互的感觉。由移动节点应用代理执行的示例性应用包括电子数据表应用和文件解码应用以及通常由移动节点执行的各种其它应用。
操作经由连接节点1452从步骤1450进行到步骤1454。在步骤1454中,应用代理将由在步骤1450中执行的应用处理而产生的一个或多个应用事件与存储的寻呼事件触发信息进行比较。在检测到与一个触发事件相匹配的情况下,操作从步骤1454继续进行下去。虽然在步骤1454中比较后的应用结果通常是多个分组的净荷处理结果,但是在某些情况下应用结果是一个经受了使用一些来自移动节点的信息的应用处理的分组中的信息结果,来自移动节点的信息例如是表示移动节点状态的状态信息、先前的移动节点应用结果或其它从移动节点传送来的信息。因此,单个分组与来自移动节点的一些信息结合在一起可以触发移动节点的寻呼。
当检测到已经满足了寻呼事件触发时,在步骤1456中,应用代理开始一个寻呼操作。例如,可以通过向移动节点的移动代理发送将触发寻呼操作的寻呼消息来完成这个操作。在某些情况下,寻呼消息包括一个第一类型的分组,其中包括了将使移动节点被寻呼的信息。在子步骤1457中示出了用来触发移动节点寻呼的寻呼消息的传输。
操作从步骤1456进行到步骤1458和1462。在步骤1458中,移动代理被操作用来响应于从应用代理接收到寻呼消息而寻呼移动节点。然后,在步骤1460中,在假定移动节点处于睡眠状态中时,移动节点被操作用来响应于接收到寻呼消息而从睡眠状态转换到活动状态。因此,等到分组流重定向中止并且分组又被再次指向移动节点的时候,移动节点将处于一个充分活动的状态中,以接收分组并继续应用处理。操作从步骤1460进行到步骤1470。
在步骤1462中,应用代理被操作用来把应用处理结果和应用状态信息发送到移动节点。这允许移动节点从应用代理停止负责应用处理的那一点起继续应用处理。然后,在步骤1464中,应用代理向移动代理发送一条消息,以使移动代理中止把具有对应于所述移动节点的目的地址的分组重定向到应用代理。该消息可以(并且经常确实)导致在移动代理处更新分组流过滤信息,以停止将第二类型的分组重定向到应用代理。操作从步骤1464进行到步骤1468。在操作进行到步骤1470之前,在步骤1468中,移动节点从应用代理接收应用状态信息。
在步骤1470中,移动节点从对等节点接收到分组,并从应用代理检测到使移动节点被寻呼的应用处理结果的那一点起继续应用处理。例如,响应于与对等节点的特定通信会话终止或完成,然后在步骤1472中停止关于对应于与对等节点的通信会话的示例性移动处理的操作。虽然图14-17的示例性流程中只示出了单个切换,但是在单个通信会话期间,在移动节点和移动节点应用代理之间的多个处理切换也是可能的。
下面将论述本发明的各种安全特性。图13的例图1300示出了通信节点CN 1114、移动节点MN 1102和MNPS(包括应用代理模块)1140。CN 1114包括第一安全关联1302和通信例程1308,第一安全关联1302包括第一保密数据1304和第一安全例程1306。MN 1102包括具有第一保密数据1330和第一安全例程1332的第一安全关联1328、通信例程1334、包括第二保密数据1338和第二安全例程1340的第二安全关联1336、和报头与净荷处理例程1342。MNPS 1140包括:包括第一保密数据1312和第一安全例程1314的第一安全关联1310、通信例程1316、包括第二保密数据1320和第二安全例程1322的第二安全关联1318、报头与净荷检查修改例程1324、和报头与净荷处理例程1326。根据本发明的一个特征,在CN 1114和MN 1102之间存在共享的第一保密数据1304、1330,并且其由MN 1102用第二安全关联1336、1318安全地传送到MNPS 1140,以使MNPS 1140能够代表MN 1102进行安全处理和分组处理。安全例程1306、1332可以是CN 1114所使用的相同的加密/解密例程,并且可用来编码和解码在CN 1114和MN 1102之间传送的信息。
下面将描述三个可能的配置。第一配置是当MN 1102正经由MNPS 1140从CN 1114接收分组时,MNPS 1140然后能够在向MN1102转发分组之前经由报头与净荷检查修改例程1324安全地检验和修改分组报头和/或净荷。这创建了一个授权的′中间人(man-in-the-middle)′,其中,安全地从MN 1102接收共享的第一保密数据1330的MNPS 1140可以充当这样的中间人。从MN 1102接收到的共享的第一保密数据1330存储在MNPS 1140的第一保密数据1312中。无论共享的第一保密数据1330是否用来验证、完整性保护和/或编码分组,它都可以实现。对于从MN 1102到CN 1114的分组可以实现相同的处理,并且CN 1114通常不知道MNPS 1140的存在,所述MNPS1140是MN 1102的支持节点。MNPS 1140所进行的处理可用于丢弃声明到/来自MN 1102的欺诈分组,读取并且甚至调整由MN 1102传送到MNPS 1140的参数,以用于操作员控制诸如SIP信令和资源保留之类的服务特征。
在第二配置中,MN 1102可以把其共享的第一保密数据1330传送到MNPS 1140,以便MNPS 1140可以作为MN 1102的代理安全地参加与CN 1114的通信会话,从而使得MN 1102然后可以例如进入睡眠状态或暂时离开通信系统。再一次,CN 1114不知道MN 1102的不存在,这是因为MNPS 1140代表它自己用与MN 1102相同的通信参数(例如,IP地址和安全处理)进行动作。
在一种混合模式中,MNPS 1140可以在每个分组流的基础上充当中间人或者代理,并且可以在MN 1102的控制下及时地在中间人和代理模式之间进行切换,以便使MNPS 1140的处理可以转换到中间人模式,并且反之亦然。还应当注意到,在代理模式中,通过使用CN 1114(第一保密数据1304)和MNPS 1140(第一保密数据1312)间的第一共享保密数据1330,或者通过使用MN 1102和MNPS 1140之间的用来把第一共享保密数据1330从MN安全地传送到MNPS 1140的第二安全关联1318(可以使用或者也可以不使用第二共享保密数据1320),由在MNPS 1140处的代理处理而产生的分组随后可以被传送到MN1102。
对于使用第二共享保密数据1320/1338的第二安全关联1318/1336的情况,在图13中示出了分组流。CN 1114耦合到MNPS 1140以支持分组流1348。MNPS 1140耦合到MN 1102以支持分组流1350。CN 1114还耦合到MN 1102以支持分组流1344。CN 1114具有包括第一共享保密数据1304和第一安全例程1306的第一安全关联1302,第一安全例程把第一共享保密数据1304应用到分组1348和1344,以便如第一安全关联1302所指示的那样确保它们安全。MN 1102还包括匹配的第一安全关联1328、第一保密数据1330和第一安全例程1332,以检查分组1344和分组1350上的安全信息,从而便于由第一安全关联1328所指示的验证、完整性检查和解密。CN 1114、MN 1102和MNPS 1140还分别包括通信例程1308、1334和1316,这些例程便于产生和接收分组流1344、1348和1350。
MN 1102和MNPS 1140还分别包括第二安全关联(1336、1318)、第二保密数据(1338、1320)和第二安全例程(1340、1322),这使得MN 1102能够用信令消息1346把其第一安全关联保密数据1330安全地发送到MNPS 1140,其中第一保密数据1330保留在第一保密数据1312中。当MNPS 1140具有包括第一保密数据1312和第一安全例程1314的第一安全关联状态时,将在CN 1114和MN 1102之间提供的分组路由经过MNPS 1140,如分组流1344A所示,然后MNPS 1140可以拦截分组1344A,并使用报头与净荷检查修改例程1324来检查流中的分组并进行调整。然后,分组可以被丢弃(缺少安全的不合格分组)或被转发(经检查并有时经调整的分组)到分组的目的地址,分组的目的地址是MN 1102或CN 1114。请注意,报头与净荷检查修改例程1324可以将分组保持不变,而从报头或净荷中提取用来在MNPS 1140中进行处理的信息,例如网络地址转换、许可控制或统计和策略处理等。在一个替换实施例中,将分组发给充当MN 1102的代理的MNPS1140,如流1348所示,并且MNPS 1140然后分别用第一或第二安全关联1310、1318把经检查和修改的分组1350转发到MN 1102,以确保分组安全。请注意,流1350可以在在MNPS 1140处接收到分组流1348之后的一个有效时段时出现。
MN 1102和MNPS 1140还分别包括报头与净荷处理例程1342、1326,其表示一个通信流端点将采取的分组接收和随后的净荷处理,其中包括应用状态产生。在MNPS 1140中的报头与净荷处理1326使MNPS 1140能够充当一个代理并且能够从到来的流1348中发出流1350,除源和目的地址以及它们的发送时段外,到来的流1348与流1350是相同的。相比之下,流1352是一个从流1348导出并由流1348触发的流,它与流1350的不同之处在于诸如反映分组流1348的应用处理的分组的数量、大小、净荷内容之类的附加方法。再一次,可以分别用第一或第二安全关联1310、1318来确保流1352安全,以及它可以在流1348在MNPS 1140处接收到时或一段时间之后进行发送。然后,MN 1102中的报头与净荷处理例程1342可以接收流1344、1350和1352,在从分组流中安全地获得所产生的应用数据之前,根据分组的源和目的地址以及安全报头信息,可以知道要应用哪个安全关联以及由谁发起了所述分组。
已经说明了MNPS 1140可以怎样经由第二安全关联1318/1336和消息1346来获得MN 1102中的第一安全关联1328(第一保密数据1330)。作为选择,第一安全关联1310(第一保密数据1312)可以在其被配置到CN 1114中的同时被配置到MNPS 1140中,作为第一安全关联1302(第一保密数据1304),并且在MN 1102中,作为第一安全关联1328(第一保密数据1330),在安全协商信令阶段期间,它包括访问三个节点CN 1114、MN 1102、MNPS 1140的消息1354,并且可以分别把第一安全关联(第一保密数据1302(1304)、1328(1330)、1310(1312)用安全的方式存放到每个节点1114、1102、1140中。
在不同的实施例中,此处描述的节点用一个或多个模块实现,以执行对应于本发明的一种或多种方法的步骤,例如信号处理、消息产生和/或传输步骤。因此,在某些实施例中,本发明的不同特征用模块来实现。这类模块可以用软件、硬件或软件和硬件的结合来实现。许多上面所描述的方法或方法步骤可以用包括在诸如存储装置(例如RAM、软盘等)之类的机器可读介质内的机器可执行指令(例如软件)来实现,所述指令用于控制机器(例如具有或者不具有附加硬件的通用计算机)例如在一个或多个节点中实现全部或部分的上述方法。因此,本发明尤其提供了一种包括机器可执行指令的机器可读介质,所述指令用于使机器、例如处理器和相关硬件执行上述(一种或多种)方法的一个或多个步骤。本发明的方法和设备适用于各种各样的通信系统,其中包括许多OFDM、CDMA及其它非OFDM系统。
本发明的方法和设备可以并且在不同的实施例中的确是与CDMA、正交频分复用(OFDM)、和/或其它各种类型的可用来在接入节点和移动节点之间提供无线或固定通信链路的通信技术一起使用。在某些实施例中,接入节点可以被实现为用OFDM和/或CDMA与移动节点建立通信链路的基站。在各种实施例中,移动节点可以被实现为笔记本计算机、个人数字助理(PDA)或其它的便携装置,其中包括接收机/发射机电路和逻辑电路和/或例程,以用于实现本发明的方法。
鉴于对本发明的上述描述,本发明的方法和设备的许多另外的变化对于所属领域技术人员来说都将会是显而易见的。这类变化将被认为是落在本发明的范围之内。