計算機網絡--四層模型,IP地址和MAC地址

????????四層模型:分別是應用層,傳輸層,網絡層和鏈路層。

? ? ? ? 應用層:提供了應用程序之間相互通信的接口,允許用戶訪問網絡服務。這一層定義了應用程序如何與底層網絡進行交互。例如HTTP協議。

????????傳輸層:它處理數據的分段、傳輸、錯誤檢查和流控制。它確保數據從源主機的一個進程傳輸到目標主機的另一個進程。例如TCP協議和UDP協議。

? ? ? ? 網絡層:這一層負責數據包在不同網絡之間的路由,即選擇數據從源主機到目的主機的最佳路徑。它處理邏輯尋址(IP地址)和數據包的轉發。主要使用IP協議,它最核心的協議,負責數據包的封裝、尋址和路由。

? ? ? ? 鏈路層:這是最底層的一層,負責將IP數據包封裝成適合物理網絡傳輸的,并進行物理傳輸。它處理物理尋址(MAC地址)、錯誤檢測和介質訪問控制。它關心的是數據在單個物理鏈路上如何傳輸。

? ? ? ? 數據封裝和解封裝過程:

  • ?發送方:

    1. 應用層生成數據。

    2. 傳輸層將數據封裝成報文段/用戶數據報,添加傳輸層頭部(如端口號)。

    3. 網絡層將報文段/用戶數據報封裝成IP數據包,添加網絡層頭部(如源/目的IP地址)。

    4. 網絡接口層將IP數據包封裝成幀,添加數據鏈路層頭部和尾部(如源/目的MAC地址)。

    5. 物理層將幀轉換成比特流,通過物理介質發送出去。

  • ?接收方:

    1. 物理層接收比特流,并將其轉換為幀。

    2. 網絡接口層解封裝幀,去除數據鏈路層頭部和尾部,得到IP數據包。

    3. 網絡層解封裝IP數據包,去除網絡層頭部,得到報文段/用戶數據報。

    4. 傳輸層解封裝報文段/用戶數據報,去除傳輸層頭部,得到數據。

    5. 應用層處理數據。


? ? ? ? 七層模型:物理層(第一層),數據鏈路層(第二層),網絡層(第三層),傳輸層(第四層),會話層(第五層),表示層(第六層),應用層(第七層)。


????????分組交換(Packet Switching):分組交換是目前計算機網絡中數據傳輸的主要方式。在分組交換中,發送方將要傳輸的完整報文(消息)分解成一系列較小的、固定大小或可變大小的數塊,每個數據塊稱為一個分組 (Packet)。每個分組除了包含原始數據的一部分外,還會附帶一個控制信息頭部 (Header)。這個信息頭部包括源地址,目的地址,序列號和其他控制信息。

? ? ? ? 分組交換的優點:

? ? ? ? 1.高效性:與電路交換不同,分組交換不需要預先分配固定帶寬。多個用戶可以共享網絡資源,當某個用戶沒有數據發送時,其占用的帶寬可以被其他用戶使用,從而大大提高了帶寬利用率。

? ? ? ? 2.靈活性:分組可以根據網絡狀況(如擁塞情況、鏈路故障)動態選擇不同的傳輸路徑,增強了網絡的健壯性。

? ? ? ? 3.突發性數據傳輸 (Bursty Data):非常適合傳輸突發性的數據(即數據量變化大,發送時有時無的情況)。傳統的電話網絡(電路交換)不適合處理這種突發性數據,因為即使沒有數據發送,也預留了帶寬。

? ? ? ? 4.成本效益 (Cost-effectiveness):由于資源共享和更低的帶寬要求,分組交換網絡通常比電路交換網絡更經濟。

? ? ? ? 5.錯誤控制 (Error Control):由于數據被分成小塊,即使某個分組損壞,也只需要重傳該分組,而不是整個報文,降低了重傳開銷。


????????字節順序:分為大端序(big endian)和小端序(little endian)。大端序中,地址的字節順序和我們閱讀習慣相符,例如0x0400,存儲為0x04 0x00,而小端序對計算機而言更有意義,存儲為0x 00 0x04。


????????IPV4:IPv4地址的總長度是 ??32位??。這32位二進制數分成4個8位的部分,每個部分用一個0到255之間的十進制數表示。IP地址被分為網絡部分和主機部分,網絡部分是位于IP地址高位,主機部分位于IP地址低位。

? ? ? ? 子網掩碼:子網掩碼的形式和IPV4地址類似,例如255.255.255.0,255.255.252.0,255.128.0.0,這三個子網掩碼分別是24位,22位,9位。通過判斷IP地址按位與子網掩碼的值是否相等,我們可以判斷兩個IP地址是否位于同一網絡中。


? ? ? ? MAC地址:物理地址,唯一標識一塊網卡,在局域網內部唯一。為什么我們需要MAC地址,如果我們在鏈路層嘗試去解析IP地址的話,是否就不需要使用MAC地址來決定幀的轉發方向了呢?答案是NO。以太網并不只承載IPV4,它還能承載 IPv6、ARP、MPLS、甚至非 IP 的協議。如果這樣設定的話,他就只能綁死在IP地址上了。并且由于MAC地址解析速度遠快于IP地址的解析速度,也會使轉發效率下降。并且由于MAC地址是扁平的,適合局域網內設備尋址,而IP地址是分層的,用來做全局路由。如果鏈路層都用 IP,就會增加局域網內部的復雜性(需要維護大量 IP 路由表)。

????????地址解析協議(ARP):ARP的功能就是,在局域網中,將IP地址解析為MAC地址。舉個例子,在送外賣時,IP地址負責將我們送到對應的公司大樓,而MAC地址則負責讓我們把外賣送到對應的工位中。在跨網段通信中,IP地址只負責將我們送到對應的網絡中,然后就由MAC地址來接管數據。當主機A傳送數據時,它會在ARP緩存表中先查看目標IP地址和對應MAC地址是否被存儲。若主機不知道目標IP對應的MAC地址,則在局域網內廣播ARP請求,讓目標IP的主機回應自己的MAC地址,這之后會更新ARP緩存表。得知對應的MAC地址后,則用MAC地址封裝幀發送數據,此時,不再需要進行廣播。通過交換機可以做到單播。交換機是二層設備(鏈路層),核心是MAC地址表,幀到達交換機時,交換機會查看目標MAC。如果在MAC表中找到對應端口,直接把幀發送到對應端口(單播)。如果找不到,才做廣播。

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

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

相關文章

解析、創建Excel文件的開源庫OpenXLSX介紹

OpenXLSX是一個C庫,用于讀取、寫入、創建和修改.xlsx格式的Microsoft Excel文件,源碼地址:https://github.com/troldal/OpenXLSX ,License為BSD-3-Clause,可在Windows、Linux、MaCOS平臺上使用。最新發布版本為v0.3.2&…

【C++】C++11 篇二

【C】C11 篇二前言移動構造函數移動賦值運算符重載類成員變量初始化 (缺省值出自C11強制生成默認函數的關鍵字default:禁止生成默認函數的關鍵字delete:繼承和多態中的final與override關鍵字(出自C11可變參數模板遞歸函數方式展開參數包逗號表達式展開參…

構建Python環境的幾種工具

本文主要介紹如何構建Python環境來處理不同的工作。 1.常用的構建Python環境的工具 ①venv(內置模塊):Python 3.3 內置標準庫模塊,無需額外安裝。 ②virtualenv:venv的前身,功能更強大且支持舊版Python。 ③conda:來自 Anaconda 或 Miniconda。不僅能…

c#項目編譯時外部依賴文件的同步問題

很多場景因為資源文件太多或太大無法放到資源里面或者是依賴的dll文件,需要編譯時同步到bin\debug或bin\release下的,這里面要修改工程文件代碼實現。 比如,我把這個項目依賴的dll和附加文件放到ref_dll文件夾里面,希望編譯的時候…

數學建模常用算法-模擬退火算法

一、模擬退火算法模擬退火的靈感來源于物理中的 “退火過程”—— 將金屬加熱到高溫后,緩慢冷卻,金屬原子會在熱能作用下自由運動,逐漸形成能量最低的穩定結構。算法將這一過程抽象為數學模型:“溫度 T”:對應物理中的…

架構很簡單:業務架構圖

緣起業務架構是一個復雜的體系,如何更簡單的表達,并能使用起來呢?所謂:大道至簡。基于此,這篇文章就開始了。業務是一切架構的開始,如果沒有業務,架構又有什么作用呢?所以做架構首先…

【前端埋點】純前端實現 A/B Test

“純前端實現 A/B Test”,意思就是 沒有后端分流、也不依賴流量網關,那么只能靠前端邏輯來做“流量切分”。 🎯 目標 80% 的用戶 → A 頁面20% 的用戶 → B 頁面且要保證 同一個用戶每次訪問結果一致(否則用戶刷新頁面時 A/B 會跳…

Day22_【機器學習—集成學習(3)—Boosting—Adaboost算法】

Adaptive Boosting(自適應提升)是基于 Boosting思想實現的一種集成學習算法,核心思想是通過逐步提高那些被前一步分類錯誤的樣本的權重來訓練一個強分類器。一、Adaboost算法直線相當于一個弱學習器,正確的數據權重減小,錯誤的數據權重增加二…

C#語言入門詳解(18)傳值、輸出、引用、數組、具名、可選參數、擴展方法

C#語言入門詳解(18)傳值、輸出、引用、數組、具名、可選參數、擴展方法一、傳值參數1. 值類型2. 引用類型,并且創建對象3. 引用類型,不創建對象二、引用參數1. 值類型2. 引用類型,創建新對象3. 引用類型,不…

模型部署:(二)安卓端部署Yolov5-v6.0目標檢測項目全流程記錄

模型部署:(二)安卓端部署Yolov5-v6.0目標檢測項目全流程記錄1、下載NCNN項目2、下載基于安卓的yolov5項目3、修改相應的配置文件4、將項目打包成apk包5、部署自己訓練的yolov5模型6、相關資料下載:1、下載NCNN項目 # 鏈接地址 ht…

圖形基礎算法:如何將點與帶曲線邊的多邊形位置關系算法做穩定

簡介判斷點與多邊形位置關系算法是幾何算法中最基礎的算法之一,包括布爾運算在內的非常非常多的算法都會用到它。它的穩定是算法庫穩定的關鍵。下面我們從一個邊都是直線的多邊形開始了解射線法的原理。然后看看引入曲線后會帶來哪些問題,以及在實際應用…

react的filber架構

好問題 👍 你問的是 React Fiber 架構。這是 React 16 引入的核心機制,用來解決 React 在大規模更新時的性能問題。下面我給你從 背景 → Fiber 是什么 → 原理 → 優點 → 流程 來系統講。一、為什么需要 Fiber?在 React 15 及以前&#xff…

Lucky STUN穿透結合群暉NAS實現docker下transmission監聽端口動態更新

參考文章 LCUKY系列教程 一 「LUCKY STUN穿透」使用 cURL 自動修改 Transmission 的監聽端口 二 「LUCKY STUN穿透」使用 Webhook 自動修改 qbittorrent 的監聽端口 三 LUCKY STUN穿透在Windows上使用UPnP工具為BT客戶端自動添加內外端口號不同的映射規則 四「LUCKY STUN穿透」…

如何在Ubuntu暢玩鳴潮等游戲

本教程只包括Steam上的游戲。# 更新軟件源 sudo apt update # 安裝Steam sudo apt install steam首先,在Ubuntu的snap商店安裝Steam,啟動,登陸,下載游戲。到這里的操作都比較簡單,對于沒有反作弊的游戲,往往…

機器學習09——聚類(聚類性能度量、K均值聚類、層次聚類)

上一章:機器學習08——集成學習 下一章:機器學習10——降維與度量學習 機器學習實戰項目:【從 0 到 1 落地】機器學習實操項目目錄:覆蓋入門到進階,大學生就業 / 競賽必備 文章目錄一、聚類任務(無監督學習…

解決 Docker 構建中 Python 依賴沖突的完整指南

問題背景 在基于 registry.cn-shenzhen.aliyuncs.com/all_dev/dev:invoice-base 鏡像構建 Docker 容器時,我們遇到了一個常見的 Python 依賴管理問題: ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-…

光子計算芯片實戰:Lightmatter Passage互連架構性能評測

點擊 “AladdinEdu,同學們用得起的【H卡】算力平臺”,H卡級別算力,80G大顯存,按量計費,靈活彈性,頂級配置,學生更享專屬優惠。 摘要 隨著人工智能計算需求呈指數級增長,傳統電子計算…

基于樹莓派與Jetson Nano集群的實驗邊緣設備上視覺語言模型(VLMs)的性能評估與實踐探索

概述 2018年,TensorFlow Lite團隊的Pete Warden曾提出:“機器學習的未來在于微型化”。如今,隨著人工智能向高性能視覺強大的視覺語言模型(Vision-language models, VLMs)發展,對高性能計算資源的需求急劇…

華為Ai崗機考20250903完整真題

華為Ai崗機考20250903 華為自26屆秋招(2025年起)對AI崗位機考進行了改革,考試題型調整為20道選擇題(15道單選(6分)5道不定項選擇(12分))2道編程題(150300)。 題目核心圍繞人工智能技術(如Transformer架構…

k8s+jenkins+harbor構建Devops平臺

一、環境準備1、準備一主一從k8s機器,(設備好可以一主多從也行)2、一臺harbor倉庫機器(dockerhub訪問不了)二、安裝nfs服務1、在k8s機器上yum install nfs-utils -y systemctl start nfs systemctl enable nfs2、創建共…