精华内容
下载资源
问答
  • 以太网协议

    千次阅读 2018-11-23 15:38:52
    以太网协议中,目的地址分为三种单播地址、广播地址、多播地址,其中单播地址如上面A给B主机发送,其接收者为一个,并且其目的地址的最高字节的低位为0, 以太网多播地址48位中的最高字节的低位为1,如 01:00...

    以太网(Ethernet)

    以太网是一种局域网技术,其规定了访问控制方法、传输控制协议、网络拓扑结构、传输速率等,完成数据链路层和物理层的一些内容,它采用一种称作CSMA/CD的媒体接入方法,其意思是带冲突检测的载波侦听多路接入(Carrier Sense, Multiple Access with Collision Detection),另外的一些局域网技术有令牌环网,无线LAN等。

    以太网协议

    TCP/IP四层模型中,以太网协议采用RFC894格式,如下图:
    在这里插入图片描述

    其中目的地址和源地址指的是MAC地址,即设备的物理地址。MAC地址用于标示网卡,每个网卡都具有唯一的MAC 地址
    在这里插入图片描述

    当在同一个局域网中,主机A需要给主机B发送消息时,主机A将以太网桢发出,此时局域网中所有主机均可收到这个桢,主机中的网卡接收到以太网桢后,会将目的MAC地址和自己的MAC地址进行比较,如果不相同就会丢弃,如果相同则会接收,此时则B主机就收到了A的消息。
    以太网桢中的类型指的是,其内部数据的协议类型,如果中间是IP数据报则协议类型为0800, 如果是ARP请求或者应答,则为0806,类型占两个字节
    其最后面是CRC循环冗余码,用于差错控制,即检验桢的正确性
    最后就是以太网桢为了提供足够快的响应速度具有长度限制,其数据部分的最大长度受到MTU控制, 最小长度不能小于46字节,如ARP请求为28位,为了满足最小长度需要填充到46位(PAD)

    MTU(最大传输单元)

    MTU是根据不同类型的网络给出的最大传输单元的限制,如以太网的MTU为1500字节,16MB/s的令牌环(IBM)的MTU 为17914字节,其作用是为了保证网络有足够快的响应速度,另外MTU 指的是以太网桢数据部分的长度,并非以太网桢的长度。假设需要发送的UDP数据报长度大于MTU减去IP首部长度,此时数据报在IP层就会进行分片。
    在这里插入图片描述

    单播 多播 广播

    在以太网协议中,目的地址分为三种单播地址、广播地址、多播地址,其中单播地址如上面A给B主机发送,其接收者为一个,并且其目的地址的最高字节的低位为0,
    以太网多播地址48位中的最高字节的低位为1,如 01:00:00:00:00:00 ,只要这一位为1均为多播地址,‘
    以太网广播地址可以看作特殊的多播地址其48位全为1 11:11:11:11:11:11,
    当网卡收到一个桢后查看桢检验和,如果桢检验和出错则丢弃,然后进行桢过滤,检验其桢是否具有合法的桢类型,其目的地址是否和自己的物理地址相同,或者是否是多播地址,然后根据帧类型进行分用。
    另外网卡可以设置为混合模式,可以接受每个收到的桢的一个复制,tcpdump采用这种方法。

    参考:《TCP/IP详解卷1:协议》 LawrenceBerkeley

    展开全文
  • 以太网协议

    千次阅读 2009-04-02 11:11:00
    历史上以太网帧格式有五种:1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准;2 Ethernet II即DIX 2.0:...

    历史上以太网帧格式有五种:
    1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准;
    2 Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARPA。

    这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DEC,Intel和Xerox在1982年公布其标准,主要更改了Ethernet V1的电气特性和物理接口,在帧格式上并无变化;Ethernet V2出现后迅速取代Ethernet V1成为以太网事实标准;Ethernet V2帧头结构为6bytes的源地址+6bytes的目标地址+2Bytes的协议类型字段+数据。
    常见协议类型如下:
    0800       IP
    0806       ARP
    0835       RARP
    8137       Novell IPX
    809b       Apple Talk
    如果协议类型字段取值为0000-05dc(十进制的0-1500),则该帧就不是Ethernet V2(ARPA)类型了,而是下面讲到的三种802.3帧类型之一;Ethernet可以支持TCP/IP,Novell IPX/SPX,Apple Talk Phase I等协议;RFC 894定义了IP报文在Ethernet V2上的封装格式;

    PR SD DA SA TYPE DATA PAD FCS
    56位 8位 48位 48位 16位 不超过1500字节 不够填充 32位

    在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图所示。其中,前7个字节称为前同步码(Preamble),内容是16进制数0xAA,最后1字节为帧起始标志符0xAB,它标识着以太网帧的开始。前导字符的作用是使接收节点进行同步并做好接收数据帧的准备。

    ——PR:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10M和100M的时钟频率不一样,所以100M网卡可以兼容10M网卡),是56位的二进制数101010101010.....

    ——SD: 分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的10101011,跟同步位不同的是最后2位是11而不是10.

    ——DA:目的地址,以太网的地址为48位(6个字节)二进制地址,表明该帧传输给哪个网卡.如果为FFFFFFFFFFFF,则是广播地址,广播地址的数据可以被任何网卡接收到.

    ——SA:源地址,48位,表明该帧的数据是哪个网卡发的,即发送端的网卡地址,同样是6个字节.

    ----TYPE:类型字段,表明该帧的数据是什么类型的数据,不同的协议的类型字段不同。如:0800H 表示数据为IP包,0806H 表示数据为ARP包,814CH是SNMP包,8137H为IPX/SPX包,(小于0600H的值是用于IEEE802的,表示数据包的长度。)

    ----DATA:数据段 ,该段数据不能超过1500字节。因为以太网规定整个传输包的最大长度不能超过1514字节。(14字节为DA,SA,TYPE)

    ----PAD:填充位。由于以太网帧传输的数据包最小不能小于60字节, 除去(DA,SA,TYPE 14字节),还必须传输46字节的数据,当数据段的数据不足46字节时,后面补000000.....(当然也可以补其它值)

    ----FCS:32位数据校验位.为32位的CRC校验,该校验由网卡自动计算,自动生成,自动校验,自动在数据段后面填入.对于数据的校验算法,我们无需了解.

    ----事实上,PR,SD,PAD,FCS这几个数据段我们不用理它 ,它是由网卡自动产生的,我们要理的是DA,SA,TYPE,DATA四个段的内容.

    ----所有数据位的传输由低位开始(但传输的位流是用曼彻斯特编码的)

    ----以太网的冲突退避算法就不介绍了,它是由硬件自动执行的.

    DA+SA+TYPE+DATA+PAD最小为60字节,最大为1514字节.

    ----以太网卡可以接收三种地址的数据,一个是广播地位,一个是多播地址(我们用不上),一个是它自已的地址.但网卡也可以设置为接收任何数据包(用于网络分析和监控).

    ----任何两个网卡的物理地址都是不一样的,是世界上唯一的,网卡地址由专门机构分配.不同厂家使用不同地址段,同一厂家的任何两个网卡的地址也是唯一的.根据网卡的地址段(网卡地址的前三个字节),可以知道网卡的生产厂家.有些网卡的地址也可以由用户去设定,但一般不需要.

    3 Ethernet 802.3 raw帧格式

      

      如图5所示,是Ethernet 802.3 raw类型以太网帧格式。

        

                                图5  Ethernet 802.3 raw帧格式

      

      在Ethernet 802.3 raw类型以太网帧中,原来Ethernet II类型以太网帧中的类型字段被"总长度"字段所取代,它指明其后数据域的长度,其取值范围为:46-1500。

      

      接下来的2个字节是固定不变的16进制数0xFFFF,它标识此帧为Novell以太类型数据帧。

      

      4 Ethernet 802.3 SAP帧格式

      如图6所示,是Ethernet 802. 3 SAP类型以太网帧格式。

        

                                                 图6  Ethernet 802. 3 SAP帧格式

      

      从图中可以看出,在Ethernet 802.3 SAP帧中,将原Ethernet 802.3 raw帧中2个字节的0xFFFF变为各1个字节的DSAP和SSAP同时增加了1个字节的"控制"字段,构成了802.2逻辑链路控制(LLC)的首部。LLC提供了无连接(LLC类型1)和面向连接(LLC类型2)的网络服务。LLC1是应用于以太网中,而LLC2应用在IBM SNA网络环境中。

      

      新增的802.2 LLC首部包括两个服务访问点:源服务访问点(SSAP)和目标服务访问点(DSAP)。它们用于标识以太网帧所携带的上层数据类型,如16进制数0x06代表IP协议数据,16进制数0xE0代表Novell类型协议数据,16进制数0xF0代表IBM NetBIOS类型协议数据等。

    常见SAP值:
    0                                      Null LSAP                    [IEEE]
    4                                      SNA Path Control         [IEEE]
    6                                      DOD IP                       [79,JBP]
    AA                                    SNAP                         [IEEE]
    FE                                     ISO DIS 8473              [52,JXJ]
    FF                                     Global DSAP                [IEEE]
    SAP值用以标志上层应用,但是每个SAP字段只有8bits长,而且其中仅保留了6比特用于标识上层协议,因此所能标识的协议数有限(不超过32种);并且IEEE拒绝为某些重要的协议比如ARP协议定义SAP值(奇怪的是同时他们却定义了IP的SAP值);因此802.3/802.2 LLC的使用有很大局限性;

      至于1个字节的"控制"字段,则基本不使用(一般被设为0x03,指明采用无连接服务的802.2无编号数据格式)。

      

      5 Ethernet 802.3 SNAP帧格式

      如图7所示,是Ethernet 802. 3 SNAP类型以太网帧格式。

      

                                          图7  Ethernet 802. 3 SNAP帧格式

      

      Ethernet 802. 3 SNAP类型以太网帧格式和Ethernet 802. 3 SAP类型以太网帧格式的主要区别在于:

      

      ●2个字节的DSAP和SSAP字段内容被固定下来,其值为16进制数0xAA。

      

      ●1个字节的"控制"字段内容被固定下来,其值为16进制数0x03。

      

      ●增加了SNAP字段,由下面两项组成:

      

      ◆新增了3个字节的组织唯一标识符(Organizationally Unique Identifier,OUI ID)字段,其值通常等于MAC地址的前3字节,

    ◆ 增加了表示上层协议的类型

    这是IEEE为保证在802.2 LLC上支持更多的上层协议同时更好的支持IP协议而发布的标准,与802.3/802.2 LLC一样802.3/802.2 SNAP也带有LLC头,但是扩展了LLC属性,新添加了一个2Bytes的协议类型域(同时将SAP的值置为AA),从而使其可以标识更多的上层协议类型;另外添加了一个3Bytes的OUI字段用于代表不同的组织,RFC 1042定义了IP报文在802.2网络中的封装方法和ARP协议在802.2 SANP中的实现;

    不同厂商对这几种帧格式通常有不同的叫法,比如:
    Frame Type                            Novel                           Cisco
    Ethernet Version 2                 Ethernet_II                    arpa
    802.3 Raw                             Ethernet_802.3              novell_ether
    IEEE 802.3/802.2                   Ethernet_802.2              sap
    IEEE 802.3/802.2 SNAP         ETHERNET_SNAP        snap

    展开全文
  • 工业以太网协议EtherCAT主开源协议栈,在mbed上有对应的移植到STM32上应用。 工业以太网协议EtherCAT主开源协议栈,在mbed上有对应的移植到STM32上应用。
  • IEEE Std 802.3ab 以太网协议 千兆网以太网技术协议 文字版 带目录
  • 工业以太网协议EtherNetIP
  • 以太网协议报文格式,介绍了TCP/IP协议簇,以太帧类型,不同类型的帧封装格式。
  • 为解决工业控制系统信息安全问题,对工业以太网协议安全进行深入研究,报告了协议安全防护的研究现状。首先论述了工业控制系统和工业以太网协议的体系结构,分析了5种主要协议的脆弱性。其次从外部主动防御技术、...
  • 对以太网全硬件TCP/IP协议栈的简单认识-w5500以太网协议基本认识.pdf
  • ppp协议与以太网协议的异同

    万次阅读 2017-09-26 16:52:48
    声明:本文所说的以太网协议均为mac协议 下面我将从数据链路层的三个要素着手,来讨论ppp协议与以太网协议的异同。 0x1封装成帧 大家都知道当ip数据报传到数据链路层时需要封装成帧,ppp协议采用的方式是通过在ip...

    声明:本文所说的以太网协议均为mac协议

    下面我将从数据链路层的三个要素着手,来讨论ppp协议与以太网协议的异同。

    0x1封装成帧

    大家都知道当ip数据报传到数据链路层时需要封装成帧,ppp协议采用的方式是通过在ip在每个帧的首尾都添加一个帧定界符(soh与eot),但是以太网协议生成的帧却只有头部帧定界符,为什么mac帧不需要尾部定界符呢?这就和以太网采用的对信号的编码方式有关了,以太网采用曼彻斯特编码,而,曼彻斯特编码的每一个码元的正中间都一定会有一次电压的跳变,当以太网把一个mac帧发完过后就不在发送其他的码元了(mac帧之间都是有一定间隙的),所以这样就很容易找到帧的结束位置。

    0x2透明传输

    ppp协议在透明传输时,会对一些产生歧义的数据进行转义操作,但是,以太网协议不需要担心这一问题因为在mac帧中不可能出现歧义数据。理由同上

    0x3差错检测

    ppp协议与以太网协议都是采用crc差错校验。

    此处贴一个从其他方面进行分析的文章链接:点击打开链接


    展开全文
  • 用于硬实时通信的简单交换以太网协议
  • Ethernet :以太网协议,用于实现链路层的数据传输和地址封装(MAC) 封装原理: 以太网的数据帧格式如下图所示: 它由6个字节的目的MAC地址,6个字节的源MAC地址,2个字节的类型域(用于标示封装在这...

    Ethernet :以太网协议,用于实现链路层的数据传输和地址封装(MAC),以太网是局域网使用最广泛的协议,由于部署简单,价格低廉,被IEEE委员会标准化。

     

    封装原理:

     

    以太网的数据帧格式如下图所示:

     

    它由6个字节的目的MAC地址,6个字节的源MAC地址,2个字节的类型域(用于标示封装在这个Frame、里面的数据的类型)。接下来是46-1500字节的数据和4字节的帧校验。

     

       前同步码:8字节,前7个0,1交替的字节(10101010)用来同步接收站,一个1010101011字节指出帧的开始位置。报头提供接收器同步和帧界定服务。

     

       目标地址:标识目的通信方的MAC地址,6个字节,单播多播或者广播。单播地址叫个人、物理、硬件或MAC地址,广播地址为全1,  0xFF FF FF FF 。

     

       源地址:标识发送端的MAC地址,6个字节,指出发送节点的单点广播地址。

     

       以太类型:2个字节,用来指出以太网帧内所含的上层协议。即帧格式的协议标识符。对于IP报文来说,该字段值是0x0800。对于ARP信息来说,以太类型字段的值是0x0806。

     

    以太类型值(16进制)对应协议 

    0x0000 -0x05DC          IEEE 802.3 长度  

    0x0101-0x01FF     实验  

    0x0600                              XEROX NS IDP  

    0x0660-0x0661                DLOG  

    0x0800                               网际协议(IP)  

    0x0801                             X.75  Internet  

    0x0802                             NBS Internet  

    0x0803                             ECMA Internet  

    0x0804                              Chaosnet  

    0x0805                               X.25 Level 3  

    0x0806                               地址解析协议(ARP : Address Resolution Protocol) 

    0x0808                             帧中继 ARP (Frame Relay ARP) [RFC1701] 

    0x6559                             原始帧中继(Raw Frame Relay) [RFC1701] 

    0x8035                               动态 DARP (DRARP:Dynamic RARP)反向地址解析协议(RARP:Reverse Address Resolution Protocol) 

    0x8037                               Novell Netware IPX  

    0x809B                              EtherTalk  

    0x80D5                              IBM SNA Services over Ethernet  

    0x80F3                      AppleTalk 地址解析协议(AARP:AppleTalk Address Resolution Protocol) 

    0x8100                             以太网自动保护开关(EAPS:Ethernet Automatic Protection Switching) 

    0x8137                             因特网包交换(IPX:Internet Packet Exchange) 

    0x814C                             简单网络管理协议(SNMP:Simple Network Management Protocol) 

    0x86DD                              网际协议v6(IPv6,Internet Protocol version 6) 

    0x8809                             OAM 

    0x880B                              点对点协议(PPP:Point-to-Point Protocol) 

    0x880C                             通用交换管理协议(GSMP:General Switch Management Protocol) 

    0x8847                      多协议标签交换(单播) MPLS:Multi-Protocol Label Switching <unicast>) 

    0x8848                      多协议标签交换(组播)(MPLS, Multi-Protocol Label Switching <multicast>) 

    0x8863                      以太网上的 PPP(发现阶段)(PPPoE:PPP Over Ethernet <Discovery Stage>) 

    0x8864    以太网上的 PPP(PPP 会话阶段) (PPPoE,PPP Over Ethernet<PPP Session Stage>) 

    0x88BB                      轻量级访问点协议(LWAPP:Light Weight Access Point Protocol)  0x88CC  链接层发现协议(LLDP:Link Layer Discovery Protocol) 

    0x8E88                             局域网上的 EAP(EAPOL:EAP over LAN) 

    0x9000                             配置测试协议(Loopback) 

    0x9100                             VLAN 标签协议标识符(VLAN Tag Protocol Identifier) 

    0x9200                               VLAN 标签协议标识符(VLAN Tag Protocol Identifier)  

    0xFFFF                              保留

     

    帧检验序列:4个字节。验证比特完整性。

    以太网协议中的数据:指的是包含上层各种协议头在内和真正实际数据的总和

    相关知识点解析:

    1.MAC地址

    ①所有设备的MAC地址都是全球唯一的;

    ②MAC地址是16进制表示的,长度为48bit,采用冒号分16进制表示;

    ③MAC地址前半部分被称为“OUI代码”厂商唯一标志符,用于唯一标志一个企业/公司,例如思科、TP-LINK、华为;后半部分厂商自行分配,B8:bc:1b表示华为OUI代码,极路由Hiwifi的OUI代码为d4:ee:07

     

    2.有效负载:由一个上层协议的协议数据单元PDU构成。可以发送的最大有效负载是1500字节。由于以太网的冲突检测特性,有效负载至少是46个字节。如果上层协议数据单元长度少于46个字节,必须增补到46个字节。如下抓包中的padding字段就是数据小于46个字节,填充的0

     

    3. 以太网协议仅仅是链路层/局域网通信中的一种标准,还有其他链路层协议,令牌网、总线网、FDDI等,以太网帧结构按IEEE划分还包括IEEE802.3和IEEE802.2标准,细分如下:

    展开全文
  • IEEE 802.3-2015 以太网协议
  • Linux:数据链路层——以太网协议以太网协议以太网帧格式MTU以及MTU对TCP、UDP、IP协议的影响MTU对TCP协议的影响六级标题 以太网协议 数据链路层:数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。...
  • vxWorks以太网协议编程手册,vxWorks以太网协议编程手册
  • 常用以太网协议与传统工业总线的工业控制应用与比较英文
  • Linux网络通信环境中的链路层主要负责相邻设备之间的数据帧传输,典型协议是以太网协议,典型设备是交换机。 网络层主要偏向数据的传输方向,也就是数据的起点到终点,而链路层更加偏向相邻主机间数据如何传输,也...
  • 一系列以太网协议报文格式归纳详解,包括ip tcp udp等协议!
  • IEEE802.3-2015 ,以太网协议标准
  • CAN总线与以太网协议转换
  • 工业以太网协议EtherCAT从开源协议栈,在mbed上有对应的移植到STM32上应用。 工业以太网协议EtherCAT从开源协议栈,在mbed上有对应的移植到STM32上应用。
  • 以太网协议-传输介质

    千次阅读 2017-11-12 21:10:02
    以太网协议-传输介质
  • 以太网协议 以太网是一种广泛使用的局域网技术。 以太网是一种应用与数据链路层的协议。 使用以太网可以完成相邻设备的数据帧传输。 格式:分为目的地址,源地址,类型,帧数据,CRC 目的地址是六个字节,源地址也是...
  • 车载DOIP以太网协议

    2018-06-07 16:22:33
    新一代车载以太网诊断协议,替代15765,ISO 13400,1-5
  • IEEE 802.3 以太网协议

    2012-10-14 10:57:12
    IEEE 802.3 以太网协议,主要是10GBASE-T的相关协议
  • 以太网协议号字段定义

    千次阅读 2018-07-23 12:09:29
    当前使用的以太网协议一般指EthernetII协议,它是Xerox与DEC、Intel等公司在1982年制定的以太网标准帧格式,在当时是一种事实工业标准。到1985年,IEEE又发布了802.3/802.2以太网标准。这两种标准都规定以太网MAC...
  • 以太网协议 变得通俗易懂

    千次阅读 多人点赞 2017-02-14 18:55:39
    容易理解的以太网协议
  • 3:以太网协议 4:PING指令测试 1、概述 1.1:以太网是实现LAN的一种技术,它允许嵌入式系统连接到一个LAN中,并可通过使用网关经Internet连接到外部世界,以太网的主要目的是向LAN发送和从LAN接收以太网帧,在TCP...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,410
精华内容 4,964
关键字:

以太网协议