盈彩体育注册(中国)有限公司 | 您所在的位置:网站首页 › 盈彩体育注册(中国)有限公司 › 数据传输过程及以太网帧结构 |
本文最后编辑于 前,其中的内容可能需要更新。 TCP/IP支持多种不同的数据链路层协议,这取决于网络所使用的硬件。基于不同硬件的网络使用不同形式的帧结构,以太网是当今应用最广泛的局域网技术。 [TOC] 以太网传输的数据帧有两种格式:Ethernet II帧结构、IEEE 802.3格式 两种协议的区别是: Ethernet II格式包含一个类型类型(Type)字段,标识以太帧处理完成之后将被发送到哪个上层协议及逆行处理IEEE 802.3个格式中,同样的位置是长度(Length)字段D.MACS.MACTypeDataFCSD.MacS.MACLengthLLCSNAPDataFCS如何区分两种协议: **目前以太网大多数数据帧使用的Ethernet II格式**以太网在数据链路层通过MAC地址来唯一识别网络设备,并且实现局域网上网络设备之间的通信。 MAC地址也叫物理地址、硬件地址,大多数网卡厂商把MAC地址烧入网卡的ROM中,网络设备的MAC地址是全球唯一的 局域网帧的发送方式单播:指从单一源端发送到单一的目的端。MAC地址中,第一字节第八个比特($b_0$)表示地址类型。对于主机MAC地址,这个比特固定位0广播:指帧从单一的源端发送到共享以太网上的所有主机。广播帧的目的MAC地址为16进制的FF:FF:FF:FF:FF:FF,所有收到该广播帧的主机都要接受并处理这个帧组播:组播转发可以理解为选择性的广播,组播MAC地址通过第一字节第八个比特($b_0$)区分,这个比特为1以太网帧标识封装成帧:指数据链路层给上层交付的协议数据单元添加帧头和帧尾使之成为帧 帧头和帧尾包含有重要的控制信息帧头和帧尾的作用之一就是以太网通过增加前同步码和帧开始定界符来标识一个帧的开始和结束 在传输媒体上实际传送的要比MAC帧还要多8个字节(由硬件生成)。这8个字节由两个字段构成,第一个字段是7个字节的前同步码(1和0交替码)。第二个字段是帧开始定界符,定义为10101011 以太网帧校验采用CRC校验 由于以太网规定了帧间间隔时间96比特的发送时间,因此MAC帧不需要帧结束定界符 透明传输:数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样. 面向字节的物理链路使用字节填充(字符填充)来实现透明传输面向比特的物理链路使用比特填充的方法实现透明传输在传输数据时,发送方数据链路层收到上层交付的协议数据单元,添加帧头和帧尾使之成为帧。但是如果数据中恰好包含这个特定数值,接收方将无法正确的接收数据。 面向字节:这个时候在发送帧之前,对帧的数据部分进行扫描。每出现一个帧定界符(flag)就在它前面添加一个转义字符(ESC), 面向比特:例如帧定界标志为01111110,在发送前对帧的数据部分进行扫描,每连续出现五个1就插入一个0,这样防止数据中出现帧定界标志 转义字符是一种特殊的控制字符,其长度一个字节,十进制值为27 为了提高帧的传输速率,应当使帧的数据部分长度尽可能的大些 考虑到差错控制多种因素,每一种数据链路层都规定了帧的数据部分长度上限,也就是最大传输单元MTU MAC地址,IP地址和ARP协议MAC地址是以太网的MAC子网所使用的地址,位于数据链路层 IP地址是TCP/IP体系结构的网络层所使用的地址 ARP协议属于TCP/IP体系结构的网络层。其作用是已知设备所分配的IP地址,使用ARP协议可以通过该IP地址获取到设备的MAC地址 MAC地址(物理地址、硬件地址·)一般被固化在网卡的电可擦可编程只读存储器EEPROM中 严格来说:MAC地址是对网络上各接口的唯一标识而不是网络上各设备的唯一标识 MAC地址包含两部分:前24比特是组织唯一标识符(OUI),由IEEE统一分配给设备制造商;后24位序列号是厂商分配给每个产品的唯一数值,由各个厂商自行分配 标准表示法:每4个比特写成一个16进制的字符,两个字符一组共六组,组之间用‘-’或‘:’连接,例如XX-XX-XX-XX-XX-XX MAC地址中,第一字节的第7个比特取0表示全球管理,取1表示本地管理 IEEE802.3:MAC地址中,一个字节是$b_7b_6b_5b_4b_3b_2b_1b_0$,比特发送顺序是$b_0 ightarrow b_7$。字节发送顺序是第一字节到第六字节 以太网V2的MAC帧结构(最长1518字节)6字节6字节2字节46~1500字节4字节目的地址源地址类型数据载荷FCSCRC收发双方约好一个生成多项式$G(x)$ 发送方基于待发送的数据和生成多项式计算出差错检测码(冗余码),将其添加到待传输数据的后面一起传输 接收方通过生成多项式来计算收到的数据是否产生误码 例如: 生成多项式各项系数构成的比特串为:10111 常用的生成多项式: CRC-16: $x^{16} + x^{15} + x^2 + 1$ CRC-CCITT: $x^{16} + x^{12} + x^{5} + 1$ CRC-32:$x^{32} + x^{26} + x^{23} + x^{22} + x^{16} + x^{12} + x^{11} + x^{10} + x^{8} + x^{7} + x^{5} + x^{4} + x^{2} + x + 1$ 计算差错检测码: 构造被除数,待发送信息后面添加生成多项式最高次数个0构造除数:生成多项式的比特串做”除法”,这里除法是将代被除数和除数进行异或检查余数:余数的位数与多项式最高次数相同,位数不同则补0例如:待发送信息为101001,生成多项式$G(x)=x^3+x^2+1$ 无法纠正错误,检错能力很好,计算复杂但易于用硬件实现,纠错码开销较大,计算机网络较少使用 |
CopyRight 2018-2019 盈彩体育注册(中国)有限公司 版权所有 豫ICP备16040606号-1 |