首頁 常見問題 tcp/ip參考模型分為哪幾層?

tcp/ip參考模型分為哪幾層?

Nov 25, 2020 pm 02:01 PM
tcp/ip

tcp/ip參考模型分為4層,分別為:1、資料鏈結層,實現網卡介面的網路驅動程序,以處理資料在實體媒介上的傳輸;2、網路層,實現資料包的選路與轉送;3、傳輸層,為兩台主機上的應用程式提供端對端的通訊;4、應用層,負責處理應用程式的邏輯。

tcp/ip參考模型分為哪幾層?

TCP/IP協定族是四層協定係統,自底而上分別是資料鏈結層、網路層、傳輸層、應用層。每一層完成不同
的功能,且透過若干協定來實現,上層協定使用下層協定提供的服務。
tcp/ip參考模型分為哪幾層?

資料鏈結層(網路介面層)

#資料鏈結層實作了網路卡接口的網路驅動程序,以處理資料在實體媒介(如乙太網路、令牌環等)上的傳輸。

資料鏈結層兩個常用的協定是ARP協定(Address Resolve Protocol,位址解析協定)和RARP協定(ReverseAddress Resolve Protocol,逆位址解析協定)。它們實現了IP位址和機器實體位址(通常是MAC位址,乙太網路、令牌環和802.11無線網路都使用MAC位址)之間的相互轉換。

網路層使用IP位址尋址一台機器,而資料鏈結層使用實體位址尋址一台機器,因此網路層必須先將目標機器的IP位址轉換成其實體位址,才能使用資料鏈結層提供的服務,這就是ARP協定的用途。

RARP協定僅用於網路上的某些無磁碟工作站。因為缺乏儲存設備,無磁碟工作站無法記住自己的IP位址,但它們可以利用網路卡上的實體位址來向網
絡管理者(伺服器或網路管理軟體)查詢自身的IP位址。運行RARP服務的網路管理者通常存有該網路上所有機器的實體位址到IP位址的對應。

網路層

網路層實作封包的選路與轉送。
WAN(Wide Area Network,廣域網路)通常使用眾多分級的路由器來連接分散的主機或LAN(Local Area Network,區域網路),因此,通訊的兩台主機一般不是直接相連的,而是透過多個中間節點(路由器)連接的。網路層的任務就是選擇這些中間節點,以決定兩台主機之間的通訊路徑。同時,網路層對上層協定隱藏了網路拓撲連接的細節,使得在傳輸層和網路應用程式看來,通訊的雙方是直接相連的。

網路層最核心的協定是IP協定(Internet Protocol,因特網協定)。 IP協定根據封包的目的IP位址來決定如何投遞它。如果封包無法直接傳送給目標主機,那麼IP協定就為它尋找一個合適的下一跳(next hop)路由器,並將封包交付給該路由器來轉送。多次重複此過程,資料包最終到達目標主機,或因發送失敗而被丟棄。可見,IP協定使用逐跳(hop by hop)的方式來決定通訊路徑。

網路層另一個重要的協定是ICMP協定(Internet Control Message Protocol,因特網控制封包協定)。它是IP協定的重要補充,主要用於偵測網路連線。
tcp/ip參考模型分為哪幾層?

8位元類型欄位用於區分封包類型。它將ICMP封包分為兩大類
錯誤封包,這類封包主要用來回應網路錯誤,例如目標無法到達(類型值為3)和重定向(類型值為5);
查詢封包,這類封包用來查詢網路信息,例如ping程式就是使用ICMP封包查看目標是否可到達(類型值為8)的。
有的ICMP封包也使用8位元代碼欄位來進一步細分不同的條件。例如重定向封包使用代碼值0表示對網路重定向,代碼值1表示對主機重定向。
ICMP封包使用16位元校驗和欄位對整個封包(包括頭部和內容​​部分)進行循環冗餘校驗(Cyclic Redundancy Check,CRC),以檢驗封包在傳輸過程中是否損壞。不同的ICMP封包類型有不同的正文內容。

傳輸層

傳輸層為兩台主機上的應用程式提供端到端(end to end)的通信。與網路層所使用的逐跳通訊方式不同,傳輸層只關心通訊的起始端和目的端,而不在乎封包的中轉過程。

tcp/ip參考模型分為哪幾層?

#

垂直的實線箭頭表示TCP/IP協定族各層之間的實體通訊(資料包確實是沿著這些線路傳遞的),而水平的虛線箭頭表示邏輯通訊線路。此圖中也附帶描述了不同實體網路的連接方法。可見,
資料鏈結層(驅動程式)封裝了實體網路的電氣細節;網路層封裝了網路連接的細節;傳輸層則為應用程式封裝了一條端到端的邏輯通訊鏈路,它負責資料的收發、連結的超時重連等。

傳輸層協定:TCP協定、UDP協定。

  • TCP協定(Transmission Control Protocol,傳輸控制協定)為應用層提供可靠的、連接導向的和基於流(stream)的服務。 TCP協定使用逾時重傳、資料確認等方式來確保資料包正確地傳送至目的端,因此TCP服務是可靠的。使用TCP協定通訊的雙方必須先建立TCP連接,並在核心中為此連接維持一些必要的資料結構,例如連接的狀態、讀寫緩衝區,以及諸多定時器等。當通訊結束時,雙方必須關閉連線以釋放這些核心資料。 TCP服務是基於流的。基於流的資料沒有邊界(長度)限制,它源源不斷地從通訊的一端流入另一端。發送端可以逐個位元組地向資料流中寫入數據,接收端也可以逐個位元組地將它們讀出。

  • UDP協定(User Datagram Protocol,使用者資料報協定)則與TCP協定完全相反,它為應用層提供不可靠、無連線和基於資料報的服務。 「不可靠」表示UDP協定無法保證資料從傳送端正確傳送到目的端。如果資料在中途遺失,或者目的端透過資料校驗發現資料錯誤而將其丟棄,則UDP協定只是單地通知應用程式發送失敗。因此,使用UDP協定的應用程式通常要自行處理資料確認、逾時重傳等邏輯。 UDP協定是無連線的,即通訊雙方不保持一個長久的聯繫,因此應用程式每次發送資料都要明確指定接收端的位址(IP位址等資訊)。基於數據報的服務,是相對基於流的服務而言的。每個UDP資料封包都有一個長度,接收端必須以該長度為最小單位將其所有內容一次讀出,否則資料將被截斷。

應用層

#應用程式層負責處理應用程式的邏輯。
資料鏈結層、網路層和傳輸層負責處理網路通訊細節,這部分必須既穩定又高效,因此它們都在核心空間中實現。而應用層則在用戶空間實現,因為它負責處理眾多邏輯,例如檔案傳輸、名稱查詢和網路管理等。如果應用層也在核心中實現,則會使核心變得非常龐大。當然,也有少數伺服器程式是在核心中實現的,這樣程式碼就無須在用戶空間和核心空間來回切換(主要是資料的複製),大大提高了工作效率。不過這種程式碼實現起來較複雜,不夠靈活,且不便於移植。

ping是應用程序,而不是協議,前面說過它利用ICMP報文檢測網路連接,是調試網路環境的必備工具。

telnet協議是一種遠端登入協議,它使我們可以在本地完成遠端任務。

OSPF(Open Shortest Path First,開放最短路徑優先)協議是一種動態路由更新協議,用於路由器之間的通信,以告知對方各自的路由資訊。

DNS(Domain Name Service,網域名稱服務)協定提供機器網域到IP位址的轉換。

應用層協定(或程式)可能會跳過傳輸層直接使用網路層提供的服務,例如ping程式和OSPF協定。應用層協定(或程式)通常既可以使用TCP服務,又可以使用UDP服務,例如DNS協定。我們可以透過/etc/services檔案查看所有知名的應用層協議,以及它們都能使用哪些傳輸層服務。

五層協定背後的想法:上層屏蔽下層細節,只使用其提供的服務。 高內聚低耦合,每一層專注於其功能,各層之間的關係依賴不大。

封包在每層有不同的格式,從上到下依序叫段,資料報,幀,資料從應用層透過協定堆疊向下傳遞,每經過一層加上對應層協定的報頭,最後封裝成訊框發送到傳輸媒體上,到達路由器或目的主機剝掉頭部,交付給上層需要者。 這個過程稱為封裝,傳輸,分離,分用。

以上是tcp/ip參考模型分為哪幾層?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

tcp/ip的全名是啥 tcp/ip的全名是啥 Nov 29, 2022 pm 04:25 PM

tcp/ip全名為“Transmission Control Protocol/Internet Protocol”,中文意思是“傳輸控制協定/網際協定”。 TCP/IP協定不只指的是TCP和IP兩個協議,而是指一個由FTP、SMTP、TCP、UDP、IP等協定所構成的協定簇,只是因為在TCP/IP協定中TCP協定和IP協定最具代表性,所以稱為TCP/IP協定。

如何利用PHP與TCP/IP協定進行資料通信 如何利用PHP與TCP/IP協定進行資料通信 Jul 29, 2023 pm 01:46 PM

如何利用PHP與TCP/IP協定進行資料通訊引言:在現代網路時代,資料通訊是非常重要的一個面向。無論是客戶端與伺服器之間的通信,或是不同伺服器之間的通信,TCP/IP協定一直是最常用的通訊協定之一。本文將介紹如何利用PHP語言與TCP/IP協定進行資料通信,並提供相關的程式碼範例。一、TCP/IP協定簡介TCP/IP協定是Internet協定簇的基礎,它定義

osi和tcp/ip的差別和聯繫是什麼 osi和tcp/ip的差別和聯繫是什麼 Aug 15, 2022 pm 01:55 PM

區別:1、TCP/IP是一個協定簇,而OSI是一個模型;2、TCP/IP是五層結構,而OSI是七層結構;3、TCP/IP的第三層僅支援IP協議,OSI支援所有的網路層協定。聯繫:1、OSI引入了服務、介面、協議、分層的概念,而TCP/IP借鑒了OSI的概念;2、OSI先有模型,後有協議,先有標準,後進行實踐,而TCP/ IP先有協定和應用再提出了模型,且是參照的OSI模型。

tcp和ip的差別是什麼 tcp和ip的差別是什麼 Sep 04, 2023 pm 02:19 PM

TCP和IP是網際網路中兩個不同的協定:1、TCP是一種運輸層協議,而IP是一種網路層協定;2、TCP提供了資料包的分段、排序、確認和重傳等功能,而IP協定負責為資料包提供來源和目標位址;3、TCP是面向連線的協議,而IP協定是無連線的;4、TCP也提供流量控制和擁塞控制。

tcp ip參考模型中屬於應用層的協定有哪些 tcp ip參考模型中屬於應用層的協定有哪些 Jul 04, 2022 am 10:09 AM

應用層協定有:1、Telnet,允許一台機器上的用戶,登入遠端機器上,並進行工作;2、FTP,提供了將檔案從一台機器上移到另一台機器上的方法; 3、SMTP,是一種提供電子郵件傳輸的協定;4、SNMP,是用於在IP網路管理網路節點的一種標準協定;5、DNS,主要用於將人們所熟悉的網址「翻譯」成電腦可以理解的IP位址;6、HTTP,是一個請求-回應協議,用於在WWW上取得主頁。

Go語言中常見的TCP/IP錯誤解析 Go語言中常見的TCP/IP錯誤解析 May 31, 2023 pm 10:21 PM

Go語言是一門不斷發展壯大的程式語言,它被設計得非常適合實現高效能、可靠性和並發性等方面的網頁應用程式。在使用Go編寫TCP/IP協定相關的網路程式時,我們很容易遇到各種錯誤,而一些常見的TCP/IP錯誤也會為程式的偵錯帶來一定的難度。本文將圍繞著如何解決Go語言中的常見TCP/IP錯誤這一主題展開闡述。一、EOF錯誤EOF(EndOfFile)錯誤通常

ip屬於電腦網路體系結構的什麼協議 ip屬於電腦網路體系結構的什麼協議 Aug 29, 2022 pm 04:12 PM

ip屬於電腦網路體系結構的「網路層」協定。 IP指網路互連協議,是TCP/IP體系中的網路層協議,它可以向傳輸層提供各種協議的訊息,例如TCP、UDP等;對下可將IP資訊包放到鏈路層,透過乙太網路、令牌環網路等各種技術來傳送。

什麼協定是internet最基本的協議 什麼協定是internet最基本的協議 Jul 21, 2022 pm 02:17 PM

“TCP/IP”協定是internet最基本的協定。 TCP/IP(傳輸控制協定/網路協定)是一種網路通訊協議,它規範了網路上的所有通訊設備,特別是一個主機與另一個主機之間的資料往來格式以及傳送方式;TCP/IP協定是internet最核心也是最基本的協議,它嚴格來說是一個四層的體系結構,應用層、傳輸層、網路層和資料鏈結層都包含其中。