RFC2974: Session Announcement Protocol¶
October 2000
Category: Experimental
会话公告协议,用于广播多媒体会话的存在和相关参数,客户端可以通过 SAP 获取会话信息并决定是否参加。SAP 中也会携带 SDP 信息。
SAP 是比较早期用于会话发现和通告的协议,随着 web 技术的发展,现在更多使用 web 服务来发现和通告会话,这减少了 SAP 的使用需求。
SAP 只提供会话层面的信息发现,而SIP除了会话控制外,还可以提供更丰富的会话管理功能,如权限控制、预sence 等,所以SIP已取代SAP成为主流的会话控制协议。
SAP 基于 UDP 多播,部署和管理比较复杂。而SIP基于TCP/UDP单播,部署更简单,管理也更方便,这也是SIP获胜的一个原因。
目前主流的IP语音产品,如Skype, WhatsApp等都采用SIP/SDP而非SAP,这也影响了SAP的采用率。
综上,SAP作为早期的会话发现和通告协议,其重要性已被其他更强大和易用的机制所取代,因此现在使用频度较低。但SAP仍然在某些场景下提供了会话发现的机制,也还有其存在的意义和使用价值。
SAP 的主要替代技术有:
1. SIP(Session Initiation Protocol)。SIP不仅可以用于会话的发起和控制,也可以用于会话的发现。所以在会话发现场景下,SIP已广泛替代SAP。
2. Web服务。使用web服务来发布和发现会话信息已经很普遍,这减少了对SAP的需求。例如,可以使用REST API来发布会话信息,客户端可以调用这些API来发现会话。
3. 基于HTTP的会话通告协议。例如channel announcement等协议,它定义了一种通过HTTP来发布和获取实时通信会话信息的格式,这也能替代SAP进行会话发现。
4. P2P技术。对等网络技术也可以用于会话的发现,如基于DHT的会话发现机制等。这也提供了一种替代SAP的会话发现方案。
5. 各种定制发现协议。很多系统或产品会定义自己的会话发现格式和机制,来满足自身的需求。这也间接的取代了SAP。