什麼是乙太網

来源:https://www.cnblogs.com/heyongshen/archive/2023/01/30/17075655.html
-Advertisement-
Play Games

一:什麼是乙太網: 乙太網是一種區域網技術,乙太網是一種用於數據鏈路層的協議類型。 二:乙太網的由來: 乙太網是美國施樂(Xerox)公司的Palo Alto研究中心(簡稱為PARC)於1975年研製成功的。那時乙太網是一種基帶匯流排區域網,當時的數據率為2.94 Mbit/s。乙太網用無源電纜作為總 ...


一:什麼是乙太網:

乙太網是一種區域網技術,乙太網是一種用於數據鏈路層的協議類型。

二:乙太網的由來:

乙太網是美國施樂(Xerox)公司的Palo Alto研究中心(簡稱為PARC)於1975年研製成功的。那時乙太網是一種基帶匯流排區域網,當時的數據率為2.94 Mbit/s。乙太網用無源電纜作為匯流排來傳送數據幀,並以曾經在歷史上表示傳播電磁波的以太(Ether)來命名。

1976年7月,Metcalfe和Boggs發表他們的乙太網里程碑論文[METC76]。1980年9月,DEC公司、英特爾(Intel)公司和施樂公司聯合提出了10 Mbit/s乙太網規約的第一個版本DIX V1(DLX是這三個公司名稱的縮寫)。1982年又修改為第二版規約(實際上也就是最後的版本),即DIX Ethernet V2,成為世界上第一個區域網產品的規約。

在此基礎上,IEEE 802委員會(EEE 802委員會是專門制定扁域岡和城城岡標準的機構)的802.3工作組於1983年制定了第一個IEEE的乙太網標準IEEE 802.3[W-IEEE802.3],數據率為10 Mbit/s。802.3區域網對乙太網標準中的幀格式做了很小的一點更動,但允許基於這兩種標準的硬體實現可以在同一個區域網上互操作。乙太網的兩個標準DLX Ethemet V2與IEEE的802.3標準只有很小的差別,因此很多人也常把802.3區域網簡稱為“乙太網”。

出於有關廠商在商業上的激烈競爭,IEEE 802委員會未能形成一個統一的、“最佳的”區域網標準,而是被迫制定了幾個不同的區域網標準,如802.4令牌匯流排網、802.5令牌環網等。

為了使數據鏈路層能更好地適應多種區域網標準,IEEE 802委員會就把區域網的數據鏈路層拆成兩個子層,即邏輯鏈路控制LLC(Logical Link Contol)子層和媒體接入控制MAC (Medium Access Control)子層。與接入到傳輸媒體有關的內容都放在MAC子層,而LLC子層則與傳輸媒體無關,不管採用何種傳輸媒體和MAC子層的區域網對LLC子層來說都是透明的.

然而到了20世紀90年代後,激烈競爭的區域網市場逐漸明朗。乙太網在區域網市場中已取得了壟斷地位,並且幾乎成為了區域網的代名詞。

由於互聯網發展很快而TCP/IP體系經常使用的區域網只剩下DLX Ethemet V2而不是IEEE 802.3標準中的區域網,因此現在IEEE 802委員會制定的邏輯鏈路控制子層LLC(即IEEE 802.2標準)的作用已經消失了,很多廠商生產的適配器上就僅裝有MAC協議而沒有LLC協議。
image

三:乙太網的MAC層:

乙太網MAC層的硬體地址又叫做物理地址或者MAC地址(因為這種地址用在MAC幀中)

IEEE 802標準為區域網規定了一種48位的全球地址(一般都簡稱為“地址”),是指區域網上的每一臺電腦中固化在適配器的ROM中的地址。

因為而這種48位二進位的“地址”卻很不像一般電腦的名字。現在人們還是習慣於把這種48位的“名字”稱為“地址”,更準確些說,這種48位“地址”應當是某個介面的標識符。

MAC地址是48位 用12個十六進位的數來標識。 十六進位:12個數字組成 二進位:48個二進位數組成

四:網卡接收MAC幀的匹配規則:

適配器從網路上每收到一個MAC幀就先用硬體檢查MAC幀中的目的地址。如果是發往本站的幀則收下,然後再進行其他的處理。否則就將此幀丟棄,不再進行其他的處理。這樣做就不浪費主機的處理機和記憶體資源。

五:網卡接收到的MAC幀類型:

(1)單播(unicast)幀(一對一),即收到的幀的MAC地址與本站的硬體地址相同。
(2)廣播(broadcast)幀(一對全體),即發送給本區域網上所有站點的幀(全1地址)。
(3)多播(multicast)幀(一對多),即發送給本區域網上一部分站點的幀。
只有目的地址才能使用廣播地址和多播地址。

六:乙太網MAC幀的格式

image

七:MAC幀由三部分組成:幀頭、幀尾和數據部分

1. 幀頭:

前兩個欄位分別為6位元組長的目的地址和源地址欄位。第三個欄位是2位元組的類型欄位,用來標誌上一層使用的是什麼協議,以便把收到的MAC幀的數據上交給上一層的這個協議。

例如,當類型欄位的值是0x0800時,就表示上層使用的是IP數據報。若類型欄位的值為0x8137,則表示該幀是由NovellIPX發過來的。
2. 數據部分:

其長度在46到1500位元組之間。

3. 幀尾:

段是4位元組的幀梭驗序列FCS(使用CRC檢驗)。校驗幀是否出現差錯等功能。


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

-Advertisement-
Play Games
更多相關文章
  • 如果您想查找高於或低於平均值的數字,可以不必計算該平均值,就能查看更高或更低的值。通過Java應用程式,可以自動突出顯示這些數字。除了快速突出顯示高於或低於平均值的值外,您還可以查看高於或低於的值的個數。現在讓我們看看如何在 Java應用程式中實現此操作。 引入jar包 導入方法1: 手動引入。將  ...
  • 幾乎所有的高級編程語言都有自己的垃圾回收機制,開發者不需要關註記憶體的申請與釋放,Python 也不例外。Python 官方團隊的文章 https://devguide.python.org/internals/garbage-collector 詳細介紹了 Python 中的垃圾回收演算法,本文是這篇 ...
  • 在新版本的pandas中,上述代碼會引起警告,建議改成SQLAlchemy connectable(engine/connection),後續代碼將引入這種升級的連接方式。 ...
  • *以下內容為本人的學習筆記,如需要轉載,請聲明原文鏈接 微信公眾號「englyf」https://mp.weixin.qq.com/s/2GFLTstDC7w6u3fTJxflNA 本文大概 1685 個字,閱讀需花 6 分鐘內容不多, 但也花了一些精力如要交流, 歡迎關註我然後評論區留言 謝謝你的 ...
  • 目錄 背景 get 與 post 的區別 所有介面都用 post 請求? 背景 最近在逛知乎的時候發現一個有趣的問題:公司規定所有介面都用 post 請求,這是為什麼? 看到這個問題的時候其實我也挺有感觸的,因為我也曾經這樣問過我自己。在上上一家公司的時候接到一個項目是從零開始搭建一個微服務,當時就 ...
  • 前言 .NET6 開始,.NET Croe API 項目取消了 Startup.cs 文件,在 Program.cs 文件的 Main 函數中完成服務的註冊和中間件管道的管理。但當我們項目引入更多包的時候,Program.cs 文件也會看起來很臃腫。 而且,我們不只會有一個後端項目,為了方便快速創建 ...
  • 一:背景 1. 講故事 年前遇到了好幾例托管堆被損壞的案例,有些運氣好一些,從被破壞的托管堆記憶體現場能觀測出大概是什麼問題,但更多的情況下是無法做出準確判斷的,原因就在於生成的dump是第二現場,借用之前文章的一張圖,大家可以理解一下。 為了幫助更多受此問題困擾的朋友,這篇來整理一下如何 快狠準 的 ...
  • 1.背景知識 CRLF用來表示文本換行的方式 ,CR是回車的意思,對應 \r ;LF 是換行的意思,對應 \n Windows 換行符是 \r\n Unix 換行是 \n 如果一個將要在Linux伺服器上使用的文件,比如某個配置文件,在windows電腦打開,編輯過,那麼文件每一行末尾會多有\r 。 ...
一周排行
    -Advertisement-
    Play Games
  • 概述:在C#中,++i和i++都是自增運算符,其中++i先增加值再返回,而i++先返回值再增加。應用場景根據需求選擇,首碼適合先增後用,尾碼適合先用後增。詳細示例提供清晰的代碼演示這兩者的操作時機和實際應用。 在C#中,++i 和 i++ 都是自增運算符,但它們在操作上有細微的差異,主要體現在操作的 ...
  • 上次發佈了:Taurus.MVC 性能壓力測試(ap 壓測 和 linux 下wrk 壓測):.NET Core 版本,今天計劃準備壓測一下 .NET 版本,來測試並記錄一下 Taurus.MVC 框架在 .NET 版本的性能,以便後續持續優化改進。 為了方便對比,本文章的電腦環境和測試思路,儘量和... ...
  • .NET WebAPI作為一種構建RESTful服務的強大工具,為開發者提供了便捷的方式來定義、處理HTTP請求並返迴響應。在設計API介面時,正確地接收和解析客戶端發送的數據至關重要。.NET WebAPI提供了一系列特性,如[FromRoute]、[FromQuery]和[FromBody],用 ...
  • 原因:我之所以想做這個項目,是因為在之前查找關於C#/WPF相關資料時,我發現講解圖像濾鏡的資源非常稀缺。此外,我註意到許多現有的開源庫主要基於CPU進行圖像渲染。這種方式在處理大量圖像時,會導致CPU的渲染負擔過重。因此,我將在下文中介紹如何通過GPU渲染來有效實現圖像的各種濾鏡效果。 生成的效果 ...
  • 引言 上一章我們介紹了在xUnit單元測試中用xUnit.DependencyInject來使用依賴註入,上一章我們的Sample.Repository倉儲層有一個批量註入的介面沒有做單元測試,今天用這個示例來演示一下如何用Bogus創建模擬數據 ,和 EFCore 的種子數據生成 Bogus 的優 ...
  • 一、前言 在自己的項目中,涉及到實時心率曲線的繪製,項目上的曲線繪製,一般很難找到能直接用的第三方庫,而且有些還是定製化的功能,所以還是自己繪製比較方便。很多人一聽到自己畫就害怕,感覺很難,今天就分享一個完整的實時心率數據繪製心率曲線圖的例子;之前的博客也分享給DrawingVisual繪製曲線的方 ...
  • 如果你在自定義的 Main 方法中直接使用 App 類並啟動應用程式,但發現 App.xaml 中定義的資源沒有被正確載入,那麼問題可能在於如何正確配置 App.xaml 與你的 App 類的交互。 確保 App.xaml 文件中的 x:Class 屬性正確指向你的 App 類。這樣,當你創建 Ap ...
  • 一:背景 1. 講故事 上個月有個朋友在微信上找到我,說他們的軟體在客戶那邊隔幾天就要崩潰一次,一直都沒有找到原因,讓我幫忙看下怎麼回事,確實工控類的軟體環境複雜難搞,朋友手上有一個崩潰的dump,剛好丟給我來分析一下。 二:WinDbg分析 1. 程式為什麼會崩潰 windbg 有一個厲害之處在於 ...
  • 前言 .NET生態中有許多依賴註入容器。在大多數情況下,微軟提供的內置容器在易用性和性能方面都非常優秀。外加ASP.NET Core預設使用內置容器,使用很方便。 但是筆者在使用中一直有一個頭疼的問題:服務工廠無法提供請求的服務類型相關的信息。這在一般情況下並沒有影響,但是內置容器支持註冊開放泛型服 ...
  • 一、前言 在項目開發過程中,DataGrid是經常使用到的一個數據展示控制項,而通常表格的最後一列是作為操作列存在,比如會有編輯、刪除等功能按鈕。但WPF的原始DataGrid中,預設只支持固定左側列,這跟大家習慣性操作列放最後不符,今天就來介紹一種簡單的方式實現固定右側列。(這裡的實現方式參考的大佬 ...