首页 / 专利库 / 专利权 / 国际初步审查要求 / 选定 / 一种媒体编码方式转换的方法及装置

一种媒体编码方式转换的方法及装置

阅读:373发布:2023-01-30

专利汇可以提供一种媒体编码方式转换的方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 涉及通信领域,公开了一种媒体编码方式转换的方法及装置,用以提高会话建立成功率。该方法为:SBC第一次接收SDP协商 请求 时,对主叫用户的第一媒体类型信息进行补偿,将补偿前的第一媒体类型信息与被叫用户基于补偿后的第一媒体类型信息选取的第二媒体类型信息进行比较,确定两者无交集时,基于补偿前的第一媒体类型信息 选定 主叫用户使用的第一媒体编码方式,以及基于第二媒体类型信息选定被叫用户使用的第二媒体编码方式,并在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。这样,能够避免因媒体格式协商失败而会话无法建立的问题,提高会话建立成功率,从而提升系统服务性能。,下面是一种媒体编码方式转换的方法及装置专利的具体信息内容。

1.一种媒体编码方式转换的方法,其特征在于,包括:
会话边界控制网元SBC第一次接收到主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式;
按照SBC能够支持并识别的媒体编码方式对所述媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿,并将补偿后的第一媒体类型信息发给被叫用户,其中,补偿的媒体编码方式对应的媒体类型要和原有的媒体编码方式的媒体类型保持一致,且补偿的媒体编码方式和原有的媒体编码方式能够相互转换;
SBC接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息是被叫用户基于所述补偿后的第一媒体类型信息选取的自身支持的媒体编码方式;
SBC将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于所述补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于所述第二媒体信息选定被叫用户使用的第二媒体编码方式;
SBC为主叫用户和被叫用户配置相应的会话端口,调用选取的分别支持主叫用户和被叫用户的媒体编码方式配对信息,将主叫用户发送的媒体数据包的媒体编码方式由第一媒体编码方式转换为第二媒体编码方式后,发送给被叫用户,以及将被叫用户发送的媒体数据包由第二媒体编码方式转换为第一媒体编码方式后发送给主叫用户。
2.如权利要求1所述的方法,其特征在于,SBC将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于所述补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于所述第二媒体信息选定被叫用户使用的第二媒体编码方式,包括:
若SBC在接收被叫用户返回的第二媒体类型信息的同时,接收到被叫用户返回的200OK或ACK,则SBC判断补偿前的第一媒体类型信息与第二媒体类型信息不存在交集时,在主叫用户携带的补偿前的第一媒体类型信息中选取出第一媒体编码方式,在被叫用户携带的第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存;
若SBC在接收被叫用户返回的第二媒体类型信息的同时,未接收到被叫用户返回的
200OK或ACK,则SBC将补偿前的第一媒体类型信息发送给主叫用户,并缓存第二媒体类型信息,以及在接收到主叫用户返回的第三媒体类型信息时,从第三媒体类型信息中选取出第一媒体编码方式,以及从第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存,其中,第三媒体类型信息是补偿前的第一媒体类型信息的子集。
3.如权利要求1或2所述的方法,其特征在于,所述SBC为主叫用户侧的SBC,或者,为被叫用户侧的SBC。
4.一种媒体编码方式转换的装置,其特征在于,包括:
第一接收单元,用于第一次接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式;
补偿单元,用于对所述媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户;
第二接收单元,用于接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息是被叫用户基于所述补偿后的第一媒体类型信息选取的自身支持的媒体编码方式;
处理单元,用于将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于所述补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于所述第二媒体信息选定被叫用户使用的第二媒体编码方式;
转换单元,用于为主叫用户和被叫用户配置相应的会话端口,调用选取的分别支持主叫用户和被叫用户的媒体编码方式配对信息,将主叫用户发送的媒体数据包的媒体编码方式由第一媒体编码方式转换为第二媒体编码方式后,发送给被叫用户,以及将被叫用户发送的媒体数据包由第二媒体编码方式转换为第一媒体编码方式后发送给主叫用户。
5.如权利要求4所述的装置,其特征在于,将第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于所述第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于所述第二媒体信息选定被叫用户使用的第二媒体编码方式时,所述处理单元具体用于:
若在接收被叫用户返回的第二媒体类型信息的同时,接收到被叫用户返回的200OK或ACK,则判断补偿前的第一媒体类型信息与第二媒体类型信息不存在交集时,在主叫用户携带的补偿前的第一媒体类型信息中选取出第一媒体编码方式,在被叫用户携带的第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存;
若在接收被叫用户返回的第二媒体类型信息的同时,未接收到被叫用户返回的200OK或ACK,则将补偿前的第一媒体类型信息发送给主叫用户,并缓存第二媒体类型信息,以及在接收到主叫用户返回的第三媒体类型信息时,从第三媒体类型信息中选取出第一媒体编码方式,以及从第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存,其中,第三媒体类型信息是补偿前的第一媒体类型信息的子集。
6.如权利要求4或5所述的装置,其特征在于,所述装置为主叫用户侧的会话边界控制网元SBC,或者,为被叫用户侧的SBC。

说明书全文

一种媒体编码方式转换的方法及装置

技术领域

[0001] 本发明涉及数据通信技术领域,特别涉及一种媒体编码方式转换的方法和装置。

背景技术

[0002] 模拟信号数字化(Voice over Internet Protocol,VoIP)技术实现了在网络上便捷地传送语言、视频和数据业务。置于网络核心交换设备侧的会话边界控制器(Session Border Controller,SBC)用于解决在部署VoIP业务时存在的安全、异质网络互联、网络地址转换(Network Address Translation,NAT)穿越和服务质量(QOS)等问题,即SBC通过在网络边界处对基于会话初始协议(Session Initiation Protocol,SIP)协议的会话进行一定的控制。
[0003] 目前的SBC可以部署在不同的IP多媒体子系统(IP Multimedia Subsystem,IMS)网络之间,也可以为用户连接IMS网络提供接入服务。
[0004] SBC在为用户服务时,可以看成用户到达IMS网络的接触点。现有技术中,SBC由信令网关控制器(Signaling Gate Controller,SGC)和媒体代理(Media Proxy,MP)两部分组成,如图1所示。SGC主要对信令进行转发和对媒体进行建立和释放,MP主要对媒体进行转发。基本的呼叫流程如图2所示,图中分别标明了信令和媒体的流程。
[0005] SBC对用户相关的SIP信令和媒体包进行转发,当遇到双方用户媒体编码方式不一致时,被叫用户设备(User Equipment,UE)直接返回SIP消息为488(表示不可接受),即媒体格式协商失败,会话则无法建立,可参阅图3。
[0006] 步骤301:被叫SBC接收主叫UE发起携带会话描述协议(Session Description Protocol,SDP)1的邀请(INVITE)呼叫。
[0007] 在此过程中,被叫SBC将IP地址进行目的地址到源地址的转换并重写新的目的地址,并为被叫UE分配新的端口。
[0008] 步骤302:地址转换后,被叫SBC向被叫UE发送携带SDP2的INVITE呼叫。
[0009] 步骤303:被叫SBC接收被叫UE返回的488消息,表示媒体格式协商失败。
[0010] 在此过程中,被叫SBC再次进行源地址及目的地址的转换,并释放已分配的端口。
[0011] 步骤304:被叫SBC将488消息反馈给主叫UE,通知主叫UE会话建立失败。
[0012] 通过上述流程可以看出,目前的SBC并不具备协助媒体转换的能,这样,在多媒体会话过程中增大了会话建立失败的机率,导致整个系统的功能停滞,无法为日益丰富的多媒体终端提供理想的服务。

发明内容

[0013] 本发明实施例提供一种媒体编码方式转换的方法及装置,用以提高会话建立成功率,从而提升系统服务性能。
[0014] 本发明实施例提供的具体技术方案如下:
[0015] 一种媒体编码方式转换的方法,包括:
[0016] SBC第一次接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式;
[0017] SBC对媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户;
[0018] SBC接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息是被叫用户基于补偿后的第一媒体类型信息选取的自身支持的媒体编码方式;SBC在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。
[0019] 这样,当遇到双方用户媒体编码方式不一致时,SBC可以协助媒体转换,避免因媒体格式协商失败而会话无法建立的问题,提高会话建立成功率,从而提升系统服务性能。
[0020] 较佳的,SBC对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿,包括:
[0021] 按照SBC能够支持并识别的媒体编码方式对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿,其中,补偿的媒体编码方式对应的媒体类型要和原有的媒体编码方式的媒体类型保持一致,且补偿的媒体编码方式和原有的媒体编码方式能够相互转换。
[0022] 较佳的,SBC将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于所述补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于所述第二媒体信息选定被叫用户使用的第二媒体编码方式,包括:
[0023] 若SBC在接收被叫用户返回的第二媒体类型信息的同时,接收到被叫用户返回的200OK或ACK,则SBC判断补偿前的第一媒体类型信息与第二媒体类型信息不存在交集时,在主叫用户携带的补偿前的第一媒体类型信息中选取出第一媒体编码方式,在被叫用户携带的第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存;
[0024] 若SBC在接收被叫用户返回的第二媒体类型信息的同时,未接收到被叫用户返回的200OK或ACK,则SBC将补偿前的第一媒体类型信息发送给主叫用户,并缓存第二媒体类型信息,以及在接收到主叫用户返回的第三媒体类型信息时,从第三媒体类型信息中选取出第一媒体编码方式,以及从第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存,其中,第三媒体类型信息是补偿前的第一媒体类型信息的子集。
[0025] 较佳的,SBC在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换,包括:
[0026] SBC为主叫用户和被叫用户配置相应的会话端口,调用选取的分别支持主叫用户和被叫用户的媒体编码方式配对信息,将主叫用户发送的媒体数据包的媒体编码方式由第一媒体编码方式转换为第二媒体编码方式后,发送给被叫用户,以及将被叫用户发送的媒体数据包由第二媒体编码方式转换为第一媒体编码方式后发送给主叫用户。
[0027] 较佳的,所述SBC为主叫用户侧的SBC,或者,为被叫用户侧的SBC。
[0028] 一种媒体编码方式转换的装置,包括:
[0029] 第一接收单元,用于第一次接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式;
[0030] 补偿单元,用于对媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户;
[0031] 第二接收单元,用于接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息是被叫用户基于补偿后的第一媒体类型信息选取的自身支持的媒体编码方式;
[0032] 处理单元,用于将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于所述补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于所述第二媒体信息选定被叫用户使用的第二媒体编码方式;
[0033] 转换单元,用于在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。
[0034] 这样,当遇到双方用户媒体编码方式不一致时,本装置可以协助媒体转换,避免因媒体格式协商失败而会话无法建立的问题,提高会话建立成功率,从而提升系统服务性能。
[0035] 较佳的,对所述媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿时,所述补偿单元具体用于:
[0036] 按照本装置能够支持并识别的媒体编码方式对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿,其中,补偿的媒体编码方式对应的媒体类型要和原有的媒体编码方式的媒体类型保持一致,且补偿的媒体编码方式和原有的媒体编码方式能够相互转换。
[0037] 较佳的,将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于所述第二媒体信息选定被叫用户使用的第二媒体编码方式时,所述处理单元具体用于:
[0038] 若在接收被叫用户返回的第二媒体类型信息的同时,接收到被叫用户返回的200OK或ACK,则判断补偿前的第一媒体类型信息与第二媒体类型信息不存在交集时,在主叫用户携带的补偿前的第一媒体类型信息中选取出第一媒体编码方式,在被叫用户携带的第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存;
[0039] 若在接收被叫用户返回的第二媒体类型信息的同时,未接收到被叫用户返回的200OK或ACK,则将补偿前的第一媒体类型信息发送给主叫用户,并缓存第二媒体类型信息,以及在接收到主叫用户返回的第三媒体类型信息时,从第三媒体类型信息中选取出第一媒体编码方式,以及从第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存,其中,第三媒体类型信息是补偿前的第一媒体类型信息的子集。
[0040] 较佳的,在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换,所述转换单元具体用于:
[0041] 为主叫用户和被叫用户配置相应的会话端口,调用选取的分别支持主叫用户和被叫用户的媒体编码方式配对信息,将主叫用户发送的媒体数据包的媒体编码方式由第一媒体编码方式转换第二媒体编码方式后,发送给被叫用户,以及将被叫用户发送的媒体数据包由第二媒体编码方式转换为第一媒体编码方式后并发送给主叫用户。
[0042] 较佳的,所述装置为主叫用户侧的会话边界控制网元SBC,或者,为被叫用户侧的SBC。
[0043] 一种媒体编码方式转换的装置,包括:
[0044] SGC,用于第一次接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式,对媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户,以及接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息是被叫用户基于所述补偿后的第一媒体类型信息选取的自身支持的媒体编码方式,并将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式;
[0045] MP,用于在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。
[0046] 这样,当遇到双方用户媒体编码方式不一致时,本装置可以协助媒体转换,避免因媒体格式协商失败而会话无法建立的问题,提高会话建立成功率,从而提升系统服务性能。
[0047] 较佳的,对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿时,所述SGC具体用于:
[0048] 按照SBC能够支持并识别的媒体编码方式对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿,其中,补偿的媒体编码方式对应的媒体类型要和原有的媒体编码方式的媒体类型保持一致,且补偿的媒体编码方式和原有的媒体编码方式能够相互转换。
[0049] 较佳的,将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式时,所述处理单元具体用于:
[0050] 若在接收被叫用户返回的第二媒体类型信息的同时,接收到被叫用户返回的200OK或ACK,则判断补偿前的第一媒体类型信息与第二媒体类型信息不存在交集时,在主叫用户携带的补偿前的第一媒体类型信息中选取出第一媒体编码方式,在被叫用户携带的第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存;
[0051] 若在接收被叫用户返回的第二媒体类型信息的同时,未接收到被叫用户返回的200OK或ACK,则将补偿前的第一媒体类型信息发送给主叫用户,并缓存第二媒体类型信息,以及在接收到主叫用户返回的第三媒体类型信息时,从第三媒体类型信息中选取出第一媒体编码方式,以及从第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存,其中,第三媒体类型信息是补偿前的第一媒体类型信息的子集。
[0052] 较佳的,在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换,所述MP具体用于:
[0053] 为主叫用户和被叫用户配置相应的会话端口,调用选取的分别支持主叫用户和被叫用户的媒体编码方式配对信息,将主叫用户发送的媒体数据包的媒体编码方式由第一媒体编码方式转换为第二媒体编码方式后,发送给被叫用户,以及将被叫用户发送的媒体数据包由第二媒体编码方式转换为第一媒体编码方式后发送给主叫用户。
[0054] 较佳的,所述SBC为主叫用户侧的SBC,或者,为被叫用户侧的SBC。附图说明
[0055] 图1为现有技术下的SBC组成部分结构图;
[0056] 图2为现有技术下呼叫业务示意图;
[0057] 图3为现有技术下SBC处理呼叫业务流程图
[0058] 图4为本发明实施例中SBC进行媒体编码方式转换流程图;
[0059] 图5为本发明实施例中SBC基于一次协商完成媒体编码方式转换流程图;
[0060] 图6为本发明实施例中SBC基于一次协商完成媒体编码方式转换示意图;
[0061] 图7为本发明实施例中SBC基于多次协商完成媒体编码方式转换流程图;
[0062] 图8为本发明实施例中SBC基于多次协商完成媒体编码方式转换示意图;
[0063] 图9为本发明实施例中SBC中的MP模的操作示意图;
[0064] 图10和图11为本发明实施例中主叫侧SBC的操作示意图;
[0065] 图12和图13为本发明实施例中被叫侧SBC的操作示意图;
[0066] 图14和图15为本发明实施例中SBC结构示意图。

具体实施方式

[0067] 本发明实施例设计了一种可以参与媒体协商的SBC,通过会话描述协议(Session Description Protocol,SDP)协商的方式,在主叫用户设备和被叫用户设备的媒体编码类型不同的情况下实现格式的转换,从而在主叫用户设备和被叫用户设备之间成功建立会话连接,有效避免了由此情况导致的会话建立失败的问题,从而达到提升用户之间互联互通能力的目的。
[0068] 下面结合说明书附图对本发明优选的实施方式进行详细说明。
[0069] 参阅图4所示,本发明实施例中,在进行媒体编码方式转换时,SBC执行如下操作:
[0070] 步骤401:SBC第一次接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式。
[0071] 步骤402:SBC对媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户。
[0072] 步骤403:SBC接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息是被叫用户基于补偿后的第一媒体类型信息选取的自身支持的媒体编码方式。
[0073] 具体的,第二媒体类型信息是补偿后的第一媒体信息的子集。
[0074] 步骤404:SBC将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式。
[0075] 具体的,SBC之所以将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,是因为,若两者存在交集,则说明第二媒体类型信息中包含的部分/全部元素是从补偿前的第一媒体类型信息中选取的,即主叫用户和被叫用户同时支持交集中的元素表征的媒体编码方式,此时可以不进行媒体编码方式转换;而若两者不存在交集,则说明第二媒体类型信息中包含的全部元素是从补偿部分的第二媒体类型信息中选取的,即主叫用户和被叫用户分别支持不同的媒体编码方式,此时,则必须进行媒体编码方式转换。
[0076] 步骤405:SBC在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。
[0077] 下面采用几个具体的应用场景对上述实施例做出进一步说明。
[0078] 第一种场景下,参阅图5所示,主叫用户(以下称为UE-A)、SBC和被叫用户(以下称为UE-B)之间只进行一次SDP协商,其具体流程如下:
[0079] 步骤501:SBC接收UE-A发起的SDP协商请求,该SDP协商请求中携带有媒体格式集合A1,A1中的元素用于指示UE-A支持的媒体编码方式,SBC记录下A1。
[0080] 步骤502:SBC将IP地址进行目的地址到源地址的转换并重写新的目的地址,并为UE-B分配新的端口。
[0081] 例如,如表1所示,SBC申请并维护一个数据转发表,其中包括UE-A的IP地址和端口PORT,记为(IP1、PORT1)、SBC为UE-A分配的接收IP地址和端口PORT,记为(IPint1、PORTint1)、SBC发送数据时使用的IP地址和端口PORT,记为(IPext2、PORText2),以及UE-B的IP地址和端口PORT,记为(IP2、PORT2)。其中,SBC将UE-A携带SDP中的IP1和POTR1修改为IPext2和PORText2。
[0082] 表1
[0083]IP1、PORT1
IPint1、PORTint1
IPext2、PORText2
IP2、PORT2
[0084] 步骤503:SBC对A1中的媒体编码方式进行补偿,补偿的媒体类型集合(以下称为ΔA)放在A1之后,则新的媒体格式集合为(A1+ΔA)。
[0085] 具体的,在进行媒体编码方式补偿时,需要遵循以下原则:
[0086] 首先,必须是SBC能够支持并识别的媒体编码方式,即,必须是SBC中的MP能够识别处理的媒体编码方式。
[0087] 其次,补偿的媒体编码方式对应的媒体类型要和原有的媒体编码方式的媒体类型保持一致。例如,对应于原有的视频编码格式,仅能补偿新的视频编码格式,同理,对应于原有的音频编码格式,仅能补偿新的音频编码格式。
[0088] 最后,补偿的媒体编码方式和原有的媒体编码方式能够相互转换。
[0089] 在实际实现过程中,SBC需要在SDP协商请求中的m行(媒体行)描述UE-A所支持的媒体类型等信息。在MP支持的媒体类型中,找出和原媒体类型一致且和原有媒体编码方式可以相互转换的媒体编码方式,补偿在对应的m行。例如:原来的m行信息为,代表支持音频类型以及支持的媒体编码方式为{0,4,8}。对此行进行补偿时,应在MP支持的媒体类型中,找出支持音频类型的以及和媒体编码方式{048}能够相互转换的媒体编码方式(如{3,5,9,18})补偿在m行之后,则补偿后的m行信息为,其中,所有补偿的媒体编码方式的优先级别应低于原有的媒体编码方式。
[0090] SDP协商请求中的a行(媒体的属性行)描述了属性的名称及属性值。对于SDP中a行的补偿动作,需要遵从以下规定:SBC在原有的a行之后增加相应的a行,对于所有补偿的a行的排序,可以遵从SBC配置的自由度进行选择,也可以随机选择;补偿的a行的媒体编码方式必须与原媒体编码方式能够相互转换,例如与a格式能够进行媒体编码方式转换的格式有{a1,a2,a3},与b格式能够进行媒体编码方式转换的格式有{b1,b2,b3}等,具体的如711和729、AMR能够相互转换,H263和H264能够相互转换等。
[0091] 步骤504:SBC将补偿后的携带媒体格式集合(A1+ΔA)的SDP协商请求发送给UE-B,请求UE-B进行SDP协商。
[0092] 步骤505:SBC接收UE-B返回的SDP响应,该SDP响应中携带的媒体格式集合为B1,其中B1是(A1+ΔA)的子集,B1中的元素用于指示UE-B支持的媒体编码方式,SBC记录下B1。
[0093] 步骤506:SBC判定接收的SDP响应包含有200OK或者ACK时,确定SDP协商完成。
[0094] 实际应用中,UE-B可以采用SIP消息进行SDP响应,SIP消息携带有多个字段,如果SBC判定SIP消息中携带有200OK字段或ACK字段时,可以确定SDP协商已完成,需要尽快为UE-A和UE-B选定相应的媒体编码方式。
[0095] 步骤507:SBC确定B1∩A1为0时,分别针对UE-A和UE-B选定媒体编码方式。
[0096] 具体的,SBC将A1和B1两种媒体格式集合进行比较,判断B1∩A1是否为零。若不为零,即存在交集,则B1中的部分或全部元素选自于A1,SBC将交集记录下来并将交集转发给UE-A;若为零,即不存在交集,则B1中的元素选自于ΔA,SBC需要在A1集合中选取一个媒体编码方式a,并在B1中选取一个媒体编码方式b,将{a,b}的媒体编码方式配对信息发送给本地MP,通知MP后续流程中按照该配对信息进行转码操作。
[0097] 步骤508:SBC再次进行源地址与目的地址的转换,并释放已分配的端口。
[0098] 步骤509:SBC向UE-A发送携带有B2的SDP响应,B2中的元素用于指示SBC为UE-A最终选定的媒体编码方式a,如步骤507中所述。
[0099] 具体的,SBC通过B2将选定的元素a通知UE-A。
[0100] 至此,媒体协商流程完成,UE-A与UE-B可以开始进行会话,此时,SBC会在后续流程中针对UE-A和UE-B配置相应的会话端口,并调用选取的媒体编码方式配对信息{a,b},针对UE-A和UE-B之间交互的数据流进行转码操作,将UE-A发送的数据流的媒体编码方式由a修改为b后发往UE-B,以及将UE-B发送的数据流的媒体编码方式由b修改为a后发往UE-A。
[0101] 上述方法的简易示意图如图6所示。
[0102] 步骤601:SBC接收UE-A发起的携带有媒体格式集合A1的SDP协商请求并记录下A1。
[0103] 步骤602:SBC对A1中的媒体编码方式进行补偿,并将补偿后的集合记为SDP(A1+ΔA),并把此集合发给UE-B。
[0104] 步骤603:SBC接收UE-B返回的媒体格式集合B1,并记录下B1。
[0105] 步骤604:SBC将A1集合与B1集合进行比较,确定两者不存在交集时,在两集合中分别选取一个元素,便于后续流程中进行媒体类型转换操作。
[0106] 第二种场景下,参阅图7所示,UE-A、SBC和UE-B之间进行多次SDP协商,其具体流程如下:
[0107] 步骤701:SBC接收UE-A发起的SDP协商请求,该SDP协商请求中携带有媒体格式集合A1,A1中的元素用于指示UE-A支持的媒体编码方式,SBC记录下A1。
[0108] 步骤702:SBC将IP地址进行目的地址到源地址的转换并重写新的目的地址,并为UE-B分配新的端口。
[0109] 步骤703:SBC第一次接收到UE-A发起的SDP协商请求,需要对A1中的媒体编码方式进行补偿,补偿的媒体编码方式集合(以下称为ΔA)放在A1之后,则补偿后的新的媒体格式集合为(A1+ΔA)。
[0110] 其中,在进行媒体编码方式补偿时,需要遵循的原则与步骤502相同。
[0111] 步骤704:SBC将补偿后的携带媒体格式集合(A1+ΔA)的SDP协商请求发送给UE-B,请求UE-B进行SDP协商。
[0112] 步骤705:SBC接收UE-B返回的SDP响应,该SDP响应中携带的媒体格式集合为B1,其中B1是(A1+ΔA)的子集,B1中的元素用于指示UE-B支持的媒体编码方式,SBC记录下B1。
[0113] 步骤706:SBC判断携带SDP响应的SIP消息包含183,表示SDP协商未完成,后续还会进行SDP协商。
[0114] 步骤707:SBC确定B1∩A1为0时,将A1中的元素转发给UE-A,并缓存B1。
[0115] 具体的,SBC将A1和B1两种媒体格式集合进行比较,判断B1∩A1是否为零。若不为零,即存在交集,则B1中的部分或全部元素选自于A1,SBC将交集记录下来并转发给UE-A;若为零,即不存在交集,则B1中的元素选自于ΔA,SBC将集合A1中的媒体编码方式保存到集合B2中,并且缓存B1。
[0116] SBC将{0,0}的媒体编码方式配对信息发送给本地MP,通知MP后续流程中不启动转码程序。
[0117] 步骤708:SBC再次进行源地址与目的地址的转换,并释放已分配的端口。
[0118] 步骤709:SBC向UE-A发送携带有B2的SDP响应,B2中的元素用于指示SBC为UE-A选定的媒体编码方式。
[0119] 具体的,SBC将A1中的元素发送给UE-A。
[0120] 步骤710:SBC接收UE-A发起的PRACK消息,该消息中携带有媒体格式集合C1,,该集合中的元素用于指示UE-A支持的媒体编码方式。
[0121] 步骤711:SBC再次将IP地址进行目的地址到源地址的转换并重写新的目的地址,并为UE-B分配新的端口。
[0122] 步骤712:SBC从缓存的B1中选择一个元素d,该元素为SBC为UE-B选定的媒体编码方式,以及从C1中选择一个元素c,该元素c为SBC为UE-A选定的媒体编码方式。
[0123] SBC将媒体编码方式配对信息{c,d}的媒体编码方式配对信息发送给本地MP,通知MP在后续流程中按照该配对信息对媒体数据包进行媒体编码方式转换。
[0124] 步骤713:SBC向UE-B发送携带C2的SDP响应,C2中包含有媒体编码方式d。
[0125] 步骤714:SBC接收UE-B返回的SDP响应,判定该响应中包含有200OK,确定SDP协商完成,同时该SDP响应中携带的D1中包含有媒体编码方式d。
[0126] 步骤715:SBC确定SDP协商完成之后,将C1中元素c保存于集合D2中,元素c为SBC为UE-A选定的媒体编码方式。
[0127] 步骤716:SBC再次进行源地址与目的地址的转换。
[0128] 步骤717:SBC向UE-A发送携带有D2的SDP响应,D2中的元素用于指示SBC为UE-A最终选定的媒体编码方式c。
[0129] 具体的,D2中只包含有唯一元素c,SBC通过D2将选定的元素c通知UE-A。
[0130] 至此,媒体协商流程完成,UE-A与UE-B可以开始进行会话,此时,SBC会在后续流程中针对UE-A和UE-B配置相应的会话端口,并调用选取的媒体编码方式配对信息{c,d},针对UE-A和UE-B之间交互的媒体数据包进行转码操作,将UE-A发送的媒体数据包的媒体编码方式由c修改为d后发往UE-B,以及将UE-B发送的媒体数据包的媒体编码方式由d修改为c后发往UE-A。
[0131] 上述方法的简易示意图如图8所示。
[0132] 步骤801:SBC接收UE-A发起的携带有媒体格式集合A1的SDP协商请求并记录下A1。
[0133] 步骤802:SBC对A1中的媒体编码方式进行补偿,并将补偿后的集合记为SDP(A1+ΔA),并把此集合发给UE-B。
[0134] 步骤803:SBC接收UE-B返回的媒体格式集合B1,并记录下B1。判定携带SDP相应的SIP消息,确定SDP协商未完成,需要多次协商。
[0135] 步骤804:SBC将A1与B1进行比较,确定两者不存在交集时,将A1中的媒体编码方式保存于B2中,并将B2发送给UE-A。
[0136] 步骤805:SBC接收UE-A发起的PRACK消息,该消息中携带有媒体格式集合C1,,该集合中的元素用于指示UE-A支持的媒体编码方式。
[0137] 步骤806:SBC从缓存的B1集合中选择一个元素d,该元素为SBC为UE-B选定的媒体编码方式,将元素d保存于D1中。从C1中选择一种媒体编码方式c,形成媒体编码方式配对信息{c,d},并将该媒体编码格式配对信息发送给MP,同时,SBC将包含{d}的SDP响应发送给UE-B。
[0138] 步骤807:SBC接收UE-B返回的SDP响应,该SDP响应携带的D1中包含有媒体编码方式d。
[0139] 步骤808:SBC向UE-A发送携带有D2的SDP响应,D2中包含唯一的元素c,该元素用于指示SBC为UE-A最终选定的媒体编码方式。
[0140] 对于SBC中的MP模块,在媒体协商流程完成之后,MP对收到的媒体流,要先经过媒体格式转换单元进行媒体格式的转换,再通过媒体转发单元进行媒体数据包的转发。具体过程可参考附图9。
[0141] 本发明实施例中的SBC位于用户和IMS网络之间,根据位置的不同可分为主叫侧SBC和被叫侧SBC,其中,在主叫侧和被叫侧,SBC处理动作是一致的。
[0142] 主叫侧SBC可以为主叫UE增强媒体能力,如图10所示。在主叫侧SBC无法预知主叫终端支持的媒体编码方式的情况下,如果主叫UE支持的媒体编码方式比较少,则主叫侧SBC可以帮助终端接通其他媒体编码方式的终端。
[0143] 步骤1001:主叫侧SBC接收主叫UE发送的携带1的SDP响应。
[0144] 步骤1002:主叫侧SBC修改1中的内容,并发送给IMS网络。
[0145] 步骤1003:主叫侧SBC接收IMS网络发送的被叫UE带给主叫UE的携带2的SDP响应。
[0146] 步骤1004:主叫侧SBC修改2中的内容,并返回给UE-A。
[0147] 具体的操作流程如图11所示。
[0148] 被叫侧SBC也可以为被叫UE增强媒体能力,如图12所示。从IMS网络侧呼叫被叫终端UE的情况下,如果被叫UE支持的媒体编码方式比较少,则被叫侧SBC可以帮助终端修改其媒体编码方式,提升被叫UE的媒体处理能力。
[0149] 步骤1201:被叫侧SBC接收IMS网络发送的SDP响应。
[0150] 步骤1202:被叫侧SBC修改SDP中的内容,并发送给被叫UE。
[0151] 步骤1203:被叫侧SBC接收被叫UE发送的携带自己内容2*的SDP响应。
[0152] 步骤1204:被叫侧SBC修改2*中的内容,并发送给IMS网络。
[0153] 具体的操作流程如图13所示。
[0154] 基于上述实施例,参阅图14所示,本发明实施例中,SBC包括第一接收单元1401、补偿单元1402、第二接收单元1403、处理单元1404和转换单元1405。
[0155] 第一接收单元1401,用于第一次接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式;
[0156] 补偿单元1402,用于对媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户;
[0157] 第二接收单元1403,用于接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息被叫用户基于补偿后的第一媒体类型信息选取的自身支持的媒体编码方式;
[0158] 处理单元1404,用于将第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式;
[0159] 转换单元1405,用于在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。
[0160] 对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿时,补偿单元1402具体用于:
[0161] 按照本装置能够支持并识别的媒体编码方式对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿,其中,补偿的媒体编码方式对应的媒体类型要和原有的媒体编码方式的媒体类型保持一致,且补偿的媒体编码方式和原有的媒体编码方式能够相互转换。
[0162] 将第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式时,处理单元1404具体用于:
[0163] 若在接收被叫用户返回的第二媒体类型信息的同时,接收到被叫用户返回的200OK或ACK,则判断补偿前的第一媒体类型信息与第二媒体类型信息不存在交集时,在主叫用户携带的补偿前的第一媒体类型信息中选取出第一媒体编码方式,在被叫用户携带的第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存;
[0164] 若在接收被叫用户返回的第二媒体类型信息的同时,未接收到被叫用户返回的200OK或ACK,则将补偿前的第一媒体类型信息发送给主叫用户,并缓存第二媒体类型信息,以及在接收到主叫用户返回的第三媒体类型信息时,从第三媒体类型信息中选取出第一媒体编码方式,以及从第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存,其中,第三媒体类型信息是补偿前的第一媒体类型信息的子集。
[0165] 较佳的,在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换,转换单元1405具体用于:
[0166] 为主叫用户和被叫用户配置相应的会话端口,调用选取的分别支持主叫用户和被叫用户的媒体编码方式配对信息,将主叫用户发送的媒体数据包的媒体编码方式由第一媒体编码方式转换第二媒体编码方式后,发送给被叫用户,以及将被叫用户发送的媒体数据包由第二媒体编码方式转换为第一媒体编码方式后并发送给主叫用户。
[0167] 较佳的,本装置为主叫用户侧的SBC,或者,为被叫用户侧的SBC。
[0168] 基于上述实施例,参阅图15所示,本发明实施例中,SBC包括SGC1501和MP1502,其中。
[0169] SGC1501,用于第一次接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,该第一媒体类型信息用于指示主叫用户支持的媒体编码方式,对媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户,以及接收被叫用户返回的第二媒体类型信息,该第二媒体类型信息是被叫用户基于所述补偿后的第一媒体类型信息选取的自身支持的媒体编码方式,并将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式;
[0170] MP1502,用于在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。
[0171] 较佳的,对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿时,SGC1501具体用于:
[0172] 按照SBC能够支持并识别的媒体编码方式对媒体协商请求中携带的第一媒体类型信息进行媒体编码方式的补偿,其中,补偿的媒体编码方式对应的媒体类型要和原有的媒体编码方式的媒体类型保持一致,且补偿的媒体编码方式和原有的媒体编码方式能够相互转换。
[0173] 较佳的,将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式时,处理单元具体用于:
[0174] 若在接收被叫用户返回的第二媒体类型信息的同时,接收到被叫用户返回的200OK或ACK,则判断补偿前的第一媒体类型信息与第二媒体类型信息不存在交集时,在主叫用户携带的补偿前的第一媒体类型信息中选取出第一媒体编码方式,在被叫用户携带的第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存;
[0175] 若在接收被叫用户返回的第二媒体类型信息的同时,未接收到被叫用户返回的200OK或ACK,则将补偿前的第一媒体类型信息发送给主叫用户,并缓存第二媒体类型信息,以及在接收到主叫用户返回的第三媒体类型信息时,从第三媒体类型信息中选取出第一媒体编码方式,以及从第二媒体类型信息中选取出第二媒体编码方式,并将第一媒体编码方式和第二媒体编码方式的配对信息保存,其中,第三媒体类型信息是补偿前的第一媒体类型信息的子集。
[0176] 较佳的,在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换,MP1502具体用于:
[0177] 为主叫用户和被叫用户配置相应的会话端口,调用选取的分别支持主叫用户和被叫用户的媒体编码方式配对信息,将主叫用户发送的媒体数据包的媒体编码方式由第一媒体编码方式转换为第二媒体编码方式后,发送给被叫用户,以及将被叫用户发送的媒体数据包由第二媒体编码方式转换为第一媒体编码方式后发送给主叫用户。
[0178] 较佳的,SBC为主叫用户侧的SBC,或者,为被叫用户侧的SBC。
[0179] 综上所述,本发明实施例中,SBC接收主叫用户发送的携带有第一媒体类型信息的媒体协商请求,对媒体协商请求中携带的第一媒体类型信息进行媒体类型补偿,并将补偿后的第一媒体类型信息发给被叫用户,以及接收被叫用户返回的第二媒体类型信息,并将补偿前的第一媒体类型信息与第二媒体类型信息进行比较,确定两者不存在交集时,基于补偿前的第一媒体类型信息选定主叫用户使用的第一媒体编码方式,以及基于第二媒体信息选定被叫用户使用的第二媒体编码方式,在主叫用户和被叫用户之间基于第一媒体编码方式和第二媒体编码方式对媒体数据流进行媒体编码方式转换。这样,当遇到双方用户媒体编码方式不一致时,SBC可以协助媒体转换,避免因媒体格式协商失败而会话无法建立的问题,提高会话建立成功率,从而提升系统服务性能。
[0180] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0181] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0182] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0183] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0184] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0185] 显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈