CN107635256A - 基于Android系统应用动态调整QoS的方法 - Google Patents
基于Android系统应用动态调整QoS的方法 Download PDFInfo
- Publication number
- CN107635256A CN107635256A CN201710868594.1A CN201710868594A CN107635256A CN 107635256 A CN107635256 A CN 107635256A CN 201710868594 A CN201710868594 A CN 201710868594A CN 107635256 A CN107635256 A CN 107635256A
- Authority
- CN
- China
- Prior art keywords
- qos
- business type
- main business
- bottom layer
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明涉及动态调整QoS优先级技术。本发明解决了当前某些应用中一些实时性较高的业务类型没有一个较为人性化的优先级顺序,导致其运行时出现网络延迟及卡顿的问题,提出了一种基于Android系统应用动态调整QoS的方法,其技术方案可概括为:当打开系统应用时,向WiFi底层驱动声明该应用的主要业务类型,在WiFi底层驱动发送数据包前,调整QoS优先级为该主要业务类型;当关闭该系统应用时,向WiFi底层驱动声明该应用的主要业务类型为预设业务类型,在WiFi底层驱动发送数据包前,调整QoS优先级为预设优先级。本发明的有益效果是,向WiFi底层驱动声明应用的主要业务类型,保证了主要业务类型的所需的网络资源,杜绝或减少了网络延迟及卡顿现象,提高了用户体验。
Description
技术领域
本发明涉及Android系统应用技术,特别涉及动态调整QoS技术。
背景技术
电气和电子工程师协会(IEEE,全称是Institute of Electrical andElectronics Engineers)提出了802.11e标准,定义了无线局域网的服务质量(quality-of-service,QOS)。
Android提供了Android.os.SystemProperties可操作Android系统属性,其通过JNI调用Native的property_get和property_set方法获得和设置属性。
当前采用Android系统的产品存在的问题:
当前无线局域网虽然已经在协议上支持区分业务优先级的服务,但是要完全地按照协议来实现业务优先级服务难度很大。因此,基本所有的设备厂商对不同的业务没有优先级的区分,都以尽力而的方式进行服务。这就致使一些对实时性要求较高的业务(比如视频、语音等业务)可能不能提供较好的带宽延时保障。一旦外界环境干扰,或竞争节点较多,就可能出现网络延迟、卡顿等现象,严重降低了用户体验。
发明内容
本发明的目的是提供一种基于Android系统应用动态调整QoS的方法,解决当前某些应用中一些实时性较高的业务类型没有一个较为人性化的优先级顺序,导致其运行时出现网络延迟及卡顿的问题。
本发明解决其技术问题,采用的技术方案是:基于Android系统应用动态调整QoS的方法,其特征在于,包括以下步骤:
步骤1、当打开系统应用时,向WiFi底层驱动声明该应用的主要业务类型;
步骤2、在WiFi底层驱动发送数据包前,调整QoS优先级为该主要业务类型;
步骤3、当该系统应用进入后台运行时,向WiFi底层驱动声明该应用的主要业务类型为预设业务类型;
步骤4、在WiFi底层驱动发送数据包前,调整QoS优先级为预设优先级。
具体的,步骤1中,打开系统应用之前,预先制作对应的shell脚本。
进一步的,所述shell脚本通过Linux的echo命令实现。
具体的,所述shell脚本存放在设备系统的/system/etc/script/目录下。
再进一步的,设计的脚本服务由控制台操作,不能通过启动一类服务来启动,只能单独以名字来启动,而且服务只运行一次,退出后不再重启。
具体的,步骤1中,所述声明该应用的主要业务类型的具体方法包括以下步骤:
步骤101、在WiFi底层驱动设计与shell脚本文件对应的接口命令,每个接口命令分别对应一个ioctl接口;
步骤102、通过SystemProperties.set()方法设置该应用的属性,调用对应的shell脚本文件,执行对应的接口命令;
步骤103、调用对应的ioctl接口,将主要业务类型写入标志字,所述写入的标志字值不为零,并将该主要业务类型的初始计数值加一,所述主要业务类型的初始计数值为零。
再进一步的,步骤103中,当ioctl接口被调用时,则调用其对应的操作函数。
具体的,步骤2中,在WiFi底层驱动发送数据包前,当检测到标志字值及计数值均不为零时,调整QoS优先级为该主要业务类型。
具体的,步骤3中,声明该应用的主要业务类型为预设业务类型的具体方法为:
步骤301、通过SystemProperties.set()方法设置该应用的属性,调用对应的shell脚本文件,执行对应的接口命令;
步骤302、调用对应的ioctl接口,将主业务类型的标志字值置为零,并该主业务类型的计数值减一,置为初始计数值。
再进一步的,步骤4中,在WiFi底层驱动发送数据包前,当检测到标志字值及计数值均为零时,调整QoS优先级为预设优先级。
本发明的有益效果是,通过上述基于Android系统应用动态调整QoS的方法,在WiFi底层驱动发送数据包前,向WiFi底层驱动声明应用的主要业务类型,调整QoS优先级为该主要业务类型,保证了主要业务类型的所需的网络资源,杜绝或减少了网络延迟及卡顿现象,提高了用户体验。
具体实施方式
下面结合实施例,详细描述本发明的技术方案。
本发明所述基于Android系统应用动态调整QoS的方法,由以下步骤组成:当打开系统应用时,向WiFi底层驱动声明该应用的主要业务类型,在WiFi底层驱动发送数据包前,调整QoS优先级为该主要业务类型;当该系统应用进入后台运行时,向WiFi底层驱动声明该应用的主要业务类型为预设业务类型,在WiFi底层驱动发送数据包前,调整QoS优先级为预设优先级。
实施例
本发明实施例基于Android系统应用动态调整QoS的方法,包括以下步骤:
步骤1、当打开系统应用时,向WiFi底层驱动声明该应用的主要业务类型,本例以视频及语音为主要业务类型;
步骤2、在WiFi底层驱动发送数据包前,调整QoS优先级为该主要业务类型,即视频及语音;
步骤3、当该系统应用进入后台运行时,向WiFi底层驱动声明该应用的主要业务类型(视频及语音)为预设业务类型;
步骤4、在WiFi底层驱动发送数据包前,调整QoS优先级为预设优先级。
上述方法中,步骤1中,打开系统应用之前,预先制作对应的shell脚本,shell脚本通过Linux的echo命令实现,shell脚本存放在设备系统的/system/etc/script/目录下,需要在设备的/etc/目录下的系统初始化配置文件init.rc中定义对应的系统服务启动参数,为了对系统应用的主要业务类型(视频及语音)进行区分需要设置四个shell脚本,即视频的开启命令1及关闭命令1,语音的开启命令2及关闭命令2,并且,设计的脚本服务由控制台操作,不能通过启动一类服务来启动,只能单独以名字来启动,而且服务只运行一次,退出后不再重启。
步骤1中,声明该应用的主要业务类型的具体方法包括以下步骤:
步骤101、在WiFi底层驱动设计与shell脚本文件对应的接口命令,每个接口命令分别对应一个ioctl接口,本例中开启命令1对应ioctl接口1,关闭命令1对应ioctl接口2,开启命令2对应ioctl接口3,关闭命令2对应ioctl接口4;
步骤102、通过SystemProperties.set()方法设置该应用的属性,调用对应的shell脚本文件,执行对应的接口命令,命令的格式如下:
Android.os.SystemProperties.set(“ctl.start”,“xxx_xx:on”);
例如,当该系统应用的主要业务类型是视频业务时,则在打开该应用时,加入Android.os.SystemProperties.set(“ctl.start”,“开启命令1:on”)操作;在退出该应用时,则进行Android.os.SystemProperties.set(“ctl.start”,“关闭命令1:on”)操作;当该系统应用的主要业务类型是语音业务时,则在打开该应用时,加入Android.os.SystemProperties.set(“ctl.start”,“开启命令2:on”)操作;在退出该应用时,则进行Android.os.SystemProperties.set(“ctl.start”,“关闭命令2:on”)操作。
标志字值和计数值初始化值都默认为零,其对应的业务类型为尽力而为,对应的用户QoS优先级为零。当打开的系统应用主要的业务类型是视频业务时,通过ioctl接口1调用其对应的函数,设置标志字1的值为5(也可以为其它不为零的整数),计数器ANum1的值加一;退出该应用时,则通过ioctl接口2调用其对应的函数,设置标志字1的值为0,计数器ANum1的值减一;同样的,当打开的系统应用主要的业务类型是语音业务时,通过ioctl接口3调用其对应的函数,设置标志字2的值为7(也可以为其它不为零的整数),计数器ANum2的值加一;退出该应用时,则通过ioctl接口4调用其对应的函数,设置标志字2的值为0,计数器ANum2的值减一。
在每次WiFi底层驱动需要发送网络数据包时,检测标志字及计数器的值,以保障应用所需的网络资源,其中:
If(标志字值1==5){调整用户QoS优先级为视频};
If(标志字值2==7){调整用户QoS优先级为语音};
If(计数值ANum1>0){调整用户QoS优先级为视频};
If(计数值ANum2>0){调整用户QoS优先级为语音}。
根据本例的描述可见,本例中提到的选取的主要业务类型及标志字值与计数值的设定方法均为比较成熟的现有技术,此处不再详述。
Claims (10)
1.基于Android系统应用动态调整QoS的方法,其特征在于,包括以下步骤:
步骤1、当打开系统应用时,向WiFi底层驱动声明该应用的主要业务类型;
步骤2、在WiFi底层驱动发送数据包前,调整QoS优先级为该主要业务类型;
步骤3、当该系统应用进入后台运行时,向WiFi底层驱动声明该应用的主要业务类型为预设业务类型;
步骤4、在WiFi底层驱动发送数据包前,调整QoS优先级为预设优先级。
2.根据权利要求1所述的基于Android系统应用动态调整QoS的方法,其特征在于,步骤1中,打开系统应用之前,预先制作对应的shell脚本。
3.根据权利要求2所述的基于Android系统应用动态调整QoS的方法,其特征在于,所述shell脚本通过Linux的echo命令实现。
4.根据权利要求2或3所述的基于Android系统应用动态调整QoS的方法,其特征在于,所述shell脚本存放在设备系统的/system/etc/script/目录下。
5.根据权利要求4所述的基于Android系统应用动态调整QoS的方法,其特征在于,设计的脚本服务由控制台操作,不能通过启动一类服务来启动,只能单独以名字来启动,而且服务只运行一次,退出后不再重启。
6.根据权利要求5所述的基于Android系统应用动态调整QoS的方法,其特征在于,步骤1中,所述声明该应用的主要业务类型的具体方法包括以下步骤:
步骤101、在WiFi底层驱动设计与shell脚本文件对应的接口命令,每个接口命令分别对应一个ioctl接口;
步骤102、通过SystemProperties.set()方法设置该应用的属性,调用对应的shell脚本文件,执行对应的接口命令;
步骤103、调用对应的ioctl接口,将主要业务类型写入标志字,所述写入的标志字值不为零,并将该主要业务类型的初始计数值加一,所述主要业务类型的初始计数值为零。
7.根据权利要求6所述的基于Android系统应用动态调整QoS的方法,其特征在于,步骤103中,当ioctl接口被调用时,则调用其对应的操作函数。
8.根据权利要求7所述的基于Android系统应用动态调整QoS的方法,其特征在于,步骤2中,在WiFi底层驱动发送数据包前,当检测到标志字值及计数值均不为零时,调整QoS优先级为该主要业务类型。
9.根据权利要求8所述的基于Android系统应用动态调整QoS的方法,其特征在于,步骤3中,声明该应用的主要业务类型为预设业务类型的具体方法为:
步骤301、通过SystemProperties.set()方法设置该应用的属性,调用对应的shell脚本文件,执行对应的接口命令;
步骤302、调用对应的ioctl接口,将主业务类型的标志字值置为零,并该主业务类型的计数值减一,置为初始计数值。
10.根据权利要求9所述的基于Android系统应用动态调整QoS的方法,其特征在于,步骤4中,在WiFi底层驱动发送数据包前,当检测到标志字值及计数值均为零时,调整QoS优先级为预设优先级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710868594.1A CN107635256B (zh) | 2017-09-22 | 2017-09-22 | 基于Android系统应用动态调整QoS的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710868594.1A CN107635256B (zh) | 2017-09-22 | 2017-09-22 | 基于Android系统应用动态调整QoS的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107635256A true CN107635256A (zh) | 2018-01-26 |
CN107635256B CN107635256B (zh) | 2021-06-04 |
Family
ID=61103661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710868594.1A Active CN107635256B (zh) | 2017-09-22 | 2017-09-22 | 基于Android系统应用动态调整QoS的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107635256B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109614221A (zh) * | 2018-10-30 | 2019-04-12 | 北京技德终端技术有限公司 | 一种实时操作系统的应用框架及其方法 |
US11573829B2 (en) | 2019-04-11 | 2023-02-07 | Huawei Technologies Co., Ltd. | Task processing method and apparatus, terminal, and computer readable storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101242659A (zh) * | 2008-03-06 | 2008-08-13 | 上海交通大学 | 基于自适应控制的多业务类型呼叫允许控制方法 |
CN101541048A (zh) * | 2009-04-03 | 2009-09-23 | 华为技术有限公司 | 服务质量控制方法和网络设备 |
CN104066045A (zh) * | 2014-06-30 | 2014-09-24 | 华为技术有限公司 | 一种支持多phone业务的安卓系统、方法及系统芯片 |
CN105050164A (zh) * | 2015-01-16 | 2015-11-11 | 中国矿业大学 | 基于数据重要性的降低wifi功耗方法 |
WO2015188678A1 (zh) * | 2014-06-13 | 2015-12-17 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及系统 |
WO2016202243A1 (en) * | 2015-06-16 | 2016-12-22 | Huawei Technologies Co., Ltd. | Method and apparatus for classifying virtual activities of mobile users |
-
2017
- 2017-09-22 CN CN201710868594.1A patent/CN107635256B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101242659A (zh) * | 2008-03-06 | 2008-08-13 | 上海交通大学 | 基于自适应控制的多业务类型呼叫允许控制方法 |
CN101541048A (zh) * | 2009-04-03 | 2009-09-23 | 华为技术有限公司 | 服务质量控制方法和网络设备 |
WO2015188678A1 (zh) * | 2014-06-13 | 2015-12-17 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及系统 |
CN104066045A (zh) * | 2014-06-30 | 2014-09-24 | 华为技术有限公司 | 一种支持多phone业务的安卓系统、方法及系统芯片 |
CN105050164A (zh) * | 2015-01-16 | 2015-11-11 | 中国矿业大学 | 基于数据重要性的降低wifi功耗方法 |
WO2016202243A1 (en) * | 2015-06-16 | 2016-12-22 | Huawei Technologies Co., Ltd. | Method and apparatus for classifying virtual activities of mobile users |
Non-Patent Citations (2)
Title |
---|
KEVIN: "android Android SystemProperties设置/取得系统属性的用法总结", 《BLOG.SINA.COM.CN/S/BLOG_55465B470101NGPV.HTML》 * |
童方圆等: "基于Android的实时视频流传输系统", 《计算机工程与设计》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109614221A (zh) * | 2018-10-30 | 2019-04-12 | 北京技德终端技术有限公司 | 一种实时操作系统的应用框架及其方法 |
CN109614221B (zh) * | 2018-10-30 | 2024-01-09 | 北京技德系统技术有限公司 | 一种实时操作系统的应用框架及其方法 |
US11573829B2 (en) | 2019-04-11 | 2023-02-07 | Huawei Technologies Co., Ltd. | Task processing method and apparatus, terminal, and computer readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN107635256B (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10887944B2 (en) | User plane function control of control plane-user plane separation | |
US11134410B2 (en) | Quality of service (QoS) control in mobile edge computing (MEC) | |
US11812484B2 (en) | Data transmission method, device, and data transmission system | |
US10390257B2 (en) | Traffic priority for long term evolution networks | |
CN110557786A (zh) | 一种无线承载建立、业务流的监测方法及装置 | |
US11627494B2 (en) | Base station apparatus, terminal apparatus, and QOS control method | |
EP3160184B1 (en) | Traffic control method and apparatus | |
WO2022104754A1 (zh) | 网络资源的管理方法、管理装置、电子设备及存储介质 | |
CN107635256A (zh) | 基于Android系统应用动态调整QoS的方法 | |
KR20210023194A (ko) | Mec 시스템 및 그 제어방법 | |
US11516705B2 (en) | Network performance improvement method and device | |
US20220353731A1 (en) | Data Transmission Method, Device, and System | |
US20220394785A1 (en) | System and Method of Managing PNF Connectivity in a Network Slice Instance | |
US20090253430A1 (en) | Base Station Controller and Method for Restricting Access | |
CN111406437B (zh) | 多路径数据通信 | |
US20160182313A1 (en) | Service offloading method, device, and system | |
US9161376B2 (en) | System and method for managing access point communication channel utilization | |
WO2022143750A1 (zh) | 信息处理方法、装置、设备及存储介质 | |
CN107770818B (zh) | 控制网络切片带宽的方法、装置和系统 | |
US10097594B1 (en) | Resource-managed codec selection | |
CN109565615A (zh) | 移动视频优化 | |
US11950148B2 (en) | Handover management method | |
CN114514764A (zh) | 设备、方法和计算机程序 | |
US9288711B1 (en) | Systems and methods for dynamically adjusting drop-timer thresholds based on loading | |
WO2023010994A1 (zh) | 一种网络切片接入控制方法及通信装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |