RTMPT
?
轉自http://www.openred5.com/bbs/viewthread.php?tid=196
英文原地址:http://www.joachim-bauch.de/tutorials/red5/SPEC-RTMPT.html/view
?
等一段時間后我也去整理一個出來,因為現在還沒有用到rtmpt,只用到rtmp和rtmpe,所以沒有時間去研究。
譯:RTMPT協議說明書
SPEC-RTMPT_zh_CN.txtRTMPT協議說明書
===================================
:author:? ? Joachim Bauch
:contact:? ?mail@joachim-bauch.de
:date:? ?? ?2006-03-23
:copyright: `Creative Commons License (by-sa)`__
__ http://creativecommons.org/licenses/by-sa/2.5/
翻譯:屹礫(www.OpenRed5.com#glseda)
聯系:glseda@qq.com
日期:2007-06-17
譯者的話:
Red5的資料有點亂,沒有什么頭緒。但是把這些資料翻譯成中文多少會有一些幫助,即使有時翻譯的內容也不是那會容易看懂。如果大家有時間,也希望能夠選擇一些資料翻譯出來,然后發布到OpenRed5中文社區http://www.OpenRed5.com,讓我們大家共同進步。
概述
--------
此文檔描述RTMPT通道協議在Red5開源FLASH服務器上的實現。請注意:此文檔不是Macromedia官方規范說明書,但是可以幫助人們開始使用RTMPT開發軟件。
RTMPT基本上是一個RTMP協議的HTTP包裝。它發送POST請求從客戶端到服務端。因為HTTP連接是非持久性的,RTMPT需要客戶端獲得周期性的更新,順序的得到從服務端或其它客戶端產生的事件通告。
在一個RTMPT會話周期,下面描述四個可能會發送到服務端的請求類型。
URLs
----
URL以以下形式打開:
? ?
? ? http://server/<comand>/[<client>/]<index>
`<command>`
??指示RTMPT請求類型。
`<client>`
??指定執行請求的客戶端編號(只發送已確定的會話)
`<index>`
??是一個連續的數字,好象是用于偵測丟失的包。
請求/響應(Request / Response)
------------------
所有的HTTP請求共享一些公用屬性:
??- 使用HTTP 1.1 POST。
??- 內容類型為`application/x-fcs`。
??- 連接會保持活動,這樣客戶端和服務端會減少網絡開銷。
HTTP響應也共享一些屬性:
??- 內容類型為`application/x-fcs`.
??- 所有已確定會話的響應數據的首字節控制客戶端檢測間隔時間,更高的值表示較少的檢測請求。
(譯注:polling,檢測,可能翻譯得不夠準確)
檢測間隔時間(Polling interval)
----------------
在數據返回后,服務器會以0x01開始,在10次空的回復之后自動增長這個值。最大的延時是0x21,在兩次請求之間的延時大約在0.5秒左右。
Red5通常按下列步驟增長延時:
0x01, 0x03, 0x05, 0x09, 0x11, 0x21.
初始化連接(命令"open")
--------------------------------
這是首次請求,會順序的發送到服務器,注冊一個客戶端并開始一個新的會話。服務器回復一個惟一的ID(通常是一個數字)給客戶端,以便于之后的請求。
注意:回復不會包含檢測間隔時間值。成功的連接會重設連續索引以用于URL。
客戶端更新(命令"send")
-------------------------------
從客戶端發送到服務器的數據會加一個HTTP頭作為RTMP的前綴(譯注:即RTMPT)。
如果有效的話,服務器響應以HTTP響應,包含一個字節的控制檢測間隔時間和RTMP數據,。
檢測請求(命令"idle")
---------------------------------
如果客戶端沒有包含更多的數據發送到服務器,他可以檢測更新,會收到流數據或事件,例如共享對象。
斷開會話連接(命令"close")
-----------------------------------------
如果客戶端希望終止連接,他可以發送close命令到服務器,服務器會回復0x00。
轉載于:https://www.cnblogs.com/k1988/archive/2009/11/24/2165698.html
總結
- 上一篇: asp.net动态加载css
- 下一篇: 梦到我来大姨妈了这是什么情况