精华内容
下载资源
问答
  • 2022-03-31 15:33:44

    数据链路层——以太网协议

    第1关:以太网帧的解析

    任务描述
    补充代码,解析收到的以太网帧,根据出帧类型,调用对应的处理函数。
    本任务中的给出的以太网帧字节流不包含前面的7字节同步码、1字节帧开始定界符和后面的4字节校验码。
    任务1:完成函数
    unsigned char* get_eth_dst_addr(unsigned char eth);
    输入为帧的第一个字节的指针,要求返回目的MAC的首地址。
    任务2:完成函数
    unsigned char get_eth_src_addr(unsigned char eth);
    输入为帧的第一个字节的指针,要求返回源MAC的首地址。
    任务3:完成函数
    void eth_dispatch(unsigned char eth);
    输入为帧的第一个字节的指针,要求返回源MAC的首地址。要求解析帧中的类型字段,根据类型编码确定该帧封装是IP,ARP或其他协议包。注意网络字节顺序可能与本地字节训练不同。已经IP协议对应的帧类型代码是0x0800,ARP协议对应的帧类型是0x0806。
    以太网是最简单的网络协议,掌握以太网帧解析的方法对后续解析其他协议包大有帮助。
    为了完成本关任务,你需要掌握:以太网协议语法和语义。

    更多相关内容
  • 数据链路以太网协议

    万次阅读 2018-06-06 17:22:48
    这样说其实不太准确,因为以太网协议个规定数据链路及物理的协议,不能说它是数据链路个协议。 以太网帧 以太网帧就是将网络交付的数据添加报头信息后,此时的数据以帧的形式传递。以太网帧的...

    在 IP 数据包交付的过程中,在数据链路层会对数据包进行添加报头信息。以太网协议就是数据链路层的一个重要协议。这样说其实不太准确,因为以太网协议是一个规定数据链路层及物理层的协议,不能说它是数据链路层的一个协议。

    以太网帧

    以太网帧就是将网络层交付的数据添加报头信息后,此时的数据以帧的形式传递。以太网帧的格式如下:

    这里写图片描述

    在这里,目的地址与源地址这里都指的是 MAC 地址。每一个主机对应唯一的一个 MAC 地址,是由网卡决定的,长度是 48 位,所以这里的目的地址与源地址都是 6 个字节,也就是 48 个比特位。

    在以太网帧的最后,还有一个 CRC 校验码,来校验数据是否异常。

    在中间,有一个两个字节的类型标识。这个类型字段有三种值,分别是 : IP、ARP、RARP。

    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 减去网络层报头长度以及传输层报头长度即可。

    这里写图片描述


    欢迎大家共同讨论,如有错误及时联系作者指出,并改正。谢谢大家!

    展开全文
  • 湘潭大学网络协议TCP/IP实验以太网链路帧格式分析实验报告,仅供参考
  • 以太网详解【第一层】【物理层】

    千次阅读 2022-04-21 12:41:38
    以太网详解【第一层】【物理层】

    😀😀双方进行通讯之前,一定要先建立好通讯协议。就像两个人进行讲话之前也要约定好说话的语言,就像中国大妈和美国大妈之间说话,就一定如同对牛弹琴,鸡同鸭讲。就像安徽人和广东人之间都能交流,是因为大家都统一说普通话。

    在这里插入图片描述
    🍔🍔物理层:比如人讲话发出的声音这种信号,别人能够听到声音这种信号,这叫做物理层
    🍟🍟数据链路层:将物理层的信号以某种格式打包一帧一帧发送出去,这个打包的过程叫做数据链路层
    🍕🍕网络层:将打包好的信号根据IP协议分配IP地址,这叫做网络层
    🌭🌭传输层:TCP和UDP,TCP可以理解为单对单信号,UDP可以理解为广播信号
    🍿🍿应用层: 文件管理系统,HTTP协议

    根据7层通讯模型可知,双方进行通讯是通过层层剥离进行通讯的,比如发送端发送信号的顺序是7654321打包发出去,接受端收到信号之后,通过1234567层层剥离最后才读到。
    在这里插入图片描述
    红色方框就是物理层
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    将MII发过来的0和1物理信号,进行PCS编码与解码,这里假如发送方与接收方的晶振频率不同,就会导致编码出现误差。PCS编码之后,就会转成串行信号发送出去,这里整个过程就是PHY的过程。
    在这里插入图片描述
    DDR是为了弥补8到4的缺陷,使得一个时钟周期发送两次数据,使得4的效果和8的效果一样
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 、7层协议 7是指OSI七层协议模型, 主要是: 应用(Application)、 表示(Presentation)、 会话(Session)、 传输(Transport)、 网络(Network)、 数据链路(Data Link)、 物理(Physical...

    计算机网络分为哪几层?7层协议、5层协议、4层协议。

    一、7层协议

    7层是指OSI七层协议模型,
    主要是:

    应用层(Application)、
    表示层(Presentation)、
    会话层(Session)、
    传输层(Transport)、
    网络层(Network)、
    数据链路层(Data Link)、
    物理层(Physical)。
    

    二、5层协议

    5层只是OSI和TCP/IP的综合,是业界产生出来的非官方协议模型,但是很多具体的应用。实际应用还是TCP/IP的四层结构。为了方便可以把下两层称为网络接口层。
    五层体系结构包括:

    应用层、
    运输层、
    网络层、
    数据链路层、
    物理层。 
    

    三、4层协议

    4层是指TCP/IP四层模型,
    主要包括:

    应用层、
    传输层、
    网际层、
    网络接口层。
    

    如图所示:

    在这里插入图片描述

    展开全文
  • 以太网MAC层协议

    万次阅读 2018-08-07 17:31:11
     MAC发送模块可将上层协议提供的数据封装之后通过MII接口发送给PHY。发送模块可接收主机接口模块的数据帧开始和数据帧结束标志,并通过 主机接口从外部存储器中读取要发送的数据,然后对数据进行封装,然后通过PHY...
  • 链路--->ETH(以太网协议

    千次阅读 2022-05-03 10:07:17
    链路负责相邻设备之间的数据帧传输,典型协议有:ETHH(以太网协议),ARP协议,MTU; 网络是通过IP地址定位起点与终点;链路是负责起点到终点之间的相邻设备间传输。相邻设备之间的识别是通过MAC地址完成的。 ...
  • 以太网协议

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

    千次阅读 2020-04-18 18:03:34
    Ethernet :以太网协议,用于实现链路的数据传输和地址封装(MAC) 封装原理: 以太网的数据帧格式如下图所示: 它由6个字节的目的MAC地址,6个字节的源MAC地址,2个字节的类型域(用于标示封装这...
  • IEEE 802.3 通常指以太网种网络协议。描述物理和数据链路的MAC子的实现方法,多种物理媒体上以多种速率采用CSMA/CD访问方式,对于快速以太网该标准说明的实现方法有所扩展。
  • 因为没有做过以太网的项目,也没有进行过以太网通信测试,本片博客仅仅是对以太网协议极小部分的学习了解。如有不当之处,还请指正。 、以太网 以太网是种产生较早,使用相当广泛的局域网技术,局域网就是个...
  • 、轮询访问介质访问控制 ()介质访问控制 信道划分介质访问控制(MAC Multiple Access Control )协议: ①、基于多路复用技术划分资源。 ②、网络负载重:共享信道效率高,且公平 ③、网络负载轻:共享信道...
  • 参考链接:车载以太网 - SOME/IP简介 - 知乎 目录 ...SOME/IP其实是构架传输之上的应用通信协议,它的内容虽然很多很杂,但本质上也就是定义了SOME/IP 包头和数据的内容而已。 WHY o..
  • 通信协议种分层结构的,根据 ISO 的 7 模型通信协议分为物理、数据链路、网络、传输、会话、表示、应用。如果用户想通过卓岚 ZLSN 模块的以太网透明传输协议实现串口数据和以太网数据的转发,
  • 互联网协议 — Ethernet 以太网协议

    千次阅读 2021-07-07 23:16:42
    目录 文章目录目录Ethernet以太网的两大类型 Ethernet 物理的数据实际会以电信号的形式物理介质中传输...Ethernet 协议,即以太网协议,规定了电信号的分组方式。组电信号称为个以太网数据帧,数据帧又由帧首
  • 以太网协议1.1 以太网协议格式2.ARP协议2.1 arp协议的格式2.2 arp缓存表2.2.1 为什么需要arp缓存表?2.2.2 arping发送的arp数据抓包的时候为什么没有看到广播现象?2.2.3 为什么arp缓存表当中的记录还需要老化...
  • 以太网、IP、TCP、HTTP的详细介绍

    万次阅读 多人点赞 2017-06-20 09:48:49
    TCP 协议简介 作者: 阮一峰 日期: 2017年6月 8日 ...TCP 只是其中的一层,有着自己的分工。...(图片说明:TCP 是以太网协议和 IP 协议的上层协议,也是应用层协议的下层协议。) 最底层
  • 网络(IP协议,ICMP) 数据链路以太网协议
  • 计算机网络之IP协议以太网

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

    千次阅读 2022-03-20 10:48:31
    TCP/IP是一个协议族,是一个多层协议系统,每一层完成不同的功能,且通过若干协议来实现,上层协议使用下层协议提供的服务。。对于开发人员听到最多就是就是应用层协议,比如HTTP、FTP、MQTT等。 TCP/IP是一个庞大...
  • POWERLINK 工业实时以太网协议简介

    千次阅读 2022-03-19 13:14:40
    平常我们听的最多用的最多的Internet互联网,应用上使用多的也是http,ftp等应用层协议。 工业以太网是应用于工业控制领域的以太网技术。技术上与商用以太网(即IEEE 802.3标准)兼容,但是实际产品和应用却又完全...
  • 以太网MAC协议--CSMA/CD协议

    千次阅读 2019-11-27 11:38:55
    以太网MAC协议–CSMA/CD协议 @(计算机网络) 为了通信的方便,以太网采用了两种重要的措施: CSMA/CD协议 采用无连接的工作方式:传输数据之前不用建立连接 对发送的帧不进行编号,也不要求接收方发回确认帧。这样...
  • 以太网完整协议

    万次阅读 多人点赞 2017-05-03 15:54:31
    、太网中数据帧结构 以太网是目前最流行的种局域网组网技术(其他常见局域网...物理上看,个完整的以太网帧有7个字段,事实上,前两个字段并不能算是真正意义上的以太网数据帧,它们是以太网在物理上发送
  • (1)结构分层以太网的网络结构分为三:物理、数据链路和高层用户,如图1所示。控制器插件板完成数据链路的功能,同袖电缆侧的收发器完成物理的功能。图2详细地说明了各功能。 图1 以...
  • ppp协议与以太网协议的异同

    万次阅读 2017-09-26 16:52:48
    大家都知道当ip数据报传到数据链路时需要封装成帧,ppp协议采用的方式是通过ip每个帧的首尾都添加个帧定界符(soh与eot),但是以太网协议生成的帧却只有头部帧定界符,为什么mac帧不需要尾部定界符呢?...
  • 1) 物理各子功能 Reconciliation Sublayer (RS):  协调子。汇聚功能,使不同介质类型对MAC子透明 Medium Independent Interface (MII):  介质无关接口。提供公共接口,屏蔽这些物理的不同细节...
  • 以太网物理层协议整理-万兆以太网

    千次阅读 2017-06-27 09:51:11
    万兆以太网标准化过程中,IEEE和10GEA(万兆以太网联盟)是两个最重要的组织。 万兆以太网标准和规范都比较繁多,标准方面,首先有2002年的IEEE 802.3ae,后来也不断有新的万兆以太网规范推出,如2006年的IEEE ...
  • 以太网物理(MAC)接口协议

    千次阅读 2020-03-14 21:09:30
    ‘本次的以太网协议,我们将完成与前面DDR3相类似的实验内容,也就是FPGA开发板发送视频内容,电脑的上位机上显示。详细的实验内容,我们会后面的文章中介绍,本次实验我们主要介绍以太网常见的物理协议,物理...
  • osi 七模型简介 各层协议的工作流程与规定 socket 简介 Tcp 服务端与客户端的"三次握手与四次挥手", Tcp 协议比 Udp 协议更加可靠的原因
  • 网络原理IP协议/以太网

    千次阅读 多人点赞 2022-05-05 10:44:55
    1.以太网协议 2.DNS协议 、网络 1.IP协议 ①IP协议的报头格式以及各部分说明: ②对以上其它重要部分再次进行说明: 1.16位总长度: 16位,64k,也就是说单个IP数据报最大程度不能够超过64k。但是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 86,901
精华内容 34,760
关键字:

以太网协议在哪一层