基于p2p和sip的视频会议系统及其实现方法

文档序号:7954023阅读:192来源:国知局
专利名称:基于p2p和sip的视频会议系统及其实现方法
技术领域
本发明涉及一种通信技术领域的系统及其实现方法,尤其涉及一种基于P2P和SIP的视频会议系统及其实现方法。
背景技术
SIP(会话发起协议)是由IETF(Internet工程任务组)提出的IP电话信令协议。基于SIP协议标准,整合了传统的语音及增值服务,并提供及最新的即时通信服务以及IP网络上的视频服务,并且可以为其他更多的增值应用服务商提供一个标准的具有高扩展性的平台。SIP用于发起会话,它能控制多个参与者参加的多媒体会话的建立和终结,并能动态调整和修改会话属性。P2P是一种点对点的通信方式,它区别于传统的客户端/服务器服务器,每个通信点即是客户端也是服务器,这样每个通信点都可与网络上其他的通信点通信。在大量数据传输的领域中,P2P能有效的减轻服务器的负担,在同样的服务器下,P2P可使服务器支持更多的客户端收发数据。
经对现有技术的文献检索发现,张锦堂等在《石油仪器》2005年05期上发表的文章“H.323多媒体会议系统开发”,该文介绍了实现H.323协议实现视频会议系统,底层采用RTP协议传输,整个系统分为网守,MCU和客户端3个部分组成,其所有的视频都要发送给MCU,然后由MCU控制视频的转发,这样以来如果客户端数量增加,MCU服务器的负担会大大增加。毕未奇等在《电子工程师》2005年01期上发表的文章“基于SIP的软交换视频会议控制系统的设计”,该文介绍了采用SIP协议实现的视频会议系统,整个系统分为客户端,软交换,应用服务器和MCU组成,其仍然采用传统的C/S架构,所有的视频都要转发给MCU,然后由MCU转发视频,由于对MCU的过分依赖,系统无法支持大容量。曾庆珩等在《计算机工程》2005年03期上发表的文章“基于SIP的集中式会议控制模型及实现”,该文介绍了基于SIP的集中会议控制模型,整个系统分为客户端,会议管理服务器和会议控制服务器组成,其采用了SOAP作为服务器之间的通信协议,但是也没有采用P2P网络作为架构。
传统视频会议采用了私有或者H.323协议,采用了私有协议则无法于外界客户端互通,而H.323协议则使系统变得复杂不够灵活,并且不方便扩展。网络结构则采用传统的服务器/客户端模式,这样导致服务器负担过重。采用了SIP协议的视频会议系统大多采用的是传统的集中式的数据传输模式,没有采用P2P网络,而且服务器之间的通信或者没有采用SIP协议,或者对SIP协议做了很大的扩展。这样需要对传统的SIP客户端做很大的修改才能兼容其会议系统。

发明内容
本发明针对现有技术的不足,提供一种基于P2P和SIP的视频会议系统及其实现方法,使其用轻便而且方便扩展的SIP协议作为通信协议,而使用P2P网络,能够有效的减轻服务器的负担,能使服务器支持更多的视频会议终端。本发明对SIP协议做了适当扩展让其支持P2P网络和视频会议,在传统的SIP客户端稍微修改就能兼容本视频会议系统。而且服务器之间也采用了SIP作为通信协议。
本发明是通过以下技术方案实现的本发明视频会议系统包括会议代理服务器、会议控制服务器和客户端三大部分,系统采用扩展的SIP作为通信协议,P2P作为网络结构。
所述的会议代理服务器用来管理会议控制服务器和客户端。会议代理服务既有提供注册登陆的功能还有代理的功能,所有的SIP消息都从会议代理服务器转发。在本系统中有而只有一台会议代理服务器,会议代理服务器接受来自会议控制服务器和客户端的注册请求,并将注册过的会议控制服务器和客户端登记在会议代理服务器的数据库中。会议代理服务器还接受来自客户端的取会议列表的请求,并将登记在数据库中的会议控制服务器地址列表返回给客户端。会议代理服务器还负责接收会议控制服务器和客户端发送SIP消息,并根据SIP消息中的接收地址,转发给接收方。会议代理服务器必须是公网用户,如此一来,两个私网用户也可以通过会议代理服务器收发消息了。
所述的会议控制服务器用来处理客户端的请求。在本系统中可以由多个会议控制服务器,每个会议控制服务器都首先要在会议代理服务器上注册。每一个会议控制服务器代表一个会场,客户端的加入和发言请求都需要发送会议控制服务器,会议控制服务器根据一定策略做出响应。
所述的客户端包括主持人客户端和普通客户端。主持人客户端用来主持会议,由主持人客户端来决定是否批准普通客户端的加入和发言请求,而且还可以随时停止普通客户端的发言,并且可以随时将普通客户端的踢出会议,一个会议控制服务器只能有一个主持人加入。普通客户端可以申请加入会议,申请视频发言,申请音频发言,取得会议列表和取得会议用户列表。申请加入会议批准后,客户端将收到一路音频和多路视频,申请视频发言后,客户端把本地的视频发送到加入会议的所有客户端(包括主持人),申请音频发言后,客户端把本地的音频发送到主持人客户端,由主持人客户端混音后发送给所有加入会议的客户端,本系统支持多路音频和视频发言。
本发明还提供上述系统的实现方法,包括如下步骤(1)用REGISTER消息来完成注册,注册的同时,根据注册的用户名做身份区分,其具体做法是根据用户类别在用户名后面加入不同的后缀;(2)用SUBSCRIBE和NOTIFY消息来完成取得列表,客户端向会议代理服务器发送SUBSCRIBE消息则表示客户端要取会议列表,会议代理服务器则返回NOTIFY消息并附带会议控制服务器地址;(3)请求发言和请求视音频传输都用INVITE消息实现,根据INVITE发送给客户端还是会议控制服务器和SDP是否带有视音频消息,和SDP的视音频来源可以做出不同的判断,来区此INVITE消息是请求发言,还是请求视音频传输;(4)请求视音频转发则使用了REFER消息,根据REFER消息和附带的SDP消息做出不同判断,来决定是直接转发数据,还是需要公网客户端中转;(5)停止发言和退出都用BYE消息来实现。
所述的用REGISTER消息来完成注册,具体为普通客户端、主持人客户端和会议控制服务器都需要注册到会议代理服务器,会议代理服务器根据注册名的后缀来识别注册方的身份,本系统约定普通客户端注册名后缀为“-user”,主持人客户端注册名后缀为“-admin”,会议控制服务器注册名后缀为“-server”。
所述的用SUBSCRIBE和NOTIFY消息来完成取得列表,具体为用SUBSCRIBE和NOTIFY消息实现取得会议列表和取得用户列表,客户端向会议代理服务器发送SUBSCRIBE消息,其中规定SUBSCRIBE消息中消息头的“To”的URI地址中用户名为“ConferenceList”,会议代理服务器返回NOTIFY消息,并在NOTIFY消息后附加上在会议代理服务器处注册过的会议控制服务器地址列表,客户端向会议控制服务器发送SUBSCRIBE消息,会议控制服务器返回NOTIFY消息,并在NOTIFY消息后附加加入会议控制服务器的客户端地址列表。
所述的请求发言用INVITE消息实现,具体为加入和发言请求用INVITE消息实现,而且消息要发送到会议控制服务器,加入会议发送不带有SDP消息的INVITE到会议控制服务器,申请视频发言发送只带有视频的SDP消息的INVITE到会议控制服务器,申请音频发言发送只带有音频的SDP消息的INVITE到会议控制服务器,会议控制服务器根据接到的INVITE消息中的SDP信息是否带有视频和音频来判断用户发送的是什么请求。
所述的请求视音频传输用INVITE消息实现,具体为请求传输视频和音频用INVITE消息来实现,但是消息是要发送到客户端,包括主持人,根据INVITE消息中SDP消息的“o=”后接的用户名来判断SDP携带的视音频的源,如果INVITE消息发送端想发送本地视频或者音频出去,就应该在“o=”后写自己的注册用户名,如果INVITE消息发送端想获取对方视频或者音频,就应该在“o=”后写对方的注册用户名。
所述的请求视频转发由REFER消息来实现,具体为在REFER消息中“REFER”后表示要发送的源,“REFER-to”后表示发送的目的地,REFER消息中携带的SDP消息来表示媒体信息,会议控制服务器发送REFER消息给客户端,客户端收到消息后,判断REFER消息中“REFER”后是否是自己,如果是,表示要发送或者接收视频或者音频,如果不是,表示还需要中转,则将REFER消息转发到REFER消息中的“REFER”的地址,待到对方返回OK后,发送INVITE消息并附带原REFER消息中的SDP给对方;REFER消息中SDP的“o=”后的为本地的用户名表示需要发送视音频,如果为对方用户名表示需要接收视音频,如果为第三方用户名,表示要转发第三方视音频到消息发送方。
所述的停止发言和退出都由BYE消息来实现,具体为客户端在申请发言后,可以发送BYE消息给会议控制服务器来结束此次发言,而主持也可以发送BYE消息给会议控制服务器来强制结束普通客户端的发言。会议控制服务器是有状态服务器,可以根本BYE消息中的Call-ID判断对应会话而做出不同的响应。普通客户端退出会议系统也是发送BYE消息到会议控制服务器,同时发送BYE消息到所有客户端来结束视音频的传输。
本发明系统采用扩展的SIP作为通信协议,P2P作为网络结构。由于通信协议仅占有很少网络带宽,而且为了方便于集中管理,SIP通信协议通过会议代理服务器转发。而视音频数据则通过P2P网络转发,因为视音频数据占用较大带宽,通过P2P有效减轻服务器负担。在视音频数据传输上采用RTP协议,即提高了传输的实时性又可以保证传输质量。本发明系统具有实时性好,可靠性高,容量大,灵活,方便扩展的优点。


图1是本发明视频会议系统的架构图。
图2是本发明客户端注册并取得会议和用户列表。
图3是本发明客户端申请参加视频会议。
图4是本发明客户端申请视频发言。
图5是本发明客户端申请音频发言。
具体实施例方式
如图1所示,本发明视频会议系统包括会议代理服务器、会议控制服务器和客户端三大部分,系统采用扩展的SIP作为通信协议,P2P作为网络结构。
所述的会议代理服务器用来管理会议控制服务器和客户端。会议代理服务既有提供注册登陆的功能还有代理的功能,所用的SIP消息都从会议代理服务器转发。在本系统中有而只有一台会议代理服务器,会议代理服务器接受来自会议控制服务器和客户端的注册请求,并将注册过的会议控制服务器和客户端登记在会议代理服务器的数据库中。会议代理服务器还接受来自客户端的取会议列表的请求,并将登记在数据库中的会议控制服务器地址列表返回给客户端。会议代理服务器还负责接收会议控制服务器和客户端发送SIP消息,并根据SIP消息中的接收地址,转发给接收方。会议代理服务器必须是公网用户,如此以来,两个私网用户也可以通过会议代理服务器收发消息了。
所述的会议控制服务器用来处理客户端的请求。在本系统中可以由多个会议控制服务器,每个会议控制服务器都首先要在会议代理服务器上注册。每一个会议控制服务器代表一个会场,客户端的加入和发言请求都需要发送会议控制服务器,会议控制服务器根据一定策略做出响应。
所述的客户端包括主持人客户端和普通客户端。主持人客户端用来主持会议,由主持人客户端来决定是否批准普通客户端的加入和发言请求,而且还可以随时停止普通客户端的发言,并且可以随时将普通客户端的踢出会议,一个会议控制服务器只能有一个主持人加入。普通客户端可以申请加入会议,申请视频发言,申请音频发言,取得会议列表和取得会议用户列表。申请加入会议批准后,客户端将收到一路音频和多路视频,申请视频发言后,客户端把本地的视频发送到加入会议的所有客户端(包括主持人),申请音频发言后,客户端把本地的音频发送到主持人客户端,由主持人客户端混音后发送给所有加入会议的客户端,本系统支持多路音频和视频发言。
所述的客户端分为私网和公网两种,会议控制服务器根据客户端发送的INVITE消息来判断客户端是私网还是公网,会议控制服务器收到INVITE消息后,根据INVITE消息中的“Contact”地址端口和收到INVITE消息的IP包的地址端口对比,如果两者一致,则发送INVITE消息客户端是公网,否则就是私网;P2P互连的原则是两个客户端如果至少有一个为公网,则直连传输,两个同为私网的客户端传输数据,中间只通过一个公网客户端转发;如果公网客户端A要发送视频给所有客户端,会议控制服务器通知所有客户端连接客户端A并取得A的视频,同理,如果私网客户端B要发送视频给所有客户端,服务器通知所有公网客户端连接客户端B取得B的视频,同时会议控制服务器通知剩下的私网客户端分别到公网客户端取得客户端B的视频。
本发明系统传输视频采用P2P,传输音频则是将音频发言者的音频传输到主持人客户端,在主持人客户端做混音处理后在发送给每个客户端,如果音频发言者和主持人其中至少有一个为公网用户,则音频发言者可直接传输,但是如果两者同为私网用户则需要服务器通知另一公网客户端来做转发。
如图2所示,会议控制服务器首先发送REGISTER消息到会议代理服务器完成注册,每个会议控制服务器都要首先注册到会议代理服务器,而且会议控制服务器在每隔一段时间都要向会议代理服务器重新注册一次,这个间隔时间在REGISTER消息中的“Expires”中指出,如果会议控制服务器在这个间隔时间内没有重新注册的话,会议代理服务器就认为会议控制服务器已经注销了。各种不注册用户的区分是通过注册的用户名后缀完成的,不同类型的注册用户有不同的用户名后缀。客户端也发送REGISTER消息到会议代理服务器完成注册。完成注册后,客户端首先发送SUBSCRIBE消息到会议代理服务器,其中SUBSCRIBE消息中消息头的“To”的URI地址中用户名为“ConferenceList”,会议代理服务器接收SUBSCRIBE消息后返回NOTIFY消息,并附带在本地注册过的会议控制服务器的URI。
如图3所示,客户端A发送不带有SDP的INVITE消息给会议控制服务器,首先会议控制服务器根据客户端A发送的INVITE消息来判断客户端A是否为公网用户,如果INVITE消息中的“Contact”地址端口和收到INVITE消息的IP包的地址端口一致则认为客户端A为公网用户,否则为私网用户。此处客户端A为私网用户。因为客户端A与客户端D都是私网用户,所以客户端A无法直接与客户端D连接,需要从另外一个公网客户端取得D的视频。然后会议控制服务器转发此INVITE消息给主持人客户端B请求批准,主持人B批准请求就返回OK消息给会议控制服务器,主持人B拒绝请求就返回Decline消息给会议控制服务器。会议控制服务器根据主持人返回的消息做出不同的响应。如果主持人B返回Decline消息,会议控制服务器则将此消息转发给客户端A,客户端A收到Decline消息表示请求被拒绝。如果主持人B返回OK消息,会议控制服务器首先将此消息转发给客户端A,客户端A收到OK消息后等待其他客户端的连接。会议控制服务器将OK消息转发给客户端A后,会议控制服务器向其他已经参加会议并申请了视频发言的用户发送REFER消息,如图所示会议控制服务器向主持人B,客户端C,客户端D。发送给主持人B的REFER消息中“REFER”参数为B的URI地址,“REFER-to”参数为A的URI地址,SDP的“o=”参数也为B的URI地址,SDP包含视频和音频。客户端B收到此REFER消息后就会发送INVITE消息给A,然后发送自己的视频和音频给A。发送给客户端C的REFER消息中“REFER”参数为C的URI地址,“REFER-to”参数为A的URI地址,SDP的“o=”参数也为c的URI地址,SDP包含视频。客户端C收到此REFER消息后就会发送INVITE消息给A,然后发送自己的视频给A。发送给客户端D的REFER消息中“REFER”参数为C的URI地址,“REFER-to”参数为A的URI地址,SDP的“o=”参数也为D的URI地址,SDP包含视频。客户端D收到REFER消息后,将此REFER消息转发给C,C收到D发送的REFER消息后发送INVITE消息给A,然后发送D的视频给A。因为D参加了会议,而且申请了视频发言,所以C处一定已经有D的视频,当D不能与A互连的时候,D就根据REFER消息通知C,让C发送D的视频给A。
如图4所示,客户端A发送带有视频SDP的INVITE消息给会议控制服务器,首先会议控制服务器判断出客户端A为私网用户,所以私网客户端D无法直接与客户端A连接,所以客户端D需要从另外一个公网客户端取得A的视频。然后会议控制服务器将此消息转发给主持人B请求批准。主持人B返回OK消息批准后,会议控制服务器发送REFER消息给主持人B,客户端C和客户端D。发送给主持人B和客户端C的REFER消息中“REFER”参数分别为B和C的URI地址,“REFER-to”参数为A的URI地址,附带在REFER消息中的SDP消息为A的视频。主持人B和客户端C收到REFER消息后,先返回OK,然后发起INVITE消息到客户端A,接收客户端A发送的A的视频。会议控制服务器发送给客户端D的REFER消息中“REFER”参数为C,“REFER-to”参数为A的URI地址,附带在REFER消息中的SDP消息仍为A的视频。客户端D收到REFER消息后,将此消息转发给客户端C,待客户端C返回OK后,客户端发送INVITE消息给客户端C,来请求A的视频。客户端C在接收到客户端A的视频后返回OK给客户端D,然后将客户端A的视频转发给客户端D。
如图5所示,客户端A发送带有音频SDP的INVITE消息给会议控制服务器,首先会议控制服务器判断出客户端A为私网用户,而主持人B也为私网用户,所以客户端A的音频无法直接发送到支持人B,需要先发送到另外一个公网客户端,再从此公网客户端转发到主持人B。然后会议控制服务器将此消息转发给主持人B请求批准。主持人B返回OK消息批准后,会议控制服务器发送REFER消息给主持人B。在此REFER消息中“REFER”参数为客户端C的URI地址,“REFER-to”参数为客户端A的地址,附带的SDP消息指出为A的音频。主持人B收到REFER消息后,发现REFER消息中的“REFER”参数不是自己的URI地址,于是将此消息转发给客户端C,待客户端C返回OK后,发送INVITE消息给C来从C取得A的音频。客户端C收到主持人B发送的REFER消息后,发现自己本地也没有A的音频,所以发送INVITE消息给A,从A处取得音频,待A返回OK后,返回OK给主持人B,然后从A处接收音频转发给主持人B。主持人B在收到A的音频后,与会议中其他音频发言者音频做混音处理,然后发给所有客户端。
权利要求
1.一种基于P2P和SIP的视频会议系统,包括会议代理服务器、会议控制服务器和客户端,其特征在于采用扩展的SIP作为通信协议,P2P作为网络结构,其中会议代理服务器用来管理会议控制服务器和客户端,会议代理服务既提供注册登陆功能还提供代理功能,所用的SIP消息都从会议代理服务器转发;会议代理服务器接受来自会议控制服务器和客户端的注册请求,并将注册过的会议控制服务器和客户端登记在会议代理服务器的数据库中,会议代理服务器还接受来自客户端的取得会议列表的请求,并将登记在数据库中的会议控制服务器地址列表返回给客户端,会议代理服务器还负责接收会议控制服务器和客户端发送SIP消息,并根据SIP消息中的接收地址,转发给接收方;会议代理服务器必须是公网用户;会议控制服务器用来处理客户端的请求,每个会议控制服务器都首先要在会议代理服务器上注册,每一个会议控制服务器代表一个会场,客户端的加入和发言请求都需要发送会议控制服务器,由会议控制服务器做出响应;客户端包括主持人客户端和普通客户端,主持人客户端用来主持会议,由主持人客户端来决定是否批准普通客户端的加入和发言请求,而且还能随时停止普通客户端的发言,以及随时将普通客户端的踢出会议,一个会议控制服务器只能有一个主持人加入,普通客户端可申请加入会议,申请视频发言,申请音频发言,取得会议列表和取得会议用户列表。
2.如权利要求1所述的基于P2P和SIP的视频会议系统,其特征是,所述的客户端分为私网和公网两种,会议控制服务器根据客户端发送的INVITE消息来判断客户端是私网还是公网,会议控制服务器收到INVITE消息后,根据INVITE消息中的“Contact”地址端口和收到INVITE消息的IP包的地址端口对比,如果两者一致,则发送INVITE消息客户端是公网,否则就是私网;P2P互连的原则是两个客户端如果至少有一个为公网,则直连传输,两个同为私网的客户端传输数据,中间只通过一个公网客户端转发;如果公网客户端A要发送视频给所有客户端,会议控制服务器通知所有客户端连接客户端A并取得A的视频,同理,如果私网客户端B要发送视频给所有客户端,服务器通知所有公网客户端连接客户端B取得B的视频,同时会议控制服务器通知剩下的私网客户端分别到公网客户端取得客户端B的视频。
3.如权利要求2所述的基于P2P和SIP的视频会议系统,其特征是,系统传输视频完全采用P2P,传输音频则是将音频发言者的音频传输到主持人客户端,在主持人客户端做混音处理后再发送给每个客户端,如果音频发言者和主持人其中至少有一个为公网用户,则音频发言者可直接传输,但是如果两者同为私网用户则需要服务器通知另一公网客户端来做转发。
4.一种如权利要求1所述的基于P2P和SIP的视频会议系统的实现方法,其特征在于,包括如下步骤(1)用REGISTER消息来完成注册,注册的同时,根据注册的用户名做身份区分,其具体做法是根据用户类别在用户名后面加上不同的后缀;(2)用SUBSCRIBE和NOTIFY消息来完成取得列表,客户端向会议代理服务器发送SUBSCRIBE消息则表示客户端要取会议列表,会议代理服务器则返回NOTIFY消息并附带会议控制服务器地址;(3)请求发言和请求视音频传输都用INVITE消息实现,根据INVITE发送给客户端还是会议控制服务器和SDP是否带有视音频消息,和SDP的视音频来源做出判断,来区别此INVITE消息是请求发言,还是请求视音频传输;(4)请求视频转发由REFER消息来实现,根据REFER消息和附带的SDP消息做出不同判断,来决定是直接转发数据,还是需要公网客户端中转;(5)停止发言和退出都用BYE消息来实现。
5.根据权利要求4所述的基于P2P和SIP的视频会议系统的实现方法,其特征是,所述的用REGISTER消息来完成注册,具体为普通客户端、主持人客户端和会议控制服务器都需要注册到会议代理服务器,会议代理服务器根据注册名的后缀来识别注册方的身份,本系统约定普通客户端注册名后缀为“-user”,主持人客户端注册名后缀为“-admin”,会议控制服务器注册名后缀为“-server”。
6.根据权利要求4所述的基于P2P和SIP的视频会议系统的实现方法,其特征是,所述的用SUBSCRIBE和NOTIFY消息来完成取得列表,具体如下用SUBSCRIBE和NOTIFY消息实现取得会议列表和取得用户列表,其中,取得会议列表,具体为客户端向会议代理服务器发送SUBSCRIBE消息,其中规定SUBSCRIBE消息中消息头的“To”的URI地址中用户名为“ConferenceList”,会议代理服务器返回NOTIFY消息,并在NOTIFY消息后附加上在会议代理服务器处注册过的会议控制服务器地址列表;取得用户列表,具体为客户端向会议控制服务器发送SUBSCRIBE消息,会议控制服务器返回NOTIFY消息,并在NOTIFY消息后附加加入会议控制服务器的客户端地址列表。
7.根据权利要求4所述的基于P2P和SIP的视频会议系统的实现方法,其特征是,所述的请求发言用INVITE消息实现,具体为加入和发言请求用INVITE消息实现,而且消息要发送到会议控制服务器,加入会议发送不带有SDP消息的INVITE到会议控制服务器,申请视频发言发送只带有视频的SDP消息的INVITE到会议控制服务器,申请音频发言发送只带有音频的SDP消息的INVITE到会议控制服务器,会议控制服务器根据接到的INVITE消息中的SDP信息是否带有视频和音频来判断用户发送的是什么请求。
8.根据权利要求4所述的基于P2P和SIP的视频会议系统的实现方法,其特征是,所述的请求视音频传输用INVITE消息实现,具体为请求传输视频和音频用INVITE消息来实现,但是消息是要发送到客户端,包括主持人,根据INVITE消息中SDP消息的参数“o=”后接的用户名来判断SDP携带的视音频的源,如果INVITE消息发送端想发送本地视频或者音频出去,就应该在“o=”后写自己的注册用户名,如果INVITE消息发送端想获取对方视频或者音频,就应该在“o=”后写对方的注册用户名。
9.根据权利要求4所述的基于P2P和SIP的视频会议系统的实现方法,其特征是,所述的请求视频转发由REFER消息来实现,具体为在REFER消息中参数“REFER”后表示要发送的源,参数“REFER-to”后表示发送的目的地,REFER消息中携带的SDP消息来表示媒体信息,会议控制服务器发送REFER消息给客户端,客户端收到消息后,判断REFER消息中参数“REFER”后是否是自己,如果是,表示要发送或者接收视频或者音频,如果不是,表示还需要中转,则将REFER消息转发到REFER消息中的参数“REFER”的地址,待到对方返回OK后,发送INVITE消息并附带原REFER消息中的SDP给对方;REFER消息中SDP的参数“o=”后的为本地的用户名表示需要发送视音频,如果为对方用户名表示需要接收视音频,如果为第三方用户名,表示要转发第三方视音频到消息发送方。
10.根据权利要求4所述的基于P2P和SIP的视频会议系统的实现方法,其特征是,所述的停止发言和退出都由BYE消息来实现,具体为客户端在申请发言后,发送BYE消息给会议控制服务器来结束此次发言,而主持也可发送BYE消息给会议控制服务器来强制结束普通客户端的发言,会议控制服务器是有状态服务器,并根据BYE消息中的Call-ID判断对应的会话而做出不同的响应,普通客户端退出会议系统也是发送BYE消息到会议控制服务器,同时发送BYE消息到所有客户端来结束视音频的传输。
全文摘要
本发明公开了一种基于P2P网络和SIP协议的视频会议系统及其实现方法,该系统包括会议代理服务器,会议控制服务器和客户端三大部分。客户端又分为主持人客户端和普通客户端两种。本系统采用扩展的SIP作为通信协议,P2P作为网络结构。由于通信协议仅占有很少网络带宽,而且为了方便于集中管理,SIP通信协议通过会议代理服务器转发。而视音频数据则通过P2P网络传输,因为视音频数据占用较大带宽,通过P2P网络有效的减轻服务器负担。在视音频数据传输上采用RTP协议,即提高了传输的实时性又可以保证传输质量。本系统具有实时性好,可靠性高,容量大,灵活,方便扩展的优点。
文档编号H04L29/06GK1889676SQ200610027170
公开日2007年1月3日 申请日期2006年6月1日 优先权日2006年6月1日
发明者王菲, 申瑞民, 王加俊, 童任, 陈晴 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1