一种基于传输协议sctp和dccp的sip网络电话实现方法

文档序号:7656213阅读:228来源:国知局
专利名称:一种基于传输协议sctp和dccp的sip网络电话实现方法
技术领域
本发明属于通信技术领域,涉及使用流控制传输协议(SCTP-Stream Control Transmission Protocol)和数据报拥塞控制协议(DCCP-Datagram Congestion Control Protocol)来实现SIP网络电话的设计方法,尤其涉及 一种基于传输协议SCTP和DCCP的SIP网络电话实现方法。
技术背景1.网络电话技术及其发展现状网络电话又称IP电话或VoIP(Voice over IP),是利用IP网络实现语 音通信的一种先进技术。网络电话技术能在进行异地网络互连的同时, 实现通过IP网络传输语音,这样既可节省大量的长途话费,更可以在公 司内部实现零费用电话。网络电话技术是建立在IP技术上的分组化、数 字化语音传输技术,其基本原理是通过语音压縮算法对话音数据进行压 縮编码处理,然后把这些压縮后的数据按照IP等相关协议进行打包,通 过IP网络把数据包分组传输到目的地,在目的地再把这些包组合起来, 经过解码解压处理后,恢复成原来的语音信号,从而达到由IP网络传送 语音的目的。网络电话把普通电话的模拟信号转换成IP数据包在因特网 内传输,同时将收到的IP数据包转换成声音的模拟电信号。经过IP电话 系统的转换及压縮处理,每个普通电话传输速率约占用8 llKbit/s带 宽,因此在与普通电信网同样使用传输速率为64kbit/s的带宽时,IP电 话数是原来的5 8倍,提高了带宽利用率。当前的IP网络电话大致有四种实现方式Phone-PC、 PC-Phone、 PC-PC和Phone-Phone。终端的多样性使其能够为用户提供比当前的电话 系统更多的服务,包括多媒体会议、个性化移动通信、基于www的点击 呼叫等各种类型的高级应用。在实现这些服务的网络电话技术中,呼叫 的建立、拆除、控制、附加服务和能力协商等需要由控制信令来实现。 控制信令的制定涉及到电信和IP两个方面,在参与网络电话技术标准的
开发和推广的组织中上述二者的代表分别是ITU-T和IETF。目前ITU-T 的H.323协议族是占据主导地位的网络电话协议,己经被大量商业产品 采用。但鉴于其规模和复杂度,H.323协议实现成本高,建立连接时延大, 在混和网络中很难实现互联互通。所以虽然H.323现在正主导着网络电 话技术,但另外一种轻量级的呼叫信令技术己经逐渐得到了业界的承 认,并开始逐渐替代H.323协议的主导地位,这就是IETF提出的会话初 始协议(SIP-Session Initiation Protocol)。SIP协议近年来在通信和网络研究领域受到极大关注,是下一代网络 中的核心协议之一。它最初是由IETF的MMUSIC工作组提出的一个标 准,用来解决IP网上的信令控制。SIP协议的设计者从一开始就以模块 化、与Internet服务的一体化、简单化和可扩展性为指导思想,因此它避 免了 H.323所具有的协议复杂、连接建立时延大和实现困难等问题。在 IP网络分层模型上,SIP是工作在应用层上的一个信令协议,可以用来建 立、修改和终止多方参与的多媒体会话,SIP应用场景包括IP电话呼叫、 多媒体分发、多媒体会议等。由于SIP是应用层协议,因此它是相对独 立的,IP网络上任何类型的参与者都可以被SIP连接起来。例如,SIP可 以提供固定和移动网络之间的无缝服务功能,这是实现固定与移动业务 融合的关键要素,而且,这种功能将随着2.5G和3G移动网络在世界各 地的部署而变得越来越重要。鉴于SIP的诸多优势和现在技术的发展趋势,本发明主要选择SIP 作为信令控制协议来设计基于新传输协议的PC-PC形式的网络电话。2.现有SIP网络电话传输技术及其缺陷SIP网络电话实现了呼叫控制和传输承载的分离,即使用SIP进行呼 叫控制,同时使用实时传输协议RTP封装传输话音数据。但是将现有传 输技术传输控制协议(TCP-Transmission Control Protocol)和用户数据报 协议(UDP-User Datagram Protocol)应用在SIP网络电话中,却存在很 大的缺陷。(1)现有技术方案1现有的技术方案中,主要使用UDP或者TCP来传输SIP网络电话中 的信令信息,其协议模型如附图l所示,这种传输模型存在以下缺陷。 作为一种信令控制信息,SIP信息要求较高的传输可靠性和较短的传送时延。现有技术中,主要是使用UDP或者TCP来传送SIP信令信息。 使用UDP来传输SIP信令信息时,由于UDP无需建立连接,没有保证 可靠传输的重传机制,所以使用UDP来建立会话的时延比较短。但是 UDP缺乏拥塞控制机制,当网络发生拥塞的时候,其发送端并不降低数 据的发送速率,而TCP在遇到拥塞的情况下,会使用一定的拥塞控制机 制减小发送窗口的大小,降低发送速率这样当UDP和TCP共存的时候 UDP会抢占大量的网络资源,使网络拥塞更加严重,同时使TCP的发送 效率降低影响了网络使用的公平性所以一般称UDP不是TCP友好的。 在SIP网络电话系统中,代理服务器与代理服务器之间存在大量的SIP 信令信息,在网络资源不充足的情况下,容易发生网络拥塞,所以使用 UDP来传送SIP信令信息并不能满足SIP会话通信的要求如果使用TCP 来传输SIP信令信息, 一方面TCP三次握手的连接建立方式增大了 SIP 会话建立的时延;另一方面,TCP的高可靠性和严格的按序递交容易引 起队头阻塞,所以TCP也不能满足SIP信令的传送要求。 (2)现有技术方案2实时传输协议(RTP-Real-time Transport Protocol)是为了在Internet 上实时传输多媒体数据制定的一种传输协议。RTP的作用是提供时间信 息和实现流同步,并且依靠实时传输控制协议RTCP为按序传送的数据 包提供可靠的传送机制、流量控制和拥塞控制。RTP本身不具有传输数 据的能力,在现有技术方案中,它一般与UDP结合来支持实时传输,其 协议模型如图l所示。这种传输模型存在很多缺陷。UDP是一种无需建立连接的协议,不提供拥塞控制和保证数据可靠 传输的机制,所以使用UDP来传送话音数据可以保证SIP网络电话会话 的实时性,但是其也存在很大的缺陷,使用UDP来传送RTP数据包并没 有考虑到网络的拥塞, 一旦发生网络拥塞,由于其并不降低发送速率, 就会过分抢占网络资源,从而影响网络的整体性能。3.新传输协议介绍为了克服TCP和UDP协议在应用于SIP网络电话时的不足,本发明 引入了 IETF标准组织制定的两种新型的传输协议一_流控制传输协议
SCTP和数据报拥塞控制协议DCCP来设计实现新的SIP网络电话。
(1) 流控制传输协议SCTP
最初,IETF的信令传输工作组SIGTRAN提出SCTP协议主要用于 在IP网络上传输PSTN信令信息,即通常所说的SS7 over IP。目前,IETF 将SCTP传输协议作为下一代新型互联网络的主要传输协议,与TCP和 UDP共筑于IP层之上。同TCP—样,SCTP提供面向连接的、点到点的 可靠传输,它继承了 TCP强大的拥塞控制、数据包丢失发现等功能,任 何在TCP上运行的应用都可被移至SCTP上运行。不同于TCP的是,SCTP 提供了许多对于信令传输很重要的功能,同时,对于其他一些对性能和 可靠性有额外需要的应用,它能提供传输优势来满足这些需要。
SCTP主要向用户提供下列服务安全的四次握手关联建立方式,可 以防止DoS攻击;使用了选择性确认(SACK-Selective Acknowledgment) 技术,并且运用了 TCP中的拥塞控制技术,包括慢启动,拥塞避免和快 速重传;根据检测到的MTU长度进行用户数据分段处理,避免IP层的 分段;在多个流中实现用户数据的有序递交, 一个流中信息的丢失不影 响其他流中信息向应用层的递交;多个用户信息可有选择地绑定到一个 SCTP包中,通过将信息放到一个或多个SCTP数据结构一_ "块"中, SCTP保留了应用程序的信息框架边界;通过支持一个关联的一方或双方 节点的多宿特性,实现网络级容错;支持多种传输模式,支持严格有序 传输、部分有序传输和无序传输;灵活的路径管理功能,可以定时地扫 描链路的可达性,并向SCTP报告远端传输地址所发生的变化。
当然,SCTP协议本身也存在着许多不尽完善的地方,比如基于数据 包的而不是基于数据块的校验和体制,没有针对每一条数据链路建立独 立的拥塞控制机制等。目前,许多研究机构和研究学者都针对这些问题 提出了各种各样的改进方法,如CC-SCTP, SF-SCTP, IPCC-SCTP等。
(2) 数据报拥塞控制协议DCCP
网络的音频/视频服务正在飞速的发展之中,但是流媒体业务的传输 质量却有待提高。TCP协议可以提供可靠的端到端的传输控制,但是它 的时延和传输速率抖动大,并且流媒体也不需要完全可靠的传输,少量 数据的丢失对其质量影响很小;UDP协议简单实用,但是不提供拥塞控
制,不能和TCP友好并存,容易引起网络的拥塞。本领域技术人员在分 析了现有传输协议的问题和比较了各种可能的解决方案后,提出了一种
新的传输协议——数据报拥塞控制协议(DCCP-Datagmm Congestion Control Protocol)。
类似于TCP, DCCP也是面向连接的,但是DCCP的连接含义更为 丰富,它在两个通信的端点之间的不同方向上建立两个独立的半连接, 这种半连接的连接模型允许A和B独立选择不同的拥塞控制算法,每个 半连接的特性参数可以在两端之间进行充分的协商,以适应不同方向上 的数据流特性。
DCCP允许应用按照自己的需要灵活地选择拥塞控制机制,并且两个 半连接可以使用不同的拥塞控制机制。目前DCCP提供两种拥塞控制机 制TCP-like拥塞控制(TCP-like congestion control)和TCP友好的速率 控制(TFRC-TCP-friendly rate control), 它们分别被标识为CCID2 (Congestion Control ID 2)禾口 CCID3 (Congestion Control ID 3) 。 CCID2 提供了一种类似于TCP的拥塞控制机制。发送端保持一个拥塞窗口,发 送端发送的报文通过接收端来确认。当接收端检测到拥塞时,立即将拥 塞窗口减半。CCID2适合于传输速率突发性强的实时通信,例如在线游 戏等。与CCID2不同,CCID3并不使用拥塞控制窗口,接收端在每一个 回环时间(RTT-round-triptime)中向发送端报告一次数据的接收情况, 发送端根据数据丢失速率来决定其发送速率。如果在几个RTT中都没有 接收到接收端的反馈信息,那么发送端将发送速率减半。CCID3适合于 发送速率平滑变化的通信,例如网络电话。
当使用UDP或TCP来传输SIP信令信息时,UDP缺乏分组丢失检 测和拥塞控制机制,不能满足SIP信令信息的可靠传输。TCP虽然能保 证SIP信息的传输可靠性并提供拥塞控制机制,但其严格的按序递交影 响了信息的传送,同时其网络容错能力也有限。话音数据一般是经过RTP 封装后使用UDP来传送,RTP提供时间信息和流同步,但是当使用UDP 来传送RTP封装的话音数据的时候,由于UDP没有拥塞控制机制,在网 络带宽不足的情况下,UDP并不降低其发送速率,容易引起网络的拥塞, 影响网络占有的公平性。

发明内容
鉴于现有技术中存在的缺陷,本发明提供一种基于传输协议SCTP 和DCCP的SIP网络电话实现方法,使用SCTP协议传送SIP信令信息, 使用DCCP协议传送SIP网络电话中RTP封装的话音数据。
一种SIP网络电话实现方法,进一步包含SIP网络电话终端和SIP 代理服务器之间的SIP信令信息使用SCTP协议来传送;SIP代理服务 器和SIP代理服务器之间的SIP信令信息使用SCTP协议来传送;SIP 网络电话终端和SIP网络电话终端之间使用DCCP协议来传送通过RTP 封装的话音数据。
一种SIP网络电话的实现方法,进一步包含在所述SIP网络电话 终端和SIP代理服务器之间建立SCTP关联,两者之间的SIP信令信息使 用关联中的一个流来传送;在所述SIP代理服务器和SIP代理服务器之 间建立SCTP关联,两者之间的属于不同会话的SIP信令信息使用同一个 关联来传送。
一种SIP网络电话的实现方法,进一步包含在所述两个代理服务 器之间,SCTP的一个关联在一个会话完成后不关闭,只是释放掉其所占 有的关联之中的流号,后续的经过所述两个代理服务器的会话通过选择 一个流号(包含释放掉的流号)直接使用所述关联。
一种SIP网络电话的实现方法,所述流中的信息可以选择以有序和 无序的方式递交。
一种SIP网络电话的实现方法,进一步包含所述两个代理服务器 在建立关联时各自可以绑定多个IP地址。
一种SIP网络电话的实现方法,进一步包含当在所述两个SIP代
理服务器之间存在多个SIP会话时,将属于不同会话的SIP信令信息分 别映射在两个代理服务器之间的不同的流中,流和会话一一对应。
一种SIP网络电话的实现方法,SCTP协议根据MTU的大小采用信 息的分段和捆绑技术,提高了 SIP消息的传送效率。
一种SIP网络电话的实现方法,进一步包含SCTP协议使用快速重 传机制,当一个SIP信令信息传送丢失时,只重传丢失的数据。
一种SIP网络电话的实现方法,进一步包含所述SIP网络电话终
端根据网络性能灵活地选择拥塞控制机制,使用DCCP的不可靠的传送
方式来传送会话,并且DCCP的部分校验允许所述SIP网络电话终端接 收不影响会话性能的存在细微差错的数据。
本发明的优点在于本发明将新型传输协议SCTP和DCCP引入到 SIP网络电话中,其中SCTP安全关联建立、多流、多宿以及包的分段和 捆绑等特性,可以满足SIP信息需要可靠、安全以及高效传输的要求; 使用DCCP来传送SIP网络电话中的话音数据,其灵活可选的拥塞控制 机制可以更好地适配网络拥塞状况,保证网络占有的公平性。这两种传 输协议的引入改善了 SIP网络电话的性能,使其有取代TCP和UDP作为 SIP网络电话传输协议的趋势。


图l为基于TCP和UDP的SIP网络电话协议模型示意图; 图2为基于SCTP和DCCP的SIP网络电话协议模型示意图; 图3为SCTP协议的多流特性示意图; 图4为SCTP协议的多宿特性示意图5为本发明基于SCTP和DCCP的SIP网络电话的网络结构示意图; 图6为本发明基于SCTP和DCCP的SIP网络电话的信令流程示意图; 图7为本发明基于SCTP和DCCP的SIP网络电话的操作流程图。
具体实施例方式
有关本发明的技术内容及详细说明,现配合

如下
鉴于SCTP和DCCP的诸多优势,本发明将这两种新型传输协议应 用在PC-PC形式的SIP网络电话上。借助于SCTP的安全关联建立、多 流和多宿等特性,可以实现SIP信令信息的安全、可靠以及高网络容错 能力的传输,而借助于DCCP的半连接和灵活可选的拥塞控制等特性, 即可以保证通话的实时性,同时可以使得发送方在遇到网络拥塞时及时 调整发送速率,保证了网络使用的公平性。本发明设计了如附图2所示 的SIP网络电话传输模型。下面我们主要分析SCTP和DCCP适合于SIP 网络电话传输的特性及其具体实施方式

1. SCTP适合于SIP信令信息传输的特性
SIP网络电话中,既要保证SIP信令信息传输的可靠性,同时又应该
防止网络拥塞,此外SIP网络电话对会话建立的时延也有一定的要求。
选择SCTP协议来传送SIP信息,其良好的特性可以满足SIP信令信息的 传送要求。
(1) "四次握手"的关联建立
SCTP四次握手关联建立方式可以防止DoS攻击,在使用SCTP协议 的情况下,SIP代理服务器不会因为持有虚假IP地址的攻击者频繁发起 SCTP关联建立请求而耗尽系统资源。同时这种关联建立也不会显著的增 加会话建立时延。首先,在四次握手的第三个包中客户端就可以向服务 器携带应用层的数据;其次,因为在SIP代理服务器之间会存在大量的 SIP信令信息, 一般在第一次建立关联后,这个关联会一直保持着,经过 这两个代理服务器的后续的会话并不需要再次建立关联,而直接使用这 个现有的关联,所以后续会话省去了关联建立步骤,縮短了会话建立时 延。
(2) 无序递交和多流的应用
SCTP的流在传输层为多种不同类型数据的同时传输提供了一个新 的解决方案,它将多个连接和复用/解复用结合到一起,每个SCTP流是 一个逻辑的、单向的传输通道,位于端到端的SCTP关联中。在SCTP端 节点启动关联之初,可以指定多个流,每个流拥有独立的发送和接收缓 存。附图3描述了SCTP的多流特性。
SCTP发送端在发送数据的时候必须在SCTP关联中选择一个特定的 流来发送。SIP信息可以按照有序和无序两种方式映射到SCTP流中进行 传输。对于不需要按序传送的SIP信息,SIP通信实体可以选择设置了无 序传送标志位的一个流号,把所有的SIP信息都映射到该流中进行传送, 到达对端的SIP信息会被立即传送至应用层,无需考虑其传送顺序。这 种方式避免了用TCP进行SIP信令信息传送时发生的队头阻塞。某些SIP 信息是需要按序传送的,那么可以设定按序传送标志位,使这些信息在 同一流内按顺序进行传送。
SCTP的多流特性在应用于SIP网络电话时可以用来区分会话。在两 个代理服务器之间,只要有足够的流可用,属于不同SIP会话的信息就 可以在一个关联之中的不同的SCTP流上传送,这样一个会话中信息的
丢失不会影响到别的会话信息的正常发送和递交。
(3) 多宿特性的应用
一个SCTP关联可以在一个主机上绑定多个IP地址,多个IP地址使 用相同的端口。通信的时候, 一般使用一个主地址来传输数据, 一旦这 个主地址变得不可达,数据可以迁移到备用地址上进行传送。SCTP的多 宿特性如附图4所示。对于需要交换大量信息的SIP服务器来说,如果 通信双方在建立关联的时候绑定多个IP地址,当主链路传送SIP信息失 败的时候,可以将信息迁移到备用链路上传送,这种特性提高了 SIP信 息传送的可靠性,改善了网络容错能力。
(4) 快速重传
由于SCTP使用选择性确认(SACK)机制,所以可以快速的检测到 SIP信令信息的丢失。在一个SCTP关联之中,当存在数据丢失的时候, 只需要重新传输丢失的数据,这种特性可以更快的建立SIP会话。
(5) 传输层分段和捆绑
SCTP提供了最大传输单元(MTU)发现功能,如果SIP信令信息大 于MTU,就会在传输层进行分段。在SIP信息比较大的情况下,这个特 性变得非常重要。当SIP信令信息小于MTU时,可以将多个SIP信令信 息按块捆绑在一个SCTP包中进行传输,可以提高传输效率。
2. DCCP适合于RTP话音数据包传输的特性
RTP是一种在IP网络上传输实时多媒体的应用广泛的协议,RTP可 以运行在多种传输协议之上,基于RTP的应用的性能受下层传输协议的 影响很大。然而大部分基于RTP的实时应用由于使用了没有拥塞控制功 能的UDP协议,导致网络存在因为拥塞而崩溃的可能。
DCCP提供了不可靠的传送机制和灵活的拥塞控制机制,RTP运行 在DCCP之上使得应用可以灵活的定制它所需要的传输机制,采用更好 的拥塞控制算法,并将实现的复杂性交给操作系统。
DCCP在两个通信的端点之间的不同方向上建立两个独立的半连接, 这种半连接的连接模型允许SIP网络电话通信双方独立选择不同的拥塞 控制算法,每个半连接的特性参数一一如上下行传输速率等可以在两端 之间进行充分的协商,以适应不同方向上的数据流特性。DCCP支持两种拥塞控制算法TCP-like拥塞控制和TCP友好的速 率控制。SIP通信双方可以灵活地选择拥塞控制机制来适配网络性能的变 化。DCCP采用不可靠的数据传送方式,当数据丢失的时候,DCCP并不 负责数据的重传,这种方式适合应用在对数据的可靠性要求不高的话音 通信方面。DCCP使用部分校验,应用可以选择校验的覆盖范围,所以允许SIP 网络电话通话终端接收存在部分损坏的数据包,并且这种少量损坏的数 据包一般不会影响正常通话,这种特性提高了 RTP话音数据的传送效率。与UDP相同,DCCP提供了一种基于数据报的传输服务。每一个RTP 数据包可以封装在一个单独的DCCP数据报中传送。与UDP不同的是, DCCP面向连接的特性、拥塞控制算法和部分校验影响了 RTP的传送。当一个端系统要加入一个RTP会话的时候,要打开一个DCCP连接。 在RTP会话持续期间,DCCP—直打开。在DCCP连接建立后,它可能 依赖于SIP电话发送BYE请求信息来表明需要中断会话,从而中断DCCP 连接。通信的过程中,上层应用可以灵活地选择DCCP所支持的拥塞控 制机制,当应用于SIP网络电话的时候,本发明选择适合于RTP数据包 传输的拥塞控制机制CCID3。同时,DCCP使用部分校验,允许应用来 选择校验的覆盖范围,所以允许应用接收存在部分损坏的数据包。当由 于网络性能或者其它因素存在损坏包的时候,部分校验可以提高网络的 性能。部分校验的校验范围必须包含DCCP和RTP头,主要是为了保证 包正确向上层递交。3.基于SCTP和DCCP的SIP网络电话的具体实施方式
本发明提供了一种基于新型传输协议SCTP和DCCP的SIP网络电 话的设计方法。选择使用SCTP来传送SIP信令信息,使用DCCP来传 送RTP封装的话音数据。这两种传输协议可以很好的满足SIP网络电话 信令信息和话音数据对传送特性的要求。其方法实现包含以下几个方面:SIP网络电话终端和SIP代理服务器之间这两者之间的SIP信令信 息使用SCTP协议来传送。首先需要在这两者之间建立一个SCTP关联, 两者之间的SIP信令信息使用关联中的一个流来传送,在SIP信令信息传送失败的时候,会使用类似于TCP的机制来重传,这种传送方式可以 充分保证SIP信令信息的传输可靠性。SIP代理服务器和SIP代理服务器之间这两者之间的SIP信令信息使用SCTP协议来传送。当在这两个代理服务器之间存在多个SIP会话的 时候,可以将属于不同会话中的SIP信令信息分别映射在两个代理服务器之间的不同的流中,流和会话一一对应,流与流之间的信息在传送时 互不影响, 一个流中信息的丢失并不影响另一个流中的信息向应用层递 交,这种传送方式可以防止出现队头阻塞,提高了信息的传送效率。同时,这两个代理服务器之间可以使用SCTP的多宿特性,两端在通信时 各自绑定多个IP地址,提高了网络容错能力。SIP网络电话终端和SIP网络电话终端之间当SIP会话建立以后,会触发使用DCCP协议来传送通过RTP封装的话音数据。SIP网络电话 终端可以根据网络性能灵活地选择拥塞控制机制,使用DCCP的不可靠 的传送方式可以保证会话的实时性,同时DCCP采用了部分校验功能, 允许SIP终端接收不影响会话性能的存在细微差错的数据,这种方式保 证了数据的传送效率。图5为基于SCTP和DCCP的SIP网络电话的网络结构示意图。如 图5所示,本实施例选择了两个SIP终端——用户代理客户端(UAC- User Agent Client)和用户代理服务器(UAS-User Agent Server);和两个代 理服务器一一代理服务器1和代理服务器2来分析其会话流程;同时使 用域名系统(DNS-Domain Name System)服务器来完成SIP统一资源标 识符(URI-Uniform Resource Identifier)中的域名和IP地址的转换,使 用注册服务器完成SIP用户的身份注册并将注册的结果存储在位置服务 器中。在实际的应用中两个SIP终端之间可能会经历多个代理服务器才 能将信息发送到对端,本实施例中只使用了两个代理服务器来简化描述 其会话流程。实际网络中的代理服务器也不会管理一个SIP终端, 一个 SIP代理服务器管理着一个域,这个域中可以含有大量的SIP终端,这些 SIP终端发起或者接收的会话需要经过这个代理服务器。图6为基于SCTP和DCCP的SIP网络电话的信令流程示意图。具 体步骤如下所述 阶段l: SIP终端注册过程步骤1: SIP终端即用户代理客户端UAC和用户代理服务器UAS接 入网络并启动程序的时候,首先需要在SIP注册服务器注册其身份信息,发送SIP注册信息将其联系地址和地址记录在注册服务器中注册。图6 的会话流程中只是标示了 UAS的注册过程,省略了 UAC的注册过程。 这个应用层产生的注册信息触发在UAS和注册服务器之间建立SCTP关 联,关联建立之后,UAS可以使用关联中的流号为0的流来发送 REGISTER信息。步骤2:注册服务器接收到这个REGISTER信息后,在这个关联中 的流号为0的流中返回200 OK信息来表明注册成功。步骤3:注册服务器将注册过的UAS的联系地址和地址记录的绑定 关系存储在位置服务器中,代理服务器2接收到SIP信息后,可以向位 置服务器査询这个绑定关系以査找到UAS的位置信息。阶段2:会话请求步骤4: UAC向UAS发起会话请求,先将邀请信息发送到本域的代 理服务器1,并在UAC和代理服务器1之间建立SCTP关联。关联建立 以后,选择关联中的流号为O的流来发送邀请信息。步骤5:代理服务器1收到邀请请求后,在流号为0的流中返回 1 OOTrying信息来对邀请信息进行临时确认。步骤6:代理服务器1向DNS服务器发送请求,査询邀请信息的请 求URI中使用的代理服务器2的域名所对应的IP地址。步骤7:根据査询到的代理服务器2所对应的IP地址,在代理服务 器1和代理服务器2之间建立SCTP关联并选择关联中的一个流来发送 邀请信息。在代理服务器1和代理服务器2建立SCTP关联的时候,使用SCTP 的多宿特性,两个代理服务器可以分别绑定多个IP地址,当一个地址失 效或者链路断开的时候,可以将SIP信息转到其它地址上来传送,这种 多宿特性的使用增加了数据的容错能力,保证了数据的可靠发送。图6中的代理服务器作为网络上的普通SIP代理服务器, 一方面需 要为它所管辖的域中的所有的SIP终端服务,另一方面可能还存在从其
它代理服务器传送过来的SIP信息,所以经过某个代理服务器可能存在 大量的SIP会话,基于这种情况,两个代理服务器之间在第一次建立关 联后可以不关闭这个关联,而后续的两个SIP终端之间的会话可以直接使用之前建立的关联,这种方式减小了 SIP会话建立的时延。如果经过两个代理服务器的后续信息与前面的经过这两个代理服务器的信息分属于不同的会话,可以将不同会话中的信息映射在SCTP的 不同的流中来传送,流和会话是一一对应的关系,流与流的不相关使得 会话之间的信息传送互不影响。步骤8:代理服务器2在接收到邀请信息后,在关联中选择一个流向 代理服务器1返回100Trying信息。这个流号可以和接收INVITE信息所 使用的流号相同。步骤9:代理服务器2接收到从代理服务器1发送过来的邀请信息后, 通过位置服务器査询UAS的IP地址。步骤10:代理服务器2根据査询到的UAS的地址,直接与UAS建 立SCTP关联,然后选择关联之中流号为0的流将邀请信息发送到UAS。阶段3:会话响应步骤11: UAS振铃后,按照与传送邀请信息相反的路径返回 180Ringing信息,传送的时候,在UAS和代理服务器2之间以及代理服 务器1和UAC之间所用的流号是0,而在两个代理服务器之间使用的流 号是之前在步骤7中传送邀请信息所使用的流号。步骤12:等待用户摘机。用户摘机后,以与传送180Ringing信息相 同的路径返回含有会话参数的200OK信息。传送的时候,在UAS和代 理服务器2之间以及代理服务器1和UAC之间所用的流号是0,而在两 个代理服务器之间使用的流号是之前在步骤7中传送邀请信息所使用的 流号。UAC接收到2000K信息后根据其中的信息体完成参数的协商。 步骤13:会话参数协商完毕后,UAC和UAS之间直接建立SCTP 关联,并且使用关联中的流号O来发送ACK信息,会话协商最终完成。 阶段4: RTP会话建立步骤14:发送ACK信息的同时,UAC与UAS之间建立DCCP连接,
连接建立的过程中,DCCP可以在两个半连接之中灵活的选择拥塞控制算 法,同时在特定的应用下,其上下行数据传输速率可以不同,以适配不 同的业务需要。步骤15: DCCP连接建立之后,开始使用DCCP传送RTP话音数据 包,通话开始。通话的过程中,上层应用可以根据选择的拥塞控制算法来适应网络 带宽的不断变化。同时DCCP不保证可靠性的传送方式使得其传送时延 非常小,如果出现数据丢失的情况,DCCP并不重传这些丢失的数据,这 种特性保证了会话的实时性。同时DCCP使用部分校验功能,允许接收 存在部分错误的数据包,这些少量错误的数据并不会影响语音会话的性 能。阶段5:会话中止步骤16:当通话完成后,用户挂机,同时发送BYE信息向通话对端 表明会话结束。这个信息可以使用之前发送ACK信息的关联来进行发送, 选择使用这个关联之中的流号为0的流。步骤17:通信对端在UAC和UAS之间的关联中使用流号为0的流 返回200 OK信息进行确认。歩骤18:终止UAC和UAS之间的DCCP连接。步骤19:关闭UAC和UAS之间的关联。步骤20:关闭UAC和代理服务器1之间的关联。步骤21:关闭代理服务器1和代理服务器2之间的关联。如果还有 其他会话在使用这两者之间的关联,那么这个关联也可以不关闭,而只 需要释放掉在传送上述会话时所使用的流号,以供其他经过这两个代理 服务器的会话使用。步骤22:关闭代理服务器2和UAS之间的关联。上面的流程是基于附图5网络结构的一种简单的信令流程,在现实 的网络环境中,这种结构肯定很复杂,会存在大量的经过代理服务器的 会话,需要仔细设计代理服务器在处理信令信息时候的实现机制,比如 流与会话的映射,会话的数量大于流的数量时怎样进行处理等问题。同 时随着网络电话的流行,现实网络在不能满足会话的带宽要求下出现网
络拥塞时,DCCP的拥塞控制机制可以很好的发挥其优势。图7为本发明基于SCTP和DCCP的SIP网络电话的操作流程图。 如图7所示,首先SIP终端的UAC和UAS向注册服务器注册其身份信 息(步骤101),身份信息包含其联系地址和地址记录信息;注册服务器 将注册过的UAC和UAS的联系地址和地址记录的绑定关系存储在位置 服务器中(步骤102) ; UAC向UAS发起会话请求(步骤103) ; UAS 振铃后,UAS响应会话请求,用户摘机,与UAC建立连接,会话开始(步 骤104);当会话完成后,用户挂机,断开UAC与UAS的连接(步骤 105)。上述仅为本发明的较佳实施例而已,并非用来限定本发明实施范 围。即凡依本发明申请专利范围所做的均等变化与修饰,皆为本发明专 利范围所涵盖。
权利要求
1、 一种基于传输协议SCTP和DCCP的SIP网络电话实现方法,其 特征在于,使用SCTP协议传送SIP信令信息,使用DCCP协议传送SIP 网络电话中RTP封装的话音数据。
2、 如权利要求1所述的一种SIP网络电话实现方法,其特征在于, 进一步包含SIP网络电话终端和SIP代理服务器之间的SIP信令信息使用SCTP 协议来传送;SIP代理服务器和SIP代理服务器之间的SIP信令信息使用SCTP协 议来传送;SIP网络电话终端和SIP网络电话终端之间使用DCCP协议来传送通 过RTP封装的话音数据。
3、 如权利要求2所述的一种SIP网络电话的实现方法,其特征在于, 进一步包含在所述SIP网络电话终端和SIP代理服务器之间建立SCTP关联,两 者之间的SIP信令信息使用关联中的一个流来传送;在所述SIP代理服务器和SIP代理服务器之间建立SCTP关联,两者 之间属于不同会话的SIP信令信息使用同一个关联来传送。
4、 如权利要求3所述的一种SIP网络电话的实现方法,其特征在于, 进一步包含在所述两个代理服务器之间,SCTP的一个关联在一个会话 完成后不关闭,只是释放掉其所占有的关联之中的流号,后续的经过所 述两个代理服务器的会话通过选择一个流号直接使用所述关联。
5、 如权利要求3所述的一种SIP网络电话的实现方法,其特征在于, 所述流中的信息可以选择以有序和无序的方式递交。
6、 如权利要求3所述的一种SIP网络电话的实现方法,其特征在于, 进一步包含所述两个代理服务器在建立关联时各自可以绑定多个IP地 址。
7、 如权利要求3所述的一种SIP网络电话的实现方法,其特征在于, 进一步包含当在所述两个SIP代理服务器之间存在多个SIP会话时, 将属于不同会话的SIP信令信息分别映射在两个代理服务器之间的不同 的流中,流和会话一一对应。
8、 如权利要求2所述的一种SIP网络电话的实现方法,其特征在于, SCTP协议根据MTU的大小采用信息的分段和捆绑技术,提高了 SIP消 息的传送效率。
9、 如权利要求2所述的一种SIP网络电话的实现方法,其特征在于, 进一步包含SCTP协议使用快速重传机制,当一个SIP信令信息传送丢 失时,只重传丢失的数据。
10、 如权利要求2所述的一种SIP网络电话的实现方法,其特征在 于,进一步包含所述SIP网络电话终端根据网络性能选择拥塞控制机 制,使用DCCP的不可靠的传送方式来传送会话,并且DCCP的部分校 验允许所述SIP网络电话终端接收不影响会话性能的存在细微差错的数 据。
全文摘要
一种基于传输协议SCTP和DCCP的SIP网络电话实现方法,SIP网络电话终端和SIP代理服务器之间的SIP信令信息使用SCTP协议来传送;SIP代理服务器和SIP代理服务器之间的SIP信令信息使用SCTP协议来传送;SIP网络电话终端和SIP网络电话终端之间使用DCCP协议来传送通过RTP封装的话音数据。本发明的优点在于SCTP安全关联建立、多流、多宿以及包的分段和捆绑等特性,可以满足SIP信令信息需要可靠、安全以及高效传输的要求;使用DCCP来传送SIP网络电话中的话音数据,其灵活可选的拥塞控制机制可以更好地适配网络拥塞状况,保证网络占有的公平性。
文档编号H04L29/06GK101146100SQ20071012201
公开日2008年3月19日 申请日期2007年9月19日 优先权日2007年9月19日
发明者刘庆峰, 吴晓丹, 张宏科, 冬 杨, 博 王, 秦雅娟, 罗洪斌, 淼 薛 申请人:北京交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1