]上述BI?B3中,由于使用iptables自动限制应用数据流出,因此,无需用户手动管控,从而简化用户操作,提高用户的良好体验。
[0045]可选地,在应用已消耗的流量小于所述应用对应的流量上限且大于预设的部分控制阈值时,
[0046]禁止应用的视频数据、语音数据以及图片数据的收发,但允许文字数据的收发。
[0047]其中,预设的部分控制阈值同样可通过2种方式确定:I种是用户根据需求对各个应用或部分应用进行设置,另I种是在确定应用的流量上限后,设置低于该应用的流量上限的某个数作为该应用的部分控制阈值。
[0048]该步骤中,当判断出某个应用已消耗的流量小于应用对应的流量上限且大于预设的部分控制阈值时,禁止应用的视频数据、语音数据以及图片数据的收发,但允许文字数据的收发,这样,既保证该某个应用的基本功能能够实现,也能限制该某个应用使用的流量过多,减缓该某个应用的流量的耗费。可选地,还可关闭该某个应用的自动更新功能,以进一步减缓该某个应用的流量的耗费。
[0049]当然,若应用已消耗的流量小于预设的部分控制阈值,则不做任何处理。
[0050]本发明第一实施例中,获取至少2个应用对应的流量上限,统计所述至少2个应用已消耗的流量,分别判断所述至少2个应用已消耗的流量是否大于或等于所述至少2个应用对应的流量上限,在应用已消耗的流量大于或等于所述应用对应的流量上限时,控制所述应用的流量。由于可分别控制不同应用的流量,因此使得流量的控制更准确,提高用户的良好体验。
[0051]应理解,在本发明实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0052]实施例二:
[0053]图2示出了本发明第二实施例提供的一种智能终端的流量控制装置的结构图,该智能终端的流量控制装置可应用于智能终端中,该智能终端可以包括经无线接入网RAN与一个或多个核心网进行通信的用户设备,该用户设备可以是移动电话(或称为“蜂窝”电话)、具有移动设备的计算机等,例如,用户设备还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语音和/或数据。又例如,该移动设备可以包括智能手机、平板电脑、个人数字助理TOA、销售终端POS或车载电脑等。为了便于说明,仅不出了与本发明实施例相关的部分。
[0054]该智能终端的流量控制装置包括:
[0055]流量上限获取单元21,用于获取至少2个应用对应的流量上限。
[0056]其中,这里的流量上限是指一段时间,比如,一天,一个月的流量上限。
[0057]应用对应的流量上限主要通过2种方式确定:I种是用户根据需求设置不同应用的流量上限,另I种是智能终端根据各个应用以往的流量使用情况确定。
[0058]可选地,当智能终端根据各个应用以往的流量使用情况确定时,所述流量上限获取单元21包括:一次平均流量确定模块和流量上限计算模块。其中:
[0059]一次平均流量确定模块,用于采用下式统计应用在前η个时间单位实际消耗的平均流量:
[0060]Mt = (wiAt-1+W2At-2+W3At-3+...+wnAt-n)/n,其中,At-η为应用在第t_n个时间单位实际消耗的流量,Wn为权重,Mt为应用在前η个时间单位实际消耗的平均流量。其中,这里的时间单位可以为日,或为月,或为年等;各个时间单位对应的权重是逐渐减小,即离当前时间越近的时间单位对应的权重越大,以保证离当前时间越近,其实际消耗的流量更具参考价值。
[0061]流量上限计算模块,用于根据所述Mt确定应用的流量上限。可选地,由于Mt为一个平均值,而实际情况中肯定会出现比平均值高的值,因此,流量上限计算模块包括:
[0062]乘积流量上限确定模块,用于将Mt与预设的系数相乘后的乘积作为应用的流量上限,所述预设的系数大于I。其中,预设的系数大于I,比如,1.1或1.2等。
[0063]增量流量上限确定模块,用于将Mt与预设的增量相加后的和作为应用的流量的上限,所述预设的增量大于O。其中,预设的增量大于0,比如5Μ,或50Μ等。
[0064]可选地,若不直接将Mt作为应用的流量上限,所述流量上限计算模块包括:二次平均流量确定模块和流量上限确定模块。其中:
[0065]二次平均流量确定模块,用于采用下式统计应用在前N个时间单位实际消耗的平均流量,每个N包括η个时间单位:
[0066]Mt7 =(Mt-1+Mt-2+Mt-3+...+Mt—n)/N,其中,Mt—N为应用在前t_N个时间单位实际消耗的平均流量,Mt ’为应用在前N个时间单位实际消耗的二次平均流量。其中,上述的Mn ,Mt-2、Mt-3、Mt-N均为同一个应用实际消耗的平均流量,当需要确定多个应用的流量上限时,需要分别获取该多个应用对应的实际消耗的平均流量。
[0067]流量上限确定模块,用于将所述Mt’作为应用的流量上限。通过再次平均N个时间单位实际消耗的平均流量,使得确定的应用的流量上限更准确。
[0068]已消耗的流量统计单元22,用于统计所述至少2个应用已消耗的流量。
[0069]具体地,若获取的是2个应用对应的流量上限,则统计该2个应用在一段时间内已消耗的流量,若获取的是2个以上应用对应的流量上限,则统计该2个以上应用在一段时间内已消耗的流量。比如,由于智能终端的流量通常是包月的,因此,只需统计应用在扣费之后的第一天到当天已消耗的流量。
[0070]已消耗的流量超限判断单元23,用于分别判断所述至少2个应用已消耗的流量是否大于或等于所述至少2个应用对应的流量上限。
[0071]流量控制单元24,用于在应用已消耗的流量大于或等于所述应用对应的流量上限时,控制所述应用的流量。
[0072]这里的控制应用的流量主要是指断开应用的网络。可选地,在控制所述应用的流量后,发出已控制应用的流量的提示,该提示包括被控制的应用的标识信息,以便用户知悉当前哪个应用的流量被控制。
[0073]其中,所述流量控制单元24包括:
[0074]链规则添加模块,用于在应用已消耗的流量大于或等于所述应用对应的流量上限时,添加iptables输出链规则到shell文件。该iptables为集成到Iinux内核中静态防火墙。
[0075]系统服务添加模块,用于添加执行shell文件的系统服务。
[0076]系统服务连接模块,用于使用socket连接系统服务,以使系统服务执行shell文件,实现应用断网。
[0077]上述链规则添加模块、系统服务添加模块和系统服务连接模块中,由于使用iptables自动限制应用数据流出,因此,无需用户手动管控,从而简化用户操作,提高用户的良好体验。
[0078]可选地,所述智能终端的流量控制装置包括:
[0079]应用流量部分控制单元,用于在应用已消耗的流量小于所述应用对应的流量上限且大于预设的部分控制阈值时,禁止应用的视频数据、语音数据以及图片数据的收发,但允许文字数据的收发。
[0080]其中,预设的部分控制阈值同样可通过2种方式确定:I种是用户根据需求对各个应用或部分应用进行设置,另I种是在确定应用的流量上限后,设置低于该应用的流量上限的某个数作为该应用的部分控制阈值。由于禁止应用的视频数据、语音数据以及图片数据的收发,但允许文字数据的收发,因此既保证该某个应用的基本功能能够实现,也能限制该某个应用使用的流量过多,减缓该某个应用的流量的耗费。可选地,还可关闭该某个应用的自动更新功能,以进一步减缓该某个应用的流量的耗费。
[0081]本发明第二实施例中,由于可分别控制不同应用的流量,因此使得流量的控制更准确,提尚用户的良好体验。
[0082]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的