第七章网络互联与二层交换目标:了解MSTP的产生背景——为什么会产生MSTP传输体制。了解MSTP体制的优点和不足。建立有关MSTP的整体概念,了解4种业务模型熟悉有关MSTP的名词概念,为以后更深入的学习打下基础。一、网络互联与二层交换概述网络互联中,可以采用集线器、二层交换机和路由器等设备。从互联的层次上看,集线器属于物理层互联设备,网桥和二层交换机属于链路层互联设备,而路由器属于网络层互联设备。在高层,可以采用协议转换器进行网络互联。对于在同一物理网段上的计算机,由于采用Ethernet(以太网)的CSMA/CD(带有冲突检测的载波监听多路访问)机制,导致网段中出现冲突,是网络的可用带宽减小。在网络互联中,是不希望这种冲突在网络中传播的。如果采用集线器,由于集线器完成的只是物理信号的放大、转发,因此不可能隔离冲突。而采用网桥等设备是可以隔离冲突的。a)网桥和分段网桥用于对网络进行物理分段。在网络上布置网桥后,同一个物理网段上的节点数将减少。在这种情况下,冲突出现的机会减少,通过的信息量也就增加。在默认情况下,网桥可以发送广播,这说明网桥不能将网络进行逻辑分段。所以,网桥可以增加带宽,减少冲突,但是不能阻止广播并对网络进行逻辑分段。b)LANSwitch和分段由于交换机进行物理分段的方式和网桥相同,所以使用交换机可以更进一步增加通信量。交换机从一个端口向另一个端口发送帧时有更多的端口和更少的等待时间。交换机还支持全双工技术,在那些直接连接到节点的端口上,从理论上可以使带宽增加一倍。交换机的每个端口是它自己的物理网段。在网络中,交换机对逻辑分段不起作用,广播信息可以传送到由交换机连成的每个物理网段,这将降低网络的实际通信量。和网桥一样,交换机能够增加带宽减少冲突,而且采用VLAN(虚拟局域网)可以形成逻辑分段,对广播进行过滤。c)路由器和分段路由器对网络进行物理分段的方式与交换机和网桥相同,但它还可以生成逻辑网段。路由器基于第3层报头、目标IP寻址、目标IPX寻址或目标Appletalk寻址作出转发决定。路由器不能对广播进行转发。所以通过路由器可以形成更多的广播域或逻辑网段。EthernetoverSDH实现中,二层交换的主要技术内容包括源地址自学习和基于目的地址的过滤两个功能,其原理与一般的以太网交换机相同;二层交换设备应该提供转发表项自动老化删除机制,老化时间缺省值为5分钟;二层交换的同时,应该能够提供静态转发表项设置;静态转发表项不应该老化;二、二层交换二层交换这样命名的原因是对网络主机来说二层交换的数据表示和对数据的操作都是透明的。当开启二层交换的电源时,它通过分析来自所有相连网络的输入封包的源地址来学习网络的拓扑结构。例如,二层交换接收到通过线路1来自主机A的数据包,它就认为通过连接到线路1上的网络可以达到主机A,通过这样的学习过程,二层交换就能建立起一张路由表,如下表所示:主机地址端口号1111.1111.111112222.2222.222213333.3333.333324444.4444.444431bcd.1234.cdfa1二层交换采用这种路由表作为数据包传输转发的基础。当二层交换从其中的一个端口接收到一个数据包时,它根据数据包的目的地址查找路由表,如果路由表中存在有目的地址和网桥中某个端口的对应关系,数据包将通过相应的端口被转发出去,否则,数据包将通过除接收端口外的所有其它端口被转发出去。二层交换成功地分隔了网段内部的数据传输,从而相应地减少了每一个网段上可见的数据传输量,这样就可以提高用户可见的网络响应时间。三、VLANVLAN(VirtualLocalAreaNetwork)是虚拟局域网的英文缩写,它将连接在同一个物理网络上面的主机分组,使他们它们看起来就象连接在不同的网络上一样。VLAN出现之前,人们通过划分网段来提高局域网性能或者限制网上的计算机互访问权限等等。当时每一个网段都必须单独拥有一套网络硬件,各个网段之间不能共享同一套连网设备,而且当计算机从一个网段迁移到另外一个网段的时候,所做的变动相对是比较大的,尤其是计算机的连接必须更换到另外一个网络上面。VLAN出现之后,人们可以通过VLAN为网络分段,各个网段可以共用同一套网络设备,节约了网络硬件的开销,同时在迁移中所需的工作量也大幅度降低了,从而降低了连网成本。a)VLAN的优点:i.减少移动和改变的代价,即所说的动态管理网络,也就是当一个用户从一个位置移动到另一个位置时,他的网络属性不需要重新配置,而是动态的完成,这种动态管理网络给网络管理者和使用者都带来了极大的好处,一个用户,无论他到哪里,他都能不做任何修改地接入网络,这种前景是非常美好的。当然,并不是所有的VLAN定义方法都能做到这一点。ii.虚拟工作组,VLAN的最具雄心的目标就是建立虚拟工作组模型,例如,在校园网中,同一个系的就好象在同一个LAN上一样,很容易的互相访问,交流信息,同时,所有的广播包也都限制在该虚拟LAN上,而不影响其他VLAN的人。一个人如果从一个办公地点换到另外一个地点,而他仍然在该系,那么,他的配置无须改变,同时,如果一个人虽然办公地点没有变,但他换了一个系,那么,只需网络管理者那配置一下就行了。这个功能的目标就是建立一个动态的组织环境,当然,这只是一个远大的目标,要实现它,还需要一些其他包括管理等方面的支持。iii.限制广播包,按照802.1D透明网桥的算法,如果一个数据包找不到路由,那么交换机就会将该数据包向所有的其他端口发送,这就是桥的广播方式的转发,这样的结果,毫无疑问极大的浪费了带宽,如果配置了VLAN,那么,当一个数据包没有路由时,交换机只会将此数据包发送到所有属于该VLAN的其他端口,而不是所有的交换机的端口,这样,就将数据包限制到了一个VLAN内。在一定程度上可以节省带宽。iv.安全性,由于配置了VLAN后,一个VLAN的数据包不会发送到另一个VLAN,这样,其他VLAN的用户的网络上是收不到任何该VLAN的数据包,从而就确保了该VLAN的信息不会被其他VLAN的人窃听,从而实现了信息的保密。b)VLAN成员的定义i.VLAN成员的定义可以分为4种:根据端口划分VLAN这种划分VLAN的方法是根据以太网交换机的端口来划分,比如24端口的交换机1~4端口为VLANA,5~17为VLANB,18~24为VLANC,当然,这些属于同一VLAN的端口可以不连续,如何配置,由管理员决定,如果有多个交换机的话,例如,可以指定交换机1的1~6端口和交换机2的1~4端口为同一VLAN,即同一VLAN可以跨越数个以太网交换机,根据端口划分是目前定义VLAN的最常用的方法,IEEE802.1Q协议规定的就是如何根据交换机的端口来划分VLAN。这种划分的方法的优点是定义VLAN成员时非常简单,只要将所有的端口都指定义一下就可以了。它的缺点是如果VLANA的用户离开了原来的端口,到了一个新的交换机的某个端口,那么就必须重新定义。根据MAC地址划分VLAN这种划分VLAN的方法是根据每个主机的MAC地址来划分,即对每个MAC地址的主机都配置他属于哪个组。这种划分VLAN的方法的最大优点就是当用户物理位置移动时,即从一个交换机换到其他的交换机时,VLAN不用重新配置。所以,可以认为这种根据MAC地址的划分方法是基于用户的VLAN,这种方法的缺点是初始化时,所有的用户都必须进行配置,如果有几百个甚至上千个用户的话,配置是非常累的。而且这种划分的方法也导致了交换机执行效率的降低,因为在每一个交换机的端口都可能存在很多个VLAN组的成员,这样就无法限制广播包了。另外,对于使用笔记本电脑的用户来说,他们的网卡可能经常更换,这样,VLAN就必须不停的配置。根据网络层划分VLAN这种划分VLAN的方法是根据每个主机的网络层地址或协议类型(如果支持多协议)划分的,虽然这种划分方法可能是根据网络地址,比如IP地址,但它不是路由,不要与网络层的路由混淆。它虽然查看每个数据包的IP地址,但由于不是路由,所以,没有RIP,OSPF等路由协议,而是根据生成树算法进行桥交换。这种方法的优点是用户的物理位置改变了,不需要重新配置他所属的VLAN,而且可以根据协议类型来划分VLAN,这对网络管理者来说很重要,还有,这种方法不需要附加的桢标签来识别VLAN,这样可以减少网络的通信量。但采用这种方法需要考虑效率问题,因为检查每一个数据包的网络层地址是很费时的(相对于前面两种方法),一般的交换机芯片都可以自动检查网络上数据包的以太网桢头,但要让芯片能检查IP桢头,需要更高的技术,同时也更费时。当然,这也跟各个厂商的实现方法有关。IP组播作为VLANIP组播实际上也是一种VLAN的定义,即认为一个组播组就是一个VLAN,这种划分的方法将VLAN扩大到了广域网,因此这种方法具有更大的灵活性,而且也很容易通过路由器进行扩展,当然这种方法不适合局域网,主要是效率不高,对于局域网的组播,有二层组播协议GMRP。c)VLAN技术原理VLAN在以太网帧中插入的位置如图所示:目标地址(6字节)源地址(6字节)802.1q标签(4字节)长度/类型(2字节)数据FCS(CRC-32)4字节TPIDTCIͼ1带有802.1Q标签头的以太网帧这4个字节的802.1Q标签头包含:(1)2个字节的标签协议标识(TPID--TagProtocolIdentifier,它的值是8100)(2)两个字节的标签控制信息(TCI--TagControlInformation),TPID是IEEE定义的新的类型,表明这是一个加了802.1Q标签的本文,图5显示了802.1Q标签头的详细内容。字节1字节2字节3字节4TPID(标签协议指示)TCI(标签控制信息)1000000100000000优先级CFIVLANID7654321076543210765432107654321ͼ1802.1Q标签头该标签头中的信息解释如下:VLANIdentified(VLANID):这是一个12位的域,指明VLAN的ID,一共4096个,每个支持802.1Q协议的主机发送出来的数据包都会包含这个域,以指明自己属于哪一个VLAN。CanonicalFormatIndicator(cfi):这一位主要用于总线型的以太网与FDDI、令牌环网交换数据时的桢格式;对以太网为0;Priority:这3位指明帧的优先级。一共有8种优先级,主要用于当交换机阻塞时,优先发送哪个数据包。不难看出,802.1Q标签头的4个字节是新增加的,目前我们使用的计算机并不支持802.1Q,即我们计算机发送出去的数据包的以太网帧头还不包含这4个字节,同时也无法识别这4个字节,将来会有软件和硬件支持802.1Q协议的。对于交换机来说,如果它所连接的以太网段的所有主机都能识别和发送这种带802.1Q标签头的数据包,那么我们把这种端口称为TagAware端口;相反,如果该交换机端口说连接的以太网段有只要有一台主机不支持这种以太网帧头,那么交换机的这个端口我们称为Access端口,从目前的情况可以看出,所有的交换机的端口都属于后一种。那么,在现在的情况下,交换机是如何支持VLAN的呢?比如交换机的1~4端口属于同一个VLAN,那么当1端口进来一个数据包是,交换机看到该数据包没有802.1Q标签头,那么,它会根据1号端口所属的VLAN组,自动给该数据包添加一个该VLAN的标签头,然后再将数据包交给数据库查询模块,数据库查询模块会根据数据包的目的地址和所属的VLAN进行路由,之后交给转发模块,转发模块看到这是一个包含标签头的数据包,而实际上发送的端口所连的以太网段的计算机不能识别这种数据包,所以,它会再将数据包进来是交换机给添加的标签头再去掉。如果计算机支持这种标签头,那么就不需要交换机添加或删除标签头了,至于到底是添加还是删除要看交换机所连的以太网段的主机是否识别这种数据包,即该交换机的端口是哪种类型的端口。当然,对于两个交换机互连的端口一般都是TagAware端口,这样,交换