【51CTO.com 综合报道】什么是网络拓扑?
网络拓扑(Network Topology)是特定的物理,逻辑或虚拟网络部件和设备(节点)的排列。网络拓扑仅被在节点之间的连接配置决定。节点之间的距离,物理互连,传输率,和/或信号类型不作用在一个网络拓扑中。网络的“拓扑结构”是指网络的几何连接形状,画成图就叫网络“拓扑图”。目前应用最多的网络拓扑结构是星形结构,此外还有总线形和环形等网络结构。 现在流行的网络布线拓扑结构是总线型和星型。
总线形网络:是将所有电脑连接在一条线上,使用同轴电缆连接,就像一条线上栓着的几只蚂蚱,只适合使用在电脑不多的局域网上,因为电缆中的一段出了问题,其他电脑也无法接通,会导致整个网络瘫痪。系统中要使用 BNC 接口网卡、BNC-T 型接头、终结器和同轴细缆。
星形网络:使用双绞线连接,结构上以集线器(HUB)为中心,呈放射状态连接各台电脑。由于 HUB 上有许多指示灯,遇到故障时很容易发现出故障的电脑,而且一台电脑或线路出现问题不影响其他电脑,这样网络系统的可靠性大大增强。另外,如果要增加一台电脑,只需连接到 HUB 上就可以,很方便扩充网络,所以星形结构的网络现在非常流行。
要想管网络先来管拓扑
企业投入巨资购买了网络设备,搭建了广域网、局域网和Internet接入网络,而网络设备的种类和类型繁多,包括路由器、交换机、负载均衡和防火墙等等,正是这些网络设备为企业的运营,提供着一个强大的网络支撑。
因为,网络是错综复杂的,某个网络设备产生了问题,将会导致整个网络都不能正常访问,因此企业IT部门关注的不仅仅是单个的设备,更关注的是整个网络的链路连通性和网络的整体架构。所以如何才能快速的发现网络拓扑,并及时地展现各种网络拓扑是网络拓扑管理的焦点问题。
随着网络的不断扩充,全网网络拓扑已经超出了网络管理员的可控范围。因此,网络拓扑展现的准确与否,将直接影响网络管理员对网络网络结构的复杂化,网络设备管理工作是对网络管理者的考验,如何才能够轻松应对日常的管理工作成为了网络管理的焦点!
一站式完成拓扑自动发现
获得网络拓扑的最简单的方法莫过于让管理员根据实际网络手工绘出其拓扑,可是采用这种方式,不但工作量大,而且相关的节点和链路的准确性也不高。网管人员在手绘的时候还要借用相关的工具对网络的结构进行判定,主要使用如下工具
1.Ping
Ping命令是IP网上最古老的一种工具,用来监测网络节点是否活着,或用于监测到网络节点间的往返时延(RTT)。通常Ping只涉及网络上的源和目的两节点,而忽略网络细节。另外我们可以使用广播 Ping,其Ping的地址不是一个单一的地址,而是子网的广播地址,所有位于该子网的主机均对此Ping包进行响应,从而一次就可得到子网内的全部活动主机。
2、Traceroute
Traceroute命令是TCP/IP家族内另一个比较早的工具,它可用来发现测试点 和目标主机之间的路由器。路由器在转发包之前总是将其TTL值减1,如果TTL降为0,则路由器向源地址发送TTL-Expired ICMP消息。
3、DNS
IP地址是为网络上的路由器或主机等机器设计的,它不符合人类的记忆习惯,DNS(Domain Name System)就是为了解决这个问题而开发的。DNS系统主要用于网络设备IP地址到名字的映射,同时也维护一些其他信息如设备的硬件平台及操作系统等。
4、SNMP
SNMP(简单网络管理协议)的基本思想是所有的网络设备维护一个MIB(管理信息库)保存其所有运行进程的相关信息,并对管理工作站的查询进行响应。SNMP协议描述了一种从MIB库中获取信息的方法,对设备***的要求是支持SNMP并且MIB中的信息足够丰富。
现在网络越来越复杂,越来越庞大,并一直在膨胀,而且实体在网络中担负的功能也越来越复杂,要跟踪这样一个网络需要花费很多时间或精力,而且网络一旦有所改变所有工作必须重做。现在的企业基本上都采用的是网络拓扑自动发现的功能。那么一站式的拓扑发现才是企业现在最想要的。
网管软件的一站式自动发现拓扑的技术不仅能实现IP网络的拓扑自动发现,而且从发现到监控都是一站式完成,融合了网络常用工具的功能,极大的提升了效率,减少了网络管理的工作量,提高了网络管理自动化程度,网络自动发现引擎,能够快速的发现企业中二层和三层的网络设备,并根据发现设备之间的关系自动生成全局的二层或三层的网络拓扑结构图。经过网络拓扑结构的生成后,可以在拓扑图上看到整个网络的拓扑结构图,并能直观地看到各个资源的状态变化。
图1 |
网络拓扑自动发现算法使用的技术是ICMP(Ping)和SNMP。算法要求输入SNMP Read-Community,适用于发现同一个管理机构下的IP网络。算法首先从本地子网开始,通过Ping获取本地所有活动主机,利用SNMP区分出 普通主机和路由器,然后对路由器进行查询,下载路由器的System组、Interfaces组、IP组的信息。获取路由器直连的网络,进行下一轮运算, 直到发现所有网络或到达指定的深度(跳数)。
算法实现主要涉及四大模块:
1.主循环控制模块:程序初始化及算法深度控制,到达指定深度后跳出循环;
2.子网搜索模块:搜索子网内的所有活动主机和路由器;
3.ICMP模块:处理ECHO请求及应答;
4.SNMP模块:处理SNMP相关操作。
图2 |
算法中需要两个重要的类为RouterClass和NetClass。RouterClass包括两个指针分别指向IpList和NetList, IpList存放路由器的IP地址,NetList存放路有器连接的网络。NetClass包括两个指针分别指向Rconnect和Hconnect。
算法使用了两个集合:临时网络集合,已发现网络集合。临时网络集合用于存放当前深度和下一深度中还没有被搜索的网络,对已搜索的网络需要添加到已发现 网络集合。算法中为了避免多次发现同一路由器(因为路由器有多个IP地址),需要遍历路由器的IPList。
主要算法流程如下:
子网搜索模块
1.利用Ping搜索子网内所有的活动IP地址。
2.利用SNMP区分路由器和普通主机,并分别添加到NetClass的Rconnect和Hconnect。
3.针对每一个路由器,下载有关MIB变量(System组,Interfaces组,IP组),对MIB变量分析,分别写入RouterClass的IPList和NetList。
4.为防止路由器被多次发现,要遍历RouterClass的IPList。
5.将在3中发现的而又没有搜索的网络添加到深度为n+1的临时网络集合中。
主循环控制模块
1.从深度为n的临时网络集合中抽取一个子网进行子网搜索(调用子网搜索模块)。
2.将1中搜索的网络添加到已发现网络集合。
3.重复进行1和2直到临时网络集合为空。
4.如果n小于指定深度(n )
当拓扑发现结束后,拓扑中设备和链路的监控也通过一站式点击完成,从而让自动发现的网络拓扑真正的变成一站式点击完成。一站式快速的发现企业的网络设备,并根据发现设备之间的关系自动生成全局的网络拓扑结构图。当发生变化时,自动发现引擎能够及时调整网络的拓扑结构图,保证了与实际网络状态的一致。
酷点KoolPoint是一款功能强大的网络管理软件。不但具有强大的网络拓扑发现和展示功能,还可以通过一站式的点击完成相关的发现和监控的功能,帮助网管实现一站式操作,提高工作效率。真正的做到了让每个网络都有一个管理员!