CN102118292A - 互联网协议多媒体子系统网络、数据传输方法和装置 - Google Patents

互联网协议多媒体子系统网络、数据传输方法和装置 Download PDF

Info

Publication number
CN102118292A
CN102118292A CN2011100476705A CN201110047670A CN102118292A CN 102118292 A CN102118292 A CN 102118292A CN 2011100476705 A CN2011100476705 A CN 2011100476705A CN 201110047670 A CN201110047670 A CN 201110047670A CN 102118292 A CN102118292 A CN 102118292A
Authority
CN
China
Prior art keywords
tunnel
message
module
rtp
ssl
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
Application number
CN2011100476705A
Other languages
English (en)
Other versions
CN102118292B (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.)
Chengdu Huawei Technology Co Ltd
Original Assignee
Huawei Symantec Technologies 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 Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN2011100476705A priority Critical patent/CN102118292B/zh
Publication of CN102118292A publication Critical patent/CN102118292A/zh
Priority to PCT/CN2012/071722 priority patent/WO2012116628A2/zh
Priority to EP12752434.6A priority patent/EP2584744B1/en
Priority to US13/786,230 priority patent/US9338189B2/en
Application granted granted Critical
Publication of CN102118292B publication Critical patent/CN102118292B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1016IP multimedia subsystem [IMS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling

Abstract

本发明实施例提供一种互联网协议多媒体子系统网络、数据传输方法和装置,用于通信技术领域。其中,用于IMS的数据传输方法包括:对RTP报文进行隧道封装,得到隧道报文,其中,隧道报文中包括记录单元,每个记录单元中封装有多个RTP报文;将隧道报文通过与对端之间的隧道发送到对端,其中,对端为STG或者IMS终端。本发明实施例减少了隧道封装带来的附加带宽,进而降低了单包的带宽,避免了现有技术由于单包的附加带宽较大,对用户接入的带宽提出了更高的要求,在一定程度上降低了用户的使用体验和业务接入能力的问题。

Description

互联网协议多媒体子系统网络、数据传输方法和装置
技术领域
本发明涉及通信技术领域,尤其涉及一种互联网协议多媒体子系统网络、数据传输方法和装置。
背景技术
IMS(Internet Protocol Media Subsystem,IP(Internet Protocol,互联网协议)多媒体子系统)是一种全新的多媒体业务形式,已被公认为是下一代网络(Next Generation Network,NGN)的核心技术。IMS基于SIP(Session InitiationProtocol,会话初始化协议)协议支持各种固定接入和移动接入,基于ALL-IP实现移动与固网融合,是实现语音、数据和视频等多媒体全业务融合的重要方式。IMS支持丰富的接入终端和接入网络,IMS终端与IMS核心网之间可能会历经非常复杂的接入路径,中间网元如防火墙(Firewall,FW)、网络地址转换(Network Address Translation,NAT)设备、应用代理(Proxy)服务器和业务监控网关等设备会对承载IMS业务的报文(SIP/RTP(Real-time TransportProtocol,实时传输协议)报文)进行处理和控制,可能导致IMS终端无法正常接入或通信。
目前,主要采用基于隧道封装的机制,实现IMS业务的安全接入。如图1所示,在IMS核心网的入口处部署STG(Security Tunnel Gateway,安全隧道网关),在IMS终端集成SSL隧道客户端。IMS终端启动时,通过SSL隧道客户端与STG建立SSL隧道,将SIP/RTP报文按照图2所示的过程进行SSL隧道封装后,将封装结果(可称为SSL隧道报文)通过SSL隧道传输到STG。上述SSL隧道报文通过网络发送到STG后,STG按照图2的逆过程(即隧道解封装)从SSL隧道报文中还原出SIP/RTP报文,并转发给媒体服务器。反过来,媒体服务器返回的报文也经过同样的过程发送给IMS终端,由IMS终端进行还原。从而,通过SSL隧道封装将IMS业务的上万个端口统一聚合到一个标准的HTTPS(443)端口,轻松穿越FW、NAT及Proxy等中间网元设备,并支持SIP/RTP报文的加密,实现通信数据的端口聚合、数据加密、信息完整性保护等功能。SIP/RTP报文除了可基于SSL隧道封装外,也可基于HTTP(Hyper Text Transfer Protocol,超文本传输协议)隧道或UDP(User Datagram Protocol,用户数据报协议)隧道封装。
具体地,如图2所示,对RTP报文进行SSL隧道封装的过程如下:
步骤S202:以20ms的采样周期(即每秒50个的采样速率)对IMS业务的媒体数据(如语音、视频等数据)进行采集、编码;
步骤S204:将媒体数据通过虚拟协议栈封装为RTP报文;
步骤S206:在RTP报文的头部加入隧道协议头(Encapsulate Header,图2中缩写为Enc Hdr,还可缩写为Enc Header);
步骤S208:添加摘要信息和分组长度补齐信息(摘要信息和分组长度补齐信息在图2中用HMAC-Tail表示),并对整个报文进行SSL加密,然后,在加密后的报文的头部增加SSL协议头(SSL Header,图2中缩写为SSL Hdr),形成一个SSL Record(SSL记录或SSL记录单元);
步骤S210:为了在网络中传输,最终还需要将SSL Record封装成TCP(Transfer Control Protocol,传输控制协议)报文(即上述的SSL隧道报文),通过网络传输到STG。
在上述的SSL隧道封装过程中,由于每个RTP报文形成一个SSL Record,在每个RTP报文之外增加了大量附加信息,导致最终发送的SSL隧道报文的长度比RTP报文的长度大得多,从而使得单包的带宽急剧增加。
以媒体数据的音频编码格式为G.729为例,RTP报文长度的计算公式是:IP(20)+UDP(8)+RTP(12)+Payload(20)=60个字节,其中,IP表示IP头,UDP表示UDP头,RTP表示RTP头,Payload表示负载(即IMS业务的媒体数据)。从而,在每秒50个报文(即RTP报文的打包时长为20ms)时,计算得到带宽为60*8*(1s/20ms)=24kbps。
经过SSL隧道封装之后,最终发送的SSL隧道报文的长度计算公式是:IP(20)+TCP(20)+SSL Header(5)+Enc Header(16)+RTP报文(60)+HMAC-Tail(28)=149个字节,其中,IP表示IP头,TCP表示TCP头,SSL Header表示SSL协议头,Enc Header表示隧道协议头,HMAC-Tail表示摘要信息(HMAC)和分组长度补齐信息(Tail)的组合。从而,在每秒50个报文时,计算得到带宽为149*8*(1s/20ms)=59.6kbps。
通过比较SSL隧道封装前后的报文长度,可推算出单包的带宽增加了35.6kbps(即附加带宽为35.6kbps),相当于增加了148%的带宽。带宽的急剧增加,对用户接入的带宽提出了更高的要求,在一定程度上降低了用户的使用体验和业务接入能力。
发明内容
本发明实施例提供了一种互联网协议多媒体子系统网络、数据传输方法和装置,可至少解决上述现有技术降低了用户的使用体验和业务接入能力的问题。
一方面,提供了一种数据传输方法,用于IMS,包括:对RTP报文进行隧道封装,得到隧道报文,其中,隧道报文中包括记录单元,每个记录单元中封装有多个RTP报文;将隧道报文通过与对端之间的隧道发送到对端,其中,对端为STG或者IMS终端。
另一方面,提供了一种数据传输装置,用于IMS,包括:封装模块,用于对RTP报文进行隧道封装,得到隧道报文,其中,隧道报文中包括记录单元,每个记录单元中封装有多个RTP报文;发送模块,用于将隧道报文通过与对端之间的隧道发送到对端,其中,对端为STG或者IMS终端。
又一方面,提供了一种IMS网络,包括IMS终端和STG,其中,IMS终端和STG为上述的数据传输装置。
本发明实施例根据RTP报文的小包定时发送的特点,将多个RTP报文形成一个Record,即,多个RTP报文共享一个Record的附加信息,从而通过牺牲较小的实时性,将IMS业务的隧道封装过程中多个RTP报文的附加信息进行整合,减少了隧道封装带来的附加带宽,进而降低了单包的带宽,避免了现有技术由于单包的附加带宽较大,对用户接入的带宽提出了更高的要求,在一定程度上降低了用户的使用体验和业务接入能力的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明一部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据现有技术的IMS系统的架构示意图;
图2是根据现有技术的IMS业务报文的SSL隧道封装过程的示意图;
图3是根据本发明实施例一的IMS系统的数据传输方法的流程图;
图4是根据本发明实施例二的IMS终端的数据传输方法的流程图;
图5是根据本发明实施例二的IMS业务报文的SSL隧道封装过程的示意图;
图6是根据本发明是实例二的SSL Record的帧结构示意图;
图7是根据本发明实施例一的IMS中的数据传输装置的结构示意图;
图8是根据本发明实施例二的IMS中的数据传输装置的结构示意图;
图9是根据本发明实施例三的IMS中的数据传输装置的结构示意图;
图10是根据本发明实施例四的IMS中的数据传输装置的结构示意图;
图11是根据本发明实施例五的IMS中的IMS终端、STG和SIP/媒体服务器的层次结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施方式,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用于解释本发明,并不用于限定本发明。
在如图1所示的IMS系统中,IMS终端与IMS核心网入口处的STG之间建立隧道,例如SSL隧道、HTTP隧道或UDP隧道,两者之间通过该隧道进行数据传输,以实现IMS业务的安全接入和传输。
实施例一
在上述的IMS系统中,根据本发明实施例一的IMS终端或STG的数据传输方法如图3所示,包括以下步骤:
步骤S302,对RTP报文进行隧道封装,得到隧道报文,其中,隧道报文中包括记录单元,每个记录单元中封装有多个RTP报文;
例如,当IMS终端和STG之间建立的是SSL隧道时,IMS终端或STG对RTP报文进行隧道封装,即,将多个RTP报文进行SSL隧道封装,形成一个SSL Record,然后再将SSL Record封装成隧道报文。此处将多个RTP报文进行SSL隧道封装形成一个SSL Record的具体处理过程,将在下面的如图4-5所示的实施例二中进行详细描述,这里不再赘述。
步骤S304,将步骤S302中得到的隧道报文通过与对端之间的隧道发送到对端,其中,对端为STG或者IMS终端。
显然,当执行步骤S302-步骤S304的是IMS终端时,对端即为STG;当执行步骤S302-步骤S304的是STG时,对端即为IMS终端。IMS终端和STG可以通过两者之间建立的隧道进行数据传输。
在IMS业务中,最主要的网络流量来自RTP报文,而RTP报文存在定时发送大量小包的特点,发包时间间隔一般在10ms~100ms之间,每个RTP报文的字节长度一般都不会超过200字节。本发明实施例根据RTP报文的小包定时发送的特点,将多个RTP报文形成一个Record,即,多个RTP报文共享一个Record的附加信息,从而通过牺牲较小的实时性,将隧道封装过程中多个RTP报文的附加信息进行整合,减少了隧道封装带来的附加带宽,进而降低了单包的带宽,避免了现有技术由于单包的附加带宽较大,对用户接入的带宽提出了更高的要求,在一定程度上降低了用户的使用体验和业务接入能力的问题。
在上述实施例一中,隧道可以是SSL隧道,也可以是HTTP隧道或UDP隧道等。
实施例二
以IMS终端向STG发送隧道报文为例,进行说明。如图4所示,根据本发明实施例二的IMS终端的数据传输方法包括以下步骤:
步骤S402,在预先创建的链表中,生成(具体生成步骤同图1中的步骤S202-S204)并缓存RTP报文;
例如,该链表可以为一个FIFO(First In First Out,先入先出)链表,可以预先创建一个FIFO链表,不断地将IMS业务的媒体数据写入该FIFO链表所在的内存空间中,将媒体数据封装成一个个的RTP报文,并缓存生成(即封装得到)的RTP报文。
步骤S404,判断是否达到预定封装时间间隔T,若是,则进入步骤S406,若否,则返回步骤S404;
例如,可以通过设置定时器,该定时器的周期为T。为了确保IMS业务的服务质量,上述预定封装时间间隔T的具体取值应该在语音时延允许的范围内,即T≤200ms,例如,T=100ms。
步骤S406,对链表中的在T内收集到的多个RTP报文(RTP报文的个数
Figure BDA0000048216840000061
进行隧道封装,使得这多个RTP报文形成一个Record,并将该Record封装成最终的隧道报文;
如图5所示,以SSL隧道为例,对T内收集到的多个RTP报文(记为N个)进行SSL隧道封装的过程,包括以下步骤:
步骤S502-S504,同图2中的步骤S202-S204;这两个步骤是将媒体数据生成RTP报文的步骤;
步骤S506,将链表中的N个RTP报文(即在T内收集的N个RTP报文,其中的每个RTP报文均按照图5中的步骤S502-S504生成)取出,并拷贝到一段连续的内存空间中,在这段内存空间的头部加入隧道协议头(Enc Header);
步骤S508:按照一定的摘要算法对加入了Enc Header后的内存空间的内容(或数据)进行摘要计算,得到摘要信息(HMAC),并将该摘要信息附加在内存空间的尾部,然后再在该摘要信息的后面添加分组长度补齐信息(Tail)(摘要信息和分组长度补齐信息在图5中用HMAC-Tail表示),之后,对整个报文进行SSL加密,然后,在加密后的报文的头部添加SSL协议头(SSL Header),形成一个SSL Record;
添加了Tail之后,此时,整个报文的数据长度可以为16bytes、32bytes、64bytes、128bytes等的整数倍,在实际应用中,一般是16bytes的整数倍。
SSL Record的帧结构示意图如图6所示,主要由两大部分构成:头部和加密数据,其中,头部包括内容类型、版本号和数据长度,头部即为图5中的SSLHeader;加密数据包括Enc Header、N个RTP报文(图6中仅示出了2个RTP报文的情况)以及HMAC(摘要信息)和Tail(分组长度补齐信息)。
步骤S510,同图2中的步骤S210。将SSL Record作为内容,在头部添加TCP头和IP头,以完成TCP封装。在该步骤中值得注意的是在对SSL Record进行TCP封装时,为了进一步减少附加带宽,也可以将多个SSL Record封装到一个TCP报文(即SSL隧道报文)中,从而,在最终发送的SSL隧道报文中可以包括一个或多个SSL Record,每个SSL Record中封装有多个RTP报文。
通过上述的过程,可以将原本需要多个Record封装的RTP报文变为只需一个Record封装即可。
同样以媒体数据的音频编码格式为G.729为例,假设T=100ms,RTP报文的打包时长为20ms,此时SSL隧道报文的带宽计算公式变更为:{IP(20)+TCP(20)+SSL Header(5)+Enc Header(16)+RTP报文((100/20)*60)+HMAC-Tail(28)}*8*(1s/100ms)=389*8*10=31.12kbps。与RTP报文的带宽24kbps相比,附加带宽为31.12-24=7.12kbps。
从上述实际数据中可以看出,当预定封装时间间隔T=100ms时,采用本发明实施例后的SSL隧道报文的带宽31.12kbps与现有技术中SSL隧道报文的带宽59.6kbps相比,带宽减少了28.48kbps,附加带宽也从35.6kbps减少到了7.12kbps,减少了5倍。
假设T=200ms,RTP报文的打包时长为20ms,此时SSL隧道报文的带宽计算公式变更为:{IP(20)+TCP(20)+SSL Header(5)+Enc Header(16)+RTP报文((200/20)*60)+HMAC-Tail(28)}*8*(1s/200ms)=689*8*5=27.56kbps。与RTP报文的带宽24kbps相比,附加带宽为27.56-24=3.56kbps。
可以看出,当预定封装时间间隔T=200ms时,采用本发明实施例后的SSL隧道报文的带宽27.56kbps与现有技术中SSL隧道报文的带宽59.6kbps相比,带宽减少了32.04kbps,附加带宽也从35.6kbps减少到了3.56kbps,减少了10倍。
从上述两组实例中可以得出:预定封装时间间隔T越长,最终发送的隧道报文与RTP报文相比的附加带宽减少得越多,从而隧道报文的单包带宽也就越小。对于特定的媒体编码类型,根据本发明实施例的隧道报文与未封装的RTP报文相比的发包特征发生了变化,表现为发包间隔加长了整数倍(发包间隔即为T),报文长度也基本按等比例增加,但是附加带宽却也得到了相同比例的减少,隧道报文的带宽得到了显著的节约。媒体数据的音频编码格式不同,RTP报文的长度会发生变化,但是,不会影响最终的隧道报文的附加带宽的减少。
步骤S408,将得到的隧道报文通过与STG之间的隧道发送到STG。
STG接收到隧道报文之后,就可以按照如图5所示的逆过程对隧道报文进行隧道解封装,还原得到其中的多个RTP报文。
同样,STG向IMS终端发送隧道报文的流程同上述步骤S402-S408,这里不再赘述。此时,IMS终端在接收STG通过隧道发来的隧道报文之后,会对接收的隧道报文进行隧道解封装,得到RTP报文,其中,隧道报文包括记录单元,每个记录单元中封装有多个RTP报文。
此外,当隧道为HTTP隧道时,IMS终端或STG进行HTTP隧道封装的具体处理流程与图4-5类似,只是在步骤S508中添加了分组长度补齐信息后不进行加密,而直接在报文的头部添加HTTP协议头(HTTP Header),形成一个HTTP消息体;当隧道为UDP隧道时,IMS终端或STG进行UDP隧道封装的具体处理流程也与图4-5类似,只是在步骤S508中在加密(加密不一定是SSL加密)后的报文的头部添加UDP协议头(UDP Header),形成一个UDP报文体。
图7是根据本发明实施例一的IMS中的数据传输装置的结构示意图,该数据传输装置可以为IMS终端或STG。如图7所示,该装置包括:封装模块10,用于对RTP报文进行隧道封装,得到隧道报文,其中,隧道报文中包括记录单元,每个记录单元中封装有多个RTP报文;发送模块20,用于将封装模块10得到的隧道报文通过与对端之间的隧道发送到对端,其中,对端为STG或者IMS终端。
本发明实施例根据RTP报文的小包定时发送的特点,将多个RTP报文形成一个Record,即,多个RTP报文共享一个Record的附加信息,从而通过牺牲较小的实时性,将隧道封装过程中多个RTP报文的附加信息进行整合,减少了隧道封装带来的附加带宽,进而降低了单包的带宽,避免了现有技术由于单包的附加带宽较大,对用户接入的带宽提出了更高的要求,在一定程度上降低了用户的使用体验和业务接入能力的问题。从而使隧道报文既能满足实时性的要求,又能够满足带宽要求。
在实际应用中,上述的隧道可以是SSL隧道,也可以是HTTP隧道或UDP隧道。
如图8所示,封装模块10包括:封装缓存模块102,用于在预先创建的链表中,生成并缓存RTP报文;定时器104,用于进行计时;判断模块106,用于判断定时器104是否到达预定封装时间间隔T,其中,预定封装时间间隔T的值应该小于或等于200ms(在IMS的语音时延允许的范围内);处理模块108,用于在判断模块106的判断结果为到达时,对上述链表中的在这预定封装时间间隔T内生成的多个RTP报文(RTP报文的个数
Figure BDA0000048216840000101
)进行隧道封装,得到隧道报文。
如图9所示,为了对链表中的多个RTP报文进行隧道封装,处理模块108可以包括以下几个模块,分别如下:
拷贝模块1081,用于从链表中取出多个RTP报文,并拷贝到一段连续的内存空间中;
隧道协议头添加模块1082,用于在该内存空间的头部加入隧道协议头(Enc Header);
摘要信息计算添加模块1083,用于对经隧道协议头添加模块1082加入了Enc Header后的内存空间中的数据进行摘要计算,并将计算得到的摘要信息(HMAC)附加在加入了Enc Header后的内存空间的尾部;
补齐信息添加模块1084,用于在摘要信息计算添加模块1083附加的HMAC的后面附加分组长度补齐信息(Tail);
加密模块1085,用于当隧道为SSL隧道或UDP隧道时,对经补齐信息添加模块1084附加了Tail后的内存空间中的数据进行加密;
协议头添加模块1086,用于当隧道为SSL隧道时,在经加密模块1085加密后的内存空间的头部添加SSL协议头,形成SSL记录单元;当隧道为UDP隧道时,在经加密模块1085加密后的内存空间的头部添加UDP协议头,形成UDP报文体;当隧道为HTTP隧道时,在将经补齐信息添加模块1084附加了Tail后的内存空间的头部添加HTTP协议头,形成HTTP消息体;
TCP封装模块1087,用于对协议头添加模块1086形成的记录单元进行TCP封装,得到隧道报文,其中,记录单元为以下之一:SSL记录单元、UDP报文体、HTTP消息体。即,当隧道为SSL隧道时,对SSL记录单元进行TCP封装,得到SSL隧道报文,当隧道是UDP隧道时,对UDP报文体进行TCP封装,得到UDP隧道报文,当隧道是HTTP隧道时,对HTTP消息体进行TCP封装,得到HTTP隧道报文。
如图10所示,该装置还可以包括:接收模块30,用于接收对端通过隧道发来的隧道报文;卸载模块40,用于对接收模块30接收的隧道报文进行隧道解封装,得到RTP报文,其中,隧道报文包括记录单元,每个记录单元中封装有多个RTP报文。显然,上述的卸载模块40在对隧道报文进行隧道解封装时的具体处理过程是上述图5所示的逆过程,这里不再赘述。
在实际应用中,隧道为SSL隧道时,如图11所示,IMS终端中集成有SSL隧道客户端,IMS终端通过SSL隧道客户端与STG建立SSL隧道。IMS终端和SIP/媒体服务器承担业务/媒体层处理和SIP/RTP报文的处理。SIP/媒体服务器具备TCP/IP协议栈,用于与SSL隧道客户端的TCP/IP虚拟协议栈通信。其中,SSL隧道客户端包括:TCP/IP虚拟协议栈、隧道封装/卸载模块、SSL协议栈和TCP/IP协议栈模块。STG包括:隧道封装/卸载模块、SSL协议栈和TCP/IP协议栈模块。在实际应用中,在IMS客户端中,可以由SSL隧道客户端中的TCP/IP虚拟协议栈、隧道封装/卸载模块、SSL协议栈和TCP/IP协议栈来实现如图10中的封装模块10和卸载模块40的功能。在STG中,可以由隧道封装/卸载模块、SSL协议栈和TCP/IP协议栈来实现如图10中的封装模块10和卸载模块40的功能。
具体地,在SSL隧道客户端中,TCP/IP虚拟协议栈用于SIP/RTP报文构造IP层信息(对应于图5中的步骤S504)。隧道封装/卸载模块用于RTP报文的隧道封装和卸载,发送时,将隧道协议头(Enc Header)加入到报文中,用于标识隧道承载格式和类型(对应于图5中的步骤S506),接收时,识别隧道内容类型并将隧道协议头进行卸载,提取RTP报文。SSL协议栈用于SSL封装、加密和数据收发,得到SSL Record(对应于图5中的步骤S508)。TCP/IP协议栈用于将SSL Record进行传输层和网络层的封装和卸载,得到SSL隧道报文(对应于图5中的步骤S510)。
同样,STG中的隧道封装/卸载模块、SSL协议栈和TCP/IP协议栈的功能分别与SSL隧道客户端中的隧道封装/卸载模块、SSL协议栈和TCP/IP协议栈的功能相同,这里不再赘述。
当IMS终端通过SSL隧道客户端向STG发送数据时,具体处理流程如下:
步骤1,TCP/IP协议栈将IMS终端所要发送的媒体数据封装为RTP报文;
步骤2,在隧道封装/卸载模块中设置一个定时器,该定时器的周期(即上述的预定封装时间间隔)为T,并设置T的值在语音时延允许的范围内(T≤200ms,如T=100ms)。隧道封装/卸载模块在T内收集多个RTP报文(个数为T除以RTP报文的打包时长后取整),当定时器到期时,才进行隧道头封装(具体处理如图5中的步骤S506);然后,输出给SSL协议栈;
步骤3,SSL协议栈继续对报文进行SSL加密、封装和发送(具体处理如图5中的步骤S508)。从而,使得在步骤2中的多个RTP报文形成一个SSL Record,即,将原本需要多个SSL Record封装的RTP报文变为只需一个SSL Record封装即可;
步骤4,TCP/IP协议栈将步骤3中形成的SSL Record进行TCP封装,得到最终发送的SSL隧道报文,并发送给STG。
STG接收到IMS终端发送来的SSL隧道报文之后,其具体的处理流程如下:
步骤1,TCP/IP协议栈从SSL隧道报文中解析出SSL Record;
步骤2,SSL协议栈对SSL Record进行SSL卸载;
步骤3,隧道封装/卸载模块进行RTP报文的还原,并以较短的时间间隔或按RTP报文的打包时长发送到媒体服务器上。具体地,可以发送给SIP/媒体服务器中的TCP/IP协议栈进行解封装,得到其中的媒体数据。
同样,STG接收到媒体服务器返回的报文并向IMS终端发送数据时的具体处理流程,以及IMS终端接收到STG发送来的SSL隧道报文时的具体处理流程,与上述步骤相同,这里不再赘述。
在IMS网络中,包括IMS终端和STG,其中,IMS终端和STG为如图7-10所示的装置。IMS终端和STG可以采用如图3-5所示的数据传输方法向对端发送数据并接收处理对端发来的数据。
与现有技术相比,本发明以上实施例在使用隧道承载IMS业务报文时,通过将多个RTP报文封装在一个Record中,使得承载的多个RTP报文可共享一个Record的附加信息,从而使得附加带宽得到了极大的节约,也有效地减小了最终传输的隧道报文的单包带宽,降低了对用户接入的带宽的要求,并在一定程度上提升了用户的使用体验和业务接入能力。以预定封装时间间隔为100ms为例,对于部分RTP报文产生了最大为80ms的时延,但是附加带宽却减少了5倍。
由于附加带宽得到了有效地减少,从而能够满足代理环境下(即IMS终端通过代理服务器进行上网)进行IMS业务安全穿越的带宽性能,使SSL VPN(Virtual Private Network,虚拟专用网)解决方案在IMS安全穿越领域中更具竞争力。
显然,本发明上述实施例还可以应用于其他的实时通信业务领域中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (10)

1.一种数据传输方法,用于互联网协议多媒体子系统IMS,其特征在于,包括:
对实时传输协议RTP报文进行隧道封装,得到隧道报文,其中,所述隧道报文中包括记录单元,每个记录单元中封装有多个RTP报文;
将所述隧道报文通过与对端之间的隧道发送到所述对端,其中,所述对端为安全隧道网关STG或者IMS终端。
2.如权利要求1所述的方法,其特征在于,对实时传输协议RTP报文进行隧道封装,得到隧道报文包括:
在预先创建的链表中,生成并缓存RTP报文;
判断是否到达预定封装时间间隔,其中,所述预定封装时间间隔的值小于或等于200ms;
若到达,则对所述链表中的在所述预定封装时间间隔内生成的多个RTP报文进行隧道封装,得到隧道报文。
3.如权利要求2所述的方法,其特征在于,所述隧道为安全套接字层SSL隧道,对所述链表中的在所述预定封装时间间隔内生成的多个RTP报文进行隧道封装,得到隧道报文包括:
从所述链表中取出所述多个RTP报文,并拷贝到一段连续的内存空间中;
在所述内存空间的头部加入隧道协议头Enc Header;
对加入了Enc Header后的内存空间中的数据进行摘要计算,并将计算得到的摘要信息HMAC附加在所述加入了Enc Header后的内存空间的尾部;
在所述HMAC的后面附加分组长度补齐信息Tail;
对所述附加了Tail后的内存空间中的数据进行加密;
在加密后的内存空间的头部添加SSL协议头,形成SSL记录单元;
对形成的SSL记录单元进行TCP封装,得到SSL隧道报文。
4.如权利要求1所述的方法,其特征在于,还包括:
接收所述对端通过所述隧道发来的隧道报文;
对接收的隧道报文进行隧道解封装,得到RTP报文,其中,所述隧道报文包括记录单元,每个记录单元中封装有多个RTP报文。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述隧道为以下之一:SSL隧道、超文本传输协议HTTP隧道、用户数据报协议UDP隧道。
6.一种数据传输装置,用于互联网协议多媒体子系统IMS,其特征在于,包括:
封装模块,用于对实时传输协议RTP报文进行隧道封装,得到隧道报文,其中,所述隧道报文中包括记录单元,每个记录单元中封装有多个RTP报文;
发送模块,用于将所述隧道报文通过与对端之间的隧道发送到所述对端,其中,所述对端为安全隧道网关STG或者IMS终端。
7.如权利要求6所述的装置,其特征在于,所述封装模块包括:
封装缓存模块,用于在预先创建的链表中,生成并缓存RTP报文;
定时器,用于进行计时;
判断模块,用于判断所述定时器是否到达预定封装时间间隔,其中,所述预定封装时间间隔的值小于或等于200ms;
处理模块,用于在所述判断模块的判断结果为到达时,对所述链表中的在所述预定封装时间间隔内生成的多个RTP报文进行隧道封装,得到隧道报文。
8.如权利要求7所述的装置,其特征在于,所述处理模块包括:
拷贝模块,用于从所述链表中取出所述多个RTP报文,并拷贝到一段连续的内存空间中;
隧道协议头添加模块,用于在所述内存空间的头部加入隧道协议头EncHeader;
摘要信息计算添加模块,用于对经所述隧道协议头添加模块加入了EncHeader后的内存空间中的数据进行摘要计算,并将计算得到的摘要信息HMAC附加在所述加入了Enc Header后的内存空间的尾部;
补齐信息添加模块,用于在所述摘要信息计算添加模块附加的HMAC的后面附加分组长度补齐信息Tail;
加密单元,用于当所述隧道为安全套接字层SSL隧道或用户数据报协议UDP隧道时,对经所述补齐信息添加模块附加了Tail后的内存空间中的数据进行加密;
协议头添加模块,用于当所述隧道为SSL隧道时,在经所述加密模块加密后的内存空间的头部添加SSL协议头,形成SSL记录单元;当所述隧道为UDP隧道时,在经所述加密模块加密后的内存空间的头部添加UDP协议头,形成UDP报文体;当所述隧道为超文本传输协议HTTP隧道时,在将经所述补齐信息添加模块附加了Tail后的内存空间的头部添加HTTP协议头,形成HTTP消息体;
TCP封装模块,用于对所述协议头添加模块形成的记录单元进行TCP封装,得到隧道报文,其中,所述记录单元为以下之一:SSL记录单元、UDP报文体、HTTP消息体。
9.如权利要求6所述的装置,其特征在于,还包括:
接收模块,用于接收所述对端通过所述隧道发来的隧道报文;
卸载模块,用于对所述接收模块接收的隧道报文进行隧道解封装,得到RTP报文,其中,所述隧道报文包括记录单元,每个记录单元中封装有多个RTP报文。
10.一种互联网协议多媒体子系统IMS网络,其特征在于,包括IMS终端和安全隧道网关STG,其中,所述IMS终端和STG为如权利要求6至9中任一项所述的装置。
CN2011100476705A 2011-02-28 2011-02-28 互联网协议多媒体子系统网络、数据传输方法和装置 Active CN102118292B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN2011100476705A CN102118292B (zh) 2011-02-28 2011-02-28 互联网协议多媒体子系统网络、数据传输方法和装置
PCT/CN2012/071722 WO2012116628A2 (zh) 2011-02-28 2012-02-28 互联网协议多媒体子系统网络、数据传输方法和装置
EP12752434.6A EP2584744B1 (en) 2011-02-28 2012-02-28 Ims network, and data transmission method and device
US13/786,230 US9338189B2 (en) 2011-02-28 2013-03-05 Internet protocol multimedia subsystem network, and data transmission method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011100476705A CN102118292B (zh) 2011-02-28 2011-02-28 互联网协议多媒体子系统网络、数据传输方法和装置

Publications (2)

Publication Number Publication Date
CN102118292A true CN102118292A (zh) 2011-07-06
CN102118292B CN102118292B (zh) 2013-07-10

Family

ID=44216896

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011100476705A Active CN102118292B (zh) 2011-02-28 2011-02-28 互联网协议多媒体子系统网络、数据传输方法和装置

Country Status (4)

Country Link
US (1) US9338189B2 (zh)
EP (1) EP2584744B1 (zh)
CN (1) CN102118292B (zh)
WO (1) WO2012116628A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012116628A3 (zh) * 2011-02-28 2012-11-01 成都市华为赛门铁克科技有限公司 互联网协议多媒体子系统网络、数据传输方法和装置
CN102932359A (zh) * 2012-11-08 2013-02-13 华为软件技术有限公司 流媒体服务请求方法、装置和系统
CN108173863A (zh) * 2017-12-29 2018-06-15 深圳市泛海三江科技发展有限公司 建立适用于物联网设备的轻量级WebRTC系统的方法和系统
CN108881114A (zh) * 2017-05-10 2018-11-23 上海交通大学 一种用于stl/sfn传输的rtp协议封装方法
CN109802928A (zh) * 2017-11-17 2019-05-24 中兴通讯股份有限公司 一种ssl/tls代理方法、装置、设备及存储介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10063590B1 (en) * 2015-04-23 2018-08-28 Amazon Technologies, Inc. Secure message protocol
US10341311B2 (en) * 2015-07-20 2019-07-02 Schweitzer Engineering Laboratories, Inc. Communication device for implementing selective encryption in a software defined network
US10425450B2 (en) * 2016-02-27 2019-09-24 Ofinno, Llc Mission critical communications
US11882050B2 (en) * 2016-07-04 2024-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Method, apparatus and system for handling an internet protocol packet
CN107222793B (zh) * 2017-05-05 2019-11-19 浙江大华技术股份有限公司 一种数据传输的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101388825A (zh) * 2007-09-12 2009-03-18 华为技术有限公司 一种传输gprs隧道协议数据包的方法和设备
CN101420369A (zh) * 2007-10-24 2009-04-29 华为技术有限公司 通用分组无线业务隧道协议报文传输方法、系统及设备
US20100281251A1 (en) * 2008-06-12 2010-11-04 Telefonaktiebolaget L M Ericsson (Publ) Mobile Virtual Private Networks

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100279620B1 (ko) * 1998-10-13 2001-02-01 구자홍 멀티 채널 음성 데이터 제어 방법 및 장치
US7002993B1 (en) * 2000-08-18 2006-02-21 Juniper Networks, Inc. Method and apparatus providing media aggregation in a packet-switched network
US6618397B1 (en) * 2000-10-05 2003-09-09 Provisionpoint Communications, Llc. Group packet encapsulation and compression system and method
IL149165A (en) * 2002-04-15 2006-12-10 Veraz Networks Ltd Method and device for efficient transfer of VOIP traffic
JP3792631B2 (ja) * 2002-09-30 2006-07-05 Necインフロンティア株式会社 パケット伝送方法及び装置、それを用いた基地局装置、無線lan端末装置、無線lanシステム
US7609723B2 (en) * 2003-05-23 2009-10-27 Intel Corporation Packet combining on PCI express
JP2006261935A (ja) * 2005-03-16 2006-09-28 Nec Corp パケット伝送方法および装置
US8160000B2 (en) * 2006-06-08 2012-04-17 Qualcomm Incorporated Achieving power savings through packet grouping
CN101022405B (zh) * 2006-06-23 2010-08-25 华为技术有限公司 一种通用成帧规程封装方法
CN101127731A (zh) * 2006-08-18 2008-02-20 华为技术有限公司 Ip多媒体业务子系统中传递短消息的方法、设备及系统
US7936695B2 (en) 2007-05-14 2011-05-03 Cisco Technology, Inc. Tunneling reports for real-time internet protocol media streams
FR2939993B1 (fr) * 2008-12-12 2010-12-17 Canon Kk Procede de transmission d'un flux de donnees multi-canal sur un tunnel multi-transport, produit programme d'ordinateur, moyen de stockage et tetes de tunnel correspondantes
US8484331B2 (en) * 2010-11-01 2013-07-09 Cisco Technology, Inc. Real time protocol packet tunneling
CN102118292B (zh) * 2011-02-28 2013-07-10 华为数字技术(成都)有限公司 互联网协议多媒体子系统网络、数据传输方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101388825A (zh) * 2007-09-12 2009-03-18 华为技术有限公司 一种传输gprs隧道协议数据包的方法和设备
CN101420369A (zh) * 2007-10-24 2009-04-29 华为技术有限公司 通用分组无线业务隧道协议报文传输方法、系统及设备
US20100281251A1 (en) * 2008-06-12 2010-11-04 Telefonaktiebolaget L M Ericsson (Publ) Mobile Virtual Private Networks

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012116628A3 (zh) * 2011-02-28 2012-11-01 成都市华为赛门铁克科技有限公司 互联网协议多媒体子系统网络、数据传输方法和装置
US9338189B2 (en) 2011-02-28 2016-05-10 Huawei Technologies Co., Ltd. Internet protocol multimedia subsystem network, and data transmission method and apparatus
CN102932359A (zh) * 2012-11-08 2013-02-13 华为软件技术有限公司 流媒体服务请求方法、装置和系统
CN108881114A (zh) * 2017-05-10 2018-11-23 上海交通大学 一种用于stl/sfn传输的rtp协议封装方法
CN108881114B (zh) * 2017-05-10 2020-12-29 上海交通大学 一种用于stl/sfn传输的rtp协议封装方法
CN109802928A (zh) * 2017-11-17 2019-05-24 中兴通讯股份有限公司 一种ssl/tls代理方法、装置、设备及存储介质
CN109802928B (zh) * 2017-11-17 2021-09-17 中兴通讯股份有限公司 一种ssl/tls代理方法、装置、设备及存储介质
CN108173863A (zh) * 2017-12-29 2018-06-15 深圳市泛海三江科技发展有限公司 建立适用于物联网设备的轻量级WebRTC系统的方法和系统
CN108173863B (zh) * 2017-12-29 2021-08-17 深圳市泛海三江科技发展有限公司 建立适用于物联网设备的轻量级WebRTC系统的方法和系统

Also Published As

Publication number Publication date
US9338189B2 (en) 2016-05-10
WO2012116628A3 (zh) 2012-11-01
WO2012116628A2 (zh) 2012-09-07
CN102118292B (zh) 2013-07-10
US20130188644A1 (en) 2013-07-25
EP2584744B1 (en) 2015-09-23
EP2584744A2 (en) 2013-04-24
EP2584744A4 (en) 2013-09-25

Similar Documents

Publication Publication Date Title
CN102118292B (zh) 互联网协议多媒体子系统网络、数据传输方法和装置
RU2369040C2 (ru) Буферизация при потоковой передаче данных
TWI419565B (zh) 緩衝媒體流之封包的方法、緩衝媒體流之系統、用於傳送之裝置與晶片組、伺服器、以及電腦程式產品
WO2011068784A1 (en) Method and system for secure and reliable video streaming with rate adaptation
US10826876B1 (en) Obscuring network traffic characteristics
KR20080068690A (ko) 상보적 지정 파일을 이용하여 실시간전송프로토콜 출구스트리밍을 위한 방법 및 장치
WO2018121742A1 (zh) 一种流数据的传输方法和装置
KR20100083233A (ko) 휴대용 단말기에서 멀티미디어 파일 스트리밍을 위한 장치 및 방법
FR2949931A1 (fr) Procedes et dispositifs de transmission d'un flux de donnees, produit programme d'ordinateur et moyen de stockage correspondants.
EP3065414A1 (en) Transmission device, transmission method, reception device, and reception method
US20110187926A1 (en) Apparatus and method for correcting jitter
US20170237720A1 (en) System and method of encrypted media encapsulation
CN105007465A (zh) 基于live555框架和ffmpeg库的密文H264视频直播和点播平台
US8416786B2 (en) Data transport container for transferring data in a high speed internet protocol network
CN101283554B (zh) 中继装置、通信终端和通信方法
JP2008067102A (ja) コンテンツ配信サーバ
WO2023217188A1 (zh) 一种直播数据传输方法、装置、系统、设备和介质
CN103716589A (zh) 一种减少nvr实况转发延时的方法和装置
EP2395727A1 (en) Data transport container, source device, destination device and method for transferring different types of data
JP2002314595A (ja) 通信中継装置およびジッタ抑制方法
US7830920B2 (en) System and method for enhancing audio quality for IP based systems using an AMR payload format
Shamieh et al. Dynamic cross-layer signaling exchange for real-time and on-demand multimedia streams
KR20090049955A (ko) 데이터 송신 방법, 수신 방법 및 그 장치
JP4201719B2 (ja) 通信装置
Fuentes et al. Network coding for streaming video over p2p networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: High tech Park No. 88 University of Electronic Science and technology of Sichuan province in 611731 Chengdu city high tech Zone West Park area Qingshui River Tianchen Road No. 5 building D

Applicant after: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

Address before: High tech Park No. 88 University of Electronic Science and technology of Sichuan province in 611731 Chengdu city high tech Zone West Park area Qingshui River Tianchen Road No. 5 building D

Applicant before: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES Co.,Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD. TO: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220922

Address after: No. 1899 Xiyuan Avenue, high tech Zone (West District), Chengdu, Sichuan 610041

Patentee after: Chengdu Huawei Technologies Co.,Ltd.

Address before: 611731 Area D, Building 5, High-tech Park, University of Electronic Science and Technology of China, No. 88, Tianchen Road, Qingshuihe Area, Western Park, High-tech Zone, Chengdu, Sichuan Province

Patentee before: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.