1、3.3 使用广播信道的数据链路层3.3.1 局域网的数据链路层 n局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。n局域网具有如下的一些主要优点:n具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。n便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。n提高了系统的可靠性、可用性和残存性。局域网的拓扑 匹配电阻集线器干线耦合器总线网星形网环形网媒体共享技术n静态划分信道n频分复用n时分复用n波分复用n码分复用 n动态媒体接入控制(多点接入)n随机接入n受控接入,如多点线路探询(polling),或轮询。以太网的两个
2、标准 nDIX Ethernet V2 是世界上第一个局域网产品(以太网)的规约。nIEEE 的 802.3 标准。nDIX Ethernet V2 标准与 IEEE 的 802.3 标准只有很小的差别,因此可以将 802.3 局域网简称为“以太网”。n严格说来,“以太网”应当是指符合 DIX Ethernet V2 标准的局域网 数据链路层的两个子层 n为了使数据链路层能更好地适应多种局域网标准,802 委员会就将局域网的数据链路层拆成两个子层:n逻辑链路控制 LLC(Logical Link Control)子层n媒体接入控制 MAC(Medium Access Control)子层。n与
3、接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对 LLC 子层来说都是透明的 局域网对 LLC 子层是透明的 局 域 网网络层物理层站点 1网络层物理层逻辑链路控制LLCLLC媒体接入控制MACMAC数据链路层站点 2以后一般不考虑 LLC 子层 n由于 TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。n很多厂商生产的适配器上就仅装有 MAC 协议而没有 LLC 协议。2.适配器的作
4、用 n网络接口板又称为通信适配器(adapter)或网络接口卡 NIC(Network Interface Card),或“网卡”。n适配器的重要功能:n进行串行/并行转换。n对数据进行缓存。n在计算机的操作系统安装设备驱动程序。n实现以太网协议。计算机通过适配器和局域网进行通信 硬件地址至局域网适配器(网卡)串行通信CPU 和存储器生成发送的数据处理收到的数据把帧发送到局域网从局域网接收帧计算机IP 地址并行通信n最初的以太网是将许多计算机都连接到一根总线上。当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。3.3.2 CSMA/CD 协议 B向 D发送数据 C D A E匹配电阻
5、(用来吸收总线上传播的信号)匹配电阻不接受不接受不接受接受B只有 D 接受B 发送的数据以太网的广播方式发送 n总线上的每一个工作的计算机都能检测到 B 发送的数据信号。n由于只有计算机 D 的地址与数据帧首部写入的地址一致,因此只有 D 才接收这个数据帧。n其他所有的计算机(A,C 和 E)都检测到不是发送给它们的数据帧,因此就丢弃这个数据帧而不能够收下来。n具有广播特性的总线上实现了一对一的通信。为了通信的简便以太网采取了两种重要的措施 n采用较为灵活的无连接的工作方式,即不必先建立连接就可以直接发送数据。n以太网对发送的数据帧不进行编号,也不要求对方发回确认。n这样做的理由是局域网信道的
6、质量很好,因信道质量产生差错的概率是很小的。以太网提供的服务 n以太网提供的服务是不可靠的交付,即尽最大努力的交付。n当目的站收到有差错的数据帧时就丢弃此帧,其他什么也不做。差错的纠正由高层来决定。n如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当作一个新的数据帧来发送。以太网发送的数据都使用曼彻斯特(Manchester)编码 曼彻斯特1111100000 比特流差分曼彻斯特载波监听多点接入/碰撞检测 CSMA/CD nCSMA/CD 表示 Carrier Sense Multiple Access with Collision Detection。n“多点接入
7、”表示许多计算机以多点接入的方式连接在一根总线上。n“载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。n总线上并没有什么“载波”。因此,“载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。碰撞检测n“碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。n当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。n当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。n所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”
8、。检测到碰撞后n在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的信息来。n每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。电磁波在总线上的有限传播速率的影响 n当某个站监听到总线是空闲时,也可能总线并非真正是空闲的。nA 向 B 发出的信息,要经过一定的时间后才能传送到 B。nB 若在 A 发送的信息到达 B 之前发送自己的帧(因为这时 B 的载波监听检测不到 A 所发送的信息),则必然要在某个时间和 A 发送的帧发生碰撞。n碰撞的结果是两个帧都变得无用。1 kmABt碰撞t=2 A 检测到发生碰撞
9、t=B 发送数据B 检测到发生碰撞 t=t=0单程端到端传播时延记为 传播时延对载波监听的影响 1 kmABt碰撞t=B 检测到信道空闲发送数据t=/2发生碰撞t=2 A 检测到发生碰撞 t=B 发送数据B 检测到发生碰撞 t=ABABAB t=0 A 检测到信道空闲发送数据ABt=0t=B 检测到发生碰撞停止发送STOPt=2 A 检测到发生碰撞STOPAB单程端到端传播时延记为 重要特性n使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。n每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。n这种发送的不确定性使整个以太网的平均通信量远小于以
10、太网的最高数据率。争用期n最先发送数据帧的站,在发送数据帧后至多经过时间 2(两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。n以太网的端到端往返时延 2 称为争用期,或碰撞窗口。n经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。二进制指数类型退避算法(truncated binary exponential type)n发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。n基本退避时间取为争用期 2。n从整数集合0,1,(2k 1)中随机地取出一个数,记为 r。重传所需的时延就是 r 倍的基本退避时间。n参数 k 按下面的公式计算:k=Min重
11、传次数,10n当 k 10 时,参数 k 等于重传次数。n当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。争用期的长度 n以太网取 51.2 s 为争用期的长度。n对于 10 Mb/s 以太网,在争用期内可发送512 bit,即 64 字节。n以太网在发送数据时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突。最短有效帧长 n如果发生冲突,就一定是在发送的前 64 字节之内。n由于一检测到冲突就立即中止发送,这时已经发送出去的数据一定小于 64 字节。n以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。强化碰撞 n当发送数据的站
12、一旦发现发生了碰撞时:n立即停止发送数据;n再继续发送若干比特的人为干扰信号(jamming signal),以便让所有用户都知道现在已经发生了碰撞。数据帧干扰信号 TJ人为干扰信号 ABTBt B 发送数据A 检测到冲突开始冲突信道占用时间A 发送数据B 也能够检测到冲突,并立即停止发送数据帧,接着就发送干扰信号。这里为了简单起见,只画出 A 发送干扰信号的情况。3.3.3 使用集线器的星形拓扑n传统以太网最初是使用粗同轴电缆,后来演进到使用比较便宜的细同轴电缆,最后发展为使用更便宜和更灵活的双绞线。n这种以太网采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做集线器(hub)使
13、用集线器的双绞线以太网 集线器两对双绞线站点RJ-45 插头星形网 10BASE-T n不用电缆而使用无屏蔽双绞线。每个站需要用两对双绞线,分别用于发送和接收。n集线器使用了大规模集成电路芯片,因此这样的硬件设备的可靠性已大大提高了。以太网在局域网中的统治地位n10BASE-T 的通信距离稍短,每个站到集线器的距离不超过 100 m。n这种 10 Mb/s 速率的无屏蔽双绞线星形网的出现,既降低了成本,又提高了可靠性。n10BASE-T 双绞线以太网的出现,是局域网发展史上的一个非常重要的里程碑,它为以太网在局域网中的统治地位奠定了牢固的基础。集线器的一些特点 n集线器是使用电子器件来模拟实际
14、电缆线的工作,因此整个系统仍然像一个传统的以太网那样运行。n使用集线器的以太网在逻辑上仍是一个总线网,各工作站使用的还是 CSMA/CD 协议,并共享逻辑上的总线。n集线器很像一个多接口的转发器,工作在物理层。具有三个接口的集线器 集线器网卡工作站网卡工作站网卡工作站双绞线3.3.4 以太网的信道利用率 n以太网的信道被占用的情况:n争用期长度为 2,即端到端传播时延的两倍。检测到碰撞后不发送干扰信号。n帧长为 L(bit),数据发送速率为 C(b/s),因而帧的发送时间为 L/C=T0(s)。以太网的信道利用率 n一个帧从开始发送,经可能发生的碰撞后,将再重传数次,到发送成功且信道转为空闲(
15、即再经过时间 使得信道上无信号在传播)时为止,是发送一帧所需的平均时间。发 送 成 功 争用期 争用期 争用期 2 2 2T0t占用期 发生碰撞 发送一帧所需的平均时间参数 a n要提高以太网的信道利用率,就必须减小 与 T0 之比。在以太网中定义了参数 a,它是以太网单程端到端时延 与帧的发送时间 T0 之比:0Ta0Ta(3-2)a0 表示一发生碰撞就立即可以检测出来,并立即停止发送,因而信道利用率很高。a 越大,表明争用期所占的比例增大,每发 生一次碰撞就浪费许多信道资源,使得信道 利用率明显降低。对以太网参数的要求n当数据率一定时,以太网的连线的长度受到限制,否则 的数值会太大。n以太
16、网的帧长不能太短,否则 T0 的值会太小,使 a 值太大。n在理想化的情况下,以太网上的各站发送数据都不会产生碰撞(这显然已经不是 CSMA/CD,而是需要使用一种特殊的调度方法),即总线一旦空闲就有某一个站立即发送数据。n发送一帧占用线路的时间是 T0+,而帧本身的发送时间是 T0。于是我们可计算出理想情况下的极限信道利用率 Smax为:信道利用率的最大值 Smax aTTS1100max(3-3)3.3.5 以太网的 MAC 层1.MAC 层的硬件地址 n在局域网中,硬件地址又称为物理地址,或 MAC 地址。n802 标准所说的“地址”严格地讲应当是每一个站的“名字”或标识符。n但鉴于大家
17、都早已习惯了将这种 48 位的“名字”称为“地址”,所以本书也采用这种习惯用法,尽管这种说法并不太严格。48 位的 MAC 地址nIEEE 的注册管理机构 RA 负责向厂家分配地址字段的前三个字节(即高位 24 位)。n地址字段中的后三个字节(即低位 24 位)由厂家自行指派,称为扩展标识符,必须保证生产出的适配器没有重复地址。n一个地址块可以生成224个不同的地址。这种 48 位地址称为 MAC-48,它的通用名称是EUI-48。n“MAC地址”实际上就是适配器地址或适配器标识符EUI-48。适配器检查 MAC 地址 n适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 M
18、AC 地址.n如果是发往本站的帧则收下,然后再进行其他的处理。n否则就将此帧丢弃,不再进行其他的处理。n“发往本站的帧”包括以下三种帧:n单播(unicast)帧(一对一)n广播(broadcast)帧(一对全体)n多播(multicast)帧(一对多)2.MAC 帧的格式 n常用的以太网MAC帧格式有两种标准:nDIX Ethernet V2 标准nIEEE 的 802.3 标准n最常用的 MAC 帧是以太网 V2 的格式。以太网 MAC 帧物理层MAC层10101010101010 10101010101010101011前同步码帧开始定界符7 字节1 字节8 字节插入IP层目的地址 源地
19、址类型数 据FCS6624字节46 1500IP 数据报以太网的 MAC 帧格式 MAC 帧物理层MAC 层IP 层目的地址源地址类型数 据FCS6624字节46 1500IP 数据报以太网 V2 的 MAC 帧格式目的地址字段 6 字节MAC 帧物理层MAC 层IP 层目的地址源地址类型数 据FCS6624字节46 1500IP 数据报以太网 V2 的 MAC 帧格式源地址字段 6 字节MAC 帧物理层MAC 层IP 层目的地址源地址类型数 据FCS6624字节46 1500IP 数据报以太网 V2 的 MAC 帧格式类型字段 2 字节类型字段用来标志上一层使用的是什么协议,以便把收到的 M
20、AC 帧的数据上交给上一层的这个协议。MAC 帧物理层MAC 层IP 层目的地址源地址类型数 据FCS6624字节46 1500IP 数据报以太网 V2 的 MAC 帧格式数据字段 46 1500 字节数据字段的正式名称是 MAC 客户数据字段最小长度 64 字节 18 字节的首部和尾部=数据字段的最小长度 MAC 帧物理层MAC 层IP 层目的地址源地址类型数 据FCS6624字节46 1500IP 数据报以太网 V2 的 MAC 帧格式FCS 字段 4 字节当传输媒体的误码率为 1108 时,MAC 子层可使未检测到的差错小于 11014。当数据字段的长度小于 46 字节时,应在数据字段的
21、后面加入整数字节的填充字段,以保证以太网的 MAC 帧长不小于 64 字节。MAC 帧物理层MAC 层IP 层目的地址源地址类型数 据FCS6624字节46 1500IP 数据报以太网 V2 的 MAC 帧格式10101010101010 10101010101010101011前同步码帧开始定界符7 字节1 字节8 字节插入在帧的前面插入的 8 字节中的第一个字段共 7 个字节,是前同步码,用来迅速实现 MAC 帧的比特同步。第二个字段是帧开始定界符,表示后面的信息就是MAC 帧。为了达到比特同步,在传输媒体上实际传送的要比 MAC 帧还多 8 个字节n数据字段的长度与长度字段的值不一致;n帧的长度不是整数个字节;n用收到的帧检验序列 FCS 查出有差错;n数据字段的长度不在 46 1500 字节之间。n有效的 MAC 帧长度为 64 1518 字节之间。n对于检查出的无效 MAC 帧就简单地丢弃。以太网不负责重传丢弃的帧。无效的 MAC 帧 n帧间最小间隔为 9.6 s,相当于 96 bit 的发送时间。n一个站在检测到总线开始空闲后,还要等待 9.6 s 才能再次发送数据。n这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。帧间最小间隔