SDP协议学习

1.什么是SDP

SDP(Session Description Protocol)它只是一种信息格式的描述标准,本身不属于传输协议,但是可以被其他传输协议用来交换必要的信息。

2.SDP规范

多个媒体描述:对于终端来说有几路视频和音频,每一路音频视频使用的哪些编解码器,编解码器的参数的描述等

一个会话级描述:使用的SDP协议版本,使用的网络是什么(全局的),会话只有一个,全局的。

由多个=组成:

3.会话层:

会话的名称和目的

会话的存活时间

会话中包括多个媒体信息

4.媒体层(媒体层是在会话层之内的)

媒体格式 

传输协议

传输的IP端口

媒体负载类型

5.SDP描述信息

5.1.Session Description

 v=(protocol version)

o=(owner/create and session identifier)

s=(session name)

c=*(conn info - optional if included at session-level)

t=(time the session is active)

a=*(zero or more session attribute lines) 可以有0个或多个属性

5.2.Media Description

m=(media name and transport address)

c=*(conn ifno - optional if included at session-level) 连接信息,如果会话层有就用会话层的

b=*(bandwidth information)带宽信息

a=*(zero or more session attribute lines)

6.字段含义:

version必选: v=0 SDP的版本号,不包括次版本号

Session Name 必选 s= 会话名, s=-表示忽略会话名

Origin/Owner 必选 : o=

例子: o70176245868360677562 IN IP4 127.0.0.1

Connection 可选:c=

例:c=IN IP4 0.0.0.0

Media必选:m=

例:m=audio 1024 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 126

 底层用的udp协议,udp上的安全套接字DTLS, UDP上使用的是RTP(SRTP), 内容包含s:安全, A:audio, V :video, P:可配置

F:feedback

Attributes 可选 :a=或a=:

例子:a=framerate:<帧速率>

rtpmap 可选 

a=rtpmap: /[/]

fmtp可选

a=fmtp: parameters

例:a=fmtp:103 apt=106

你可能感兴趣的:(网络协议,SDP)