一种使用不同版本的ip协议的gsn之间的通讯方法

文档序号:7590763阅读:190来源:国知局
专利名称:一种使用不同版本的ip协议的gsn之间的通讯方法
技术领域
本发明涉及无线网络中数据传输技术领域,特别是指一种使用不同IP版本的GSN之间的通讯方法。
背景技术
公共的GPRS核心网(GPRS CN)提供了分组交换业务,通用分组无线服务支持节点(GSN,GPRS Support Node)是GPRS网络中主要的网络节点,包含了支持GPRS所需的功能。其中,GSN包括两种类型服务GSN(SGSN,Serving GSN)和网关GSN(Gateway GSN)。
其中,SGSN是为MS提供移动性管理的节点。SGSN的主要作用就是记录MS的当前位置,存储类似于呼叫记录的PDP上下文,并且转发MS和GGSN之间的移动分组数据。GGSN存储着属于这个节点的GPRS业务用户的PDP上下文,并使用GPRS隧道协议(GTP,GPRS Tunneling Protocol)与SGSN通讯。GGSN主要是起网关作用,实现GPRS网络与其他不同的数据网络的互联。
在3GPP R5之前的版本里,GTP消息由IPv4(IP version 4)承载封装,即GTP over IP4,GTP消息里的GSN地址信元是IPv4地址。为表述方便,SGSN Address for Control Plane和SGSN Address for user traffic统称为SGSN地址,GGSN Address for Control Plane和GGSN Address for user traffic统称为GGSN地址。SGSN地址和GGSN地址统称为GSN地址。在3GPP R5及以后版本里,3GPP要求GTP能够被IPv6(IP version 6)承载封装,即GTPover IPv6,GTP消息里的GSN地址信元是IPv6地址,即支持GSN之间使用IPv6承载GTP进行通讯。
由于现有网络中GSN均采用IPv4,在网络中全面使用IPv6需要循序渐进。为了确保兼容性,在与IPv4 GSN共存的网络中,升级后的GSN均应是同时支持GTP over IPv4和GTP over IPv6的GSN,称为双栈GSN,也称为C类型GSN(TYPE C GSN),TYPE C GSN配置有IPv4地址和IPv6地址,可以在自己的IPv4地址和IPv6地址上同时监听GTP消息,分别接收IPv4封装的GTP消息和IPv6封装的GTP消息,并用相应版本的IP承载封装GTP消息。另外,只支持GTP over IPv4的GSN称为TYPE A GSN;只支持GTPover IPv6的GSN称为TYPE B GSN。
在3GPP TS 29.060 v6.1.0中,描述了一种GTP over IPv6的设计,来实现与GTP over IPv4的互通共存。首先在网络中采用TYPE C GSN支持IPv6和IPv4通讯;同时修改GTP消息,增加了新的GSN地址信元来实现TYPEC GSN与TYPE A GSN间的通讯。
参见表1、2所示,表1为Create PDP Context Response消息(InformationElements in a Create PDP Context Response),表2为SGSN-Initiated UpdatePDP Context Request消息(Information Elements in an SGSN-Initiated UpdatePDP Context Request),均为3GPP TS 29.060 v6.1.0定义的GTP消息,其他GTP消息可以参见3GPP TS 29.060 v6.1.0,不再列举。可以看出,在现有的GTP消息中增加了新的GSN地址信元包括Alternative GGSN Address forControl Plane信元,Alternative GGSN Address for user traffic信元,AlternativeSGSN Address for Control Plane信元,Alternative SGSN Address for usertraffic信元。


表1

表2在GSN发送GTP信令消息过程中,TYPE C GSN使用修改后的GTP消息,携带两种IP版本的GSN地址和对端通讯,实现与TYPE A GSN的通讯。
例如,SGSN向GGSN使用IPv4/IPv6发送Create PDP Context Request消息,当TYPE C GGSN收到Create PDP Context Request消息,检测到包含IPv4/IPv6 SGSN Address信元后,该TYPE C GGSN在构建Create PDPContext Response消息时,在GGSN Addtess for Control Plane信元和GGSNAddress for user traffic信元中填入自己的IPv4/IPv6地址,在AlternativeGGSN Address for Control Plane信元和Alternative GGSN Address for usertraffic信元中填入自己的IPv6/IPv4地址。
可以看出TYPE C GSN在传递某些GTP信令消息时,消息中同时携带着IPv4和IPv6地址,以期望对方GSN来选择使用相应IP版本。
但是,使用这种方法,新加入网络的TYPE C GSN还是可能与现有网络上的TYPE A GSN存在着互通性问题。当TYPE C GSN向TYPE A GSN发送所述的GTP消息时,由于对GTP消息进行了修改,网络现存的TYPA AGSN可能无法正确识别所述GTP消息中的这些新增加的地址信元,从而会把所述GTP消息当作非法消息而丢弃,而导致GSN之间无法建立正常通讯。
例如在激活PDP上下文流程(PDP Context Activation Procedure)中,当未升级的TYPE A SGSN接收到TPYE C GGSN的Create PDP ContextResponse消息后,由于该消息带有Alternative GGSN Address for ControlPlane和Alternative GGSN Address for user traffic信元,TYPE A SGSN若无法识别出该GTP消息中的这些增加的地址信元,就可能会把该Create PDPContext Response消息当作非法消息或错误消息而丢弃,从而导致激活PDPContext流程失败。
同理,在SGSN间RA更新流程(Inter-SGSN RA Update Procedure)或者SGSN间SRNS重定向流程(Inter-SRNS Relocation Procedure)中,由于使用的GTP消息包含增加的地址信元,都可能导致网络中现存的TYPE ASGSN设备无法恰当处理该GTP消息而导致流程失败。
综上所述,目前,由于在3GPP TS 29.060 v6.1.0中描述的方案修改了GTP消息,因此可能存在网上现有TYPE A GSN无法识别TYPE C GSN发送过来的GTP消息的风险,导致无法正常通讯。此外,当支持IPv6的GSN贸然使用IPv6承载的GTP请求消息发给网络上现有的使用Ipv4的GSN时,则信令流程必然失败。另外,发起请求信令的GSN如何知道对方GSN的IP版本能力并使用恰当的IP版本承载GTP消息,对此,TS 29.060 v6.1.0未予描述。

发明内容
有鉴于此,本发明的主要目的在于提供一种在不同IP版本的GSN之间的通讯方法,实现TYPE C GSN和TYPE A GSN的正常通讯。
本发明提供了一种使用不同版本IP的GSN之间的通讯方法,用于包含C类型GSN和A类型GSN的GPRS网络中,C类型GSN支持IPv4和IPv6版本,A类型GSN支持IPv4版本,其中,在域名服务器(DNS Name Server)上配置某名字和对应的GSN所支持的所有版本的IP地址,源GSN向目的GSN发起通讯时,该方法包括以下步骤A、源GSN根据自己支持的IP版本,向DNS Name Server发起查询,查询名字对应的目的GSN的地址;B、DNS Name Server处理源GSN发来的查询请求,将所述目的GSN相应IP版本的地址列表返回给源GSN;C、源GSN根据获得的目的GSN的地址列表所包含的地址所使用的IP版本,确定出目的GSN所支持的IP版本,源GSN选择自身和目的GSN均支持的IP版本与目的GSN进行通讯。
其中,所述的步骤C包括当源GSN获得目的GSN的IP地址列表包含IPv6和IPv4版本的地址时,源GSN选择使用IPv6版本协议与目的GSN进行通讯。
其中,所述在DNS Name Server上配置的名字是在DNS Name Server上配置的接入点名称APN;所述的源GSN为SGSN,目的GSN为GGSN;所述的源GSN向目的GSN发起的通讯为激活PDP上下文流程;步骤A所述的源GSN向DNS Name Server查询的名字为APN。
其中,所述的在DNS Name Server上配置的某名字是在DNS NameServer上配置的路由区标识RAI逻辑名;所述的源GSN为新SGSN,目的GSN为老SGSN;所述的源GSN向目的GSN发起的通讯为SGSN间RA更新流程;步骤A中所述的源GSN向DNS查询的名字为RAI逻辑名。
其中,所述的在DNS Name Server上配置的某名字是在DNS NameServer上配置的无线网络控制器RNC逻辑名;所述的源GSN为老SGSN,目的GSN为新SGSN;所述的源GSN向目的GSN发起的通讯为SGSN间SRNS重定向流程;步骤A中所述的源GSN向DNS查询的名字为RNC逻辑名。
还提供了一种使用不同版本IP的GSN之间的通讯方法,用于包含C类型GSN和A类型GSN的GPRS网络中,C类型GSN支持IPv4和IPv6版本,A类型GSN支持IPv4版本;其特征在于,在DNS Name Server上配置某名字和对应的GSN所支持的所有版本的IP地址,在MS从老SGSN切换到新SGSN时,新SGSN和GGSN的通讯方法包括以下步骤A、作为流程发起者的SGSN根据自身支持的IP版本,向DNS发起查询,查询名字所对应的对方SGSN相应IP版本的地址;B、DNS Name Server处理流程发起者SGSN发来的查询请求,将所述对方SGSN相应IP版本的地址列表返回给流程发起者SGSN;C、流程发起者SGSN根据获得的对方SGSN的地址列表所包含的IP版本,确定出对方SGSN所支持的IP版本,流程发起者SGSN选择自身和对方SGSN均支持的IP版本与对方SGSN进行通讯;其中,在SGSN间RA更新流程里,所述的流程发起者SGSN为新SGSN,对方SGSN为老SGSN;在SGSN间SRS重定向流程里,所述的流程发起者SGSN为老SGSN,对方SGSN为新SGSN;D、老SGSN判断新SGSN与老SGSN通讯所使用的IP版本,当判断出新SGSN与老SGSN通讯使用的是IPv6时,老SGSN直接将所记录的PDP Context中的GGSN地址发送给新SGSN;当判断出新SGSN与老SGSN通讯使用的是IPv4时,则进一步判断老SGSN所记录的PDP context的GGSN地址的IP版本,若为IPv4地址则直接发给新SGSN;若为IPv6地址,则根据该IPv6地址推导出该GGSN的IPv4地址发送给新SGSN;E、新SGSN使用接收到的消息中GGSN地址字段的IP版本,与GGSN进行通讯。
其中,步骤D所述SGSN根据IPv6地址推导出GGSN的IPv4地址的步骤包括在DNS Name Server上配置C类型GGSN的名字和IPv6、IPv4地址的对应关系,SGSN根据IPv6地址向DNS Name Server发起反向查询获得该GGSN的名字,然后利用该GGSN名字进行正向查询得到对应的IPv4地址。
由上述方法可以看出,本发明提供的在不同IP版本的GSN之间的通讯方法没有在GTP消息中增加或修改信元,使用原来的GTP消息,因此对现有网络存在的TYPE A GSN有更好的兼容性。当通讯的两个GSN中的一个为TYPE A GSN时,自动降级使用IPv4进行通讯;并且,在SGSN间RA更新流程及SGSN间SRNS Relocation流程中,C类型老SGSN判断新SGSN与GGSN通讯将要使用的IP版本,将合适的IP版本的GGSN地址通知新SGSN。总的来说,使用本方法部署TYPE C GSN后,TYPE C GSN和未升级的TYPE A GSN之间自动降级使用IPv4进行通讯,同时TYPE C GSN之间可以使用IPv6进行通讯,使网络可以稳定的向全IPv6网络过渡。


图1为本发明GSN之间建立通讯的流程图。
图2为本发明SGSN之间进行切换时的流程图。
图3为本发明应用在激活PDP上下文的流程图。
图4为本发明应用在Inter-SGSN RA更新的流程图。
图5为本发明应用在Inter-SGSN SRNS重定向的流程图。
具体实施例方式
本发明提供了一种GSN之间通讯的方法,用于不同IP版本的GSN之间的通讯,特别适用于含有TYPE A GSN和TYPE C GSN的网络。本发明在源GSN(S-GSN)向目标GSN(T-GSN)发起通讯时,S-GSN首先根据自身的IP版本的支持能力,从第三方获取该T-GSN的IP地址,S-GSN使用获得的T-GSN的IP地址,判断出对方的IP版本支持能力,然后选择使用相同版本的IP协议与T-GSN建立通讯。
为使本发明更加清楚明白,以下以具体实施例进行说明,实现本发明,需要以下步骤预先,在域名服务器(DNS Name Server)上配置GSN的名字和IPv4、IPv6版本的IP地址的对应关系。这样,在DNS Name Server中建立了IPv4/IPv6地址与GSN名字的对应关系后,通过DNS正向查询,可以根据GSN的名字查询到对应的IPv4/IPv6地址;还可以先利用DNS反向查询操作,通过GSN的IPv6地址查询其对应的名字,再利用DNS正向查询操作,通过其名字查询获得GSN的IPv4地址。例如,下面示出了一个GSN名字和IPv4/IPv6地址的对应关系其中,A代表了IPv4版本,AAAA代表IPv6版本GGSN00000001.MNC00 1.MCC460.gprs.IN A 172.19.1.200GGSN00000001.MNC001.MCC460.gprs.INAAAA FEC0∷2AA:FF:FE3F:2A1C根据信令流程设计,还要配置某些信令流程中涉及到的名字与GSN的关系,例如接入点名称(APN)与GGSN的IP地址之间的对应关系,以及无线网络控制器/路由区标识(RNC/RAI)逻辑名与SGSN的IP地址之间的对应关系。一个APN可以对应多个GGSN,并且一个GGSN可以配置多个IPv4地址;一个RNC/RAI逻辑名对应于一个SGSN,本发明中对于TYPE CGSN,需要在DNS Name Server中同时配置对应的IPv6地址。
例如,当GGSN为未升级的GGSN,即TYPE A GGSN时,与现有技术相同,在DNS Name Server上仅配置其与IPv4地址的对应关系。当GGSN为TYPE C GGSN时,在DNS Name Server上不仅配置与IPv4地址的对应关系,也配置与IPv6地址的对应关系。
当源GSN(S-GSN,Source GSN)向目标GSN(T-GSN,Target GSN)发起信令交互时,参见图1,包括以下步骤步骤101S-GSN根据自身所支持的IP版本,向DNS Name Server发起查询,查询得到T-GSN相应版本的IP地址。
例如,当S-GSN为TYPE C GSN时,应尝试获取名字对应的所有版本的IP地址,包括IPv4地址和IPv6地址。当S-GSN通过DNS来获取这些信息,它可以这样操作,来获得T-GSN所对应的2种IP版本的地址它先发出一个DNS A查询,再发出一个DNS AAAA查询;或者发出一个包含了2个问题的DNS查询,问题的查询类型分别为A和AAAA。当T-GSN为TYPEC GSN,则S-GSN可以获得T-GSN的两种IP版本的地址;当T-GSN为TYPEA GSN时,则S-GSN仅可获得T-GSN的IPv4版本的地址。当S-GSN为TYPEA GSN时,则它仅发出DNS A查询,获得T-GSN的IPv4版本的地址。
步骤102S-GSN根据自身和T-GSN的IP地址的版本,选择共同支持的IP版本进行通讯。
例如,当S-GSN从步骤101中获得T-GSN的IPv6地址时,即说明S-GSN和T-GSN均支持IPv6,即均为TYPE C GSN,两个GSN之间可使用IPv6进行通讯,包括使用该IP版本的GSN地址填写GTP消息的相应GSN地址信元的值,并使用该IP版本协议封装承载GTP消息。若S-GSN从步骤101中仅获得T-GSN的IPv4地址,则说明S-GSN和T-GSN至少有一个为TYPE A GSN,则两个GSN之间使用GTP over IPv4进行通讯。
SGSN与GGSN已经建立PDP context后,当MS从原先的SGSN(称为OLD-SGSN)切换到另一个新SGSN(NEW-SGSN)时,参见图2,NEW-SGSN与GGSN的通讯方法包括以下步骤步骤201-202OLD-SGSN与NEW-SGSN使用上述步骤101-102所述方法选择适当的IP版本以进行GTP信令交互。根据实际流程要求,由NEW-SGSN首先向OLD-SGSN发起信令交互,例如在Inter-SGSN RA Update流程里,NEW-SGSN向OLD-SGSN发送SGSN Context Request消息,NEW-SGSN此时为发起方;或是由OLD-SGSN首先向NEW-SGSN发起信令交互,例如在Inter-SGSN SRNS Relocation流程里,OLD-SGSN向NEW-SGSN发送Forward Relocation Request消息,OLD-SGSN此时为发起方。
发起方SGSN根据自身所支持的IP版本,向DNS查询得到对方SGSN相应版本的IP地址列表,操作步骤可以参见步骤101,步骤101里的S-GSN即这里的发起方SGSN,步骤101里的T-GSN即这里的对方SGSN。然后发起方SGSN根据自身和对方SGSN的IP地址的版本,选择共同支持的IP版本进行通讯。
步骤203OLD-SGSN根据与NEW-SGSN建立通讯所使用的IP版本,以及所记录的PDP context中GGSN地址字段的IP地址,获取GGSN合适版本的IP地址,然后填入信令中发给NEW-SGSN。
OLD-SGSN根据与NEW-SGSN建立GTP通讯所使用的IP版本判断所记录的PDP context中GGSN地址字段的IP地址是否合适当与NEW-SGSN使用IPv6通讯时,OLD-SGSN直接将PDP context中记录的GGSN的IP地址发送给NEW-SGSN;当与NEW-SGSN使用IPv4通讯时,则进一步判断所记录的PDP context中的GGSN的IP地址版本,若为IPv4地址则直接发给NEW-SGSN,若为IPv6地址,则根据该IPv6 GGSN地址推导出对应的IPv4地址,其中的一种推导方法是OLD-SGSN依据该IPv6地址向DNSName Server发起DNS反向查询获得该GGSN的名字,然后利用该GGSN名字进行DNS正向查询得到对应的IPv4地址,最后将获得的IPv4版本的GGSN地址发送给NEW-SGSN。
步骤204NEW-SGSN接收到GGSN的IP地址,使用该地址的IP版本与GGSN建立通讯。
使用上述方法,实现了在不修改GTP消息情况下,TYPE C GSN与TYPEA GSN的正常通讯。下面将本发明应用到具体实施例中,并参照附图,对本发明进一步详细说明。
首先以本发明应用于PDP Context Activation Procedure为例,并参见图3,对上述GSN之间建立通讯的过程进一步详细说明步骤301MS发出Activate PDP Context request给SGSN,其中,该消息包括APN标识。
步骤302SGSN根据自身所支持的所有IP版本,向DNS Name Server发起DNS正向查询,查询APN所对应的GGSN地址列表,并根据DNS NameServer返回的消息获得对应的GGSN的IP地址列表。
对于TYPE C SGSN,由于支持IPv4和IPv6,应获得APN对应的GGSN的两种版本的IP地址,它可以这样操作向DNS Name Server发出一个DNSA查询,和一个DNS AAAA查询,其中A代表IPv4类型,AAAA代表IPv6类型;或者发出一个包含了2个问题的DNS查询,问题的查询类型分别为A和AAAA。对于现有的TYPE A SGSN,由于仅支持IPv4,因此只发出DNSA查询,获取APN对应的所有IPv4地址。DNS Name Server则根据查询,返回相应的IP地址列表。
步骤303SGSN从获得的GGSN的IP地址列表中,选择一个GGSN地址,根据该GGSN地址,判断GGSN能支持的IP版本,即判断GGSN的IP版本能力,SGSN选择和GGSN IP版本能力相同的IP版本和GGSN进行交互。
例如,当SGSN是TYPE A GSN时,则从步骤302获得的GGSN地址全部为IPv4地址,SGSN选择IPv4地址;当获得的IP地址列表中包含了IPv6地址,则SGSN可以优先选择IPv6版本协议,当然也可以选择IPv4版本。
步骤304SGSN与GGSN用选择的IP版本进行通讯,包括使用该版本的IP地址填充GSN Address信元,SGSN与GGSN之间使用相应的IP版本封装承载GTP消息,完成后续的激活PDP Context流程。例如首先,SGSN发出Create PDP Context request消息给选定的IP地址所代表的GGSN。在SGSN构建的Create PDP Context Request消息中,用该IP版本的SGSN地址填写SGSN Address for Control Plane和SGSN Address foruser traffic信元,而且构建后的GTP消息由该版本IP进行封装承载。
然后,GGSN接收到Create PDP Context Request消息,根据接收的消息所使用的IP版本,构建Create PDP Context response消息发回给SGSN。GGSN在构建消息时用相同IP版本的GGSN地址填写GGSN Address for ControlPlane和GGSN Address for User Traffic信元。
然后,SGSN接收到GGSN的Create PDP Context response,存储GGSN的IP地址。SGSN构建Activate PDP Accept消息,回复给MS。
下面再以本发明应用于Inter-SGSN RA update Procedure流程为例,并参见图4,对上述MS从SGSN切换到另一个新SGSN时的通讯方法进一步详细说明步骤401MS发起RA Update Request消息给新的SGSN(NEW-SGSN),其中,该消息包含old RAI信元。
步骤402NEW-SGSN由old RAI构建出RAI逻辑名,根据自身所支持的所有IP版本,向DNS Name Server发起正向查询,推导出RAI逻辑名对应的老SGSN(OLD-SGSN)的IP地址。
对于TYPE C SGSN,由于支持IPv4和IPv6,应获得RAI逻辑名对应的SGSN的两种版本的IP地址,它可以这样操作向DNS发出一个DNS A查询,和一个DNS AAAA查询;或者发出一个包含了2个问题的DNS查询,问题的查询类型分别为A和AAAA。对于现有的TYPE A SGSN,由于仅支持IPv4,因此只发出DNS A查询,获取RAI逻辑名对应的IPv4地址。DNSName Server则根据查询返回结果。
步骤403NEW-SGSN得到OLD-SGSN的IP地址列表,判断其IP版本能力,NEW-SGSN选择使用OLD-SGSN支持的IP版本,其中若2个SGSN均支持IPv6,则优先选择IPv6版本;否则选择IPv4版本。
步骤404NEW-SGSN与OLD-GGSN用NEW-SGSN所选择的IP版本进行通讯。并且通讯中,OLD-SGSN根据与NEW-SGSN通讯使用的IP版本,将所记录的PDP context中的GGSN的IP地址直接发送给NEW-SGSN,或者把由IPv6 GGSN地址推导得到的IPv4地址发送给NEW-SGSN。具体包括以下步骤首先,NEW-SGSN构建SGSN Context Request消息时,使用步骤403选择的IP版本把它封装为GTP消息后发给OLD-SGSN。包括使用选择的IP版本填写SGSN Context Request消息的SGSN Address for Control Plane信元和SGSN Context Acknowledge消息的SGSN Address for user traffic信元,在构建GTP消息时用该IP版本进行封装后发送给OLD-SGSN。
然后,OLD-SGSN接收到SGSN Context Request,使用相同IP版本构造SGSN Context Response消息,填写SGSN Address for Control Plane信元发给NEW-SGSN,并且根据与NEW-SGSN通讯所使用的IP版本,携带相应相同IP版本的GGSN地址。
其中,若OLD-SGSN与NEW-SGSN使用IPv6进行通讯,则OLD-SGSN将自己已经存储的PDP Context中的GGSN IP地址,不作改变地填写在SGSN Context Response消息中PDP Context信元里的GGSN地址中,发给新SGSN。
若OLD-SGSN与NEW-SGSN使用IPv4进行通讯,且OLD-SGSN记录的GGSN地址为IPv4,则与现有技术一样,将该地址填写在SGSN ContextResponse消息中PDP Context信元里的GGSN地址中,发给NEW-SGSN;若OLD-SGSN记录的GGSN地址为IPv6地址,则OLD-SGSN依据IPv6地址得到GGSN的IPv4地址,例如可以先根据现存的IPv6 GGSN地址进行DNS反向查询得到GGSN的名字,然后,根据该GGSN名字进行正向查询得到IPv4地址,接着用查询到的IPv4地址填写SGSN Context Response消息中PDP Context信元里的GGSN地址字段,发送给NEW-SGSN。
步骤405NEW-SGSN将SGSN Context Acknowledge消息发送给OLD-SGSN。并且,NEW-SGSN依据SGSN Context Response消息中的PDPContext信元中包含的GGSN地址的IP版本,使用该IP版本与GGSN进行通讯,GGSN使用相同IP版本封装响应的GTP消息,包括新SGSN发出Update PDP Context request消息给GGSN。GGSN根据接收到的消息的IP版本,判断到接收的消息的IP版本与原来存储的PDP Context中的SGSN地址的IP版本不同时,则修改为使用新的IP版本进行GTP通讯,并以UpdatePDP Context response响应SGSN。
其中,上面的Inter-SGSN RA update Procedure流程是NEW-SGSN向OLD-SGSN主动发起GTP信令交互通讯,当本发明应用在Inter-SGSN SRNSRelocation流程中,则是OLD-SGSN首先向NEW-SGSN发起通讯,参见图5,进一步详细说明步骤501源RNC发出Relocation Required消息给OLD-SGSN,该消息中包含目标RNC标识(target ID)。
步骤502OLD-SGSN由target ID构建出RNC逻辑名,根据自身所支持的所有IP版本,查询DNS,得到RNC逻辑名对应的SGSN(即NEW-SGSN)地址。
步骤503OLD-SGSN得到NEW-SGSN的IP地址列表,判断其IP版本能力,OLD-SGSN选择与NEW-SGSN均支持的IP版本,其中若均支持IPv6,则优先选择IPv6;否则选择IPv4版本。
步骤504OLD-SGSN与NEW-SGSN用所选择的IP版本进行通讯。并且通讯中,OLD-SGSN根据与NEW-SGSN通讯使用的IP版本,将所记录的PDP context中的GGSN IP地址直接发送给NEW-SGSN,或者把由IPv6GGSN地址推导得到的IPv4地址发送给NEW-SGSN。
其中若OLD-SGSN选择使用IPv6与NEW-SGSN进行通讯,则OLD-SGSN将自己已经存储的PDP Context中的GGSN IP地址,不加修改地填写在Forward Relocation Request消息中PDP Context信元里的GGSN地址中,发送给新SGSN。
若OLD-SGSN选择使用IPv4与NEW-SGSN进行通讯,且老SGSN记录的PDP Context中的GGSN地址为IPv4地址,则与现有技术一样,将该地址填写在Forward Relocation Request消息中PDP Context信元里的GGSN地址中,发给新SGSN;若OLD-SGSN记录的PDP Context中的GGSN地址为IPv6地址,则OLD-SGSN依据IPv6地址得到GGSN的IPv4地址,例如可以先根据现存的IPv6 GGSN地址进行DNS反向查询得到GGSN的名字,然后,根据该GGSN名字进行DNS正向查询得到IPv4地址,接着用将查询到的IPv4地址填写在Forward Relocation Request消息中PDP Context信元里的GGSN地址字段中,发送给OLD-SGSN。
步骤505NEW-SGSN依据Forward Relocation Request消息中的PDPContext信元中包含的GGSN地址的IP版本,使用该IP版本与GGSN进行通讯,后续通讯流程不再说明,具体可以参见3GPP TS 23.060 v6.1.0。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种使用不同版本IP的GSN之间的通讯方法,用于包含C类型GSN和A类型GSN的GPRS网络中,C类型GSN支持IPv4和IPv6版本,A类型GSN支持IPv4版本,其特征在于,在域名服务器DNS Name Server上配置某名字和对应的GSN所支持的所有版本的IP地址,源GSN向目的GSN发起通讯时,该方法包括以下步骤A、源GSN根据自己支持的IP版本,向DNS Name Server发起查询,查询名字对应的目的GSN的地址;B、DNS Name Server处理源GSN发来的查询请求,将所述目的GSN相应IP版本的地址列表返回给源GSN;C、源GSN根据获得的目的GSN的地址列表所包含的地址所使用的IP版本,确定出目的GSN所支持的IP版本,源GSN选择自身和目的GSN均支持的IP版本与目的GSN进行通讯。
2.根据权利要求1所述的方法,其特征在于,所述的步骤C包括当源GSN获得目的GSN的IP地址列表包含IPv6和IPv4版本的地址时,源GSN选择使用IPv6版本协议与目的GSN进行通讯。
3.根据权利要求1所述的方法,其特征在于,所述在DNS Name Server上配置的名字是在DNS Name Server上配置的接入点名称APN;所述的源GSN为SGSN,目的GSN为GGSN;所述的源GSN向目的GSN发起的通讯为激活PDP上下文流程;步骤A所述的源GSN向DNS Name Server查询的名字为APN。
4.根据权利要求1所述的方法,其特征在于,所述的在DNS Name Server上配置的某名字是在DNS Name Server上配置的路由区标识RAI逻辑名;所述的源GSN为新SGSN,目的GSN为老SGSN;所述的源GSN向目的GSN发起的通讯为SGSN间RA更新流程;步骤A中所述的源GSN向DNS查询的名字为RAI逻辑名。
5.根据权利要求1所述的方法,其特征在于,所述的在DNS Name Server上配置的某名字是在DNS Name Server上配置的无线网络控制器RNC逻辑名;所述的源GSN为老SGSN,目的GSN为新SGSN;所述的源GSN向目的GSN发起的通讯为SGSN间SRNS重定向流程;步骤A中所述的源GSN向DNS查询的名字为RNC逻辑名。
6.一种使用不同版本IP的GSN之间的通讯方法,用于包含C类型GSN和A类型GSN的GPRS网络中,C类型GSN支持IPv4和IPv6版本,A类型GSN支持IPv4版本;其特征在于,在DNS Name Server上配置某名字和对应的GSN所支持的所有版本的IP地址,在MS从老SGSN切换到新SGSN时,新SGSN和GGSN的通讯方法包括以下步骤A、作为流程发起者的SGSN根据自身支持的IP版本,向DNS发起查询,查询名字所对应的对方SGSN相应IP版本的地址;B、DNS Name Server处理流程发起者SGSN发来的查询请求,将所述对方SGSN相应IP版本的地址列表返回给流程发起者SGSN;C、流程发起者SGSN根据获得的对方SGSN的地址列表所包含的IP版本,确定出对方SGSN所支持的IP版本,流程发起者SGSN选择自身和对方SGSN均支持的IP版本与对方SGSN进行通讯;其中,在SGSN间RA更新流程里,所述的流程发起者SGSN为新SGSN,对方SGSN为老SGSN;在SGSN间SRS重定向流程里,所述的流程发起者SGSN为老SGSN,对方SGSN为新SGSN;D、老SGSN判断新SGSN与老SGSN通讯所使用的IP版本,当判断出新SGSN与老SGSN通讯使用的是IPv6时,老SGSN直接将所记录的PDP Context中的GGSN地址发送给新SGSN;当判断出新SGSN与老SGSN通讯使用的是IPv4时,则进一步判断老SGSN所记录的PDP context的GGSN地址的IP版本,若为IPv4地址则直接发给新SGSN;若为IPv6地址,则根据该IPv6地址推导出该GGSN的IPv4地址发送给新SGSN;E、新SGSN使用接收到的消息中GGSN地址字段的IP版本,与GGSN进行通讯。
7.根据权利要求6所述的方法,其特征在于,步骤D所述SGSN根据IPv6地址推导出GGSN的IPv4地址的步骤包括在DNS Name Server上配置C类型GGSN的名字和IPv6、IPv4地址的对应关系,SGSN根据IPv6地址向DNS Name Server发起反向查询获得该GGSN的名字,然后利用该GGSN名字进行正向查询得到对应的IPv4地址。
全文摘要
本发明提供了一种使用不同版本IP协议的GSN之间的通讯方法,用于包含C类型和A类型GSN的GPRS网络中,在域名服务器(DNS Name Server)上配置APN、RNC逻辑名或RAI逻辑名字和对应的GSN所支持的所有版本的IP地址,源GSN向目的GSN发起通讯时,包括以下步骤A.源GSN根据自己支持的IP版本,向DNS Name Server查询名字所对应的目的GSN的地址;B.DNS Name Server处理根据该,将所述目的GSN相应IP版本的地址列表返回给源GSN;C.源GSN根据获得的目的GSN的地址列表所包含的地址所使用的IP版本,确定出目的GSN所支持的IP版本,源GSN选择自身和目的GSN均支持的IP版本与目的GSN进行通讯。当进行SGSN间切换时,由老的SGSN将GGSN所支持的某IP版本的IP地址通知给新SGSN。应用本发明,实现C类型和A类型GSN的正常通讯。
文档编号H04L12/66GK1671123SQ20041002954
公开日2005年9月21日 申请日期2004年3月18日 优先权日2004年3月18日
发明者张光华 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1