CN101815143B - Ip软电话语音及视频流媒体实时保证方法 - Google Patents

Ip软电话语音及视频流媒体实时保证方法 Download PDF

Info

Publication number
CN101815143B
CN101815143B CN201010033904A CN201010033904A CN101815143B CN 101815143 B CN101815143 B CN 101815143B CN 201010033904 A CN201010033904 A CN 201010033904A CN 201010033904 A CN201010033904 A CN 201010033904A CN 101815143 B CN101815143 B CN 101815143B
Authority
CN
China
Prior art keywords
priority
level
video stream
voice
stream media
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.)
Active
Application number
CN201010033904A
Other languages
English (en)
Other versions
CN101815143A (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Infobird Software Co Ltd
Original Assignee
Beijing Infobird Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Infobird Software Co Ltd filed Critical Beijing Infobird Software Co Ltd
Priority to CN201010033904A priority Critical patent/CN101815143B/zh
Publication of CN101815143A publication Critical patent/CN101815143A/zh
Application granted granted Critical
Publication of CN101815143B publication Critical patent/CN101815143B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)

Abstract

IP软电话语音及视频流媒体实时保证方法本发明涉及一种IP软电话语音及视频流媒体实时保证方法。采用系统级优先级外壳,并配置动态实时优先级方案提升进程优先级,使采集和传输处理永远可以预占用一定量的CPU资源,从而确保IP软电话语音及视频流媒体的实时畅通。本发明确保在任何条件下都可以确保IP软电话语音及视频流媒体实时效果,即便是在CPU 100%的极端条件下,仍可以保持通话语音及视频的流畅,给IP软电话的使用者较好的使用感受。

Description

IP软电话语音及视频流媒体实时保证方法
技术领域
本发明涉及基于IP的语音及多媒体传输,更具体而言涉及IP软电话语音及视频流媒体实时保证方法。
背景技术
IP软电话技术一直是因特网(Internet)大规模普及发展以来的大热门,而制约IP软电话语音及视频流媒体传输质量的因素不外乎两点,其一就是IP软电话赖以生存的网络环境,不当的网络搭建、网关、路由上出现的阻塞、延迟都会很明显的影响到语音质量;另一个就是IP软电话工作所在的计算机运行环境,这其中包括硬件环境和软件环境。内存大小、CPU运算能力、声卡采集速度和质量等等都是属于硬件环境范畴,而软件环境主要是指终端对语音的采集和传输进程都必须通过操作系统调配。操作系统对于运行在其上的各个进程的调配方式是依照各个进程所拥有的优先级,优先级越高就越早越长时间的抢占系统资源。
在现今时代背景下,网络技术和计算机技术的高速发展,使得原先困扰IP软电话技术发展的网络因素和计算机硬件环境因素大幅度弱化了,在通常情况下软件环境是比较顺畅的,IP软电话语音及视频流媒体实时得以实现。
然而当软件环境出现异常时,IP软电话语音及视频流媒体的实时就无法保证了,会出现延迟甚至中断情况。之所以会发生这种情况,是因为目前的语音及视频的采集和传输进程大都是采用用户级优先级,在多任务抢占式CPU分配方式下,不可避免的会遇到当其他进程出现问题将CPU资源完全占用后系统又无法正常释放的情况,在这种情况下,就会造成因语音及视频的采集和传输进程因为无法及时占用到足够的CPU资源而影响其功能的使用。
发明内容
鉴于传统IP软电话语音及视频流媒体传输的上述缺陷,本发明的目的在于提供一个可靠的方案,以确保IP软电话语音及视频流媒体的数据在任何情况下都可以传输畅通,而不会受到CPU 100%的影响而出现中断传输或延迟传输的情况。
本发明提供的拥有系统级优先级外壳、配置动态实时优先级方案,适用于需要确保进程运行稳定性的各种情况。提升进程优先级,使采集和传输处理永远可以预占用一定量的CPU资源,就是解决问题的关键所在。
将语音及视频的采集和传输进程封装为拥有系统级优先级的进程,封装后的进程将不再需要与其他用户级优先级的进程抢占CPU资源,系统就会为其预留一定的CPU资源,以确保在任何情况下都不影响其正常工作。而且如果在系统级优先级的基础上,再增加动态变更进程外壳优先级的能力(实时动态调配优先级,除了系统级优先级以外,对于用户级优先级同样有效),就可避免除死机等操作系统崩溃以外的所有异常情况影响自有软件进程的正常工作。
本发明通过系统级优先级和实时优先级的双保险,来确保IP软电话语音及视频流媒体的实时畅通,给IP软电话的使用者较好的使用感受。实时优先级与普通优先级的最大区别在于相同优先级进程的运行不按照时间片轮转,而是先运行的进程就先控制CPU,如果它不主动放弃控制,同级或低优先级的进程就无法运行。
根据本发明,提供一种IP软电话语音及视频流媒体实时保证方法,其特征在于:采用了系统级优先级的进程外壳来封装IP软电话语音及视频流媒体服务的内核线程;使用动态实时优先级调配方案,确保系统级优先级的进程外壳的优先级总维持在高于或持平于用户级优先级进程;使IP软电话语音及视频流媒体服务永远可以预占用一定量的CPU资源,从而确保IP软电话语音及视频流媒体的实时畅通。
根据本发明的优选实施例,其中将IP软电话语音及视频流媒体服务的内核线程封装为拥有系统级优先级的进程,封装后的进程将不再需要与其他用户级优先级的进程抢占CPU资源,系统就会为其预留一定的CPU资源,以确保在任何情况下都不影响IP软电话语音及视频流媒体服务的内核线程正常工作。
根据本发明的优选实施例,其中在系统级优先级的基础上,再增加动态变更进程外壳优先级的能力,从而避免除操作系统崩溃以外的所有异常情况影响自有软件进程的正常工作。
根据本发明的优选实施例,其中所述实时优先级的特征在于:相同优先级进程的运行不按照时间片轮转,而是先运行的进程就先控制CPU,如果它不主动放弃控制,同级或低优先级的进程就无法运行。
本发明的技术关键在于:
1.采用了系统级优先级的进程外壳来封装IP软电话语音及视频流媒体服务的内核线程;
2.使用动态实时优先级调配方案,确保系统级优先级的进程外壳的优先级总维持在高于或持平于用户级优先级进程;
本发明确保在任何条件下都可以确保IP软电话语音及视频流媒体实时效果,即便是在CPU占用率100%的极端条件下,仍可以保持通话语音及视频的流畅。
虽然在下文中将结合一些示例性实施及使用方法来描述本发明,但本领域技术人员应当理解,并不旨在将本发明限制于这些实施例。反之,旨在覆盖包含在所附的权利要求书所定义的本发明的精神与范围内的所有替代品、修正及等效物。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书,权利要求书,以及附图中所特别指出的结构来实现和获得。
附图说明
图1示出了本发明的系统构架图;以及
图2示出了根据本发明的IP软电话语音及视频流媒体实时保证方法的流程图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的详细描述。需要注意的是,根据本发明的呼叫中心两级交换方法的实施方式仅仅作为例子,但本发明不限于该具体实施方式。
图1示出了本发明的系统架构图。如图1所示,整个保证方法就是由这个具有动态实时变动优先级能力的系统级优先级的进程外壳实现的。通过将IP软电话语音及视频流媒体服务(主要是语音及视频的采集和传输)内核线程封装在一个系统级优先级的进程外壳中,使得操作系统在对待IP软电话语音及视频流媒体服务(主要是语音及视频的采集和传输)内核线程的申请系统资源时,会优先于其他用户级优先级进程而提前分配系统资源。而动态实时变动优先级能力,就确保了在某个用户级优先级进程由于内部产生无穷循环或出现线程阻塞等极端情况下,用户级优先级进程被系统提高优先级后,系统级优先级的进程外壳可以相应的提高优先级,而保证进程外壳在申请系统资源时的优势。
我们采用优先级最高的系统级进程作为IP软电话语音及视频流媒体服务(主要是语音及视频的采集和传输)内核的外壳,动态实时变动优先级,使其一直高于或持平于用户级优先级的进程,确保系统在正常情况下不使其他进程侵占此进程的CPU资源,这样就确保了传输的流畅性,使得语音及视频质量始终维持在一个可接受的范围。
换言之,动态实时优先级调配方案就是确保进程整体优先级高于其他用户级优先级进程,从而确保被封装其中的内核线程总可以占用到一定量的CPU资源。具体而言,在该实施例中,我们采用系统级优先级的进程外壳,并配置动态实时优先级方案提升IP软电话语音及视频流媒体服务(主要是语音及视频的采集和传输)的内核线程的优先级,使采集和传输处理永远可以预占用一定量的CPU资源,从而确保IP软电话语音及视频流媒体的实时畅通。由此,该实施例确保了在任何条件下都可以确保IP软电话语音及视频流媒体实时效果,即便是在CPU 100%的极端条件下,仍可以保持通话语音及视频的流畅,给IP软电话的使用者较好的使用感受。
动态实时变动优先级可以确保线程的优先级始终保持在16以上,而且线程的运行不按照时间片轮转,而是先运行的线程就先控制CPU,如果它不主动放弃控制,同级或低优先级的线程就无法运行。这样就确保了在一个连续的时间段内,将无意外的可以保有一定量的CPU时间,以维系采集和传输线程的连续正常运行。当出现高优先级的线程时,采集和传输线程会动态调高线程优先级,以确保其优先级的优势地位不变。
本发明提供的拥有系统级优先级外壳、配置动态实时优先级方案,适用于需要确保进程运行稳定性的各种情况。提升进程优先级,使采集和传输处理永远可以预占用一定量的CPU资源,就是解决问题的关键所在。
将语音及视频的采集和传输进程封装为拥有系统级优先级的进程,封装后的进程将不再需要与其他用户级优先级的进程抢占CPU资源,系统就会为其预留一定的CPU资源,以确保在任何情况下都不影响其正常工作。而且如果在系统级优先级的基础上,再增加动态变更进程外壳优先级的能力(实时动态调配优先级,可以对系统级优先级进行动态调配,同时对于用户级优先级同样有效),就可避免除死机等操作系统崩溃以外的所有异常情况影响自有软件进程的正常工作。
进程是依靠线程工作的,每个线程都会被赋予一个从0(最低)到31(最高)的优先级号码。当系统确定将哪个线程分配给CPU的时候,它首先观察优先级为31的线程,并以循环的方式对它们进行系统调用。如果优先级为31的线程可以调度,那么就赋予该线程一个CPU时间片。在该线程的时间片结束的时候,系统要查看是否还有另一个优先级为31的线程可以运行,如果有,它将允许该线程被赋予CPU时间片。
只有优先级为31的线程是可以调度的,系统就绝对不会将优先级为0到30的线程分配给CPU。这种情况称为渴求调度(starvation)。这里存在个问题,是否低优先级的线程永远得不到调用,因为在任何一个时间段内,系统中的大多数线程是不能调用的。例如:如果主线程调用GetMessage函数,而系统发现没有线程可以供它使用,那么系统就暂停进程的线程运行,释放该线程的剩余时间片,并且立即将CPU分配给另一个等待运行的线程,高优先级的线程会抢占低优先级的线程。
虽然系统级优先级和用户级优先级在同等优先级条件下,拥有系统级优先级的线程会先得到CPU时间,但是当有大量拥有用户级优先级的高优先级线程等待CPU时间时,拥有系统级优先级的线程一样无法抢占到CPU时间片。
故而本发明通过系统级优先级和实时优先级的双保险,来确保IP软电话语音及视频流媒体的实时畅通,给IP软电话的使用者较好的使用感受。
实时优先级与普通优先级的最大区别在于相同优先级进程的运行不按照时间片轮转,而是先运行的进程就先控制CPU,如果它不主动放弃控制,同级或低优先级的进程就无法运行。
图2示出了根据本发明的IP软电话语音及视频流媒体实时保证方法的流程图。
参见图2,动态实时调控进程外壳的优先级的方式就是首先定时遍历系统进程列表,然后比较本进程(在该具体实施方式中,特指系统级优先级的进程外壳;只有与系统级优先级进程配合,才能达到100%预占用CPU时间片的效果)优先级和其他用户级优先级进程,如果发现有高于本进程优先级的,则立刻将本进程优先级调高。如果未发现有高于本进程优先级的,则比较所有的用户级优先级进程的优先级是否有高于16的,如果存在优先级高于16的,则保持本进程优先级不变;如果全部低于16,则动态调低本进程优先级。
需要注意的是,16是一个分水岭,一般的用户级进程都不会超过16,系统会在0-15这个范围内分配优先级,只有当用户级进程长时间无法获取到CPU时间片时,系统才会暂时调高其优先级,使之超过16。而我们采用系统级进程,系统开始分配优先级就是在16-31的范围内。
动态调低本进程的优先级不能低于16,但是具体调低到多少,要看现有用户级优先级进程中最大优先级是多少,然后将本进程的优先级在16-20这个范围内取值,只要保证其取值高于最大用户级优先级即可。因为正常情况下的用户级优先级的进程都不会超过8,这样只需将本进程(即系统级优先级的进程外壳)的优先级维持在16即可;当存在超过8的用户级优先级的进程,每提升2点,系统级优先级的进程外壳的优先级就提升1点。
这样做的好处,就是确保进程外壳的优先级始终动态保持在较高的优先级,使得系统级优先级的进程外壳在参与到系统的资源分配时,始终占据优势,从而确保IP软电话语音及视频流媒体服务(主要是语音及视频的采集和传输)内核线程始终可以被分配到CPU时间片,以确保其运行的连贯性和稳定性。之所以不始终将进程外壳的优先级保持在一个很高的水平,是防止其影响到操作系统的正常工作。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (4)

1.一种IP软电话语音及视频流媒体实时保证方法,其特征在于:
采用了系统级优先级的进程外壳封装IP软电话语音及视频流媒体服务的内核线程;
使用动态实时优先级调配方案,确保系统级优先级进程的优先级总维持在高于或持平于用户级优先级进程,所述动态实时优先级调配方案为首先定时遍历系统进程列表,然后比较系统级优先级进程的优先级和其他用户级优先级进程,如果发现有高于系统级优先级进程的优先级,则立刻将系统级优先级进程的优先级调高;如果未发现高于系统级优先级进程的优先级,则比较所有的用户级优先级进程的优先级是否有高于预定值的,如果存在优先级高于所述预定值的,则保持系统级优先级进程的优先级不变;如果全部低于所述预定值,则动态调低系统级优先级进程的优先级;
使IP软电话语音及视频流媒体服务永远可以预占用一定量的CPU资源,从而确保IP软电话语音及视频流媒体的实时畅通。
2.根据权利要求1所述的方法,其特征在于:
将IP软电话语音及视频流媒体服务的内核线程封装为拥有系统级优先级的进程,封装后的系统级优先级进程不再与其他用户级优先级的进程抢占CPU资源,系统为所述系统级优先级进程预留一定的CPU资源,以确保在任何情况下都不影响IP软电话语音及视频流媒体服务的内核线程正常工作。
3.根据权利要求1或2所述的方法,其特征在于:
在系统级优先级的基础上,再增加动态变更进程外壳优先级的能力,从而避免除操作系统崩溃以外的所有异常情况影响自有软件进程的正常工作。
4.根据权利要求1所述的方法,其特征在于:
相同优先级进程的运行不按照时间片轮转,而是先运行的进程就先控制CPU,如果它不主动放弃控制,同级或低优先级的进程就无法运行。
CN201010033904A 2010-01-06 2010-01-06 Ip软电话语音及视频流媒体实时保证方法 Active CN101815143B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010033904A CN101815143B (zh) 2010-01-06 2010-01-06 Ip软电话语音及视频流媒体实时保证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010033904A CN101815143B (zh) 2010-01-06 2010-01-06 Ip软电话语音及视频流媒体实时保证方法

Publications (2)

Publication Number Publication Date
CN101815143A CN101815143A (zh) 2010-08-25
CN101815143B true CN101815143B (zh) 2012-08-29

Family

ID=42622257

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010033904A Active CN101815143B (zh) 2010-01-06 2010-01-06 Ip软电话语音及视频流媒体实时保证方法

Country Status (1)

Country Link
CN (1) CN101815143B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073545B (zh) * 2011-02-28 2013-02-13 中国人民解放军国防科学技术大学 操作系统中防止用户界面卡屏的进程调度方法及装置
CN111050000A (zh) * 2018-10-12 2020-04-21 北京京东尚科信息技术有限公司 一种呼叫中心软电话实现的方法、装置和系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588899A (zh) * 2004-08-04 2005-03-02 北京朗通环球科技有限公司 终端接入控制装置及基于网际协议的多媒体通信系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588899A (zh) * 2004-08-04 2005-03-02 北京朗通环球科技有限公司 终端接入控制装置及基于网际协议的多媒体通信系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2001-94604A 2001.04.06

Also Published As

Publication number Publication date
CN101815143A (zh) 2010-08-25

Similar Documents

Publication Publication Date Title
EP1503286B1 (en) Multiple operating system networking
WO2017133623A1 (zh) 一种数据流处理方法、装置和系统
CN107122233B (zh) 一种面向tsn业务的多vcpu自适应实时调度方法
CN109564528B (zh) 分布式计算中计算资源分配的系统和方法
CN107404443B (zh) 队列缓存资源控制方法及装置、服务器及存储介质
WO2012113007A1 (en) Predictable computing in virtualizated distributed computer systems based on partitioning of computation and communication resources
CN102238068B (zh) 一种报文的传输方法和系统
CN109522090B (zh) 资源调度方法及装置
EP2253103B1 (en) Dynamic dsl line bandwidth management with the subscriber's consent
WO2006059099A1 (en) Priority service protection
CN109766171B (zh) 任务处理方法、装置、设备以及存储介质
CN113672391B (zh) 一种基于Kubernetes的并行计算任务调度方法与系统
CN101815143B (zh) Ip软电话语音及视频流媒体实时保证方法
US9363199B1 (en) Bandwidth management for data services operating on a local network
CN111240824A (zh) 一种cpu资源调度方法及电子设备
CN101719869A (zh) 一种采用关联令牌桶算法动态分配带宽的方法及装置
CN106775925B (zh) 一种虚拟机cpu的限额处理方法和装置
CN113904997A (zh) 交换芯片接收端多优先级业务缓存和调度的方法及装置
CN111131081B (zh) 一种支持多进程的高性能单向传输的方法和装置
CN114461353A (zh) 调整线程优先级的方法、终端及计算机可读存储介质
CN102117261B (zh) 一种芯片内部处理器之间的通信方法
CN115344350A (zh) 云服务系统的节点设备及资源处理方法
CN111245794B (zh) 数据传输方法和装置
WO2022099856A1 (zh) 一种资源配置方法、装置和影音播放终端
CN111427673A (zh) 一种负载均衡方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
DD01 Delivery of document by public notice

Addressee: Bejing Infobird Software Co.,Ltd. Pang Shanshan

Document name: the First Notification of an Office Action

C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Real-time guaranteeing method of IP soft call voice and video stream media

Effective date of registration: 20141209

Granted publication date: 20120829

Pledgee: Bank of Guiyang Limited by Share Ltd dolomite branch

Pledgor: Bejing Infobird Software Co.,Ltd.

Registration number: 2014990001054

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20150710

Granted publication date: 20120829

Pledgee: Bank of Guiyang Limited by Share Ltd dolomite branch

Pledgor: Bejing Infobird Software Co.,Ltd.

Registration number: 2014990001054

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Real-time guaranteeing method of IP soft call voice and video stream media

Effective date of registration: 20150720

Granted publication date: 20120829

Pledgee: Beijing technology intellectual property financing Company limited by guarantee

Pledgor: Bejing Infobird Software Co.,Ltd.

Registration number: 2015990000577

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20210309

Granted publication date: 20120829

Pledgee: Beijing technology intellectual property financing Company limited by guarantee

Pledgor: BEIJING INFOBIRD SOFTWARE Co.,Ltd.

Registration number: 2015990000577

PC01 Cancellation of the registration of the contract for pledge of patent right