以太网协议介绍(ARP、UDP、ICMP、IP)

这篇具有很好参考价值的文章主要介绍了以太网协议介绍(ARP、UDP、ICMP、IP)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

以太网协议介绍

一、ARP协议

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

请求:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

应答:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

ARP协议:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

0x0001 0x0800 6 4

硬件类型:2个字节,arp协议不仅能在以太网上运行还能在其他类型的硬件上运行。以太网用1来表示;
协议类型:两字节。指的是arp协议的上层协议是什么,以太网中上层协议是IP,用0x0800表示;
硬件地址长度:1个字节。表示MAC地址的长度,即12-34-56-78-9a-ab,一共6位,所以这里填写6;
协议地址长度:一个字节。表示的是IP地址的长度。192.168.1.102,一共4个字节(byte);
OP:表示操作码,为1时表示请求,为2的时候是应答操作;
源mac地址:主机A的mac地址。长度为6字节;
源IP地址:主机A的IP地址。4个字节;
目的MAC地址:B主机的MAC地址。4个字节;
目的IP地址:B主机的IP地址。长度为6字节。

注意:
A发送请求时,源地址是指A的;当B主机应答的时候源地址是指B的。即谁发送源地址就是谁,目的地址是要发送的目标地址。

以太网ARP数据包格式:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

FCS:校验

在以太网帧头部分也包含了目的地址的mac和ip地址。

二、以太网帧格式:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

以太网通信是通过包的形式进行传输的,不像串口协议一样单位是byte。

前导码:7个字节。由7个0x55组成,0x55=0101_0101;
SFD:帧开始的界定符,长度为1个字节。固定值0xd5;
目的MAC地址:数据发送给谁,目的端的MAC地址,6个字节;
源MAC地址:谁发送的数据,6个字节;
长度or类型:如下图解析;
以太网数据格式:这个字段最低46byte,最高1500Byte,1500是最大的传输单元,单个数据包如果超过1500字节的话会被对端设备丢弃;


以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

帧间隙:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

三、以太网的UDP协议

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

TCP和UDP的区别

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

​ osi 7层模型:实现通信的任务以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

对于fpga开发,只需要关注传输层,网络层、数据链路层、物理层,嵌入式开发需要关注的是应用层、表示层、会话层。

物理层:底层硬件支持,利用传输介质为数据链路层提供物理连接,实现比特流的透明传输,使数据链路层不必考虑网络的介质是什么。PHY芯片、网线、RJ45座子等;
数据链路层:定义在单个链路上如何传输数据,其功能就是将数据组合成数据块(数据)。并提共数据差错校验的功能,帧是数据链路层传输的单位。如以太网的数据帧格式;
网络层:通过IP寻址来建立两个节点之间的连接,为数据包选择路由,如IP协议层;
传输层:作用是为上层协议提供端到端(端口到端口)的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题,如:TCP/UDP;

会话层:建立和管理应用程序之间的通道
表示层:主要的功能就是定义数据传输过程中的数据格式以及加密;
应用层:计算机用户以及各种应用程序和网络之间的接口,功能说就是直接向用户提供服务,完成用户希望在网络上完成的各种工作。如文件传输服务(FTP)、超文本传输协议(HTTP)

UDP数据格式:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

四、IP协议简介

IP:internet protocol(网际协议)

IP协议是TCP/IP协议簇中的核心协议之一,也是TCP/IP协议的载体,IP协议规定了数据传输时的基本单元和格式。所有的TCP、UDP以及ICMP数据都是以IP数据报格式传输的。

IP数据报格式:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

IP首部是以4(32bit)个字节为单位,

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

版本:IPv4 or IPv6;IPv4的地址是4个字节,即为0100,IPv6是6个字节,即0110; 
首部长度:指的是IP首部一共有多少个4个字节(以4个字节为单位),如果不包含可选字段,这里就填写5,5 * 4byte = 20 byte;
服务类型:一般设置为0,表示一般的服务;
总长度:IP首部和IP数据一共多长,最大的值为65535,但是实际上传送不了那么多,因为还要考虑以太网的帧格式长度,也就是只能传输1千多;
标识:初始值为0,每发送一个UDP数据包,这个值就累加1
标志:3bit,表示如有10000个数据,但是一次传输不了那么多,用于表示分片,需要对数据包进行分片;位号表示2  1  0,位号2为保留位为0,位号1为禁止分片位(不需要分片置为1,需要分片置为0),位号0表示需要更多的分片(在位号1使能的情况下使用),一般使用值为0。一般设为:010,表示不分片;
片偏移:分片的时候才有意义,当前的数据包位于整个数据包哪一个位置,方便后面解析的时候对其进行拼接;
生存时间:防止数据被无止境的复制下去,数据每经过1次路由器,生存时间就会减1;一般设置为64或者128;
协议:如果是UDP协议的时候就是17.如下图常用国际协议编号所示;
首部校验和:下面进行讲解,IP首部校验和计算方法图;
源IP地址:发送端的IP地址;
目的IP地址:接收端的IP地址;
可选字段:也是按照4个字节为单位;

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

举个例子:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

以太网UDP数据格式:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

UDP首部中端口号很重要,用于表示数据来自哪里和发送到哪里。

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

如果IP的检验和不正确的话,接收端将会丢掉数据包,UDP校验和大部分的接收端是不管的,所以一般置为0x00。

五、ICMP协议

ICMP(Internet control message protocol的缩写),即互联网控制消息协议。它用于TCP/IP网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈,通过这些消息,使得网络管理者可对所发生的问题做出诊断,然后适当的措施解决问题。

ICMP信息功能:

查询类报文:主要用于信息的查询和采集,比较教材传输路径上的每个路由器都是谁,本次传输的报文是否达到目的地等等。如ping功能就是这个。

差错诊断类报文:主要用于诊断网络故障,比如传输报文被丢弃的原因是什么等等。

ICMP协议包格式:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

ICMP查询报文:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发

ICMP报文类型:

以太网传输协议是哪个协议,FPGA学习之路,udp,tcp/ip,网络,fpga开发文章来源地址https://www.toymoban.com/news/detail-769226.html

	--晓凡   2023年10月2日于武汉书

到了这里,关于以太网协议介绍(ARP、UDP、ICMP、IP)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • TCP IP ICMP 以太网帧格式

    目录 TCP报文格式: IP报文格式   以太帧的结构: ICMP报文格式: URG:表示本报文段中发送的数据是否包含紧急数据:URG=1 时表示有紧急数据。当 URG=1 时,后面的紧急指针字段才有效 ACK:表示前面的确认号字段是否有效:ACK=1 时表示有效;只有当 ACK=1 时,前面的确认号字段

    2024年02月03日
    浏览(56)
  • 【网络编程·数据链路层】MAC帧/以太网协议/ARP协议/RARP协议

     需要云服务器等云产品来学习Linux的同学可以移步/--腾讯云--/--阿里云--/--华为云--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。 目录 一、MAC帧 1、IP地址和MAC地址的区别 2、MAC帧协议 3、MTU对IP协议的影响 4、MTU对UDP协议的影响 5、MTU对TCP协议的影响 二、

    2024年02月07日
    浏览(52)
  • FPGA实现千兆/百兆自适应以太网UDP传输

    笔者最近在项目中需要使用到ZYNQ中PL端做以太网UDP传输并且需要支持100M/1000M自适应切换。使用的PHY型号为RTL8211。以下分享的主要为利用已有的1000M协议栈修改为100M并且实现二者自适应切换,IP核主要实现以下功能 1、实现100M/1000M自适应 2、回环测试 PS:完整的IP核文件下载地

    2024年01月21日
    浏览(56)
  • ZYNQ AXI_DMA_UDP以太网传输(二)问题记录

    上一篇文章只是简单的记录一下调试成功的代码 但调试成功这个过程很痛苦,踩了很多坑,特此记录,留眼以后查看 参考博客 xilinx dma调试笔记 ZYNQ AXI DMA调试细节 在调试过程中出现这类问题基本上都是这一句代码出了问题: 再往里面跳可以看见这样一个函数,在正点原子提

    2024年03月14日
    浏览(66)
  • FPGA以太网入门(二)——ARP测试实验(基于紫光同创,含原语介绍)

    此篇为专栏《紫光同创FPGA开发笔记》的 第六篇 ,同时也是 FPGA 以太网入门 的 第二篇 ,记录我的学习 FPGA 的一些开发过程和心得感悟,刚接触 FPGA 的朋友们可以先去此博客 《FPGA零基础入门学习路线》来做最基础的扫盲。 本篇内容基于笔者实际开发过程和正点原子资料撰写

    2024年02月20日
    浏览(58)
  • 车载以太网 - 传输层 - TCP/IP

    一、传输层基础介绍 传输层主要包括两种协议 传输层端口号 二、UDP通信  UDP协议介绍 UDP 通信特点: UDP Segment结构 UDP通信过程 三、TCP通信 TCP通信特点: TCP Segment结构 传输层的寻址方式: 端口号         包括传输层的寻址方式,TCP/UDP 传输层协议工作流程,及TCP/UDP Packe

    2024年02月09日
    浏览(66)
  • 米联客udp_stack以太网协议栈使用教程

    实验室有一块米联客出的Kintex-7的板子,被我用来做毕业设计,其中使用到了千兆以太网的外设,于是打算使用米联客自己教程中所使用的协议栈来开发千兆以太网通信,接着就接触到了米联客的教程udp_stack.dcp。 //如果帮到你,一定要点赞收藏哦!// 博主在很多设计部分参考

    2024年02月16日
    浏览(122)
  • 网络原理IP协议/以太网

     大 家 快 来 学 习 啦 ~ ~ ~ 目录 1.IP协议 1.1地址管理 1.1.1普通地址 1.1.2特殊地址 1.1.3NAT机制 1.2路由选择 1.以太网协议 2.DNS协议 一、网络层 ①IP协议的报头格式以及各部分说明: ②对以上其它重要部分再次进行说明: 1. 16位总长度: 16位,64k,也就是说单个IP数据报最大程度不

    2023年04月08日
    浏览(89)
  • 计算机网络【IP协议与以太网】

    ● 4位版本号(version):指定IP协议的版本,对于IPv4来说,就是4 ●4位头部长度(header length):IP头部的长度是多少个32bit,也就是 length * 4 的字节数。4bit表示最大的数字是15,因此IP头部最大长度是60字节 ●8位服务类型(Type Of Service):3位优先权字段(已经弃用),4位TO

    2024年02月02日
    浏览(59)
  • 【JavaEE】计网之IP协议+以太网+DNS

    博主简介:想进大厂的打工人 博主主页: @xyk: 所属专栏: JavaEE初阶 网络层重点协议——IP协议 ,在复杂的网络环境中确定一个合适的路径~ 本篇文章我们来讲解什么是 IP协议及以太网,在IP协议中,有 地址管理 和 路由选择 两个方式,IP协议是位于 OSI模型 中第三层(网络层

    2024年02月04日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包