CN103024819A - 基于用户终端ip的第三代移动通信核心网数据分流方法 - Google Patents

基于用户终端ip的第三代移动通信核心网数据分流方法 Download PDF

Info

Publication number
CN103024819A
CN103024819A CN2012101989074A CN201210198907A CN103024819A CN 103024819 A CN103024819 A CN 103024819A CN 2012101989074 A CN2012101989074 A CN 2012101989074A CN 201210198907 A CN201210198907 A CN 201210198907A CN 103024819 A CN103024819 A CN 103024819A
Authority
CN
China
Prior art keywords
message
address
module
core network
pdsn
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012101989074A
Other languages
English (en)
Other versions
CN103024819B (zh
Inventor
唐勇
陈曙晖
赵国鸿
程冕
苏金树
卢泽新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201210198907.4A priority Critical patent/CN103024819B/zh
Publication of CN103024819A publication Critical patent/CN103024819A/zh
Application granted granted Critical
Publication of CN103024819B publication Critical patent/CN103024819B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于用户终端IP的第三代移动通信核心网数据分流方法,目的是提供一种能够将所有数据报文按用户IP地址均匀分流到与该IP地址对应的后端分析设备的方法。技术方案是在前端数据处理分流设备中增加学习模块和上下行判定模块,改进分流模块;学习模块对信令报文中携带的PDSN或GGSN地址进行提取并存储,并将报文发送给上下行判定模块;上下行判定模块判定报文是上行链路报文还是下行链路报文,将报文发往解封装模块;解封装模块还原被封装了的报文,将报文送给分流模块;分流模块按照用户终端IP对所有报文进行分流。采用本发明可以使后端分析设备获取每一条完整的用户数据流,保证用户数据还原的准确性。

Description

基于用户终端IP的第三代移动通信核心网数据分流方法
技术领域
本发明涉及第三代移动互联核心网(也称3G核心网)链路下的高速网络流量监控领域,特别是涉及一种根据用户终端网络互联协议IP(Internet Protocol)地址进行核心网数据分流的方法。
背景技术
在中国,移动互联网通信经历了两代的发展之后,第三代移动通信3G(3rdGeneration)已经成熟并开始商用,3G的目标是为用户提供质量更佳的移动语音、宽带移动数据和移动多媒体服务,提供更大的系统容量和更高的频谱利用率,满足人们对通信个性化的需求。
目前3G的主流技术标准包括CDMA2000(Code Division Multiple Access2000,码分多址2000),WCDMA(Wideband Code Division Multiple Access,宽带码分多址)和TD-SCDMA(Time Division-Synchronous Code Division MultipleAccess,时分同步码分多址),可以说三种技术标准在实际应用中各有所长。但不管是哪种技术标准,最终的应用目的都是让移动终端与Internet相连。随着3G移动互联网的不断普及,以往许多只在固网互联网络中发生的安全事件正不断地向移动互联网络中蔓延,针对移动互联网用户的攻击手段正呈现出层出不穷的趋势。因此对3G核心网中的流量进行采集并分析,以对攻击行为进行监测和追踪变得十分有意义。CDMA2000核心网络主要由PCF(Packet Control Function,分组控制功能)节点和PDSN(Packet Data Serving Node,分组数据服务节点)组成。两者之间的接口称为A10和A11接口;链接PCF和PDSN的逻辑链路分为上行链路和下行链路,上行链路为PCF端往PDSN端通信的链路,下行链路为PDSN端往PCF端通信的链路。
所有经过A10接口的数据报文都会被加上GRE(Generic RoutingEncapsulation,通用路由封装协议)隧道封装,以进行隧道传输。同时根据PCF端和PDSN端协商的结果,数据报文会存在VJ(Van Jacobson,压缩TCP协议)数据报文,MPPC(Microsoft Point-To-Point Compression,微软点对点压缩)数据报文,以及不可避免的分片报文,因此在分流前必须对其进行解封装、解压缩以及分片重组的处理,以还原最初的用户数据报文。
WCDMA和TD-SCDMA在核心网域采用了相同的构建方式,两者核心网络结构相同。WCDMA和TD-SCDMA核心网络主要由GPRS服务支持节点(SGSN)和网关GPRS支持节点(GGSN)组成,这里的GPRS指General Packet RadioService,即通用分组无线服务技术。两者之间的接口称为Gn接口;链接SGSN和GGSN的逻辑链路也分为上行链路和下行链路,上行链路为SGSN端往GGSN端通信的链路,下行链路为GGSN端往SGSN端通信的链路。
所有经过Gn接口的数据报文都会被加上GTP(GPRS Tunnel Protocol,GPRS隧道协议)隧道封装,以进行隧道传输。与CDMA2000协议不同的是,在WCDMA或TD-SCDMA协议中传输的数据报文,只需要对其进行解封装和分片重组的处理,不需要解压缩,以还原最初的用户数据报文。
高速流量监控设备均放置在三大主流技术标准核心网域接口处。高速流量监控设备一般由前端数据处理分流设备和多个后端分析系统组成。前端数据处理分流设备与3G核心网和多个后端分析系统通过光纤相连,对从3G核心网链路进入的报文进行预处理并对报文分流。前端数据处理分流设备由解封装模块和分流模块组成。解封装模块与3G核心网链路以及分流模块相连,对链路上所有的数据报文进行解封装、解压缩以及分片重组的处理,然后将处理完成的报文发送给分流模块。分流模块与解封装模块以及后端分析系统相连,对经过解封装模块处理的报文按需求进行分流,最后将分流完成的报文发送给后端分析系统。后端分析系统对前端数据处理分流设备输出的报文进一步分析,实现网络行为审计、网络内容审计和入侵检测。然而随着核心网链路速度的不断提升,这种高速流量监控系统往往需要较多的后端分析系统来完成对庞大用户数据量的并行分析监测,同时为了不丢失任何的有用信息,还需要保证用户数据流具有“流完整性”,即将属于同一用户的所有数据流都分发到同一台后端分析系统上。因此,这就需要一种新的分流方式将从前端数据处理分流设备捕获的用户数据报文准确地按用户均匀地分流到每一台后端分析系统中,以实现监测还原的效率最大化。
目前3G核心网用户数据分流方法主要是根据五元组规则进行分流,即根据报文的源IP地址、目的IP地址、源端口、目的端口和协议号进行用户数据报文的分流,使用的算法主要为散列算法。
所谓散列算法,又称为哈希算法,是一种基本的数据索引方法,也是当前设备在处理3G核心网数据报文后将其分流到后端分析设备的一种主要分流算法。它建立一个从报文的关键字集合到散列表地址集合的映射,即在散列表地址和报文的关键字之间建立一个确定的对应关系f,使每个关键字和一个唯一的存储位置(即散列表地址)相对应。在查找时,首先根据这个对应关系f查找给定关键字K的映射f(K),若散列表中存在和f(K)相等的记录,则关键字K必定在f(K)的存储位置上。由此,不需要进行比较便可直接取得所查记录,映射f(K)就是哈希函数。根据f(K)即可由关键字K确定f(K)在散列表中的唯一存放地址。因为一段明文在经过哈希映射后将产生唯一的值,在计算上不存在哈希为同一值的不同输入,所以在网络分流设备中,这个关键字K通常被设置为报文的源IP地址、目的IP地址、端口号等数据报文的重要信息,产生一个较小的二进制值后再与后端分析设备的MAC(Medium/Media Access Control,介质访问控制)地址进行一一对应,达成分流效果。图2为基于散列算法的数据报文五元组分流方法,步骤如下:
第一步,高速流量监控设备初始化,分流模块建立表项为M项的哈希表,M是设备管理员根据后端分析系统的数量。哈希表的每个表项包括索引值、MAC地址值两个域,索引值域表明MAC地址在表中的位置,MAC地址值用来存放设备管理员输入的目的MAC地址,每个目的MAC地址对应一台后端分析系统。同时,分流模块建立表项为L项的五元组地址表,L由设备管理员根据存储空间的大小决定。五元组地址表的每个表项包括ID号、源IP地址域、目的IP地址域、源端口域、目的端口域和协议域五个域,ID号表明存放的五元组信息在五元组地址表中的位置,其余五个域用来存放从数据报文中提取出的五元组信息。
第二步,解封装模块接收来自3G核心网链路的原始数据报文,对原始数据报文进行解封装、解压缩及分片重组,还原其封装内的用户数据报文,将还原后的用户数据报文发送给分流模块。
第三步,分流模块中的分流软件从还原后的用户数据报文中提取出五元组信息即源IP地址、目的IP地址、源端口号、目端口号以及协议号,将五元组信息写入五元组地址表中。
第四步,分流软件根据分流需求(分流需求通过指令下达给分流软件,如要求按源IP地址进行分流),从五元组地址表中提取出与分流要求对应的源IP地址。
第五步,分流软件对源IP地址进行哈希运算得到哈希值,将此哈希值与哈希表项数N的二进制数进行与运算,得到针对此源IP的索引值,然后将此索引值与哈希表中的每一个索引值域进行比较,得到此索引值域所对应的MAC地址。
第六步,分流软件根据第五步对应的MAC地址值给数据报文填上目的MAC地址,将报文发送到目的MAC地址所对应的的后端分析设备,返回第三步继续接收下一个报文。
根据上文所述,3G核心网的逻辑链路分为上行链路和下行链路,上行链路报文为PCF端发往PDSN端的报文(或SGSN端往GGSN端的报文),即用户终端发往Internet网络的报文;下行链路为PDSN端发往PCF端的报文(或GGSN端往SGSN端的报文),即Internet网络回复给用户终端的报文。由此可知上行链路报文的源IP地址和下行链路报文的目的IP地址都为用户终端IP。如果采用五元组的分流方式,只能保证所有相同五元组内容的报文进入同一台后端分析系统,而无法区别用户。即假设有一条用户数据流在用户终端IP地址A和Internet地址B之间进行通信,因为链路分为上行链路和下行链路,在上行链路中用户终端IP地址A出现在源IP地址域,而在下行链路中用户终端IP地址A则出现在了目的IP地址域,同理Internet地址B也是这样。采用五元组的分流方法时,因为A和B的值不可能相等,得到的哈希值也肯定不一样,因此分流时通过哈希值经过与运算获取的索引值很可能不一样,那么得到的MAC地址就会不同,从而使两个方向的报文被分流到不同的后端分析设备中,若是A请求向B发送报文,若B收到报文,则B会向A发送响应报文,这种情况下A到B和B到A这两个通行方向的报文都应该属于用户终端IP地址A。因此使用五元组的分流方法将无法保证将属于同一用户的数据报文都分流到同一台后端分析设备中,这将导致每台分析设备在还原用户数据内容时因只获取了部分用户数据而失去用户数据报文之间的关联性,从而无法完整还原用户信息。因此,如何使得属于同一用户的所有数据准确完整地分流到同一台后端分析设备是3G核心网数据处理分流领域急于解决的技术问题。
发明内容
本发明要解决的技术问题是提供一种高速、可靠的数据分流方法,能够将所有数据报文按用户IP地址均匀分流到与该用户IP地址对应的后端分析设备中,使得后端分析设备能够获取每一条完整的用户数据流,从而保证用户数据还原的准确性。
为实现上述分流的目的,本发明的技术方案是:
第一步,改进高速流量监控设备中的前端数据处理分流设备,前端数据处理分流设备与3G核心网和多个后端分析系统通过光纤相连。前端数据处理分流设备的改进方法是:
1.1在前端数据处理分流设备增加学习模块和上下行判定模块:
1.1.1学习模块与3G核心网链路和上下行判定模块相连,从3G核心网链路获取用户数据报文和各类控制报文,对A11接口控制报文和Gn接口控制报文中携带的PDSN或GGSN地址进行提取并存储,并将所有报文发送给上下行判定模块。当3G核心网是CDMA2000核心网链路时,学习模块初始化时构建一张表项为N的PDSN地址表,然后获取CDMA2000核心网链路中控制报文携带的PDSN地址,并将其储存到PDSN地址表中;当3G核心网是WCDMA或TD-SCDMA核心网链路时,学习模块初始化时构建一张表项为N的GGSN地址表,然后获取WCDMA或TD-SCDMA核心网链路中控制报文携带的GGSN地址,并将其存储到GGSN地址表中。PDSN或GGSN地址表的项数N根据实际链路情况决定,N为正整数且128≥N≥32。PDSN或GGSN地址表的每个表项由ID号和地址值两个域组成,ID号表明每个PDSN或GGSN地址在表中的位置,地址值用来存放学习到的控制报文中携带的PDSN或GGSN地址。
1.1.2上下行判定模块与学习模块和解封装模块相连,上下行判定模块从学习模块获得报文后,对所有报文进行链路上下行状态的判定,并将经过判定的数据报文发送给解封装模块。
1.2改进分流模块:去掉五元组地址表,分流模块由哈希表和分流软件组成。在分流软件中增加对所有报文用户终端IP的判定功能,并在哈希运算时采用用户终端IP作为关键字进行查表,不再使用五元组规则。分流模块在初始化时在存储空间内建立表项为M项的哈希表用于存储目的MAC地址,M等于后端分析设备的数目。哈希表与背景技术基于散列算法的数据报文五元组分流方法中的相同。
第二步,前端数据处理分流设备初始化:
2.1初始化学习模块:构建表项为N项的PDSN或GGSN地址表。
2.2初始化分流模块:初始化哈希表,将每台后端分析设备的MAC地址写入哈希表的MAC地址值域。
第三步,学习模块接收来自3G核心网链路的用户数据报文和各类控制报文,若3G核心网链路是CDMA2000核心网链路,对A11接口控制报文中的PDSN地址进行提取并存储,若3G核心网链路是WCDMA或TD-SCMDA核心网链路,则对Gn接口控制报文中携带的GGSN地址进行提取并存储,并将所有报文发送给上下行判定模块,流程如下:
3.1从3G核心网接收报文并判定报文类型。如果是数据报文或其它控制报文(指A11接口控制报文和Gn接口控制报文以外的控制报文),转3.5;如果是A11接口控制报文或Gn接口控制报文,转3.2。
3.2如果与学习模块相连的是CDMA2000核心网链路,学习模块提取下一个到达的A11接口控制报文中携带的PDSN地址,如果与学习模块相连的是WCDMA或TD-SCDMA核心网链路,学习模块则提取下一个到达的Gn接口控制报文中携带的GGSN地址。
3.3如果与学习模块相连的是CDMA2000核心网链路,学习模块将提取到的PDSN地址与PDSN地址表中的每一个表项进行比对,如果有任何一个表项跟提取到的PDSN地址相同,则返回步骤3.1;如果跟所有表项都不匹配,则将此PDSN地址写入PDSN地址表中尚空缺的表项中,转3.5。
3.4如果与学习模块相连的是WCDMA或TD-SCDMA核心网链路,学习模块将提取到的GGSN地址与GGSN地址表中的每一个表项进行比对,如果有任何一个表项跟提取到的GGSN地址相同,则返回步骤3.1;如果跟所有表项都不匹配,则将此GGSN地址写入GGSN地址表中尚空缺的表项中,执行3.5。
3.5将报文发送给上下行判定模块,转第四步。
第四步,上下行判定模块收到来自学习模块的报文后,判定报文是上行链路报文还是下行链路报文,并将判定结果写入该报文源MAC地址的特定位中,流程如下:
4.1接收报文,提取报文中的源IP地址和目的IP地址。
4.2如果与学习模块相连的是CDMA2000核心网链路,将报文的源IP地址和目的IP地址与学习模块中PDSN地址表中的每一个表项的地址值域进行逐项比对。
4.3如果发现报文的源IP地址与PDSN地址表中的PDSN地址匹配,说明此报文为下行链路报文,将此报文的源MAC地址中的任意两个比特位写为下行特定值,可为0x01,转步骤4.8。
4.4如果发现报文的目的IP地址与表中的PDSN地址匹配,说明此报文为上行链路报文,将此报文的源MAC地址中的任意两个比特位写为上行特定值,上行特定值可为0x10,转步骤4.8。
4.5如果与学习模块相连的是WCDMA或TD-SCDMA核心网链路,将报文的源IP地址和目的IP地址与学习模块中GGSN地址表中的每一个表项的地址值域进行逐项比对。
4.6如果发现报文的源IP地址与GGSN地址表中的GGSN地址匹配,说明此报文为下行链路报文,将此报文的源MAC地址中的两个比特位写为下行特定值,可为0x01,转步骤4.8。
4.7如果发现报文的目的IP地址与表中的GGSN地址匹配,说明此报文为上行链路报文,将此报文的源MAC地址中的两个比特位写为上行特定值,上行特定值可为0x10,转步骤4.8。
4.8将报文发往解封装模块。
第五步,由于3G核心网链路上的报文除A11接口控制报文和Gn接口控制报文外都被加上了一层特定的隧道封装(这种报文称为封装报文),为了完整还原用户本身的数据内容,解封装模块接收来自上下行判定模块的所有报文,对封装报文进行解封装、解压缩及分片重组,还原其封装内的报文,将还原后的报文送给分流模块。对于A11接口控制报文和Gn接口控制报文,因其没有隧道封装,将不作任何处理直接发送至分流模块。解封装模块的结构与工作流程与背景技术基于散列算法的数据报文五元组分流方法中的一样。
第六步,分流模块收到从经过解封装处理的报文后,先进行报文中用户终端IP的判定,再按照用户终端IP对所有报文进行分流,流程如下:
6.1收到来自解封装模块的报文后,分流软件首先根据被上下行判定模块写为特定值的比特位来判断报文的源IP地址和目的IP地址哪个是用户终端IP地址,方法如下:
6.1.1如果特定值的比特位中写入的是上行特定值,可知此报文为用户终端发往Internet网络的报文,判定此报文的源IP地址即为用户终端IP地址,转6.2。
6.1.1如果特定值的比特位中写入的是下行特定值,可知此报文为Internet网络回复给用户终端的报文,判定此报文的目的IP地址即为用户终端IP地址,转6.2。
6.2分流软件对得到的用户终端IP地址进行哈希运算得到哈希值,将此哈希值与哈希表项数N的二进制数进行与运算,得到针对此源IP的索引值,然后将此索引值与哈希表中的每一个索引值域进行比较,得到此索引值域所对应的MAC地址值域中的MAC地址值。
6.3分流软件根据6.2得到的MAC地址值给报文的目的MAC地址域填上目的MAC地址,然后将报文发送到目的MAC地址所对应的后端分析设备,转第三步,继续接收下一个报文。
整个处理流程根据报文持续到达而循环运行,以达到处理每个3G核心网链路报文的目的,直到强制结束程序或者断电为止。
采用本发明可以达到以下技术效果:本发明提供了在CDMA2000、WCDMA和TD-SCDMA三大主流标准核心网链路中基于用户终端IP的用户数据报文分流方法。采用本分流方法,可以保证同一用户产生的所有数据都能在同一台后端设备中进行分析还原,确保后端设备中用户数据的完整性以及还原的准确性。
附图说明
图1是背景技术公布的高速网络内容监控系统的总体结构图。
图2为背景技术中根据五元组规则进行分流的数据分流流程图。
图3是本发明改进后的前端数据处理分流设备结构图。
图4为本发明总体流程图。
具体实施方式
图1是背景技术公布的高速网络内容监控系统的总体结构图。高速流量监控设备均放置在三大主流技术标准核心网域接口处。高速流量监控设备一般由前端数据处理分流设备和多个后端分析系统组成。前端数据处理分流设备与3G核心网和多个后端分析系统通过光纤相连,对从3G核心网链路进入的报文进行预处理并对报文分流。前端数据处理分流设备由解封装模块和分流模块组成。解封装模块与3G核心网链路以及分流模块相连,对链路上所有的数据报文进行解封装、解压缩以及分片重组的处理,然后将处理完成的报文发送给分流模块。分流模块与解封装模块以及后端分析系统相连,分流模块由哈希表、五元组地址表、分流软件组成,由分流软件对经过解封装模块处理的报文按需求进行分流,并将分流完成的报文发送给后端分析系统。后端分析系统对前端数据处理分流设备输出的报文进一步分析,实现网络行为审计、网络内容审计和入侵检测。
图2是背景技术所述基于散列算法的数据报文五元组分流方法的流程图。
第一步,高速流量监控设备初始化,分流模块建立表项为M项的哈希表,M为后端分析系统的数量。哈希表的每个表项包括索引值、MAC地址值两个域,索引值域表明MAC地址在表中的位置,MAC地址值用来存放设备管理员输入的目的MAC地址,每个MAC地址对应一台后端分析系统。同时,分流模块建立表项为L项的五元组地址表,L由设备管理员根据存储空间的大小决定。五元组地址表的每个表项包括ID号、源IP地址域、目的IP地址域、源端口域、目的端口域和协议域五个域,ID号表明存放的五元组信息在五元组地址表中的位置,其余五个域用来存放从数据报文中提取出的五元组信息。
第二步,解封装模块接收来自3G核心网链路的原始数据报文,对原始数据报文进行解封装、解压缩及分片重组,还原其封装内的用户数据报文,将还原后的用户数据报文发送给分流模块。
第三步,分流模块中的分流软件从还原后的用户数据报文中提取出五元组信息即源IP地址、目的IP地址、源端口号、目端口号以及协议号,将五元组信息写入五元组地址表中。
第四步,分流软件根据分流需求(分流需求通过指令下达给分流软件,如要求按源IP地址进行分流),从五元组地址表中提取出与分流要求对应的源IP地址。
第五步,分流软件对源IP地址进行哈希运算得到哈希值,将此哈希值与哈希表项数N的二进制数进行与运算,得到针对此源IP的索引值,然后将此索引值与哈希表中的每一个索引值域进行比较,得到此索引值域所对应的MAC地址。
第六步,分流软件根据第五步对应的MAC地址值给数据报文填上目的MAC地址,将报文发送到目的MAC地址所对应的的后端分析设备,返回第三步继续接收下一个报文。
图3是本发明改进后的前端数据处理分流设备结构图。
高速流量监控设备还是由前端数据处理分流设备和后端分析系统组成,后端分析系统不变,前端数据处理分流设备与3G核心网和多个后端分析系统通过光纤相连。前端数据处理分流设备的改进方法是:
1.1在前端数据处理分流设备增加学习模块和上下行判定模块:
1.1.1学习模块与3G核心网链路和上下行判定模块相连,从3G核心网链路获取用户数据报文和各类控制报文,对A11接口控制报文和Gn接口控制报文中携带的PDSN或GGSN地址进行提取并存储,并将所有报文发送给上下行判定模块。当3G核心网是CDMA2000核心网链路时,学习模块初始化时构建一张表项为N的PDSN地址表,然后获取CDMA2000核心网链路中控制报文携带的PDSN地址,并将其储存到PDSN地址表中;当3G核心网是WCDMA或TD-SCDMA核心网链路时,学习模块初始化时构建一张表项为N的GGSN地址表,然后获取WCDMA或TD-SCDMA核心网链路中控制报文携带的GGSN地址,并将其存储到GGSN地址表中。PDSN或GGSN地址表的项数N根据实际链路情况决定,N为正整数且128≥N≥32。PDSN或GGSN地址表的每个表项由ID号和地址值两个域组成,ID号表明每个PDSN或GGSN地址在表中的位置,地址值用来存放学习到的控制报文中携带的PDSN或GGSN地址。
1.1.2上下行判定模块与学习模块和解封装模块相连,上下行判定模块从学习模块获得报文后,对所有报文进行链路上下行状态的判定,并将经过判定的数据报文发送给解封装模块。
1.2改进分流模块:去掉五元组地址表,分流模块由哈希表和分流软件组成。在分流软件中增加对所有报文用户终端IP的判定功能,并在哈希运算时采用用户终端IP作为关键字进行查表,不再使用五元组规则。分流模块在初始化时在存储空间内建立表项为M项的哈希表用于存储目的MAC地址,M等于后端分析设备的数目。哈希表与背景技术基于散列算法的数据报文五元组分流方法中的相同。
图4是本发明总体流程图。
第一步,改进高速流量监控设备中的前端数据处理分流设备,前端数据处理分流设备与3G核心网和多个后端分析系统通过光纤相连。
第二步,前端数据处理分流设备初始化。
第三步,学习模块接收来自3G核心网链路的用户数据报文和各类控制报文,若3G核心网链路是CDMA2000核心网链路,对A11接口控制报文中的PDSN地址进行提取并存储,若3G核心网链路是WCDMA或TD-SCMDA核心网链路,则对Gn接口控制报文中携带的GGSN地址进行提取并存储,并将所有报文发送给上下行判定模块,
第四步,上下行判定模块收到来自学习模块的报文后,判定报文是上行链路报文还是下行链路报文,并将判定结果写入该报文源MAC地址的特定位中,将报文发往解封装模块。
第五步,解封装模块接收来自上下行判定模块的报文,对封装报文进行解封装、解压缩及分片重组,还原其封装内的报文,将还原后的报文送给分流模块。对于A11接口控制报文和Gn接口控制报文,因其没有隧道封装,将不作任何处理直接发送至分流模块。
第六步,分流模块收到从经过解封装处理的报文后,先进行报文中用户终端IP的判定,再按照用户终端IP对所有报文进行分流,分流完毕转第三步,继续接收下一个报文。

Claims (3)

1.一种基于用户终端IP的第三代移动通信核心网数据分流方法,其特征在于包括以下步骤:
第一步,改进高速流量监控设备中的前端数据处理分流设备,前端数据处理分流设备与3G核心网即第三代移动通信核心网和多个后端分析系统通过光纤相连,前端数据处理分流设备的改进方法是:
1.1在前端数据处理分流设备增加学习模块和上下行判定模块:
1.1.1学习模块与3G核心网链路和上下行判定模块相连,从3G核心网链路获取用户数据报文和各类控制报文,对A11接口控制报文和Gn接口控制报文中携带的PDSN或GGSN地址进行提取并存储,并将所有报文发送给上下行判定模块;当3G核心网是CDMA2000核心网链路时,学习模块初始化时构建一张表项为N的PDSN地址表,然后获取CDMA2000核心网链路中控制报文携带的PDSN地址,并将其储存到PDSN地址表中;当3G核心网是WCDMA或TD-SCDMA核心网链路时,学习模块初始化时构建一张表项为N的GGSN地址表,然后获取WCDMA或TD-SCDMA核心网链路中控制报文携带的GGSN地址,并将其存储到GGSN地址表中;PDSN或GGSN地址表的项数N为正整数;PDSN或GGSN地址表的每个表项由ID号和地址值两个域组成,ID号表明每个PDSN或GGSN地址在表中的位置,地址值用来存放学习到的控制报文中携带的PDSN或GGSN地址;所述PDSN是指CDMA2000核心网络中的分组数据服务节点,GGSN是指WCDMA和TD-SCDMA核心网络中的网关GPRS支持节点,GPRS指通用分组无线服务技术;
1.1.2上下行判定模块与学习模块和解封装模块相连,上下行判定模块从学习模块获得报文后,对所有报文进行链路上下行状态的判定,并将经过判定的数据报文发送给解封装模块;
1.2改进分流模块:分流模块由哈希表和分流软件组成;在分流软件中增加对所有报文用户终端IP的判定功能,并在哈希运算时采用用户终端IP作为关键字进行查表,分流模块在初始化时在存储空间内建立表项为M项的哈希表用于存储目的MAC地址,M等于后端分析设备的数目;哈希表的每个表项包括索引值、MAC地址值两个域,索引值域表明MAC地址在表中的位置,MAC地址值用来存放目的MAC地址,每个目的MAC地址对应一台后端分析系统;
第二步,前端数据处理分流设备初始化:
2.1初始化学习模块:构建表项为N项的PDSN或GGSN地址表;
2.2初始化分流模块:初始化哈希表,将每台后端分析设备的MAC地址写入哈希表的MAC地址值域;
第三步,学习模块接收来自3G核心网链路的用户数据报文和各类控制报文,若3G核心网链路是CDMA2000核心网链路,对A11接口控制报文中的PDSN地址进行提取并存储,若3G核心网链路是WCDMA或TD-SCMDA核心网链路,则对Gn接口控制报文中携带的GGSN地址进行提取并存储,并将所有报文发送给上下行判定模块,流程如下:
3.1从3G核心网接收报文并判定报文类型,如果是数据报文或其它控制报文即A11接口控制报文和Gn接口控制报文以外的控制报文,转3.5;如果是A11接口控制报文或Gn接口控制报文,转3.2;
3.2如果与学习模块相连的是CDMA2000核心网链路,学习模块提取下一个到达的A11接口控制报文中携带的PDSN地址,如果与学习模块相连的是WCDMA或TD-SCDMA核心网链路,学习模块则提取下一个到达的Gn接口控制报文中携带的GGSN地址;
3.3如果与学习模块相连的是CDMA2000核心网链路,学习模块将提取到的PDSN地址与PDSN地址表中的每一个表项进行比对,如果有任何一个表项跟提取到的PDSN地址相同,则返回步骤3.1;如果跟所有表项都不匹配,则将此PDSN地址写入PDSN地址表中尚空缺的表项中,转3.5;
3.4如果与学习模块相连的是WCDMA或TD-SCDMA核心网链路,学习模块将提取到的GGSN地址与GGSN地址表中的每一个表项进行比对,如果有任何一个表项跟提取到的GGSN地址相同,则返回步骤3.1;如果跟所有表项都不匹配,则将此GGSN地址写入GGSN地址表中尚空缺的表项中,执行3.5;
3.5将报文发送给上下行判定模块,转第四步;
第四步,上下行判定模块收到来自学习模块的报文后,判定报文是上行链路报文还是下行链路报文,并将判定结果写入该报文源MAC地址的特定位中,流程如下:
4.1接收报文,提取报文中的源IP地址和目的IP地址;
4.2如果与学习模块相连的是CDMA2000核心网链路,将报文的源IP地址和目的IP地址与学习模块中PDSN地址表中的每一个表项的地址值域进行逐项比对;
4.3如果发现报文的源IP地址与PDSN地址表中的PDSN地址匹配,说明此报文为下行链路报文,将此报文的源MAC地址中的任意两个比特位写为下行特定值,转步骤4.8;
4.4如果发现报文的目的IP地址与表中的PDSN地址匹配,说明此报文为上行链路报文,将此报文的源MAC地址中的任意两个比特位写为上行特定值,转步骤4.8;
4.5如果与学习模块相连的是WCDMA或TD-SCDMA核心网链路,将报文的源IP地址和目的IP地址与学习模块中GGSN地址表中的每一个表项的地址值域进行逐项比对;
4.6如果发现报文的源IP地址与GGSN地址表中的GGSN地址匹配,说明此报文为下行链路报文,将此报文的源MAC地址中的两个比特位写为下行特定值,转步骤4.8;
4.7如果发现报文的目的IP地址与表中的GGSN地址匹配,说明此报文为上行链路报文,将此报文的源MAC地址中的两个比特位写为上行特定值,转步骤4.8;
4.8将报文发往解封装模块;
第五步,解封装模块接收来自上下行判定模块的所有报文,对于A11接口控制报文和Gn接口控制报文,直接发送至分流模块;对A11接口控制报文和Gn接口控制报文以外的所有报文进行解封装、解压缩及分片重组,还原其封装内的报文,将还原后的报文送给分流模块;
第六步,分流模块收到从解封装模块送来的报文后,先进行报文中用户终端IP的判定,再按照用户终端IP对所有报文进行分流,流程如下:
6.1收到来自解封装模块的报文后,分流软件首先根据被上下行判定模块写为特定值的比特位来判断报文的源IP地址和目的IP地址哪个是用户终端IP地址,方法如下:
6.1.1如果特定值的比特位中写入的是上行特定值,可知此报文为用户终端发往Internet网络的报文,判定此报文的源IP地址即为用户终端IP地址,转6.2;
6.1.1如果特定值的比特位中写入的是下行特定值,可知此报文为Internet网络回复给用户终端的报文,判定此报文的目的IP地址即为用户终端IP地址,转6.2;
6.2分流软件对得到的用户终端IP地址进行哈希运算得到哈希值,将此哈希值与哈希表项数N的二进制数进行与运算,得到针对此源IP的索引值,然后将此索引值与哈希表中的每一个索引值域进行比较,得到此索引值域所对应的MAC地址值域中的MAC地址值;
6.3分流软件根据MAC地址值给报文的目的MAC地址域填上目的MAC地址,然后将报文发送到目的MAC地址所对应的后端分析设备,转第三步,继续接收下一个报文。
2.如权利要求1所述的基于用户终端IP的第三代移动通信核心网数据分流方法,其特征在于所述PDSN或GGSN地址表的项数N满足128≥N≥32。
3.如权利要求1所述的基于用户终端IP的第三代移动通信核心网数据分流方法,其特征在于所述下行特定值为0x01,上行特定值为0x10。
CN201210198907.4A 2012-06-15 2012-06-15 基于用户终端ip的第三代移动通信核心网数据分流方法 Expired - Fee Related CN103024819B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210198907.4A CN103024819B (zh) 2012-06-15 2012-06-15 基于用户终端ip的第三代移动通信核心网数据分流方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210198907.4A CN103024819B (zh) 2012-06-15 2012-06-15 基于用户终端ip的第三代移动通信核心网数据分流方法

Publications (2)

Publication Number Publication Date
CN103024819A true CN103024819A (zh) 2013-04-03
CN103024819B CN103024819B (zh) 2014-11-26

Family

ID=47972838

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210198907.4A Expired - Fee Related CN103024819B (zh) 2012-06-15 2012-06-15 基于用户终端ip的第三代移动通信核心网数据分流方法

Country Status (1)

Country Link
CN (1) CN103024819B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103312618A (zh) * 2013-05-30 2013-09-18 中国人民解放军国防科学技术大学 基于软硬件结合的流管理方法
CN103338482A (zh) * 2013-07-24 2013-10-02 成都西加云杉科技有限公司 分流数据传输方法、传输设备以及用户终端
CN105450473A (zh) * 2015-12-07 2016-03-30 湖南戎腾网络科技有限公司 一种面向lte网络的用户溯源关联方法及前端采集器
CN105763391A (zh) * 2014-12-17 2016-07-13 中国移动通信集团公司 一种会话数据流处理系统、方法和相关设备
CN107046503A (zh) * 2017-04-24 2017-08-15 新华三技术有限公司 一种报文传输方法、系统及其装置
CN108491267A (zh) * 2018-03-13 2018-09-04 百度在线网络技术(北京)有限公司 用于生成信息的方法和装置
CN109379210A (zh) * 2018-09-03 2019-02-22 中新网络信息安全股份有限公司 基于机房管理实现网络设备物理位置自动化定位的方法
CN112987628A (zh) * 2021-05-12 2021-06-18 南京斯酷环境科技有限公司 一种综合监控骨干网接口通讯模块及其监控方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1318689A2 (en) * 2001-12-10 2003-06-11 NTT DoCoMo, Inc. Communication control system, communication control method, base station and mobile station
CN101854663A (zh) * 2010-04-30 2010-10-06 华为技术有限公司 数据传输设备、方法以及通信系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1318689A2 (en) * 2001-12-10 2003-06-11 NTT DoCoMo, Inc. Communication control system, communication control method, base station and mobile station
CN101854663A (zh) * 2010-04-30 2010-10-06 华为技术有限公司 数据传输设备、方法以及通信系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103312618B (zh) * 2013-05-30 2016-03-30 中国人民解放军国防科学技术大学 基于软硬件结合的流管理方法
CN103312618A (zh) * 2013-05-30 2013-09-18 中国人民解放军国防科学技术大学 基于软硬件结合的流管理方法
CN103338482A (zh) * 2013-07-24 2013-10-02 成都西加云杉科技有限公司 分流数据传输方法、传输设备以及用户终端
CN103338482B (zh) * 2013-07-24 2016-08-24 成都西加云杉科技有限公司 分流数据传输方法、传输设备以及用户终端
CN105763391B (zh) * 2014-12-17 2019-06-25 中国移动通信集团公司 一种会话数据流处理系统、方法和相关设备
CN105763391A (zh) * 2014-12-17 2016-07-13 中国移动通信集团公司 一种会话数据流处理系统、方法和相关设备
CN105450473A (zh) * 2015-12-07 2016-03-30 湖南戎腾网络科技有限公司 一种面向lte网络的用户溯源关联方法及前端采集器
CN105450473B (zh) * 2015-12-07 2018-07-13 湖南戎腾网络科技有限公司 一种面向lte网络的用户溯源关联方法及前端采集器
CN107046503A (zh) * 2017-04-24 2017-08-15 新华三技术有限公司 一种报文传输方法、系统及其装置
CN107046503B (zh) * 2017-04-24 2020-08-04 新华三技术有限公司 一种报文传输方法、系统及其装置
CN108491267A (zh) * 2018-03-13 2018-09-04 百度在线网络技术(北京)有限公司 用于生成信息的方法和装置
CN109379210A (zh) * 2018-09-03 2019-02-22 中新网络信息安全股份有限公司 基于机房管理实现网络设备物理位置自动化定位的方法
CN112987628A (zh) * 2021-05-12 2021-06-18 南京斯酷环境科技有限公司 一种综合监控骨干网接口通讯模块及其监控方法

Also Published As

Publication number Publication date
CN103024819B (zh) 2014-11-26

Similar Documents

Publication Publication Date Title
CN103024819B (zh) 基于用户终端ip的第三代移动通信核心网数据分流方法
CN104348740B (zh) 数据包处理方法和系统
CN104348716B (zh) 一种报文处理方法及设备
CN110012029A (zh) 一种区分加密和非加密压缩流量的方法和系统
CN101136854B (zh) 一种实现数据包线速处理的方法和装置
US9276853B2 (en) Hashing of network packet flows for efficient searching
CN106209506A (zh) 一种虚拟化深度包检测流量分析方法及系统
CN104794170A (zh) 基于指纹多重哈希布隆过滤器的网络取证内容溯源方法
CN103067218B (zh) 一种高速网络数据包内容分析装置
CN107241305A (zh) 一种基于多核处理器的网络协议分析系统及其分析方法
CN110034966B (zh) 一种基于机器学习的数据流分类方法及系统
CN103618733A (zh) 一种应用于移动互联网的数据过滤系统及方法
CN105141637A (zh) 一种以流为粒度的传输加密方法
CN108270699A (zh) 报文处理方法、分流交换机及聚合网络
CN103457952B (zh) 一种基于加密引擎的IPSec处理方法和设备
CN101667964B (zh) 一种访问控制列表规则的配置方法及装置
CN101505283B (zh) 一种报文处理方法及装置
CN104350488A (zh) 用于资源受限主机的选择性数据冗余消除的系统和方法
CN106257867A (zh) 一种加密流量的业务识别方法和装置
Lee et al. High performance payload signature-based Internet traffic classification system
CN105915930A (zh) 一种视频文件发送方法及装置
CN105049456B (zh) 一种基于网页链接请求的隐秘通信方法
CN101984635B (zh) P2p协议流量识别方法及系统
CN109428774B (zh) 一种dpi设备的数据处理方法及相关的dpi设备
CN101102228A (zh) 一种确定数据流站点和流量统计的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141126

Termination date: 20210615