|
SAP并不是向每个参与者一一发通知数据包,它是通过多播的机制(multicast)向一个已知的多播地址和端口一次性发送一个通知数据包,该多播组内的成员如果工作正常的化就会收到该通知数据包。因此,为了使会议的参与者都能够接收到通知,就要确保其参加到该多播组内。
一个通知数据报除了可以通知某会话将要发起外,还可以通知该会话取消了或该会话的某些通信参数已被修改了。当然,这需要相应机制使这几个通知都是针对同一会话的。
那么SAP如何描述会话的相关信息,这就需要借助SDP协议了。在SAP数据包的payload字段中一般情况下填充的就是SDP数据,它描述了建立会话所必要的基本信息。
SDP将在1.3节中介绍。
2.3 SDP协议介绍与分析
上面介绍的两个协议都用到了SDP,实际上SDP就是用来描述多媒体会话通告,多媒体会话邀请和其他形式的多媒体会话初始化的协议。SDP包通常包括以下信息:
(1)会话信息
· 会话名和目的。
· 会话活动时间。
由于参与会话的资源是受限制的,因此包括以下附加信息是非常有用的。
· 会话使用的带宽信息。
· 会话负责人的联系信息。
(2)媒体信息
· 媒体类型,例如视频和音频。
· 传输协议,例如RTP/UDP/IP和H.320。
· 媒体格式,例如H.261视频和MPEG视频。
· 多播地址和媒体传输端口(IP多播会话)。
· 用于联系地址的媒体和传输端口的远端地址(IP单播会话)。
SDP描述由许多文本行组成,文本行的格式为<类型>=<值>,<类型>是一个字母,<值>是结构化的文本串,其格式依<类型>而定。
3 SAP、SIP、SDP组合应用实例
在这个应用实例中,我们设计了这样一种场景:某公司领导需要与本公司各部门负责人召开电视会议。他使用的多媒体会议系统采用了本文所描述的这种SAP、SIP、SDP组合应用技术。该公司领导首先通过一台具有Web浏览功能的客户机登陆会议服务器,注册一个会议。在注册的同时,他就将各部门负责人纳入了本次会议的参与者之列(当然,还需要该公司领导和各部门负责人的客户机在同一个多播组内)。然后,他在页面上点击一个“会议通知”按钮,会议服务器就通过SAP协议向本次会议的各参与者(包括公司领导和部门负责人)所在客户机发送召开会议的通知。此时,若各参与者所在客户机是正常的连接到网络上并且SAP通知接收器正常工作的话,它就会以声音或图形的方式通知该参与者,同时准备好本客户机参加此次会议的客户端程序。当各参与者发现会议通知后,他在已经准备好的会议客户端程序上点击一个“参加会议”的按钮,客户端就通过SIP协议将该客户机轻松地加入到会议之中。当参与者到齐后,在会议主席(公司领导)的控制下,此次会议就可以正式开始了。
各参与者客户机上的SAP通知接收器接收到会议通知后,它会尽可能地调用客户机上的各种资源以满足本次会议的要求,如果实在不能够满足的话,它也可以以书面形式通知参与者本机所缺的资源。在整个会议的SAP、SIP交互过程中都用到了SDP协议来描述会话和媒体信息。简要流程如附图所示。
4 结束语
SAP、SIP、SDP都不是孤立的协议,只有在相互组合与协调并且与其他协议配合的情况下,才能够发挥它们应有的强大作用。本文给出了SAP、SIP、SDP组合应用的一个实例,这样的应用其实还很多,例如将本文的技术稍加改动也可用于楼宇的多点视频自动监控系统中。随着上述协议的进一步发展和普及,我们坚信SAP、SIP、SDP将会广泛地应用于NGN(下一代网络)、3Tnet(高性能宽带信息网)等宽带多媒体应用中。 |