以太网——现实里的局域网王者
由于局域网与数据链路层联系十分紧密,要实现局域网的功能,数据链路层的是最重要的技术,所以我们在数据链路层的部分讲局域网里最重要的和数据链路层相关的技术——以太网
前面呢我们掌握了广播信道的通信方法,而局域网里多使用随机接入的方式来达到共享通信媒体的目的,而这种随机接入的方式,最原始的就是总线型(就是以太网的开山代表)
也就是说为了达到广播式传输的局域网由于范围小,于是采用了动态媒体介入控制中随机接入的方法,而这种方法的最初代表就是总线型接法,而这种接法就是“以太网”(出现了!)
以太网可以说由物理层和数据链路层组成,随着互联网的发展,以太网的优势越来越明显,逐渐成为代替局域网的代名词,但其实局域网不只有以太网技术的使用
要说以太网,就不得不提到IEEE,IEEE 成立802委员会,专门为局域网制定了一系列标准,它们统称为IEEE 802标准
其中,最初的五个标准为
- 802.1: 概述、体系结构、网络互连网络管理及性能测量
- 802.2:逻辑链路控制LLC协议
- 802.3:基于CSMA/CD局域网的 MAC层和物理层
- 802.4:令牌总线
- 802.5:基于令牌环局域网的MAC层和物理层
后来又发展出一些
802.11 无线局域网
- 802.15 无线个人网(蓝牙)
3.9.1 经典以太网的物理层
10-BaseT 用UTP和 Hubs(集线器)
其实这玩意也就是把拓扑结构变了变,把总线变成了星型,但内部机制还是没有变
他这样也有一些优点:
- 增加删除节点容易
- 易检错 电缆
- 距离100m
3.9.2 以太网的数据链路层
其实以太网由逻辑链路控制LLC子层和媒体接入控制MAC子层组成,但为什么我们在这里只谈MAC层呢?
首先我们先来了解一下这两层是干啥的
LLC层负责识别网络层协议,然后对它们进行封装。LLC报头告诉数据链路层一旦帧被接收到时,应当对数据包做何处理。
MAC层解决当局域网中共用信道的使用产生竞争时,如何分配信道的使用权问题。
随着互联网的发展,LLC没了,为什么呢,我们从下面的帧格式来分析
3.9.2.1 功能
- 数据帧的封装和解封装;
- 实现和维护MAC协议;
- 比特差错检测
- 寻址
3.9.2.2 媒体访问控制方法
1-坚持CSMA/CD
3.9.2.3 帧格式
Preamble:先导域标记帧的开始. 可以提供时钟同步
Dest、Source:目的地址和源地址 是 48 bit IEEE MAC addresses. 平面地址空间 固化在网络接口
- MAC地址:网卡上固化在ROM中的地址。也称为网卡的地址或物理地址。路由器由于同时连接到多个网络上, 因此它有多块网卡和多个硬件地址
- 如上图,MAC地址 = Manufacture ID + NIC ID
- IEEE的注册管理委员会RAC是局域网全球地址的法定管理机构,负责分配地址字段的前三个字节。称为OUI(机构唯一标识符)
- I/G(individual / group):
- 0:普通地址 1:组地址(group)
- U/L(universal / local):
- 0:全局地址 1:局部地址
- 帧的类型包括
- 单播帧:一对一
- 多播帧:一对多(称为多播或组播)
- 广播帧:一对全体(全1地址)
- MAC地址表示
- 16进制表示:每字节用2位16进制表示
- 2进制表示
- 高位在前。如:802.5和802.6
- 低位在前。如:802.3和802.4
Type:标志上一层使用的是什么协议, 以便把收到的 MAC 帧的数据上交给上一层的这个协议,由于MAC层的这个type字段的发展,我们可以根据这个字段来实现LLC的功能,所以
- 0800:IP
- 0806: ARP
- 0863: PPPOED
- 0864: PPP
- 802.3 标准中表示帧的长度
- If number<1500,then the field is interpreted as length field . If number>1500, then the field is interpreted as type field
Data:封装的数据,如分组
Pad:当data部分小于46字节时,加入填充,使帧长不小于64字节
为什么是64呢?
我们一起来算一下
之前我们知道,芽哟收到正确的帧必须大于 的时间,那么这个时间到底是多长呢?
CRC:为了检错
3.9.2.4 数据接收
网卡检查收到帧的MAC地址: 是发往本站的帧 收下 不是的话 丢弃
3.9.3 以太网性能
一个帧从开始发送,经碰撞重传,直到发送成功且信道转为空闲(即再经过时间 使得信道上无信号在传播)时为止,共需平均时间为
以太网信道利用率
数学计算方法如下:
令 A 为某个站一次发送成功(不重传)的概率,则
显然,某个站发送失败的概率为1-A
争用期的平均个数等于帧重发的次数
以太网的信道利用率(它又称为归一化吞吐量)为:
其中 参数 a 是总线的单程传播时延与帧的发送时延之比
由这个式子可以看出,要提高以太网的信道利用率,就必须减小 与 T0 之比
- a→0 表示一发生碰撞就立即可以检测出来,并立即停止发送,因而信道利用率很高。
- a 越大,表明争用期所占的比例增大,每发生一次碰撞就浪费许多信道资源,使得信道利用率明显降低
- a > 1 时的信道利用情况(a = 4)
- a = 0.01 时的信道利用情况
在理想化的情况下,以太网上的各站发送数据都不会产生碰撞,即总线一旦空闲就有某一个站立即发送数据,发送一帧占用线路的时间是 T0 + ,而帧本身的发送时间是 T0 ,于是我们可计算出理想情况下的极限信道利用率:
但其实理想情况并不存在,传输一帧的平均时间为S sec ,一个站传输帧的概率是A ,其中,信道利用率为:
将之前的公式进行转换,考虑:
- 帧长F
- 带宽B
- 线长L
- 线上传播速度c
- 复杂的其他因素忽略
信道利用率=
3.9.4 高速以太网
我们为什么要发展以太网?他有啥好的?
- 简单,易维护
- 添加站点容易
- 在数据链路层不需要配置
- 基于广播
- 易管理
- 一些局域网协议 (e.g. ARP) 基于广播
- 平滑升级
3.9.4.1 快速以太网
随着网络的发展和各项网络技术的普及,标准以太网技术已难以满足人们对网络数据流量和速率的需求。1993年10月以前,人们只能选择价格昂贵、基于100Mbs光缆的FDD技术组建高标准网络,1993年10月, Grand Junction公司推出了世界上第一台快速以太网集线器FastSwitch10/100和百兆网络接口卡 Fast NIC 100,快速以太网技术正式得到应用。1995年9月,IEEE 802委员会正式批准了Fast Ethernet标准IEEE 802.3u。
Fast Ethernet的传输速率比普通Ethernet快10倍,数据传输速率达到了100Mb/s; 每个比特的发送时间由100ns降低到了10ns
虽然变快了,但是帧格式 媒体访问控制方法 拓扑结构 工作方式 不变
那变快之后有什么不同吗?
- 为了保持最小帧长,减小电缆长度,即时槽减小10倍 ,帧间隔也从原来的 9.6
改为减小为0.96
- 可在全双工方式下工作而无冲突发生。因此,全双工方式下不使用 CSMA/CD 协议。
- 全双工还是遵循CSMA/CD的,只是它发生冲突的概率已经低 到百分之零了。书上网络上,有以太网的地方就少不了CSMA/CD。就像是以太网的老婆一样形影不离。但是以太网的老婆以前上不得厅堂做饭还经常失手,以 太网要饿着肚子等老婆重新做。为了让老公不丢面子不饿肚子,现在她整容了还练就了一身精湛的厨艺。但是她本质还叫以太网,只是现在成为了以太网得力的背后 助手。上的厅堂下的厨房了。
- 在全双工模式下的以太网是不需要使用CSMA/CD冲突检测机制的。我们知道,全双工工作模式下可以完成同时接收和发送数据。我们想想,网卡可能会在同 一时刻发送两个数据包吗?这是不可能的。绝对不可能会出现在同一时刻网卡接收到两个或两个以上同时需要发送数据的请求,就连CPU也不可能同时做到在同一 时刻处理两个或两个以上指令呀。这个时候,如果我们假设网卡启用CSMA/CD机制来检测冲突,请问他检测哪一条冲突通道呢?我们可要知道,网卡在接收到 需要发送的数据包后,就像排队一样一个一个往外发送,怎么可能会冲突呢?这个时候有人可能要问了,那接收呢?它可能会和接收的冲突呀?其实这么想就错了。全双工工作模式下,我们将使用双绞线中的2对线进行工作。一对用于发送, 一对用于接收。那么既然发送和接收是分开的2条链路,就不存在冲突的问题了。就像在高速公路上,有一个车道是由东往西行驶车道,一个车道是由西往东行驶车 道。那么,你说两车对开,各行驶于各自的车道,有可能会冲撞吗?所以,全双工工作模式下是不需要使用CSMA/CD冲突检测机制的。
- 半双工模式下 虽然可以实现在同一链路上进行发送和接收,但不是在同一时间。这就必须使用CSMA/CD冲突检测机制来避免冲突的发生。
- 不使用曼彻斯特编码
但是数据链路层的保持必然对物理层产生新的标准:
① 100 Base-1X:使用两对5类屏蔽或非屏蔽双绞线,一对用于发送数据,一对用于传输数据;使用RJ-45或DB9接口,节点与集线器的最大距离为100m,支持全双工。
② 100 Base-T4:使用4对3类、4类或5类双绞线,3对用于发送数据,1对用于检测冲突信号;使用R-45连接器,最大网段长度为100m,不支持全双工。
③ 100Base-FX:使用一对单模或多模光纤,一路用于发送数据,一路用于接收数据;最大网段长度为200m(使用单模光纤时可达2000m),支持全双工。此种网络主要用于搭建主干网,以提升主干网络传输速率。
尽管有不同,但是百兆以太网和10M还是自适应的
- 自动协商 HUB加电后,与网卡协商它们之间的一个共同的工作模式。
- 自适应 HUB根据不同网卡的响应信息,经过自动协商后,双方采用一个共同的工作模式。
3.9.4.2 千兆以太网
千兆以太网(GigabitEthernet)也称为吉比特以太网。1995年11月,IEEE 802.3工作组委任一个高速研究组,以研究将快速以太网速率增至1000Mbls的可行性和方法。1996年6月,IEEE标准委员会批准了千兆以太网方案授权申请,随后IEE 802.3工作组成立了EEE 802.3z工作委员会,该委员会建立了千兆以太网标准
- 数据率:1000Mbps
- 格式:802.3帧格式不变
- 媒体访问控制方法:CSMA/CD协议 全双工方式,不用
- CSMA/CD 支持10M,100M的平滑过渡
他的物理层是什么样子的呢?
(1)1000 Base-SX:使用芯径为50m及625m、工作波长为850m的多模光纤,采用8B/10B编码方式,传输距离分别为260m和525m。此标准主要应用于建筑物中同一层的短距离主于网。
(2)1000 Base-LX:使用芯径为50pm及625m、工作波长为850nm和芯径为5m、工作波长为1300nm的多模、单模光纤,传输距离分别为525m、550m和3000m。此标准主要应用于校园主干网。
(3)1000 Base-CX:使用1500屏蔽双绞线,采用8B/10B编码方式,传输速率为1.25Gbis,传输距离为25m。此标准主要用于集群设备的连接,如一个交换机机房内的设备互联。
(4)1000 Base-T:使用4对5类非屏蔽双绞线,采用PAM5编码方式,传输距离为100m。
此标准主要用于同一层建筑的通信,从而可利用标准以太网或快速以太网已铺设的非屏蔽双绞线电缆。
这里我们看到一个问题,千兆以太网保持了802.3的帧格式不变,为什么电缆的作用距离没有减小?
因为采用了载荷延伸和分组突法
- carrier extension(载荷延伸) 在短 MAC 帧后面加上载波延伸 ,使MAC 帧的发送长度增大到 512 字节,但这对有效载荷并无影响。
- frame bursting(分组突发) 当很多短帧要发送时,第一个短帧采用载波延伸的方法进行填充,随后的一些短帧则可一个接一个地发送。
- 全双工时不采用以上两种方法
3.9.4.3 万兆以太网
万兆以太网(10 Gigabit Ethernet,10GE)也称为10吉比特以太网,是继千兆以太网之后产生的高速以太网。在千兆以太网的IEEE 802.3Z规范通过后不久,IEEEE成立了高速研究组(High Speed Study Group,HssG),该研究组主要致力于10GE的研究。
10GE并非简单地将千兆以太网的速率提升了10倍,2002年6月,IEEE 802.3ae委员会制定了10GE的正式标准
- 10 吉比特以太网与 10 Mb/s,100 Mb/s 和 1 Gb/s 以太网的帧格式完全相同。
- 10 吉比特以太网还保留了 802.3 标准规定的以太网最小和最大帧长,便于升级。
- 10 吉比特以太网不再使用铜线而只使用光纤作为传输媒体。
- 10 吉比特以太网只工作在全双工方式,因此没有争用问题,也不使用 CSMA/CD 协议
定义两种物理层规范,即局域网PHY和广域网PHY
- 局域网物理层的数据率是 10 Gb/s。 局域网的网络范围最大达到40km
- 广域网物理层 WAN PHY 具有另一种数据率, 9.95328 Gb/s 这是为了和 “Gb/s”的 SONET/SDH(即OC-192/STM-64)相连接 当物理介质采用单模光纤时,传输距离可达300km;采用多模光纤时,可达40km.
3.9.4.4 宽带接入
以太网已成功地把速率提高到 1 ~ 400 Gb/s ,所覆盖的地理范围也扩展到了城域网和广域网,因此现在人们正在尝试使用以太网进行宽带接入。
以太网接入的重要特点是它可提供双向的宽带通信,并且可根据用户对带宽的需求灵活地进行带宽升级。
采用以太网接入可实现端到端的以太网传输,中间不需要再进行帧格式的转换。这就提高了数据的传输效率和降低了传输的成本。
上面的发展演进可以证明以太网:
- 可扩展的(从 10 Mb/s 到 10 Gb/s)
- 灵活的(多种传输媒体、全/半双工、共享/交换)
- 易于安装 稳健性好
3.9.5 局域网的扩展
3.9.5.1 转发器——物理层的扩展
3.9.5.2 集线器——物理层的扩展
- 优点
- 扩大了局域网覆盖的地理范围;
- 方便、灵活、造价低廉;
- 缺点
- 组成了更大的碰撞域,总的吞吐量并未提高;
- 如果不同的碰撞域使用不同的数据率,那么就不能用集线器将它们互连起来。
3.9.5.3 网桥——数据链路层的扩展
根据 MAC 帧的目的地址对收到的帧进行转发。 当网桥收到一个帧时,并不是向所有的端口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个端口
特点
- 扩大物理范围;
- 隔离冲突域;
- 互连不同类型的网络;
- 增加了延时:具有不同 MAC 子层的网段桥接在一起时时延更大
与集线器相比
网桥在转发帧之前必须执行 CSMA/CD 算法 在这一点上网桥的接口很像一个网卡,但网桥却没有网卡
由于网桥没有网卡,因此网桥并不改变它转发的帧的源地址