098 網絡基礎知識

關於計算機網絡的知識是一個專門的學科。這裏只簡單介紹計算機網絡基礎知識。服務器

1、C/S架構和B/S架構

1.1 C/S架構

C:client 客戶機 S:server 服務器網絡

所謂C/S架構就是客戶機/服務器,就是一些聯網的電腦應用程序所採用採用的架構。架構

用戶經過下載客戶機去訪問服務器的資源,使用客戶機和服務器之間產生數據交互tcp

1.2 B/S架構

C:browser 瀏覽器 S:server 服務器網站

C/S架構廣泛使用在網頁中。url

用戶經過瀏覽器進行瀏覽網頁,訪問服務器中的資源,完成一些操做。如天貓,淘寶,百度,京東的網頁等。計算機網絡

2、計算機網絡模型

2.1 OSI七層模型

OSI(開放系統互連參考模型)七層模型是ISO(國際標準化組織)制定的標準網絡參考模型code

關於OSI七層模型,不作過多介紹,想要了解百度一大把資料。這裏只是說下有這麼個東西。server

  • 應用層
  • 表示層
  • 會話層
  • 傳輸層
  • 網絡層
  • 數據鏈路層
  • 物理層

2.2 因特網五層模型

真正Internet使用的是從OSI七層模型中的五層模型,也有的人把五層模型歸結爲四層模型,其實都差很少

五層模型:

  • 應用層
  • 傳輸層
  • 網絡層
  • 數據鏈路層
  • 物理層

四層模型

  • 應用層
  • 傳輸層
  • 網絡層
  • 物理鏈路層

網絡模型

3、介紹五層模型中各層做用

這裏所說的內容都是博主本身的理解。若有錯誤,請小聲bb。

物理層

經過物理傳輸介質傳輸高低電平信號,計算機表示爲0和1。

數據鏈路層

把 數據封裝成幀。每一數據幀分紅:報頭head和數據data兩部分
報頭: 固定18個字節,6:發送者地址/6:接收者地址/6:數據類型

**mac地址** :發送者,接收者地址,就是mac地址。每塊網卡都有一個惟一mac地址:12位16進制數表示(前六位是廠商編號,後六位是流水線號)

網絡層

IP地址:ipv4:32位2進製表示:點分十進制表示 從0.0.0.0到255.255.255.255,範圍是有限的,不能表示出全部的網絡設備,因而出現了ipv6

子網掩碼:經過子網掩碼和ip判斷兩個ip是否處於同一個網段,經過ip地址和子網掩碼作按位與運算

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

IP(網際)協議 經過 ARP(地址解析)協議 解析IP數據報獲得對端主機地址

傳輸層

TCP(傳輸控制)協議: 創建面向鏈接的可靠傳輸通路三次握手四次揮手),向對端主機地址的端口號發送數據,須要ACK響應,效率低,不會丟包,有快重傳等機制。

UPD(用戶數據報協議): 不須要創建鏈接,能夠直接向對端主機地址的端口號發送數據,不須要響應,效率高,容易丟包

端口:端口範圍0-65535,0-1023爲系統佔用端口。經過ip+子網掩碼惟一肯定一臺設備,經過ip+子網掩碼惟+端口號惟一肯定一個軟件。

下面會詳細說TCP創建鏈接過程

應用層

HTTP(超文本傳輸)協議

DNS(域名系統):提供域名解析服務

FTP(文件傳輸)協議

4、TCP協議創建鏈接

tcp協議:

面向鏈接的可靠傳輸,TCP數據包沒有長度限制,理論上能夠無限長,可是爲了保證網絡的效率,一般TCP數據包的長度不會超過IP數據包的長度,以確保單個TCP數據包沒必要再分割。

udp協議:

不可靠傳輸,」報頭」部分一共只有8個字節,總長度不超過65,535字節,正好放進一個IP數據包。

tcp報文

tcp報文

tcp三次握手和四次揮手

爲何說TCP協議是面向鏈接的可靠傳輸。一方面緣由是,TCP須要創建可靠的鏈接,而面向鏈接就是咱們所說的三次握手和四次揮手。另外一方面緣由是,可靠傳輸,它體如今對每一條數據包都須要進行ack確認,確保對端主機端口收到該數據包。若是沒有收到就會有一系列的相似快重傳等機制,會恢復數據的傳輸。若是長時間無響應則會斷開鏈接。

tcp協議創建鏈接的過程被形象的喻爲三次握手

釋放鏈接時的過程被形象的喻爲四次揮手

TCP三次握手和四次揮手

三次握手:

  • 第一次握手:當客戶機沒有對服務器發起鏈接請求時,服務器會一直處於監聽狀態,時刻等待客戶機發起的請求,直到客戶機發起鏈接請求。(服務器彷彿一個渣男,誰要跟他好他都接受)
  • 第二次握手:服務器會對客戶機發起的鏈接請求作出確認響應並創建數據發送通路,同時服務器嘗試和客戶機創建數據接收通路。
  • 第三次握手:當客戶機收到創建數據發送通路的確認請求後,會對 服務器發送的創建數據接收通路請求作出確認。

此時通過三次握手纔算正式的創建了通信傳輸的鏈接

數據傳輸:

  • 當客戶機對服務器發送信息時必需要等到服務器的確認纔算成功接收數據。不然就會有別的操做。若是長時間嘗試鏈接失敗則會斷開鏈接。

四次揮手

  • 第一次揮手:客戶機對鏈接中的服務器發送斷開 發送數據鏈接通路 的請求。
  • 第二次揮手:服務器會對客戶機發送過來的請求進行確認
  • 第三次揮手:而後服務器會對服務器發起斷開 接收數據鏈接通路 的請求
  • 第四次揮手:客戶機收到請求,會發送對服務器斷開請求的確認

此時通過四次揮手纔算正式斷開了通信傳輸的鏈接

5、DNS域名解析服務

實際上,當用戶在瀏覽器上的地址欄中輸入url時,是經過域名的方式訪問該網站的站點服務器。如www.baidu.com

而DNS(域名解析系統)則是對域名作出解析操做,解析爲IP地址。這個解析的服務就是DNS提供的。

常見的DNS服務器地址有:114.114.114.1148.8.8.8

  • 114.114.114.114是國內移動、電信和聯統統用的DNS,手機和電腦端均可以使用,乾淨無廣告,解析成功率相對來講更高,國內用戶使用的比較多,並且速度相對快、穩定,是國內用戶上網經常使用的DNS
  • 8.8.8.8是GOOGLE公司提供的DNS,該地址是全球通用的,相對來講,更適合國外以及訪問國外網站的用戶使用
相關文章
相關標籤/搜索