什么是网络拓扑?
网络拓扑通常由反映整体物理和逻辑拓扑的线段和对象图表示。
有两种不同类型的网络拓扑:
- 物理网络拓扑是各种网络组件的放置方式。不同的连接器代表物理网络电缆,节点代表物理网络设备(如交换机)。
- 逻辑网络拓扑可在更高的层次说明数据在网络中的流动方式。
网络发现工具
可以使用不同的工具自动构建第 2 层和/或第 3 层网络的网络拓扑图。此外,大多数使用 SNMP 或其他远程监控协议的监控工具都可以提供网络图。
发现第 2 层网络拓扑
对于第 2 层网络,您可以使用不同的协议来发现网络拓扑。一些供应商有更深奥的专有协议或网络发现机制(如网络广播等),但最主流的协议有:
- 链路层发现协议 (LLDP) 是一种供应商中立的链路层协议,网络设备可以使用它在基于 IEEE 802 技术的局域网上通告其身份、功能和临近的设备。您可以通过这一功能自动发现和通告临近的节点。
- Cisco 发现协议 (CDP) 是 Cisco 开发的一种专有数据链路层协议,其他网络供应商可以使用并对其提供支持。
这些协议可用于通过侦听 LLDP 或 CDP 报文来识别谁或什么设备连接到特定网络端口,还可以发布某个设备连接到特定端口。大多数交换机都支持其中一种协议或两种协议都支持。
另一种更复杂的方法是分析每个交换机的 MAC 地址表和/或生成树协议数据包,以找到 MAC 地址连接的位置。由于这个过程十分复杂,这种方法通常是最后的手段。
发现第 3 层网络拓扑
在基于 IP 的网络中,Internet 控制报文协议 (ICMP) 是标准的发现协议。
一种用于识别不同网络跃点的常用工具是 traceroute(Windows 上称为 tracert),尽管某些实现可能使用 UDP 数据包,而不是 ICMP 数据包。通过此协议,您可以找到数据包的路径并发现逻辑网络和路由器。
在单个逻辑网络上,您可以使用广播 ping、特定 IP 扫描工具或 ARP 缓存发现(以及其他类似工具)来识别同一网络中的不同节点。由于这些工具与广播边界的交互方式,它们仅在单个网络内才有效。
通过静态路由,可以非常轻松地显示配置。每个路由器都可以显示路由表项和这些项目中最近的路由器。然而,大多数现代网络都使用路由协议来交换信息。
通过动态路由协议(如 OSPF 或 BGP),您可以查询临近的 IP,以识别正在发布或接收路由规则的路由器。
发现虚拟网络拓扑
您可以使用管理程序来帮助发现复杂的网络拓扑。每个管理程序至少可以添加一个用于将虚拟机网络桥接到物理网络的虚拟交换机。
针对不同的管理程序,可以使用不同的解决方案来显示网络拓扑。例如,使用 VMWare vSphere,虚拟交换机可以支持 CDP 和 LLDP。
如果使用 VMWare 标准和 ESXi,虚拟交换机仅支持处于侦听和/或通告模式的 CDP。VMware 分布式虚拟交换机同时支持 CDP 和 LLDP,但不幸的是,它仅包含在 Enterprise Plus 许可证(或 VSAN 或 NSX 许可证)中,通常不在中小企业的考虑范畴之内。
发现无线网络拓扑
在大多数情况下,Wi-Fi 网络中会使用各种工具来简化部署和配置。例如,在 AirWave 8.2.4 中,Aruba 引入了网络拓扑功能,即第 2 层有线网络地图。一些工具还可以提供接入点定位和信号覆盖地图,以最大限度地提高 Wi-Fi 网络的效率。
一些智能手机应用程序可以提供 Wi-Fi 设备名称和 SSID、信号级和使用的信道,但使用这些工具并不能提供用于无线网络部署的相同功能或专业工具。
网络拓扑与网络流
检查您的网络拓扑是否符合其设计目的,并记录任何未知网络或未知网络更改、何时由谁进行的更改等做法都很有用。
为了更好地了解您的网络拓扑和网络流,请确保您:
- 了解网络的使用方式以及网络内部发生的流量和通信协议的类型。
分析数据,以了解流量。可以使用不同的协议查询交换机(和虚拟交换机),以获取原始数据包上的数据,或者在某些情况下获取每个网络流上的数据。
在现代数据中心中,大部分流量可能是东西向,而不是南北向,对于这些情况,您的网络拓扑可能不是最佳的。