[TOC] OSI七層協議 實現遠程通信具備: 1. 物理連接介質—— 網卡 2. 互聯網協議:電腦之間溝通的介質“互聯網協議” 互聯網的本質就是一系列的網路協議,這個協議就是osi。(OSI是Open System Interconnection的縮寫)。按照分工的不同,人為劃分為七層, 從下往 ...
目錄
OSI七層協議
實現遠程通信具備:
- 物理連接介質——> 網卡
- 互聯網協議:電腦之間溝通的介質“互聯網協議”
互聯網的本質就是一系列的網路協議,這個協議就是osi。(OSI是Open System Interconnection的縮寫)。按照分工的不同,人為劃分為七層,
從下往上分別是物理層,數據鏈路層,網路層,傳輸層,會話層,表示層,應用層。
物理層
物理層:物理傳輸,在不同地方的電腦想要通信必須,電腦要插一根網線、路由器,才可以實現。也就是說要有物理介質連接,
中間的物理鏈接可以是光纜、電纜、雙絞線、無線電波,基於電信號發送二進位數據0100010101。
但是一堆二進位數據沒有分組,不知道什麼意思,這就要交給數據鏈路層處理。
數據鏈路層
數據鏈路層的“乙太網協議”, 專門用於處理基於電信號發送二進位的數據。
乙太網協議:
- 規定好電信號數據的分組方式
- 每一臺連接網線的電腦都必須要有一塊網卡,發送端的和接收端的地址就是網卡的地址,即mac地址
mac地址
網卡由不同廠商生產,每塊網卡出廠都會被燒錄上實際上唯一的mac地址,由48位二進位組成,通常用12位16進位表示,前6位是廠商編號,後6位是流水線號
有了mac地址電腦就可以通信了。假設一個教室就是一個區域網,教室里有幾台電腦,電腦的通信就使用廣播的方式,靠吼。
比如說我想找老張要片,我得知道自己的mac地址和老張的mac地址,這兩個地址做數據包的頭部,再加上數據片就構成了一個數據包。
這樣發送出去,然後就通過廣播的方式,在教室的所有人都聽到了,都會拆這個數據包,看是找誰的,只要不是找自己的就丟掉,其實就是再看想找那個mac地址,找的是老張,這樣老張就會收到消息並把片發給我。這就是區域網通信。
但我有事找老王,他在隔壁教室,這樣他就聽不到我廣播了,這就得交給網路層來處理了。
網路層
IP協議
有兩種版本,一個是IPv4,另一個是IPv6
IPv4是由32位二進位組成,32位分成4組,8位一組換算成10進位顯示,採用點分制。範圍從0.0.0.0
到255.255.255.255
通過IP協議可以跨區域網通信。我想找隔壁教室的老王,我在自己教師廣播,他肯定是聽不到的。那麼我就得找教室負責人,把東西交給負責人,讓他去找隔壁教室負責人,說我想找你教室的老王,然後把東西交給負責人,讓負責人帶話給老王。負責人就是網關。
Mac地址是用來標識你這個教室的某個位置,IP地址是用來標識你在哪個教室(哪個區域網)。你要跨網路發包你是不是要知道對方的IP地址,比如你要訪問百度,你肯定得知道百度伺服器的IP地址。電腦在發包前,會判斷你在哪個教室,對方在哪個教室,如果在一個教室,基於mac地址的廣播發包就OK了;如果不在一個教室,即跨網路發包,那麼就會把你的包交給教室負責人(網關)來轉發。Mac地址及IP地址唯一標識了你在互聯網中的位置。
ARP協議
IP地址與mac地址的映射關係
傳輸層
傳輸層建立埠到埠的通信
埠標識主機上的應用程式,是應用程式與網卡關聯的編號
埠範圍:0-65535,前1024個埠為系統占用
有了IP地址+mac地址+埠,我們就能確定世界上唯一的電腦的應用程式
TCP協議
- 可靠傳輸,提供的是流式協議為了方便傳輸, 將大塊數據分割成以報文段(segment) 為單位的數據包進行管理。 而可靠的傳輸服務是指, 能夠把數據準確可靠地傳給對方。 即TCP 協議為了更容易傳送大數據才把數據分割, 而且 TCP 協議能夠確認數據最終是否送達到對方。所以,TCP連接相當於兩根管道(一個用於伺服器到客戶端,一個用於客戶端到伺服器),管道裡面數據傳輸是通過位元組碼傳輸,傳輸是有序的,每個位元組都是一個一個來傳輸。
UDP協議
無連接協議,不可靠傳輸
應用層
用戶使用的程式都是應用程式,均工作於應用層,規定了應用程式的數據格式