一种生成动态GTP隧道的方法技术

技术编号:15523809 阅读:77 留言:0更新日期:2017-06-04 12:28
本发明专利技术提供一种生成动态GTP隧道的方法,包括:1)SGSN节点和GGSN节点利用第一TEID值建立初级GTP隧道;2)在需要更改TEID值时,由所述SGSN节点利用上一次建立的GTP隧道,将用于所述SGSN节点的新TEID值和用于所述GGSN节点的新TEID值发送至所述GGSN节点,建立新的GTP隧道。在本发明专利技术中,搭建初级GTP隧道的目的在于初始地在GSN节点之间建立连接关系;在存在连接关系的情况下,可以根据需要动态地改变所采用的TEID值,第二次、第三次、甚至更多次地建立新的GTP隧道,从而使得GTP隧道的TEID值不再是一成不变的,以增加GTP隧道的安全性。

Method for generating dynamic GTP tunnel

Including the method, the invention provides a dynamic generation of GTP tunnel: 1) SGSN nodes and GGSN nodes using the first TEID value establishment of primary GTP tunnel; 2) there is a need to change the TEID value, GTP tunnel is established by the SGSN node using a new TEID for the new TEID, will the SGSN node and for the value of the GGSN node is sent to the GGSN node, the establishment of new tunnel GTP. In the invention, the primary purpose is to build the GTP tunnel initially establish connections between nodes in the GSN; in the presence of connection relationship, can according to need to dynamically change the value of TEID, second times, third times, and even more time to set up a new GTP tunnel, which makes the GTP tunnel the TEID value is not immutable and frozen, to increase the safety of the GTP tunnel.

【技术实现步骤摘要】
一种生成动态GTP隧道的方法
本专利技术涉及无线通信,尤其涉及无线通信计算机网络。
技术介绍
GPRS隧道协议(GPRSTunnellingProtocol,GTP)是一种用于传输分组数据的通信协议,其可以在全球移动通信系统(GSM)和通用移动通信系统(UMTS)中使用。目前,已使用的GTP协议可被分为GTP数据传输平面(GTP-U)和GTP控制平面(GTP-C)。其中,GTP-U协议规定了利用在GPRS支持节点(GSN)之间建立的隧道传输用户分组数据的要求;GTP-C协议规定了控制和管理用户接入GPRS网络隧道的要求,从而基于GTP-C协议来创建、更新、或者删除GTP隧道。然而,GTP协议的现有传输模式难以防止在数据传输过程中受到的网络攻击。这是由于,GTP隧道主要通过隧道端点标识符(tunnelendpointidentifier,TEID)来标识隧道的端点,以在服务GPRS支持节点(SGSN)与网关GPRS支持节点(GGSN)间进行通信。然而,在传统方法中,用于生成TEID的算法的复杂度不高,容易找出其生成规律;并且,隧道建立后的TEID值又与用户传输的数据信息静态地绑定,一旦攻击者窃取了TEID值将很容易导致用户传输的数据信息泄露。可以看出,在上述现有技术中存在难以保证分组数据传输的安全性的问题。
技术实现思路
因此,本专利技术的目的在于克服上述现有技术的缺陷,提供一种生成动态GTP隧道的方法,包括:1)SGSN节点和GGSN节点利用第一TEID值建立初级GTP隧道;2)由所述SGSN节点利用当前GTP隧道,将用于所述SGSN节点的新TEID值和用于所述GGSN节点的新TEID值发送至所述GGSN节点,建立新的GTP隧道。优选地,根据所述方法,其中,步骤1)和或步骤2)中的所述TEID值为经过伪装的TEID值。优选地,根据所述方法,其中,所述步骤1)包括:1-1)所述SGSN节点向所述GGSN节点发送种子时间、以及利用所述种子时间伪装的用于所述GGSN节点的第一TEID值;1-2)所述GGSN节点向所述SGSN节点发送利用所述种子时间伪装的用于所述SGSN节点的第一TEID值。优选地,根据所述方法,其中,所述步骤2)包括:所述SGSN节点向所述GGSN节点发送新种子时间、利用所述新种子时间伪装的用于所述GGSN节点的新TEID值、以及利用所述种子时间伪装的用于所述SGSN节点的新TEID值。优选地,根据所述方法,其中,所述步骤1)或步骤2)还包括,利用种子时间对TEID值进行伪装:A1)利用种子时间生成TEID值;A2)在生成的所述TEID值和ID值之间建立对应关系;A3)选择与需要使用的TEID值相对应的ID值,以作为伪装后的TEID值进行传输。优选地,根据所述方法,其中,所述步骤A1)包括:采用基于所述种子时间的伪随机数发生器,生成TEID值。优选地,根据所述方法,其中,所述步骤A1)包括采用以下计算式生成TEID值:strand((unsigned)time(0)),new_teid=random()%(RAND_MAX–max(C1))+C1,其中,所述函数strand()为伪随机数发生器,time(0)为种子时间,C1为周期性旋转量,max()为求最大值的函数,RAND_MAX为new_teid能够产生的最大随机数,random()%(RAND_MAX–max(C1))是基于伪随机数发生器产生最大值为RAND_MAX–max(C1)的函数。优选地,根据所述方法,其中,所述步骤1-1)还包括:所述GGSN节点根据接收到的种子时间生成TEID值,并将接收到的用于所述GGSN节点的ID值与所述生成的TEID值进行比对,以确定伪装前的用于所述GGSN节点的第一TEID值;所述步骤1-2)还包括:所述SGSN节点将接收到的用于所述SGSN节点的ID值与利用所述种子时间生成的TEID值进行比对,以确定伪装前的用于所述SGSN节点的第一TEID值。优选地,根据所述方法,其中,所述步骤2)还包括:所述GGSN节点根据接收到的种子时间生成TEID值,并将接收到的用于所述GGSN节点的ID值、以及用于所述SGSN节点的ID值与所述生成的TEID值进行比对,以确定伪装前的用于所述GGSN节点的新TEID值、以及伪装前的用于所述SGSN节点的新TEID值。并且,本专利技术还提供了一种生成动态GTP隧道的设备,包括:用于SGSN节点和GGSN节点利用第一TEID值建立初级GTP隧道的装置;由所述SGSN节点利用当前GTP隧道,将用于所述SGSN节点的新TEID值和用于所述GGSN节点的新TEID值发送至所述GGSN节点,建立新的GTP隧道的装置。与现有技术相比,本专利技术的优点在于:在GSN节点之间存在连接关系的情况下,可以根据需要动态地改变所采用的TEID值,第二次、第三次、甚至更多次地建立新的GTP隧道,从而使得GTP隧道的TEID值不再是一成不变的,以增加GTP隧道的安全性。并且,在建立隧道的过程中,传输经过伪装的TEID值,以进一步增加网络攻击者窃取真实TEID值的难度。附图说明以下参照附图对本专利技术实施例作进一步说明,其中:图1是现有技术中包含GTP隧道的网络系统的一个场景示意图;图2是根据本专利技术的一个实施例在SGSN节点与GGSN节点之间建立GTP隧道的流程示意图;图3是根据本专利技术的另一个实施例在SGSN节点与GGSN节点之间建立GTP隧道的流程示意图;图4是根据本专利技术的一个实施例生成用于记录TEID值与ID值之间对应关系的ID字典的流程图;图5是根据本专利技术的一个实施例的跳跃表形式的ID字典的部分内容的示意图。具体实施方式下面结合附图和具体实施方式对本专利技术作详细说明。图1示出了包含GTP隧道的网络系统的一个场景示例,现有技术与本专利技术均适用于该场景。参考图1,用户接入基站eNodeB,通过无线网络控制器(RNC)关联到服务GPRS支持节点(SGSN)。当用户有业务需要处理时,通过在SGSN节点与网关GPRS支持节点(GGSN)之间建立的GTP隧道(GTP-C和GTP-U)来实现在无线接入网与核心网之间的数据传输。如图1中小气球所标出的,GTP隧道处于网络层级的会话层,其传输层协议通常采用TCP或UDP协议。在现有技术中,为了在GSN节点之间建立GTP隧道的连接关系,通常采用携带了TEID值的信令在GSN节点之间进行信令交互,在成功建立GTP隧道后将不再修改所使用的TEID值。以采用TCP作为传输层协议为例,首先,SGSN节点向GGSN节点发送包含用于GGSN节点的TEID值的“CreatePDPContextRequest”消息,SGSN发送此消息的目的IP地址是DNS(域名服务器)服务器提供的GGSNIP地址列表中的第一个IP地址,目的是SGSN要进行PDP上下文激活过程;在发送了创建PDP上下文请求消息后,SGSN标记PDP上下文为“等待响应”;然后,GGSN发送包含用于SGSN节点的TEID值的“CreatePDPContextResponse”消息,作为创建PDP上下文请求的响应,当SGSN收到创建PDP上下文响应时,原因值指示“请求接受”,SGSN就激活PDP上下文,若不是“请求接受”,则创建PD本文档来自技高网...
一种生成动态GTP隧道的方法

【技术保护点】
一种生成动态GTP隧道的方法,包括:1)SGSN节点和GGSN节点利用第一TEID值建立初级GTP隧道;2)由所述SGSN节点利用当前GTP隧道,将用于所述SGSN节点的新TEID值和用于所述GGSN节点的新TEID值发送至所述GGSN节点,建立新的GTP隧道。

【技术特征摘要】
1.一种生成动态GTP隧道的方法,包括:1)SGSN节点和GGSN节点利用第一TEID值建立初级GTP隧道;2)由所述SGSN节点利用当前GTP隧道,将用于所述SGSN节点的新TEID值和用于所述GGSN节点的新TEID值发送至所述GGSN节点,建立新的GTP隧道。2.根据权利要求1所述的方法,其中,步骤1)和或步骤2)中的所述TEID值为经过伪装的TEID值。3.根据权利要求2所述的方法,其中,所述步骤1)包括:1-1)所述SGSN节点向所述GGSN节点发送种子时间、以及利用所述种子时间伪装的用于所述GGSN节点的第一TEID值;1-2)所述GGSN节点向所述SGSN节点发送利用所述种子时间伪装的用于所述SGSN节点的第一TEID值。4.根据权利要求2所述的方法,其中,所述步骤2)包括:所述SGSN节点向所述GGSN节点发送新种子时间、利用所述新种子时间伪装的用于所述GGSN节点的新TEID值、以及利用所述种子时间伪装的用于所述SGSN节点的新TEID值。5.根据权利要求3或4所述的方法,其中,所述步骤1)和或步骤2)还包括,利用种子时间对TEID值进行伪装:A1)利用种子时间生成TEID值;A2)在生成的所述TEID值和ID值之间建立对应关系;A3)选择与需要使用的TEID值相对应的ID值,以作为伪装后的TEID值进行传输。6.根据权利要求5所述的方法,其中,所述步骤A1)包括:采用基于所述种子时间的伪随机数发生器,生成TEID值。7.根据权利要求6所述的方法,其中,所述步骤A1)包括采用以下计算式生成TEID值:strand((unsigned)time(0...

【专利技术属性】
技术研发人员:刘子辰龙隆张玉成石晶林韩雪韦伟
申请(专利权)人:中国科学院计算技术研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1