精华内容
下载资源
问答
  • 以太网物理地址长度
    千次阅读
    2021-07-26 03:44:55

    今天学习啦小编给大家介绍一下物理地址和逻辑地址的区别。供大家参考!

    物理地址和逻辑地址的区别

    参考如下

    MAC地址也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。IP地址与MAC地址在计算机里都是以二进制表示的,IP地址是32位的,而MAC地址则是48位的。MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,

    1.MAC地址

    网卡MAC地址不是随便定义的,它的组成结构如图所示。

    93ffdecc8904b33cc33165a90b127495.gif

    1>后3个字节代表该制造商所制造的某个网络产品(如网卡)的系列号,前3个字节表示代表网络硬件制造商的编号,它由IEEE(电气与电子工程师协会)分配

    2>以太网的地址为48位,由IEEE统一分配给网卡制造商,每个网卡的地址都必须是全球唯一的。共6个字节的长度。FF:FF:FF:FF:FF:FF为广播地址,只能用在目的地址段,不能作为源地址段。目的地址为广播地址的数据包,可以被一个局域网内的所有网卡接收到。合法的以太网地址第32位组播标志必须为0。作为组播地址时,只能作为目的地址,不能作为源地址。组播地址可以被支持该组播地址的一组网卡接收到。组播地址主要用在视频广播,远程唤醒(通过发一个特殊的数据包使网卡产生一个中断信号,启动电脑),游戏(多个人在局域网里联机打游戏)里等。

    逻辑地址(Logical Address) 是指由程序产生的与段相关的偏移地址部分。例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址,不和绝对物理地址相干。只有在Intel实模式下,逻辑地址才和物理地址相等(因为实模式没有分段或分页机制,Cpu不进行自动地址转换);逻辑也就是在Intel 保护模式下程序执行代码段限长内的偏移地址(假定代码段、数据段如果完全一样)。应用程序员仅需与逻辑地址打交道,而分段和分页机制对您来说是完全透明的,仅由系统编程人员涉及。应用程序员虽然自己可以直接操作内存,那也只能在操作系统给你分配的内存段操作。

    虚拟内存(Virtual Memory) 是指计算机呈现出要比实际拥有的内存大得多的内存量。因此它允许程序员编制并运行比实际系统拥有的内存大得多的程序。这使得许多大型项目也能够在具有有限内存资源的系统上实现。一个很恰当的比喻是:你不需要很长的轨道就可以让一列火车从上海开到北京。你只需要足够长的铁轨(比如说3公里)就可以完成这个任务。采取的方法是把后面的铁轨立刻铺到火车的前面,只要你的操作足够快并能满足要求,列车就能象在一条完整的轨道上运行。这也就是虚拟内存管理需要完成的任务。在Linux 0.11内核中,给每个程序(进程)都划分了总容量为64MB的虚拟内存空间。因此程序的逻辑地址范围是0x0000000到0x4000000。

    有时我们也把逻辑地址称为虚拟地址。因为与虚拟内存空间的概念类似,逻辑地址也是与实际物理内存容量无关的。

    逻辑地址与物理地址的“差距”是0xC0000000,是由于虚拟地址->线性地址->物理地址映射正好差这个值。这个值是由操作系统指定的。

    学习啦小编介绍了物理地址和逻辑地址区别的相关知识,希望你喜欢。

    更多相关内容
  • 来源:《传智播客》及网络整理:王耀以太网(Ethernet)最早是由Xerox(施乐)公司创建的局域网组网规范,1980年DEC、Intel和Xeox三家公司联合开发了初版Ethernet规范—DIX 1.0,1982年这三家公司又推出了修改版本DIX ...

    来源:《传智播客》及网络

    整理:王耀

    以太网(Ethernet)最早是由Xerox(施乐)公司创建的局域网组网规范,1980年DEC、Intel和Xeox三家公司联合开发了初版Ethernet规范—DIX 1.0,1982年这三家公司又推出了修改版本DIX 2.0,并将其提交给IEEE 802工作组——现在好多的10G、40G、100G、400G光模块标准也出自这个组,经IEEE成员修改并通过后,成为IEEE的正式标准,并编号为IEEE 802.3。

    虽然Ethernet规范和IEEE 802.3规范并不完全相同,但一般认为Ethernet和正IEEE 802.3是兼容的。

    以太网是应用最广泛的局域网技术,根据传输速率的不同,以太网分为标准以太网(10Mbit/s)、快速以太网(100Mbis)、千兆以太网(1000Mbs)和万兆以太网(10Gbit/s),这些以太网都符合IEEE 802.3标准,是兼容的。

    1、标准以太网

    标准以太网是最早期的以太网,其传输速率为10Mbts,也称为传统以太网。

    此种以太网的组网方式非常灵活,既可以使用粗、细缆组成总线网络,也可以使用双绞线组成星状网络,还可以同时使用同轴电缆和双绞线组成混合网络。这些网络都符合IEE802.3标准,IEEE802.3中规定的一些传统以太网物理层标准如下。

    • 10 Base-2:使用细同轴电缆,最大网段长度为185m。

    • 10 Base-5:使用粗同轴电缆,最大网段长度为500m。

    • 10 Base-T:使用双纹线,最大网段长度为100m。

    • 10 Boad-36:使用同轴电缆,最大网段长度为3600m。

    • 10 Base-F:使用光纤,最大网段长度为2000m,传输速率为10Mb/s。

    以土标准中首部的数字代表传输速率,单位为Mbis;末尾的数字代表单段网线长度(基准单位为100m);Base表示基带传输, Broad表示宽带传输。

    2、快速以太网

    随着网络的发展和各项网络技术的普及,标准以太网技术已难以满足人们对网络数据流量和速率的需求。

    1993年10月以前,人们只能选择价格昂贵、基于100Mbs光缆的FDD技术组建高标准网络,1993年10月, Grand Junction公司推出了世界上第一台快速以太网集线器FastSwitch10/100和百兆网络接口卡 Fast NIC 100,快速以太网技术正式得到应用。

    随后,Intel、3COM等公司也相继推出了自己的快速以太网设备,同时IEEE802工作组对100Mbi/s以太网的各种标准进行了研究,并于1995年4月发布了IEEE 802.3u 100Base-T快速以太网标准,快速以太网时代到来。

    IEEE 802.3U标准基本保持了标准局域网的规定,包括帧格式、接口、介质访问控制方法

    ( CSMA/CD)等,只是将数据传输速率从10Mbts提升到了100Mbit/s,又使用了一些新的物理层标准,具体如下所示。

    • 100 Base-1X:使用两对5类屏蔽或非屏蔽双绞线,一对用于发送数据,一对用于传输数据;使用RJ-45或DB9接口,节点与集线器的最大距离为100m,支持全双工。

    • 100 Base-T4:使用4对3类、4类或5类双绞线,3对用于发送数据,1对用于检测冲突信号;使用R-45连接器,最大网段长度为100m,不支持全双工。

    • 100Base-FX:使用一对单模或多模光纤,一路用于发送数据,一路用于接收数据;最大网段长度为200m(使用单模光纤时可达2000m),支持全双工。此种网络主要用于搭建主千网,以提升主干网络传输速率。

    3、千兆以太网

    千兆以太网(GigabitEthernet)也称为吉比特以太网。

    1995年11月,IEEE 802.3工作组委任一个高速研究组,以研究将快速以太网速率增至1000Mbls的可行性和方法。

    1996年6月,IEEE标准委员会批准了千兆以太网方案授权申请,随后IEEE 802.3工作组成立了IEEE 802.3z工作委员会,该委员会建立了千兆以太网标准,该标准的主要规定如下:

    • 速率为1000Mbit/s的以太网在通信时的全双工/伴半双工操作。

    • 使用8023以太网帧格式、CSMA/CD技术。

    • 在一个冲突域中支持一个中继器。

    • 向下兼容10Base-T和100Base-TIEEE 802.3。

    工作组为千兆以太网制定了一系列物理层标准,其中常用的标准如下。

    (1)1000 Base-SX:使用芯径为50m及625m、工作波长为850m的多模光纤,采用8B/10B编码方式,传输距离分别为260m和525m。此标准主要应用于建筑物中同一层的短距离主于网。

    (2)1000 Base-LX:使用芯径为50pm及625m、工作波长为850nm和芯径为5m、工作波长为1300nm的多模、单模光纤,传输距离分别为525m、550m和3000m。此标准主要应用于校园主干网。

    (3)1000 Base-CX:使用1500屏蔽双绞线,采用8B/10B编码方式,传输速率为1.25Gbis,传输距离为25m。此标准主要用于集群设备的连接,如一个交换机机房内的设备互联。

    (4)1000 Base-T:使用4对5类非屏蔽双绞线,采用PAM5编码方式,传输距离为100m。

    此标准主要用于同一层建筑的通信,从而可利用标准以太网或快速以太网已铺设的非屏蔽双绞线电缆。

    千兆以太网采用光纤作为上行链路,用于楼宇间的连接,原本被作为一种交换技术设计,之后被广泛应用于服务器的连接和主干网中。如今,千兆以太网已成为主流的网络技术,无论是大型企业还是中小型企业,在组建网络时都会把千兆以太网作为首选高速网络技术。

    4、万兆以太网

    万兆以太网(10 Gigabit Ethernet,10GE)也称为10吉比特以太网,是继千兆以太网之后产生的高速以太网。在千兆以太网的IEEE 802.3Z规范通过后不久,IEEE成立了高速研究组(High Speed Study Group,HssG),该研究组主要致力于10GE的研究。

    10GE并非简单地将千兆以太网的速率提升了10倍,2002年6月,IEEE 802.3ae委员会制定了10GE的正式标准,该标准主要包括以下内容。

    • 兼容8023标准中定义的最小和最大以太网帧长度。

    • 仅支持全双工方式。

    • 使用点对点链路和结构化布线组建星状局域网。

    • 在 MAC/PLS服务接口上实现10Gbs的速度。

    • 定义两种物理层规范,即局域网PHY和广域网PHY。

    • 定义将 MAC/PLS的数据传输速率对应到广域网PHY数据传输速率的适配机制。

    • 定义支持特定物理介质相关接口(PMD)的物理层规范,包括多模光纤和单模光纤以及相应传输距离;支持ISO/C11801第二版中定义的光纤介质类型等。

    • 通过WAN界面子层,10Gbi/s也能被调整为较低的传输速率。

    此外,10Gbis不再使用铜线,只使用光纤作为传输媒介,不再使用 CSMA/CD协议。千兆以太网仍可使用已有的光纤通道技术,但10GE使用新开发的物理层。10GE常用的物理层规范如下。

    • 10G Base-SR:SR表示" Short Reach"(短距离),10GBae-SR仅用于短距离连接,该规范支持编码方式为64B/66B的短波(850mm)多模光纤,有效传输距离为2m~300m。

    • 10G Base-LR:LR表示“Long Reach”(长距离),10 G Base-LR主要用于长距离连接,该规范支持编码方式为64B/66B的长波(1310mm)单模光纤,有效传输距离为2m~10km,最高可达25km。

    • 10 G Base-ER:ER表示“ Extended Reach”(超长距离,10G Base-ER支持超长波(1550nm)单模光纤,有效传输距离为2m~40km。

    5、以太网标准的发展及历史版本

    eab6928c6a96895c3069fbaf0930f65e.png

    ecb2590d8ab3c01c6846421adf591471.png

    22db05de22008a13c146c36d7055dc3b.png

    备注:

    1、这是最原始的一种格式,是由Xerox PARC提出的3MbpsCSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成EthernetV1标准。

    2、这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DEC,Intel和Xerox在1982年公布其标准,主要更改了EthernetV1的电气特性和物理接口,在帧格式上并无变化;Ethernet V2出现后迅速取代EthernetV1成为以太网事实标准。

    3、BASE表示Ethernet使用的是基带传输;10M/100M/1G/10G/...都是线路速率。

    4、这是1983年Novell发布其划时代的Netware/86网络套件时采用的私有以太网帧格式,该格式以当时尚未正式发布的802.3标准为基础;但是当两年以后IEEE正式发布802.3标准时情况发生了变化—IEEE在802.3帧头中又加入了802.2 LLC(Logical Link Control)头,这使得Novell的RAW 802.3格式跟正式的IEEE 802.3标准互不兼容。

    关于“10+分享”

    “10+分享”(即"拾加分享")是国内首家集成电路行业的经验分享平台,涵盖芯片设计、IP开发、制造、封装、测试,以及EDA软件使用等领域。特色是分享的经验和知识全部来自于实际产品、项目和岗位。

    b1a13117e5bfdf9774a951f70fee5036.png

    展开全文
  • 前言: 以太网是一种计算机局域网通信技术,主要由介质访问层(MAC L2) 协议、物理层(PHY L1)协议、电子...并把关注的重点放在以太网物理层的协议规范。 在本案例中, 信源信息发送-》离散数据-》信源编码-》应.

    前言:

    以太网是一种计算机局域网通信技术,主要由介质访问层(MAC L2) 协议、物理层(PHY L1)协议、电子信号连接组成。

    MAC层主要有交换芯片实现,物理层由PHY芯片实现,电信号连接主要定义电信号的接口规范。

    经过几十年的发展,以太网技术技术已经x相当成熟,在计算机通信领域也得到相当的广泛应用。

    本文以成熟的以太网的技术实现为案例,来解读数字通信的部分基本原理,澄清数字通信中一些核心的概念 :时钟、4B/5B编码、曼切斯特编码、NRZI编码、符号、波特率、比特率、CRC、扰码。

    并把关注的重点放在以太网物理层的协议规范。

    在本案例中,

    信源信息发送-》离散数据-》信源编码-》应用层数据处理-》网络层编码-》物理层信道编码-》电气信号符号编码-》电信号发送=》

    电信号接收=》电气信号符号解码-》物理层信道解码-》网络层编码-》应用层数据处理-》信源解码-》信宿信息感知

    整个过程,均为二进制离散数据处理,因此本文案例是一个纯数字通信的案例。

    以太网串行通信与Uart串口通信、I2C串行通信、SPI串行通信等串行通信,有两个显著的差别:

    (1)需要传输的物理层帧中的二进制数据与物理线路上传送的信号电平之间是不再是1对1的映射关系。

    (2)不需要专门的时钟信号线在两个通信的节点之间传递时钟,而是通过特定的物理层的编码技术,实现在传输数据的同时,也同时能够传递同步时钟。

    (3)支持远程传输的数字编码技术

    本文将重点阐述这这三种技术方法。


    目录

    第1章 什么是以太网数字通信

    1.1 标准以太网

    1.2 快速以太网

    1.3 千兆以太网

    1.4 10Gbps以太网

    1.5 40G/100Gbps以太网

    第2章 以太网数字通信案例的需求架构

    第3章 以太网数字通信的软硬件实现方案

    3.1. 协议栈

    3.2. 软硬件架构与软硬件分工

    3.3. 以太网协议规范

    第4章. 以太网MAC+PHY+线路层的通信模型

    第5章. 信源对信息的发送过程及其关键性原理

    5.1. 信源: 

    5.2. 离散的二进制数据

    5.3. 网络层编码

    5.4. 物理层编码

    5.4.1  RTL8201  10M以太网的通信原理

    5.4.1.1  PCS子层(Physical Coding Sublayer):物理层编码子层

    (1). PCS子层与MAC层的物理接口

    (2). PCS子层的包结构

    (3). PCS子层的编码

    5.4.1.2 PMA子层:物理介质连接子层

    (1).  发送方向是并串转换,接收方向是串并转换

    (2).  物理层信号编码

    (3).  物理链路时钟的合成/恢复。

    5.4.2  RTL8201  100M以太网通信的原理

    5.4.2.1  PCS子层(Physical Coding Sublayer):物理层编码子层

    (1). 与MAC层的物理接口

    (2)物理层帧的发送

    (3)物理层帧的接收

    (2). PCS子层包的结构

    (3). PCS子层的编码

    5.4.2.2 PMA子层:物理介质连接子层

    5.4.2.3  PMD子层​

    第6章 信道对信息的传输过程

    第7章 信宿对信息的接收过程及其关键原理

    7.1  以太网的解码过程

    7.2 信宿的接收过程



    第1章 什么是以太网数字通信

    以太网是一种基带、局域网技术,

    以太网通信是一种使用同轴电缆或光纤作为传输信道,采用载波多路访问和冲突检测机制的通信方式。

    数据传输速率高达到10M、100M、1Gbit/s, 10Gbit/s,  25Gbit/s、100G, 可满足非持续性网络数据传输的需要。

    1.1 标准以太网

    • 10Base-5 使用粗同轴电缆,最大网段长度为500m,基带传输方法;
    • 10Base-2 使用细同轴电缆,最大网段长度为185m,基带传输方法;
    • 10Base-T 使用双绞线电缆,最大网段长度为100m;
    • 1Base-5 使用双绞线电缆,最大网段长度为500m,传输速度为1Mbps;
    • 10Broad-36 使用同轴电缆(RG-59/U CATV),最大网段长度为3600m,是一种宽带传输方式;
    • 10Base-F 使用光纤传输介质,传输速率为10Mbps;

    1.2 快速以太网

    1.3 千兆以太网

    • 1000Base-SX 只支持多模光纤,可以采用直径为62.5um或50um的多模光纤,工作波长为770-860nm,传输距离为220-550m。
    • 1000Base-LX 可以采用直径为62.5um或50um的多模光纤,工作波长范围为1270-1355nm,传输距离为550m。
    • 1000Base-LX 可以支持直径为9um或10um的单模光纤,工作波长范围为1270-1355nm,传输距离为5km左右。
    • 1000Base-CX 采用150欧屏蔽双绞线(STP),传输距离为25m。
    • 000Base-T 是100Base-T自然扩展,与10Base-T、100Base-T完全兼容

    1.4 10Gbps以太网

    • 10GBASE-CX4 -- 短距离铜缆方案用于InfiniBand4x连接器和CX4电缆,最大长度15米。

    • 10GBASE-SR -- 用于短距离多模光纤,根据电缆类型能达到26-82米,使用新型2GHz多模光纤可以达到300米。

    • 10GBASE-LX4 -- 使用波分复用支持多模光纤240-300米,单模光纤超过10公里。

    • 10GBASE-LR和10GBASE-ER -- 透过单模光纤分别支持10公里和40公里

    • 10GBASE-SW、10GBASE-LW、10GBASE-EW。用于广域网PHY、OC-192 / STM-64同步光纤网/SDH设备。物理层分别对应10GBASE-SR、10GBASE-LR和10GBASE-ER,因此使用相同光纤支持距离也一致。(无广域网PHY标准)

    • 10GBASE-T-- 使用屏蔽或非屏蔽双绞线,使用CAT-6A类线至少支持100米传输。CAT-6类线也在较短的距离上支持10GBASE-T。

    1.5 40G/100Gbps以太网

    • 40GBASE-KR4 -- 背板方案,最少距离1米。

    • 40GBASE-CR4 / 100GBASE-CR10 -- 短距离铜缆方案,最大长度大约7米。

    • 40GBASE-SR4 / 100GBASE-SR10 -- 用于短距离多模光纤,长度至少在100米以上。

    • 40GBASE-LR4 / 100GBASE-LR10 -- 使用单模光纤,距离超过10公里。

    • 100GBASE-ER4 -- 使用单模光纤,距离超过40公里。

    虽然,以太网支持上述各种速率和物理层接口规范,但从通信的角度来看,基本原理是相似的,是一脉相承的。


    第2章 以太网数字通信案例的需求架构

    为了重点介绍以太网物理层协议,本案例的两个对等的以太网终端,跳过中间的以太网交换机,直接采用点对点连接。

    帅哥A与美女B不再通过RS232串口相连,而是通过以太网相连。

    目标:

    帅哥A通过以太网向美女B发送一条二进制消息:0x0049 0x0020  0x004c 0x0006f 0x00076 0x0065 0x0020 0x0059 0x006f 0x0075。

    对应的ASCII码字符是:I Love You


    第3章 以太网数字通信的软硬件实现方案

    3.1. 协议栈


    3.2. 软硬件架构与软硬件分工

    帅哥A发送的数据,封装(编码)过程如下:

    应用层数据编码=》HTTP层数据编码=》TCP层数据编码=》IP层数据编码=》MAC层数据编码=》物理层数据编码=》物理层电信号发送=》

    美女接受的数据,拆封(解码)过程如下:

    物理层电信号接收=》物理层数据解码=》MAC层数据解码=》IP层数据解码=》TCP层数据解码=》HTTP层数据解码=》应用层数据解码。

    至于MAC层以上(IP以及IP之上)的编码和解码过程,不在本文的讨论范围。

    本文重点放在MAC+PHY+线路接口层,特别是物理层的编解码过程。


    3.3. 以太网协议规范

    IEEE802.3标准给出了以太网的MAC层和物理层的协议规范


    第4章. 以太网MAC+PHY+线路层的通信模型

    下面,将详细介绍上述过程的每个环节,以及每个环节中涉及到的通信原理中的关键技术。


    第5章. 信源对信息的发送过程及其关键性原理


    5.1. 信源

    这里的信源就是计算机A。


    5.2. 离散的二进制数据

    信源需要发送的离散的二进制数据: 0x0049 0x0020  0x004c 0x0006f 0x00076 0x0065 0x0020 0x0059 0x006f 0x0075。

    对应的ASCII码字符是:I Love You


    5.3. 网络层编码

    IP以及IP之上,不在本章的讨论范围,本章讨论MAC以及MAC层之下的协议规。

    (1)探讨前的概念澄清:

    MAC层:称为帧(frame)

    物理层:并行数据称为包(package)

    物理层:串行数据称为流(stream)

    (2)MAC层帧结构

    • LLC data:信源需要发送的离散的二进制数据。
    • MAC地址

    也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡(Network lnterface Card)的EPROM(一种闪存芯片,通常可以通过程序擦写)。

    MAC地址的长度为48位(6个字节),通常表示为12个16进制数,如:00-16-EA-AE-3C-40就是一个MAC地址,其中前6位16进制数00-16-EA代表网络硬件制造商的编号,它由IEEE(电气与电子工程师协会)分配,而后6位16进制数AE-3C-40代表该制造商所制造的某个网络产品(如网卡)的系列号。只要不更改自己的MAC地址,MAC地址在世界是惟一的。形象地说,MAC地址就如同身份证上的身份证号码,具有唯一性。

    目的地址:数据的接收方(信宿)的MAC地址。

    源地址:数据的发送方(信源)的MAC地址

    • 帧定界符SFD:1个字节(8个bits:0x1010 1011),MAC层的帧同步

    由于在传输一个字节时最低位最先传输(LSB),因此其相应的16进制表示为:0xD5

    备注:

    UART、I2C、SPI总线通信,是通过特定的物理信号(pin脚)物理层帧同步。

    而以太网串行总线没有这些信号,怎么进行帧同步呢? 就只能通过特定的二进制比特串来进行帧同步了!!!

    这里还有一个同样的问题,以太网帧的净荷正巧也有该数据怎么办呢?

    MAC层和物理层之间通过Tx_EN和Rx_EN来传递以太网帧的开始。

    两个对等的两个物理层实体之间,通过物理层的4B/5B编码表明以太网帧的开始和结束,而这两个编码,是不同于数据域中的任何数据的4B/5B编码。

    • 同步前导码preamble:7个字节(56个bits:0x1010 1010 ......),MAC层的比特时钟同步

    由于在传输一个字节时最低位最先传输(LSB),因此其相应的16进制表示为:0x55 0x55 0x55 0x55 0x55 0x55 0x55

    这个连续的56个二进制比特流,用于接收方与发送方的二进制比特时钟同步。

    用于MAC层与物理层之间的同步。

    备注:

    UART、I2C、SPI总线通信,是通过特定的物理信号(pin脚)进行时钟同步的。

    而以太网串行总线没有这些信号,怎么进行时钟呢? 就只能通过特定的二进制比特串来进行时钟同步了!!!

    这里有一个问题,以太网帧的净荷真巧也有该数据怎么办呢?

    • FCS( Frame Check Sequence):帧检查验序列,实际上就是CRC校验。

    CRC校验序列的添加是

    在数据传输过程中,无论传输系统的设计再怎么完美,差错总会存在,这种差错可能会导致在链路上传输的一个或者多个帧被破坏(出现比特差错,0变为1,或者1变为0),从而接受方接收到错误的数据。为尽量提高接受方收到数据的正确率,在接收方接收数据之前需要对数据进行差错检测,当且仅当检测的结果为正确时接收方才真正收下数据。

    检测的方式有多种,常见的有奇偶校验、和循环冗余校验等。

    前一篇讨论过,Uart/RS232串口通信采用的就是有奇偶校验。

    循环冗余校验(Cyclic Redundancy Check, CRC):是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数据传输或者保存后可能出现的错误。它是利用除法及余数的原理来作错误侦测的。

    以太网通信采用CRC32作为以太网MAC帧数据净荷的检错码。

    注意:FCS值针对以太网MAC帧的净荷部分,包括MAC地址+数据净荷,不包括以太网MAC层帧的同步字和帧定界符SFD。


    5.4. 物理层编码

    简单的说,物理层编码是确保原始的MAC层数据可在多种物理媒体上、安全、可靠的传输。

    以太网物理层又分为3个子层和2个接口

    (1)两个接口:

    Medium Independent Interface (MII): 介质无关接口。提供公共接口,屏蔽多个物理层的不同细节。这是数字MAC层与数字物理层的接口。

    Medium Dependent Interface (MDI): 介质相关接口。到传输介质的接口,如100M电口和1000M电口或1000M光口等。这是数字物理层与物理信号媒介的接口(光、电信号)。

    (2)三个子层:

    Physical Coding Sublayer (PCS): 物理编码子层。完成物理层编码/解码功能

    Physical Medium Attachment sublayer (PMA):物理介质连接子层。执行并串转换和串并转换功能。

    Physical Medium Dependent sublayer (PMD): 物理介质相关子层。电信号转换到特定介质上或反向转换(光电转换、电电转换)

    (3)常见以太网Phy层芯片

    品牌物料名称速率MAC InterfaceMedia types:封装大小制造等级
    Broadcom100BASE-TX
    BCM8981010/100Mbps100BASE-T1
    BCM8961010/100/1000MbpsMII/RGMII10BASE-T/100BASE-TX/1000BASE-TAEC-Q100 Grade 1
    BCM898811000BASE-T1
    BCM898381000BASE-T1
    Marvell88Q101010/100/1000MbpsMII/RMII/RGMII100BASE-T1QFN,40-pin,6*6mmAEC-Q100 Grade 2
    88E151210/100/1000MbpsRGMII/SGMII10Base-T/100Base-TX/1000Base-T/ SFP/100Base-FX/1000Base-XQFN,56-pinIndustry
    88Q211X10/100/1000MbpsRGMII/SGMII100BASE-T1/1000BASE-T1QFN,40-pin
    NXPTJA1101100MbpsRMII100BASE-T1HVQFN,32-pin,6*6mmISO26262 ASIL-A
    MicrochipKSZ806110/100MbpsMII10BASE-T/100BASE-TXQFP,32-pin,5*5mm
    KSZ808110/100MbpsMII10BASE-T/100BASE-TXLQFP,48-pin,7*7mm
    KSZ903110/100/1000MbpsGMII/MII 10Base-T/100Base-TX/1000Base-TQFP,64-pin,8*8mm
    TIDP83848QSQ10/100MbpsMII/RMII10BASE-T/100BASE-TXWQFN,40-pin,6*6mmAEC-Q100 Grade 2
    RealteckRTL820110/100MbpsMII/7-wire SNI 10BASE-T/100BASE-TX/100BASE-FXLQFP,48-pin 
    AtherosAR803110/100/1000MbpsRGMII/SGMII10BASE-Te/100BASE-TX/1000BASE-TQFN,48-pin,6*6mmIndustry
    AR803510/100/1000Mbps

    不同以太网速率,其物理层的协议规范是不一样的。

    不同厂家的芯片,在实现以太网物理层协议规范时,也是有差别。

    接下来,将以古老的RTL8201 10/100M PHY芯片为例,由简单到复杂,有浅入深的介绍物理层的通信原理:

    • RTL8201  10M以太网通信的原理
    • RTL8201 100M以太网通信的原理

    其他更加复杂的功能实现,基本是基于此原理的升级与扩展。


    (4) 802.3 物理层功能栈


     (5)RTL8201功能架构

    在上图中,10M和100M的功能实现是完全不同的电路。

    绿色框标注的是10M的功能实现。

    红色框标注的是100M的功能实现

    接下来,将详解其功能。


    5.4.1  RTL8201  10M以太网的通信原理

    5.4.1.1  PCS子层(Physical Coding Sublayer):物理层编码子层

    PCS子层的功能是物理层的编码/解码。包括三部分:

    (1)与MAC层的接口

    (2)物理层包的结构

    (3)物理层的编码

    (1). PCS子层与MAC层的物理接口

    TXD0、RXD0:是串行数据接口, 10M速率时,物理层芯片无需要进行串并转换,串并转换是MAC完成的。

    TXC和RXC: 接收和发送时钟。

    COL (I): 冲突检测的输入,表明MAC层检测到了冲突。

    CRS(O): 载波检测,用于PHY向MAC指示,链路上是否有数据正在发送。

    TXEN: MAC发送数据指示。

    (2). PCS子层的包结构

    10M速率是,物理层包的结构与MAC层的帧结构是一致的


    (3). PCS子层的编码

    物理层编码一个重要的功能就是把原始的物理层帧数据,编码成适合物理线路传输的二进制数据。

    在10M通信的情况下,物理层芯片并没有对物理层进行某种物理层编码,比如4B/5B编码或8B/10B编码。


    5.4.1.2 PMA子层:物理介质连接子层

    PMA的功能包括

    (1)发送方向是并串转换,接收方向是串并转换

    (2)物理层信号编码

    (3)物理链路时钟的合成/恢复

    PMA从PCS接收串行bit流,然后发送到PMD层。

    PMA使用数字锁相环PLL,在发送端根据标准时钟接口发送bit流,在接收端PLL同步串行数据流并从中提取时钟。


    (1).  发送方向是并串转换,接收方向是串并转换

    在10M速率下,无并串转换,与MAC层的接口MAC本身就是串行数据。

    (2).  物理层信号编码

    物理层信号编码:即如何通过物理层的电信号传递0和1的二进制数据流。

    常见的编码有两大类:不归零码和归零码。

    不归零码:是信号电平在一个码元之内都要不恢复到零的编码方式。在不归零码中,高电平代表1, 0电平本身就表示0,因此不能归0.

    归零码   :是信号电平在一个码元之内都要恢复到零的编码方式。在归零码中,高电平和低电平不表示任何数值,而是利用信号的上升沿或下降沿表示0或1,因此可以归零。

    在SPI和I2C通信中,通过CMOS或TTL高低电平传送1和0。高电平代表1,低电平代表0,

    在UART通信中,与SPI和I2C相同。

    在RS232通信中,采用了反逻辑以及15V电压。+15V电信号表示0, -15V电信号表示1.

    这些编码方式都称为不归零码

    其中SPI, I2C, Uart串口通信的编码方式称为:单极性不归零0码,单极性指只有正(+)电平。

    RS232串口通信的编码方式称为双极性不归0码。双极性是指正(+)电平与负(-)电平。

    如下图所示:(a)就是单极性不归零码,(b)双极性不归零码。

    相对于前面提到的几种电信号编码方式,在10M以太网中,采用了一种新的物理层信号编码方法:曼彻斯特编码!

    曼彻斯特编码(Manchester)又称裂相码、同步码、相位编码,它是一种归零的编码方式, 用电平跳变来表示1或0的编码方法。

    之所以要归零:主要是因为归零后既不标识0,也不表示为1,而是表示没有数据在远程串行通信中是很有必要的。因为接收方和发送方是分离的。

    Uart是通过双极性编码空闲位解决这个问题的,而以太网通过归零码解决这个问题。

    其变化规则很简单:

    这里也有两种码元,但每个码元不是用简单的高电平或低电平,每个码元symbol(代表0或1的电信号)均用不同相位的电平信号(高电平+低电平)表示。

    实际上,每个码元是一个完整的方波信号(有高电平,也有低电平),这里就有两种方式来定义方波信号。

    (A) G.E. Thomas曼切斯特编码(又称为标准曼切斯特编码)----类似相位调制

    0度相位的方波(类似正弦波)表示“1”,

    180相位的方波(类似余弦波)表示“0”.

    (B) 802.3 曼切斯特编码(简称为曼切斯特编码)

    0度相位的方波(类似正弦波)表示“0”,

    180相位的方波(类似余弦波)表示“1”.

    正好与标准曼切斯特编码相反。

    如下是用两种不同的曼彻斯特编码表示的一连串的二进制码1010 0111 001的示意图:

    从上图示意可以看出:

    在两种曼彻斯特编码中,每个比特位的中间都有一次跳变,用跳变的方向表示0或1。差别在于上升沿和下降沿表示的数字正好相反。

    并用中间的跳变表示要(1)传输的二进制数据,(2)同时中间的跳变又可以作为时钟信号。

    (C)差分曼彻斯特编码

    还有一种差分曼彻斯特编码,它是曼彻斯特编码的改进。

    在差分曼彻斯特编码中,每个比特位的中间也有一跳变。

    但中间的跳变不表示要传输的二进制数据,中间的跳变仅仅作为时钟信号。

    差分曼彻斯特编码的特别之处在于,它不是用固定的波形标识0或1,而是使用了相邻的两个波形符号的变化来标识0或1

    不管前一个波形符号是“类正弦的方波”,还是“类余弦的方波”,

    如果后一个波形符号symbol和前一个的波形符号symbol相同,则表示0,如下图所示,这样标识“0”的波形符号(symbol)就不是唯一的。

    如果后一个波形符号(symbol)和前一个的波形符号(symbol)不同,则表示1,如下图所示,这样标识“1”的波形符号(symbol)就不是唯一的。

    这种编码方式,规避了Thomas曼切斯特编码与802.3 曼切斯特编码,使用固定波形标识0或1的问题。

    如下是三种曼切斯特编码的比较:

    上述三种曼切斯特编码方式,每个时钟位都必然有一次变化,所以这三种编码的效率仅可达到50%左右,这是曼切斯特编码的缺点。

    但优点也是和明显的,就是不需要独立的时钟线传输时钟。

    结论:

    按照无论是数据0还是数据1,都是通过一个完整周期的正弦或余弦信号(当然,也可以说是方波)承载的。

    (3).  物理链路时钟的合成/恢复

    如上描述的,在发送端,在时钟的驱动下,按照曼切斯特编码的数据,本身就内含的发送端的时钟频率

    从上图可以看出,时钟信号是一个方波信号,在数据0或1的电平期间,包含了一个完整的时钟方波信号,一个方波信号是一个高电平,一个低电平的组合。

    时钟信号的周期正好于承载数据0或数据1的类正弦与类余弦的方波信号的周期是一样的,即频率是一样的。

    通过曼切斯特编码,通信的发送端接收端,即不需要专门的时钟信号线来传递时钟信息了。

    接收端通过数字锁相环,从链路中恢复发送端发送二进制比特的时钟信号的频率与相位,且能够完全同步。

    至此10M数据速率的通信方式下,二进制比特就可以通过物理信号进行发送了


    5.4.2  RTL8201  100M以太网通信的原理

    5.4.2.1  PCS子层(Physical Coding Sublayer):物理层编码子层

    PCS子层的功能是物理层的编码/解码。包括三部分:

    (1)PCS子层与MAC层的接口

    (2)PCS子层的包结构

    (3)PCS子层的编码

    (1). 与MAC层的物理接口

    从上图,可看出, MII接口,物理层与MAC层之间是4比特的并行数据,而不是串行数据。

    之所以是4比特的并行数据,与紧接着介绍的4B/5B编码有很大的关系。

    (2)物理层帧的发送

    • Tx_En:启动MAC帧的发送。
    • TXD<3:0>:MAC层的帧,包括前导码、帧同步码、数据净荷和CRC.

    • Tx_ERR:PHY通知MAC,发生发送出错。

    (3)物理层帧的接收

    • RX_DV:有效数据开始
    • RXD<3:0>:MAC层的帧,包括前导码、帧同步码、数据净荷和CRC.

    • RX_ER:物理层接收出错,比如数据接收到一半异常中断,无数据。

    (2). PCS子层包的结构

    物理层的包结构与MAC层的帧结构是一致的。

    (3). PCS子层的编码

    物理层编码一个重要的功能就是把原始的物理层帧数据,编码成适合物理线路传输的二进制数据,主要用于链路控制、检错、纠错和差错后的重传。

    相对于10M速率的物理链路,100M的速率,二进制数据的速率整整提升了10倍,导致每个通信节点之间的干扰也会增加、受到线路噪音的干扰的影响也急剧的增加,因此需要一定的数据编码,用来进行链路控制、检错、纠错和差错后的重传。

    从上图中,可以看出,相对于10M速率,增加了4B/5B编码/解码、扰码/解扰。

    (A)4B/5B编码和解码

    4B/5B编码方案是把4比特的二进制数据转换成5比特二进制数据的编码方案。

    这种编码的特点是将欲发送的数据流每4比特作为一个组,然后按照4B/5B编码规则将其转换成相应5比特的编码。

    5比特的码共有32种组合:

    其中16种组合用于承载4比特的数据。

    其他的16种组合用作链路控制码或保留使用,如表示帧的开始和结束、物理线路的状态(静止、空闲、暂停)等。

    如下是以太网4B/5B数据码映射表:

    4比特的0000被编码成了5比特的11110;

    4比特的1111被编码成了5比特的11101;

    数据的编码效率=4/5 = 80%, 即80%的编码效率。

    4B/5B编码,还有一个重要的特性:即使原始的4比特的数据有4个全0或有3个0,编码后的5B的数据中,0的个数最多也就是2个。

    如:

    0000被编码成了11110  =》4个1,1个0

    0001被编码成了10101 =》3个1, 2个0

    如下是以太网4B/5B控制码编码表:

    11111: 用于物理层数据流之间的填充字符,表示空闲状态,无有效数据,主要用于维持链路时钟同步。

    11000/10001:物理层数据流的开始标志,MAC层帧的前导码的第一个字节被映射成此5B编码。

    01101/00111:物理层数据流的结束标志。没有MAC层帧的相应比特域与之对应,与TX_EN和RX_DV对应。

    发送数据时,MAC层与PHY层之间的电信号TX_EN由高电平变成低电平,则自动转换成物理层数据流的结束标志。

    接收数据时,物理层收到该物理层数据流的结束标志,自动把MAC层与PHY层之间的电信号RX_DV由高电平变成低电平,通知MAC层数据传送完成。

    4B/5B编码的好处:

    • 采用4B/5B编码的主要目的是为了减少传输线路上出现多个连续的0或1,有利于接受端提取时钟信号。也称为保持线路的交流(AC)平衡, 与NRZI编码配合使用。
    • 额外增加的5比特的控制码,用于通信双方,在物理层PCS子层实体之间,进行物理链路的监控和控制。
    • 额外增加的5比特的控制码,用于物理层实体PCS子层把监控到的链路状态,通过芯片的信号管脚,反馈到MAC层。

    PCS子层数据流的结构(4B/5B编码后的物理层的比特流)

    • SSD(11000/10001):物理层使用该5B控制码,替换MAC层帧的前导码preamble的第一个字节。
    • ESD(01101/00111):物理层使用该5B控制码,添加到MAC层帧的尾部。
    • IDLE(11111):物理层空闲指示,用于时钟同步。

    上述5B控制码,对MAC层不可见,终止于PCS子层。

    (B)加码(Scrambling)和解码

    加扰是数字信号的加工处理方法,就是用二进制扰码与原始二进制数据相乘,从而得到新的二进制数据。

    与原始二进制相比,新的二进制在时间上被打散。

    一般来说,数字通信系统的设计及其性能都与所传输的数字信号的统计特性有关。

    通过加扰技术,在不增加新的数据比特的情况下,扰乱原有数据的比特顺序,改变数字信号统计特性,使其近似于白噪声统计特性。这种技术的基础是建立在反馈移存器序列(一种伪随机序列)的理论基础之上。


    5.4.2.2 PMA子层:物理介质连接子层

    PMA的功能包括

    • 发送方向是并串转换,接收方向是串并转换
    • 物理层信号编码
    • 物理链路时钟的合成/恢复

    PMA从PCS接收并行比特流,然后转换成串行比特流发送到PMD层。

    PMA使用数字锁相环PLL,在发送端根据标准时钟接口发送二进制比特流,在接收端PLL同步串行二进制流从中提取时钟。

    (1)并串转换

    这个没有什么可以多说的,就是5比特的并行数据,转换成1bit的串行数据,用于线路发送。

    (2)物理层信号编码

    在10M速率的情况系,采用的是曼切斯特编码,即用一个完整的正弦波或余弦表示的方波信号表示0或1,这种编码方案的优点是,在传输数据的同时,能够通过归零产生的边沿信号来传递时钟周期,不需要专门的时钟信号在收发双方传输时钟信号。

    但缺点也是很明显的,归零导致,编码后信号的频率是编码前的数据频率的2倍,即编码效率只有50%。

    有没有一种不归零的编码方法,既能够传送时钟信号,也能够传送数据,且信号的编码效率100%呢?很显然目前没有找到。

    采用归零码NRZ编码的I2C、SPI串行通信,信号的周期与二进制数据的周期是完全对应的,编码效率达到100%,然而,串行通信的两端,需要专门的时钟信号线传递时钟。

    那么,有没有一种不归零的编码方式,既能够传送时钟信号,也能够传送数据,且信号的编码效率在50%~100%之间呢?

    以太网100M速率的情况下,采用的4B/5B+NRZI混合编码的方式,就能够得到此效果。

    NRZI编码效率为100%,且能够确保在传输数据“1”的情况下,同时能够传递时钟信息。但在传递数据“0”的情况下,无法传递时钟信息。

    4B/5B编码能够确保(1)编码效率达到80%;(2)即使用户数据中包含连续的0比特,该编码可以避免连续的传输数据0比特。

    NRZI + 4B/5B的组合编码,得到这样的效果:既能够传送时钟信号,也能够传送数据,且信号的编码效率在80%。

    不归零码NRZ、曼切斯特编码、差分曼切斯特编码、4B/5B编码在前面已经讨论过了,在这里,探讨一下NRZI

    NRZI(Non Return to Zero Inverted),即不归零反转编码,NRZI是结合了NRZ和差分曼切斯特编码的思想。

    首先,NRZI的基础是不归零码NRZ,因此电信号的符号是高电平与低电平,周期与二进制数据的周期是一样的。

    但为了传递时钟信息,该编码并没有直接使用高电平或低电平表示0或1数据,而是借助了差分曼切斯特编码的思想,即用前后两个电平信号的变化(反转)来表示1和0。

    如果前后两个电平保持不变时(连续的低电平或连续的高电平),表示数据“0”;(全0会导致链路上信号的电平一致恒定不变,好在4B/5B编码解决了全0的问题)

    如果前后两个电平发生变化时(一个高电平+一个低电平或者一个低电平+一个高电平),表示数据“1”。(idle信号就是全1,因此,这样每一次发送1,都有一次跳变,可传递同步时钟信号)

    为了更好的理解NRZI,参见如下示意图:

    全“1”数据的NRZI编码:

    全1的二进制比特的NRZI编码,就是一个与数据比特率等速率的方波周期信号。

    起到传递同步时钟的作用!

    全“0”数据的NRZI编码:

    全0的二进制比特的NRZI编码,是一个恒低电平或恒高电平的信号,没有时钟信息。

    这是NRZI编码最大的缺陷!!

    好在4B/5B编码,弥补了此缺陷,4B/5B编码后,规避了全0的情况,任意4比特的数据,都会被编码成至少包含3个1的5比特数据。

    并且5比特的11111被编码成了idle控制码,用于在没有数据传送时,用此编码传递时钟同步信号:


    5.4.2.3  PMD子层

    PMD子层位于整个网络的最底层, 且只适用于>=100M速率的情形,主要完成

    (1)MDI输出信号

    MDI的接口信号是差分信号,如Tx+, TX-, 就是一对差分信号。

    差分传输是一种信号传输的技术,区别于传统的一根信号线一根地线的做法,差分传输在这两根线上都传输信号,这两个信号的振幅相同相位相反。在这两根线上的传输的信号就是差分信号

    信号接收端比较这两个电压的差值来判断发送端发送的逻辑状态。

    从严格意义上来讲,所有电压信号都是差分的,因为一个电压只能是相对于另一个电压而言的。

    在非差分信号系统里,"系统地"被用作电压基准点。当'地'当作电压测量基准时,这种信号被称之为单端电压。

    当两个导体上被同时加入的一个幅度相等、相位相反的电压,也就是所谓共模信号,信号值是两个导体间的电压差。

    三电平电压:

    逻辑1: 正信号-负信号 = 正电压

    逻辑0: 负信号-正信号 = 负电压

    空闲、无数据:0电压

    差分信号的第一个好处是,线路中传输的信号自包含了“基准信号”,因此能够很容易地识别小信号。在一个“地”做基准的单端信号方案的系统里,测量信号的精确值依赖系统内'地'的一致性。信号源和信号接收器距离越远,他们局部地的电压值之间有差异的可能性就越大,因此被传输信号的幅度就不能太低。差分信号恢复的信号值在很大程度上与双方的系统'地'信号的精确值无关,只与传输的信号的幅度差有关。

    差分信号的第二个主要好处是,它对外部电磁干扰EMI Electromagnetic Interference)是高度免疫的。一个干扰源几乎相同程度地影响差分信号对的每一端。既然电压差异决定信号值,这样将忽视在两个导体上出现的任何同样干扰。除了对干扰不大灵敏外,差分信号比单端信号生成的 EMI 还要少。

    差分信号提供的第三个好处是,在一个单电源系统,能够从容精确地处理'双极'(正负)信号。为了处理单端,单电源系统的双极信号,我们必须在地和电源干线之间某任意电压处(通常是中点)建立一个虚地。用高于虚地的电压来表示正极信号,低于虚地的电压来表示负极信号。接下来,必须把虚地正确地分布到整个系统里。而对于差分信号,不需要这样一个虚地,这就使我们处理和传播双极信号有一个高真度,而无须依赖虚地的稳定性。

    (2)网络变压器

    在物理层芯片输出与RJ45线路信号输出之前还有一个网络变压器,进行电信号的隔离。

    变压器功能

    • 电气隔离

    任何CMOS的芯片工作的时候产生的信号电平总是大于0V的,PHY输出信号送到100米甚至更长的地方会有很大的直流分量的损失。而且如果外部网线直接和芯片相连的话,电磁感应(打雷)和静电,很容易造成芯片的损坏。网络变压器本身就是设计为耐2KV~3KV的电压的。也起到了防雷保护作用。

    再就是设备接地方法不同,电网环境不同会导致双方的0V电平不一致,这样信号从A传到B,由于A设备的0V电平和B点的0V电平不一样,这样可能会导致很大的电流从电势高的设备流向电势低的设备。

    网络变压器把PHY送出来的差分信号用差模耦合的线圈耦合滤波以增强信号,并且通过电磁场的转换耦合到连接网线的另外一端。这样不但使网线和PHY之间没有物理上的连接而换传递了信号,隔断了信号中的直流分量,还可以在不同0V电平的设备中传送数据。

    从这个层面上看,网络变压器有点像“天线”:设备上的电信号,通过变压器“耦合”到RJ45的线路中,就像天线把电信号耦合成成电磁波信号,发送到空间中一样。

    • 共模抑制

    在双绞线中的每一对信号(如Tx+,Tx-)导线是以双螺旋形结构相互缠绕着。流过每根导线的电信幅度相同、相位差180度,因此其所产生的磁场受螺旋形的制约、抵消,防止了信号自传输过程中能量的散发损耗。

    即对差模信号而言,它在每一根导线上的电流是以相反方向(幅度相等的一对正负信号)在一对导线上传送。如果这一对导线是均匀的缠绕,这些相反的电流就会产生大小相等,反向极化的磁场,使它的输出互相抵消

    在这一点上,正好与天线相反:

    天线中的电流在两根导线上以相同方向流动,并经过寄生电容CP到地返回。在这种情况下,电流产生大小相等极性相同的磁场,它们的输出不能相互抵消。共模电流在对绞线的表面产生一个电磁场, 电信号就通过电磁场散发到空间中。

    (3)SFP光信号接口:光纤连接、电/光转换等功能。

    PMD是由电/光收发器SFP完成的,SFP光模块是光通信的核心器件,是通过光电转换来实现设备间信息传输的接口模块,由接收部分和发射部分组成。其中发送端把电信号转换成光信号,通过光纤传送后,接收端再把光信号转换成电信号,传输媒质为光纤。

    SFP与物理层芯片之间的信号接口:

    发射部分原理

    输入一定码率的电信号经内部的驱动芯片处理后驱动半导体激光器(LD)或发光二极管(LED)发射出相应速率的调制光信号,其内部带有光功率自动控制电路(APC), 使输出的光信号功率保持稳定。

    接收部分原理

    一定码率的光信号输入模块后由光探测二极管转换为电信号,经前置放大器后输出相应码率的电信号。同时在输入光功率小于一定值后会输出一个告警信号。

    光模块的主要参数及意义

    传输速率

    传输速率指每秒传输比特数,单位 Mbps 或 Gbps。

    目前常用的传输速率有 155Mbps, 1.25Gbps, 2.5Gbps, 10Gbps等。

    传输距离

    光模块一般有多模550m, 单模15km, 40km, 80km和120km等。

    光模块的传输距离分为短距、中距和长距三种。一般划分如下:

    光信号在光纤中传输时会有一定的损耗和色散,这是光模块的传输距离受到限制的主要原因。

    中心波长

    中心波长指光信号传输所使用的光波段,单位纳米(nm), 目前主要有850nm波段、1310nm 波段以及 1550nm 波段。

    至于电信号如何调制到光信号上,将单独的章节探讨。


    至此,用户数据的与“I Love you”对应的二进制数据,经过以太网MAC层封装、物理层的数字编码、电信号符号编码,转成了相关的电信号,再经过网络变压器或SFP光电转换器,就可以在物理线路上发送了。


    第6章 信道对信息的传输过程

    这里的信道主要是指RJ45双绞线信道与光纤信道。


    第7章 信宿对信息的接收过程及其关键原理

    7.1  以太网的解码过程

    7.2 信宿的接收过程

    信宿对信息的接收过是信号的发送过程的反向过程

    (1)信号的接收:

    如果是10/100M电口,这里主要是RJ45口和网络变压器对物理信号的接收

    如果是100M光口,这里主要是SFP光电转换器对光信号的接收,并转换成电信号。

    (2)物理层电信号解码或符号解码

    如果是10电口, 主要是曼切斯特编码解码。

    如果是100M电/光,这里主要是NRZI解码。

    (3)物理层信道解码

    如果是100M电/光,主要是扰码、4B/5B编码

    (4)网络解码

    解码MAC层解帧与CRC校验。

    (5)数据

    经过CRC检查和MAC帧解码,得到“I Love You”对应的二进制ASCII编码的数据。

    (6)信宿:美女B

    美女B是一个程序员,通过二进制,直接翻译成“I Love You”,感受到了帅哥A的浓浓爱意。

    至此,整个以太网通信案例介绍完毕。


    参考

    常见以太网芯片:常用以太网PHY芯片选型---百兆/千兆/车载以太网PHY_打怪升级ing的博客-CSDN博客_常用的phy芯片

    RTL8201内部框图:https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1598268011668&di=8bc8a57ec60d9413b0dd47ffb82820ef&imgtype=0&src=http%3A%2F%2Fimg1.imgtn.bdimg.com%2Fit%2Fu%3D3426522046%2C4080715175%26fm%3D214%26gp%3D0.jpg

    RTL8201BL中文版数据手册:RTL8201BL数据手册(中文版) - 百度文库

    MLT-3信号编码:MLT-3_百度百科

    编码(NRZ、NRZI、曼彻斯特、4B/5B): 编码(NRZ、NRZI、曼彻斯特、4B/5B) - 苍月代表我 - 博客园

    差分信号详解


    展开全文
  • 7.物理地址(MAC地址)是什么?

    千次阅读 2021-05-09 23:53:08
    由于网络设备对物理地址的处理能力有限,物理地址只在当前局域网内有效。所以,接收方的物理地址都必须存在于当前局域网内,否则会导致发送失败。 MAC 地址的英语是 Media Access Control Ad...

    欢迎关注我的公众号是【CodeAllen】,关注回复【1024】获取资源
    程序员技术交流①群:736386324 ,程序员技术交流②群:371394777    

    物理地址是一种标识符,用来标记网络中的每个设备。同现实生活中收发快递一样,网络内传输的所有数据包都会包含发送方和接收方的物理地址。

    由于网络设备对物理地址的处理能力有限,物理地址只在当前局域网内有效。所以,接收方的物理地址都必须存在于当前局域网内,否则会导致发送失败。

    MAC 地址的英语是 Media Access Control Address,直译为媒体存取控制位址,也称为局域网地址(LAN Address)、以太网地址(Ethernet Address)或物理地址(Physical Address),它是一个用来确认网络设备位置的位址。

    MAC 地址是预留的

    由于数据包中都会包含发送方和接收方的物理地址,数据包从起始地发送到目的地,为了能够正确地将数据包发送出去,就必须要求 MAC 地址具有唯一性。因此 MAC 地址都是由生产厂家在生产时固化在网络硬件中,是硬件预留的地址。

    MAC 地址格式

    硬件的 MAC 地址是厂家按照一定的规则,进行设置所产生的,因此,MAC 地址拥有自己的格式。

    MAC 地址采用十六进制数表示,共 6 个字节(48 位),长度为 48bit(字节)。整个地址可以分为前 24 位和后 24 位,代表不同的含义。

    • 前 24 位称为组织唯一标识符(Organizationally Unique Identifier,OUI),是由 IEEE 的注册管理机构给不同厂家分配的代码,区分了不同的厂家。
    • 后 24 位是由厂家自己分配的,称为扩展标识符。同一个厂家生产的网卡中 MAC 地址后 24 位是不同的。

    查询 MAC 厂商

    由于 MAC 地址的前 24 位是生产厂商的标识符,因此可以根据前 24 位标识符判断出硬件的生产厂商和生产地址。用户可以在一些网站上查询,如 http://mac.51240.com/

    【示例】查询 MAC 地址 00:0C:29:CA:E4:66 所对应的厂商。

    1) 在浏览器中输入网址 http://mac.51240.com/,如图所示。
     


    2) 在“MAC地址”文本框中输入 MAC 地址 00-0C-29-CA-E4-66。然后单击“查询”按钮,查询结果如图所示。
     


    从上图显示的信息中,可以看到 MAC 地址 00-0C-29-CA-E4-66 的厂商是 VMware,Inc,由此可以推断出这是一台虚拟机设备,并且可以看到厂家对应的省份、街道、邮编等信息。

    查看网络主机 MAC 地址信息

    一个局域网或公司中往往存在多台计算机,这些计算机都有自己的 MAC 地址和 IP 地址。其中,IP 地址是可变的,而 MAC 地址一般是不可变的。为了准确地识别主机,用户可以获取计算机对应的 MAC 地址。

    【示例】显示网络主机 MAC 地址信息。

    1) 显示局域网中指定主机的 MAC 地址信息。例如,显示主机 192.168.59.133 的 MAC 地址。执行命令如下:

    root@daxueba:~# netwox 5 -i 192.168.59.133

    输出信息如下:

    192.168.59.133       00:0C:29:D0:21:23

    输出信息表示主机 192.168.59.133 的 MAC 地址为 00:0C:29:D0:21:23。

    2) 显示局域网中所有主机的 MAC 地址,执行命令如下:

    root@daxueba:~# netwox 5 -i 192.168.59.0/24

    输出所有主机的 MAC 地址如下:

    192.168.59.1              00:50:56:C0:00:08
    192.168.59.2              00:50:56:EA:F3:A1
    192.168.59.131          00:0C:29:CA:E4:66
    192.168.59.132          00:0C:29:C4:8A:DE
    192.168.59.133          00:0C:29:D0:21:23
    192.168.59.254          00:50:56:F0:69:32

    以上输出信息显示了局域网中所有启用主机的 IP 地址和对应的 MAC 地址。

    3) 在显示局域网中所有主机的 MAC 地址信息时,有时由于暂时没有发现主机,等待较长的时间,也不会有任何输出信息。

    为了能够更好地了解当前的进度,可以使用-u选项,显示未发现主机的 MAC 地址的信息,进而可以查看扫描进度。执行命令如下:

    root@daxueba:~# netwox 5 -i 192.168.59.0/24 -u

    输出信息如下:

    192.168.59.0            unresolved
    192.168.59.1            00:50:56:C0:00:08
    192.168.59.2            00:50:56:EA:F3:A1
    192.168.59.3            unresolved
    …  #省略其他信息
    192.168.59.131         00:0C:29:CA:E4:66
    192.168.59.132         00:0C:29:C4:8A:DE
    192.168.59.133         00:0C:29:D0:21:23
    192.168.59.134         unresolved
    192.168.59.135         unresolved
    …  #省略其他信息
    192.168.59.254         00:50:56:F0:69:32
    192.168.59.255         unresolved

    从输出信息可以看到,程序对局域网中的所有主机进行了扫描,主机 IP 地址为 192.168.59.0 到 192.168.59.255。

    如果扫描的主机存在,则给出对应的 MAC 地址;如果主机不存在,则显示为 unresolved。

    根据 MAC 地址获取主机其他信息

    进行数据传输的主机不仅拥有 MAC 地址,还拥有路由器分配的 IP 地址,有的还会有自己的主机名、标题等信息。如果知道了主机的 MAC 地址信息,那么就可以使用 netwox 工具获取该主机的这些信息。

    【示例】已知一主机的 MAC 地址为 00:0C:29:CA:E4:66,显示该主机的其他信息。

    1) 显示该主机相关信息,执行命令如下:

    root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66

    输出信息如下:

    IP address:   192.168.59.131
    Hostname:    localhost
    Hostnames:   localhost

    从输出信息可以看到,该主机的 IP 地址为 192.168.59.131,主机名为 localhost。

    2) 如果在显示信息时只想显示 IP 地址信息,可以使用--ip选项,执行命令如下:

    root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66 --ip

    输出信息只有IP地址信息,如下:

    192.168.59.131


    3) 如果在显示信息时只想显示主机名信息,可以使用--host选项,执行命令如下:

    root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66 --host

    输出信息只有主机名信息,如下:

    localhost


    4) 如果在显示信息时只想显示标题信息,可以使用--title选项,执行命令如下:

    root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66 --title

    执行命令后,如果没有输出信息,表示该主机没有标题信息。

     

    本文为转载,仅供学习,转载请联系原作者

    http://c.biancheng.net/view/6382.html

    展开全文
  • 以太网物理层协议整理-万兆以太网

    千次阅读 2017-06-27 09:51:11
    在万兆以太网标准化过程中,IEEE和10GEA(万兆以太网联盟)是两个最重要的组织。 万兆以太网标准和规范都比较繁多,在标准方面,首先有2002年的IEEE 802.3ae,后来也不断有新的万兆以太网规范推出,如2006年的IEEE ...
  • 线路故障一般包括网线或者光纤线路本身物理损坏网线类型错误支持MDI/MDI-X自适应除外或者光纤收发连接不正确中间传输设备光电转换器线路转换器等故障或者工作不正常接口线缆所支持的最大传输长度最大速率等
  • Author:老九 计算机专业 可控之事 沉重冷静 不可控之事 乐观面对 85180586@qq.com ???? ???? ???? ???? ???? ???? ???? ???? ???? ☺️ ???? ???? ???? ???? ?...文章目录以太网以太网帧格式认识M
  • Ethernet(以太网物理介质(10Base、100Base-T、100Base-TX等)   以太网采用CSMA/CD(Carrier Sense Multiple Access/Collision Detection,载波监听多路存取和冲突检测)介质访问控制方式的局域网技术,...
  • 以太网--车载以太网

    千次阅读 2021-08-19 00:47:20
    以太网--车载以太网1 介绍1.1 以往车载总线技术1.2 车载以太网1.3 线束影响2 优点2.1 满足带宽2.2 减少ECU数量2.3 降低线束成本3 应用3.1 汽车2.4 知识点TSN车载以太网架构图参考 1 介绍 1.1 以往车载总线技术 主要...
  • 秒懂以太网的 MAC 硬件地址

    千次阅读 2020-04-21 11:41:05
    什么是MAC硬件地址,以及物理地址是什么,他们有什么关系,本文介绍了以太网 MAC帧的格式,解释了常见的两种格式,以及一些基础知识,可以在遗忘的时候查阅。
  • ROM上有计算机硬件地址MAC地址 在局域网中,硬件地址又称为物理地址,或MAC地址 MAC地址:每个适配器有一个全球唯一的48位二进制地址,前24位代表厂家(由IEEE规定),后24位厂家自己指定。常用6个十六进制数表示 ...
  • 考虑到以太网组网技术的易于理解、实现、管理和维护,且成本低廉、网络拓扑结构灵活的优点,应用以太网组网技术来搭建数据交互的平台。其中的关键就是接口转换器的实现。DSP芯片作为一种特殊的嵌入式微处理器系统,...
  • IEEE 802.3协议是针对以太网CSMA/CD标准的传输介质物理层(PHY)和介质访问控制协议(MAC、Media Access Control)来定义的。芯片由PHY、发送模块、接收模块、FIFO、控制模块组成,其中控制模块包括寄存器堆、DMA...
  • 在考虑1G到100G以太网物理层编码码字长度约束的基础上,分别设计了针对1G、10G、100G接口中最大通道速率的LDPC(192,120),LDPC(594,462),LDPC(1188,990)码字,实现了信道编码处理的低时延。仿真结果表明,...
  • 以太网帧分析

    千次阅读 2021-09-21 16:05:56
    网络连接的物理寻址存在于数据链路层。在数据链路层传输的协议单元称为帧(frame)。 数据链路层将数据位组合成称为帧的实体。 以太网等网络拓扑存在于数据链路层。 网络交换机是数据链路层最常见的网络设备。 ...
  • 在系统设备不断向小型化、集成化、网络化发展的今天,嵌入式开发成为新技术发展的最前沿,改变着系统的整体结构。FPGA由于其自身特点,成为嵌入式开发的最佳平台。Altera公司结合其最新一代高端器件推出了全新的...
  • 【网络】数据链路层-以太网协议

    千次阅读 2022-05-02 23:40:23
    MAC帧 以太网 MTU 分片 ARP协议 ARP
  • 以太网帧和一些标准

    千次阅读 2021-01-13 09:22:33
    他们也叫MAC地址,链路地址物理地址以太网帧的目的地址也允许寻址到多个站点(广播或组播) 源地址的后面跟着一个类型字段,或者长度字段,在多数情况下,它用于确定头部后面的数据类型。 TCP/IP网络常用的值...
  • 一、 以太网 ( Ethernet ) 概述、 二、 以太网 ( Ethernet ) 服务、 三、 以太网 ( Ethernet ) 发展、 四、 10BASE-T 以太网、 五、 适配器 与 MAC 地址、 六、 以太网 MAC 帧、 七、高速以太网
  • Xilinx:registered: Virtex:trade_mark:-5 以太网媒体接入控制器(以太网MAC)模块提供了专用的以太网功能,它和 Virtex-5 RocketIO:trade_mark: GTP收发器以及 SelectIO:trade_mark: 技术相结合,能够让用户与各种...
  • 以太网UDP最大报文长度

    万次阅读 2014-01-22 22:47:28
    对于以太网环境下UDP传输中的数据包长度问题  首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用层。  其中以太网(Ethernet)的数据帧在链路层  IP包在网络层  TCP或UDP包在传输层 ...
  •  在CvcloneII中,A1tera集成了完整的千兆以太网硬核,硬核包括MAC模块以及可选择的物理层PCS模块和PMA模块,其中MAC模块支持l0/100/1000 Mb/s。Altera的SOPCBuilder工具提供快速搭建SOPC系统的能力,这种架构可以...
  • 文档包含以太网模块W5500中文和英文文档介绍资料,非常方便,分享给大家!
  • 为了适应高带宽的要求和更长传输距离的要求,万兆以太网对原来的以太网技术也做了很大的改进,主要表现在:物理层实现方式、帧格式和MAC的工作速率及适配策略方面、万兆以太网有两种不同的物理层局域网物理层和广域...
  • 最新完整英文电子版 ISO/IEC/... 物理层使用为操作速度、传输介质和支持的链路长度指定的调制对用于传输的帧进行编码并解码接收到的帧。 其他指定的功能包括:控制和管理协议,以及通过选定的双绞线 PHY 类型提供电源。
  • 协议介绍及帧结构2.1 媒体访问控制子层协议MAC2.2 地址解析协议ARP2.2.1ARP帧结构2.2.2 ARP协议工作原理2.3 网际互连协议IP2.3.1 IP协议帧2.3.2 IP数据报分片重组2.4 互联网控制消息协议ICMP2.5 用户数据报协议UDP...
  • MAC地址(英语:Media Access Control Address),直译为媒体存取控制位址,也称为局域网地址(LAN Address),MAC位址,以太网地址(Ethernet Address)或物理地址(Physical Address),它是一个用来确认网络设备...
  • 以太网

    千次阅读 2018-03-17 11:20:34
    3.0以太网发展过程与内容简介以太网是当今最广泛的局域网。... 最初以太网是总线式以太网(共享式以太网以太网交换机诞生,共享式以太网转变为交换式以太网交换导致大量MAC帧广播导致危害,VLAN出现三层交...
  • 此接口选用Altera 公司的FPGA芯片EPM570GT100C4, 并配合专用协议集成芯片W3150A+和物理层芯片RTL8201, 可成功实现以太网的数据传输。  0 引言  虚拟仪器以其性价比高、开放性强等优势迅速占领了市场, 并成为...
  • 计算机网络之IP协议与以太网

    千次阅读 多人点赞 2022-05-05 12:48:40
    本篇文章将介绍网络层和数据链路层的协议——IP协议与以太网,包括协议的格式,以及协议中每个字段的作用。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 38,004
精华内容 15,201
关键字:

以太网物理地址长度