1985年,为了建立一些标准使得来自不同的生产厂商制造的设备之间能够互相通信,IEEE计算机协会启动了一些项目,成为802项目。802项目并不想取代osi模型或互联网模型中的任何一部分,相反,它是用来指明主要局域网协议中物理层和数据链路层功能的一种途径。
802标准与传统的osi标准模型之间的关系如下:IEEE将数据链路层进一步划分为两个子层:逻辑链路控制(LLC)和媒体介入控制(MAC)。
1、帧格式。
帧包含了7个字段,前同步码,SFD,DA,SA,数据单元的长度类型,上层数据及CRC。
以太网不提供任何机制来确认收到的帧,因此以太网是一种被称为不可靠的媒体。mac帧的格式如下:
前同步码 | SFD | 目的地址DA | 源地址 SA | 长度或类型 | 数据和填充 | CRC |
7字节 | 1字节 | 6字节 | 6字节 | 2字节 | 4字节 |
物理层首部 SFD:帧首定界符,标志(10101011)
前同步码:802.3帧的第一个字段包含的是7个字节(56比特)交替出现的0和1,作用就是提醒接收系统有帧到来,并且使他的输入定时同步。此样式仅仅是为了提供一个通知及定时的脉冲。这种56比特的样式允许接收站错过帧最前面的几个比特。前同步码实际上是在物理层添加上去的,他并不是(正式的)帧的一部分。
SFD(帧首定界符):第二个字段(1字节:10101011)作为帧开始的信号。SFD提醒接收站这是最后一次进行同步的机会。最后两个比特是11,就是提醒接收方接下来的字段就是目的地址,SFD也是物理层添加的。
目的地址DA:有6个字节,包含的是目的站或者将要接收该分组的站的物理地址。
源地址SA:有6个字节,包含的是这个分组的发送设备的物理地址。
长度/类型:用于指明在数据字段中所包含的字节数目,这两个使用方式目前都很常见。
数据:数据字段携带的是上层协议封装的数据。他的最小长度是46字节,最大长度是1500字节。
CRC:最后一个字段包含的是差错监测信息。
帧长度:以太网对帧的最小最大长度有严格的规定,如下图所示:
目的地址 | 源地址 | 长度类型 | 数据和填充 | CRC |
6字节 | 6字节 | 2字节 | 4字节 | |
最小帧长度51 | 2比特或者64 | 字节 最大帧长 | 度12144比特 | 或1518字节 |
限制帧的最小长度是为了使CSMA/CD能够正确操作而要求的,一个以太网的帧最小需要512比特,或者64字节的长度,这个长度终有一部分是手部和尾部的长度,如果首尾部算作18字节,(6字节源地址,目的地址,2个字节的长度类型,和4个字节的CRC)那么来自上层的数据的最小长度是64-18=46个字节,那么就需要用填充来弥补。标准定义一个帧的最大长度(不算前同步码)是1518个字节。如减去首部尾部的18个字节,最大有效载荷是1500各字节。(最小长度64字节,最大长度1518字节)
2、编址:以太网中的每一个站(如pc工作站或者打印机)都与自己的网络接口卡(NIC)
NIC通常安装在站的内部,并为该站提供一个6字节的物理地址。以太网的物理地址为6个字节
(48比特)长,通常写成16进制记法,并且用冒号将字节合字节分隔开。这个地址通常也被称为数据链路层地址,物理地址,MAC地址。
d1d2:d3d4:d5d6:d7d8:d9d10:d11d12 |
6字节=12个16进制数字=48比特
单播,多播和广播地址:源地址始终是单播地址,因为任何帧只能来自于一个站。而目的地址则有可能可能是单播,多播,或者广播地址。如果目的地址的第一个字节的最低位是0那么这个地址就是单播地址,反之则是多播地址。
●(0为单播地址1为多播地址) |
字节1
地址字段中的第一个字节的最低位指明了该地址的类型。如果该比特是0就是单播地址,反之则为多播地址。
单播地址仅制定了一个接受者,是一对一的关系,多播地址指定的是一组地址,一对多的关系。
广播地址是多播地址的一种特殊模式,其中所有位都是1。
例:判断目的地址的类型:a、4a:30:10:21:10:1a (a用2进制表示1010偶数)单播
b、47:20:1b:2e:08:ee (7用二进制表示0111奇数)多播
c、ff:ff:ff:ff:ff:ff (所有数字都是f是广播地址)
解:要找出一个地址的类型,我们需要查看的是,左手第二个16进制数字。如果他是偶数那么他就是单播地址,如果他是奇数那么就是多播地址,如果所有数字搜视f那么就是广播地址。
发送方式:这些地址发送到线路上的方式与他们写成16进制时的表示方式是不同的,在发送时从左到右逐字逐节的发送。但是对每一个字节来说,最先发送的是最低位,最后发送的是最高位。也就是说指定地址是单播地址还是多播地址的那一位会最先到达接收方。
例:描绘出地址47:20:1b:2e:08:ee是如何发送到线路上去的。
解:该地址是从左到右,逐字注解的发送,面对每个字节来说又是从右到左,逐位发送,如下图所示:
<-11100010 00000100 11011000 01110100 00010000 01110111 |
0 | 0000 | 9 | 1001 |
1 | 0001 | A | 1010 |
2 | 0010 | B | 1011 |
3 | 0011 | C | 1100 |
4 | 0100 | D | 1101 |
5 | 0101 | E | 1110 |
6 | 0110 | F | 1111 |
7 | 0111 | ||
8 | 1000 |
47:20:1b:2e:08:ee
01000111 00100000 00011011 00101110 00001000 11101110
反过来就是:
<-11100010 00000100 11011000 01110100 00010000 01110111
这个就是该地址发送到线路上的形式
3、以太网发展历程:是由施乐公司与1976年创建的。自那以后发展了如下图所示的四代,
以太网的发展 | |||
标准以太网 | 快速以太网 | 吉比特以太网 | 10G以太网 |
4、标准以太网:802.3
数据率为10Mpbs的早期以太网已经成为历史,但是我们还是讨论一下,为理解以太网其他的几个版本铺路。
接入方法:CSMA/CD (带碰撞检测的载波侦听多点接入)在传统的以太网中,各站在物理上通过总线拓扑,或星型拓扑连接在一起,但是在逻辑上的拓扑结构一定是总线的。这句话就是:所有站共享媒体(信道),并且一次只能由一个站使用这个媒体。这也表示,由某一个站发送的帧将被所有站接收(广播方式)。只有真正的目的站才收下这个帧,而其他站都会丢弃。在这种情况下,我们怎么才能保证两个站不会在同一时间使用媒体,如果两个站同时使用媒体,它们发送的帧就会碰撞。为了使发生碰撞的机会减至最小,并以次来提高性能,因而开发了CSMA/CD 方法。如果一个站在试图占用媒体之前先侦听一下,发生碰撞的机会就会减小。载波侦听多点接入,要求每个站在发送之前先要对媒体进行侦听(或者检查媒体的状态)。CSMA/CD 先听后讲,能够降低发生碰撞的可能性,但不能消除碰撞1(当某站发送了一个帧的时候,该帧的第一个比特到达所有站是需要时间的)。
最小帧长:要使CSMA/CD正常工作,我们必须限制帧的长度。如果某次传输发生了故障,那么正在发送数据的站必须在发送该帧的最后一比特之前放弃本次传输,应为一旦整个帧都发送出去,那么该站将不会保留帧的副本,同时也不会检测是否发生了碰撞。因此只见帧的传输时间T1必须至少是做大传播时间T2的2倍。
例:在标准以太网中,如果最大传播时间是25.6us,那么帧的最小长度是多少?
解:帧的传送时间t1=2*t1=25.6*2=51.2us。也就是说,以最坏的情况下,一个站需要经过长达51.2us的传输时间才能检测到碰撞,因此这个帧的最小长度是:10Mpbs*51.2=512比特(64字节),这个实际上就是帧的最小长度。
处理过程:一个站的传送和接收是连续的且并行的(使用两个不同的端口)。我们用一个循环来表示传输是连续的过程。
实现:标准以太网定义了多种实现方式,但是其中只有四种方式流行过一段时间。对于10Base-x这个命名来说,第一个数字指定了数据率(10Mbps),术语base代表基带(数字)信号,而x则指明了,此缆线以100米为单位的最大约等于长度(5代表500米,2表示185米)或者表示了此缆线的类型。T表示无屏蔽双绞线(UTP),而F表示光缆。
特性 | 10Base5 | 10Base2 | 10Base-T | 10Base-F |
媒体 | 粗同轴电缆 | 细同轴电缆 | 2对线UTP | 2芯光缆 |
最大长度 | 500m | 185m | 100m | 2000m |
5、快速以太网:802.3u(100Mpbs)
●标准与以太网兼容
●48比特(6字节)的地址不变
●保持相同的帧格式不变
●保持相同的最小帧,最大帧不变
MAC子层:在以太网从10Mpbs发展到100Mpbs的过程中,最重要考虑的是原封不动的保留MAC子层。不过他还是放弃了总线拓扑结构仅保留了星型拓扑结构。对于星星拓扑,可以有半双工,全双工,两种选择。半双工方式下,所有站都通过一个集线器连接。全双工模式下,连接是通过交换机实现的,且交换机的每个接口都有缓存。
对于半双工的方式来说,接入方法保持不变(CSMA/CD),单全双工快速以太网就不再需要(CSMA/CD)。不过,为了向下兼容标准以太网,在实现上任然保留了(CSMA/CD)。
自动协商:快速以太网新增了一个自动协商特性。它允许一个站或者一个集线器具有更加广泛的功能。自动协商允许,两个设备对操作模式或数据率进行协商。
⑴允许不兼容的设备互相连接。
⑵允许一个设备具有多种能力。
⑶允许一个站检查集线器的能力。
实现:快速以太网在物理层的实现可划分为二线和四线两大类。二线可以使用屏蔽双绞线(STP)(100Base-TX)或光缆(100Base-FX)。四线的实现的设计只能使用非屏蔽双绞线(UTP)(100Base-T4)。
注意:双绞线可分为非屏蔽双绞线(UTP:Unshilded Twisted Pair)和屏蔽双绞线(STP:Shielded Twisted Pair)两种类型。在物理结构上,屏蔽双绞线比非屏蔽双绞线多了全屏蔽层和/或线对屏蔽层,通过屏蔽的方式,减少了衰减和噪音,从而提供了更加洁净的电子信号,和更长的电缆长度,但是屏蔽双绞线价格更加昂贵,重量更重并且不易安装。
特性 | 100Base-TX | 100Base-FX | 100Base-T4 |
媒体 | STP | 光缆 | UTP |
线数 | 2 | 2 | 4 |
最大长度 | 100m | 100m | 100m |
6、吉比特以太网:802.3z(1000Mpbs)
●标准与标准以太网和快速以太网兼容
●使用相同的48为地址
●帧格式相同
●帧最小大,不变
●支持快速以太网中的自动协商功能
MAC子层:
在以太网发展过程中一个最主要的考虑就是要原封不动的保留mac子层,但是为了达到1Gpbs的数据率,这个要求不太可能实现。吉比特网有两种截然不同的接入方式:半双工和全双工。几乎所有吉比特以太网都是使用全双工方式实现的,在全双工模式下,有一个中央交换机连接到所有计算机和其他交换机。这种模式下的每台交换机上的每个端口都具有缓存,数据会保存在这里直至被发送出去。在这种模式不存在碰撞,也就是说CSMA/CD没有用武之地。没有碰撞还意味着电缆的最大长度是由电缆中的信号衰减来决定的,而不是有碰撞检测过程来决定的。(在全双工模式下的吉比特网中不存在碰撞,电缆的最大长度是由电缆中的网络信号衰减来决定的)半双工模式:这种情况下,可以使用集线器来替代交换机,它的作用就好像是普通电缆一样,还有可能发生碰撞,半双工模式使用CSMA/CD。不过,正如我们前面所说,这种方式下网络的最大长度完全取决于真的最小长度。已经定义的解决方案有三纵,传统的,载波扩充,帧突发。
传统的:帧最小512比特,64字节。但是由于在吉比特以太网中一个比特的长度只有10Mpbs以太网中的一个比特长度的1/100,因此这种网络的最大长度就是25m。
载波扩充:为了使网络更加的长,我们也要增加最小帧长的值。载波扩充定义帧的最小长度512字节(4096比特)。也就是说最小帧长是原来的8倍。这种方法迫使各个站为所有小于4096比特的的帧附加扩充位(填充)。使用这种方法,可以使网络长度延长8倍,达到200米。这就使得集线器到达各站的距离可以达到100米。
帧突发:欺骗其它站,使他们相信发送过来的是一个非常大的帧。
7、10G以太网:
IEEE建立了10G以太网,并成为标准802.3ae。(10Gpbs/s)
●标准与标准以太网和快速以太网,和吉比特网兼容
●使用相同的48为地址
●帧格式相同
●帧最小大,不变
●允许现有的局域网能够接入到城域网(man)或者广域网。
实现:10G以太网,只能以全双工的方式操作,也就是说不再需要竞争。