Linux 網路協議和管理

来源:https://www.cnblogs.com/heyongshen/archive/2022/07/05/16449142.html
-Advertisement-
Play Games

網路的概念: 電腦網路:一組電腦或網路設備通過媒介(有線或無線)相連,按照一定的規則進行通信的集合。 網路作用範圍分類: 廣域網:WAN--Wide Area Network 城域網:MAN Metropolitan Area Network 區域網:LAN Local Area Network ...


網路的概念:

電腦網路:一組電腦或網路設備通過媒介(有線或無線)相連,按照一定的規則進行通信的集合。

網路作用範圍分類:

廣域網:WAN--Wide Area Network
城域網:MAN---Metropolitan Area Network
區域網:LAN---Local Area Network

網路線纜:

目前比較流行的就是雙絞線(雙絞線(Twisted-Pair)的縮寫:T),因為兩根兩根絞在一起,所以叫雙絞線。這樣做的目的是為了抵消彼此的電磁干擾。

  • 五類線:速度可以達到百兆(很少用了)

  • 超五類線:速度可以達到千兆---目前主流使用的

  • 六類線:速度也可以達到千兆,但是這種線的中間會加一個十字骨架,讓線更結實

T568B線序:

image
直通線:兩頭的線序一樣
交叉線:兩頭的線序不一樣(例如用於兩台電腦直接相連)

RJ-45 Connector 和 Jack

image

光纖介面

要求更高的環境,採用光纖連接。兩個頭成對出現,一個發送一個收,利用光信號來發送數據,這樣不受電磁干擾。
需要配置光纖專門的網卡和光纖模塊。
image

image

網路設備:

中繼器 repeater

作用:方法信號的效果,讓數據傳輸得更遠 --- 基於物理層的

集線器 hub(一層設備,不能識別mac地址):

作用:相當於多介面的中繼器,上面可以接很多網線。集線器共用帶寬,且是一個半雙工的設備。

網橋和交換機(二層設備,能識別mac地址)

網橋和交換機的工作原理是一樣的。只能隔離衝突域,不能隔離廣播域。交換機可支持全雙工傳送
是通過判斷數據幀的目的MAC地址,從而將數據幀從合適埠發送出去.交換機是通過MAC地址的學習和維護更新機制來實現數據幀的轉發

路由器(三層設備)

負責解決跨網段的通信,實現通信路徑的選擇。
家用路由器就即成了交換機的功能。
PC

網路的特性:

  • 寬頻:接入廣域網的線路(相當於一條公路)

  • 網速:實際傳輸速率(8bit=1byte),單位是每秒鐘傳輸多少個位元組(Byte/s --- B/s)

  • 帶寬:接入寬頻的理論網速上限(可以理解為公路的寬度),每秒鐘能傳輸多少比特(bit)數據,單位:bit/s --bps(比特每秒)

網路運營商對下行速度的單位和系統對下行速度的單位不一樣(我們的文件是以位元組為單位的),就造成了網速和帶寬不一樣。

網路標準

  • 舊模型:網路的軟體硬體都由一家廠商開發,不是公開的標準。

  • 基於標準的模型:所有廠商都遵守這個標準,相互之間就實現了相容。

分層:

把網路分成多層,每一層都有對應的標準規範。
這樣就實現了不同廠商這件產品的相容。

開放系統互聯 OSI

國際標準組織(ISO),在1985年發佈的。分為7層。
image

  • 物理層:和物理連接的相關規範標準。

  • 數據鏈路層:實現鏈路內部的通訊(源地址、目標地址等信息)。通訊單位:幀

  • 網路層:鏈路層可以實現兩個主機在一個網路裡面通信。網路層可以實現路徑的選擇,(選擇一條最佳的通信路徑),實現多個網路之間的遠程通信。

  • 傳輸層:負責兩個節點之間數據傳輸的確認(網路層將數據送過去以後,通過傳輸層給我方一個回覆,確認數據是否收到)

  • 會話層:實現兩個節點之間的會話通信

  • 表示層:信息格式的編碼、轉換、壓縮加密等

  • 應用層:不同應用之間的通信

image

網路的通信過程

相當於郵遞包裹,

數據發送方(添加外包裝) --- 封裝:

首先把數據拆成小塊來進行傳送。應用層將數據封裝(加了個包裹)---> 然後一層一層加,加到數據連句層會添加一個CRC校驗,然後通過物理層以bit流的方式進行傳送出去。

數據接收方(拆包裝)--- 解封裝:

物理層收到數據後交給數據鏈路層(用同樣的方式計算CRC,比較兩個CRC值是否一致。數據校驗),不一樣則表示數據損壞。然後向上每層開始拆包裝,最後就看到了原始數據了

報文頭:每一層都給數據添加一個頭
image

協議數據單元 PDU

PDU: Protocol Data Unit,把一個數據拆成指定大小的小塊(PDU),這個小塊在不同的層有不同的稱呼。

  • 物理層的 PDU是數據位 bit

  • 數據鏈路層的 PDU是數據幀 frame

  • 網路層的PDU是數據包 packet

  • 傳輸層的 PDU是數據段 segment

  • 其他更高層次的PDU是消息 message

三種通訊模式

  • unicast: 單播,目標設備是一個

  • broadcast: 廣播,目標設備是所有

  • multicast: 多播,組播,目標設備是多個

衝突域和廣播域

  • 衝突域:兩個網路設備同時發送數據,如果發生了衝突,則兩個設備處於同一個衝突域

  • 廣播域:一個網路設備發送廣播,另一個設備收到了,則兩個設備處於同一個廣播域

三種通信機制

  • 單工:單向傳輸

  • 半雙工:同一時間只能發送或者接收

  • 雙工:同一時間可以雙向通信

範例:判斷網線是通的還是斷的
mii-tool工具或者ethtool工具: mii-tool 網卡名
image

網路不通一般是物理連接或者網路配置有問題。

區域網

區域網標準:主要定義了數據鏈路層和物理層的標準

乙太網

乙太網(Ethernet)是一種產生較早且使用相當廣泛的區域網(區域網使用的標準就是乙太網)。

乙太網MAC幀格式

幀是數據鏈路層的單位,

MAC幀的組成部分:

  • 前導信息:

  • 目標地址:

  • 源地址:

  • Type:協議的類型

  • 數據:

  • FCS:校驗位
    image

MAC地址

在區域網中,硬體地址又稱為物理地址或MAC地址(因為這種地址用在MAC幀中)。
每個網卡的MAC地址唯一,網卡出廠的時候燒錄進去的。網卡前一半的內容由國際組織約定好,後一半內容由廠商自己約定。

虛擬區域網 VLAN

TCP/IP 協議棧

Transmission Control Protocol/Internet Protocol 傳輸控制協議/網際網路互聯協議
TCP/IP是許多協議簇的一個集合。

TCP/IP 分層

image

image

TCP/IP 應用層

image

TCP/IP 通信過程

image

transport 層

image

TCP和UDP


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • #雜談 #Java腳本 因本人英語不好在使用Obsidian時,一些插件的設置英文多令人頭痛。故有寫一個的翻譯插件介紹和設置腳本的想法。看到有些前人寫的一下翻譯方法,簡直慘目忍睹。竟然要手動。這個應該寫好到只需要一鍵就可以漢化的地步嗎? 好吧。我承認這有些難度。翻譯引擎就用有道的吧。我覺得它對專業名 ...
  • 前言 就國內來說,Java毫無疑問是後端語言中的No.1沒有之一,所以今天我們也來0基礎學習Java!!! Java的好處(針對測試工程師) 面試加分->漲薪 大多數公司服務端用的都是Java,學習之後能看懂後臺邏輯,方便快速定位問題 在如此**捲**的環境下,不得不去跟著一起捲(躺平不香嗎?學什麼 ...
  • 發佈一個用於測試 Webservice 和資料庫連接的工具。 ...
  • 來源:blog.csdn.net/dabusiGin/article/details/105483426 錯誤的結論 在網上搜索HashMap中變數modCount的作用時,大部分的解釋都是這樣: Fail-Fast 機制 我們知道 java.util.HashMap 不是線程安全的,因此如果在使用 ...
  • 使用背景: 項目中需要用的富文本框去上傳視頻,圖片的話大部分都是可以的。相對來說,國外的富文本框很成熟。但鑒於文檔是英語,這裡使用了百度的富文本框。 採用的api的方式,調用介面進行上傳文件。話不多說,開擼! 準備: 創建一個.net mvc的項目。下載百度富文本框.net 版本的js文件。 創建項 ...
  • 一:背景 1. 講故事 前幾天有位朋友在 B站 加到我,說他的程式出現了 線程數 爆高的問題,讓我幫忙看一下怎麼回事,截圖如下: 說來也奇怪,這些天碰到了好幾起關於線程數無緣無故的爆高,不過那幾個問題比這一篇要複雜的多,主要涉及到非托管層面,分享這一篇的目的主要是它很有代表性,很有必要。 閑話不多說 ...
  • 效果 概述 最近有個小需求要用雙滑塊表示一個取值範圍,於是就簡單做了個用戶控制項,在此記錄下. 使用矩形Rectangle表示範圍,橢圓Ellipse表示滑塊,使用Canvas控制滑塊的左右移動. 橢圓的滑鼠按下事件里強制獲取滑鼠事件焦點,避免移動過快或移出控制項範圍時,滑塊就不跟著跑了.橢圓的滑鼠抬起 ...
  • BackgroundWorker: 1.定義:是.net里用來執行多線程任務的控制項,它允許編程者在一個單獨的線程上執行一些操作。 2.使用場景:耗時的操作(如下載和資料庫事務)長時間運行時可能會導致用戶界面 (UI) 始終處於停止響應狀態。如果我們需要能進行響應的用戶界面,而且面臨與這類操作相關的長 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...