【計算機網絡入門】初學計算機網絡(十)(重要)

目錄

1. 網絡層的作用

2. IPV4

2.1 IP 數據報格式?

2.2 IP地址分類方案

2.3 數據的轉發

2.4 特殊用途的IP地址

3. 子網劃分和子網掩碼

3.1? 子網劃分

3.2 子網掩碼


1. 網絡層的作用

? ? ? ? 按照教學五層模型,應用層、傳輸層、網絡層、數據鏈路層、物理層,應用層的單位是報文,經由傳輸層切割為報文段,在網絡層給報文段加了一個IP首部,就變成了IP數據報(分組),經由數據鏈路層封裝成幀,再由物理層以比特的形式進行傳輸。

2. IPV4

2.1 IP 數據報格式?

首部固定部分(20字節) + 可變部分(0-40字節)

????????當IP數據報過于大的時候,會將數據進行分片,我們通過最低位MF和次低位DF,可以了解到分片的信息。假如有一段IP數據報不允許分片,但是這段IP數據報過于大了,那說明這段IP數據報沒有辦法傳給目的網絡。

片偏移是指數據在分片之前所處的位置,以8B為一個單位。

ip數據報頭結構還包含著生存時間(TTL),當每經過一個路由器就會減1,就丟棄分組,如果減到0就會向主機發送一個ICMP報文。

發送和接收方的地址各占32bit。

2.2 IP地址分類方案

????????最初的時候,我們使用IPV4協議,有32bit,也就是說最多能表示2的32次方 = 42億個地址,當時只有政府、學校、軍隊才會有機會使用互聯網,所以42億完全夠用。

2.3 數據的轉發

????????每一個路由器都是一個網關,維護同一類的ip地址;當有數據進行轉發的時候會根據路由轉發表進行轉發。

①當一個IP數據報需要進行發送的時候,首先會查看頭部的源地址和目的地址,判斷是否是同一類網絡(比如B類網絡需要比對前16個bit位),如果屬于同一類網絡那就不需要經過路由器的轉發。

②數據鏈路層把數據分組封裝成MAC幀,根據ARP協議將目的地址的MAC地址找到,根據目的地址的MAC地址由交換機、集線器不斷轉發最終找到目標;目標收到MAC幀之后,把MAC幀的控制信息拆掉,最后得到的是真正的IP數據報。

2.4 特殊用途的IP地址

①主機號全0,既不能用于發送地址也不能用于目的地址。

②C類廣播:x.x.x.255(主機號全為1),對x.x.x進行廣播。

③0.0.0.1只能做源地址。?

④0.0.0.0本網絡的本主機。暫時沒有IP地址。此時需要發送DHCP報文從而獲得地址。

⑤255.255.255.255本網絡進行廣播。

⑥127.x.x.x回環地址,表示主機本身。當我們在本地開發服務端和客戶端,我們需要測試通信,就可以把源地址和目的地址設置成127.0.0.1,由于網絡號是127,網絡層接收之后會發給自己。

3. 子網劃分和子網掩碼

3.1? 子網劃分

????????如果是B類網址,我們有16位主機號,我們可以從16位主機號中拿出一位作為子網號,就可以把這一個網分成兩個子網。簡單的說就是把原本的主機號劃出一部分作為子網號,劃分為不同的子網從而提高資源的利用率。

? 每個子網地址的主機地址不能全0(子網本身),全1(就是廣播地址)。只有網絡號+子網號相同的地址才算是同一個子網。

3.2 子網掩碼

????????本機IP地址和子網掩碼做與運算,可以得到本機網絡號和子網號;目的主機也是如此,這樣一來我們可以判斷目的地址和本地地址是否屬于同一個子網。如果支持子網劃分,那么該路由器的路由轉發表就會增加子網掩碼。目的IP地址和子網掩碼做按位與運算,再和目的網絡號+子網進行對比找到對應的轉發接口進行轉發。

? ? ? ? 加上了子網掩碼,數據該怎么發送呢?首先我們將目的地址和源地址對自己的子網掩碼進行按位與,得到網絡號和子網號,如果網絡號和子網號相同就說明是同一個子網,就不需要進行轉發,此時我們直接把數據報封裝成MAC幀,直接找到目的地址的MAC地址,數據就發送過去了;????????

????????但是如果網絡號和子網號不同,說明不屬于一個子網,需要進行路由器的轉發,通過ARP協議知道網關的MAC地址,所以發送給網關(路由器),在數據鏈路層中,路由器把MAC幀的首部尾部拆除之后交給網絡層,網絡層根據目標地址來決定數據的去向。

? ? ? ? 對于沒有進行子網劃分的網絡,例如C類網絡會給一個默認的子網掩碼:255.255.255.0;

? ? ? ? 對于路由表沒有記載的路由,會有一個默認路由,當ip地址和默認路由的子網掩碼按位與,我們會得到默認路由0.0.0.0就會從指定接口進行轉發。

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

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

相關文章

機器學習(五)

一,多類(Multiclass) 多類是指輸出不止有兩個輸出標簽,想要對多個種類進行分類。 Softmax回歸算法: Softmax回歸算法是Logistic回歸在多類問題上的推廣,和線性回歸一樣,將輸入的特征與權重進行…

基于 Vue 和 SSM 的前后端分離項目實戰:登錄與注冊功能實現

文章目錄 前言項目概述前端部分(Vue)1. 項目初始化2. 頁面布局Login.vueRegister.vue 3. 路由配置4. 主組件 后端部分(SSM)1. 項目結構2. 數據庫設計3. MyBatis 配置4. DAO 層5. Service 層6. Controller 層7. 配置文件8. Spring …

Windows安裝nvm【超詳細圖解】

目錄 前言 一、NVM下載 方式一:官網下載 方式二:GitHub 下載 二、NVM安裝 鏡像源配置 三、Node安裝 四、環境變量配置 前言 NVM(Node Version Manager)是一個命令行工具,用于在一臺計算機上輕松管理和切換多…

KVM虛擬機磁盤創建探究-2

使用 virt-install 命令自動創建磁盤鏡像和使用 qemu-img 手動創建磁盤鏡像,在磁盤鏡像本身格式和基本功能上是一致的,但在一些特性如初始占用磁盤空間、創建時的可配置性等方面存在區別,下面以 QCOW2 格式磁盤鏡像為例進行詳細說明。 初始占…

京準電鐘:NTP校時服務器于安防監控系統應用方案

京準電鐘:NTP校時服務器于安防監控系統應用方案 京準電鐘:NTP校時服務器于安防監控系統應用方案 NTP校時服務器在安防監控系統中的應用方案主要通過高精度時間同步技術,解決設備間時間差異問題,確保日志、錄像等數據的時間一致性…

遞歸遍歷目錄 和 普通文件的復制 [Java EE]

遞歸遍歷目錄 首先 先列出當前目錄所包含的內容 File[] files currentDir.listFiles();if (files null || files.length 0) {// 若是空目錄或非法目錄, 則直接返回return;} 然后 遍歷列出的文件, 分情況兩種討論 for (File f: files) {// 加個日志, 方便查看程序執行情…

NO.19十六屆藍橋杯模擬賽第三期上

1 如果一個數 p 是個質數&#xff0c;同時又是整數 a 的約數&#xff0c;則 p 稱為 a 的一個質因數。 請問&#xff0c; 2024 的最大的質因數是多少&#xff1f; 答&#xff1a;23 #include <bits/stdc.h> using namespace std;int main() {ios::sync_with_stdio(false)…

Linux網絡_應用層自定義協議與序列化_守護進程

一.協議 協議是一種 "約定". socket api 的接口, 在讀寫數據時, 都是按 "字符串" 的方式來發送接 收的. 如果我們要傳輸一些 "結構化的數據" 怎么辦呢? 其實&#xff0c;協議就是雙方約定好的結構化的數據 像下面&#xff0c;兩端都知道數據結構…

SQL命令詳解之多表查詢(連接查詢)

目錄 1 簡介 2 內連接查詢 2.1 內連接語法 2.2 內連接練習 3 外連接查詢 3.1 外連接語法 3.2 外連接練習 4 總結 1 簡介 連接的本質就是把各個表中的記錄都取出來依次匹配的組合加入結果集并返回給用戶。我們把 t1 和 t2 兩個表連接起來的過程如下圖所示&#xff1a; …

001-碼云操作

碼云操作 一、配置公鑰1.官網地址1.進入 git bash2.查看生成的公鑰3.設置到 Gitee4.測試 二、初始化一個項目1.新建倉庫 一、配置公鑰 方便后續提交代碼不用填寫密碼 1.官網地址 官網地址&#xff1a;https://gitee.com/Git碼云教程&#xff1a;https://gitee.com/help/arti…

30.[前端開發-JavaScript基礎]Day07-數組Array-高階函數-日期Date-DOM

JavaScript的DOM操作 &#xff08;一&#xff09; 1 什么是DOM&#xff1f; 認識DOM和BOM 深入理解DOM 2 認識DOM Tree DOM Tree的理解 3 DOM的整體結構 DOM的學習順序 DOM的繼承關系圖 document對象 4 節點、元素導航 節點&#xff08;Node&#xff09;之間的導航&…

【自學筆記】Spring基礎知識點總覽-持續更新

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 Spring 基礎知識點總覽1. Spring 框架簡介2. IoC&#xff08;控制反轉&#xff09;與 DI&#xff08;依賴注入&#xff09;2.1 IoC 容器2.2 依賴注入方式示例代碼&a…

WordPress多語言插件GTranslate

GTranslate是一個免費的WordPress多語言插件&#xff0c;它允許您將網站內容翻譯成多種語言。這個插件提供了一個簡單易用的界面&#xff0c;讓您可以在WordPress后臺直接進行翻譯操作。以下是GTranslate插件的一些主要特點&#xff1a; 免費使用&#xff1a;GTranslate插件完…

數列極限入門習題

數列極限入門習題 lim ? n → ∞ ( 1 1 2 1 3 ? 1 n ) 1 n \lim\limits_{n\rightarrow\infty}(1 \frac{1}{2}\frac{1}{3}\cdots\frac{1}{n})^{\frac{1}{n}} n→∞lim?(121?31??n1?)n1? lim ? n → ∞ ( 1 n 1 1 n 2 ? 1 n n ) \lim\limits_{n\rightarrow\…

嵌入式學習前要了解的基礎知識

一、電壓和電流 在嵌入式開發中&#xff0c;電壓和電流是兩個基本的電氣概念&#xff0c;對于理解和設計電子電路至關重要。它們直接影響到嵌入式系統的性能、功耗、可靠性和安全性。 電壓&#xff08;Voltage&#xff09; 電壓是電場力推動電荷移動的能力&#xff0c;通常以…

機器學習:強化學習的epsilon貪心算法

強化學習&#xff08;Reinforcement Learning, RL&#xff09;是一種機器學習方法&#xff0c;旨在通過與環境交互&#xff0c;使智能體&#xff08;Agent&#xff09;學習如何采取最優行動&#xff0c;以最大化某種累積獎勵。它與監督學習和無監督學習不同&#xff0c;強調試錯…

Spring學習筆記03——Spring Boot的文件結構

Spring boot常見的文件結構&#xff1a; src/ ├── main/ │ ├── java/ │ │ └── com.example.demo/ │ │ ├── DemoApplication.java # 主入口 │ │ ├── config/ # 配置類 │ │ ├── controller/ …

談談 HTTPS 的工作原理,SSL / TLS 握手流程是什么?

一、HTTPS 核心機制&#xff1a;非對稱加密 對稱加密 HTTPS HTTP over TLS/SSL&#xff0c;通過 ?混合加密體系? 解決三大問題&#xff1a; ?防竊聽? - 對稱加密傳輸內容&#xff08;如 AES&#xff09;?防篡改? - 數字簽名驗證數據完整性?防冒充? - 數字證書驗證服…

共軛梯度法筆記

一、梯度下降法 x k 1 x k ? α ? f ( x k ) x_{k1} x_k - \alpha \nabla f(x_k) xk1?xk??α?f(xk?) 這是普通的梯度下降公式&#xff0c;有兩個量是關鍵&#xff0c;步長 α \alpha α和方向 ? f ( x k ) \nabla f(x_k) ?f(xk?)。這里的方向直接選擇了梯度方向&…

ubuntu 啟動不起來,光標閃爍 解決方法

ubuntu 啟動不起來&#xff0c;光標閃爍 進不了系統&#xff0c;解決方法 按ctrl alt f2&#xff0c;進入終端&#xff0c;登錄。 jounal -b 查看啟動日志。 發現是找不到顯卡驅動程序。 解決方法&#xff1a; 卸載nvidia程序。 sudo systemctl stop gdm # 適用于GNOME…