Groups
Groups
Sign in
Groups
Groups
Java Me Games
Conversations
About
Send feedback
Help
以太网物理拓扑的发现方法
2 views
Skip to first unread message
li...@broada.com.cn
unread,
Jan 9, 2007, 9:00:11 PM
1/9/07
Reply to author
Sign in to reply to author
Forward
Sign in to forward
Delete
You do not have permission to delete messages in this group
Copy link
Report message
Show original message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to jm...@googlegroups.com
以太网技术是第二层网络技术,其网络发现到目前还没有成熟的技术和方法。现有的网管如HP OpenView 无法提供第二层的网络发现,并且各厂家的网管不能互通,如Cisco的CWSI和3Com Trancend等,须采用专用的协议或方法来实现。
目前,运行在第二层的通用协议有VLAN和Spanning Tree生成树 等,其主要设备是以太网交换机。根据网络的拓扑结构,用以太网交换机组成的LAN一般有3种运行模式:运行Spanning Tree协议、不运行Spanning Tree协议以及混合式。本文以混合模式为例,结合网桥和Spanning Tree的基本原理,介绍一种简单的LAN物理网络拓扑的发现方法。
为方便讨论,在此假定由以太网交换机组成的LAN不支持VLAN技术。将靠近路由器R1的交换机B1设为优先级最低的DRDesignated 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.89d8B4 都是通过F0/18到达的,这种情况说明存在交换机级连。对交换机B1而言, B5和B4通过同一目的端口F0/18,而到网关的端口号是F0/24,这说明B4和B5是B1的下游交换机,并且两者级连。
通过分析B4和B5交换机上的MAC转发表来判断B4和B5交换机的连接情况。交换机B4上的MAC转发表见表3 同样只保留了与交换机管理MAC地址有关的条目 。
与交换机B1对应的条目,这是因为发自B1的管理IP地址的数据包一般不通过B4,即上游交换机的数据包一般不通过下游交换机。这样,下游交换机的MAC转发表中不会拥有上游交换机的MAC转发条目。但每台交换机上都有指向网关的MAC转发条目因执行了“ping 61.140.216.255 ”命令 。由表3可知,到达交换机800.4ecc.89d8B5 的目的端口是F0/25,而到达00e0.1ece.1bd2的端口是F0/24 。这说明B5是B4的下游交换机, B4与上游交换机B1的端口是F0/24。根据B2、B3和B5交换机的MAC转发表,同理可以判断出B2、B3和B5到上游交换机的端口号,从而得知整个网络的拓扑结构。
4 寻找被Spanning Tree隐藏的连接。
由于B1、B2和B3之间运行了Spanning Tree协议,B2的端口F0/1处于Block阻塞 状态,采用上述方法无法得知B2和B3之间存在物理连接。这时,我们可以利用Spanning Tree协议本身的特点来发现B2和B3之间的连接。
根据Spanning Tree协议,每一个SegmentLAN交换机之间的LAN连接 存在一个DBDesignated Bridge,指定的桥 。与该Segment连接的交换机的端口都知道本Segment的DB的ID识别号 ,即不同交换机上的端口的DB ID相同,说明这些端口连接在同一Segment上。如在图1中,可以通过读取交换机的端口参数得知交换机B3的F0 / 1端口的DB ID是0032.0002.b9cf.1ac0,交换机B2的F0 / 1端口的DB ID同样是0032.0002.b9cf.1ac0,这说明B2的F0/1端口与B3的F0/1端口直连。通过该方法可以发现运行Spanning Tree 协议的网络结构。
如果全网都运行Spanning Tree协议,通过该方法可以快速而简单地发现其网络结构。但该方法不能使用在没有运行Spanning Tree协议的LAN上,所以当LAN是混合式时,应综合采用本文所介绍的方法。
事实上,通过SNMP协议同样可以获得上述步骤中的所有信息,从而为实现网管开发提供了条件。此外,笔者为叙述简单起见,在上文中假定由以太网交换机组成的LAN不支持VLAN技术。但实际上,上述方法同样适用于支持VLAN技术的LAN。因支持VLAN的LAN一定存在一个包含所有交换机在内的管理VLAN缺省情况下为VLAN 1 ,我们只需把上述方法针对“VLAN 1”进行分析,就可以很容易地得到这种LAN的物理拓扑结构。
Reply all
Reply to author
Forward
0 new messages