SDP協議的概念和結構
下面我們為大家介紹一下SDP協議。那么這個協議的具體作用更是什么呢?它的意思又是什么呢?會話描述協議(SDP)為會話通知、會話邀請和其它形式的多媒體會話初始化等目的提供了多媒體會話描述。
會話目錄用于協助多媒體會議的通告,并為會話參與者傳送相關設置信息。SDP協議即用于將這種信息傳輸到接收端。SDP完全是一種會話描述格式 ― 它不屬于傳輸協議 ― 它只使用不同的適當的傳輸協議,包括會話通知協議(SAP)、會話初始協議(SIP)、實時流協議(RTSP)、MIME 擴展協議的電子郵件以及超文本傳輸協議(HTTP)。
SDP的設計宗旨是通用性,它可以應用于大范圍的網絡環境和應用程序,而不僅僅局限于組播會話目錄,但SDP不支持會話內容或媒體編碼的協商。
在因特網組播骨干網(Mbone)中,會話目錄工具被用于通告多媒體會議,并為參與者傳送會議地址和參與者所需的會議特定工具信息,這由SDP完成。SDP連接好會話后,傳送足夠的信息給會話參與者。SDP協議的信息發送利用了會話通知協議(SAP),它周期性地組播通知數據包到已知組播地址和端口處。這些信息是 UDP 數據包,其中包含 SAP協議頭和文本有效載荷(text payload)。這里文本有效載荷指的是SDP會話描述。此外信息也可以通過電子郵件或 WWW (World Wide Web) 進行發送。
SDP文本信息包括:
會話名稱和意圖;
會話持續時間;
構成會話的媒體;
有關接收媒體的信息(地址等)。
協議結構
SDP協議的信息是文本信息,采用 UTF-8 編 碼中的 ISO 10646 字符集。
SDP會話描述如下:(標注 * 符號的表示可選字段):
v = (協議版本)
o = (所有者/創建者和會話標識符)
s = (會話名稱)
i = * (會話信息)
u = * (URI 描述)
e = * (Email 地址)
p = * (電話號碼)
c = * (連接信息 ― 如果包含在所有媒體中,則不需要該字段)
b = * (帶寬信息)
一個或更多時間描述(如下所示):
z = * (時間區域調整)
k = * (加密密鑰)
a = * (0 個或多個會話屬性行)
0個或多個媒體描述(如下所示)
時間描述
t = (會話活動時間)
r = * (0或多次重復次數)
媒體描述
m = (媒體名稱和傳輸地址)
i = * (媒體標題)
c = * (連接信息 — 如果包含在會話層則該字段可選)
b = * (帶寬信息)
k = * (加密密鑰)
a = * (0 個或多個會話屬性行)