CN116915615A - Sip音视频通信系统的业务动态伸缩方法和通信系统 - Google Patents
Sip音视频通信系统的业务动态伸缩方法和通信系统 Download PDFInfo
- Publication number
- CN116915615A CN116915615A CN202310929229.2A CN202310929229A CN116915615A CN 116915615 A CN116915615 A CN 116915615A CN 202310929229 A CN202310929229 A CN 202310929229A CN 116915615 A CN116915615 A CN 116915615A
- Authority
- CN
- China
- Prior art keywords
- service component
- sip
- offline
- application service
- component
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 90
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000005259 measurement Methods 0.000 claims abstract description 44
- 230000008859 change Effects 0.000 claims abstract description 26
- 230000009467 reduction Effects 0.000 claims abstract description 23
- 230000000977 initiatory effect Effects 0.000 claims abstract description 6
- 230000008569 process Effects 0.000 claims description 30
- 230000004044 response Effects 0.000 claims description 28
- 239000002243 precursor Substances 0.000 claims description 12
- 230000005012 migration Effects 0.000 claims description 8
- 238000013508 migration Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 3
- 239000000306 component Substances 0.000 description 601
- 238000012544 monitoring process Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 230000011664 signaling Effects 0.000 description 9
- 230000003993 interaction Effects 0.000 description 8
- 238000011946 reduction process Methods 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Environmental & Geological Engineering (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请涉及通信技术领域,提供一种SIP音视频通信系统的业务动态伸缩方法和通信系统。方法包括:中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况;若任一业务服务组件的业务负载度量指标值在第一预设时间内均小于预设缩容阈值,则控制对应的业务服务组件启动动态缩容;若任一业务服务组件的业务负载度量指标值在第二预设时间内均大于预设扩容阈值,则控制对应的业务服务组件启动动态扩容。通过上述方式,中心管理服务组件基于业务负载度量指标值变化状况控制对应的业务服务组件进行动态缩容或扩容,即使系统处于低负载状态,资源仍可以得到充分利用,提高了资源利用率,降低了系统的运营成本。
Description
技术领域
本申请涉及通信技术领域,具体涉及一种SIP音视频通信系统的业务动态伸缩方法和通信系统。
背景技术
音视频通信业务呈现出较为明显的时间性(例如日间、夜间)或者季节性(例如节假日)规律。
在正常情况下,电信运营商可以基于音视频通信业务量的周期性变化按比例增加或者释放资源,尽量做到资源和业务量的匹配。然而当发生突如其来的自然灾害或者重大事件时,实时业务量会出现非预期的负载激增。为了保证业务质量,电信运营商通常会按照业务峰值冗余地部署相应资源以应对各种工作负载的波动。
然而,当通信系统处于低负载状态时,资源难以得到充分利用,降低了资源利用率,从而增加通信系统的运营成本。
发明内容
本申请实施例提供一种SIP音视频通信系统的业务动态伸缩方法和通信系统,用以解决当通信系统处于低负载状态时,资源难以得到充分利用,降低了资源利用率,从而增加通信系统的运营成本的技术问题。
第一方面,本申请实施例提供一种SIP音视频通信系统的业务动态伸缩方法,包括:中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况;业务服务组件包括SIP代理服务组件、SIP应用服务组件和媒体转发服务组件;若任一业务服务组件的业务负载度量指标值在第一预设时间内均小于预设缩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态缩容;若任一业务服务组件的业务负载度量指标值在第二预设时间内均大于预设扩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态扩容。
在一个实施例中,SIP代理服务组件的业务负载度量指标由每秒代理转发的SIP消息数度量;SIP应用服务组件的业务负载度量指标由每秒呼叫数和并发会话数度量量;媒体转发服务组件的业务负载度量指标由网络带宽使用率度量。
在一个实施例中,SIP代理服务组件动态扩容的步骤,包括:中心管理服务组件基于公共云平台创建虚拟机,并在虚拟机上运行新的SIP代理服务组件,以完成新的SIP代理服务组件的注册;其中,虚拟机配置有SIP代理服务组件的运行环境;在完成新的SIP代理服务组件的注册后,中心管理服务组件将新的SIP代理服务组件的地址信息记录到SIP代理服务集群信息列表;在SIP客户端请求SIP代理服务组件地址时,中心管理服务组件基于预设算法向SIP客户端分配新的SIP代理服务组件的地址信息,以使SIP客户端根据新的SIP代理服务组件的地址信息完成SIP代理服务组件的注册;SIP代理服务组件动态缩容的步骤,包括:中心管理服务组件删除SIP代理服务集群信息列表中所需下线的SIP代理服务组件的地址信息,并向所需下线的SIP代理服务组件发送下线通知;所需下线的SIP代理服务组件接收下线通知后,继续转发接收到的非REGISTER消息,不处理接收到的REGISTER消息,以完成业务会话的迁移;在所需下线的SIP代理服务组件完成业务会话的迁移后,向中心管理服务组件发送下线请求;中心管理服务组件基于下线请求停止运行所需下线的SIP代理服务组件,并基于公共云平台回收所需下线的SIP代理服务组件对应的虚拟机。
在一个实施例中,SIP应用服务组件动态扩容的步骤,包括:中心管理服务组件基于公共云平台创建虚拟机,并在虚拟机上运行新的SIP应用服务组件,以完成新的SIP应用服务组件的注册;其中,虚拟机配置有SIP应用服务组件的运行环境;在完成新的SIP应用服务组件的注册后,中心管理服务组件基于一致性哈希算法从SIP应用服务集群信息列表中筛选出新的SIP应用服务组件的后继SIP应用服务组件和后继SIP应用服务组件当前的前驱SIP应用服务组件;中心管理服务组件向后继SIP应用服务组件发送新的SIP应用服务组件的上线通知;后继SIP应用服务组件在接收上线通知后,在第三预设时间内将接收到的创建新呼叫会话消息或注册消息重定向至新的SIP应用服务组件,并基于中心管理服务组件将需要迁移的消息迁移至新的SIP应用服务组件;其中,需要迁移的消息包括应由新的SIP应用服务组件处理的注册消息和前驱SIP应用服务组件备份在后继SIP应用服务组件上的注册消息;在后继SIP应用服务组件将需要迁移的消息迁移至新的SIP应用服务组件后,中心管理服务组件更新SIP应用服务集群信息列表,并向所有SIP应用服务组件和所有SIP代理服务组件发送新的SIP应用服务组件的上线通知;SIP应用服务组件动态缩容的步骤,包括:中心管理服务组件基于一致性哈希算法从SIP应用服务集群信息列表中筛选出所需下线的SIP应用服务组件的前驱SIP应用服务组件和后继SIP应用服务组件,并向所需下线的SIP应用服务组件发送下线通知;所需下线的SIP应用服务组件接收下线通知后,将接收到的创建新呼叫会话消息或注册消息重定向至后继SIP应用服务组件,基于中心管理服务组件将成功建立呼叫会话的消息同步至后继SIP应用服务组件,将需要迁移的消息迁移至后继SIP应用服务组件;其中,需要迁移的消息包括前驱SIP应用服务组件备份在所需下线的SIP应用服务组件上的呼叫会话信息和注册会话信息;在将需要迁移的消息迁移至后继SIP应用服务组件后,所需下线的SIP应用服务组件向中心管理服务组件发送下线请求;中心管理服务组件基于下线请求停止运行所需下线的SIP应用服务组件,并基于公共云平台回收所需下线的SIP应用服务组件对应的虚拟机。
在一个实施例中,媒体转发服务组件动态扩容的步骤,包括:所需上线的媒体转发服务组件向中心管理服务组件发送注册上线请求;响应于注册上线请求,中心管理服务组件将所需上线的媒体转发服务组件的信息记录到媒体转发服务组件集群信息列表,并将媒体转发服务组件集群信息列表以及所有媒体转发服务组件的业务负载信息发送至SIP应用服务组件;SIP应用服务组件建立呼叫会话时,从媒体转发服务组件集群信息列表中选择业务负载最低的媒体转发服务组件作为媒体中继;媒体转发服务组件动态缩容的步骤,包括:在确定所需下线的媒体转发服务组件后,中心管理服务组件向SIP应用服务组件发送所需下线的媒体转发服务组件的下线消息;响应于下线消息,SIP应用服务组件删除所需下线的媒体转发服务组件的信息,更新媒体转发服务组件集群信息列表,并检测本地呼叫会话;若检测到本地呼叫会话中存在将所需下线的媒体转发服务组件作为媒体中继的呼叫会话,则向呼叫会话对应的SIP客户端发起reINV1TE三次握手过程,并从更新后的媒体转发服务组件集群信息列表中选择可用的媒体转发服务组件作为SIP客户端的媒体中继。
在一个实施例中,中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况之前,包括:SIP代理服务组件接收由SIP客户端发送的第一心跳请求信息;SIP代理服务组件响应第一心跳请求信息,向中心管理服务组件发送第二心跳请求信息;其中第一心跳请求信息的间隔周期为第一周期,第二心跳请求信息的间隔周期为第二周期,第二周期小于第一周期;若中心管理服务组件在第四预设时间内未收到第二心跳请求信息,则判定SIP代理服务组件运行异常,删除运行异常的SIP代理服务组件的地址信息,并更新SIP代理服务集群信息。
在一个实施例中,SIP代理服务组件响应第一心跳请求信息,向中心管理服务组件发送第二心跳请求信息之后,还包括:SIP代理服务组件用于响应第一心跳请求信息,向SIP客户端发送第一心跳响应消息;中心管理服务组件响应SIP客户端发送的SIP代理服务地址获取请求,根据更新后的SIP代理服务集群信息向SIP客户端发送最新可用的SIP代理服务组件地址;其中,SIP代理服务地址获取请求是SIP客户端在第五预设时间内未收到第一心跳响应信息时生成的请求信息。
第二方面,本申请实施例提供一种SIP音视频通信系统,包括中心管理服务组件、SIP代理服务组件、SIP应用服务组件和媒体转发服务组件,用于执行如上述任一项的SIP音视频通信系统的业务动态伸缩方法。
第三方面,本申请实施例提供一种SIP音视频通信云平台,包括:SIP客户端、公共云平台和上述的SIP音视频通信系统;SIP客户端用于通过SIP协议以及SDP协议与SIP音视频通信系统进行音视频呼叫通信;公共云平台用于开放API接口以供中心管理服务组件调用对应业务服务组件的虚拟机资源;SIP客户端用于在第四预设时间内未收到第一心跳响应信息时,判定SIP代理服务组件运行异常,生成SIP代理服务地址获取请求以通过中心管理服务组件获取最新可用的SIP代理服务组件地址,并根据最新可用的SIP代理服务组件地址发起SIP注册。
第四方面,本申请实施例提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一项所述SIP音视频通信系统的业务动态伸缩方法。
本申请实施例提供的SIP音视频通信系统的业务动态伸缩方法和通信系统,中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况;业务服务组件包括SIP代理服务组件、SIP应用服务组件和媒体转发服务组件;若任一业务服务组件的业务负载度量指标值在第一预设时间内均小于预设缩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态缩容;若任一业务服务组件的业务负载度量指标值在第二预设时间内均大于预设扩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态扩容。通过上述方式,中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况,并基于业务负载度量指标值变化状况控制对应的业务服务组件进行动态缩容或扩容,即使系统处于低负载状态,资源仍可以得到充分利用,提高了资源利用率,降低了系统的运营成本。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的SIP音视频通信系统的业务动态伸缩方法的流程示意图;
图2是本申请实施例提供的业务服务组件启动动态伸缩过程的流程示意图;
图3是本申请实施例提供的SIP代理服务组件动态扩容过程的信令交互图;
图4是本申请实施例提供的SIP代理服务组件动态缩容过程的流程示意图;
图5是本申请实施例提供的SIP应用服务组件动态扩容过程的流程示意图;
图6是本申请实施例提供的SIP应用服务组件动态缩容过程的流程示意图;
图7是本申请实施例提供的媒体转发服务组件动态扩容过程的信令交互图;
图8是本申请实施例提供的媒体转发服务组件动态缩容过程的信令交互图;
图9是本申请实施例提供的基于双向心跳机制的SIP代理服务集群地址共享方法的信令交互图;
图10是本申请实施例提供的SIP音视频通信云平台的结构示意图;
图11是本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请实施例提供的SIP音视频通信系统的业务动态伸缩方法的流程示意图。请参照图1,本申请实施例提供一种SIP音视频通信系统的业务动态伸缩方法,包括步骤S110至步骤S130,各步骤具体如下:
S110:中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况。
SIP音视频通信系统是基于PaaS(Platform-as-a-Service,平台及服务)云服务的系统,用于提供基于SIP(Session Initiation Protocol,会话初始协议)协议的音视频通信服务。
SIP音视频通信系统一般采用分层设计,共设计为四层,分别是SIP代理层、SIP应用层、媒体转发层和管理层,其中SIP代理层、SIP应用层和媒体转发层属于业务层。各层均可采用分布式集群设计,各业务层间功能相互独立,管理层用于管理各业务层内的分布式集群服务组件并协调同步各业务层间的业务逻辑或数据。
具体地,SIP音视频通信系统包括中心管理服务组件和业务服务组件;其中,中心管理服务组件用于实现管理层的功能,业务服务组件用于实现业务层的功能;其中,业务服务组件包括SIP代理服务组件、SIP应用服务组件和媒体转发服务组件。
SIP音视频通信系统中的每个服务组件均可基于公共云平台上的虚拟机或容器(例如Docker)独立运行。
具体地,SIP代理服务组件提供一种无状态SIP服务,用于快速转发SIP客户端与SIP应用服务组件之间的SIP消息。
SIP应用服务组件提供一种会话状态SIP服务,是SIP音视频通信系统中实现业务控制的核心组件,用于实现SIP音视频通信系统中的SIP消息的路由转发、用户的认证和授权、会话控制策略的执行等功能。
可选地,SIP应用服务组件可以集成融合RFC3261规范中SIP注册服务器(registerserver)、代理服务器(proxy server)和定位服务器(location service)的功能。
媒体转发服务组件用于代理转发处于通话中的双方(SIP客户端)之间的媒体数据。
中心管理服务组件用于实现SIP代理服务组件、SIP应用服务组件和媒体转发服务组件的注册、注销、心跳等方面的管理,向SIP客户端按照负载均衡算法分配SIP代理服务组件的地址,并对各业务服务组件的业务负载状况进行实时监测,按照各业务服务组件的业务负载状况启动动态缩容或扩容。
具体地,中心管理服务组件可以周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况,基于业务服务组件的业务负载度量指标值启动动态缩容或扩容。
可以理解地,不同的业务服务组件的业务负载度量指标可以不同。
S120:若任一业务服务组件的业务负载度量指标值在第一预设时间内均小于预设缩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态缩容。
具体地,业务服务组件基于第一预设监测周期向中心管理服务组件上报当前业务负载度量指标值。
若任一业务服务组件的业务负载度量指标值在第一预设时间内均小于预设缩容阈值,则认为系统处于低负载状态,资源存在冗余,未得到充分利用,因此可以通过中心管理服务组件控制对应的业务服务组件启动动态缩容,避免浪费资源。
可选地,第一预设时间可以是连续的第一预设数量的第一预设监测周期。
S130:若任一业务服务组件的业务负载度量指标值在第二预设时间内均大于预设扩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态扩容。
具体地,业务服务组件基于第二预设监测周期向中心管理服务组件上报当前业务负载度量指标值。
若任一业务服务组件的业务负载度量指标值在第二预设时间内均大于预设扩容阈值,则认为系统处于高负载状态,资源可能不足,容易影响系统运行,因此可以通过中心管理服务组件控制对应的业务服务组件启动动态扩容,以保证系统业务的质量。
可选地,第二预设时间可以是连续的第二预设数量的第二预设监测周期。
请参阅图2,图2是本申请实施例提供的业务服务组件启动动态伸缩过程的流程示意图。
如图2所示,业务服务组件启动动态伸缩的过程既可以由用户手动触发,也可以由中心管理服务组件基于各业务服务组件的业务负载度量指标值变化状况自动触发。
具体地,先判断用户是否手动触发业务服务组件的动态伸缩过程。
若确定用户手动触发业务服务组件的动态伸缩过程,则在不影响SIP音视频通信系统稳定性的情况下,启动业务服务组件的动态伸缩过程。
若确定用户未手动触发业务服务组件的动态伸缩过程,则业务服务组件可以基于预设监测周期向中心管理服务组件上报当前业务负载度量指标值,中心管理服务组件实时监测分析各业务服务组件的业务负载度量指标值变化状况,中心管理服务组件基于各业务服务组件的业务负载度量指标值变化状况自动判断是否需要触发业务服务组件的动态伸缩过程。
可选地,预设监测周期可以由用户自行配置,例如预设监测周期可以配置为3秒。
若任一业务服务组件的业务负载度量指标值在连续的预设数量的预设监测周期内均处于预设阈值范围,则中心管理服务组件继续实时监测分析各业务服务组件的业务负载度量指标值变化状况。
若任一业务服务组件的业务负载度量指标值在连续的预设数量的预设监测周期内未处于预设阈值范围,则中心管理服务组件可以控制对应的业务服务组件启动业务服务组件的动态伸缩过程。
可选地,预设监测周期的预设数量可以由用户自行配置,例如预设监测周期可以配置为3秒,预设数量可以配置为5个。
具体地,若任一业务服务组件的业务负载度量指标值在连续的预设数量的预设监测周期内均小于预设缩容阈值,则中心管理服务组件控制对应的业务服务组件启动动态缩容。
若任一业务服务组件的业务负载度量指标值在连续的预设数量的预设监测周期内均大于预设扩容阈值,则中心管理服务组件控制对应的业务服务组件启动动态扩容。
本申请实施例提供的SIP音视频通信系统的业务动态伸缩方法,中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况;业务服务组件包括SIP代理服务组件、SIP应用服务组件和媒体转发服务组件;若任一业务服务组件的业务负载度量指标值在第一预设时间内均小于预设缩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态缩容;若任一业务服务组件的业务负载度量指标值在第二预设时间内均大于预设扩容阈值时,则中心管理服务组件控制对应的业务服务组件启动动态扩容。通过上述方式,中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况,并基于业务负载度量指标值变化状况控制对应的业务服务组件进行动态缩容或扩容,即使系统处于低负载状态,资源仍可以得到充分利用,提高了资源利用率,降低了系统的运营成本。
在一个实施例中,SIP代理服务组件的业务负载度量指标由每秒代理转发的SIP消息数度量;SIP应用服务组件的业务负载度量指标由每秒呼叫数和并发会话数度量;媒体转发服务组件的业务负载度量指标由网络带宽使用率度量。
各业务服务组件的业务特点不同,因此各业务服务组件的业务负载度量指标也不一样。
具体地,SIP代理服务组件的业务负载度量指标由每秒代理转发的SIP消息数度量,即SIP代理服务组件的业务负载度量指标为每秒代理转发的SIP消息数(Message PerSecond,MPS);SIP应用服务组件的业务负载度量指标由每秒呼叫数和并发会话数度量,即SIP应用服务组件的业务负载度量指标为每秒呼叫数(Call Per Second,CPS)和并发会话数(Concurrent Call Number,CCN);媒体转发服务组件的业务负载度量指标由网络带宽使用率度量,即媒体转发服务组件的业务负载度量指标为网络带宽使用率。
本实施例根据各业务服务组件的业务特点选取不同的业务负载度量指标,相较于对所有业务服务组件均采用通用的基于资源负载(例如CPU、内存、网络使用率)的度量指标的方案,本实施例提供的方案能够更加准确地判断各业务服务组件的业务负载变化状况,进而可以更精准地进行业务服务组件的动态伸缩,提高资源的有效利用率。
在一个实施例中,SIP代理服务组件动态扩容的步骤,包括:中心管理服务组件基于公共云平台创建虚拟机,并在虚拟机上运行新的SIP代理服务组件,以完成新的SIP代理服务组件的注册;其中,虚拟机配置有SIP代理服务组件的运行环境;在完成新的SIP代理服务组件的注册后,中心管理服务组件将新的SIP代理服务组件的地址信息记录到SIP代理服务集群信息列表;在SIP客户端请求SIP代理服务组件地址时,中心管理服务组件基于预设算法向SIP客户端分配新的SIP代理服务组件的地址信息,以使SIP客户端根据新的SIP代理服务组件的地址信息完成SIP代理服务组件的注册。
请参阅图3,图3是本申请实施例提供的SIP代理服务组件动态扩容过程的信令交互图。
SIP音视频通信系统中的每个服务组件均可基于公共云平台上的虚拟机或容器(例如Docker)独立运行,因此,SIP代理服务组件动态扩容可以基于公共云平台实现。
SIP代理服务组件启动动态扩容的过程被用户手动触发或者由中心管理服务组件基于SIP代理服务组件的业务负载度量指标值变化状况自动触发后,需要实现新的SIP代理服务组件的注册。
具体地,SIP代理服务组件向中心管理服务组件发送注册请求,中心管理服务组件响应于注册请求,开始进行新的SIP代理服务组件的注册。
具体地,中心管理服务组件先向公共云平台申请创建虚拟机,再在申请创建的虚拟机上配置SIP代理服务组件的运行环境,并在配置完运行环境的虚拟机上启动运行SIP代理服务组件程序。SIP代理服务组件程序启动运行后,则说明新的SIP代理服务组件向中心管理服务组件注册成功。
进一步地,在完成新的SIP代理服务组件的注册后,中心管理服务组件将新的SIP代理服务组件的地址信息记录到SIP代理服务集群信息列表中。
在SIP客户端向中心管理服务组件请求SIP代理服务组件地址时,中心管理服务组件基于预设算法向SIP客户端返回新的SIP代理服务组件的地址,以使SIP客户端可以根据地址向刚加入SIP代理服务集群的新的SIP代理服务组件发起SIP注册请求。
可选地,预设算法可以是业务负载最小的负载均衡算法。
进一步地,新的SIP代理服务组件响应于SIP注册请求,以使SIP客户端完成SIP代理服务组件的注册。
SIP代理服务组件动态缩容的步骤,包括:中心管理服务组件删除SIP代理服务集群信息列表中所需下线的SIP代理服务组件的地址信息,并向所需下线的SIP代理服务组件发送下线通知;所需下线的SIP代理服务组件接收下线通知后,继续转发接收到的非REGISTER消息,不处理接收到的REGISTER消息,以完成业务会话的迁移;在所需下线的SIP代理服务组件完成业务会话的迁移后,向中心管理服务组件发送下线请求;中心管理服务组件基于下线请求停止运行所需下线的SIP代理服务组件,并基于公共云平台回收所需下线的SIP代理服务组件对应的虚拟机。
请参阅图4,图4是本申请实施例提供的SIP代理服务组件动态缩容过程的流程示意图。
如图4所示,SIP代理服务组件启动动态缩容的过程被用户手动触发或者由中心管理服务组件基于SIP代理服务组件的业务负载度量指标值变化状况自动触发后,需要实现SIP代理服务组件的下线。
具体地,中心管理服务组件删除SIP代理服务集群信息列表中所需下线的SIP代理服务组件的地址信息。
进一步地,中心管理服务组件向所需下线的SIP代理服务组件发送下线通知,以通知所需下线的SIP代理服务组件下线。
所需下线的SIP代理服务组件接收到下线通知后,需要对后续接收到的SIP消息按照消息类型做相应的处理。
若所需下线的SIP代理服务组件接收到REGISTER消息,则拒绝处理,并丢弃该REGISTER消息。同时,对拒绝处理的REGISTER消息按照不同的SIP URI进行统计计数。
REGISTER消息为注册消息,若SIP客户端的REGISTER消息被拒绝处理,则该SIP客户端REGISTER注册失败。若该SIP客户端尝试若干次REGISTER注册均失败后,则判定该SIP代理服务组件运行异常,该SIP客户端将向中心管理服务组件请求可用的SIP代理服务组件地址,以实现注册会话的迁移。
若所需下线的SIP代理服务组件接收到非REGISTER消息,则将接收到的非REGISTER消息继续转发到相应的业务服务组件,例如SIP应用服务组件或SIP客户端。
需要说明的是,在SIP客户端首次向SIP代理服务组件发起注册时,SIP代理服务组件需要统计SIP URI的数目,一个SIP URL可以是一个SIP客户端的SIP电话号码。
进一步地,当被SIP代理服务组件拒绝处理的SIP URI的数目和经由该SIP代理服务组件发起SIP注册的SIP URI数目相等,且当前时刻没有呼叫会话经由该SIP代理服务组件处理时,则认为与该SIP代理服务组件相关联的业务会话,例如注册会话、呼叫会话等,都已经迁移到其他SIP代理服务组件上,此时该SIP代理服务组件下线,不影响用户任何业务的实现,即用户侧无感知。
进一步地,在所需下线的SIP代理服务组件完成业务会话的迁移后,向中心管理服务组件发送下线请求,以注销下线。
进一步地,中心管理服务组件基于下线请求停止运行所需下线的SIP代理服务组件,同时向公共云平台申请回收所需下线的SIP代理服务组件对应的虚拟机,以完成SIP代理服务组件的动态缩容。
在一个实施例中,SIP应用服务组件动态扩容的步骤,包括:中心管理服务组件基于公共云平台创建虚拟机,并在虚拟机上运行新的SIP应用服务组件,以完成新的SIP应用服务组件的注册;其中,虚拟机配置有SIP应用服务组件的运行环境;在完成新的SIP应用服务组件的注册后,中心管理服务组件基于一致性哈希算法从SIP应用服务集群信息列表中筛选出新的SIP应用服务组件的后继SIP应用服务组件和后继SIP应用服务组件当前的前驱SIP应用服务组件;中心管理服务组件向后继SIP应用服务组件发送新的SIP应用服务组件的上线通知;后继SIP应用服务组件在接收上线通知后,在第三预设时间内将接收到的创建新呼叫会话消息或注册消息重定向至新的SIP应用服务组件,并基于中心管理服务组件将需要迁移的消息迁移至新的SIP应用服务组件;其中,需要迁移的消息包括应由新的SIP应用服务组件处理的注册消息和前驱SIP应用服务组件备份在后继SIP应用服务组件上的注册消息;在后继SIP应用服务组件将需要迁移的消息迁移至新的SIP应用服务组件后,中心管理服务组件更新SIP应用服务集群信息列表,并向所有SIP应用服务组件和所有SIP代理服务组件发送新的SIP应用服务组件的上线通知。
请参阅图5,图5是本申请实施例提供的SIP应用服务组件动态扩容过程的流程示意图。
如图5所示,SIP应用服务组件启动动态扩容的过程被用户手动触发或者由中心管理服务组件基于SIP应用服务组件的业务负载度量指标值变化状况自动触发后,需要实现新的SIP应用服务组件的上线。
具体地,新的SIP应用服务组件S1,向中心管理服务组件发送注册请求,中心管理服务组件响应于注册请求,开始进行新的SIP应用服务组件的注册。
具体地,中心管理服务组件先向公共云平台申请创建虚拟机,再在申请创建的虚拟机上配置SIP应用服务组件的运行环境,并在配置完运行环境的虚拟机上启动运行SIP应用服务组件程序。SIP应用服务组件程序启动运行后,则说明新的SIP应用服务组件S1向中心管理服务组件注册成功。
进一步地,在完成新的SIP应用服务组件的注册后,中心管理服务组件基于一致性哈希算法,从现有的SIP应用服务集群信息列表中筛选出新的SIP应用服务组件S1的后继SIP应用服务组件S2和后继SIP应用服务组件S2当前的前驱SIP应用服务组件S3。
具体地,中心管理服务组件向后继SIP应用服务组件S2发送新的SIP应用服务组件S1的上线通知,以使后继SIP应用服务组件S2获知新的SIP应用服务组件S1将作为新的前驱SIP应用服务组件。后继SIP应用服务组件S2在接收上线通知后,若后继SIP应用服务组件S2在第三预设时间内接收到SIP消息后,可以将SIP消息对应的SIP URI作为键进行索引。
后继SIP应用服务组件S2在第三预设时间内接收到SIP消息后,在记录有新的SIP应用服务组件S1的地址信息的SIP应用服务集群信息列表中,若通过一致性哈希算法计算获知现接收到的SIP消息应由新的SIP应用服务组件S1处理时,需要根据接收到的SIP消息的类型进行不同处理。
具体地,若后继SIP应用服务组件S2接收到的SIP消息为创建新呼叫会话消息(即INVITE消息)或者注册消息(即REGISTER消息),则后继SIP应用服务组件S2将接收到的SIP消息重定至新的SIP应用服务组件S1。
若后继SIP应用服务组件S2接收到的SIP消息不是创建新呼叫会话消息(即INVITE消息)或者注册消息(即REGISTER消息),则由后继SIP应用服务组件S2处理,例如对于会话内开启新事务的消息,后继SIP应用服务组件S2可根据消息中的Route头域信息完成路由处理,后继SIP应用服务组件S2也可用于处理未决事务,例如早期会话中的消息(CANCEL消息、PRACK消息等)。
需要说明的是,第三预设时间T1,可以是INVITE事务时间;其中,INVITE事务时间默认为32秒。
进一步地,超过第三预设时间T1后,后继SIP应用服务组件S2基于中心管理服务组件将需要迁移的消息迁移至新的SIP应用服务组件S1;其中,需要迁移的消息包括应由新的SIP应用服务组件S1处理的注册消息和前驱SIP应用服务组件S3冗余备份在后继SIP应用服务组件S2上的注册消息。
进一步地,在后继SIP应用服务组件S2将需要迁移的消息迁移至新的SIP应用服务组件S1后,中心管理服务组件更新SIP应用服务集群信息列表,并向所有SIP应用服务组件和SIP代理服务组件发送新的SIP应用服务组件S1的上线通知。
SIP应用服务组件动态缩容的步骤,包括:中心管理服务组件基于一致性哈希算法从SIP应用服务集群信息列表中筛选出所需下线的SIP应用服务组件的前驱SIP应用服务组件和后继SIP应用服务组件,并向所需下线的SIP应用服务组件发送下线通知;所需下线的SIP应用服务组件接收下线通知后,将接收到的创建新呼叫会话消息或注册消息重定向至后继SIP应用服务组件,基于中心管理服务组件将成功建立呼叫会话的消息同步至后继SIP应用服务组件,将需要迁移的消息迁移至后继SIP应用服务组件;其中,需要迁移的消息包括前驱SIP应用服务组件备份在所需下线的SIP应用服务组件上的呼叫会话信息和注册会话信息;在将需要迁移的消息迁移至后继SIP应用服务组件后,所需下线的SIP应用服务组件向中心管理服务组件发送下线请求;中心管理服务组件基于下线请求停止运行所需下线的SIP应用服务组件,并基于公共云平台回收所需下线的SIP应用服务组件对应的虚拟机。
请参阅图6,图6是本申请实施例提供的SIP应用服务组件动态缩容过程的流程示意图。
如图6所示,SIP应用服务组件启动动态缩容的过程被用户手动触发或者由中心管理服务组件基于SIP应用服务组件的业务负载度量指标值变化状况自动触发后,需要实现新的SIP应用服务组件的下线。
具体地,中心管理服务组件基于一致性哈希算法从SIP应用服务集群信息列表中筛选出所需下线的SIP应用服务组件S1的前驱SIP应用服务组件S3和后继SIP应用服务组件S2,并向所需下线的SIP应用服务组件S1发送下线通知,并删除SIP应用服务集群信息列表中所需下线的SIP应用服务组件S1的地址信息。
进一步地,所需下线的SIP应用服务组件S1接收下线通知后,对后续接收到的SIP消息按照消息类型进行对应处理。
若所需下线的SIP应用服务组件S1接收到的SIP消息为创建新呼叫会话消息或注册消息,则所需下线的SIP应用服务组件S1将接收到的创建新呼叫会话消息或注册消息重定向至后继SIP应用服务组件S2。
若所需下线的SIP应用服务组件S1接收到的SIP消息为呼叫会话内尚未建立呼叫会话的开启新事务的消息,则由所需下线的SIP应用服务组件S1继续处理。
若所需下线的SIP应用服务组件S1接收到的SIP消息为建立呼叫会话的消息,即针对INVITE消息的200OK的响应消息,则所需下线的SIP应用服务组件S1将建立呼叫会话的消息通过中心管理服务组件迁移后继SIP应用服务组件S2。
进一步地,在所有的建立或取消呼叫会话都完成后,所需下线的SIP应用服务组件S1通过中心管理服务组件通知后继SIP应用服务组件S2,以使后继SIP应用服务组件S2重构或重建目前S1上的正在进行的呼叫会话。
SIP应用服务组件作为一种有状态的服务组件,其上保存着SIP应用服务组件和SIP客户端之间的共享呼叫会话状态信息。由于不同用户的通话时长不一样,例如部分用户可能进行长达数小时通话,部分用户可能只进行数分钟通话,若等待所有用户的呼叫会话结束后,再收回收SIP应用服务组件的资源,可能会导致整个缩容过程时延很大,资源有效利用率不高。
因此在SIP应用服务组件的缩容过程中,需要将正在进行中的呼叫会话迁移到其后继SIP应用服务组件上。
进一步地,所需下线的SIP应用服务组件S1将需要迁移的消息迁移至后继SIP应用服务组件S2;其中,需要迁移的消息包括前驱SIP应用服务组件S3备份在所需下线的SIP应用服务组件S1上的呼叫会话信息和注册会话信息。
进一步地,在将需要迁移的消息迁移至后继SIP应用服务组件S2后,所需下线的SIP应用服务组件S1向中心管理服务组件发送下线请求,以实现所需下线的SIP应用服务组件S1的注销下线。
在中心管理服务组件向所有的SIP代理服务组件和SIP应用服务组件发送所需下线的SIP应用服务组件S1已经下线的通知后,基于下线请求停止运行所需下线的SIP应用服务组件S1,并向公共云平台申请回收所需下线的SIP应用服务组件对应的虚拟机。
在一个实施例中,媒体转发服务组件动态扩容的步骤,包括:所需上线的媒体转发服务组件向中心管理服务组件发送注册上线请求;响应于注册上线请求,中心管理服务组件将所需上线的媒体转发服务组件的信息记录到媒体转发服务组件集群信息列表,并将媒体转发服务组件集群信息列表以及所有媒体转发服务组件的业务负载信息发送至SIP应用服务组件;SIP应用服务组件建立呼叫会话时,从媒体转发服务组件集群信息列表中选择业务负载最低的媒体转发服务组件作为媒体中继。
请参阅图7,图7是本申请实施例提供的媒体转发服务组件动态扩容过程的信令交互图。
媒体转发服务组件启动动态扩容的过程被用户手动触发或者由中心管理服务组件基于媒体转发服务组件的业务负载度量指标值变化状况自动触发后,需要实现新的媒体转发服务组件的上线。
具体地,所需上线的媒体转发服务组件向中心管理服务组件发送注册上线请求。
响应于注册上线请求,中心管理服务组件将所需上线的媒体转发服务组件的信息记录到媒体转发服务组件集群信息列表,并将媒体转发服务组件集群信息列表以及所有媒体转发服务组件的业务负载信息发送至SIP应用服务组件。
在SIP应用服务组件建立呼叫会话时,从媒体转发服务组件集群信息列表中选择业务负载最低的媒体转发服务组件作为媒体中继,后续的媒体中继业务将转移至所需上线的媒体转发服务组件。
媒体转发服务组件动态缩容的步骤,包括:在确定所需下线的媒体转发服务组件后,中心管理服务组件向SIP应用服务组件发送所需下线的媒体转发服务组件的下线消息;响应于下线消息,SIP应用服务组件删除所需下线的媒体转发服务组件的信息,更新媒体转发服务组件集群信息列表,并检测本地呼叫会话;若检测到本地呼叫会话中存在将所需下线的媒体转发服务组件作为媒体中继的呼叫会话,则向呼叫会话对应的SIP客户端发起reINV1TE三次握手过程,并从更新后的媒体转发服务组件集群信息列表中选择可用的媒体转发服务组件作为SIP客户端的媒体中继。
请参阅图8,图8是本申请实施例提供的媒体转发服务组件动态缩容过程的信令交互图。
假设通信双方,即SIP客户端1和SIP客户端2,将媒体转发服务组件1作为媒体中继。
如图8所示,在媒体转发服务组件1正常运行的情况下,SIP应用服务组件通过SIP客户端的INV1TE消息,分别与SIP客户端1和SIP客户端2创建信令会话,并选择媒体转发服务组件1作为媒体中继,实现通信双方的媒体会话。
中心管理服务组件可以基于媒体转发服务组件的心跳实时监测媒体转发服务组件的运行状态。
可选地,媒体转发服务组件的心跳间隔可由用户自行配置,例如心跳间隔可以配置为3秒。
若中心管理服务组件监测到媒体转发服务组件1的心跳间隔大于预设的阈值,则判定媒体转发服务组件1不可用,确定媒体转发服务组件1为所需下线的媒体转发服务组件,并向SIP应用服务组件发送媒体转发服务组件1的下线消息。
响应于媒体转发服务组件1的下线消息,SIP应用服务集群中的所有SIP应用服务组件删除媒体转发服务组件1信息,更新媒体转发服务组件列表信息,并检测本地所有呼叫会话。
若检测到本地呼叫会话中存在将媒体转发服务组件1作为媒体中继的呼叫会话,则向会话的通信双方,即SIP客户端1和SIP客户端2,主动发起reINV1TE三次握手过程,并从更新后的媒体转发服务组件集群信息列表中选择可用的媒体转发服务组件2作为SIP客户端的媒体中继,以恢复中断的媒体会话。
进一步地,SIP应用服务组件通过reINV1TE消息,再次分别与SIP客户端1和SIP客户端2创建SIP会话,进而恢复中断的媒体会话。
在一个实施例中,中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况之前,包括:SIP代理服务组件接收由SIP客户端发送的第一心跳请求信息;SIP代理服务组件响应第一心跳请求信息,向中心管理服务组件发送第二心跳请求信息;其中第一心跳请求信息的间隔周期为第一周期,第二心跳请求信息的间隔周期为第二周期,第二周期小于第一周期;若中心管理服务组件在第四预设时间内未收到第二心跳请求信息,则判定SIP代理服务组件运行异常,删除运行异常的SIP代理服务组件的地址信息,并更新SIP代理服务集群信息。
在SIP代理服务组件下线或运行异常时,系统需要及时将可用的SIP代理服务集群的地址信息共享给SIP客户端,以使SIP客户端可以基于可用的SIP代理服务组件的地址恢复SIP注册。
请参阅图9,图9是本申请实施例提供的基于双向心跳机制的SIP代理服务集群地址共享方法的信令交互图。
本申请实施例提供一种基于双向心跳机制的SIP代理服务集群地址共享方法,如图9所示,在中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况之前,还需要及时更新可用的SIP代理服务集群的地址信息。
具体地,SIP客户端在SIP代理服务组件注册成功后,SIP代理服务组件可以接收由SIP客户端发送的第一心跳请求信息。
可选地,SIP客户端可以周期性发送心跳请求信息,心跳请求信息可以是SIP会话中的OPTION消息。
进一步地,SIP代理服务组件响应第一心跳请求信息,向中心管理服务组件发送第二心跳请求信息;其中第一心跳请求信息的间隔周期为第一周期,第二心跳请求信息的间隔周期为第二周期,第二周期小于第一周期,以保证中心管理服务组件能够比SIP客户端先监测到SIP代理服务组件的异常。
可选地,第一周期和第二周期可由用户自行配置。例如第一周期可以为30秒,第二周期可以为10秒。
进一步地,若中心管理服务组件在第四预设时间内未收到第二心跳请求信息,则判定SIP代理服务组件运行异常,删除运行异常的SIP代理服务组件的地址信息,并更新SIP代理服务集群信息,维护最新可用的SIP代理服务集群信息列表的信息。
可选地,第四预设时间可以包括多个第二周期。
例如,第二周期可以为10秒,第四预设时间可以包括3个第二周期,则第四预设时间为30秒。若中心管理服务组件在30秒内未收到第二心跳请求信息,则判定SIP代理服务组件运行异常。
在一个实施例中,SIP代理服务组件响应第一心跳请求信息,向中心管理服务组件发送第二心跳请求信息之后,还包括:SIP代理服务组件用于响应第一心跳请求信息,向SIP客户端发送第一心跳响应消息;中心管理服务组件响应SIP客户端发送的SIP代理服务地址获取请求,根据更新后的SIP代理服务集群信息向SIP客户端发送最新可用的SIP代理服务组件地址;其中,SIP代理服务地址获取请求是SIP客户端在第五预设时间内未收到第一心跳响应信息时生成的请求信息。
继续参阅图9,在SIP代理服务组件运行正常的情况下,SIP客户端、SIP代理服务组件和中心管理服务组件会不断地进行心跳响应检测。
具体地,SIP代理服务组件响应第一心跳请求信息,向中心管理服务组件发送第二心跳请求信息之后,SIP代理服务组件可以向SIP客户端发送第一心跳响应消息,以使SIP客户端获知SIP代理服务组件可正常运行。
可以理解地,若SIP客户端在第五预设时间内未收到SIP代理服务组件发送的第一心跳响应消息,则判定SIP代理服务组件运行异常。
可选地,第五预设时间可以包括多个第一周期。
例如,第一周期可以为30秒,第五预设时间可以包括3个第一周期,则预设时间为90秒。若SIP客户端在90秒内未收到SIP代理服务组件发送的第一心跳响应消息,则判定SIP代理服务组件运行异常。
中心管理服务组件在接收第二心跳请求信息后可以向SIP代理服务组件发送第二心跳响应消息,以使SIP代理服务组件获知中心管理服务组件已收到第二心跳请求信息。
进一步地,若SIP客户端判定SIP代理服务组件运行异常,则SIP客户端需要向中心管理服务组件发的SIP代理服务地址获取请求,以获取可用的SIP代理服务组件的地址。
进一步地,中心管理服务组件响应SIP客户端发送的SIP代理服务地址获取请求,根据更新后的SIP代理服务集群信息向SIP客户端发送最新可用的SIP代理服务组件地址;其中,SIP代理服务地址获取请求是SIP客户端在第五预设时间内未收到第一心跳响应信息时生成的请求信息。
进一步地,SIP客户端基于最新可用的SIP代理服务组件地址发起SIP注册。
在SIP注册成功后,最新的NAT映射后的Contact地址以及最新的SIP代理服务组件的地址将被更新到后端的SIP应用服务组件,以恢复SIP客户端之间的通信。
本申请实施例还提供一种SIP音视频通信系统,包括中心管理服务组件、SIP代理服务组件、SIP应用服务组件和媒体转发服务组件,用于执行上述任一项所述的SIP音视频通信系统的业务动态伸缩方法。
请参阅图10,图10是本申请实施例提供的SIP音视频通信云平台的结构示意图,在本实施例中,SIP音视频通信云平台包括SIP客户端、公共云平台和上述的SIP音视频通信系统。
其中,SIP音视频通信云平台是基于SaaS(Software-as-a-Service,软件运营服务)云服务的系统。
SIP客户端是可以通过SIP协议以及SDP协议进行音视频呼叫通信的客户端软件。
公共云平台可以提供IaaS(Infrastructure-as-a-Service,基础设施即服务)底层云服务。
可选地,公共云平台可以是商业公有云平台,也可以是用户部署的私有云平台。
公共云平台作为底层云服务设施,为各组件程序的运行提供所需的资源,例如提供虚拟主机或容器镜像,支持按照各业务服务组件的业务负载度量指标动态创建或回收虚拟主机或容器镜像。
公共云平台作为SIP音视频通信云平台的一部分,可以开放API接口以向SIP音视频通信云平台提供相关资源。
具体地,SIP客户端用于通过SIP协议以及SDP协议与SIP音视频通信系统进行音视频呼叫通信;公共云平台用于开放API接口以供中心管理服务组件调用对应业务服务组件的虚拟机资源。
SIP客户端用于在第四预设时间内未收到第一心跳响应信息时,判定SIP代理服务组件运行异常,生成SIP代理服务地址获取请求以通过中心管理服务组件获取最新可用的SIP代理服务组件地址,并根据最新可用的SIP代理服务组件地址发起SIP注册。
进一步地,在SIP注册成功后,最新的NAT映射后的Contact地址以及最新的SIP代理服务组件的地址将被更新到后端的SIP应用服务组件,以恢复SIP客户端之间的通信。
图11是本申请实施例提供的电子设备的结构示意图,本申请实施例还提供一种电子设备,包括处理器(processor)1110、通信接口(Communication Interface)1120、存储器(memory)1130和通信总线1140,其中,处理器1110,通信接口1120,存储器1130通过通信总线1140完成相互间的通信。处理器1110可以调用存储器1130中的计算机程序,以执行SIP音视频通信系统的业务动态伸缩方法。
此外,上述的存储器1130中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种SIP音视频通信系统的业务动态伸缩方法,其特征在于,包括:
中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况;所述业务服务组件包括SIP代理服务组件、SIP应用服务组件和媒体转发服务组件;
若任一业务服务组件的业务负载度量指标值在第一预设时间内均小于预设缩容阈值时,则所述中心管理服务组件控制对应的所述业务服务组件启动动态缩容;
若任一业务服务组件的业务负载度量指标值在第二预设时间内均大于预设扩容阈值时,则所述中心管理服务组件控制对应的所述业务服务组件启动动态扩容。
2.根据权利要求1所述的SIP音视频通信系统的业务动态伸缩方法,其特征在于,
所述SIP代理服务组件的业务负载度量指标由每秒代理转发的SIP消息数度量;所述SIP应用服务组件的业务负载度量指标由每秒呼叫数和并发会话数度量;所述媒体转发服务组件的业务负载度量指标由网络带宽使用率度量。
3.根据权利要求2所述的SIP音视频通信系统的业务动态伸缩方法,其特征在于,所述SIP代理服务组件动态扩容的步骤,包括:
所述中心管理服务组件基于公共云平台创建虚拟机,并在所述虚拟机上运行新的SIP代理服务组件,以完成所述新的SIP代理服务组件的注册;其中,所述虚拟机配置有SIP代理服务组件的运行环境;
在完成所述新的SIP代理服务组件的注册后,所述中心管理服务组件将所述新的SIP代理服务组件的地址信息记录到SIP代理服务集群信息列表;
在SIP客户端请求SIP代理服务组件地址时,所述中心管理服务组件基于预设算法向所述SIP客户端分配所述新的SIP代理服务组件的地址信息,以使所述SIP客户端根据所述新的SIP代理服务组件的地址信息完成SIP代理服务组件的注册;
所述SIP代理服务组件动态缩容的步骤,包括:
所述中心管理服务组件删除SIP代理服务集群信息列表中所需下线的SIP代理服务组件的地址信息,并向所述所需下线的SIP代理服务组件发送下线通知;
所述所需下线的SIP代理服务组件接收所述下线通知后,继续转发接收到的非REGISTER消息,不处理接收到的REGISTER消息,以完成业务会话的迁移;
在所述所需下线的SIP代理服务组件完成业务会话的迁移后,向所述中心管理服务组件发送下线请求;
所述中心管理服务组件基于所述下线请求停止运行所述所需下线的SIP代理服务组件,并基于公共云平台回收所述所需下线的SIP代理服务组件对应的虚拟机。
4.根据权利要求2所述的SIP音视频通信系统的业务动态伸缩方法,其特征在于,所述SIP应用服务组件动态扩容的步骤,包括:
所述中心管理服务组件基于公共云平台创建虚拟机,并在所述虚拟机上运行新的SIP应用服务组件,以完成所述新的SIP应用服务组件的注册;其中,所述虚拟机配置有SIP应用服务组件的运行环境;
在完成所述新的SIP应用服务组件的注册后,所述中心管理服务组件基于一致性哈希算法从SIP应用服务集群信息列表中筛选出所述新的SIP应用服务组件的后继SIP应用服务组件和所述后继SIP应用服务组件当前的前驱SIP应用服务组件;
所述中心管理服务组件向所述后继SIP应用服务组件发送所述新的SIP应用服务组件的上线通知;
所述后继SIP应用服务组件在接收所述上线通知后,在第三预设时间内将接收到的创建新呼叫会话消息或注册消息重定向至所述新的SIP应用服务组件,并基于所述中心管理服务组件将需要迁移的消息迁移至所述新的SIP应用服务组件;其中,所述需要迁移的消息包括应由所述新的SIP应用服务组件处理的注册消息和所述前驱SIP应用服务组件备份在所述后继SIP应用服务组件上的注册消息;
在所述后继SIP应用服务组件将需要迁移的消息迁移至所述新的SIP应用服务组件后,所述中心管理服务组件更新所述SIP应用服务集群信息列表,并向所有SIP应用服务组件和所有SIP代理服务组件发送所述新的SIP应用服务组件的上线通知;
所述SIP应用服务组件动态缩容的步骤,包括:
所述中心管理服务组件基于一致性哈希算法从SIP应用服务集群信息列表中筛选出所需下线的SIP应用服务组件的前驱SIP应用服务组件和后继SIP应用服务组件,并向所述所需下线的SIP应用服务组件发送下线通知;
所述所需下线的SIP应用服务组件接收所述下线通知后,将接收到的创建新呼叫会话消息或注册消息重定向至所述后继SIP应用服务组件,基于所述中心管理服务组件将成功建立呼叫会话的消息同步至后继SIP应用服务组件,将需要迁移的消息迁移至所述后继SIP应用服务组件;其中,所述需要迁移的消息包括所述前驱SIP应用服务组件备份在所述所需下线的SIP应用服务组件上的呼叫会话信息和注册会话信息;
在将需要迁移的消息迁移至所述后继SIP应用服务组件后,所述所需下线的SIP应用服务组件向所述中心管理服务组件发送下线请求;
所述中心管理服务组件基于所述下线请求停止运行所述所需下线的SIP应用服务组件,并基于公共云平台回收所述所需下线的SIP应用服务组件对应的虚拟机。
5.根据权利要求2所述的SIP音视频通信系统的业务动态伸缩方法,其特征在于,所述媒体转发服务组件动态扩容的步骤,包括:
所需上线的媒体转发服务组件向所述中心管理服务组件发送注册上线请求;
响应于所述注册上线请求,所述中心管理服务组件将所述所需上线的媒体转发服务组件的信息记录到媒体转发服务组件集群信息列表,并将所述媒体转发服务组件集群信息列表以及所有媒体转发服务组件的业务负载信息发送至SIP应用服务组件;
所述SIP应用服务组件建立呼叫会话时,从所述媒体转发服务组件集群信息列表中选择业务负载最低的媒体转发服务组件作为媒体中继;
所述媒体转发服务组件动态缩容的步骤,包括:
在确定所需下线的媒体转发服务组件后,所述中心管理服务组件向所述SIP应用服务组件发送所述所需下线的媒体转发服务组件的下线消息;
响应于所述下线消息,所述SIP应用服务组件删除所述所需下线的媒体转发服务组件的信息,更新媒体转发服务组件集群信息列表,并检测本地呼叫会话;
若检测到本地呼叫会话中存在将所述所需下线的媒体转发服务组件作为媒体中继的呼叫会话,则向所述呼叫会话对应的SIP客户端发起reINV1TE三次握手过程,并从更新后的媒体转发服务组件集群信息列表中选择可用的媒体转发服务组件作为所述SIP客户端的媒体中继。
6.根据权利要求1所述的SIP音视频通信系统的业务动态伸缩方法,其特征在于,所述中心管理服务组件周期性监测SIP音视频通信系统中业务服务组件的业务负载度量指标值变化状况之前,包括:
所述SIP代理服务组件接收由SIP客户端发送的第一心跳请求信息;
所述SIP代理服务组件响应所述第一心跳请求信息,向所述中心管理服务组件发送第二心跳请求信息;其中所述第一心跳请求信息的间隔周期为第一周期,所述第二心跳请求信息的间隔周期为第二周期,所述第二周期小于所述第一周期;
若所述中心管理服务组件在第四预设时间内未收到第二心跳请求信息,则判定所述SIP代理服务组件运行异常,删除运行异常的SIP代理服务组件的地址信息,并更新SIP代理服务集群信息。
7.根据权利要求6所述的SIP音视频通信系统的业务动态伸缩方法,其特征在于,所述SIP代理服务组件响应所述第一心跳请求信息,向所述中心管理服务组件发送第二心跳请求信息之后,还包括:
所述SIP代理服务组件用于响应所述第一心跳请求信息,向所述SIP客户端发送第一心跳响应消息;
所述中心管理服务组件响应所述SIP客户端发送的SIP代理服务地址获取请求,根据更新后的SIP代理服务集群信息向所述SIP客户端发送最新可用的SIP代理服务组件地址;
其中,所述SIP代理服务地址获取请求是所述SIP客户端在第五预设时间内未收到第一心跳响应信息时生成的请求信息。
8.一种SIP音视频通信系统,其特征在于,包括中心管理服务组件、SIP代理服务组件、SIP应用服务组件和媒体转发服务组件,用于执行如权利要求1-7任一项所述的SIP音视频通信系统的业务动态伸缩方法。
9.一种SIP音视频通信云平台,其特征在于,包括:SIP客户端、公共云平台和如权利要求8所述的SIP音视频通信系统;
所述SIP客户端用于通过SIP协议以及SDP协议与所述SIP音视频通信系统进行音视频呼叫通信;
所述公共云平台用于开放API接口以供所述中心管理服务组件调用对应所述业务服务组件的虚拟机资源;
所述SIP客户端用于在第四预设时间内未收到第一心跳响应信息时,判定所述SIP代理服务组件运行异常,生成SIP代理服务地址获取请求以通过所述中心管理服务组件获取最新可用的SIP代理服务组件地址,并根据所述最新可用的SIP代理服务组件地址发起SIP注册。
10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述SIP音视频通信系统的业务动态伸缩方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310929229.2A CN116915615A (zh) | 2023-07-26 | 2023-07-26 | Sip音视频通信系统的业务动态伸缩方法和通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310929229.2A CN116915615A (zh) | 2023-07-26 | 2023-07-26 | Sip音视频通信系统的业务动态伸缩方法和通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116915615A true CN116915615A (zh) | 2023-10-20 |
Family
ID=88354699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310929229.2A Pending CN116915615A (zh) | 2023-07-26 | 2023-07-26 | Sip音视频通信系统的业务动态伸缩方法和通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116915615A (zh) |
-
2023
- 2023-07-26 CN CN202310929229.2A patent/CN116915615A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101387287B1 (ko) | 세션 개시 프로토콜(sip) 존속가능 네트워크 유지 방법,세션 개시 프로토콜(sip) 활성화 통신 디바이스 및 컴퓨터 판독가능 매체 | |
JP5523012B2 (ja) | エンドポイントを生き残ったネットワークのコントローラのリスト内にコントローラのスライディング・ウインドウで登録する方法 | |
US7844851B2 (en) | System and method for protecting against failure through geo-redundancy in a SIP server | |
KR101383923B1 (ko) | Sip 존속가능 사용자 에이전트 유지 방법, 통신 엔드포인트, 통신 시스템 및 컴퓨터 판독가능 저장 매체 | |
US9535805B2 (en) | Resilient routing for session initiation protocol based communication systems | |
US20080086567A1 (en) | SIP server architecture for improving latency in message processing | |
US9413880B1 (en) | Automatic failover for phone recordings | |
RU2609065C2 (ru) | Способ и устройство управления политикой для текущих соединений pdn в сети, содержащей шлюз, функциональный модуль доступа и функциональный модуль правил политики и оплаты | |
CN102075545B (zh) | 一种客户端注册指示方法、注册方法及其设备 | |
US10659427B1 (en) | Call processing continuity within a cloud network | |
US10146525B2 (en) | Supporting hitless upgrade of call processing nodes in cloud-hosted telephony system | |
CN103825868B (zh) | 一种本地语音逃生的方法、本地网关及系统 | |
US9389969B2 (en) | Method for SIP proxy failover | |
US9948726B2 (en) | Reconstruction of states on controller failover | |
CN107508848A (zh) | 会话切换控制方法、装置及接入点设备 | |
CN117097702A (zh) | 一种基于SIP协议的高并发WebRTC网关处理方法、网关系统、电子装置及存储介质 | |
EP2396950B1 (fr) | Procede et systeme de gestion de la signalisation dans un reseau de telecommunications | |
US10805361B2 (en) | Communication session preservation in geographically redundant cloud-based systems | |
CN115412974B (zh) | 分流通信方法、装置、设备及可读存储介质 | |
CN116915615A (zh) | Sip音视频通信系统的业务动态伸缩方法和通信系统 | |
CN103138998B (zh) | 一种代理状态检测方法、装置和系统 | |
CN111600830B (zh) | 一种sip容灾方法、装置、设备及可读存储介质 | |
US20150067178A1 (en) | Data processing | |
WO2012109953A1 (zh) | 一种sip会话保护的方法和系统 | |
Usui et al. | Restoring CSCF by leveraging feature of retransmission mechanism in session initiation protocol |
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 |