網絡通訊概述

1、網絡七層協議OSI程序員

例如:採用socket通信時,用到了IP和端口,代表涉及網絡層和傳輸層;無視多臺電腦通訊的系統差異,因此它涉及了表示層;通常Socket都是基於一個應用程序的,因此會涉及到會話層和應用層。編程

2、TCP、UDP、IP網絡

IP協議是在源地址和目的地址之間傳送數據包,IP負責選擇傳送的道路,這種選擇道路稱爲路由功能。當有些網絡內只能傳送小數據包時,還提供對數據大小的從新組裝功能,以適應不一樣網絡對包大小的要求。對數據沒有差錯控制,它只使用報頭的校驗碼。異步

UDP(User Datagram Protocol 用戶數據報協議)是無鏈接,無數據包分組排序的協議。socket

TCP(Transmission Control Protocol 傳輸控制協議)是一種面向鏈接的、可靠的、基於字節流的傳輸層通訊協議。創建鏈接時須要三次「握手」blog

一、TCP與UDP區別總結:
一、TCP面向鏈接,發送數據要先創建鏈接;UDP是無鏈接的,即發送數據以前不須要創建鏈接
二、TCP提供可靠的服務。也就是說,經過TCP鏈接傳送的數據,無差錯,不丟失,不重複,且按序到達;UDP盡最大努力交付,即不保證可靠交付排序

  Tcp經過校驗和,重傳控制,序號標識,滑動窗口、確認應答實現可靠傳輸。如丟包時的重發控制,還能夠對次序亂掉的分包進行順序控制。接口

三、UDP具備較好的實時性,工做效率比TCP高,適用於對高速傳輸和實時性有較高的通訊或廣播通訊。進程

4.每一條TCP鏈接只能是點到點的;UDP支持一對一,一對多,多對一和多對多的交互通訊資源

五、TCP對系統資源要求較多,UDP對系統資源要求較少。
3、SOCKET

socket不是通訊協議,而是一種通訊模型,是一種進程通訊機制。

socket本質是編程接口(API),對TCP/IP的封裝,TCP/IP也要提供可供程序員作網絡開發所用的接口,這就是Socket編程接口。HTTP是轎車,提供了封裝或者顯示數據的具體形式;Socket是發動機,提供了網絡通訊的能力。

4、同步、異步網絡通訊

同步通訊是一種比特同步通訊技術,要求發收雙方具備同頻同相的同步時鐘信號,只需在傳送報文的最前面附加特定的同步字符,使發收雙方創建同步,此後便在同步時鐘的控制下逐位發送/接收。

異步通訊不要求接收端時鐘和發送端時鐘同步,發送端發送完一個字節後,可通過任意長的時間間隔再發送下一個字節,因此必須加上開始位和中止位。

通俗理解:

同步、異步通訊在網絡通信中是指,代碼控制數據傳輸的具體手段。

同步通訊時,發送端發送數據後一直處於阻塞狀態,發送端接收到接受端對應迴應後,再進行下一次發送。

異步通訊時,a發個b後還未獲得b迴應前,能夠再a發給c。

相關文章
相關標籤/搜索