當前位置:中美貿(mào)易網(wǎng) > 技術(shù)中心 > 所有分類
UDT庫是一位留美博士在校期間寫的開源數(shù)據(jù)傳輸庫,其協(xié)議是建立在UDP協(xié)議的基礎(chǔ)上,通過數(shù)據(jù)重發(fā)、數(shù)據(jù)校驗、數(shù)據(jù)還原處理等技術(shù),實現(xiàn)數(shù)據(jù)高效的傳輸,并能保證數(shù)據(jù)的可靠傳輸。UDT庫和其他的可靠傳輸庫一樣,都是在UDP協(xié)議上進行數(shù)據(jù)的封裝,實現(xiàn)可靠的傳輸傳輸,為什么我們會推薦使用UDT作為視頻會議開發(fā)的數(shù)據(jù)傳輸庫呢?
1、跨平臺性
UDT的開發(fā)是基于C語言,其跨平臺性較好,除了支持windows系統(tǒng)外,還能支持一些移動終端的操作系統(tǒng),如Android、IOS等,因此如果我們的視頻會議系統(tǒng)要在主流的移動終端上進行運行,我們可以選擇UDT庫來進行數(shù)據(jù)的傳輸。而在移動終端平臺上使用UDT庫也非常容易,我們可以把UDT庫加入到我們的代碼里面,或者把UDT編譯成動態(tài)鏈接庫,然后通過接口來調(diào)用相應(yīng)的UDT函數(shù)。
2、可靠性
UDT的可靠性并不像TCP進行三次握手和重發(fā)來實現(xiàn),如果在網(wǎng)絡(luò)堵塞較為嚴重的時候,TCP還是會一直重發(fā)數(shù)據(jù),這樣會導致網(wǎng)絡(luò)更為堵塞,而UDT除了采用不可靠的UDP數(shù)據(jù)傳輸外,還利用控制信道對數(shù)據(jù)進行監(jiān)測,如果在網(wǎng)絡(luò)條件比較好的情況下,UDT數(shù)據(jù)會進行重新傳輸數(shù)據(jù)來保證數(shù)據(jù)的可靠性,而當網(wǎng)絡(luò)條件較差的情況下,UDT會采用減少數(shù)據(jù)的發(fā)送量來實現(xiàn)數(shù)據(jù)傳輸?shù)姆€(wěn)定性,從而保證數(shù)據(jù)的可靠實時。
3、支持海量數(shù)據(jù)實時傳輸
UDT不僅能實現(xiàn)數(shù)據(jù)的可靠傳輸,還能進行海量的數(shù)據(jù)實時傳輸,一般的TCP協(xié)議或者UDP協(xié)議,很難在網(wǎng)絡(luò)上進行大數(shù)據(jù)的傳輸,而UDT在傳輸過程中建立了用于數(shù)據(jù)實時傳輸?shù)木彌_區(qū)和的滑動窗口協(xié)議,因此UDT能在網(wǎng)絡(luò)上,傳輸海量的實時傳輸數(shù)據(jù)。
4、支持點對點的連接
所謂的點對點傳輸,就是數(shù)據(jù)不通過服務(wù)器的轉(zhuǎn)發(fā),直接由發(fā)送方發(fā)送到接收方的一種傳輸方式。這種方式解決的內(nèi)網(wǎng)傳輸?shù)膯栴},如在不同的內(nèi)網(wǎng)中,如果需要相互傳輸數(shù)據(jù)必須要通過服務(wù)器的中轉(zhuǎn)或者通過NAT轉(zhuǎn)換來實現(xiàn)不同內(nèi)網(wǎng)的數(shù)據(jù)傳輸,而利用UDT可以實現(xiàn)不同內(nèi)網(wǎng)的數(shù)據(jù)連接與傳輸。因此使用UDT傳輸庫,可以用很小代價來實現(xiàn)內(nèi)網(wǎng)的點對點數(shù)據(jù)連接與傳輸,因此UDT的點對點方式也非常適合于在視頻會議系統(tǒng)使用。
由此可見,UDT庫能為視頻會議系統(tǒng)提供跨平臺、數(shù)據(jù)的實時性、海量數(shù)據(jù)傳輸、點對點傳輸?shù)闹С?,是一個值得我們關(guān)注并使用的高效實時傳輸庫。