淺談OSI七層網絡模型和TCP/IP四層模型

OSI七層網絡模型

  OSI(Open System Interconnection)開放系統互連參考模型是國際標準化組織(ISO)制定的一個用於計算機或通訊系統間互聯的標準體系。web

 

OSI七層模型vim

功能瀏覽器

對應的網絡協議安全

應用層服務器

應用層是網絡體系中最高的一層,也是惟一面向用戶的一層,也可視爲爲用戶提供經常使用的應用程序,每一個網絡應用都對應着不一樣的協議網絡

HTTP、TFTP, FTP, NFS, WAIS、SMTPssh

表示層tcp

主要負責數據格式的轉換,確保一個系統的應用層發送的消息能夠被另外一個系統的應用層讀取,編碼轉換,數據解析,管理數據的解密和加密,同時也對應用層的協議進行翻譯測試

Telnet, Rlogin, SNMP, Gopher編碼

會話層

負責網絡中兩節點的創建,在數據傳輸中維護計算機網絡中兩臺計算機之間的通訊鏈接,並決定什麼時候終止通訊

SMTP, DNS

傳輸層

是整個網絡關鍵的部分,是實現兩個用戶進程間端到端的可靠通訊,處理數據包的錯誤等傳輸問題。是向下通訊服務最高層,向上用戶功能最底層。即向網絡層提供服務,向會話層提供獨立於網絡層的傳送服務和可靠的透明數據傳輸。

TCP, UDP

網絡層

 

進行邏輯地址尋址,實現不一樣網絡之間的路徑選擇,IP就在網絡層

IP, ICMP, ARP, RARP, AKP, UUCP

數據鏈路層

物理地址(MAC地址),網絡設備的惟一身份標識。創建邏輯鏈接、進行硬件地址尋址,相鄰的兩個設備間的互相通訊

FDDI, Ethernet, Arpanet, PDN, SLIP, PPP,STP。HDLC,SDLC,幀中繼

物理層

七層模型中的最底層,主要是物理介質傳輸媒介(網線或者是無線),在不一樣設備中傳輸比特,將0/1信號與電信號或者光信號互相轉化

IEEE 802.1A, IEEE 802.2到IEEE 802

數據發送時從上至下封裝,收到數據包後從下至上解包。

TCP/IP四層模型

TCP/IP四層模型:TCP/IP參考模型是計算機網絡的祖父ARPANET和其後繼的因特網使用的參考模型。

 

 

常見的網絡相關的協議

DNS:域名解析協議 www.baidu.com

SNMP(Simple Network Management Protocol)網絡管理協議

DHCP(Dynamic Host Configuration Protocol)動態主機配置協議,它是在TCP/IP網絡上使客戶機得到配置信息的協議

FTP(File Transfer Protocol)文件傳輸協議,它是一個標準協議,是在計算機和網絡之間交換文件的最簡單的方法。

TFTP(Trivial File Transfer Protocol):小文件傳輸協議

HTTP(Hypertext Transfer Protocol ):超文本傳輸協議

HTTPS(Secure Hypertext Transfer Protocol):安全超文本傳輸協議,它是由Netscape開發並內置於其瀏覽器中,用於對數據進行壓縮和解壓操做.

ICMP(Internet Control Message Protocol):Internet控制信息協議,互聯網控制報文協議

ping  ip定義消息類型有:TTL超時、地址的請求與應答、信息的請求與應答、目的地不可到達

SMTP(Simple Mail Transfer Protocol):簡單郵件傳送協議

TELNET Protocol:虛擬終端協議

UDP(User Datagram Protocol):用戶數據報協議,它是定義用來在互連網絡環境中提供包交換的計算機通訊的協議

TCP(Transmission Control Protocol):傳輸控制協議,是一種面向鏈接的、可靠的、基於字節流的傳輸層通訊協議  log轉發:開啓一個協議:tcp(三次握手和四次揮手) 

TCP三次握手協議

TCP的鏈接創建是一個三次握手過程,目的是爲了通訊雙方確認開始序號,以便後續

通訊的有序進行。主要步驟以下:

1. 鏈接開始時,鏈接創建方(Client)發送SYN包,幷包含了本身的初始序號a;——鏈接請求

2. 鏈接接受方(Server)收到SYN包之後會回覆一個SYN包,其中包含了對上一個a包

的迴應信息ACK,迴應的序號爲下一個但願收到包的序號,即a+1,而後還包含

了本身的初始序號b;——請求確認

3. 鏈接創建方(Client)收到迴應的SYN包之後,回覆一個ACK包作響應,其中包含了

下一個但願收到包的序號即b+1。——鏈接確認

TCP四次揮手

TCP終止鏈接的四次握手過程以下:

1. 首先進行關閉的一方(即發送第一個FIN)將執行主動關閉,而另外一方(收到這

個FIN)執行被動關閉。

2. 當服務器收到這個FIN,它發回一個ACK,確認序號爲收到的序號加1。和SYN一

樣,一個FIN將佔用一個序號。

3. 同時TCP服務器還向應用程序(即丟棄服務器)傳送一個文件結束符。接着這個

服務器程序就關閉它的鏈接,致使它的TCP端發送一個FIN。

4. 客戶必須發回一個確認,並將確認序號設置爲收到序號加1。

 

 總結

  TCP(Transmission Control Protocol,傳輸控制協議)是基於鏈接的協議,也就是說,在正式收發數據前,必須和對方創建可靠的鏈接。
一個TCP鏈接必需要通過三次「對話」才能創建起來,其中的過程很是複雜,咱們這裏只作簡單、形象的介紹,你只要作到可以理解這個過程便可。
咱們來看看這三次對話的簡單過程:主機A向主機B發出鏈接請求數據包:「我想給你發數據,能夠嗎?」,這是第一次對話;主機B向主機A發送贊成鏈接
和要求同步(同步就是兩臺主機一個在發送,一個在接收,協調工做)的數據包:「能夠,你何時發?」,這是第二次對話;主機A再發出一個數據包
確認主機B的要求同步:「我如今就發,你接着吧!」,這是第三次對話。三次「對話」的目的是使數據包的發送和接收同步,通過三次「對話」以後,主機A
才向主機B正式發送數據。 UDP(User Data Protocol,用戶數據報協議)是與TCP相對應的協議。它是面向非鏈接的協議,它不與對方創建鏈接,
而是直接就把數據包發送過去!  
  

 UDP適用於一次只傳送少許數據、對可靠性要求不高的應用環境。好比,咱們常用「ping」命令來測試兩臺主機之間TCP/IP通訊是否正常,
其實「ping」命令的原理就是向對方主機發送UDP數據包,而後對方主機確認收到數據包,若是數據包是否到達的消息及時反饋回來,那麼網絡就是通的。
例如,在默認狀態下,一次「ping」操做發送4個數據包(如圖2所示)。你們能夠看到,發送的數據包數量是4包,收到的也是4包(由於對方主機收到
後會發回一個確認收到的數據包)。這充分說明了UDP協議是面向非鏈接的協議,沒有創建鏈接的過程。正由於UDP協議沒有鏈接的過程,因此它的通訊
效果高;但也正由於如此,它的可靠性不如TCP協議高。QQ就使用UDP發消息,所以有時會出現收不到消息的狀況。 tcp協議和udp協議的差
 
 
TCP 
UDP 
是否鏈接
面向鏈接
 面向非鏈接
傳輸可靠性
 可靠 
不可靠
應用場合
傳輸大量數據
視頻,語音通信,或網絡環境很好,好比局域網中通信可使用
udp。數據傳輸完整性,能夠經過應用層的軟件來校對就能夠了。
少許數據 
傳文件,數據完整性要求高
速度
對系統資源
的要求
較多      
   較少

     結構

 

  信息包有20個字節 UDP信息包的標題很短,只有8個字節
     

TCP和UDP經常使用端口號名稱

能夠查詢 vim /etc/services    此文件中,包含全部常見端口號及服務名稱

21

ftp

文件傳輸服務

22

ssh

安全遠程鏈接服務

23

telnet

遠程鏈接服務

25

smtp

電子郵件服務

53

DNS

域名解析服務,有tcp53也有用udp53端口傳輸

80

http

web服務

443

https

安全web服務

相關文章
相關標籤/搜索