網絡協議基礎

1、互聯網協議:網絡

英語是世界全部人通訊的惟一標準,internet實際就是計算機之間一系列統一的標準。而這一些列標準就是互聯網協議。互聯網的本質就是一系列協議。socket

 

2、互聯網協議按照功能不一樣細分爲osi七層或tcp/ip五層,或tcp/ip四層,咱們須要掌握五層的原理就夠了。tcp

     

 

五層協議對應的物理設備:spa

 接口

3、五層模型及對應協議:進程

  1. 物理層:

定義:計算機之間必須靠光纖等完成組網(即鏈接)ip

物理層功能:主要是經過物理層發送或接受高低電頻(電信號)原理

 

  1. 數據鏈路層:

定義:單純的電信號是沒有意義的,必須對一串高低電頻進行分組,每組表明  什麼意思。互聯網

實現功能:定義了電信號的分組方式。數據類型

以太網協議:一個統一的分組標準。

一個數據報(幀)分爲:head(固定長度18個字節)、data(最短46個字節、 最長1500個字節,data部分是數據的具體內容。)

head 18個字節中包含:源地址6個字節、目標地址6個字節、數據類型6                      字節.

mac地址:即網卡地址(獨一無二),上面說的目標地址、源地址都是mac地址。

廣播:有了mac地址,同一局域網中的計算機就能實現通訊(有了數據鏈路層就   有了mac地址,就能實現局域網內通訊)

有了以太網協議:就能在同一個局域網內以廣播的方式進行通訊。

 

  1. 網絡層:(世界上全部計算機光靠mac地址通訊,會形成廣播風暴。。。)

定義:因爲廣播風暴,因此必須劃分局域。

功能:引入一套新的地址來區分不一樣的廣播域/子網

IP協議:規定網絡地址的協議叫IP協議,它定義的地址稱IP地址。

1.32位(4個字節)二進制,範圍:0.0.0.0-255.255.255.255

一個IP地址一般攜程四段十進制數,如:172.168.10.1

2.IP地址分爲兩部分:

網絡部分:標識子網

主機部分:標識主機

注意一個單純的IP地址段只是標識了IP地址的種類,沒法肯定所屬的子網。

如:172.16.10.1172.16.10.2並不能肯定兩者處於同一子網。

3.子網掩碼:它的網絡部分所有爲1,主機部分所有爲0

知道子網掩碼,咱們就能判斷任意兩個IP地址是否處於同一個子網絡,方法 是將兩個IP地址與子網掩碼分別進行AND運算(兩個對應數位都爲一,結果 1,不然爲0),若是運算結果相同,就代表在同一個子網。

4.IP數據包:(分headdata

IP協議的做用:

  1. 爲每一臺計算分配一個IP地址。
  2. 肯定哪些地址是在一個子網。

ARP協議:廣播的方式發送數據包,獲取目標主機的mac地址。

通訊是基於mac地址的廣播方式實現的,可是 計算機在發包時,獲取本身的 mac地址是容易的,可是獲取對方的mac就須要用到ARP協議。

 

經過IP地址和子網掩碼區分本身所屬的子網, 若是在相同子網,經過ARP協議返回目標計算機mac地址,若是不在相同子網,經過ARP協議返回目標網關mac地址。

 

4.傳輸層:網絡層的IP協議的IP能幫咱們區分子網,數據鏈路層的以太網協議mac地址能幫咱們找到主機。可是須要定位傳輸層來定位主機上的應用程序。

端口即應用程序與網卡關聯的編號。

傳輸層的功能:創建端口到端口的通訊。

TCP協議:提供一種可靠的、確保數據不丟失不亂序的、端到端的傳輸。

TCP協議的三次握手與四次揮手

 

 

5.應用層

功能:固定應用程序的數據格式。

 

4、Socket

Socket是在應用層與傳輸層之間的一個抽象層,它把TCP/IP層複雜的操做抽象成幾個簡單的接口,封裝在一個類中,共應用層調用實現進程在網絡中的通訊。

 

咱們能夠經過ip地址+TCP協議+端口號(端口號是應用程序與mac地址關聯的編號)來惟一標識網絡中的一個進程。

而後咱們就可以利用socket進行通訊了。

相關文章
相關標籤/搜索