以太网物理拓扑的发现方法


以太网技术是第二层网络技术,其网络发现到目前还没有成熟的技术和方法 。现有的网管如HP OpenView无法提供第二层的网络发现,并且各厂家的网管不能互通,如Cisco的CWSI和3Com Trancend等,须采用专用的协议或方法来实现 。
目前,运行在第二层的通用协议有VLAN和Spanning Tree生成树等,其主要设备是以太网交换机 。根据网络的拓扑结构,用以太网交换机组成的LAN一般有3种运行模式:运行Spanning Tree协议、不运行Spanning Tree协议以及混合式 。本文以混合模式为例,结合网桥和Spanning Tree的基本原理,介绍一种简单的LAN物理网络拓扑的发现方法 。
为方便讨论,在此假定由以太网交换机组成的LAN不支持VLAN技术 。将靠近路由器R1的交换机B1设为优先级最低的DRDesignated Root,指定的根 。B1、B2和B3形成一个环路,其上运行Spanning Tree协议;对于不运行Spanning Tree协议的LAN,一般成树型结构,不能有闭环连接,如B1、B4和B5为单链路级连,不运行Spanning Tree协议 。
在LAN物理网络拓扑发现以前,网段的网关地址是已知的,如本例中的61.140.216.254 。为方便起见,我们假设所有以太网交换机的治理IP地址是已知的,即手工加入的,也可通过SNMP协议发现 。如图1所示的61.140.216.253、61.140.216.245、61.140.216.246、61.140.216.215和61.140.216.219共5台以太网交换机的IP地址是已知 。
为方便说明,本文将网关看作LAN的根 。两台交换机直连时,将靠近根的交换机称作上游交换机,另一台称作下游交换机 。下面论述LAN物理拓扑发现的方法 。
1 通过网管向所有交换机发Clear命令,清除交换机上所有的包转发表 。
从桥的基本原理得知,以太网交换机动态学习通过它的数据包的MAC地址,并生成包转发表,转发表包含了目的MAC对应的目的端口号 。由于交换机治理IP地址之间可能会进行一些相互的访问(如ping或telnet等操作),各个交换机的包转发表比较复杂 。为使问题简单化,我们先把各个交换机的包转发表清除掉,让交换机重新学习并生成包转发表,然后继续下面的操作 。
2 利用路由器R1的ARP地址解析协议表,得到所有交换机的治理IP地址所对应的MAC地址以太网物理地址 。
为保证ARP表包含所有交换机的MAC地址,可以执行“ping广播地址”命令,如“ping 61.140.216.255假定图1中治理子网的网模为61.140.216.128” 。路由器接收到该命令后,将从目的地61.140.216.129开始执行ping命令,直到61.140.216.255结束 。此时,路由器的ARP表是最全、最新的 。
3 从各个交换机中获得包转发表并进行分析 。
在交换机B1上,只有通过F0/24端口才能到达MAC地址为00e0.1ece.1bd2的交换机或路由器 。同理可知到达其他交换机的端口 。通过这个简单的方法可以得到以B1为中心的星型网络结构 。但是还存在多个MAC地址同一目的端口的情况,如表2中,0090.0416.d8f8 B5和0800.4ecc.89d8B4 都是通过F0/18到达的,这种情况说明存在交换机级连 。对交换机B1而言,B5和B4通过同一目的端口F0/18,而到网关的端口号是F0/24,这说明B4和B5是B1的下游交换机,并且两者级连 。

推荐阅读