
rtsp和http类,属于应用层协议
通过socket rtsp命令来进行通讯。
常用控制命令执行顺序常用的是5个命令:
1,OPTIONS,//询问server,那些命令可用
2,DESCRIBE,//请求rtsp路径的媒体描述信息
3,SETUP,//设置会话的属性,以及传输模式,建立会话
GET_PARAMETER,//取得流控制参数,可能某些服务器不支持
SET_PARAMETER,//设置流控制参数,可能某些服务器不支持
4,PLAY,//开始播放流媒体数据
5,TEARDOWN //关闭对话
————————————
ANNOUNCE, //更新会话描述
PAUSE,//临时停止流,而不释放服务器资源
client有请求(request),server就有应答(response)
一般控制命令基于tcp协议。媒体数据传输使用udp。
————————————
参考http:和rtsp在功能上有相重叠的地方,RTSP采用了HTTP/1.1 大多数的状态码,并且增加了RTSP特定的状态码。
HTTP协议定义了8种可能的请求方法:
GET 检索URI中标识资源的一个简单请求
HEAD 与GET方法相同,服务器只返回状态行和头标,并不返回请求文档
POST 服务器接受被写入客户端输出流中的数据的请求
PUT 服务器保存请求数据作为指定URI新内容的请求
DELETE 服务器删除URI中命名的资源的请求
OPTIONS 关于服务器支持的请求方法信息的请求
TRACE Web服务器反馈Http请求和其头标的请求
CONNECT 已文档化但当前未实现的一个方法,预留做处理
————————————
rtsp和http的协议规范分别在RFC2326 和 RFC2616有详细描述
mms协议为微软的私有协议,未公开协议。采用私有自定义控制结构体来发送命令,而不是像http,rtsp协议采用发送文本命令控制。rtsp协议 实例
实例分析:
s:source host
d:dest host
第一步:握手
三次握手,端口554
s->d syn,seq=0,
d-> syn,ack seq=0
s->d ack,seq=1
2,s->d describe
第二步:
发送:
DESCRIBE rtsp://xxxx.rm RTSP/1.0
User-Agent: NSPlayer/9.0.0.2980 guid/51C94674-351C-432F-96E7-4F29052808FB
X-Accept-Authentication: Negotiate, NTLM, Digest, Basic
CSeq: 1
返回片源的pdu:(信息包括片源的版本和描述信息等等)
RTSP/1.0 200 OK

Content-Type: application/sdp
Vary: Accept
X-Playlist-Gen-Id: 24517
X-Broadcast-Id: 0
Content-Length: 4634
Date: Thu, 08 Jul 2010 03:51:42 GMT
CSeq: 1
Server: WMServer/9.1.1.3814
Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-47686-1.html
其实很发财