标题：交换式局域网
交换式局域网的体系结构
大型局域网总是由多个局域网通过多种网络互连设备，如网桥、路由器或交换机等连接而成的。由于对局域网带宽不断增长的要求必须在以太网或令牌环网固定的10Mbps或16Mbps的带宽限制下，所以在一个典型的局域网设计中不同局域网段的数目正迅速性地增长着。但是这种趋势会持续多久呢？是否有可能局域网中不再需要路由器呢？毫无疑问，广域网中互连的交换式局域网之间需要路由器提供物理连接和协议的转换。但当我们寻求对下列问题的答案时，分歧就产生了： 
在交换式局域网中路由选择的作用是什么？ 
在交换式局域网中交换与路由选择之间的最优平衡是什么？ 
在局域网中把交换机与路由器物理地连接起来的最好办法是什么？ 
下面的论述将会对这些问题给出合理的解答。
交换和路由选择：定义
在开始讨论在局域网中交换和路由选择各自的作用之前，首先应该明白这两种技术的差别。局域网交换机有点像网桥，通常它们互连同种类型的局域网段，如都是以太网段或都是令牌环网段的情形。它们在端口之间透明地传送信息，以令牌环网为例，就是用源路由选择的方法。透明交换机对端站是不可见的 ，它们通过检查传送到它们端口的局域网段中的所有信息包来进行学习，从而得知各站点的位置，并根据在每个信息包中的目的网络地址把信息包送往适当的端口。这也意味着它们的运作独立于与端站之间互相通信的协议，不管是TCP/IP协议，还是Novell IPX，NETBIOS或者IBM的SNA协议。令牌环网的源路由选择交换机与透明交换机不同之处仅在于，源路由选择交换机是根据由端站往每个信息包中插入的信息来把信息包送往相应的端口，同样这也是独立于下层网络协议的。
但在一些情况中，交换机可用来互连不同类型的局域网，例如，一些交换机可互连FDDI主干网和以太网段。在这种情形下，交换机只是在以太网和FDDI帧之间作些简单的转换工作，这样就遵循了对端站的透明性原则。
另一方面，路由器被设计成具有把任何类型的网络信息包传送到任何其他类型网络的能力，它们对端站是不透明的：事实上，当一个以太网的端站想要路由器另一端的站点进行通信时，它只是对相应的路由器进行寻址，而不是目的站点。当一个路由器从一个以太网段收到一个要发往另一个网段的信息包时，路由器取出报文的头部，检查报头中的目的地址，然后根据这些信息查询相应的表，确定这个目的站点是否位于它的一个直接相连的局域网段中，否则，该信息包应被送往另一个路由器，在作出相应的决定后，这个路由器将为这个信息包添加新的报头并将它发送出去。
为了确定信息包往哪一个端口转发，路由器要维护复杂的查找表，这些表是由每个路由器与网络中的其它路由器相互合作而构造的，这些路由器相互传递经过这个网络的路由状态信息，在路由选择中涉及到的协议和过程是复杂的，需要进行大量的计算，并且占用内存。
总而言之，在局域网中交换与路由选择最显著的差异在于：信息包经过路由器要比经过交换机需要复杂得多的处理。因此，在取得同一性能水平的前提下，路由器的花费比交换机的花费多许多，而且，一个包经过交换机比要经过路由器花的时间少一些，从而交换机提供了更短的延迟；但另一方面，可以用路由器的处理能力来提供比交换机更大程度的控制。
网络设计的目标
在明白网络设计的目标之前，我们不可能有效地讨论如何使用交换技术和路由选择技术的最优组合来建造交换式局域网，下面是交换式局域网的一些常见的设计目标：
●以合理的成本取得较高的处理能力 
●更低的端到端的迟延 
●具有对通信模式进行调节的弹性 
●容易配置和安装 
●最小化的管理负担 
●对网络资源访问的有效控制 
在下面的讨论中你将明白，交换技术作为主导技术，而路由选择技术扮演重要但较小角色的局域网设计能最好地符合上述大部分的设计目标。在这个混合中高比例的交换技术通常是令人满意的，因为交换技术比路由选择技术更能以较低的成本提供更大的通信处理能力，而且交换机更易于安装、配置和管理。
路由选择在交换式局域网中担任的角色
简介在交换式局域网中，由路由器完成的基本功能主要有四种，对它们有清楚的了解有助于我们明白路由选择在交换式局域网中担任的角色，这四个功能为:
●把交换式局域网分割成多个广播域，并且把这些域连接在一起 
●在不同子网间进行信息包的传送 
●作为互连不同局域网的技术 
●提供对从属在局域网上的资源进行安全访问的机制 
当然，路由器完成的功能不止这些。当将局域网连接到广域网上时，路由器承担了许多协议的转换工作，如从局域网的协议到针对专用线路或电话线路连接的点到点协议（PPP），或者帧中继。但这些功能因所连接的广域网的不同而有所差异，这里我们只关心在交换式局域网中的情形，因此，我们的焦点就放在上述四个基本功能上。把交换式局域网分割成多个广播域一些局域网技术（如以太网和令牌环网）提供让任一个站点可发送一信息包给局域网中的所有其它站点的能力，这也就是所谓广播。几乎所有局域网的网络协议都是用广播来实现操作和管理的机制的。例如，使客户机能定位服务器，允许散播有关可利用的网络资源的信息等等。
一般而言，越多的站点连接到同一个局域网上，产生的广播通信量就越大。对于通过网桥或交换机连接多个局域网段而形成的大型局域网而言，这种情况仍成立。广播通信流在一个局域网中的广播通信量不仅仅取决于连接到局域网上的站点数目，还有许多其他因素的影响，如在局域网上的服务器和路由器的数目，所用的协议类型、用户启动和终止网络应用程序的频率等等。同时，令牌环网中可观察到的广播特征不同于以太网，因为令牌环网用一种称为源路由探测帧（Source Route Explore Frames），这种帧在经过桥接的网络时如果面临多个路由选择就会复制自己。
由于影响局域网广播通信量的因素很多，因此很难给出一个通用的衡量指标。然而，实际的网络测定表明，即使用一般的网桥或交换机连接有几百个甚至几千个结点的局域网 ，平均的广播通信量一般不会超过每秒10-30个信息包，在偶尔发生的高峰期每秒也最多只有 100-150个信息包。而每秒30个广播包意味占用大约以太网信道的千分之二点五，（这里假定广播信息包平均长度为100字节）。因此广播流对整个网络性能的影响是可以忽略的。
尽管局域网上的广播流对网络性能的影响甚微，但同样的情况却不适用于广域网的连接。在这种情形下，广播通信流将占用宝贵的广域网带宽的相当一部分，而路由器在这种环境中起着最小化广播通信的影响的作用。 
当前对网络协议和软件的类型和用法的趋势是：倾向于减少在局域网中的广播通信流量。例如，对NetBIOS协议（一个大量使用广播的协议）的使用正日益减少。同时，新的特性不断地被Novell公司吸收入NetWare 4.X 版本，包括NetWare 目录服务（NetWare Directory Services）和对NetWare连接状态协议（NetWare Link State Protocol）的支持，从而减少SAP（Service Advertising Protocol）和RIP（Routing Information Protocol）协议的通信流。广播风暴（Broadcast Storm）具有多年网络管理经验的系统管理员可能知道广播风暴。在一个大型网络中，一个高等级的广播通信流可能暂时轰炸网络的某一部分，造成站点失去与服务器的连接，于是当这些站点试图重建它们的连接时引发了更多的广播通信流，因此引起的连锁反应就是广播风暴。最终迅速增长的广播通信流会淹没整个网络，使整个网络陷入瘫痪 。
路由器能很好地解决广播风暴问题。 客户机发出用来寻找服务器的广播包在路由器处被截获。由路由器进行向前转发。因此路由器提供了一类针对广播包的防火墙。从而抑制了可能引发广播风暴的连锁反应。对广播风暴的恐惧，造成了局域网设计时常常以路由器为中心。后面我们将说明以路由器为中心的网络结构。
毫无疑问，在今天通过网桥互连的大型局域网中，广播风暴会导致十分严重的网络服务丢失问题。然而，该问题的出现主要源于迄今为止仍缺乏足够重视的三个事实：
使用远程网桥通过低速专用线路连接外部网点。这种原始的远程局域网网桥具有很少的或者没有广播包的过滤能力。因此原本在10Mbps的以太网中占用微不足道带宽的广播通信流量可能很快轰炸64Kbps的线路。站点间失去连接的结果很容易引发广播风暴。实践中往往采用路由器支持低速线路连接远程网点，利用路由器来防止远程线路被广播包轰炸。
端站实现IP协议栈时的特性也容易引发广播风暴。在有关IP的资料中记述了许多早期实现IP协议栈的方式，它们都可能引发广播风暴。如在早期的Berkeley UNIX版本中站点在收到一个错误IP的信息包会继续转发它，以及站点可能会对特定的广播包发出ICMP错误信息。当前的IP实现的版本已经消除了这个问题　　
端站的网络接口和协议栈的糟糕的实现。由于历史的原因，不足的处理能力，不足的缓冲内存，以及对协议栈的不成熟的软件实现，造成了对局域网中的广播通信流的过度的敏感。若在相对较低等级的广播通信流的情况下，局域网的接口变得拥塞，则连接可能会失去，站点试图重建连接的努力又形成了引发广播风暴的条件。经历了十多年的技术发展，局域网的接口现在能处理很高的广播流了。可能引发广播风暴的通信流的下限也提高很多了。
总而言之，今天的交换式局域网中广播风暴的风险被极大地夸大了。如果把适度的注意点移到如何更好的配置交换式局域网上，那没有理由不能构建拥有数千个结点的大型局域网，而且仍具有良好的性价比和可扩展性等好处。子网间信息包的传输大量应用的网络协议如IP和IPX以及NetBIOS等提供了一个独立于下层局域网传输的网络层寻址结构。IP和IPX都是可寻址的协议。也就是说它们实现了分层次的寻址方案，用如&lt;网络标识号 主机标识号&gt;来标识所有的网络主机。NetBIOS是一个不可寻址的协议，因为网络主机只是简单的用一个名字标识它，而没有层次结构。
网络协议的寻址结构对交换式局域网的设计具有重要的意义。因为网络地址的层次特性需要把网络主机分成许多的组，每组中的主机具有相同的网络标识号。在某一组中的一个主机想和另一组中的主机进行通信的唯一办法是把信息包送往路由器，由路由器进行转发。在这里，我们将详细地讨论寻址方案。稍后，我们将讨论在这些方案的限制下进行有效工作的策略。
IP 寻址
IP协议用四个字节（32位）来进行网络寻址。网络标识号和主机标识号在其中的分割是具有一定灵活性的。任一组织可以用专用的寻址方案来管理IP，这样它们拥有极大的灵活性，或者它们也可利用公共的寻址方案。这些方案是由负责全球唯一分配IP地址的IANA（Internet Assigned Numbers Authority）制定的。
大多数组织选用公共的寻址方案。但问题在于地址仅有四个字节，地址空间极其有限。结果，许多的组织被迫选用具有诸多限制的寻址方案。如限制在一个局域网中不用经过路由器而可直接相互通信的站点数目。 
对于可寻址的协议，每个端站可以有一个由网络标识号和主机标识号组成的网络地址，对IP而言，每个端站的地址通常是由网络管理员手工配置的。当一个端站想和它已知道其IP的另一个端站进行通信时，它首先把自己的网络标识号与目的站点的网络标识号进行比较。如果它们是相同的，则表明目的站点是位于同一个局域网中的。于是我们仅仅需要找到该站点所对应的局域网地址。这里我们利用ARP协议。如果它们的网络标识号不一样，则源站点将不得不和一个或多个路由器进行通信。路由器中包含有如何到达不同网络的路由信息。这也意味着在交换式局域网中，路由器能使具有不同网络号的端站进行通信。当前最流行的寻址方案是C类地址，这里我们必须把局域网用户分成组，每组中不能有超过254个站点具有相同的网络标识号。在同一组中的站点的通信可直接通过交换式局域网进行。而不同组间要通过路由器。
IP寻址: 子网化
对于最常用的C类IP寻址方案，在一个子网的站点数目不得超过254的限制给我们带来了诸多的不便。其他的IP寻址方案没有这样的限制。
许多大型的组织很幸运地申请（通过IANA）到了一个B类地址甚至一个A类地址。B类地址支持在一个子网中多达65534个站点。而A类地址甚至允许在一个子网中可有1600万个站点。现在IANA极不乐意再分配新的A类地址或B类地址，因为剩下的已经不多了。如果要想申请得一个A类或B类地址，则必须给出非常充分的理由。
实际上，没有真正的网络在一个子网中包含有65000个站点，更不要说1600万个站点了。为了更好地利用已经分配的IP地址空间。通常再为它配置一个子网屏蔽码。对于一个A类地址而言,IP地址中的网络标识号通常位于IP地址的头8位，而对B类地址，网络标识号占用了头16位。但如果我们在附加6个位给网络标识号的话，则我们就有效地把一个B类地址分割成了62个更小的子网，每个子网中最多可有1022个站点。
拥有A类地址或B类地址的组织应明智地利用这个很有价值的资产。设置好子网屏蔽码的大小对于充分地利用这个地址空间而言是极其关键的。子网屏蔽码大得应能支持所需要的子网的最大数目（例如，人们可能在每个分支办公处都需要一个子网）。同时，又要考虑在主要场所大型交换式局域网带来的良好的性价比。
许多组织现在只可能向IANA申请C类地址，在C类地址的限制下有效工作的策略后面我们会讨论到。
IPX 寻址
Novell IPX 协议很少碰到象上面IP寻址具有的限制。在IPX协议中，网络层地址占用十个字节，其中头四个字节是网络标识号，后六个字节是主机标识号，主机标识号其实就是在局域网适配卡（即网卡）中内置的地址。这个地址是由IEEE全球唯一分配的，网络标识号是在每个站点启动时，通过向局域网中的服务器广播一个请求而得到。
因此，对于IPX而言，对具有同一网络标识号的站点数目没有限制。在一个正确设计的交换式局域网中，所有的IPX站点可以自由地通过局域网交换机进行相互通信，根本不需要经过任何路由器。
NetBIOS 寻址
NetBIOS站点的地址是一个由数字和字母组成的名字标志着。这个名字没有层次意义，因此，NetBIOS站点可以在一个平坦型网络中直接进行通信，也可通过一个桥接局域网进行。如果一定要经过路由器的话，则或者NetBIOS是通过路由器连接的，或者NetBIOS是被包含在另一个协议中（如IP协议）。
网络的现实: 多种协议的局域网
在大型组织中，大多数局域网需要支持多种局域网协议。然而，每种协议都各具有不同的特征。每种协议都有它的最优设计方案。但很幸运的是，我们可以设计一个交换式局域网来提供IP，IPX 和其他非可寻址协议的最优性能组合。
传统的局域网设计方法是以IP为中心的。焦点也就放在根据IP寻址方案把局域网分割成多个子网。许多的组织认为: 如果他们将在每个子网最多254站点的限制下工作的话，那他们也可很好地设计仅有一个物理网段的局域网。每个网段接到一个路由器端口上。
这种方法的问题在于，任意两个网段之间的通信流，不管它们的协议，都必须经过一个或多个路由器。事实上，他们已经采取了接受IP地址限制的网络结构，并且强加这种限制于其他的网络协议之上，也不管IPX协议能在一个子网内能支持多少个站点。所有的相互通信都需要经过路由器。同时也意味着所有的非可寻址的协议如NETBIOS都必须接到路由器上，这种基于路由器的结构为了达到较好的性能，必须耗费大量的路由器的资源。
总之，在交换式局域网中，如果必须在多个子网间进行信息包的传送的话，则必须接受IP寻址方案的限制。同时，也不能应用于IPX和其它非寻址协议。但对于一个正确设计的交换式局域网而言，寻址能力的限制仅仅对不同网络的站点间的IP通信流发生作用。在大多数情况下，我们可能把所有局部的IPX通信流和所有的非可寻址通信流放在一个交换式局域网内，而不用经过任何路由器。这将在后面的交换式局域网部分加以详细阐述。互连不同局域网的技术路由器被大量地应用于大型局域网内，用来互连不同类型的局域网。如连接以太网或者令牌环网到FDDI主干网上，或连接位于同一地点的以太网和令牌环网。路由器在支持连接到FDDI主干网的市场上的地位遭到局域网交换机的严重挑战。局域网交换机可以在以太网或令牌环网与FDDI主干网之间起着网桥的作用，专注于简单的帧格式的转换而避开了所有网络层复杂的处理。交换机仅以路由器一小部分的代价达到与FDDI主干网连接的目的。而且当在高速主干网技术上FDDI让位于ATM的时候，通过交换机把以太网或令牌环网连接到主干网上将变得更容易。因为ATM能模拟局域网支持直接传输以太网或令牌环网帧，不需要转换工作。
连接以太网与令牌环网的网桥存在互操作性问题已经很久了。而路由器能较好地满足这种需要。当以太网和令牌环网的用户相共享对公用资源的访问时，则在每个服务器上安装两种类型的网卡。使两类用户都可直接访问服务器。这样将能提供更好的性能，并且减少对昂贵路由器的需求。提供安全访问的机制除了在不同局域网和广域网的连接间转发信息包之外。路由器一般也提供一定范围的包过滤能力，从而提供对网络资源更安全的访问。对广域网来说安全访问是必需的，但许多的组织也在路由器中提供包过滤的能力来实现局域网内的安全访问。路由器对通常由网络应用程序提供的有关安全性的功能提出了有用的增补，以及能对没有权限访问的用户进行网络资源屏蔽。大多数路由器提供一系列的逻辑规则，可用来创建适当的过滤器。如根据网络地址，套接字号，协议类型等等，这些规则使用户能很有弹性实现他们的安全功能。但是，应该说明的是，路由器在接受到每个包后在软件中运用过滤规则进行处理，因此可能对路由器的吞吐率和包迟延有较严重的影响。