网络协议之以太网协议解析
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标准,细分如下:
网络协议之以太网协议解析相关推荐
- ppp协议与以太网协议的异同
声明:本文所说的以太网协议均为mac协议 下面我将从数据链路层的三个要素着手,来讨论ppp协议与以太网协议的异同. 0x1封装成帧 大家都知道当ip数据报传到数据链路层时需要封装成帧,ppp协议采用的 ...
- 网络 链路层 | 以太网协议与ARP协议
数据链路层是计算机网络的底层,主要负责相邻设备之间的数据帧传输 链路层就是负责每一个相邻结点之间的数据传输,但是相邻设备之间也需要描述识别,主要是因为每一个设备都有可能有多个相邻的设备.这种识别在链路 ...
- 计算机网络 | 数据链路层 :ARP协议、以太网协议、MTU
数据链路层 数据链路层与网络层的关联 以太网协议 什么是以太网 以太网帧格式 MAC地址 MAC地址与IP地址 MTU MTU对TCP的影响 MTU对UDP的影响 ARP协议 什么是ARP协议 ARP ...
- 猫(modem) 路由器 交换机 中继器 集线器 网桥 wifi协议和以太网协议 WAN(wide area network) LAN(local area network)
wifi协议 应该是定义了链路层和物理层协议-无线网卡 wifi在数据链路层中帧的协议 https://blog.csdn.net/l982817732/article/details/5227417 ...
- 【网络】数据链路层-以太网协议
文章目录 数据链路层的作用 以太网 以太网帧格式 MAC地址 MTU MTU对IP协议的影响 MTU对UDP协议的影响 MTU对于TCP协议的影响 以太网通信细节 以太网通信的问题 ARP协议 ARP ...
- 数据链路层-------以太网协议
这里写目录标题 数据链路层 点对点协议(PPP协议) 以太网协议 认识以太网 以太网帧格式 认识MAC地址 对比理解MAC地址和IP地址 认识MTU MTU对上层协议的影响 查看硬件地址和MTU AR ...
- 数据链路层——封装成帧、透明传输、差错检测、最大传输单元MTU、以太网协议
OSI模型中的数据链路层与物理层,在TCP/IP协议中同属于网络接口层. 数据链路层为物理连接之间提供了可靠的数据传输.数据链路层主要解决3个问题:封装成帧.透明传输.差错检测. 封装成帧 " ...
- 网络学习-4.以太网基础
1.基本概念 以太网( Ethernet )是现实世界中最普遍的一种计算机网络,是一种计算机局域网技术,同时也是一种协议.以太网协议定义了一系列软件和硬件标准,从而将不同的计算机设备连接在一起.以太网 ...
- 在网络上请求网页为什么会用到工业以太网协议_网络知识总结
一下笔记是我看互联网协议入门(一) - 阮一峰的网络日志 所记录的笔记. 如果有人要认真学,强烈建议看上面的链接,以此为基础,再去看别的书,以及视频,因为目前来看阮一峰写的东西是最最最通俗易懂的 并且 ...
最新文章
- jmu-python-重复元素判定_Python入门 —— 用pycharm写一个简单的小程序2
- Java数据类型和标识符
- Java12题:发奖金问题
- 1005 继续(3n+1)猜想 (25分)
- IE6-IE9使用JSON、table.innerHTML 问题
- 【洛谷 P3299】 [SDOI2013]保护出题人 (凸包,三分,斜率优化)
- vmware上用kali破解wifi
- MFI认证——什么是苹果MFI认证
- 哲理小故事--跳蚤人生
- 基于移动端的快递物流信息管理系统Uniapp
- Problem L 七段显示器显示整数
- 物联通信安全需求如何实现
- AutoJs学习-实现成语查询
- CTF中的PHP反序列化ALL IN ONE
- Kepware通过OPCUA链接WinCC(Kepware作为客户端)
- 第二章 Caché 变量大全 $ECODE 变量
- 数字音乐市场上两大巨头的版权之争
- Java项目:蓝天幼儿园管理系统(java+SpringBoot+thymeleaf+html+maven+mysql)
- 对jdk5.0中可变长参数的理解
- php风格goweb框架,go语言 web框架比较