專利名稱:一種多媒體數據傳輸系統及其應用方法
技術領域:
本發明屬于多媒體數據傳輸領域,具體涉及一種多媒體數據傳輸系統及其應用方法。
背景技術:
目前,RTSP/RTP 協議是當前應用比較廣泛一種多媒體傳輸控制方法,其為應用提供端到端的實時網絡傳輸。該方法的弊端是每個流媒體傳輸要使用3個連接信道一個 RTSP協議信道,一個RTCP信道,一個RTP信道,占用了較多的有限的系統端口(當前操作系統最大只支持65535個端口),信道建立的握手交互較多,不太適應以實時性要求高的連接頻繁的場合。另外,TCP/UDP協議屬于網絡傳輸層協議,其中TCP提供IP環境下的數據可靠傳輸,它提供的服務包括數據流傳送、可靠性、有效流控、全雙工操作和多路復用,通過面向連接、端到端和可靠的數據包發送。通俗說,它是事先為所發送的數據開辟出連接好的通道, 然后再進行數據發送;而UDP則不為IP提供可靠性、流控或差錯恢復功能。一般來說,TCP 對應的是可靠性要求高的應用,而UDP對應的則是可靠性要求低、傳輸經濟的應用,本發明是基于TCP/UDP協議實現的系統和方法。
發明內容
針對現有技術的缺點,本發明的目的是提供一種通過使用單通道進行多媒體數據傳輸和控制提高單個服務器能夠管理的鏈接數據,提高傳輸握手的鏈接速度的多媒體數據傳輸系統及其應用方法。為實現上述目的,本發明的一種多媒體數據傳輸系統包括 流媒體協議,用于規定通信消息格式封裝和通信流程;
安裝有流媒體協議的服務器,用于接受客戶端連接和連接的管理,接收、解析并響應客戶端的請求,以及把多媒體數據按流媒體協議發送到客戶端;
安裝有流媒體協議的客戶端,用于建立與服務器的連接和對連接進行維護,并將請求按流媒體協議發送給服務器以及對接收到的響應消息進行解析返回給應用者。作為一種優選方案,流媒體協議的結構包括依次排列的包頭數據、負載數據和CRC 校驗數據。作為進一步的優選方案,包頭數據的長度為80比特,負載數據的長度隨實際傳輸的多媒體數據長度變化而變化。作為進一步的優選方案,包頭數據的結構包括依次排列的當前包長度、協議版本、 包類型、校驗方式、分包末尾包標識、包序號、包內分包序號、會話子通道號、附加值。作為進一步的優選方案,當前包長度、協議版本、包類型、校驗方式、分包末尾包標識、包序號、包內分包序號、會話子通道號、附加值長度分別為M比特、3比特、1比特、3比特、1比特、16比特、16比特、8比特、8比特。
為了實現第二個發明目的,采用如下技術方案
本發明提供了一種多媒體數據傳輸的應用方法,采用權利要求1所述系統實現,包括如下步驟
A.客戶端建立會話通道客戶端向服務器發送連接請求;
B.服務器接收到連接請求后對連接請求進行解析,建立與客戶端的會話通道;此時客戶端等待服務器的連接請求響應,服務器建立會話通道后向客戶端返回連接請求結果;
C.會話通道建立后,服務器等待客戶端的心跳或者命令;
D.客戶端向服務器發送開始播放命令,請求進行多媒體數據的傳輸;
E.服務器接收到開始播放命令后向客戶端傳輸多媒體數據;
F.客戶端向服務器發送結束命令并等待服務器的響應;
G.服務器接收到結束命令后返回結束響應結果,停止傳輸多媒體數據并拆除與客戶端的會話通道,會話結束;
H.客戶端接收到結束響應結果后拆除與服務器的會話通道。作為一種優選方案,客戶端和服務器中安裝有流媒體協議,所述流媒體協議的結構包括依次排列的包頭數據、負載數據和CRC校驗數據。作為進一步的優選方案,包頭數據的長度為80比特,負載數據的長度隨實際傳輸的多媒體數據長度變化而變化。作為進一步的優選方案,包頭數據的結構包括依次排列的M比特的當前包長度、 3比特的協議版本、1比特的包類型、3比特的校驗方式、1比特的分包末尾包標識、16比特的包序號、16比特的包內分包序號、8比特的會話子通道號、8比特的附加值。作為另一種優選方案,客戶端中設置有存活定時器keepalive,在進行流媒體數據傳輸過程中,還進行如下步驟
el.客戶端向服務器發送keepalive命令,探測流媒體數據傳輸是否發生擁塞;此時客戶端還向服務器發送控制命令;
e2.客戶端等待服務器的ke印alive響應;
e3.服務器返回ke印alive響應,如果ke印alive響應為擁塞,則客戶端向服務器發送重傳命令。本發明的有益效果是
本發明基于TCP/UDP協議,通過單個網絡連接上進行多媒體數據和監控命令的傳輸, 降低了對系統端口資源的占用和簡化了交互流程,大大提高了傳輸握手的鏈接速度,能夠做到毫秒級的響應,而且支持海量連接,比使用RTSP+RTP的方式提高2倍的鏈接數量,更好適應以實時媒體傳輸。
圖1 是本發明一種多媒體數據傳輸系統的結構示意圖; 圖2 是本發明流媒體協議結構示意圖3 是本發明一種多媒體數據傳輸的應用方法的流程圖。
具體實施方式
下面結合實施例及附圖,對本發明作進一步地詳細說明,但本發明的實施方式不限于此。本發明如圖1所示,本發明的一種多媒體數據傳輸系統包括流媒體協議,客戶端和服務器。如圖2所示,流媒體協議分別安裝在客戶端和服務器中,用于規定通信消息格式封裝和通信流程;其結構包括依次排列的包頭數據、負載數據和CRC校驗數據,包頭數據的長度為80比特,負載數據的長度隨實際傳輸的多媒體數據長度變化而變化。包頭數據的結構包括依次排列的M比特的當前包長度、3比特的協議版本、1比特的包類型、3比特的校驗方式、1比特的分包末尾包標識、16比特的包序號、16比特的包內分包序號、8比特的會話子通道號、8比特的附加值。服務器,用于接受客戶端連接和連接的管理,接收、解析并響應客戶端的請求,以及把多媒體數據按流媒體協議發送到客戶端;
客戶端,用于建立與服務器的連接和對連接進行維護,并將請求按流媒體協議發送給服務器以及對接收到的響應消息進行解析返回給應用者。如圖3所示,采用權利要求1所述系統實現的一種多媒體數據傳輸的應用方法,客戶端中還設置有存活定時器ke印alive,該方法包括如下步驟
A.客戶端建立會話通道客戶端向服務器發送連接請求;
B.服務器接收到連接請求后對連接請求進行解析,建立與客戶端的會話通道;此時客戶端等待服務器的連接請求響應,服務器建立會話通道后向客戶端返回連接請求結果;
C.會話通道建立后,服務器等待客戶端的心跳或者命令;
D.客戶端向服務器發送開始播放命令,請求進行多媒體數據的傳輸;
E.服務器接收到開始播放命令后向客戶端傳輸多媒體數據;
el.客戶端向服務器發送keepalive命令,探測流媒體數據傳輸是否發生擁塞;此時客戶端還向服務器發送控制命令;
e2.客戶端等待服務器的ke印alive響應;
e3.服務器返回ke印alive響應,如果ke印alive響應為擁塞,則客戶端向服務器發送重傳命令;
F.客戶端向服務器發送結束命令并等待服務器的響應;
G.服務器接收到結束命令后返回結束響應結果,停止傳輸多媒體數據并拆除與客戶端的會話通道,會話結束;
H.客戶端接收到結束響應結果后拆除與服務器的會話通道。
權利要求
1.一種多媒體數據傳輸系統,其特征在于,包括流媒體協議,用于規定通信消息格式封裝和通信流程;安裝有流媒體協議的服務器,用于接受客戶端連接和連接的管理,接收、解析并響應客戶端的請求,以及把多媒體數據按流媒體協議發送到客戶端;安裝有流媒體協議的客戶端,用于建立與服務器的連接和對連接進行維護,并將請求按流媒體協議發送給服務器以及對接收到的響應消息進行解析返回給應用者。
2.根據權利要求1所述的多媒體數據傳輸系統,其特征在于,流媒體協議的結構包括依次排列的包頭數據、負載數據和CRC校驗數據。
3.根據權利要求2所述的多媒體數據傳輸系統,其特征在于,包頭數據的長度為80比特,負載數據的長度隨實際傳輸的多媒體數據長度變化而變化。
4.根據權利要求3所述的多媒體數據傳輸系統,其特征在于,包頭數據的結構包括依次排列的當前包長度、協議版本、包類型、校驗方式、分包末尾包標識、包序號、包內分包序號、會話子通道號、附加值。
5.根據權利要求4所述的多媒體數據傳輸系統,其特征在于,當前包長度、協議版本、 包類型、校驗方式、分包末尾包標識、包序號、包內分包序號、會話子通道號、附加值長度分別為24比特、3比特、1比特、3比特、1比特、16比特、16比特、8比特、8比特。
6.一種多媒體數據傳輸的應用方法,采用權利要求1所述系統實現,其特征在于,包括如下步驟A.客戶端建立會話通道客戶端向服務器發送連接請求;B.服務器接收到連接請求后對連接請求進行解析,建立與客戶端的會話通道;此時客戶端等待服務器的連接請求響應,服務器建立會話通道后向客戶端返回連接請求結果;C.會話通道建立后,服務器等待客戶端的心跳或者命令;D.客戶端向服務器發送開始播放命令,請求進行多媒體數據的傳輸;E.服務器接收到開始播放命令后向客戶端傳輸多媒體數據;F.客戶端向服務器發送結束命令并等待服務器的響應;G.服務器接收到結束命令后返回結束響應結果,停止傳輸多媒體數據并拆除與客戶端的會話通道,會話結束;H.客戶端接收到結束響應結果后拆除與服務器的會話通道。
7.根據權利要求6所述多媒體數據傳輸的應用方法,其特征在于,客戶端和服務器中安裝有流媒體協議,所述流媒體協議的結構包括依次排列的包頭數據、負載數據和CRC校驗數據。
8.根據權利要求7所述的多媒體數據傳輸系統,其特征在于,包頭數據的長度為80比特,負載數據的長度隨實際傳輸的多媒體數據長度變化而變化。
9.根據權利要求8所述的多媒體數據傳輸系統,其特征在于,包頭數據的結構包括依次排列的M比特的當前包長度、3比特的協議版本、1比特的包類型、3比特的校驗方式、 1比特的分包末尾包標識、16比特的包序號、16比特的包內分包序號、8比特的會話子通道號、8比特的附加值。
10.根據權利要求7所述多媒體數據傳輸的應用方法,其特征在于,客戶端中設置有存活定時器keepalive,在進行流媒體數據傳輸過程中,還進行如下步驟el.客戶端向服務器發送ke印alive命令,探測流媒體數據傳輸是否發生擁塞;此時客戶端還向服務器發送控制命令;e2.客戶端等待服務器的ke印alive響應;e3.服務器返回ke印alive響應,如果ke印alive響應為擁塞,則客戶端向服務器發送重傳命令。
全文摘要
本發明屬于多媒體數據傳輸領域,具體涉及一種多媒體數據傳輸系統及其應用方法。所述系統包括流媒體協議,用于規定通信消息格式封裝和通信流程;安裝有流媒體協議的服務器,用于接受客戶端連接和連接的管理,接收、解析并響應客戶端的請求,以及把多媒體數據按流媒體協議發送到客戶端;安裝有流媒體協議的客戶端,用于建立與服務器的連接和對連接進行維護,并將請求按流媒體協議發送給服務器以及對接收到的響應消息進行解析返回給應用者。本發明通過使用單通道進行多媒體數據傳輸和控制提高單個服務器能夠管理的鏈接數據,提高傳輸握手的鏈接速度。
文檔編號H04L29/06GK102340506SQ20111029890
公開日2012年2月1日 申請日期2011年9月29日 優先權日2011年9月29日
發明者鄒陽星 申請人:廣東高新興通信股份有限公司