TCP的簡單理解

2021-10-05 11:29:22 字數 600 閱讀 9670

全雙工通訊與半雙工通訊與單工通訊

半雙工通訊就像對講機,一邊說話另外一邊接聽,同一時間無法同時進行。

全雙工通訊就像手機,可以一邊說話一邊接聽,可以同一時間進行。

單工通訊就像收音機,一邊只能接收,另一邊只能傳送。或者例如,遙控器。

tcp如何實現全雙工?

http協議底層是基於tcp協議,websocket協議底層也同樣是基於tcp協議。websocket與http都是一種協議,跟socket不是同乙個東西,socket是乙個應用程式介面是乙個api,不是乙個協議,這個地方不要搞混。

在tcp協議為基礎的網路實現中,實現半雙工通訊在pc與客戶端之間開闢乙個通道,pc向伺服器傳送請求傳輸資料的時候開啟輸出流(outputstream),而另外一端的伺服器則開啟開啟輸入流(inputstream)用來接收資料。反之,伺服器開啟outputstream向客戶端輸出資料,pc開啟 inputstream接收。但是,如何同時輸入跟輸出呢?單個通道顯然是不可以的,所以在實現全雙工的時候,必然開啟兩個通道,這個時候就使用到多執行緒來實現雙通道。

總結:tcp協議下的全雙工通訊是通過多執行緒的方式開啟雙通道,得以使用輸入輸出流實現同一時間一邊讀取一邊傳送。

tcp協議的簡單理解

tpc協議屬於傳輸層協議,本篇主要介紹下幾個概念,以及握手和揮手的過程。1.tcp的幾個概念 位碼 即tcp標誌位,有6種提示 syn synchronus,表示建立聯機。ack acknowledgement,確認。push push,傳送。fin finish,結束。rst rest,重置。ur...

簡單TCP客戶 伺服器的理解

1.伺服器部分 socket bind listen之後,for迴圈內accept獲取 已連線套接字 描述符 fork子程式處理該連線的資料傳輸。2.客戶端部分 socket connect之後,呼叫資料傳送函式向該套接字內寫資料,即傳送資料。1.程序exit後,會關閉所有開啟的檔案描述符,包括套接...

Http協議與TCP協議簡單理解

在c 編寫 很多時候會遇到http協議或者tcp協議,這裡做乙個簡單的理解。tcp協議對應於傳輸層,而http協議對應於應用層 從本質上來說,二者沒有可比性。http協議是建立在tcp協議基礎之上的,當瀏覽器需要從伺服器獲取網頁資料的時候,會發出一次http請求。http會通過tcp建立起乙個到伺服...