[发明专利]基于Android单内核多系统的网络流量监控方法及其终端在审
申请号: | 201710318539.5 | 申请日: | 2017-05-08 |
公开(公告)号: | CN107426047A | 公开(公告)日: | 2017-12-01 |
发明(设计)人: | 王晓华;宋忠让;张韵;江斌;邓永德 | 申请(专利权)人: | 智慧海派科技有限公司 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L12/801;H04L12/813;H04L29/06;H04M1/725 |
代理公司: | 广州三环专利商标代理有限公司44202 | 代理人: | 张艳美,龙莉苹 |
地址: | 江西省南昌临*** | 国省代码: | 江西;36 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 android 内核 系统 网络流量 监控 方法 及其 终端 | ||
技术领域
本发明涉及Android系统的网络流量技术领域,尤其涉及一种基于Android单内核多系统的网络流量监控方法及其终端。
背景技术
随着Android的发展,在Android上基于容器的多系统方案已经被提了出来,其中实现了进程隔离,文件系统隔离,网络隔离等。Android容器方案是基于Linux内核提供的Namespace(即:命名空间)和Cgroups技术,在单个内核上隔离出来多个虚拟空间。Android支持监控整个系统范围内的数据流量使用情况,通过Notifications提示流量提醒和流量使用限制,当流量超过指定配额将关掉移动数据。系统会跟踪每个App的流量使用情况,用户可以在Setting app界面看到每个App的历史流量使用情况。Android通过Linux内核中的网络接口记录流量状态。每个处于激活状态的网络设备通过在驱动中实现Dev_get_stats返回该设备关于Rx_Bytes和Tx_Bytes统计数值,且该数值只包含和Ip层交互的信息而不计算Arp等流量信息,也不计算封装时的头信息。Android使用NetworkStateTracker来收集流量统计信息,NetworkStateTracker会识别每个网络接口和接口类型以及不同的身份标识。为了正确的统计,所有的路由数据都被NetworkStateTracker考虑进去。移动运营商可能希望一个网络设备总的数据流量统计信息不包含特定的类型,比如MMS.移动射频接口对每个激活的APN有独立的Linux网络接口,因此Android可以区分不同的APN的数据流量。USB、BT网络共享机制、Wifi网络热点使用Iptables转发规则将数据转发出去,Android系统通过记录任意一对接口之间的网络信息来统计这些流量信息。每个App的流量统计监控和跟踪功能依赖于Kernel的Xt_qtaguid(即:流量监控数据结构)模块。对不同的Socket打标签的功能在System/core/libcutils/qtaguid.c,该程序依赖Xt_qtaguid模块导出的用户接口/Proc/Net/Xt_qtaguid/ctrl。Quota2Netfilter模块设置命名配额限制,当指定的限额达到后通知用户层,每个App使用独立的UID,Qtaguid Netfilter模块在Socket接口层次跟踪每个App的网络使用情况。在一个App内,可以指定网络数据的除UID之外的标签来将该App的数据分为几种不同的子类型,这样就可以区分下载流量,媒体流的流量使用状态等。在Android的单内核多系统方案中,Xt_qtaguid不支持多系统的流量控制,在这里,导致我们无法针对每个系统作单独的流量统计,使得Android单内核多系统方案中的Xt_qtaguid不支持多系统流量控制的问题。
因此,亟需一种为每一Net NameSpace(即:网络命名空间)支持单独的流量统计信息的方式,来支持各系统单独统计自己流量数据的功能的基于Android单内核多系统的网络流量监控方法及其终端。
发明内容
本发明的目的在于提供一种基于Android单内核多系统的网络流量监控方法及其终端。
为实现上述目的,本发明提供了一种基于Android单内核多系统的网络流量监控方法,其包括:
注册网络协议数据结构;
创建或调用任一网络命名空间时,在所述网络命名空间和所述网络协议数据结构之间建立连接关系,在所述网络命名空间上创建流量监控数据结构以监控所述网络命名空间的流量数据;
注销所述网络命名空间时,调用所述网络协议数据结构以断开所述网络命名空间和所述网络协议数据结构之间的连接关系。
与现有技术相比,本发明在创建或调用任一网络命名空间时,在该网络命名空间和所述网络协议数据结构之间建立连接关系,在所述网络命名空间上创建流量监控数据结构,之后在注销所述网络命名空间时,断开所述网络命名空间和所述网络协议数据结构之间的连接关系,使得在任一系统上可以且只可以看到自己系统的网络接口和每一App的流量统计信息,不能看到其他系统的流量统计信息,对于单内核多系统方案的情形,实现了多系统之间流量统计信息的独立操作,增强了网络流量统计的隔离性和安全性。其中,在所述网络命名空间和所述网络协议数据结构之间的建立连接关系为一对一的连接关系。
较佳地,所述在所述网络命名空间上创建流量监控数据结构以监控所述网络命名空间的流量数据之后还包括:
初始化所述网络协议数据结构、所述网络命名空间及所述流量监控数据结构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于智慧海派科技有限公司,未经智慧海派科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710318539.5/2.html,转载请声明来源钻瓜专利网。