視頻會議傳輸模式

2017.10.18

在視頻會議軟件的開發(fā)中,我們需要考慮實時、大流量的傳輸方式,因此其數(shù)據(jù)傳輸模式值得我們?nèi)パ芯?。一般來看視頻會議的數(shù)據(jù)可以分為三種,一種是語音、文檔共享等實時性較強但數(shù)據(jù)量較少的數(shù)據(jù);另外一種是大流量但不需要實時的數(shù)據(jù),如文件傳輸?shù)臄?shù)據(jù);最后一種是視頻、遠程桌面等大流量且實時性很強的數(shù)據(jù)。
 


聲明:部分內(nèi)容及圖片來源于網(wǎng)絡,如有侵權請聯(lián)系刪除。
 
對于這三種不同的數(shù)據(jù),我們可以采用不同的傳輸方式來達到更高的效率。在視頻會議軟件中,我們主要有三種不同的傳輸模式:
 
1、TCP傳輸模式
 
TCP傳輸模式是通過TCP協(xié)議來進行數(shù)據(jù)的傳輸,其傳輸方式是可靠的傳輸方式,但TCP建立傳輸過程需要進行三次握手,而且在傳輸過程中,需要進行數(shù)據(jù)的確認過程,因此數(shù)據(jù)的傳輸相對UDP模式來說,傳輸?shù)膶崟r性不強,且遇到網(wǎng)絡堵塞的情況下,TCP模式不能進行有效的傳輸控制;
 
通過不斷的重發(fā)數(shù)據(jù),會造成網(wǎng)絡更為堵塞,因此在視頻會議軟件的開發(fā)中,我們不能用TCP的傳輸模式來傳輸實時的數(shù)據(jù),而一些實時性不強的數(shù)據(jù),如文件數(shù)據(jù)可以用TCP的模式進行傳輸。
 
2、UDP+RTP傳輸模式
 
UDP+RTP傳輸模式是通過UDP數(shù)據(jù)包進行RTP數(shù)據(jù)封裝傳輸,單純的UDP傳輸方式不能直接應用于視頻會議軟件的開發(fā),雖然UDP可以實時地傳輸數(shù)據(jù),但其UDP傳輸是基于無連接、非可靠的傳輸方式,其數(shù)據(jù)不能保證及時、按順序地到達;
 
因此直接用UDP傳輸方式很難進行數(shù)據(jù)的丟包控制。通過UDP+RTP的傳輸模式,不僅可以實時的傳輸,還能通過RTCP實現(xiàn)對數(shù)據(jù)的傳輸控制。
 
我們可以舉個例子,在視頻會議軟件的音頻傳輸中,我們可以UDP+RTP的模式進行傳輸,當出現(xiàn)數(shù)據(jù)包的丟失的時候,該方式能很容易檢測到丟包的數(shù)據(jù),從而通過音頻編碼的錯誤掩飾來進行數(shù)據(jù)的還原。
 
3、利用傳輸庫模式
 
雖然UDP+RTP模式能達到實時的傳輸,也能進行丟包的檢測控制,但該模式很難進行數(shù)據(jù)的重發(fā),對于一些需要實時且可靠的數(shù)據(jù),也不能采用該方式,我們可以采用一些開源的傳輸庫;
 
這些開源的傳輸庫可以把上面的TCP模式、UDP+RTP模式兩者的優(yōu)點結合起來,它既有實時的傳輸性又有可靠的傳輸性,非常適合我們進行可靠的實時的大流量的數(shù)據(jù)傳輸,這些傳輸庫包括有比較著名的UDT傳輸庫(可靠的UDP傳輸方式)、Ranknet傳輸庫等;
 
這些傳輸庫是建立在UDP的基礎上的數(shù)據(jù)傳輸,但其實現(xiàn)了UDP的可靠傳輸。因此直接利用這些開源的傳輸庫進行數(shù)據(jù)的傳輸比我們直接利用TCP或者UDP+RTP傳輸模式更為有效。
 
綜上所述,我們在視頻會議軟件的開發(fā)中,對不同的數(shù)據(jù)可以采用不同的傳輸方式,一些大流量非實時的數(shù)據(jù),我們可以采用TCP的傳輸模式;一些實時非大流量的數(shù)據(jù),我們可以采用UDP+RTP的傳輸模式。
 
對于實時、大流量且需要保證可靠性的數(shù)據(jù),我們可以利用開源的傳輸庫進行數(shù)據(jù)的傳輸,來保證數(shù)據(jù)的實時和可靠性。


推薦產(chǎn)品

Recommended Products