任何情況下的數據傳輸都需要建立連接為什麼是錯的?


這個觀點正確,先舉個例子:

有線電視是電視台單向將電視信號推送到千萬用戶的家中,推送前沒有連接,所有電視頻道節目一起推送,用戶愛看啥看啥。

無連接的數據傳輸應用場景

廣播

上文提到的有線電視就是一種廣播(Broadcast),無論用戶看不看,各個頻道的數據全部推送到用戶,這樣用戶換台時,幾乎沒有任何延遲。

組播

IPTV就是組播(multicast)應用案例,用戶看電視節目無須連接,只需要發一個加入特定multicast group(對應一個頻道節目)IGMP消息,上游的路由器會將multicast group 數據推送下來。

IPTV是先將所有節目源通過單播的方式發給匯聚點RP(Rendezvous Point),下游終端用戶不請求節目,是不會發給用戶的,一旦用戶換台意味著退出一個group,加入一個新的group,會有加入延遲,因為節目源沒有推送到本地。

IPTV中用戶點播VOD則採用單播連接的方式來傳輸信號。

互動式網遊

多人參與的網遊對戰,使用組播傳輸數據是高效的,數據的傳輸是1:N,其中N越大,效率越高。

與IPTV單向數據傳輸不同的是,互動式網遊是雙向的,用戶既是組播的發送者,也是組播的接收者,為了使組播更易於擴展,路由器上配置PIM-BiDir ,即雙向PIM,只有RPT樹,沒有SPT樹,這樣可以避免太多的(S,G)路由表,而只維護(*,G),大大節省存儲資源。

為了克服丟包對無連接傳輸的影響,可以對一份數據傳輸2到3次,接收者對於duplicated數據丟棄即可。


網路通信要預先建立連接是為了為本次通信預留網路資源以保障通信服務品質。所以連接的建立過程就是和通信各中繼節點協商申請通信資源的過程。

如果,

1、不需要保證服務品質,如ip的儘力傳送;

2、端到端申請的開銷要遠大於傳遞的消息價值;

3、全網廣播

也即,當申請預留資源的代價遠高於重傳消息時,可由端系統的差控、流控機制以重傳消息來避免建立連接的開銷。

所以,tcp的所謂面向連接是端系統間的連接,而非網路本身尤其是中間中繼節點的連接。


我覺得大概是因為

1. 有時候並不要求保證接收方需要百分百接收到信息

2. 信息本身不具備私密性

生活中常見的比如說海報,他就不具備私密性。瞟一眼是主動查詢信息,有沒有看清(傳輸中的差錯),海報不管,沒看清再看一眼就是了。

塞到門縫裡的傳單,他就不要求你一定要看,你可以丟棄這個信息。比如撕掉,丟掉,燒掉,塞進鞋子里,不嫌硬還可以擦屁屁。

街上派發傳單的話就算是要求建立連接了,因為有和你對話的過程,比如"先生,看一下這個……"這樣的話,你可以不理會,這樣就算是拒絕連接了。

至於街上大喇叭喊:"………統統20塊………,小姨子……跑了……不要臉……抵工資……",嗯,就是廣播。(擦,怎麼講了一句廢話……)


題目描述的不太清楚。單獨針對「任何通信都需要首先建立連接」這個斷言,只需要舉一個反例就可以否定:

廣播通信不需要提前建立連接。


只是「傳輸數據」的話,聲音圖像應該都算是數據,生活中常見的例子,電視機,這個很明顯就沒有建立什麼連接,其次,無線電通訊,你與遠在大洋彼岸的人通過短波通訊,這個也沒什麼連接吧


我覺得主要是考慮到單向廣播的存在吧。。


寫了一篇答案感覺不對又刪了。樓主建議你把原題拉出來大家看看再說。

題目差一個字可能理解和解答都不一樣。

比如數據傳輸需要需要的載體,比如什麼才算是聯繫?

我在莫高窟石壁上看到古人留下的文化瑰寶算不算數據傳輸?那又算不算建立了聯繫?

網路通信里,廣播是不需要提前建立聯繫,但是如果你不加入到廣播網路,是不是也不算建立聯繫?


推薦閱讀:

默認網關設為192.168.0.0代表啥意思?
如何系統的學習計算機網路相關知識?
在tcp鏈接的釋放過程中,由於存在TIME-WAIT階段,會影響其他程序在該埠建立tcp連接嗎?
同一交換機的不同VLAN如何做到隔離?
交換機下能抓包嗎?

TAG:計算機技術 | 計算機網路 | 網路通信 |