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

    2019-11-20 11:21:39
    TCP/IP四层模型中,以太网协议采用RFC894格式,如下图: 格式如下: 1、目的地址与源地址: 这里都指的是 MAC 地址。每一个主机对应唯一的一个 MAC 地址,是由网卡决定的,长度是 48 位,所以这里的目的地址与源...

    TCP/IP四层模型中,以太网协议采用RFC894格式,如下图:


    格式如下:
    1、目的地址与源地址:
       这里都指的是 MAC 地址。每一个主机对应唯一的一个 MAC 地址,是由网卡决定的,长度是 48 位,所以这里的目的地址与源地址都是 6 个字节,也就是 48 个比特位。
    2、类型:
       两个字节的类型标识,这个类型字段有三种值,分别是 : IP(0800)、ARP(0806)、RARP(8035)。
    3、CRC:
       在以太网帧的最后,还有一个  CRC 校验码,来校验数据是否异常。

    IP:

     如果类型码为 0800 那么在数据链路层解包完毕后,将该数据交付给网络层的 IP 协议来处理该报文。

    ARP:

    如果类型码是 0806 , 那么在向上层交付的时候就交付给 ARP 协议,这里要说的是 ARP 协议是处于数据链路层与网络层之间的一种协议,也叫作地址解析协议。它将 IP 地址转换为 MAC 地址。

    RARP:

     RARP 协议,就是 Reverse ARP,与 ARP 协议相同,是将 MAC 地址转换为 IP 地址的协议。

    一般来说,数据第一次发送给目的主机时,在这之前应该发送 ARP 协议,根据目的主机的 IP 地址来确定目的主机的 MAC 地址,从而为后面的数据发送与接收提供便利。

    MAC地址与IP地址:
    在数据发送传输的过程中,目的 IP 地址与源 IP 地址是永远不会变的,这是这个数据的起始与终点,而 MAC 地址是一直在变化的,由于数据在传输的过程中会经历很多的主机等,所以在这个过程中 MAC 地址一直在变。类似于我们坐车,要坐车从 A 出发,目的地是 D。这个过程中我们会经过 B C,在到达 B 的时候,此时的 MAC 地址相当于我们上一站是 A , 下一站是 C。而目的 IP 地址与 源 IP 地址 分别是 D 与 A,这样说的话就很好理解了。
    MAC 地址与 IP 地址,一个代表的目的与终点,一个代表着途中的经过。所以在到达目的局域网后,数据包并不知道要传输给哪台主机,因为 MAC 地址的变化,但是目的 IP 地址一直没有变化,所以此时就需要 ARP 协议来确定目的主机的 MAC 地址。

    MTU:
    在谈 IP 协议的时候说到, IP数据报的长度受数据链路层的 MTU 影响。数据链路层要求在网络层传输过来的数据包必须在 MTU 范围内,以太网帧中的数据长度必须在 46字节到1500字节当中去。也就是说在 IP 层在添加报头信息之前,要判断此时由传输层传输过来的数据段是否超过了 1480 个字节(以太网帧中的数据包括 IP 协议的报头信息,IP 协议的报头信息为 20 字节),如果超过了,那么则对该数据段进行分片,所有被分片的数据的 IP 报头信息当中,它们的 16 位标识都是相同的,并且报头信息中的标志字段中第二位为 0 ,第三位如果为 1 ,代表着报文的结束。
    接收端在接收到这里分片数据后,根据 IP 报头信息的 16 为标识信息、三位标志位、13位偏移量信息进行组装。
    如果分片后的数据在接收端丢失某一片,那么就组装失败。即使组装失败, IP 层也不负责重新传输的功能。这是传输层所该做的事情。
    我们发现 ARP 协议与 RARP 协议它们的实际数据只有 28 个字节,于是在它的报文后进行补位,其中 PAD 就是用来填充的,使 ARP / RARP 协议的长度达到 MTU 的最小字节数。

    对于 UDP 传输的影响:
    一旦 UDP 携带的数据超过了 1472 (MTU - IP报头 - UDP报头 = 1500 - 20 - 8),那么在 IP 层就会对该数据分片,一旦分片就意味着增加了 UDP 传输丢包的可能性。 由于 UDP 协议传输本身就不负责可靠性,再加上分片,那么丢包的可能性就大大增加。

    对 TCP 传输的影响:
    TCP 协议在传输时也收到 MTU 的影响。一个 TCP 数据报的最大长度为 MSS 。MSS 处于 TCP 报头信息选项中。在 TCP 进行链接的时候,双方在发送 SYN 与 SYN + ACK 时就会在选项内对 MSS 进行设置。在双方都得到对方的 MSS 时,选择较小的 MSS 的值作为最终的 MSS 。
    再说明白点,MSS 的大小其实就是应用层给传输层的交付的数据的大小。不包括传输层的报头信息。所以在计算 MSS 的时候,用 MTU 减去网络层报头长度以及传输层报头长度即可。

    测试:

     

     

     

     

     

     

    展开全文
  • 以太网协议一、以太网帧格式二、ARP协议2.1 协议格式2.2 作用2.3 工作流程2.4 ARP局域网欺骗攻击三、MTU对于上层协议的影响3.1 TCP协议的影响3.2 UDP协议的影响 链路层协议主要是负责相邻设备之间的数据传输。 一、...


    链路层协议主要是负责相邻设备之间的数据传输。

    一、以太网帧格式

    在这里插入图片描述

    max地址:网卡设备的物理硬件地址,通常出厂时就会设定。

    48位对端mac地址+48位源端mac地址:无符号6字节整数,标识相邻两个设备。
    16位上层协议类型:记录网路层(有可能是介于网络层和链路层之间的协议,例如ARP协议、RARP协议)使用的协议,用于数据分用。
    0800为IP数据报协议类型
    0806为ARP请求、应答协议类型
    0835为RARP请求、应答协议类型
    46~1500字节的上层交付的数据:网络层(有可能是介于网络层和链路层的数据)进行封装后交付到链路层的数据,以太网帧中的数据长度规定最小46字节,最大1500字节。
    32位CRC:校验数据一致性。

    二、ARP协议

    2.1 协议格式

    在这里插入图片描述
    ARP数据就是数据一个介于网络层和链路层的数据,该数据到链路层后(上层协议类型为0806)进行链路层的封装。

    16位硬件类型:链路层网络类型,1为以太网。
    16位协议类型:要装换的地址类型,0x0800为IP地址。
    8位硬件地址长度:以太网地址为6个字节。
    8位协议地址长度:IP地址长度为4个字节。
    16位op字段:op字段为1表示ARP请求,op字段为2表示ARP应答。
    48位源端mac地址+32位源端IP地址:对于ARP请求而言,描述发送方信息。
    48位对端mac地址+32位对端IP地址:对于ARP请求而言,对端max地址未知,通过对端IP地址,得到max地址,做出ARP应答(ARP协议的作用)。
    18个字节的补充数据:ARP数据包大小为28个字节,但是以太网帧中的数据长度规定最小46字节,所以后面补充18个字节数据,该数据无任何意义。

    2.2 作用

    我们首先需要知道,数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址不知道,则无法发送数据,因此在通讯前必须获得目的主机的硬件地址。
    ARP协议的作用就是建立主机IP地址与MAC地址的映射关系。

    2.3 工作流程

    1.源主机发出ARP请求,询问某IP地址的主机的硬件地址是多少, 并将这个请求广播到本地网段。
    2.目的主机接收到广播的ARP请求,发现其中的IP地址与本机相符,则发送一个ARP应答数据包给源主机,将自己的硬件地址填写在应答包中,做出应答;
    每台主机都维护一个ARP缓存表,可以用arp -a命令查看。缓存表中的表项有过期时间(一般为20分钟),如果20分钟内没有再次使用某个表项,则该表项失效,下次还要发ARP请求来获得目的主机的硬件地址

    2.4 ARP局域网欺骗攻击

    由于ARP请求是一个广播请求,所以就有可能出现恶意主机,伪装IP地址,给你进行ARP应答,你就会将后续的数据发送到这个恶意主机。(破解攻击的方法:防火墙mac地址白名单)

    三、MTU对于上层协议的影响

    MTU是链路层限制的最大数据帧大小,以太网协议默认是大小为1500。

    3.1 TCP协议的影响

    在建立连接时,三次握手会协商mss(最大数据段大小),通信过程中都会从缓冲区取出不大于mss大小的数据进行数据传输,然而mss是通过mtu计算得到的
    mss=mtu-IP报头(20)-TCP报头(20)=mtu-40
    TCP在传输层会自动进行数据分段,所以在网络层不需要进行数据分片

    3.2 UDP协议的影响

    UDP是无连接的,所以不会协商mss,只要数据小于最大数据报长度(64k-28)就可以传输,但是若大于mtu大小,就会在网络层进行数据分片。
    但是,分片越多越危险,若单个分片出问题,则原始报文重组就会失败,就会造成所有分片被丢弃(所以对于UDP传输,用户尽可能在应用程对数据进行分包,传输的大小可以自己计算一个mss进行数据传输)

    展开全文
  • 以太网协议和ARP协议

    2020-06-05 18:09:28
    以太网帧格式类型:网络层使用的协议 CRC校验:检验数据链路层数据帧是否出错 只要确定了IP地址,就可以像这个目标发送IP数据报。在底层,进行实际通信时有必要知道每个IP地址所对应的MAC地址。 如果不知道,就...

    数据链路层负责相邻设备之间的传输,其关键作用的是MAC地址。

    MAC地址用于识别数据链路中互联的节点;MAC地址长48个比特位。

      

    以太网帧格式

    类型:网络层使用的协议

    CRC校验:检验数据链路层数据帧是否出错 


    只要确定了IP地址,就可以像这个目标发送IP数据报。在底层,进行实际通信时有必要知道每个IP地址所对应的MAC地址。

    如果不知道,就无法传输数据了。

    而解决这个问题,需要运用ARP协议。

    ARP协议是通过IP地址获取MAC地址。

    ARP协议的工作流程:

          为了获得目的主机的MAC地址,要通过广播发送一个ARP请求包。这个包包含了想要知道的MAC地址主机的IP地址。广播的包被同一链路上所有的主机或路由器接收,并被解析。如果ARP请求包中的目标IP地址和自己的IP地址一至,那么就将自己的MAC地址塞入ARP响应包返回。

    注:

    也就是说

           ARP协议只在子网内部有效

          ARP请求是广播发送的,如果目标主机收到则进行处理,如果不是目标主机收到,则丢弃掉

    ARP缓存表

    如果每发送一个IP数据报都要进行一次ARP请求以此确定MAC地址,那么将会造成不必要的网络流量。

    为了解决上面问题,我们可以将刚得到的映射关系存入ARP缓存表一段时间(20min,即ARP缓存表的老化时间)。

    如果在数据链路层没有在缓存表当中发现目的MAC地址,则发送ARP请求获取,否则直接从缓存表当中获取。

     

     

     

    ARP数据报格式

    以太网目的地址:ARP请求的目的MAC地址,全填充为1,表示广播地址

    以太网源地址:ARP请求主机的MAC地址

    帧类型:表示上层使用的协议(ARP协议是基于网络层和数据链路层之间的协议)

    28字节的请求或应答:

    2字节硬件地址类型:运行ARP网络的类型,以太网。

    2字节协议类型:表示要映射的协议地址类型。它的值为0x0800表示IP地址类型

    1字节的协议地址长度:IP地址的长度

    op:标识是ARP请求还是ARP应答  1标识请求,2表示应答

    发送端以太网地址:发送ARP请求或者应答主机的MAC地址

    4字节发送端IP地址:发送端ARP请求或者应答主机的IP地址

    目的以太网地址:

           ARP请求:填充 0x0000 0000 0000

          ARP应答:填充的是ARP请求中的源MAC地址

    目的IP地址:目标主机的IP地址

    展开全文
  • 以太网协议报文格式,介绍了TCP/IP协议簇,以太帧类型,不同类型的帧封装格式。
  • 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标准,细分如下:

    展开全文
  • 二层以太网类型对应的上层协议二层以太网类型对应的上层协议 二层以太网类型对应的上层协议 EtherType 协议 0x0804 Chaosnet 0x0805 X.25 Level 3 0x0806 地址解析协议(ARP : Address Resolution ...
  • 数据链路层是计算机网络的底层,主要负责相邻设备之间的数据帧传输 链路层就是负责每一个相邻结点之间的数据传输,但是相邻设备...上层协议类型:网络层的协议类型,进行数据分用时选择上层的解析协议 数据:网络层
  • 以太网协议

    2013-07-26 09:08:48
    2>第三个字段是2字节的类型字段,用来标志上一层使用的是什么协议。 l 类型字段的值为0x0800时,表示上层使用的是IP数据报。 l 类型字段的值为0x0806时,表示上层为ARP数据报 l 类型字段的值为0x8137时...
  • 以太网协议号字段定义

    千次阅读 2018-07-23 12:09:29
    当前使用的以太网协议一般指EthernetII协议,它是Xerox与DEC、Intel等公司在1982年制定的以太网标准帧格式,在当时是一种事实工业标准。到1985年,IEEE又发布了802.3/802.2以太网标准。这两种标准都规定以太网MAC...
  • EtherType :以太网类型字段及值 EtherType 是以太帧里的一个字段,用来指明应用于帧数据字段的协议。根据 IEEE802.3,Length/EtherType 字段是两个八字节的字段,含义两者取一,这取决于其数值。在量化评估中,...
  • 以太网协议 以太网是一种广泛使用的局域网技术。 以太网是一种应用与数据链路层的协议。 使用以太网可以完成相邻设备的数据帧传输。 格式:分为目的地址,源地址,类型,帧数据,CRC 目的地址是六个字节,源地址也是...
  • 以太网协议802.3

    2020-10-14 22:44:06
    IEEE 802.3是工作组和工作组制定的电气和电子工程师协会 (IEEE)标准的集合,该工作组定义了有线以太网的物理层和数据链路层的介质访问控制 (MAC)。 这通常是具有一些广域网 (WAN)应用的局域网(LAN)技术。 ...
  • 一、链路层协议: 负责相邻设备间的数据传输;相邻设备:连接起来的两个设备就是相邻设备。 一个路由器可能连接很多设备,也就是说一个设备有很多...(2)类型–2字节:上层网络层协议类型,用于数据的分用;(IP,
  • 以太网协议格式解析

    2020-07-29 10:07:40
    网络层描述了数据的起点和终点,... 16位的上层协议类型,用于数据分用上层协议的选择 32位的检验和 如何得到MAC地址: ARP协议:介于网络层和链路层之间的协议,可以通过ip地址获取到MAC地址 广播ARP请求,请求中.
  • 网络层只负责数据的源端和目的端,而链路层就是负责相邻设备之间的数据帧传输。相邻设备之间也需要描述识别(因为一个...16位上层协议类型:网络层的协议类型,在数据分用时选择上层的解析协议 32位CRC校验和:数据帧尾
  • 一.以太网协议

    千次阅读 2005-06-21 22:32:00
    ——--以太网协议(用于10MBPS的以太网,作者以下所说的以太网均指10M以太网,而不是100M,1000M的以太网)——以太网协议有两种,一种是IEEE802.2/IEEE802.3,还有一种是以太网的封装格式。——现代的操作系统均能...
  • 数据链路层 1.负责相邻设备之间的传输,决定... 类型:标识网络层使用什么协议; 数据:有效载荷 CRC校验:检测数据链路层的数据帧是否出差错; ARP协议 作用:通过IP地址获取相邻设备的MAC地址 ARP协议的格式: ARP协...
  • 以太网协议以及TCP/IP协议的报头

    千次阅读 2010-02-02 11:36:00
    //以太网协议格式的定义struct ether_header{ u_int8_t ether_dhost[6]; //目的以太网地址 u_int8_t ether_shost[6]; //源以太网地址 u_int16_t ether_type; //以太网类型}; //ARP协议格式的定义struct arp...
  • 2 以太网协议(简单认识) The Ethernet protocol describes physical links, and how data is formatted 描述了线缆的类型以及不同线缆的传输速度;另一部分则描述了数据应该如何进行格式化和发送的操作。 由于「...
  • 以太网类型总结

    万次阅读 2016-09-12 09:27:06
    以太网类型速查   EtherType :以太网类型字段及值 EtherType 是以太帧里的一个字段,用来指明应用于帧数据字段的协议。根据 IEEE802.3,Length/EtherType 字段是两个八字节的字段,含义两者取一,这取决...
  • 以太网和IEEE 802.3对数据帧的长度都有一个限制,其最大值分别是1500和1492字节。链路层的这个特性称作M T U,最大传输单元。不同类型的网络大多数都有一个上限。 如果IP层有一个数据报要传,而且数据的长度比链路...
  • 以太网由zilog公司的网络发展而来,1980年由DEC、Intel、Xerox三家公司联合宣布了以太网的技术规范。以太网是著名的总线网。集散控制系统中,采用CSMA/CD方式传输数据的总线网络大多采用以太网。(1)结构分层以太网...
  • 以太网类型

    2013-01-11 19:20:35
    EtherType :以太网类型字段及值 EtherType 是以太帧里的一个字段,用来指明应用于帧数据字段的协议。根据 IEEE802.3,Length/EtherType 字段是两个八字节的字段,含义两者取一,这取决于其数值。在量化评估中,...
  • 条款79规定了IEEE 802.3组织特定链路层发现协议(LLDP)类型,长度和值(TLV)信息元素。第80条至第95条及相关附录包括40 Gb/s和100 Gb/s操作以及40 Gb/s和100 Gb/s物理层规范的一般信息。第90条规定了以太网对时间...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,448
精华内容 579
关键字:

以太网协议类型