会话描述协议(SDP)为会话通知、会话邀请和其它形式的多媒体会话初始化等目的提供了多媒体会话描述。它只是用来描述,而不是一种传输协议。举例,在SIP协议的Message Header的Content-type字段为application/sdp,表明使用的是SDP协议。

SDP 会话描述如下:(标注 * 符号的表示可选字段):

协议结构



v = (协议版本) (v=0表明使用RFC4566)

o = (所有者/创建者和会话标识符) o=<username>
<session id> <version> <network type> <address type><address>

<username> 是登录会话起源主机的用户ID,如果会话起源主机没有用户ID的概念用"-"表示。用户ID不能包含空格。

<session id> 是数字串,<username>, <session id>, <network type>,<address type> 和 <address> 在一个会话中是全局唯一的。 <session id> 的分配方法依赖于创建工具,但通常建议用网络时间协议Network Time Protocol (NTP)的时间戳以保证它的唯一性。

<version>是宣告(announcement)的版本号。代理宣告(proxy announcements)需要使用它来探测同一个会话中哪些宣告是最近的,另外,它的使用依赖于创建工具。每一次会话数据的修改,需要增加<version>,建议(并非强制)使用NTP的时间戳。

<network type> 是描述网络类型的字符串。"IN"表示"Internet"。

<address type>是描述地址类型的字符串。目前定义了"IP4"、"IP6"。

<address> 是创建会话的机器的唯一全局地址。对于IP4类型,它是机器名或点号分割的IP地址。如果离开局域网,不要使用本地IP,因为这个IP已经没有什么意义。

s = (会话名称)  "s="
域指示会话名,每一个会话有且只有一个"s=" 域.

i = * (会话信息)  i=<session
description>

"i=" 域指示会话相关信息。 会话描述层至多可以有一个"i="域,每个媒体也可以至多有一个"i="域。"i="域是非强制的,可以省略。在媒体定义中,"i=" 域主要是标识一个媒体流。对于一种媒体类型有多个媒体流是很有用的,比如:有两个白板,一个用于放映幻灯,一个用于交流。

u = * (URI 描述) u=<URI>

一个URI是一个WWW资源的唯一资源标识符(Universal Resource Identifier);一个URI应该是一个会议的额外信息指示器;这个域是可选的,但是如果指定,它应该在第一个媒体域之前出现;每一个会话描述不能有超过一个的URI域。

e = * (Email 地址) e=<email
address>

p = * (电话号码) p=<phone
number>

c = * (连接信息 ― 如果包含在所有媒体中,则不需要该字段) 

b = * (带宽信息)

z = * (时间区域调整) 

k = * (加密密钥) 

a = * (0 个或多个会话属性行) 

时间描述



t = (会话活动时间) 

r = * (0或多次重复次数)

媒体描述

m = (媒体名称和传输地址) (常见的有‘audio’语音。‘video’视频)

i = * (媒体标题) 

c = * (连接信息 — 如果包含在会话层则该字段可选) 

b = * (带宽信息) 

k = * (加密密钥) 

a = * (0 个或多个会话属性行)

  

SDP协议的更多相关文章

  1. 蓝牙的SDP协议总结

    1.概念     SDP协议让客户机的应用程序发现存在的服务器应用程序提供的服务以及这些服务的属性.SDP只提供发现服务的机制,不提供使用这些服务的方法.每个蓝牙设备都需要一个SDP Service, ...

  2. SDP协议译稿(Part 1)

    本文的翻译内容是基于Bluetooth Core Spec 2.1+EDR 协议中对SDP的描述,很多都是个人的理解,难免有疏漏,有争议或者疑问的地方,欢迎在此留言进行探讨. 2. Overview ...

  3. SDP协议分析

    一.SDP协议介绍 SDP 完全是一种会话描述格式 ― 它不属于传输协议 ― 它只使用不同的适当的传输协议,包括会话通知协议(SAP).会话初始协议(SIP).实时流协议(RTSP).MIME 扩展协 ...

  4. [转] SDP协议

    [转] SDP协议 http://blog.csdn.net/dxpqxb/article/details/18706471 1.SDP协议概述 SDP(Session Description Pro ...

  5. 蓝牙SDP协议概述

    之前写了一篇 bluedroid对于sdp的实现的源码分析   ,他其实对于sdp 协议本身的分析并不多,而是侧重于 sdp 处于Android bluedroid 架构中的代码流程,这篇文章,是针对 ...

  6. SDP协议简述

    SDP协议也是文本协议,只需要按照协议本身的格式填充.SDP协议格式即详细信息如下: 会话描述 格式及举例 v=(protocol version) v=0 o=(owner/creator and ...

  7. (转)SDP协议概述

    1 简介 SDP 完全是一种会话描述格式, 它不属于传输协议. 它使用不同的适当的传输协议,包括会话通知协议(SAP).会话初始协议(SIP). 实时流协议(RTSP).MIME 扩展协议的电子邮件以 ...

  8. SDP协议介绍

    一.SDP协议介绍 SDP 完全是一种会话描述格式 ― 它不属于传输协议 ― 它只使用不同的适当的传输协议,包括会话通知协议(SAP).会话初始协议(SIP).实时流协议(RTSP).MIME 扩展协 ...

  9. rtsp和sdp协议简介

    RTSP是由Real network 和Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议. 实时流协议(RTSP)建立并控制一个或几个时间同步的连续流媒体,如音频和视频.尽管 ...

随机推荐

  1. 对boost::shared_from_this的进一步封装

    对boost::shared_from_this的进一步封装 熟悉异步编程的同学可能会对boost::shared_from_this有所了解.我们在传入回调的时候,通常会想要其带上当前类对象的上下文 ...

  2. Hadoop2.4.1入门实例:MaxTemperature

    注意:以下内容在2.x版本与1.x版本同样适用,已在2.4.1与1.2.0进行测试. 一.前期准备 1.创建伪分布Hadoop环境,请参考官方文档.或者http://blog.csdn.net/jed ...

  3. fitness

    大家一定要小心那些有6块腹肌的男人和永远保持好身材的女人 这些人拥有你所想不到的决心和意志力 还要小心那些冬天里 能唰的一下起床的人 他们什么事都能干的.

  4. [C++程序设计]指针数组和指向指针的指针

    指针数组的概念 一维指针数组的定义形式为 类型名*数组名[数组长度]; 例如 int *p[4]; 可以用指针数组中各个元素分别指向若干个字符串,使字符串处理更加方便灵活

  5. 网关协议学习:CGI、FastCGI、WSGI、uWSGI

    一直对这四者的概念和区别很模糊,现在就特意梳理一下它们的关系与区别. CGI CGI即通用网关接口(Common Gateway Interface),是外部应用程序(CGI程序)与Web服务器之间的 ...

  6. Mysql 6.7.7 + EntityFramework 5.0 Code First 不能 Update-Database 问题的解决

    1.修改 Migrations/Configuration.cs 文件 namespace DataModel.Migrations { using System; using System.Data ...

  7. basename $0的用法

    basename 从文件名中去掉路径信息, 只打印出文件名. 结构 basename $0 可以让脚本知道它自己的名字, 也就是, 它被调用的名字. 可以用来显示用法信息, 比如如果你调用脚本的时候缺 ...

  8. mvn多模块开发消除重复依赖造成的打包失败

    错误信息: [ERROR] Failed to execute goal on project xiaoyiweifu-core: Could not resolve dependencies for ...

  9. vs 2013打开vs 2008解决方案问题解决

    同时安装了vs 2013和vs 2008后,双击vs 2008的解决方案,会出现直接用vs 2013打开的问题. 解决以上问题: 右键选择VS 2008的解决方案,选择开发方式->选择默认程序, ...

  10. 九、 合成(Composite)模式 --结构模式(Structural Pattern)

    合成模式:有时又叫做部分-整体模式(Part-Whole).合成模式将对象组织到树结构中,可以用来描述整体与部分的关系.合成模式可以使客户端将单纯元素与复合元素同等看待. 合成模式分为安全式和透明式 ...