移动业务海量数据处理系统的收集和测试
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
数据采集和分析技术的现状和发展趋势
1.2.1 数据采集和分析技术的现状
一般的网络优化活动分为两个阶段:先对现有的网络进行性能评估,对发现的问题进行分析,然后运用各种手段实施优化。而进行网络性能评估依靠的是大量的数据指标。
现在的网络优化数据采集和分析工作几乎都是由人手工来完成的,市面上为网络优化人员提供了一些辅助网络数据包抓取工具, 比如:Sniffer系列,Ethereal,SpyNet,Wireshark ,Wincap等,这些工具为专业人员提供了数据包采集的功能。但随着移动业务的增加和扩大,光靠着几个抓包工具和一些网络优化人员近手工的分析,面对移动网络中的海量数据,又缺乏统计手段,优化人员在工作上也已是力不从心。网络质量又势必会跟不上移动网络的更新和换代,从而又更加重了网络优化的负担。
1.2.2 数据收集和分析技术的发展趋势
面对日益复杂的移动网络状况和数以百万计的数据传输量,数据采集的及时性和分析的正确性也是不容忽视的重要方面,而优化人员也将渐渐达不到网络发展的水平另谋他法。
这其中的一种可行的方法,就是将这个棘手的工作交给几乎万能的电脑来做。即这个系统只需网络优化人员做出适当的配置,便可自动的抓取网络中流经的所有数据包,并遵守设定的规则对数据包进行过滤和解析,并存储入数据库中,在加入一些人工智能分析器,通过专业人员建立的模型及时准确的反映出网络的运行状况,为客户和运营商提供合理的解释和建议,从而达到网络优化分析到查询一体化。
网络优化中的数据通信收集和分析是一项复杂的工作,充分挖掘网络潜力,改善网络质量,获得客户的满意和企业最佳效益是网络优化的根本目的。
GPRS网络的介绍
2.2.1 GPRS网络实体
要实现GPRS网络,需要在传统的GSM网络中引入新的网络接口和通信协议。目前GPRS网络引入GSN(GPRS Surporting Node, GPRS支持节点)。移动台则必须是GPRS移动台或GPRS/GSM双模移动台。GSN有两种类型:一种为SGSN(Serving GPRS Supporting Node,服务GPRS支持节点),另一种为GGSN(Gateway GPRS Supporting Node,网关GPRS支持节点)。
移动的数据业务是将GPRS分组从基站发送到GPRS服务支持节点(SGSN),而不是通过移动交换中心(MSC)连接到语音网络上,SGSN与GPRS网关支持节点(GGSN)进行通信;GGSN对分组数据进行相应的处理,再发送到目的网络,如因特网或X.25网络。 来自因特网标识有移动台地址的IP包,由GGSN接收,再转发到SGSN,继而传送到移动台上。 SGSN是GSM网络结构中的一个节点,它与MSC处于网络体系的同一层。SGSN通过帧中继与BTS相连,是GSM网络结构与移动台之间的接口【1】。
SGSN的主要作用是记录移动台的当前位置信息,并且在移动台和GGSN之间完成移动分组数据的发送和接收。GGSN主要是起网关作用,它可以和多种不同的数据网络连接,如ISDN、PSPDN和LAN等。有的文献中,把GGSN称为GPRS路由器。GGSN可以把GSM网中的GPRS分组数据包进行协议转换,从而可以把这些分组数据包传送到远端的TCP/IP或X.25网络。 SGSN和GGSN利用GPRS隧道协议(GTP)对IP或X.25分组进行封装,实现二者之间的数据传输。 copyright think58 [版权所有:http://think58.com]
GTP(GPRS隧道协议)的介绍
在GPRS系统的GSN(GPRS Support Node,包括SGSN 和GGSN)之间采用GTP(GPRS Tunnel Protoco1)协议,GTP在整个GPRS协议栈中起着举足轻重的作用,GTP协议承载在TCP或UDP协议之上,分为倍令平面和传输平面,其信令平面义了多种消息。涉及到GPRS许多重要方面,传输平面则提供了GSN之间数据包传送的隧道。另外以GTP为基础的GTP’协议用于GPRS计费数据采集和传输,深入理解GTP协议是熟悉GPRS网络所必须的。
GTP 版本 0 支持信令和在一个普通报头下的用户数据。它能够与 UDP(用户数据报协议)和 TCP (传输控制协议)一起使用在注册端口 3386 上。GTP 版本 1 仅用在 UDP 中。控制平面协议 GTP-C(控制)使用注册端口 2123 而用户平面协议 GTP-U(用户)使用注册端口 2152 。
GTP 协议应用在 SGSN 和 GGSN 之间,为各个移动台(MS) 建立 GTP 通道,GTP 通道是 GPRS服务节点(GSN) 之间的安全通道,两个主机可通过该通道交换数据。
SGSN 从 MS 接收数据包,并在 GTP 包头中对其进行封装,然后才通过GTP 通道将其转发到 GGSN。GGSN 接收这些数据包时,先将它们解封,然后转发到外部主机。
一般情况下,接收端 GGSN 会校验所接收的数据包中的序列号,接受端GGSN拿自身的计数器序列号和所接收的数据包中的序列号进行比较,如果这两个序号匹配上了,则 GGSN 转发该数据包,如果它们不匹配,则 GGSN 丢弃该数据包。
数据处理系统的设计思想
下面我将根据系统的运行流程来介绍系统的各个模块的设计思想 :
3.2.1 多线程实现界面管理
管理模块主要是实现系统远行前的配置信息的设置,制定过滤规范和控制远行的状态(开始或是停止)。下面分别介绍一下:
1.因数据包的抓取需要在特定的网卡上进行,又不同机器的网卡存在差异,所以网卡设备的设置是系统开始之前的必备之举,不然将无法保证系统的正常远行,它可以由用户自行指定(需要指定所有的正确的信息包括主机,端口号等,注意一定不能使用虚拟网卡),也可以自行检测。
2.本系统提供了一个过滤规则库,可以根据用户的定制动态的调用,而这个信息需要通过界面管理模块来获取,用户可以选择协议,目标地址,源地址或数据包传输方向来过滤所需要的数据包。
3.因本系统旨在实现捕获网络数据包的同时基本同步地(根据网络状况,有一定延时)显示数据包概要信息的功能。所以本系统中有一个潜在问题:网络繁忙时,其数据流量会轻易的超过计算机的数据处理速度,此时就可能会发生漏包的情况,且网络越忙,漏包的概率越大。WinPcap库已在内核层对封包截获及过滤的效率做了优化。为了最大程度上降低漏包的概率,就必须在应用程序中使相邻两次收包之间的时间间隔尽可能短。如果以抓包—数据处理—显示—抓包~数据处理— 显示……..的方式编写程序,由于数据分析和显示的过程比较耗时,必然会漏掉大量的数据包。 think58.com [资料来源:http://www.THINK58.com]
一种解决此问题的方法是在整个捕获过程停止后集中处理数据并显示、,这样就不能同步监视网络数据,而且需要一个大容量的数据库来存储数据包,这就会给使用带来一些不便。
本系统采取另一种方法解决了这个问题。程序中使用了多线程的编程技术。利用了数据收集和数据分析两个线程。数据收集线程只负责接收数据、建立数据链表和判断是否存在工作线程,若存在则继续接收下一数据包,否则建立工作线程。数据分析线程仅负责在有新数据时解析并显示,没有新数据时自动结束。这样做的好处是,数据接收与数据显示完全分离。数据收集线程只完成最少的工作量,不必等待显示,最大程度上降低了漏包的概率。数据分析线程处理协议解析和显示,显示信息的速度仅仅受限于计算机的处理速度。
1.2.1 数据采集和分析技术的现状
一般的网络优化活动分为两个阶段:先对现有的网络进行性能评估,对发现的问题进行分析,然后运用各种手段实施优化。而进行网络性能评估依靠的是大量的数据指标。
现在的网络优化数据采集和分析工作几乎都是由人手工来完成的,市面上为网络优化人员提供了一些辅助网络数据包抓取工具, 比如:Sniffer系列,Ethereal,SpyNet,Wireshark ,Wincap等,这些工具为专业人员提供了数据包采集的功能。但随着移动业务的增加和扩大,光靠着几个抓包工具和一些网络优化人员近手工的分析,面对移动网络中的海量数据,又缺乏统计手段,优化人员在工作上也已是力不从心。网络质量又势必会跟不上移动网络的更新和换代,从而又更加重了网络优化的负担。
1.2.2 数据收集和分析技术的发展趋势
面对日益复杂的移动网络状况和数以百万计的数据传输量,数据采集的及时性和分析的正确性也是不容忽视的重要方面,而优化人员也将渐渐达不到网络发展的水平另谋他法。
这其中的一种可行的方法,就是将这个棘手的工作交给几乎万能的电脑来做。即这个系统只需网络优化人员做出适当的配置,便可自动的抓取网络中流经的所有数据包,并遵守设定的规则对数据包进行过滤和解析,并存储入数据库中,在加入一些人工智能分析器,通过专业人员建立的模型及时准确的反映出网络的运行状况,为客户和运营商提供合理的解释和建议,从而达到网络优化分析到查询一体化。
copyright think58
[资料来源:http://think58.com]
网络优化中的数据通信收集和分析是一项复杂的工作,充分挖掘网络潜力,改善网络质量,获得客户的满意和企业最佳效益是网络优化的根本目的。
GPRS网络的介绍
2.2.1 GPRS网络实体
要实现GPRS网络,需要在传统的GSM网络中引入新的网络接口和通信协议。目前GPRS网络引入GSN(GPRS Surporting Node, GPRS支持节点)。移动台则必须是GPRS移动台或GPRS/GSM双模移动台。GSN有两种类型:一种为SGSN(Serving GPRS Supporting Node,服务GPRS支持节点),另一种为GGSN(Gateway GPRS Supporting Node,网关GPRS支持节点)。
移动的数据业务是将GPRS分组从基站发送到GPRS服务支持节点(SGSN),而不是通过移动交换中心(MSC)连接到语音网络上,SGSN与GPRS网关支持节点(GGSN)进行通信;GGSN对分组数据进行相应的处理,再发送到目的网络,如因特网或X.25网络。 来自因特网标识有移动台地址的IP包,由GGSN接收,再转发到SGSN,继而传送到移动台上。 SGSN是GSM网络结构中的一个节点,它与MSC处于网络体系的同一层。SGSN通过帧中继与BTS相连,是GSM网络结构与移动台之间的接口【1】。
SGSN的主要作用是记录移动台的当前位置信息,并且在移动台和GGSN之间完成移动分组数据的发送和接收。GGSN主要是起网关作用,它可以和多种不同的数据网络连接,如ISDN、PSPDN和LAN等。有的文献中,把GGSN称为GPRS路由器。GGSN可以把GSM网中的GPRS分组数据包进行协议转换,从而可以把这些分组数据包传送到远端的TCP/IP或X.25网络。 SGSN和GGSN利用GPRS隧道协议(GTP)对IP或X.25分组进行封装,实现二者之间的数据传输。 copyright think58 [版权所有:http://think58.com]
GTP(GPRS隧道协议)的介绍
在GPRS系统的GSN(GPRS Support Node,包括SGSN 和GGSN)之间采用GTP(GPRS Tunnel Protoco1)协议,GTP在整个GPRS协议栈中起着举足轻重的作用,GTP协议承载在TCP或UDP协议之上,分为倍令平面和传输平面,其信令平面义了多种消息。涉及到GPRS许多重要方面,传输平面则提供了GSN之间数据包传送的隧道。另外以GTP为基础的GTP’协议用于GPRS计费数据采集和传输,深入理解GTP协议是熟悉GPRS网络所必须的。
GTP 版本 0 支持信令和在一个普通报头下的用户数据。它能够与 UDP(用户数据报协议)和 TCP (传输控制协议)一起使用在注册端口 3386 上。GTP 版本 1 仅用在 UDP 中。控制平面协议 GTP-C(控制)使用注册端口 2123 而用户平面协议 GTP-U(用户)使用注册端口 2152 。
GTP 协议应用在 SGSN 和 GGSN 之间,为各个移动台(MS) 建立 GTP 通道,GTP 通道是 GPRS服务节点(GSN) 之间的安全通道,两个主机可通过该通道交换数据。
SGSN 从 MS 接收数据包,并在 GTP 包头中对其进行封装,然后才通过GTP 通道将其转发到 GGSN。GGSN 接收这些数据包时,先将它们解封,然后转发到外部主机。
一般情况下,接收端 GGSN 会校验所接收的数据包中的序列号,接受端GGSN拿自身的计数器序列号和所接收的数据包中的序列号进行比较,如果这两个序号匹配上了,则 GGSN 转发该数据包,如果它们不匹配,则 GGSN 丢弃该数据包。
[资料来源:THINK58.com]
数据处理系统的设计思想
下面我将根据系统的运行流程来介绍系统的各个模块的设计思想 :
3.2.1 多线程实现界面管理
管理模块主要是实现系统远行前的配置信息的设置,制定过滤规范和控制远行的状态(开始或是停止)。下面分别介绍一下:
1.因数据包的抓取需要在特定的网卡上进行,又不同机器的网卡存在差异,所以网卡设备的设置是系统开始之前的必备之举,不然将无法保证系统的正常远行,它可以由用户自行指定(需要指定所有的正确的信息包括主机,端口号等,注意一定不能使用虚拟网卡),也可以自行检测。
2.本系统提供了一个过滤规则库,可以根据用户的定制动态的调用,而这个信息需要通过界面管理模块来获取,用户可以选择协议,目标地址,源地址或数据包传输方向来过滤所需要的数据包。
3.因本系统旨在实现捕获网络数据包的同时基本同步地(根据网络状况,有一定延时)显示数据包概要信息的功能。所以本系统中有一个潜在问题:网络繁忙时,其数据流量会轻易的超过计算机的数据处理速度,此时就可能会发生漏包的情况,且网络越忙,漏包的概率越大。WinPcap库已在内核层对封包截获及过滤的效率做了优化。为了最大程度上降低漏包的概率,就必须在应用程序中使相邻两次收包之间的时间间隔尽可能短。如果以抓包—数据处理—显示—抓包~数据处理— 显示……..的方式编写程序,由于数据分析和显示的过程比较耗时,必然会漏掉大量的数据包。 think58.com [资料来源:http://www.THINK58.com]
一种解决此问题的方法是在整个捕获过程停止后集中处理数据并显示、,这样就不能同步监视网络数据,而且需要一个大容量的数据库来存储数据包,这就会给使用带来一些不便。
本系统采取另一种方法解决了这个问题。程序中使用了多线程的编程技术。利用了数据收集和数据分析两个线程。数据收集线程只负责接收数据、建立数据链表和判断是否存在工作线程,若存在则继续接收下一数据包,否则建立工作线程。数据分析线程仅负责在有新数据时解析并显示,没有新数据时自动结束。这样做的好处是,数据接收与数据显示完全分离。数据收集线程只完成最少的工作量,不必等待显示,最大程度上降低了漏包的概率。数据分析线程处理协议解析和显示,显示信息的速度仅仅受限于计算机的处理速度。