热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据链路层帧格式

一以太网帧发展历程:1980DEC,Intel,Xerox制订了EthernetI的标准;1982DEC,Intel,Xerox又制订了Ehterne
一  以太网帧发展历程:
1980 DEC,Intel,Xerox制订了Ethernet I的标准;
1982 DEC,Intel,Xerox又制订了Ehternet II的标准;
1982 IEEE开始研究Ethernet的国际标准802.3;
1983 迫不及待的Novell基于IEEE的802.3的原始版开发了专用的Ethernet帧格式;
1985 IEEE推出IEEE 802.3规范;
后来为解决EthernetII与802.3帧格式的兼容问题推出折衷的Ethernet SNAP格式。
(其中早期的Ethernet I已经完全被其他帧格式取代了所以现在Ethernet只能见到后面几种Ethernet的帧格式现在大部分的网络设备都支持这几种Ethernet的帧格式如:cisco的路由器在设定Ethernet接口时可以指定不同的以太网的帧格式:arpa,sap,snap,novell-ether)
 
二各种格式的帧结构:
@@Ehernet II帧结构:
帧头:6个字节的目的MAC地址和6字节的源MAC地址。2字节的类型字段,表示封装在数据中的数据类型。
数据:46-1500字节的数据字段。
帧尾:4字节的帧效验序列。
数据链路层帧格式
@@Novell Ethernet Frame帧结构:
帧头:6字节目的MAC地址和6字节源MAC地址。2字节长度字段表示数据字段的长度。两个0xFFFF字段表示这个帧是Novell Ethernet 的帧,占两个字节。
数据字段: 44-1498字节。
……
数据链路层帧格式

IEEE 802.3帧结构:
DSAP(destation service access point)
SSAP(source service  access point )
SAP 表示帧的上层协议。
 
数据链路层帧格式
Ethennet SNAP Frame:

数据链路层帧格式
 
总结:
Ethernet II和IEEE802.3是局域网里最常见的帧:
Ethernet II可以装载的数据长度是46---1500;  
IEEE802.3 SAP可以装装的数据长度是43---1497; 
IEEE 802.3 SNAP可以装载的数据长度是38---1492.
Ethernet II不提供MAC层的数据填充功能;
IEEE802.3 SAP和SNAP都提供数据填充功能.
因些,我们可以得出这样的结论:
Ethernet II比IEEE802.3 SAP和SNAP更适合于传输大量的数据,但Ethernet II缺乏对数据链路层的控制,不利于传输需要严格传输控制的数据.
实际中,我们会发现,大多数应用程序的以太网数据包都是Ethernet II帧的(如HTTP/Telnet/FTP/SMTP/POP3等应用),而交换机之间的BPDU是采用IEEE802.3 SAP帧,VLAN Trunk协议802.1Q和Cisco CDP都是采用IEEE802.3 SNAP帧.
顺便提供一下各种Ethertype(以太网类型)和SAPs(服务访问点):
Ethertype 值          SAPs 值
Netware  8137         Netware 10,E0
XNS 0600,0807         XNS 80
IP 0800               IP 06
ARP 0806              NetBIOS F0
RARP 8035             BPDU 42
IP(Wines) 0BAD,80C4   SNA 04,05,08,0C
DRP 6003              X.25 7E
LAT 6004 ISO 20,34,EC,FE,14,54
LAVC 6007                SNAP AA
ARP(AppleTalk)           80F3 

推荐阅读
author-avatar
mobiledu2502890917
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有