DCCP協(xié)議的概念
在網(wǎng)絡(luò)瀏覽中,我們經(jīng)常遇到網(wǎng)絡(luò)卡的現(xiàn)象。那么這個(gè)有可能就是網(wǎng)站的數(shù)據(jù)流量過(guò)大的原因。也有可能是負(fù)載均衡沒(méi)有做好。其中,我們也會(huì)遇到DCCP協(xié)議的一些內(nèi)容。DCCP是什么?DCCP就是數(shù)據(jù)擁塞控制協(xié)議 (Datagram Congestion Control Protocol, DCCP)是由(網(wǎng)際網(wǎng)路工程工作小組IETF)提出一個(gè)針對(duì)傳輸層中UDP的新傳輸?shù)膮f(xié)議而發(fā)展出來(lái),用來(lái)傳輸實(shí)時(shí)業(yè)務(wù)。它是一個(gè)可以進(jìn)行擁塞控制的非可靠傳輸協(xié)議,并同時(shí)提供多種擁塞控制機(jī)制,在通信開(kāi)始時(shí)由用戶(hù)進(jìn)行協(xié)商選擇。除預(yù)留和自定義方式外,目前DCCP定義了兩種擁塞控制機(jī)制:TCP-Like和TFRC。TCP-Like類(lèi)似TCP的AIMD機(jī)制,而TFRC是TCP友好的速率控制機(jī)制。
建立、維護(hù)和拆卸不可靠連接的數(shù)據(jù)流以及對(duì)不可靠性數(shù)據(jù)流進(jìn)行擁塞控制,是DCCP協(xié)議主要提供的兩大功能。實(shí)時(shí)業(yè)務(wù)需要快速且低開(kāi)銷(xiāo)的傳輸協(xié)議,要使包頭帶來(lái)的開(kāi)銷(xiāo)和終端處理的工程量盡量小。因此,DCCP盡可能做到簡(jiǎn)單合理、低延遲和快速響應(yīng),避免提供更高層的傳輸功能。DCCP沒(méi)有TCP的可靠性和順序發(fā)送的特性。基于單播的應(yīng)用功能也被涵蓋在DCCP中。
DCCP的主要特色
有確認(rèn)的不可靠數(shù)據(jù)報(bào)流。使用Data和DataAck兩種數(shù)據(jù)流的數(shù)據(jù)傳輸,Data是純數(shù)據(jù),DataAck可以既有數(shù)據(jù)又有確認(rèn)信息。
可靠性協(xié)商。包括合適的擁塞控制協(xié)商、擁塞控制協(xié)商算法。半連接。這使得兩臺(tái)主機(jī)間可以使用兩個(gè)半連接來(lái)連接,并使用不同的擁塞控制機(jī)制。(擁塞控制標(biāo)記(CCID))。每個(gè)CCID說(shuō)明了它的終端是如何對(duì)ECN報(bào)告進(jìn)行回應(yīng)的。如CCID2:TCP-like機(jī)制、CCID3:TFRC機(jī)制(TCP友好控制機(jī)制)。
多重連接和移動(dòng)通信中的應(yīng)用。DCCP協(xié)議提供多重連接。在連接過(guò)程中可以通知對(duì)方地址或者端口的改變。當(dāng)移動(dòng)端點(diǎn)得到新的地址后,它從新地址發(fā)送DCCP-Move包給固定端點(diǎn),然后固定端點(diǎn)使用新的地址改變連接狀態(tài)。此外,DCCP使用一個(gè)緩存來(lái)取代TCP的探測(cè)幀,這樣減少了網(wǎng)絡(luò)開(kāi)銷(xiāo)。
此外,DCCP合并了ECN和ECNNonce的擁塞控制,具有最大路徑傳送單元(MTU)的發(fā)現(xiàn)機(jī)制;清晰的連接建立和中止過(guò)程,對(duì)于連接的建立和拆除有著可靠的握手過(guò)程;服務(wù)器可以拒絕任何沒(méi)有確認(rèn)信息的連接嘗試或者是本已結(jié)束的連接嘗試。
盡管DCCP當(dāng)前仍有很多問(wèn)題,例如,協(xié)議應(yīng)該同時(shí)支持IPv4和IPv6;在安全性方面,有關(guān)DCCP是否可以在傳輸安全管理協(xié)議上取代UDP還需探討;DCCP協(xié)議和RTP(實(shí)時(shí)傳輸協(xié)議)的關(guān)系也還須進(jìn)一步研究,但DCCP協(xié)議草案的提出為希望使用一種協(xié)議同時(shí)提供多種傳輸服務(wù)的應(yīng)用展現(xiàn)了一種新的服務(wù)模式,對(duì)未來(lái)網(wǎng)絡(luò)中傳輸協(xié)議的研究及對(duì)多媒體應(yīng)用的支持提供了一個(gè)新的切入點(diǎn)。