计算机网络学习笔记 - 第四章

第 4 章 介质访问控制子层

4.1 信道分配问题

4.1.1 静态信道分配

静态信道分配

我们考虑在一个容量为 C bps 的信道上发送一帧所需要的平均时延 T。假设,随机到达帧的平均到达率为\(\lambda\)帧/秒,帧的长度可变,其均值为每帧 1 位。利用这些参数,可以算出信道的服务率为\(\mu C\)帧秒。标准排队理论的结果是:

将单个信道分成 N 个独立的子信道,每个子信道的容量为 C/N bps。现在,每个子信道的平均到达率变成 N。重新计算 T,我们得到:

如果所有帧都能很神奇地排在一个大的中心队列,那么划分信道后单个信道的平均延迟比不分的情况差 N 倍。

4.1.2 动态信道分配的假设

动态信道分配的假设
  1. 流量独立 (independent traffic)。该模型是由 N 个独立的站(比如计算机、电话)组成的,每个站都有一个程序或者用户产生要传输的帧。在长度为\(\Delta t\)的间隔内,期望产生的帧数是\(\Delta t\),这里为常数(新帧的到达率)。

  2. 单信道 (Single Channel)。所有的通信都用这一个信道

  3. 冲突可观察 (observable Collision)。如果两帧同时传输,则它们在时间上就重叠,由此产生的信号是混乱的,这种情况称为冲突 (collision)。所有的站都能够检测到冲突事件的发生。冲突的帧必须在以后再次被发送。除了因冲突而产生错误外,不会再有其他的错误。

  4. 时间连续或分槽 (Continuous or slotted time)。时间可以假设是连续的,即在任何时刻都可以开始传输帧。另一种选择是把时间分槽或者分成离散的间隔(称为时间槽)。帧的传输只能从某个时间槽的起始点开始

  5. 载波侦听或不听 (Carrier Sense or no carrier sense)。有了载波侦听的假设,一个站在试图用信道之前就能知道该信道当前是否正被使用。如果没有载波侦听,站就无法在使用信道之前侦听信道,它们只能盲目地传输,以后再判断这次传输是否成功

4.2 多路访问协议

4.2.1 ALOHA

ALOHA 的基本思想

ALOHA 系统的基本思想非常简单:当用户有数据需要发送时就传输。当然,这样做可能会产生冲突,冲突的帧将被损坏。发送方需要某种途径来发现是否发生了冲突。在 ALOHA 系统中,每个站在给中央计算机发送帧之后,该计算机把该帧重新广播给所有站。

如果帧被损坏了,则发送方要等待一段随机时间,然后再次发送该帧。

我们使所有的帧具有同样的长度, 因为对于 ALOHA 系统,采用统一长度的帧比长度可变的帧更能达到最大的吞吐量。

竞争 (contention)

如果系统中多个用户共享同一个信道的方法会导致冲突,则这样的系统称为竞争 (contention) 系统。

纯 ALOHA

纯 ALOHA 的效率分析

分槽 ALOHA

分槽 ALOHA 的效率分析

于是,每帧传输次数期望 E,即终端键入一行的概率为:

所以,E 随 G 呈指数增长的结果是信道负载的微小增长也会极大地降低信道的性能。

4.2.2 载波侦听多路访问协议

1-坚持载波检测多路访问 (CSMA, Carrier Sense Multiple Access)

当一个站有数据要发送时,它首先侦听信道,确定当时是否有其他站正在传输数据;如果信道空闲,它就发送数据。否则,如果信道忙,该站等待直至信道变成空闲;然后,站发送一帧。如果发生冲突,该站等待段随机的时间,然后再从头开始上述过程。这样的协议之所以称为 1-坚持,是因为当站发现信道空闲时,它传输数据的概率为 1。

低延迟,低吞吐率

非坚持 CSMA(nonpersistent CSMA)。

站在发送数据之前要先侦听信道。如果没有其他站在发送数据,则该站自己开始发送数据。然而,如果信道当前正在使用中,则该站并不持续对信道进行监听,以便传输结朿后立即抓住机会发送数据。相反,它会等待一段随机时间,然后重复上述算法。因此,该算法将会导致更好的信道利用率,但是比起 1-坚持 CSMA,也带来了更大的延迟

高延迟,高负载时高吞吐率

p-坚持 CSMA(p-persistent CSMA)

它适用于分时间槽的信道,其工作方式如下所述。当一个站准备好要发送的数据时,它就侦听信道。如果信道是空闲的, 则它按照概率 p 发送数据;而以概率 q=1-p,将此次发送推迟到下一个时间槽。如果下个时间槽信道也是空闲的,则它还是以概率 p 发送数据,或者以概率 q 再次推迟发送

对比

带冲突检测的 CSMA(CSMA/CD, CSMA with Colision Detection)

站的硬件在传输时必须侦听信道。如果它读回的信号不同于它放到信道上的信号,则它就知道发生了碰撞。

在标记为 t0 点,一个站已经完成了帧的传送,其他要发送帧的站现在可以试图发送了。如果有两个或者多个站同时进行传送,冲突就会发生。如果一个站检测到冲突,它立即中止自己的传送,并且发出一个瞬间干扰信号,使所有的站点都知道发生了冲突,并等待一段随机时间,然后再重新尝试传送(假定在此期间没有其他站已经开始传送)。

在最差的情况下,只有当一个站传输了 2\(\tao\)(\(\tao\)=tp 传输时间)之后还没有监听到冲突,它オ可以确保自己经抓住了信道。

我们可以把 CSMA/CD 竞争看成是一个分槽 ALOHA 系统,时间槽宽度为 2\(\tao\)

使用 CSMA/CD 协议的以太网不能进行全双工通信只能进行双向交替通信(半双工通信)

4.2.3 无冲突协议

令牌环 (token ring) 协议

通过传递一个称为令牌 (token) 的短消息,该令牌同样也是以预定义的顺序从一个站传到下一个站。令牌代表了发送权限。如果站有个等待传输的帧队列,当它接收到令牌就可以发送帧,然后再把令牌传递到下一站。如果它没有排队的帧要传,则它只是简单地把令牌传递下去。

帧也按令牌方向传输。这样,它们将绕着环循环,到达任何一个目标站。然而,为了阻止帧陷入无限循环(像令牌一样),一些站必须将它们从环上取下来。这个站或许是最初发送帧的原始站,在帧经历了一个完整的环游后将它取下来,或者是帧的指定接收站。

发送帧后,每个站必须等待所有 N 个站(包括其自身)把令牌发给各自的邻居,以及其他 N-1 个站发送完一帧(如果它们有帧需要发送)

并不需要一个物理环来实现令牌传递

4.2.4 有限竞争协议

多路访问协议的比较和衡量指标

在负载较轻的情况下,竞争方法(即纯 ALOHA 或者分槽 ALOHA) 更为理想,因为它的延迟较短(冲突很少发生)。随着负载的增加,竞争方法变得越来越缺乏吸引力,因为信道仲裁所需要的开销变得越来越大。而对于无冲突协议,则结论刚好相反。在低负载情况下,它们有相对高的延迟,但是随着负载的增加,信道的效率反而得到提高(因为开销是固定的)。

有限竞争协议 (limited-contention protocol)

只要减少参与竟争的站数量,则站获得信道的概率就会增加。有限竟争协议正是这样做的。它们首先将所有的站划分成组(这些组不必是两两不相交的)。有 0 号组的成员才允许竞争 0 号时间槽。如果该组中的一个成员竞争成功了,则它获得信道,可以传送它的帧。如果该时间槽是空闲的,或者发生了冲突,则 1 号组的成员竞争 1 号时间槽,以此类推。

当负载很低时,每个时间槽中的站点数量就多一些;当负载很高时,每个时间槽中的站点数量就少ー些,甚至只有一个站。

4.2.5 无线局域网协议

传播范围假设

简化的假设:即每个无线电发射器有某个固定的传播范围,用一个圆形覆盖区域表示

隐藏终端和暴露终端

隐藏终端问题 (hidden station problem)

因为冲突将导致带宽的浪费。由于竞争者离得太远而导致站无法检测到潜在的竞争者,这个问题称为隐藏终端问题 (hidden station problem)

暴露终端问题 (exposed station problem)

C 所听到的传输只会搞坏 B 和 C 之间区域中的接收,但是,两个接收方都不在这个危险区域

冲突避免多路访问 (MACA, Multiple Access with Collision Avoidance)

MACA 的基本思想是发送方刺激接收方输出一个短帧,以便其附近的站能检测到该次传输,从而避免在接下去进行的(较大)数据帧传输中也发送数据。这项技术被用来替代载波侦听

A 首先给 B 发送个 RTS(Request To Send) 帧,如图 4-12(a) 所示。这个短帧 (30 字节)包含了随后将要发送的数据帧的长度;然后,B 用一个 CTS(Clear to Send) 作为应答,如图 4-12(b) 所示。此 CTS 帧也包含了数据长度(从 RTS 帧中复制过来)。A 在收到了 CTS 帧之后便开始传输。

如果一个站听到了 RTS 帧,那么它一定离 A 很近,它必须保持沉默,至少等待足够长的时间以便在无冲突情况下 CTS 被返回给 A。如果一个站听到了 CTS,则它一定离 B 很近,在接下来的数据传送过程中它必须一直保持沉默,只要检査 CTS 帧,该站就可以知道数据帧的长度(即数据传输要持续多久)。

在图 4-12 中,C 落在 A 的范围内,但不在 B 的范围内。因此,它听到了 A 发出的 RTS,但是没有听到 B 发出的 CTS。只要它没有干扰 CTS,那么在数据帧传送过程中,它可以自由地发送任何信息。相反,D 落在 B 的范围内,但不在 A 的范围内。它听不到 RTS 帧,但是听到了 CTS 帧。只要听到了 CTS 帧,这意味着它与个将要接收数据帧的站离得很近;所以,它就延缓发送任何信息直到那个帧如期传送完毕。站 E 听到了这两条控制消息,与 D 一样在数据帧完成之前它必须保持安静。

4.3 以太网

4.3.1 经典以太网物理层

以太网

典型拓扑结构

经典以太网物理层

10Base5

10Base2

10BaseT

NIC 网卡

Repeater 中继器

Hub 集线器

Manchester Encoding 曼彻斯特编码

4.3.2 经典以太网的 MAC 子层协议

MAC 帧格式

目标地址

如果传输出去的目标地址第一位是 0,则表示这是一个普通地址;如果是 1,则表示这是一个组地址。组地址允许多个站同时监听一个地址。当某个帧被发送到一个组地址, 该组中的所有站都要接收它。往一组地址的发送行为称为组播 (multicasting)。由全 1 组成的特殊地址保留用作广播 (broadcasting)。如果一个帧的目标地址字段为全 1,则它被网络上的所有站接收。

MAC 地址

站的源地址有一个有趣的特点,那就是它们具有全球唯一性。

地址字段的前 3 个字节用作该站所在的组织唯一标识符 (OUI, Organizationally Unique Identifier)。该字段的值由 IEEE 分配,指明了网络设备制造商。

地址字段的最后 3 个字节由制造商负责分配,并在设备出厂之前把完整的地址用程序编入 NIC

数据字段和长度范围

接下来是数据 (Data) 字段,最多可包含 1500 个字节。总帧长度最多 1518 字节。

以太网要求有效帧必须至少 64 字节长,从目标地址算起直到校验和,包括这两个字段本身在内。如果帧的数据部分少于 46 个字节,则使用填充 (Pad) 字段来填充该帧,使其达到最小长度要求

数据字段下限的原因

当 B 检测到它所接收到的信号比它发送的信号更强时,它知道已经发生了冲突,所以放弃了自己传送,并且产生一个 48 位的突发噪声以警告所有其他站。

如果一个站试图传送非常短的帧,则可以想象:虽然发生了冲突,但是在突发噪声回到发送方 (2 て)之前,传送已经结束。然后,发送方将会得出刚オ一帧已经成功发送的错误结论。为了避免发生这样的情况,所有帧必须至少需要 2 て时间才能完成发送,这样当突发噪声回到发送方时传送过程仍在进行。

二进制指数后退 (binary exponential backoff)

一般地,在第\(i\)次冲突之后,从\(0\sim 2^{i-1}\)之间随机选择一个数,然后等待这么多个时间槽。然而,达到 10 次冲突之后,随机数的选择区间被固定在最大值 1023,以后不再增加。在 16 次冲突之后,控制器放弃努力,并给计算机返回一个失败报告。

无效的 MAC 帧

4.3.3 以太网性能

4.3.4 交换式以太网

交换机

交换机只把帧输出到该帧想去的端口。当交换机端口接收到来自某个站的以太网帧,它就检査该帧的以太网地址,确定该帧前往的目的地端口

在集线器中,所有站都位于同一个冲突域 (collision domain), 它们必须使用 CSMA/CD 算法来调度各自的传输。在交换机中,每个端口有自己独立的冲突域。通常情况下,电缆是全双工的,站和端口可以同时往电缆上发送帧,根本无须担心其他站或者端口。现在冲突不可能发生,因而 CSMA/CD 也就不需要了。然后,如果电缆是半双工的,则站和端口必须以通常的 CSMA/CD 方式竞争传输。

交换机的优点

交换机的性能优于集线器有两方面的原因。首先,由于没有冲突,容量的使用更为有效。其次,也是更重要的,有了交换机可以同时发送多个帧(由不同的站发出)。这些帧到达交换机端口并穿过交换机背板输出到适当的端口

帧被发送到输出端口还有利于安全。大多数 LAN 接口都支持混杂模式 (promiscuous mode),这个模式下所有的帧都被发到每台计算机,而不只是那些它寻址的机器。每个连到集线器上的计算机能看到其他所有计算机之间的流量

有了交换机,流量只被转发到它的目的端口。

4.3.5 快速以太网

快速以太网

100Base-T4

100Base-TX

100Base-FX

4.3.6 千兆以太网

千兆以太网

全双工模式

半双工模式

流量控制

在流量控制机制下,一端的机器给另一端机器发送一个特殊的控制帧,告知对方暂停一段时间。这些暂停 (PAUSE) 控制帧是普通的以太帧,类型字段设置为 0x8808。暂停时间是最小帧时的整数倍。

4.3.7 万兆以太网

万兆以太网

万兆以太网用途

4.4 无线局域网

4.4.1 802.11 体系结构和协议栈

802.11 局域网结构

802.11 协议栈

MAC 层和 LLC 层

在 802.11 中,介质访问控制 (MAC, Medium Access Control 子层决定如何分配信道,也就是说下一个谁可以发送。在它上方的是逻辑链路控制 (LLC, Logical Link Control) 子层,它的工作是隐藏 802 系列协议之间的差异,使它们在网络层看来并无差别。

4.4.3 802.11 MAC 子层协议

带有冲突避免的 CSMA(CSMA/CA, CSMA with Collision Avoidance)

需要发送帧的站必须以随机后退开始(除非它最近没有用过信道,并且信道处于空闲状态),而且它不等待冲突的发生。在 OFDM 物理层情况下,后退选择的时间槽数范围在 0~15 之间。该站将等待,直到信道处于闲置状态。

具体做法是:通过侦听确定在一个很短的时间内(这段时间称为 DIFS,我们在下面解释)没有信号;然后倒计数空闲时间槽,当有帧在发送时暂停该计数器;当计数器递减到 0 该站就发送自己的帧。如果帧发送成功,目标站立即发送一个短确认。如果没有收到确认,则可推断出传输发生了错误,无论是冲突或是其他什么错。在这种情况下,发送方要加倍后退选择的时间槽数,再重新试图发送。

和以太网的区别

和以太网相比,这里有两个主要区别。首先,早期的后退有助于避免冲突

其次,利用确认来推断是否发生冲突,因为冲突无法被检测出来

物理监听和虚拟监听

物理侦听只是简单地检査介质,看是否存在有效的信号;有了虚拟侦听,每个站可以保留一个信道何时要用的逻辑记录,这是通过跟踪网络分配向量 (NAV, Network Allocation Vector) 获得的。每个帧携帯一个 NAV 字段,说明这个帧所属的一系列数据将传输多长时间。无意中听到这个帧的站就知道无论自己是否能够侦听到物理信号,由 NAV 所指出的时间段信道一定是繁忙的。

802.11 RTS/CTS 机制

可选的 RTS/CTS 机制使用 NAV 来防止隐终端在同一时间发送。

协议开始于当 A 决定向 B 发送数据时。A 首先给 B 发送一个 RTS 帧,请求对方允许自己发送一个帧给它。如果 B 接收到这个请求,它就以 CTS 帧作为应答,表明信道被清除可以发送。一且收到 CTS 帧,A 就发送数据帧,并启动一个 ACK 计时器。当正确的数据帧到达后,B 用一个 ACK 帧回复 A,完成此次交流。如果 A 的 ACK 计时器超时前,ACK 没有返回,则可视为发生了一个冲突,经过一次后退整个协议重新开始运行。

现在让我们从 C 和 D 的角度来看这次数据交流。C 在 A 的范围内,因此它可能会收到 RTS 帧。如果收到了,它就意识到很快有人要发送数据。从 RTS 请求帧提供的信息,可以估算出数据序列将需要传多长时间,包括最后的 ACK。因此,它采取了有利于所有人的做法,停止传输任何东西,直到此次数据交换完成。它通过更新自己的 NAV 记录表明信道正忙,如图 4-27 所示。D 无法听到 RTS,但它确实听到了 CTS,所以它也更新自己的 NAV。

802.11 和 MACA 的区别

802.11 中的 RTS/CTS 与我们在 4.2 节看到的 MACA 还是有点不同,因为每个站都能听到 RTS 或 CTS,因而在此期间保持沉默以便 ACK 无冲突地通过。正因为如此,它无助于暴露终端问题的解决;正如 MACA 一样,只对隐藏终端有好处。大多数情况下隐藏终端很少,而且不管什么原因,CSMA/CA 通过后退发送失败的站来缓解隐藏终端问题,使得传输更可能获得成功

DCF/PCF

这种操作模式称为分布式协调功能 (DCF, Distributed Coordination Function),因为每个站都独立行事,没有任何一种中央控制机制。标准还包括一个可选的操作模式,称为点协调功能 (PCF, Point Coordination Function)。在这种模式下,AP 控制自己覆盖范围内的切活动,就像蜂窝通信中的基站一样

可靠性

802.11 允许把帧拆分成更小的单元一称为段 (fragment),每个段有自己的校验和。标准没有固定段的大小,但把它作为一个可以由 AP 调整的参数。这些段独立编号,使用停-等式协议

节能

节能的基本机制建立在信标帧 (beacon frames) 基础上。信标帧由 AP 定期广播(例如每 100 毫秒发一个)。该帧向客户通告 AP 的存在,同时传递一些系统参数,比如 AP 的标识、时间(下一帧多久再来)和安全设置。

客户端可以在它发送到 AP 的帧中设置一个电源管理位 (power-management),告诉 AP 自己进入省电模式 (power-save mode)。在这种模式下,客户端可以打个盹,AP 将缓冲所有发给该客户的流量。为了检查入境流量,客户端在每次信标帧来时苏醒过来,并检査作为信标帧一部分的流量图。

自动省电交付 (APSD, Automatic Power Save Delivery)

有了这个新机制,AP 依然为休眠的客户端缓冲帧,但只在客户端发送帧到 AP 后才将其缓存的帧发送到客户端。这样一来,客户端可以安心进入睡眠状态,直到它有更多的流量需要发送(和接收)才醒来。

服务质量:不同帧间隔

一帧发出去后,需要保持一段特定时间的空闲以便检査信道不在被用,然后任何站才可以发送帧。 这里的关键就在于为不同类型的帧确定不同的时间间隔

服务质量:TXOP 或传输机会 (transmission opportunity)

帧大小相同时,当单独以 6Mbps 和 54Mbps 速率发送时,发送方将获得自己的速率;但当它们一起发送时,两者都将达到 5.4Mbps(\(\frac 1{\frac 16+\frac 1{54}}\)的平均水平

传输时间相同时,在我们的例子中,当一个 6Mbps 和 54Mbps 的发送方一起发送时,现在它们两个将分別得到 3Mbps 和 27Mbps 的吞吐量。

4.4.4 802.11 帧结构

802.11 帧

数据帧的第二个字段为持续时间 (Duration) 字段,它通告本帧和其确认将会占用信道多长时间,按微秒计时。该字段会出现在所有帧中,包括控制帧,其他站使用该字段来管理各自的 NAV 机制。

接下来是地址字段。发往 AP 或者从 AP 接收的帧都具有 3 个地址,这些地址都是标准的 IEEE802 格式。第一个地址是接收方地址,第二个地址是发送方地址。很显然,这两个地址是必不可少的,那么第三个地址是做什么用的呢?请记住,当帧在一个客户端和网络中另一点之间传输时,AP 只是一个简单的中继点。这网络中的另一点也许是一个远程客户端,或许是 Internet 接入点。第三个地址就指明了这个远程端点

4.8 数据链路层交换

4.8.2 学习网桥

网桥

透明网桥

泛洪算法 (flooding algorithm)

对于每个发向未知目标地址的入境,网桥将它输出到所有的端口,但它来的那个输入端口除外

后向学习法 (backward learning)

正如上面所提到的,网桥工作在混杂模式下,所以,它们可以看得到每个端口上发送的所有帧。通过检查这些帧的源地址, 桥就可获知通过那个端口能访问到哪些机器

当打开、关闭或者移动机器和桥时,网络的拓扑结构会发生变化。为了处理这种动态的拓扑结构,一旦构造出一个哈希表项后,帧的到达时间也被记录在相应的表项中。当帧到达时,如果它的源地址已经在表中,那么对应表项中的时间值被更新为当前时间。

因此,与每个表项相关联的时间值反映了网桥最后看到该机器发出一帧的时间。

在网桥中有一个进程定期扫描哈希表,并且将那些时间值在几分钟以前的表项都清除掉

网桥的工作原理

例:学习网桥

直通式交换 (cut-through switching)

网桥只要看到 MAC 地址就可决定如何转发帧,有可能一旦从入境线路输入帧的目的地址字段马上就可转发,此时帧的其余部分还在输入,即在完整接收一帧之前就开始了转发(当然,前提是输出线路可用)。这种设计降低了帧通过网桥的延退,以及网桥必须能缓冲的帧数。这种转发方式称为直通式交换 (cut-through switching) 或虫孔路由 (wormhole routing),

4.8.3 生成树网桥

生成树算法

为了建立生成树,网桥运行一个分布式算法。每个网桥周期性地从它的所有端口广播个配置消息给邻居,同时处理来自其他网桥的消息,处理过程如同下面描述的那样。这些消息不被转发,因为它们的用途是构建树,这棵树将被用于随后帧的转发。 全体网桥必须首先选择一个网桥作为生成树的根。为了作出这种选择,每个网桥在自己的配置消息中包含一个标识符,以及它们认为应该作为根的网桥的标识符。网桥标识符基于 MAC 地址,而 MAC 地址由网卡制造商预先设置好,能确保全世界独一无二。因此, 网桥标识符的生成既便利又具有唯一性。网桥选择具有最低标识符的网桥成为生成树的根。 经过足够的消息交换和扩散,最终所有网桥将都同意这个根

然后,构造从根到每个网桥的最短路径树

从根通过 B2 或 B3 都可到达 B4,最短路径均为两跳。为了打破这种平局,选择一条经过具有最低标识符的网桥的路径,因此到达 B4 的路径通过 B2。 为了找到这些最短路径,网桥在它们的配置消息中还包括与根的距离。每个网桥记住它找到的到根的最短路径。然后,网桥关闭那些不属于最短路径一部分的端口。

例:生成树

4.8.4 中继器/集线器/网桥/交换机/路由器和网关

中继器

即物理层中, 我们可以看到有中继器。中继器是模拟设备,主要用来处理自己所连的线缆上的信号。在一个线缆上出现的信号被清理、放大,然后再被放到另一个线缆上。中继器并不理解帧数据包或帧头,它们只知道把比特编码成电压的符号。

集线器

集线器有许多条输入线路,它将这些输入线路连接在一起。从任何条线路上到达的帧都被发送到所有其他的线路上。如果两帧同时到达,它们将会冲突, 就好像它们在同一根同轴电缆上遇到后发生碰撞一样。连接到同一个集线器上的所有线路必须以同样的速度运行。集线器与中继器不同,它们(通常)不会放大入境信号,并且可以有多个输入线路

网桥

网桥连接两个或多个局域网。跟集线器一样,一个现代网桥有多个端口,通常具有 4~48 条某种类型的输入线。与集线器不同的是网桥的每个端口被隔离成它自己一个冲突域;如果端口是全双工的点到点线路,则需要用到 CSMA/CD 算法。当到达一帧时,网桥从帧头提取出帧的目的地址,并用该地址査询一张应该把帧发往哪里去的表

网桥比集线器提供了更好的性能,隔离网桥端口还意味着输入线路可以不同的速度运行,甚至可以是不同的网络类型。

网桥最初是被用来连接不同种类的局域网,例如,把一个以太网和令牌环网连接在起。然而,由于不同局域网之间的差异,这方面的工作总是做得不是很好。

交换机

网桥倾向于连接相对数目较少的局域网씨,因而端口数也相对较少。现在"交换机"一词更为流行。此外,现代交换机的安装都使用了点到点链接(例如双绞线),单个计算机通过双绞线直接插入到交换机端,因此交换机的端口数往往有许多个。

交换机是现代网桥的另一个称呼。它们的差异更多地体现在市场上而不是技术方面。

网桥和交换机

路由器

当一个数据包进入到路由器时,帧头和帧尾被剥掉,帧的有效载荷字段中(如图 4-45 中的阴影部分)的数据包被传给路出软件。路由软件利用数据包的头信息来选择输出线路。对于一个 IP 数据包,包头将包含一个 32 位 (IPv4) 或者 128 位 (IPv6) 地址,而不是 48 位的 IEEE802 地址。

传输网关

再往上一层我们可以发现传输网关。它们将两台使用了不同面向连接传输协议的计算机连接起来。

应用网关

最后,应用网关能理解数据的格式和内容,并且可以将消息从一种格式转换为另一种格式

4.8.5 虚拟局域网

VLAN 和配置表

为了使 VLAN 正常地运行,网桥必须建立配置表。这些配置表指明了通过哪些端口可以访问到哪些 VLAN。当一帧到来时,比如说来自灰色 VLAN,那么这帧必须被转发到所有标记为 G 的端口。这一条规则对于网桥不知道目的地位置的普通流量(即单播)以及组播和广播流量都适用。注意,一个端口可以标记为多种 VLAN 颜色。

VLAN 帧格式

VLAN 感知

因为存在一些计算机(和交换机)无法感知 VLAN,因此第一个 VLAN 感知的网桥在帧上添加一个 VLAN 字段,路径上的最后一个网桥把添加的 VLAN 字段删除。

作者

xqmmcqs

发布于

2021-07-21

更新于

2023-03-29

许可协议

评论

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×