一种流量监控方法及终端与流程

文档序号:11156539阅读:450来源:国知局
一种流量监控方法及终端与制造工艺

本发明涉及网络监控的技术领域,更具体地,涉及一种流量监控方法及终端。



背景技术:

Android是基于Linux的开源操作系统平台,近年来得到了迅猛的发展。Android操作系统也由手机移植到平板PC和智能电视中。而随着Android的不断发展,针对Android平台的恶意软件层出不穷,除智能手机外,搭载Android系统的平板PC、智能电视、机顶盒等设备,也面临着严重的安全隐患。根据杀毒厂商McAfee发布的2011第三季度安全威胁报告,Android系统已成为恶意软件作者最关注的操作系统。目前恶意软件的行为包括恶意扣费、系统破坏、隐私窃取等,最主要的行为还是恶意吸费、偷跑流量。怎样做好流量监控,拒绝吸费,成为当前亟待解决的问题。

而目前流量监控技术大多是基于应用层的,不能屏蔽恶意软件的间接访问,对于遏制流量损失效果并不明显。另外,有一些基于加权行为特征的安全监控策略,能够有效拦截病毒,遏制吸费现象,但对一些正常使用的应用程序可能产生误判,实施错误的拦截行为。



技术实现要素:

鉴于上述问题,本发明提出了一种流量监控方法及终端,能够有效遏制应用偷跑流量、恶意吸费的现象。

本发明实施例中提供了一种流量监控方法,包括:

获取调用网络通信接口待发送的报文,所述报文包括端口号;

通过所述端口号从进程中索引相对应的应用程序,组成应用程序列表;

在预设时间长度内统计各个网络通信接口的流量大小;

显示所述应用程序列表中流量最大的至少一项应用程序的标识。

优选地,显示所述应用程序列表中流量最大的至少一项应用程序的标识的步骤之后,还包括:

获取用户对所述应用程序的标识触发的禁用流量指令,关闭与该应用程序对应的网络通讯接口。

优选地,关闭与该应用程序对应的网络通讯接口的步骤之后,还包括:

从所述应用程序列表中删除已关闭网络通讯接口的应用程序的标识;

重新显示当前应用程序列表中流量最大的至少一项应用程序的标识。

优选地,显示所述应用程序列表中流量最大的至少一项应用程序的标识的步骤,还包括:

标记该流量最大的至少一项应用程序为恶意应用程序,并向服务器端发送本次标记。

优选地,显示所述应用程序列表中流量最大的至少一项应用程序的标识的步骤,还包括:

向服务器端查询该流量最大的至少一项应用程序的标记次数;当该标记次数满足预设条件时,删除该应用程序。

优选地,在预设时间长度内统计各个网络通信接口的流量大小的步骤,包括:

采用预设数秒的时间窗口计算各个网络通信接口的流量平均值,存储最近预设时间长度内每一时间窗口上与各项应用程序发生的流量大小。

优选地,存储最近预设时间长度内每一时间窗口上与各项应用程序相对应的流量大小的步骤之后,还包括:

根据各项应用程序发生的流量大小,对所述应用程序列表内的应用程序进行排序。

优选地,所述通过所述端口号从进程中索引相对应的应用程序,组成应用程序列表的步骤,包括:

查询所述端口号是否属于预设的白名单内,如果属于,则将通过所述端口号从进程中索引的应用程序添加至应用程序列表。

如果不属于,则向用户咨询是否确认本次网络通信接口的联网操作,并在收到用户输入的确认指令后,将通过所述端口号从进程中索引的应用程序添加至应用程序列表。

优选地,在收到用户输入的确认指令后,还包括:

将该所述端口号添加至所述白名单内。

相应地,本发明实施例提供了一种流量监控终端,包括:

接口查询单元,用于获取调用网络通信接口待发送的报文,所述报文包括端口号;

应用索引单元,用于通过所述端口号从进程中索引相对应的应用程序,组成应用程序列表;

流量统计单元,用于在预设时间长度内统计各个网络通信接口的流量大小;

标识显示单元,用于显示所述应用程序列表中流量最大的至少一项应用程序的标识。

优选地,还包括:

接口关闭单元,用于获取用户对所述应用程序的标识触发的禁用流量指令,关闭与该应用程序对应的网络通讯接口。

优选地,还包括:

统计编辑单元,用于从所述应用程序列表中删除已关闭网络通讯接口的应用程序的标识;

所述标识显示单元,还用于重新显示当前应用程序列表中流量最大的至少一项应用程序的标识。

优选地,还包括:

与所述标识显示单元相连的恶意标记单元,用于标记该流量最大的至少一项应用程序为恶意应用程序,并向服务器端发送本次标记。

优选地,还包括:

与所述标识显示单元相连的应用删除单元,用于向服务器端查询该流量最大的至少一项应用程序的标记次数;当该标记次数满足预设条件时,删除该应用程序。

优选地,所述流量统计单元,包括:

历史存储单元,用于采用预设数秒的时间窗口计算各个网络通信接口的流量平均值,存储最近预设时间长度内每一时间窗口上与各项应用程序发生的流量大小。

优选地,所述流量统计单元,还包括:

应用排序单元,用于根据各项应用程序发生的流量大小,对所述应用程序列表内的应用程序进行排序。

优选地,所述应用索引单元,包括:

联网判定单元,用查询所述端口号是否属于预设的白名单内,如果属于,则将通过所述端口号从进程中索引的应用程序添加至应用程序列表。

优选地,所述应用索引单元,包括:

联网确认单元,用于如果不属于,则向用户咨询是否确认本次网络通信接口的联网操作,并在收到用户输入的确认指令后,将通过所述端口号从进程中索引的应用程序添加至应用程序列表。

优选地,所述联网确认单元,还用于将该所述端口号添加至所述白名单内。

相对于现有技术,本发明提供的方案,获取调用网络通信接口待发送的报文,所述报文包括端口号。在TCP和UDP的报文结构中,源端口号和目的端口号是最重要的标识字段,任何一个应用收到和发出的网络数据都包含这两个字段,本发明以此为突破点来设计流量监控策略,使系统在TCP/IP协议层就能对所有数据进行直接和有效的甄别。通过所述端口号从进程中索引相对应的应用程序,组成应用程序列表。Android系统中网络状态的每条逻辑通路都是由一对IP地址和一对端口号组成。在TCP/IP协议中。IP地址被绑定到网络接口,端口号则被绑定到进程,因此本发明利用端口号来索引进程号和应用程序。最后,在预设时间长度内统计各个网络通信接口的流量大小,显示所述应用程序列表中流量最大的至少一项应用程序的标识。目前技术可以在状态栏看到当前某一时刻的流量传输速度,而往往不知道是哪些应用程序在跑流量,通过本发明的监控方法,从协议层实施流量监控,使得所有应用程序的联网访问都是在用户监控的情况下,有效识别恶意软件后台偷跑流量的行为。通过观察实时的应用图标,可以让用户了解情况,及时采取关闭联网或关闭应用程序的措施,减少流量损失。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一种流量监控方法的流程图。

图2为本发明一种流量监控方法的实施例流程图。

图3为本发明一种流量监控终端的示意图。

图4为本发明一种流量监控终端的实施例示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明一种流量监控方法的流程图,包括:

S101:获取调用网络通信接口待发送的报文,所述报文包括端口号;

S102:通过所述端口号从进程中索引相对应的应用程序,组成应用程序列表;

S103:在预设时间长度内统计各个网络通信接口的流量大小;

S104:显示所述应用程序列表中流量最大的至少一项应用程序的标识。

相对于现有技术,本发明提供的方案,获取调用网络通信接口待发送的报文,所述报文包括端口号。在TCP和UDP的报文结构中,源端口号和目的端口号是最重要的标识字段,任何一个应用收到和发出的网络数据都包含这两个字段,本发明以此为突破点来设计流量监控策略,使系统在TCP/IP协议层就能对所有数据进行直接和有效的甄别。通过所述端口号从进程中索引相对应的应用程序,组成应用程序列表。Android系统中网络状态的每条逻辑通路都是由一对IP地址和一对端口号组成。在TCP/IP协议中。IP地址被绑定到网络接口,端口号则被绑定到进程,因此本发明利用端口号来索引进程号和应用程序。最后,在预设时间长度内统计各个网络通信接口的流量大小,显示所述应用程序列表中流量最大的至少一项应用程序的标识。目前技术可以在状态栏看到当前某一时刻的流量传输速度,而往往不知道是哪些应用程序在跑流量,通过本发明的监控方法,从协议层实施流量监控,使得所有应用程序的联网访问都是在用户监控的情况下,有效识别恶意软件后台偷跑流量的行为。通过观察实时的应用图标,可以让用户了解情况,及时采取关闭联网或关闭应用程序的措施,减少流量损失。

图2为本发明一种流量监控方法的实施例流程图。与图1相比,图2实施例还预设了白名单,此白名单策略的优点在于系统内任何一个应用程序的联网操作都必须在用户知情并授权的情况下完成,也就是用户会给内核一份可以联网的白名单,这份名单之外的进程都无法联网,这样就能避免一些吸费软件在后台联网偷偷吸走流量。并且改进是在内核中加入控制操作,破解更困难,控制更为有效。

S201:获取调用网络通信接口待发送的报文,所述报文包括端口号;查询所述端口号是否属于预设的白名单内;

如果属于,则转入S203;如果不属于,则转入S202;

S202:向用户咨询是否确认本次网络通信接口的联网操作;

并在收到用户输入的确认指令后,转入S204;

S203:将通过所述端口号从进程中索引的应用程序添加至应用程序列表;

S204:将该所述端口号添加至所述白名单内;

S205:采用预设数秒的时间窗口计算各个网络通信接口的流量平均值,存储最近预设时间长度内每一时间窗口上与各项应用程序发生的流量大小;

S206:根据各项应用程序发生的流量大小,对所述应用程序列表内的应用程序进行排序;

S207:显示所述应用程序列表中流量最大的至少一项应用程序的标识;

S208:获取用户对所述应用程序的标识触发的禁用流量指令,关闭与该应用程序对应的网络通讯接口;

S209:从所述应用程序列表中删除已关闭网络通讯接口的应用程序的标识;

S210:重新显示当前应用程序列表中流量最大的至少一项应用程序的标识。

终端和服务器利用socket API进行联网,在整个联网建立逻辑链路的过程中,有一个节点就是网络通信接口connect/accept API,本实施例将把白名单策略放在网络通信接口connect这个环节来实现,让它能根据端口号来进行联网,从而控制整个系统中所有的应用的联网行为。获取调用网络通信接口待发送的报文,所述报文包括端口号。查询所述端口号是否属于预设的白名单内;如果属于,向用户咨询是否确认本次网络通信接口的联网操作,并在收到用户输入的确认指令后,将该所述端口号添加至所述白名单内;如果不属于,将通过所述端口号从进程中索引的应用程序添加至应用程序列表,再将该所述端口号添加至所述白名单内。添加白名单策略后的联网过程中,当上层有调用网络通信接口connect请求时,内核会用AF_LOCKAL的UNIX进程间通信来向用户态发出消息,查询端口号白名单数据库,询问这个端口号是否是用户允许联网的端口号,如果是,则connect操作成功;如果不是,则弹出UI询问用户是否允许这个端口号/对应的应用程序联网,在用户确认后conncet操作才能继续完成,否则禁止connect操作,使用这个端口号的进程也就无法联网了。系统可以提供多种多样的工具来供用户定制白名单数据库,为各种用户群制定不同的策略,比如微博迷、游戏迷等。

采用预设数秒的时间窗口计算各个网络通信接口的流量平均值,存储最近预设时间长度内每一时间窗口上与各项应用程序发生的流量大小。具体地,对于某一时刻的采集数据可以采用最近三秒的窗口计算平均值来进行统计,更进一步,可以保存最近几分钟或者更久的状态,让用户查看状态,从而可以让用户了解是那些应用在那些时间点在跑流量。

根据各项应用程序发生的流量大小,对所述应用程序列表内的应用程序进行排序。显示所述应用程序列表中流量最大的至少一项应用程序的标识。具体地,把当前时刻耗流量速度最快的或者前三的应用的图标在通知栏进行显示,通过观察实时的应用图标,可以让用户了解情况。

获取用户对所述应用程序的标识触发的禁用流量指令,关闭与该应用程序对应的网络通讯接口。进一步,所述标识为应用程序的图标,将图标转化为开关,例如,单击该图标即可转化为禁用流量指令,通知后台服务调用指令禁用该应用的流量。又例如,长按弹出提供后台服务的管理界面,限制流量,或,从所述应用程序列表中删除已关闭网络通讯接口的应用程序的标识。删除或禁用后,再次重新显示当前应用程序列表中流量最大的至少一项应用程序的标识。

在其中一个实施例当中,显示所述应用程序列表中流量最大的至少一项应用程序的标识的步骤,还包括:

标记该流量最大的至少一项应用程序为恶意应用程序,并向服务器端发送本次标记。

优选地,显示所述应用程序列表中流量最大的至少一项应用程序的标识的步骤,还包括:

向服务器端查询该流量最大的至少一项应用程序的标记次数;当该标记次数满足预设条件时,删除该应用程序。

具体地,向服务器端进行查询,利用云端大数据统计后的相关应用的流量偷跑概率等数据进行比较,以便确定是否清除该应用,从而避免误删。同理,当用户发现恶意应用程序偷跑流量时,也可以向服务器端进行反馈,进一步优化云端大数据。

图3为本发明一种流量监控终端的示意图,包括:

接口查询单元,用于获取调用网络通信接口待发送的报文,所述报文包括端口号;

应用索引单元,用于通过所述端口号从进程中索引相对应的应用程序,组成应用程序列表;

流量统计单元,用于在预设时间长度内统计各个网络通信接口的流量大小;

标识显示单元,用于显示所述应用程序列表中流量最大的至少一项应用程序的标识。

图3与图1相对应,图中各个单元的运行方式与方法中的相同。

图4为本发明一种流量监控终端的实施例示意图。

如图4所示,还包括:

接口关闭单元,用于获取用户对所述应用程序的标识触发的禁用流量指令,关闭与该应用程序对应的网络通讯接口。

如图4所示,还包括:

统计编辑单元,用于从所述应用程序列表中删除已关闭网络通讯接口的应用程序的标识;

所述标识显示单元,还用于重新显示当前应用程序列表中流量最大的至少一项应用程序的标识。

如图4所示,所述流量统计单元,包括:

历史存储单元,用于采用预设数秒的时间窗口计算各个网络通信接口的流量平均值,存储最近预设时间长度内每一时间窗口上与各项应用程序发生的流量大小。

如图4所示,所述流量统计单元,还包括:

应用排序单元,用于根据各项应用程序发生的流量大小,对所述应用程序列表内的应用程序进行排序。

如图4所示,所述应用索引单元,包括:

联网判定单元,用查询所述端口号是否属于预设的白名单内,如果属于,则将通过所述端口号从进程中索引的应用程序添加至应用程序列表。

如图4所示,所述应用索引单元,包括:

联网确认单元,用于如果不属于,则向用户咨询是否确认本次网络通信接口的联网操作,并在收到用户输入的确认指令后,将通过所述端口号从进程中索引的应用程序添加至应用程序列表。

如图4所示,所述联网确认单元,还用于将该所述端口号添加至所述白名单内。

图4与图2相对应,图中各个单元的运行方式与方法中的相同。

在其中一个实施例当中,还包括:

与所述标识显示单元相连的恶意标记单元,用于标记该流量最大的至少一项应用程序为恶意应用程序,并向服务器端发送本次标记。

在其中一个实施例当中,还包括:

与所述标识显示单元相连的应用删除单元,用于向服务器端查询该流量最大的至少一项应用程序的标记次数;当该标记次数满足预设条件时,删除该应用程序。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1