詳談OSI七層模型和TCP/IP四層模型以及tcp與udp為什么是4層,http與https為什么是7層

一、網絡模型:OSI七層 vs TCP/IP四層

??? OSI七層模型 (理論參考模型):

??????? 目的:提供一個標準化的理論框架,用于理解網絡通信過程和各層的功能劃分,促進不同廠商設備的互操作性。它是一個理想化的模型。

??????? 分層 (從下到上):

  • ?物理層:傳輸原始比特流 (光、電信號),定義物理接口特性。
  • ?數據鏈路層:在直接相連的節點間可靠傳輸數據幀 (Frame),處理物理尋址 (MAC地址)、錯誤檢測。
  • ?網絡層:負責跨網絡的數據包 (Packet) 路由和尋址 (IP地址),實現主機到主機的通信。
  • ?傳輸層:提供端到端 (進程到進程) 的可靠或不可靠數據傳輸服務 (TCP/UDP),處理分段、流量控制、錯誤恢復。
  • ?會話層:管理、建立、維護和終止應用會話。
  • ?表示層:處理數據的表示格式,如加密/解密、壓縮/解壓縮、字符編碼轉換。
  • ? 應用層:為應用程序提供網絡服務接口 (HTTP, FTP, SMTP, DNS等)。

??? TCP/IP四層模型 (實際應用模型):

??????? 目的:描述互聯網實際運行所依賴的核心協議棧。它是OSI模型的簡化、實用化版本。

??????? 分層 (從下到上):

  • ?網絡接口層:對應OSI的物理層和數據鏈路層。負責在本地鏈路上發送和接收數據幀 (如以太網、Wi-Fi)。
  • ?網際層:對應OSI的網絡層。核心協議是IP協議,負責主機到主機的邏輯尋址 (IP地址) 和路由。
  • ?傳輸層:對應OSI的傳輸層。核心協議是TCP和UDP,負責端到端 (應用進程到應用進程) 的通信。
  • ?應用層:對應OSI的會話層、表示層和應用層。包含了所有高層協議和應用 (HTTP, HTTPS, FTP, SSH, SMTP, DNS, Telnet等)。

關鍵區別總結

OSI七層模型TCP/IP四層模型
目的理論參考模型,標準化框架實際實現模型,描述互聯網核心協議
分層7層 (物理、數據鏈路、網絡、傳輸、會話、表示、應用)4層 (網絡接口、網際、傳輸、應用)
對應關系---網絡接口層 ≈ OSI物理+數據鏈路層
網際層 ≈ OSI網絡層
傳輸層 ≈ OSI傳輸層
應用層 ≈ OSI會話+表示+應用層
實用性主要作為學習和設計參考是互聯網實際運行的基礎
核心協議無具體協議綁定明確綁定IP, TCP, UDP, HTTP等核心協議

二、為什么TCP和UDP是傳輸層(四層)協議?

??? 核心功能定位:

??????? TCP和UDP的核心職責是解決“端到端”(End-to-End) 的通信問題,即運行在不同主機上的應用程序進程之間如何可靠地或高效地傳輸數據。

??????? 它們建立在網絡層(IP層) 提供的“主機到主機”通信能力之上。IP層負責把數據包從源主機送到目的主機,但不關心主機上哪個應用程序接收數據。

??????? TCP/UDP通過端口號(Port) 來標識主機上的特定應用程序進程,從而實現了進程到進程的通信。

??? 提供的關鍵服務:

??????? 連接管理: TCP提供面向連接的、可靠的通信 (建立連接、確認、重傳、流量控制、擁塞控制)。UDP提供無連接的、盡最大努力交付的通信。

??????? 數據分段與重組: 將應用層下傳的大塊數據分割成適合網絡層傳輸的大小 (Segment),并在接收端重組。

??????? 錯誤檢測: 提供校驗和機制檢測傳輸過程中數據的損壞 (TCP/UDP頭都有校驗和字段)。

??? 在TCP/IP模型中的位置:

??????? 它們直接位于網際層(IP層)之上,為應用層的各種協議提供服務。應用層協議(如HTTP、FTP、DNS)明確指定使用TCP還是UDP作為其傳輸載體。

??????? 在TCP/IP四層模型中,它們位于第三層:傳輸層。

??????? 在OSI七層模型中,它們位于第四層:傳輸層。

總結: TCP/UDP的核心職責是管理運行在不同主機上的應用程序進程之間的數據傳輸,這一定位清晰地劃分在傳輸層。

三、為什么HTTP和HTTPS是應用層(七層)協議?

??? 核心功能定位:

??????? HTTP和HTTPS定義了特定應用程序 (主要是Web瀏覽器和Web服務器) 之間交換信息的語義和語法。它們關注的是數據的內容和交互邏輯。

??????? HTTP定義了客戶端如何請求資源 (如網頁、圖片),服務器如何響應請求 (狀態碼、返回資源內容),以及請求/響應的格式 (方法GET/POST、URL、Headers、Body)。

??????? HTTPS在HTTP的基礎上增加了安全層 (通常由TLS/SSL協議實現),提供加密、身份認證和數據完整性保護。

??? 依賴下層服務:

??????? HTTP/HTTPS本身不關心數據如何在網絡中傳輸、路由或保證可靠性。它們將這些任務完全委托給傳輸層協議 (通常是TCP)。

??????? HTTP/HTTPS協議報文 (請求和響應) 是作為TCP連接上傳輸的應用層數據存在的。TCP負責將這些數據可靠地、有序地從瀏覽器進程傳輸到Web服務器進程(或反之)。

??? 在模型中的位置:

??????? TCP/IP模型: 它們位于最頂層:應用層。它們利用傳輸層(TCP)提供的服務來實現Web應用的功能。

??????? OSI模型:

??????????? HTTP: 主要屬于應用層(第7層),因為它定義了應用級的交互。但其Header信息也涉及一些表示層(如字符編碼Content-Type)和會話層(如Cookie管理會話狀態)的功能。

??????????? HTTPS: 更加復雜。

??????????????? HTTP部分:仍屬于應用層。

??????????????? TLS/SSL部分:主要工作在表示層(第6層),負責會話建立時的握手協商、加密算法協商、密鑰交換、數據加密/解密、數據完整性校驗。它也涉及會話層(管理安全會話)。最終,加密后的HTTP數據仍然通過TCP傳輸。

總結: HTTP/HTTPS定義了Web應用程序做什么和怎么做 (請求什么資源、如何響應、如何保證安全),這些是最高層次的、面向具體應用的邏輯。它們直接為最終用戶或應用程序提供服務,并依賴于下層的傳輸層(TCP)來處理數據傳輸的細節,因此屬于應用層協議。

四、關鍵結論

??? 分層思想的核心: 每一層利用下一層提供的服務,并為上一層提供服務。下層關注“如何傳輸”,上層關注“傳輸什么”和“為什么傳輸”。

??? TCP/UDP (傳輸層): 解決進程到進程的通信問題(用端口號標識),提供可靠性(TCP)或效率(UDP)。位于OSI第4層 / TCP/IP第3層。

??? HTTP/HTTPS (應用層): 定義特定應用程序(Web) 的交互規則和數據格式。它們依賴傳輸層(TCP)來傳輸數據。HTTPS的安全功能(TLS/SSL)主要在OSI的表示層實現。位于OSI最高層(第7層為主) / TCP/IP最高層(第4層)。

??? 模型對應: TCP/IP的應用層 ≈ OSI的會話層+表示層+應用層。TCP/IP的傳輸層 ≈ OSI的傳輸層。因此說HTTP/HTTPS在TCP/IP是4層(應用層),在OSI是7層(應用層),本質上是同一層級(最高層)在不同模型中的名稱差異。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/93395.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/93395.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/93395.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ClickHouse 高性能實時分析數據庫-索引與數據跳過(查詢的“瞬移”能力)

告別等待,秒級響應!這不只是教程,這是你駕馭PB級數據的超能力!我的ClickHouse視頻課,凝練十年實戰精華,從入門到精通,從單機到集群。點開它,讓數據處理速度快到飛起,讓你…

Jetpack - Room(Room 引入、Room 優化)

一、Room 引入 1、基本介紹 Room 在 SQLite 上提供了一個抽象層,以便在充分利用 SQLite 的強大功能的同時,能夠流暢地訪問數據庫,官方強烈建議使用 Room 而不是 SQLite 2、演示 (1)Setting 模塊級 build.gradle depend…

【江科大CAN】2.1 STM32 CAN外設(上)

2.1 STM32 CAN外設(上)2.1.1 STM32 CAN外設簡介2.1.2 外圍電路設計2.1.3 STM32 CAN內部結構2.1.4 發送流程詳解2.1.5 接收流程詳解2.1.6 關鍵配置位總結STM32 CAN外設講解 大家好,歡迎繼續觀看CAN總線入門教程。本節開始,我們正式…

人工智能技術革命:AI工具與大模型如何重塑開發者工作模式與行業格局

引言:AI技術爆發的時代背景過去五年間,人工智能領域經歷了前所未有的爆發式增長。從2020年GPT-3的橫空出世到2023年多模態大模型的全面突破,AI技術已經從實驗室走向了產業應用的前沿。開發者作為技術生態的核心推動者,其工作模式正…

傅里葉變換

傅里葉變換:運用頻域的出發點就是能夠將波形從時域變換到頻域,用傅里葉變換可以做到這一點。有如下3種傅里葉變換類型:1.傅里葉積分(FI); 2.離散傅里葉變換(DFT); 3.快速傅里葉變換(FFT)。傅里葉積分是一種將時域的理想數學表達變換成頻域描述的數學技術…

【IQA技術專題】紋理相似度圖像評價指標DISTS

紋理一致性圖像評價指標: Image Quality Assessment: Unifying Structure and Texture Similarity(2020 PAMI)專題介紹一、研究背景二、方法總覽2.1 初始變換2.2 紋理表示和結構表示2.3 DISTS指標2.4 優化DISTS指標三、實驗結果四、總結本文將對統一圖像…

windows下Docker安裝路徑、存儲路徑修改

一、命令行指定安裝路徑? ??下載安裝包??:從Docker官網獲取安裝程序(如Docker Desktop Installer.exe)。??運行PowerShell??: & "H:\Docker Desktop Installer.exe" install --installation-dir"F:…

thingsboard 自定義動作JS編程

在 ThingsBoard 中實現 自定義動作(Custom Action)的 JavaScript 編程,主要通過“Custom action (with HTML template)”方式完成,適用于創建彈窗、編輯實體、控制設備等交互行為。 實現步驟(以添加設備或資…

Spring Boot 簡單接口角色授權檢查實現

一、背景與目標在Spring Boot應用開發中,接口級別的權限控制是系統安全的重要組成部分。本文將介紹一種簡單直接的接口角色授權檢查實現方案,適合快速開發和安全合規檢查場景。二、技術方案概述本方案采用自定義注解攔截器的方式實現,具有以下…

PytorchLightning最佳實踐日志篇

在 PyTorch Lightning(PL)中,日志系統是 “煉丹” 過程中復現實驗、對比效果、排查問題的核心工具。結合實際工程經驗,總結以下最佳實踐和技巧,幫助提升實驗效率: 一、日志工具的選擇與配置 PL 通過統一的s…

基于JavaWeb的兼職發布平臺的設計與實現

開發語言:Java框架:springbootJDK版本:JDK1.8服務器:tomcat7數據庫:mysql 5.7數據庫工具:Navicat12開發軟件:eclipse/myeclipse/ideaMaven包:Maven3.6系統展示系統首頁用戶登錄招聘信…

Linux學習--C語言(指針3)

1.指針函數和函數指針1.1 指針函數指針函數是函數&#xff0c;函數的返回值是指針不能返回局部變量的地址指針函數返回的地址可以作為下一個函數調用的參數1.2 函數指針函數指針是指針&#xff0c;指針指向一個函數#include <stdio.h>int Add(int x, int y) {return x y…

【JAVA EE初階】多線程(上)

目錄 1.預備知識 1.1 馮諾依曼體系結構&#xff1a; 1.2 現代CPU主要關心指標&#xff08;和日常開發密切相關的&#xff09; 1.3 計算機中&#xff0c;一個漢字占幾個字節&#xff1f; 1.4 Windows和Linux的區別 1.5 PCB的一些關鍵要點 2.線程和進程 2.1 創建線程的寫法…

用互聯網思維擴展電商后臺的 CRUD 功能

一、自定義實現MyBatis-Plus逆向工程 多數據源的問題解決了&#xff0c;接下來開始進行實際開發時&#xff0c;你會發現&#xff0c;最麻煩的一件事情就是要創建與數據庫表對應的POJO了。這些沒什么難度&#xff0c;但是繁瑣的內容會占據大量的開發時間。比如一個PmsProducr對…

無代碼測試平臺ATECLOUD全場景測試方案

ATECLOUD 智能云測試平臺是有納米軟件開發的一款以無代碼架構與彈性擴展體系為核心的自動化測試平臺&#xff0c;通過數據模型驅動的創新設計&#xff0c;為研發、產線等多場景提供高效可控的測試解決方案。?無代碼架構 ATECLOUD 打破傳統技術壁壘&#xff0c;構建完全可視化的…

當 AI 重構審計流程,CISA 認證為何成為破局關鍵

在南京審計大學最新發布的《面向審計行業 DeepSeek 大模型操作指南》中&#xff0c;一組數據引發行業深思&#xff1a;通過自動化數據處理、智能風險識別和定制化報告生成&#xff0c;AI 大模型能幫助審計人員降低 40% 以上的人工成本&#xff0c;同時將風險識別準確率提升至 9…

NAT技術、代理服務器

NAT/NAPT技術NAT的全稱是network address translation&#xff0c;網絡地址轉換。NAT 能在對外通信時夠將源 IP 轉為新源 IP&#xff0c;對內通信時將目的ip轉換成新目的ip&#xff0c;實現這個操作&#xff0c;靠的是地址轉換表但NAT的說法其實是不準確的&#xff0c;因為多個…

【硬件-筆試面試題】硬件/電子工程師,筆試面試題-45,(知識點:負反饋的作用,基礎理解,干擾和噪聲的抑制)

目錄 1、題目 2、解答 步驟一&#xff1a;明確負反饋的作用原理 步驟二&#xff1a;逐一分析選項 3、相關知識點 一、負反饋的基本原理 二、負反饋對干擾和噪聲的抑制機制 三、選項分析與答案 四、擴展思考&#xff1a;如何抑制不同位置的干擾&#xff1f; 總結 題目…

Flutter藍牙BLE開發完全指南(內含高級功能擴展)

Flutter藍牙BLE開發完全指南 我將為您提供一個完整的Flutter藍牙BLE實現方案,包含UI設計、權限處理、設備掃描、連接通信等完整功能。 完整實現方案 1. 添加依賴與權限配置 pubspec.yaml dependencies:flutter:sdk: flutterflutter_blue_plus: ^1.10.0permission_handler…

使用 Canvas 替代 <video> 標簽加載并渲染視頻

在部分瀏覽器環境或業務場景下&#xff0c;直接使用 <video> 標簽加載視頻會出現首幀延遲的情況。以下方法通過 WebGPU Canvas 2D 將視頻幀繪制到自定義 Canvas 上&#xff0c;讓 <video> 只做解碼&#xff0c;WebGPU 接管渲染&#xff0c;通過最小化對象創建 精…