什么是网络拓扑?
网络拓扑结构解释
网络拓扑通常用线条和对象图表示,反映了整体的物理和逻辑拓扑。
有两种不同类型的网络拓扑:
- 物理网络拓扑是网络中各种组件的布局。不同的连接器代表物理网线,节点代表物理网络设备(如交换机)。
- 逻辑网络拓扑在更高的层次上说明了数据如何在网络中流动。
网络发现工具
不同的工具可以自动构建二层和/或三层网络的网络拓扑图。而且,大多数使用SNMP或其他远程监控协议的监控工具都可以提供网络地图。
发现二层网络拓扑
对于二层网络,可以通过不同的协议发现网络拓扑。一些供应商有更深奥的专有协议或网络发现机制(如网络广播等),但最流行的协议是:
- 链路层发现协议(LLDP)是一种基于IEEE 802技术的与供应商无关的链路层协议,网络设备使用该协议在局域网中发布自己的身份、能力和邻居。这使您能够自动发现和通告节点邻居。
- Cisco发现协议(CDP)是思科公司开发的一种专有的数据链路层协议,其他网络供应商也在使用和支持它。
这些协议可以通过侦听LLDP或CDP消息来确定谁或什么东西连接到了特定的网口,也可以用来宣布设备连接到了特定的端口。大多数交换机支持一种或两种协议。
另一种更复杂的方法是分析每个交换机的MAC地址表和/或生成树协议包,以找到MAC地址连接在哪里。由于所涉及的工作,这种方法通常是最后的手段。
发现三层网络拓扑
在基于ip的网络中,ICMP (Internet Control Message Protocol)是标准的发现协议。
一种用于识别不同网络跳的常用工具是traceroute (windows上的tracert),尽管有些实现可能使用UDP数据包而不是ICMP数据包。使用该协议可以查找报文的路径,发现逻辑网络和路由器。
在单个逻辑网络上,您可以使用广播ping、特定IP扫描工具或ARP缓存发现(在其他类似工具中)来识别同一网络中的不同节点。由于这些工具与广播边界的交互方式,它们只在单个网络中有效。
使用静态路由,可以很容易地显示配置。每个路由器都可以显示路由表项,以及这些表项中最近的路由器。然而,大多数现代网络使用路由协议来交换信息。
在动态路由协议(如OSPF或BGP)中,可以通过查询IP邻居来识别宣布或接收路由规则的路由器。
发现虚拟网络拓扑
您可以使用管理程序来帮助了解复杂的网络拓扑。每个管理程序至少添加一个虚拟交换机,用于将虚拟机网络连接到物理网络。
根据管理程序的不同,使用不同的解决方案来显示网络拓扑。例如在VMWare vSphere中,虚拟交换机支持CDP和LLDP协议。
在VMWare标准和ESXi环境下,虚拟交换机只支持CDP (listen and/or advertise)模式。VMware分布式虚拟交换机同时支持CDP和LLDP,但遗憾的是,CDP只包含在Enterprise Plus license(或VSAN或NSX license)中,而这些license通常不在SMB的范围内。
发现无线网络拓扑
大多数情况下,Wi-Fi网络使用工具,以简化部署和配置。例如,在AirWave 8.2.4中,Aruba引入了一个网络拓扑特性,这是有线网络的第二层图。一些工具还可以提供接入点定位和信号覆盖地图,以最大限度地提高Wi-Fi网络的效率。
一些智能手机应用程序可以提供Wi-Fi设备名称和ssid、信号级别和使用的通道,但使用这些工具不能提供相同的功能或用于无线网络部署的专业工具。
网络拓扑与网络流
检查您的网络拓扑结构是否符合其设计目的,并记录任何未知的网络或未知的网络更改,这些更改是什么时候进行的,由谁进行的,等等,都是很有用的。
为了更好地了解您的网络拓扑结构和网络流,请确保:
- 了解网络是如何使用的,以及在网络内部发生了哪些类型的通信和通信协议。
分析数据来理解交通。可以使用不同的协议查询交换机(和虚拟交换机),以获取原始数据包上的数据,或者在某些情况下,获取每个网络流上的数据。
在现代数据中心中,大多数流量可能是东西方向的,而不是南北方向的,并且您的网络拓扑对于这些情况可能不是最优的。