天天看點

以太網結構架構的學習

計算機網絡體系結構

這個就是經典書籍,《計算機網絡》的内容

以太網結構架構的學習

Linux系統對網絡裝置驅動

定義了4個層次, 這4個層次為網絡協定接口層、 網絡裝置接口層、 提供實際功能的裝置驅動功能層和網絡裝置與媒介層。

以太網結構架構的學習

資料鍊路層:以太網協定

網絡層主要使用協定:網際協定(IP)、網際網路組管理協定(IGMP)、網際網路控制封包協定(ICMP)

傳輸層:傳輸控制協定(TCP)、使用者資料報協定(UDP)

應用層:ftp,ssh,telnet

以太網結構架構如下

以太網結構架構的學習

以太網電路的基本構成

以太網結構架構的學習

上圖中DMA內建在CPU

而CPU,MAC,PHY并不是內建在同一個晶片内

由于PHY包含大量模拟器件,而MAC是典型的數字電路

考慮到晶片面積及模拟/數字混合架構的原因

将MAC內建進CPU而将PHY留在片外,這種結構是最常見的。

什麼是MAC?

MAC(Media Access Control) 即媒體通路控制層協定。MAC由硬體控制器及MAC通信協定構成。該協定位于OSI七層協定中資料鍊路層的下半部分,主要負責控制與連接配接實體層的實體媒體。MAC硬體框圖如下圖所示:

以太網結構架構的學習

MAC的分類

以太網結構架構的學習

簡單記憶:R精簡 G千兆 S串行

335x系列的MAC 控制器支援 MII/RMII/RGMII 協定;

什麼是PHY?

PHY是實體接口收發器,它實作實體層

以太網結構架構的學習

PHY(Physical Layer)是IEEE802.3中定義的一個标準子產品,STA(Station Management Entity,管理實體,一般為MAC或CPU)通過MIIM(MII Manage Interface)對PHY的行為、狀态進行管理和控制,而具體管理和控制動作是通過讀寫PHY内部的寄存器實作的

335x系列目前phy晶片支援AR8031和LAN8720A,2014年之前資料還支援DP83848,最近由于缺貨,換成國産的phy晶片YT8521S

什麼是MDIO?

MDIO(Management Data Input/Output),對G比特以太網而言,串行通信總線稱為管理資料輸入輸出 (MDIO)。

用途

MDIO是一種簡單的雙線串行接口,将管理器件(如MAC控制器、微處理器)與具備管理功能的收發器(如多端口吉比特以太網收發器或 10GbE XAUI收發器)相連接配接,進而控制收發器并從收發器收集狀态資訊。

通俗來講,cpu通過MDIO來管理phy晶片的

MDIO是一個PHY的管理接口,用來讀/寫PHY的寄存器,以控制PHY的行為或擷取PHY的狀态,MDC為MDIO提供時鐘。

Linux的mdio主要是為了管理PHY晶片寄存器的,它會進行建立PHY裝置及一些初始化工作。

以太網信号最終是通過RJ45接頭接入網絡的。

以太網結構架構的學習

用于以太網網卡、路由器以太網接口等的DTE(資料終端裝置)類型

用于交換機等的DCE(數字通信裝置)類型。

當兩個類型一樣的裝置使用RJ45接口連接配接通信時,必須使用交叉線連接配接

直通線用于異種網絡裝置之間的互連

繼續閱讀