一种保持业务连续性的方法和装置
技术领域
本发明涉及通信技术领域,特别涉及一种在经由应用服务器(ApplicationServer,App Server)的通信路径(infrastructure path)与邻近通信路径(ProSecommunication path;ProSe,Proximity Services)之间进行切换的应用场景下,保持业务连续性的方法和装置。
背景技术
第三代合作伙伴计划(The3rd Generation Partnership,3GPP)在版本12(Release12,R12)中通过了邻近业务(Proximity Services,ProSe)的立项,ProSe主要研究用户设备(User Equipment,UE;也称为终端)之间的邻近发现和邻近通信技术。当UE之间的ProSe communication path(邻近通信路径)建立之后,便可直接进行通信,无需再经过演进型分组核心网(Evolved PacketCore,EPC)。当正在通过infrastructure path(经由核心网的通信路径)进行通信的UE发现ProSe communication path可用时,如何将业务流切换到ProSecommunication path而保持业务的连续性是一个重要问题。同样,当业务流从ProSe communication path切换到infrastructure path时也需要保持其连续性。
Intel在SA(System Architecture,系统架构)2#96次会议上,提出了一种保持业务连续性的方法,具体参见图1所示,假设ProSe communication path上使用IP连接,UE可同时在infrastructure path和ProSe communication path上进行通信。具体如下:
1、UE A和UE B通过infrastructure path进行直接通信,UE A的IP地址为IPA1,UE B的IP地址为IPB1,如图1中虚线所示。
2、当UE A和UE B检测到互相邻近时,建立ProSe communication path,并为UE A分配新的IP地址IPA2用于ProSe通信,以及为UE B分配新的IP地址IPB2用于ProSe通信;
3、当UE A和UE B的业务流从infrastructure path切换到ProSecommunication path时,UE A和UE B将分组数据封装在外部分组头地址为IPA2和IPB2的隧道中发送给对方。从应用层来看,UE A和UE B仍然使用IPA1和IPB1进行通信,从而保证了业务的连续性。
可见,Intel提出的IP-in-IP的方法中,使用新分配的IP地址作为隧道的外部分组头地址,隧道中的分组数据使用的IP地址仍为infrastructure path上使用的IP地址。上述保持业务连续性的方法的应用前提是UE A和UE B在infrastructure path上进行直接通信,因此,通信双方在进行通信时,知道对方的IP地址。但是在很多应用场景中,UE A和UE B在infrastructure path上,需要通过应用服务器(App Server)进行通信,上述保持业务连续性的方法不适用于,无法解决经由应用服务器的通信路径与邻近通信路径的切换过程中保持业务连续性的问题。
综上所述,对于UE之间的通信路径在经由应用服务器的通信路径与邻近通信路径之间切换的应用场景下,如何保证业务的连续性,目前尚未有解决方案。
发明内容
本发明实施例提供了公开了一种保持业务连续性的方法和装置,能够在UE之间的通信路径在经由应用服务器的通信路径与邻近通信路径之间切换的应用场景下,保持业务的连续性。
本发明实施例提供的一种保持业务连续性的方法,包括:
若第一终端与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径,所述第一终端获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址;
所述第一终端根据获取到的IP地址,确定需要发送给所述第二终端的分组数据的IP地址,将所述分组数据封装在隧道中发送给所述第二终端,其中,所述隧道的外部分组头地址分别为所述第一终端和所述第二终端在所述邻近通信路径上的IP地址。
本发明实施例中,在第一终端与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径的应用场景下,第一终端获取该经由应用服务器的通信路径上与第二终端相关的IP地址;并根据获取到的IP地址,确定需要发送给第二终端的分组数据的IP地址,将该分组数据封装在隧道中发送给第二终端。从应用层来看,第二终端接收到的分组数据的IP地址,与原来的经由应用服务器的通信路径上上接收到的分组数据的IP地址保持一致,从而保证业务的连续性。
作为一种实现方式,若所述第一终端获取到的IP地址包括所述第二终端在所述经由应用服务器的通信路径上的第一IP地址、以及所述应用服务器的与所述第二终端进行通信的第二IP地址,则所述第一终端确定待发送的分组数据的IP地址,具体包括:
所述第一终端确定出所述分组数据的目的地址为所述第一IP地址,且所述分组数据的源地址为所述第二IP地址。
作为另一种实现方式,若所述第一终端获取到的IP地址仅包括所述应用服务器的与所述第二终端进行通信的第二IP地址,则所述第一终端确定待发送的分组数据的IP地址,具体包括:
所述第一终端确定出所述分组数据的目的地址为所述应用服务器的与所述第一终端进行通信的IP地址,且所述分组数据的源地址为所述第二IP地址。
基于上述第二种实现方式,所述方法还包括:
所述第二终端将接收到的分组数据的目的地址修改为所述第一IP地址。
在实施中,所述第一终端获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址,具体包括:
所述第一终端从所述应用服务器中,获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址;或者,
所述第一终端从邻近业务ProSe服务器中,获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址。
进一步,该方法还包括:
若第一终端与第二终端之间的通信路径从邻近通信路径切换到经由应用服务器的通信路径,为了保证业务的连续性,所述第一终端将所述第一终端和所述第二终端在所述邻近通信路径上的IP地址,作为需要发送给所述第二终端的分组数据的IP地址;
所述第一终端将所述分组数据封装在隧道中,通过所述应用服务器发送给所述第二终端,其中,所述隧道的外部分组头地址分别为所述第一终端在所述经由应用服务器的通信路径上的IP地址以及所述应用服务器的与所述第一终端进行通信的IP地址。
基于上述实施例,本发明实施例提供的一种终端,包括:
获取模块,用于在与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径时,获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址;
通信模块,用于根据获取到的IP地址,确定需要发送给所述第二终端的分组数据的IP地址,将所述分组数据封装在隧道中发送给所述第二终端,其中,所述隧道的外部分组头地址分别为所述终端和所述第二终端在所述邻近通信路径上的IP地址。
本发明实施例中,在与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径的应用场景下,获取模块获取该经由应用服务器的通信路径上与第二终端相关的IP地址;处理模块根据获取到的IP地址,确定需要发送给第二终端的分组数据的IP地址,将该分组数据封装在隧道中发送给第二终端。从应用层来看,第二终端接收到的分组数据的IP地址,与原来的经由应用服务器的通信路径上上接收到的分组数据的IP地址保持一致,从而保证业务的连续性。
作为一种实现方式,若所述获取模块获取到的IP地址包括所述第二终端在所述经由应用服务器的通信路径上的第一IP地址、以及所述应用服务器的与所述第二终端进行通信的第二IP地址,则所述通信模块具体用于:
确定出所述分组数据的目的地址为所述第一IP地址,且所述分组数据的源地址为所述第二IP地址。
作为另一种实现方式,若所述获取模块获取到的IP地址仅包括所述应用服务器的与所述第二终端进行通信的第二IP地址,则所述通信模块具体用于:
确定出所述分组数据的目的地址为所述应用服务器的与所述终端进行通信的IP地址,且所述分组数据的源地址为所述第二IP地址。
基于上述第二种实现方式,若所述终端为所述第二终端,所述通信模块还用于:
将接收到的分组数据的目的地址修改为所述第一IP地址。
在实施中,所述获取模块具体用于:
从所述应用服务器中,获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址;或者,
从邻近业务ProSe服务器中,获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址。
进一步,所述通信模块还用于:
在与第二终端之间的通信路径从邻近通信路径切换到经由应用服务器的通信路径时,为了保证业务的连续性,将所述终端和所述第二终端在所述邻近通信路径上的IP地址,作为需要发送给所述第二终端的分组数据的IP地址;以及将所述分组数据封装在隧道中,通过所述应用服务器发送给所述第二终端,其中,所述隧道的外部分组头地址分别为所述终端在所述经由应用服务器的通信路径上的IP地址以及所述应用服务器的与所述终端进行通信的IP地址。
附图说明
图1为背景技术中两个终端之间的infrastructure path和ProSecommunication path的架构图;
图2为本发明实施例中两个终端之间的经由App Server的infrastructurepath和ProSe communication path的架构图;
图3为本发明实施例提供的一种保持业务连续性的方法的流程示意图;
图4为本发明实施例提供的另一种保持业务连续性的方法的流程示意图;
图5为本发明提供的实施例一的流程示意图;
图6为本发明提供的实施例二的流程示意图;
图7为本发明提供的实施例三的流程示意图;
图8为本发明提供的实施例四的流程示意图;
图9为本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面结合说明书附图对本发明实施例作进一步详细描述。
首先,对本发明实施例中涉及到的IP地址进行说明。
本发明实施例中,对于第一终端与第二终端之间建立的经由应用服务器的通信路径来说:
为第一终端在该经由应用服务器的通信路径上分配的IP地址记为IPA1,为第二终端在该经由应用服务器的通信路径上分配的IP地址记为IPB1;
在该通信路径上,应用服务器与第一终端进行通信时所使用的IP地址记为IPAppServer_A1,且该应用服务器与第二终端进行通信时所使用的IP地址记为IPAppServer_B1。
本发明实施例中,对于第一终端与第二终端建立的邻近通信路径来说:
为第一终端在该邻近通信路径上分配的IP地址记为IPA2,为该第二终端在该邻近通信路径上分配的IP地址记为IPA2。
本发明实施例提供的保持业务连续性的方法应用于经由应用服务器的通信路径与邻近通信路径之间切换的应用场景,参见图2所示,两个终端(UE A和UE B)通过App Server通信的路径参见图中虚线所示,其中,UE A和UE B可通过相同或不同的演进型分组系统(Evolved Packet System,EPS)进行通信。图中ProSe Server为EPS中新定义的网络实体,用于辅助终端进行邻近通信,如用于邻近发现等。
参见图3所示,本发明实施例提供的一种保持业务连续性的方法,该方法包括以下步骤:
步骤31、若第一终端与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径,该第一终端获取该经由应用服务器的通信路径上与第二终端相关的IP地址;
具体的,第一终端与第二终端通过应用服务器进行通信,此时,若第一终端与第二终端发现彼此邻近,则建立邻近通信路径,并将正在进行通信的业务流从原来的经由应用服务器的通信路径切换到邻近通信路径进行传输。
在第一终端与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径时,为了保证业务的连续性,第一终端获取该经由应用服务器的通信路径上与第二终端相关的IP地址。
步骤32、第一终端根据获取到的IP地址,确定需要发送给第二终端的分组数据的IP地址,将该分组数据封装在隧道中发送给第二终端,其中,该隧道的外部分组头地址分别为第一终端和第二终端在邻近通信路径上的IP地址。
本发明实施例中,第一终端与第二终端在经由应用服务器(App Server)的通信路径上进行通信时,第一终端将需要发送给第二终端的分组数据先发送给应用服务器,再由应用服务器转发给第二终端,其中:
第一终端发送给应用服务器的分组数据的源地址为IPA1,且目的地址为IPAppServer_A1;应用服务器接收到第一终端发送的分组数据后,根据自身保存的对应关系,先将该分组数据的源地址修改为IPAppServer_B1,且将目的地址修改为IPB1,再将该分组数据发送给第二终端;第二终端接收到的分组数据的源地址为IPAppServer_B1,目的地址为IPB1。
需要说明的是,在经由应用服务器(App Server)的通信路径进行通信时,通信双方均不知道对端的IP地址,即第一终端不知道该经由应用服务器的通信路径上与第二终端相关的IP地址,即IPAppServer_B1及目的地址为IPB1;同样,第二终端也不知道该经由应用服务器的通信路径上与第一终端相关的IP地址,即IPAppServer_A1及目的地址为IPA1。
在实施中,步骤31中,第一终端获取经由应用服务器的通信路径上与第二终端相关的IP地址,具体包括以下两种方式:
方式A、第一终端从应用服务器中,获取该经由应用服务器的通信路径上与第二终端相关的IP地址。
具体的,第一终端向自身所属的PGW发送携带IP地址请求的协议配置选项(Protocol Configuration Options,PCO)消息,以请求获取与IPAppServer_A1对应的IP地址;该PGW在接收到该PCO消息后,向应用服务器请求与IPAppServer_A1对应的IP地址,该PGW在将获取到的IP地址(即IPAppServer_B1)返回给第一终端;或者,
第一终端向自身所属的PGW发送携带IP地址请求的PCO消息,以获取该经由应用服务器的通信路径上与第二终端相关的IP地址;该ProSe Server在接收到该请求后,向应用服务器请求该经由应用服务器的通信路径上与第二终端相关的IP地址,该ProSe Server在将获取到的IP地址(即IPB1及IPAppServer_B1)返回给第一终端。
方式B、第一终端从邻近业务ProSe服务器中,获取所述经由应用服务器的通信路径上与所述第二终端相关的IP地址。
作为一种实现方式,第一终端向自身所属的ProSe Server(邻近业务服务器)发送IP地址请求,以请求获取与IPAppServer_A1对应的IP地址;该ProSe Server在接收到该请求后,判断自身是否保存有该IP地址;
若是,则直接向第一终端返回该IP地址(即IPAppServer_B1);
若否,则向应用服务器请求与IPAppServer_A1对应的IP地址,并将从应用服务器处获取到的IP地址(即IPAppServer_B1)返回给第一终端。
作为另一种实现方式,第一终端向自身所属的ProSe Server发送IP地址请求,以请求获取该经由应用服务器的通信路径上与第二终端相关的IP地址;该ProSe Server在接收到该请求后,判断自身是否保存有该IP地址;
若是,则直接向第一终端返回该IP地址(即IPAppServer_B1及IPB1);
若否,则向应用服务器请求该经由应用服务器的通信路径上与第二终端相关的IP地址,并将从应用服务器处获取到的IP地址(即IPAppServer_B1及IPB1)返回给第一终端。
在实施中,根据步骤31中第一终端获取到的IP地址的不同,步骤32中第一终端确定待发送的分组数据的IP地址,具体包括以下两种不同方式:
方式一、若步骤31中,第一终端获取到的IP地址包括第二终端在该经由应用服务器的通信路径上的第一IP地址(即IPB1)、以及该应用服务器的与第二终端进行通信的第二IP地址(即IPAppServer_B1),则步骤32中,第一终端确定待发送的分组数据的IP地址,具体包括:
第一终端确定出该分组数据的目的地址为第一IP地址(即IPB1),且该分组数据的源地址为第二IP地址(即IPAppServer_B1)。
这样,第二终端在该邻近通信路径上接收到的分组数据的源地址及目的地址仍为{IPAppServer_B1,IPB1},从应用层来看,第二终端通过该邻近通信路径接收到的分组数据与该第二终端通过经由应用服务器的通信路径接收到的分组数据的源地址及目标地址一致,从而保证了业务的连续性。
方式二、若步骤31中,第一终端获取到的IP地址仅包括应用服务器的与第二终端进行通信的第二IP地址(即IPAppServer_B1),则步骤32中,第一终端确定待发送的分组数据的IP地址,具体包括:
第一终端确定出该分组数据的目的地址为应用服务器的与第一终端进行通信的IP地址(即IPAppServer_A1),且该分组数据的源地址为第二IP地址(即IPAppServer_B1)。
进一步,该方法还包括:
第二终端对该隧道进行解封装,获取第一终端发送的分组数据;
第二终端将该分组数据的目的地址修改为第一IP地址(即IPB1);
此时,从应用层来看,该分组数据的源地址及目的地址仍为{IPAppServer_B1,IPB1},与该第二终端通过经由应用服务器的通信路径接收到的分组数据的源地址及目标地址一致,从而保证了业务的连续性。
在实施中,参见图4所示,该方法还包括以下步骤:
步骤33、若第一终端与第二终端之间的通信路径从邻近通信路径切换到经由应用服务器的通信路径,该第一终端将第一终端和第二终端在该邻近通信路径上的IP地址,作为需要发送给第二终端的分组数据的IP地址;
具体的,第一终端与第二终端在邻近通信路径上进行通信,此时,若第一终端与第二终端之间不满足设定的邻近通信原则(如彼此不邻近),则不能继续使用邻近通信路径进行通信,则通信双方将正在进行通信的业务流从原来的邻近通信路径切换到经由应用服务器的通信路径进行传输。
本发明实施例中,在第一终端与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径时,为了保证业务的连续性,第一终端将第一终端和第二终端在该邻近通信路径上的IP地址,作为需要发送给第二终端的分组数据的IP地址。
具体的,该分组数据的源地址为第一终端在该邻近通信路径上的IP地址(即IPA2),且该分组数据的目的地址为第二终端在该邻近通信路径上的IP地址(即IPB2)。
步骤34、第一终端将该分组数据封装在隧道中,通过应用服务器发送给第二终端,其中,该隧道的外部分组头地址分别为第一终端在该经由应用服务器的通信路径上的IP地址(即IPA1)以及该应用服务器的与第一终端进行通信的IP地址(即IPAppServer_A1)。
本发明实施例中,第一终端与第二终端在邻近通信路径上进行通信时,第一终端通过邻近通信路径直接将需要发送给第二终端的分组数据发送给第二终端,其中:第一终端发送给第二终端的分组数据的源地址为IPA2,且目的地址为IPB2;则第二终端接收到的分组数据的源地址为IPA2,目的地址为IPB2。
本发明实施例中,在第一终端与第二终端之间的通信路径从邻近通信路径切换到经由应用服务器的通信路径时,第一终端将第一终端和第二终端在该邻近通信路径上的IP地址,作为需要发送给第二终端的分组数据的IP地址;并将该分组数据封装在外部分组头地址分别为IPA1以及IPAppServer_A1的隧道中,通过该应用服务器发送给第二终端,从应用层来看,第二终端接收到的分组数据的源地址及目的地址仍分别为IPA2和IPB2,从而保证了业务的连续性。
上述描述中,均以第一终端例进行说明的,与该第一终端进行通信的第二终端侧保持业务连续性过程与第一终端相同,此处不再赘述。
下面结合以下四个具体实施例,对本发明提供的保持业务连续性的方法进行说明。
实施例一、参见图5所示,本实施例中保持业务连续性的方法包括:
步骤51、UE A和UE B通过App Server进行infrastructure path通信;
其中:UE A的IP地址为IPA1,UE B的IP地址为IPB1;App Server使用IPAppServer_A1与UE A通信,使用IPAppServer_B1与UE B通信。
本步骤中,UE B接收到的分组数据的源地址及目的地址为{IPAppServer_B1,IPB1}。
步骤52、UE A和UE B发现彼此邻近,建立ProSe communication path;
其中:为UE A分配的用于直接通信的IP地址记为IPA2,为UE B分配的用于直接通信的IP地址记为IPB2。
步骤53、UE A从App Server获取UE B侧进行通信使用的IP地址;
具体为:在PCO消息中携带地址请求,PGW A向App Server请求IPAppServer_A1对应的IP地址(即IPAppServer_B1),App Server向PGWA返回IPAppServer_B1,PGW在PCO消息中向UE A返回IPAppServer_B1。
其中,UE A在接收到PGW返回的IP地址后,建立对应关系{IPA1,IPAppServer_B1}。
步骤54、与步骤53类似,UE B从App Server获取UE A侧进行通信使用的IP地址;
具体的,UE B获得IPAppServer_A1,且UE B建立对应关系{IPB1,IPAppServer_A1}。
本实施例中,不限定步骤53和步骤54的执行顺序。
步骤55、UE A和UE B直接通信;具体的:
UE A将分组数据的源地址改为IPAppServer_B1,目的地址仍为IPAppServer_A1;并将该分组封装在外部分组头为IPA2和IPB2的隧道中发送给UE B;
UE B解封装并将接收到的分组数据的目的地址改为IPB1。
此时,从应用层来看,UE B接收到的分组的源、目的地址仍为{IPAppServer_B1,IPB1}。
步骤56、UE A和UE B释放infrastructure path通信的资源。
实施例二、参见图6所示,本实施例中保持业务连续性的方法包括:
步骤61、UE A和UE B通过App Server进行infrastructure path通信;
其中:UE A的IP地址为IPA1,UE B的IP地址为IPB1;App Server使用IPAppServer_A1与UE A通信,使用IPAppServer_B1与UE B通信。
本步骤中,UE B接收到的分组数据的源地址及目的地址为{IPAppServer_B1,IPB1}。
步骤62、UE A和UE B发现彼此邻近,建立ProSe communication path;
其中:为UE A分配的用于直接通信的IP地址记为IPA2,为UE B分配的用于直接通信的IP地址记为IPB2。
步骤63a、UE A向自身所属的ProSe Server A请求App Server与UE B进行通信使用的IP地址;
步骤63b、ProSe Server A向App Server请求上述地址。
进一步,App Server向ProSe Server A返回IPAppServer_B1,ProSe ServerA向UE A返回该地址,UE A建立对应关系{IPA1,IPAppServer_B1}。
步骤64a、UE B向自身所属的ProSe Server B请求App Server与UE A进行通信使用的IP地址;
步骤64b、ProSe Server B向App Server请求上述地址。
进一步,App Server向ProSe Server B返回IPAppServer_A1,ProSe ServerB向UE B返回该地址,UE B建立了对应关系{IPB1,IPAppServer_A1}。
本实施例中,不限定步骤63a~步骤63b,与步骤64a~步骤64b的执行顺序。
步骤65、UE A和UE B直接通信;具体的:
UE A将分组数据的源地址改为IPAppServer_B1,目的地址仍为IPAppServer_A1;并将该分组封装在外部分组头为IPA2和IPB2的隧道中发送给UE B;
UE B解封装并将接收到的分组数据的目的地址改为IPB1。
此时,从应用层来看,UE B接收到的分组的源、目的地址仍为{IPAppServer_B1,IPB1},从而保证了业务的连续性。
步骤66、UE A和UE B释放infrastructure path通信的资源。
实施例三、参见图7所示,本实施例中保持业务连续性的方法包括:
步骤71、UE A和UE B通过App Server进行infrastructure path通信;
其中:UE A的IP地址为IPA1,UE B的IP地址为IPB1;App Server使用IPAppServer_A1与UE A通信,使用IPAppServer_B1与UE B通信。
本步骤中,UE B接收到的分组数据的源地址及目的地址为{IPAppServer_B1,IPB1}。
步骤72、ProSe Server A和ProSe Server B均存储有UE A和UE B的经由App Server的通信路径上的IP地址,即ProSe Server A和ProSe Server B均存储有{IPA1,IPAppServer_A1,IPAppServer_B1,IPB1}。
步骤73、UE A和UE B发现彼此邻近,建立ProSe communication path;
其中:为UE A分配的用于直接通信的IP地址记为IPA2,为UE B分配的用于直接通信的IP地址记为IPB2。
步骤74、UE A向ProSe Server A请求UE B侧进行通信使用的IP地址;
进一步,ProSe Server A向UE A返回{IPAppServer_B1,IPB1}。
步骤75、与步骤74类似,UE B向ProSe Server B请求UE A侧进行通信使用的IP地址;
进一步,ProSe Server B向UE B返回{IPAppServer_A1,IPA1}。
本实施例中,不限定步骤74和步骤75的执行顺序。
步骤76、UE A和UE B直接通信;具体的:
UE A将分组数据的源地址改为IPAppServer_B1,目的地址改为IPB1,并将该分组数据封装在外部分组头为IPA2和IPB2的隧道中发送给UE B;
UE B解封装,从应用层来看,UE B接收到的分组的源、目的地址仍为{IPAppServer_B1,IPB1},从而保证了业务的连续性。
步骤77、UE A和UE B释放infrastructure path通信的资源。
实施例二、参见图8所示,本实施例中保持业务连续性的方法包括:
步骤81、UE A和UE B通过ProSe comm.Path(邻近通信路径)进行通信;
其中:UE A的IP地址为IPA2,UE B的IP地址为IPB2。
步骤82、UE A和UE B发现彼此不邻近,不能继续使用ProSe comm.Path,将业务流切换到经由App Server的infrastructure path,通过App Server进行通信,具体的:
UE A和UE B获得的在经由App Server的infrastructure path上的IP地址分别为IPA1和IPB1;App Server与UE A、UE B通信的IP地址分别为IPAppServer_A1,IPAppServer_B1;
UE A将IPA1和IPAppServer_A1作为隧道的外部分组头的IP地址,内部分组数据的IP地址为IPA2和IPB2;
UE B将IPB1和IPAppServer_B1作为隧道的外部分组头的IP地址,内部分组数据的IP地址为IPA2和IPB2。
因此,从应用层来看,UE A和UE B接收到的分组数据的IP地址仍为IPB2和IPA2,从而保证了业务的连续性。
步骤83、UE A和UE B释放ProSe comm.Path的资源。
上述方法处理流程可以用软件程序实现,该软件程序可以存储在存储介质中,当存储的软件程序被调用时,执行上述方法步骤。
基于同一发明构思,本发明实施例中还提供了一种终端,由于该终端解决问题的原理与上述保持业务连续性的方法相似,因此该终端的实施可以参见方法的实施,重复之处不再赘述。
参见图9所示,本发明实施例提供的一种终端,包括:
获取模块91,用于在与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径时,获取该经由应用服务器的通信路径上与第二终端相关的IP地址;
通信模块92,用于根据获取到的IP地址,确定需要发送给第二终端的分组数据的IP地址,将该分组数据封装在隧道中发送给第二终端,其中,该隧道的外部分组头地址分别为该终端和第二终端在该邻近通信路径上的IP地址。
作为一种实现方式,若获取模块91获取到的IP地址包括第二终端在该经由应用服务器的通信路径上的第一IP地址、以及应用服务器的与第二终端进行通信的第二IP地址,则通信模块92具体用于:
确定出该分组数据的目的地址为第一IP地址,且该分组数据的源地址为第二IP地址。
作为另一种实现方式,若获取模块91获取到的IP地址仅包括应用服务器的与第二终端进行通信的第二IP地址,则通信模块92具体用于:
确定出该分组数据的目的地址为应用服务器的与该终端进行通信的IP地址,且该分组数据的源地址为第二IP地址。
基于第二种实现方式,若该终端为第二终端,则通信模块92还用于:
将接收到的分组数据的目的地址修改为第一IP地址。
在实施中,获取模块91具体用于:
从应用服务器中,获取该经由应用服务器的通信路径上与第二终端相关的IP地址;或者,
从邻近业务ProSe服务器中,获取该经由应用服务器的通信路径上与第二终端相关的IP地址。
在实施中,通信模块92还用于:
在与第二终端之间的通信路径从邻近通信路径切换到经由应用服务器的通信路径时,将该终端和第二终端在该邻近通信路径上的IP地址,作为需要发送给第二终端的分组数据的IP地址;以及将该分组数据封装在隧道中,通过应用服务器发送给第二终端,其中,该隧道的外部分组头地址分别为该终端在该经由应用服务器的通信路径上的IP地址以及应用服务器的与该终端进行通信的IP地址。
下面结合具体硬件结构,对本发明实施例提供的终端的结构、处理方式进行说明。
终端至少包括:存储器、处理器、和天线。
存储器中至少存储有该终端与其他终端建立的经由应用服务器的通信路径上的所使用的IP地址(如IPA1,IPAppServer_A1),以及该终端与其他终端建立的邻近通信路径上的所使用的IP地址(如IPA2,IPB2)。
一、若与第二终端之间的通信路径从经由应用服务器的通信路径切换到邻近通信路径,则:
处理器通过天线获取该经由应用服务器的通信路径上与第二终端相关的IP地址,并将获取到的IP地址保存于存储器;根据获取到的IP地址,确定需要发送给第二终端的分组数据的IP地址,将该分组数据封装在隧道中,通过天线发送给第二终端,其中,该隧道的外部分组头地址分别为该终端和第二终端在该邻近通信路径上的IP地址。
作为一种实现方式,若天线获取到的IP地址包括第二终端在该经由应用服务器的通信路径上的第一IP地址、以及应用服务器的与第二终端进行通信的第二IP地址,则:
处理器确定出该分组数据的目的地址为第一IP地址,且该分组数据的源地址为第二IP地址。
作为另一种实现方式,若天线获取到的IP地址仅包括应用服务器的与第二终端进行通信的第二IP地址,则:
处理器确定出该分组数据的目的地址为应用服务器的与该终端进行通信的IP地址,且该分组数据的源地址为第二IP地址。
基于第二种实现方式,若该终端为第二终端,则:
处理器将通过天线接收到的分组数据的目的地址修改为第一IP地址。
在实施中,处理器通过天线从应用服务器中,获取该经由应用服务器的通信路径上与第二终端相关的IP地址;或者,从邻近业务ProSe服务器中,获取该经由应用服务器的通信路径上与第二终端相关的IP地址。
二、若与第二终端之间的通信路径从邻近通信路径切换到经由应用服务器的通信路径,则处理器将存储器中保存的该终端和第二终端在该邻近通信路径上的IP地址,作为需要发送给第二终端的分组数据的IP地址;以及将该分组数据封装在隧道中,指示天线通过应用服务器发送给第二终端,其中,该隧道的外部分组头地址分别为存储器中保存的该终端在该经由应用服务器的通信路径上的IP地址以及应用服务器的与该终端进行通信的IP地址。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。