計算機網路資料篇(二)——快速理解網路協議

Jsp發表於2018-08-28

《網路程式設計懶人入門(一):快速理解網路通訊協議(上篇)》

《網路程式設計懶人入門(二):快速理解網路通訊協議(下篇)》

一:五層模型

物理層、資料鏈路層、網路層、傳輸層、應用層

1、物理層

使用光纜、電纜、雙絞線、無線電波等連線電腦,負責傳送0和1的電訊號

2、資料鏈路層

多少個電訊號為一組,確定六0和1的分組方式

a:乙太網協議

規定一組電訊號構成一個資料包,叫做幀。每一幀分成兩個部分:標頭和資料。

標頭:包含資料的說明項

b:MAC地址

乙太網規定,連入網路的所有裝置,都必須具有網路卡介面。網路卡的地址,就是資料包的傳送和接收地址,叫做MAC地址。(48個二進位制位)

c:廣播

一:一塊網路卡知道另一塊網路卡的MAC地址:ARP協議

二:怎麼把資料包送到接收方:向本網路所有計算機傳送,每臺計算機自己判斷

3、網路層

屬於同一子網路:廣播方式傳送;否則採用路由轉發

MAC地址是繫結在網路卡上的,網路地址管理員分配

a:IP協議

規定網路地址的協議,叫做IP協議

子網掩碼:32位二進位制數字,網路部分全為1,主機部分為0。

判斷兩臺計算機是否處於同一個子網路:將兩個IP地址與子網掩碼進行AND運算,結果相同在同一個子網路

b:IP資料包

把IP資料包直接放進乙太網資料包的“資料”部分

c:ARP協議

IP資料包放在乙太網資料包傳送,必須知道對方的MAC地址和IP地址,從IP地址得到MAC地址:

1):兩臺主機不再同一個子網路,把資料包傳到兩個子網路的閘道器,閘道器處理

2):在同一個子網路。ARP發出一個資料包,包含要查詢主機的IP地址,所在子網路的每一臺主機都收到資料包,取出IP地址與自身IP比較,相同做出回覆。

4、傳輸層

傳輸層的功能就是建立端到端的通訊,網路層建立主機到主機的通訊。

表示資料包供哪個程式(程式)使用的引數:埠。

埠有16個二進位制位,0—1023的埠被系統佔用。Unix系統把主機+埠,叫套接字

a:UDP協議

UDP協議幾乎就是在資料前面加上埠號,也是由“標頭”和“資料”組成。把UDP資料包放入IP資料包的資料部分。

b:TCP協議

UDP協議:比較簡單,容易實現,可靠性差

TCP協議:資料不會遺失,過程複雜,實現困難

5、應用層

規定應用程式的資料格式


相關文章