多制式移动通信网络上网数据流量测量装置及其方法与流程

文档序号:11235374阅读:783来源:国知局
多制式移动通信网络上网数据流量测量装置及其方法与流程
本发明属于计量领域,具体涉及一种多制式移动通信网络上网数据流量测量装置及其方法。
背景技术
:随着国内移动通信网络发展,基于2g(gprs,cdma),3g(wcdma,cdma2000和td-scdma),4g(td-lte,fdd-lte)和wifi的移动数据业务得到广泛应用,移动通信运营商收费是以移动通信过程中产生的上网数据流量的大小作为依据,移动通信运营商的数据流量计算系统和计费系统属于贸易结算设备范围。按照《计量法》规定,贸易结算设备应列入强制计量范围。同时随着使用移动通信网络数据业务的用户数量不断增加,移动通信网络上网数据流量的计量准确性问题也成为公众关心的焦点。但是目前缺乏对移动通信运营商上网数据流量进行计量的装置,因此,质检计量系统无法对移动通信运营商上网数据流量计量进行有效监督。目前用户普遍使用在手机等无线终端使用上网数据流量测量软件进行上网数据流量测量。此类软件是利用系统提供的接口函数来获得上网数据流量,由于存在系统其他软件干扰、数据包丢失和重传等问题,造成测量的上网数据流量和移动通信运营商处测量结果偏差很大。总体而言,当前的现有技术中存在如下问题:(1)无法直接获取移动通信网络上网数据流量测量数据,为使测量结果接近于运营商测量结果,需要采用加权算法和修正算法来计算最终流量测量结果,该计算过程会引入误差,造成测量结果和移动通信运营商测量结果差距进一步扩大。(2)未考虑在哪一网络协议层进行数据流量测量,造成数据流量测量口径与移动通信运营商测量口径不一致,由此引起测量结果和移动通信运营商测量结果有较大差距。(3)难以复现同一数据流量测试场景,不能满足计量的重复性和稳定性要求不能提供稳定的测试,不能重复多次再现测试结果。(4)方法只限于理论,未在实际硬件上予以实现。技术实现要素:本发明的目的在于解决现有技术中存在的的问题,并提供一种通信网络数据流量测量方法,该装置可以完成2g(gprs,cdma),3g(wcdma,cdma2000和td-scdma)和4g(td-lte,fdd-lte)制式下移动通信网络和wifi上网数据流量测量。本发明所采用的具体技术方案如下:多制式移动通信网络上网数据流量测量装置,包括无线上网通信模块和本地以太网接口中至少1个,以及cpu、存储单元、gps时钟单元和电源;所述的cpu连接无线上网通信模块和/或本地以太网接口;cpu在传输过程中利用嵌入在网卡驱动程序中的钩子程序,在数据通道上捕捉上网数据流量测量过程中的数据包;解析捕捉到的数据包包头,根据数据包类型、特征和标识,对目标层中的数据包进行累计,得到上网数据流量测量数据;所述的无线上网通信模块用于接入移动通信运营商的无线空中链路,并通过该链路链接至服务器;所述的本地以太网接口用于通过通信运营商的以太网连接至服务器;所述的存储单元连接于cpu上,用于存储传输过程中cpu记录的上网数据流量测量数据;所述的gps时钟单元连接于cpu上,用于同步cpu的系统时间;所述的电源用于为测量装置供电。作为优选,所述的无线上网通信模块为wcdma3g模块、cdma20003g模块和td-scdma3g模块、td-lte4g模块、fdd-lte4g模块或wifi模块中的一种或多种,其中wcdma3g模块、cdma20003g模块和td-scdma3g模块、td-lte4g模块、fdd-lte4g模块上设置有安装sim卡的卡槽。作为优选,还包括用于人机交互显示的电容触摸屏。作为优选,还包括msata硬盘接口,用于扩展硬盘,提供存储空间。作为优选,还包括sd接口和/或usbhost接口,用于拷贝数据流量测量结果。作为优选,所述的电源包括外接电源和/或内置的锂电池。作为优选,所述的存储单元包括nandflash、ddrram存储单元以及由msata硬盘接口连接至cpu上的msata硬盘。本发明的另一目的在于提供一种基于上述测量装置的多制式移动通信网络上网数据流量测量方法,步骤如下:s1:选定进行测量的无线上网通信模块,并将无线上网通信模块接入对应移动通信运营商的无线空中链路;s2:启动所述的测量装置,并对无线上网通信模块、存储系统和显示系统进行硬件初始化;s3:判断无线上网通信模块的通信网络制式,若网络制式为2g、3g或ppp模式4g网络,则初始化信号通知机制和共享内存机制,加载用于监控网卡工作状态的第一钩子程序,加载启动内核和用于监控网卡驱动程序中数据流量的第二钩子程序,监控数据通道中的所有网络操作,同时调用at指令初始化拨号参数、模块通信参数和网络类型参数并加载配置,调用串口工作台进程,进入联网模式;若网络制式为usb接口下的td-lte4g网络或fdd-lte4g网络,则初始化设置td-lte或fdd-lte流量模式下的信号通知机制和共享内存机制,加载用于监控4g流量的钩子程序,调用ifconfig命令加载初始化网卡设备,注册到netdevice列表,同时调用at指令初始化拨号参数、模块通信参数和网络类型参数并加载配置,调用串口工作台进程;若网络制式为usb接口wifi网络,则初始化设置wifi流量模式下的信号通知机制和共享内存机制,加载用于监控wifi流量的钩子程序,调用ifconfig命令加载初始化网卡设备,注册到netdevice列表;s4:利用gps时钟单元同步cpu的系统时间,完成装置系统时间设置;s5:cpu开始与服务器进行目标文件的传输,在传输过程中利用嵌入在网卡驱动程序中的第二钩子程序,在数据通道上捕捉上网数据流量测量过程中的数据包;解析捕捉到的数据包包头,根据数据包类型、特征和标识,对目标层中的数据包进行累计,得到上网数据流量测量数据。本发明的再一目的是提供一种多制式移动通信网络上网数据流量计量方法,按照如上述测量方法得到上网数据流量测量数据后,通过移动通信运营商供用户查询流量的服务器读取上网流量明细,将移动通信运营商上网流量计费系统测量的数据流量测量数据与本装置测量的数据流量测量数据进行比较,得到数据流量测量数据偏差,计算该偏差是否超过阈值,若超过则判定移动通信运营商上网流量计费系统不准确,否则判定移动通信运营商上网流量计费系统准确。作为优选,针对同一目标文件,间隔重复步骤s5若干次,并保存每次测量得到的上网数据流量测量数据结果,以进行重复性验证。本发明相对于现有技术而言,具有以下有益效果:1、本发明可以直接在数据通道上获取通信网络数据流量测量数据,无须进行加权或修正算法。2、本发明采用将数据流量监控钩子程序嵌入驱动程序中,在数据通道上实时捕捉上网数据流量测量过程中的数据包,并解析捕捉到的数据包包头,判断数据包类型、特征和标识,根据判断结果,剔除不属于统计范围的数据包,对属于统计范围的移动通信网络上网数据流量数据包进行实时累计,得到上网数据流量测量数据测量结果,结果不需要进行加权或者修正,显著提高上网数据流量测量数据测量精度。3、本发明可以分别统计ip层上行数据流量测量数据、ip层下行数据流量测量数据、tcp层上行数据流量测量数据和tcp层下行数据流量测量数据,用户可以获得单独上行和下行的测量数据,也可以分别获得tcp层和ip层测量数据。4、本发明获得的移动通信网络上网数据流量测量数据与运营商保持一致。本发明采用的移动通信网络上网数据流量测量方法,由于采用数据流量监控钩子程序嵌入驱动程序并在数据通道上实时捕捉上网数据流量测量过程中的数据包的方法,测试结果和运营商保持高度一致性,保证了测量结果的准确性和公正性。5、本发明可以复现同一数据流量测试场景,满足计量的重复性和稳定性要求。计量要求测试装置和方法具有很好的稳定性和重复性,使用本发明采用的方法,可以在不同时间不同地点进行同一数据流量测试,测试具有复现性,具有很好重复性和稳定性,完全符合计量要求。附图说明图1为通信网络数据流量测量方法的流程图;图2为实施例中通信网络数据流量测量装置的结构示意图;图3为一实施例中通信网络数据流量测量方法的流程图;图4为一实施例中通信网络数据流量测量方法的流程图;图5为一实施例中通信网络数据流量测量方法的流程图;图6为网络终端获取数据包的流程图;图7为通信网络数据流量计量方法的流程图。具体实施方式下面结合附图和具体实施方式对本发明做进一步阐述和说明。本发明中各个实施方式的技术特征在没有相互冲突的前提下,均可进行相应组合。本发明提出了一种通信网络数据流量测量方法,基本步骤如下:s1:将网络终端(移动设备、pc机或者其他集成有功能模块的网络设备)接入待测量的通信网络,通信网络包括2g、3g、4g、5g、wifi网络、wimax、有线网络或以太网。s2:通过该通信网络再与目标服务器进行数据传输(上行或下行,优选为下载),传输过程中将一个用于监控数据流量的钩子程序嵌入网卡驱动程序中,在数据通道上捕捉上网数据流量测量过程中的数据包;s3:解析捕捉到的数据包包头;s4:根据数据包的解析结果(包括类型、特征和标识),可以将数据包归类至对应的层,然后对目标层中的数据包进行累计,得到该层上网数据流量测量数据。为实现该方法,本发明继续提供如图2所示的一种多制式移动通信网络上网数据流量测量装置。该装置包括cpu以及连接与cpu上的无线上网通信模块、本地以太网接口、存储单元、gps时钟单元、电容触摸屏、音频输入输出单元、msata硬盘接口、sd接口、usbhost接口和电源,存储单元包括nandflash、ddrram存储单元以及msata硬盘。其中,无线上网通信模块为wcdma3g模块、cdma20003g模块和td-scdma3g模块、td-lte4g模块、fdd-lte4g模块或wifi模块中的一种或多种,具体视需要测量何种网络数据流量而定。本发明中wifi模块为自带组件,因此无线上网通信模块可根据需要从wcdma3g模块、cdma20003g模块和td-scdma3g模块、td-lte4g模块、fdd-lte4g模块中选取一种或多种。无线上网通信模块上设置有安装sim卡的卡槽,测量时将对应运营商的sim卡插入卡槽中。cpu采用飞思卡尔i.mx6armcortex-a9处理器,主频1ghz;ddrram存储单元采用ddr3内存,1gb容量;nandflash采用高速emmc接口的inandflash,8gbyte容量,支持inand启动;无线上网通信模块采用mini-pcie接口3g模块(支持wcdma,cdma2000和td-scdma,向下兼容2g(gprs,cdma))和4g模块(td-lte,fdd-lte),支持指令集,可根据需要配置,天线为外置sma接口,支持中国移动、中国电信和中国联通三大运营;电容触摸屏采用lvds接口电容式多点触摸显示屏;wlan单元使用wifi模块,支持802.11b/g/n;gps时钟单元使用gps模块,天线为外置sma接口;音频输入输出单元提供音频编、解码接口;msata硬盘接口提供sata接口,最大支持4tmsata硬盘;sd接口提供一个标准sd卡接口;本地以太网接口提供一个10/100/1000mbpsbase-t以太网口;usbhost接口支持4个usbhost接口,以及一个usbotg;电源管理单元采用10000毫安时7.2v的锂电池和外接电源。各设备间可以根据供应商提供的接线说明进行接线,对此不作限定。移动通信网络上网数据流量测量装置中,各硬件功能如下:cpu:硬件装置核心,处理指令、执行操作、控制时间、处理数据等作用,内部搭载linux系统。上网通信模块:cpu连接无线上网通信模块和本地以太网接口,无线上网通信模块用于接入移动通信运营商的无线空中链路,并通过该链路以及有线链路链接至服务器,如图2所示。本地以太网接口用于通过通信运营商的以太网连接至服务器。在进行移动通信网络的流量测量时,上行数据经无线上网通信模块或调制后发送至无线空中链路;从无线空中链路接收下行数据并解调后传送至流量测量装置,cpu在传输过程中利用嵌入在网卡驱动程序中的钩子程序,在数据通道上捕捉上网数据流量测量过程中的数据包;解析捕捉到的数据包包头,根据数据包类型、特征和标识,对目标层中的数据包进行累计,得到上网数据流量测量数据。当需要测定以太网流量时,则通过以太网与服务器之间进行数据传输,以相同方式监控网卡的数据通道。ddrram存储单元:易失性存储设备,用于临时存储嵌入式系统运行时临时数据。nandflash:非易失性存储设备,用于存储装置嵌入式操作系统。电容触摸屏:人机交互显示,系统接收控制命令,显示设置参数和测量结果。wlan单元:采用wifi模块,用于连接wifi热点。gps时钟单元:系统时间同步。音频输入输出单元:本发明的设备也可以通过网络进行视频播放,并在视频播放过程中监控数据流量,本单元用于播放视频过程中的音频信号的输入和输出。msata硬盘接口:扩展硬盘,用于在数据传输过程中为接收到的文件提供临时存储空间。sd接口:支持外接sd卡,用于拷贝数据流量测量结果。usbhost接口:支持外接usb设备,用于拷贝数据流量测量结果。电源管理单元:包括外接电源和内置的锂电池,为装置提供电源供应。上述方法可以根据用户需要,对不同层的上网数据流量进行测量。目标层可以是网络协议中的任意一层,例如tcp/ip四层模型中的应用层、传输层、互连网络层、网络接口层;osi七层模型中的物理层、数据链路层、网络层、传输层、会话层、表示层、应用层;2g网络中的网络层、gtp层、tcp/udp层、ip层、数据链路层、物理层。基于上述测量装置,可以具体设计一种多制式移动通信网络上网数据流量测量方法,步骤如下:步骤1:选定进行测量的无线上网通信模块,并将无线上网通信模块接入对应移动通信运营商的无线空中链路;步骤2:启动所述的测量装置,并对无线上网通信模块、存储系统和显示系统进行硬件初始化;步骤3:判断无线上网通信模块的通信网络制式,若网络制式为2g、3g或ppp模式4g网络,则初始化信号通知机制和共享内存机制,加载用于监控网卡工作状态的第一钩子程序,加载启动内核和用于监控网卡驱动程序中数据流量的第二钩子程序,监控数据通道中的所有网络操作,同时调用at指令初始化拨号参数、模块通信参数和网络类型参数并加载配置,调用串口工作台进程,进入联网模式;若网络制式为usb接口下的td-lte4g网络或fdd-lte4g网络,则初始化设置td-lte或fdd-lte流量模式下的信号通知机制和共享内存机制,加载用于监控4g流量的钩子程序,调用ifconfig命令加载初始化网卡设备,注册到netdevice列表,同时调用at指令初始化拨号参数、模块通信参数和网络类型参数并加载配置,调用串口工作台进程;若网络制式为usb接口wifi网络,则初始化设置wifi流量模式下的信号通知机制和共享内存机制,加载用于监控wifi流量的钩子程序,调用ifconfig命令加载初始化网卡设备,注册到netdevice列表;步骤4:利用gps时钟单元同步cpu的系统时间,完成装置系统时间设置;步骤5:cpu开始与服务器进行目标文件的传输,在传输过程中利用嵌入在网卡驱动程序中的第二钩子程序,在数据通道上捕捉上网数据流量测量过程中的数据包;解析捕捉到的数据包包头,根据数据包类型、特征和标识,对目标层中的数据包进行累计,得到上网数据流量测量数据。该方法的各个步骤可以在嵌入式系统中通过不同模块来实现。由于不同制式的网络存在差异,因此上述方法应用于不同网络中时也要进行相应的改变。另外,由于在数据传输过程中,系统中其他进程在活动时也会产生数据流量,因此为了减少其他进程的干扰,本发明的方法最好运行于linux系统中。下面针对三类最为常见的网络制式,以搭载linux操作系统的嵌入式系统为例介绍上述方法中s3和s5的实现方式。当通信网络为2g、3g或ppp模式4g网络时,上述流量测量方法步骤为:如图3所示,系统初始化设置ppp模式下的信号通知机制和共享内存机制,调用pppd-2.4.4进程并以后台方式运行,加载用于监控pppd-2.4.4进程工作状态的第一钩子程序,加载启动内核ppp驱动,加载用于监控pppd-2.4.4驱动中数据流量的第二钩子程序,监控linux设备文件标准接口read()、write()、ioctl()的所有操作,同时调用at指令初始化拨号参数、模块通信参数和网络类型参数并将加载这些配置,调用串口工作台进程,进入联网模式进行数据包的传输。在与目标服务器进行数据传输过程中,利用嵌入在网卡驱动程序中的第二钩子程序,在数据通道上捕捉上网数据流量测量过程中的数据包;解析捕捉到的数据包包头,根据数据包类型、特征和标识,对目标层中的数据包进行累计,得到上网数据流量测量数据。当通信网络为usb接口下的td-lte4g网络或fdd-lte4g网络时,上述流量测量方法步骤为:如图4所示,linux系统启动时,初始化设置td-lte或fdd-lte流量模式下的信号通知机制和共享内存机制,加载用于监控4g流量的钩子程序,调用ifconfig命令加载初始化网卡设备,注册到netdevice列表,同时调用at指令初始化拨号参数、模块通信参数和网络类型参数并加载配置,调用串口工作台进程;利用嵌入在网卡驱动程序中的钩子程序,在与目标服务器进行数据传输过程中,在数据通道上捕捉上网数据流量测量过程中的数据包;解析捕捉到的数据包包头,根据数据包类型、特征和标识,对目标层中的数据包进行累计,得到上网数据流量测量数据。当通信网络为usb接口wifi网络时,上述流量测量方法步骤为:如图5所示,linux系统启动时,初始化设置wifi流量模式下的信号通知机制和共享内存机制,加载用于监控wifi流量的钩子程序,调用ifconfig命令加载初始化网卡设备,注册到netdevice列表;利用钩子程序,在与目标服务器进行数据传输过程中,在数据通道上捕捉上网数据流量测量过程中的数据包;解析捕捉到的数据包包头,根据数据包类型、特征和标识,对目标层中的数据包进行累计,得到上网数据流量测量数据。上述仅为三类网络制式下的实现步骤,但本领域技术人员需要知道,本发明并不仅限与此,例如5g、有线网络或以太网等也可以采用本发明的方法进行计量。基于上述数据流量测量方法,还可以进一步提供一种通信网络数据流量计量方法,步骤如下:网络终端通过无线链路接入移动通信运营商,再通过有线链路从服务器下载标准文件数据包,如图6所示。再如图7所示,按前述方法测量网络终端下载该文件产生的流量,然后与通信数据运营商流量计费系统测量的数据流量进行比较,得到两者间的数据偏差,计算该偏差是否超过阈值,若超过则判定移动通信运营商上网流量计费系统不准确,否则判定通信数据运营商上网流量计费系统准确。在计量过程中,最好针对同一大小的目标文件,间隔重复步骤s5若干次,并保存每次测量得到的上网数据流量测量数据结果,以进行重复性验证。下面结合一个具体实施例,对本发明做进一步的详细阐述,使本领域技术人员能够更好地理解本发明的实现方式。实施例1本实施例上述如图2所示的测量装置。系统启动后,首先对无线上网通信模块、存储系统和显示系统进行硬件初始化,完成之后,在电容触摸屏上显示当前系统硬件信息,并等待用户测试指令。用户在电容触摸屏输入测试指令后,系统接收用户设置操作,装置拨号上网,开始上网数据流量测量。系统调用流量测量指令集和linux系统内核支持模块对上网数据流量测量过程监听并测量ip数据包,在电容触摸屏上实时显示上网数据流量测量数据并存储在系统物理存储空间。系统通过gps时钟单元实现系统时间同步。基于该装置对移动通信网络上网数据流量进行测量的具体方法步骤如下:(1)、选定wcdma3g模块作为测量的无线上网通信模块。(2)、将嵌入式程序写入装置nandflash中。(3)、通过装置电源管理单元接入外接电源给装置供电。(4)、将中国联通上网sim卡放入装置卡槽。(5)、将移动通信网络上网数据流量测量装置开机。(6)、硬件初始化,对无线上网通信模块、存储系统和显示系统进行硬件初始化,完成之后,在装置电容触摸屏显示当前系统信息。(7)、启动linux系统系统初始化设置ppp模式下的信号通知机制和共享内存机制,调用pppd-2.4.4进程并以后台方式运行,加载用于监控pppd-2.4.4进程工作状态的第一钩子程序,加载启动内核ppp驱动,加载用于监控pppd-2.4.4驱动中数据流量的第二钩子程序,监控linux设备文件标准接口read()、write()、ioctl()的所有操作,同时调用at指令初始化拨号参数、模块通信参数和网络类型参数并将加载这些配置,调用串口工作台进程,进入联网模式进行数据包的传输。(8)、用户在装置电容触摸屏点击时间设置,装置gps时钟单元进行时间同步,完成装置系统时间设置(9)、用户在装置电容触摸屏设置参数:选择测试类型为“拨号循环http”和“下载文件”、下载文件ip地址为218.75.126.173,端口为80端口,循环次数设置10次,拨号参数设置为“拨号前等待0秒;下载前等待0秒;断线后等待10秒”。(10)、设置完毕后,在装置电容触摸屏点击“开始”按钮。开始测试。(11)、装置拨号上网,装置通过嵌入式程序从地址http://218.75.126.173:80下载文件大小为10mb标准文件,下载过程中文件临时存储在nandflash。在下载过程中,利用嵌入在网卡驱动程序中的第二钩子程序在数据通道上捕捉上网数据流量测量过程中的数据包,解析捕捉到的数据包包头,根据数据包类型、特征和标识,识别出ip层和tcp层的数据包,剔除其余数据包,分别对ip层和tcp层中的数据包进行累计,得到各层中上网数据流量测量数据。(12)、装置一次下载完成后,断开ppp连接,在装置电容触摸屏上显示本次下载得到数据流量测量结果。数据流量测量结果中ip层下行流量,ip层上行流量,ip层上行和下行总流量,tcp下行流量,tcp上行流量,tcp上行和下行总流量。本实施例中,第一次下载完成后,测试数据如下:表1第一次数据流量测量结果(13)、装置下载完成一次后,断线等待10秒后,再次拨号上网,重复下载文件大小为10mb标准文件9次。测试完毕后得到10组如下数据表2十次数据流量测量结果(14)、测试完成,断开ppp连接,将测试结果以txt文件格式保存到nandflash。(15)、将u盘插入usbhost接口,将txt文件格式拷贝至u盘。(16)、登陆移动通信运营商网站,查询上网流量明细,将移动通信运营商上网流量计费系统测量的数据流量测量数据与本装置测量的数据流量测量数据进行比较,得到数据流量测量数据偏差。表3十次数据流量测量结果与运营商数据比对情况序号装置ip层上下行总流量(字节)运营商ip层上下行总流量(字节)偏差绝对值111087414110874660.00047%211086166110862180.00047%311089650110896500.00000%411088974110891300.0014%511090638110907940.0014%611086946110871020.0014%711088558110885580.00000%811088090110880900.00000%911087518110875180.00000%1011088870110889220.00047%由此可见,本发明具有极高的测量准确性,实际测量值与运营商提供的数据流量值之间的偏差绝对值控制在0.0014%以内。以上所述的实施例只是本发明的一种较佳的方案,然其并非用以限制本发明。有关
技术领域
的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型。因此凡采取等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1