前言:我们精心挑选了数篇优质网络管理论文文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
由于SNMP网络管理的学习并不像普通的系统维护那么简单,它不但要求我们的网络管理员要深入了解网络中的交换和路由设备,还要求我们能够透彻认识SNMP协议原理,所以这种管理方式在大部分中小规模局域网中的运用并不多见。但因为SNMP是目前在计算机网络中用得最广泛的网络管理协议,所以我们可以肯定的说:一个连SNMP都不清楚的网络管理员就绝对不是一个好的网络管理员。本文中笔者将带领大家一步一步地去学习SNMP网络管理,尽量减少枯燥的理论知识、加大实践力度,将原本仿佛遥不可及的SNMP拉到大家的身边,让大家切身体会到SNMP网络管理在日常工作中的重要意义。
初识SNMP网络管理
SNMP的英文全称是SimpleNetworkManagementProtocol,中文名为简单网络管理协议,是一个基于TCP/IP协议的网络管理标准。SNMP网络管理包含两个部分:网络管理站(也叫管理进程,manager)和被管的网络单元(也叫被管设备)。网络管理站通常是一台安装了网络管理软件的计算机,可以显示所有被管设备的状态,我们一般称之为网管工作站;而被管设备则种类繁多,包括交换机、路由器、防火墙、服务器以及打印机等等,被管设备上的管理软件我们称之为进程,用于回答管理进程(网管工作站)的查询。图1显示了一个使用两台SNMP网管工作站进行网络管理的拓扑结构。
在图1中,两台网管工作站上面分别安装了SNMP网络管理软件,以对局域网中的所有的被管设备(交换机、路由器、防火墙和服务器)进行管理和监控,而被管设备上面则运行着进程,因此整个网络的管理就可以集中在这两台网管工作站上面来进行了。
SNMP网络管理包括三个组成部分:管理信息库MIB、管理信息结构SMI和SNMP网络管理协议。管理信息库(MIB)中存放的是被管设备的所有信息,比方说被管设备的名称、运行时间、接口速度、接口进来/发出的报文等等,当前的管理信息库版本为MIB-II;管理信息结构SMI用于定义管理信息库MIB的结构和表示符号,限制在MIB变量中允许的变量类型,指定对这些变量命名的规则以及创建定义变量类型的规则;而SNMP网络管理协议则是管理进程(位于网管工作站上)和进程(位于被管设备上)之间的通信协议。
SNMP网络管理定义了5种报文操作:
GetRequest操作:用于管理进程从进程上面提取一个或者多个MIB参数值,这些参数值均在管理信息库中被定义;
GetNextRequest操作:从进程上面提取一个或多个参数的下一个参数值;
SetRequest操作:设置进程的一个或多个MIB参数值;
GetResponse操作:进程返回一个或多个MIB参数值,它是前面三种操作中的响应操作;
Trap操作:这是进程主动向管理进程发出的报文,它标记出一个可能需要特殊注意的事件的发生,比方说重新启动可能就会触发一个Trap陷阱。
1我校计费系统网络管理整体情况
对网络的使用的度量方式有按照时间和流量两种方式。按照时间作为度量易于实现和检测。但由于网络访问不是一个匀速的过程,使用时间并不能准确描述用户对网络的使用量,因而使用访问产生的流量作为网络使用的度量是一个合理的选择。我校就是采用对入流量进行计费的计费策略。在我校使用根据流量进行计费的计费策略以来,网络流量成为了有价值的资源,因而出现了一些问题,主要有以下三点:①计费系统流量计量的准确性问题②IP地址抢夺方式的流量盗用问题③帐号被盗后的IP地址定位问题这些问题本身不是依靠计费系统所能解决的,需要通过网络管理的角度寻找解决方案。下面分别说明。
2网络管理计费系统流量计量的准确性
计费系统是根据每个IP包的包长进行累加的方法进行流量统计的。这个过程对用户来说是很难进行检验的,用户通常根据以前的经验值来估计每次访问所产生的流量。当用户的计算机上运行了非用户主动发起的程序(如各种系统打补丁程序或其他木马程序)而产生了非预期的网络时,计费系统所统计出的流量就会大大超过用户的经验值,用户就会产生计费系统流量统计不准的疑问,并向系统管理员提出质疑。管理员如果不能对用户的疑问进行解答,用户就会认为计费系统的流量计量有误,则使用计费系统进行流量计费的合理性就会得到校园网用户的质疑。计费系统会记录用户访问的日志,一方面这些日志不是很完备,另一方面如果仅使用计费系统自己的日志信息来验证自己流量统计的正确性,这就是通常所说的“既当运动员又当裁判员”,不具备客观性,因此需要通过独立于计费系统的方法来解决这个问题。网络上能够独立的捕获用户流量的最常见的设备就是交换机。我们通过从交换机获取的用户流信息来对计费系统流量统计的准确性进行验证。在处理此类问题的实际工作中,用户还需我们帮助分析产生流量的原因,比如是访问哪些IP地址产生的,这就需要网络层和传输层的信息。要达到这个目标,需要详细记录数据流的这些信息。
2.1流信息的获取来源
网络流天然的最小的单元就是数据包,每个数据包包含了其所属流的传输层和网络层的完整的信息,如果能将这些信息收集并存储下来,理论上就可以完成我们所需的功能。我们在计费系统的测试阶段就是按照这个方法去进行的,数据报的获取通过交换机的端口镜像功能来实现。使用这种方法在实践中帮助我们初步解决了这个问题,但是我们也发现了这种方法存在的问题:镜像口的流量需要和实际数据端口的流量一样大,当实际的数据端口超过千兆后,将很难找到合适的镜像端口。因此需要寻找其他的流量测量手段。以流为单位的流量测量正以其低测量开销的方式取代以分组为单位的流量测量[1]。我校出口网络是使用Cisco公司的网络设备,因而采用Cisco公司开发的用于采集IP数据流量的网络协议Netflow。我们在连接计费系统的网络设备上启用了netflow的相关配置,并且在三层接口下使用“ipflowingress”配置使交换机吐出的netflow数据与我校只对入流量进行计费的策略相一致。Netflow数据被发送到指定的服务器上,该服务器运行我们自己编制的程序获取netflow数据,提取所需的信息然后生成访问日志文件。该程序使用winpacp获取网络数据。
2.2日志文件组成
我们采用固定大小的文本文件来存储获取到的netflow数据。Netflow协议中包含流的定义和流的信息。流的定义使用五元组(源地址、目标地址、源端口、目标端口、协议类型),流的信息包含数据包数、流量数和时间。流的定义字段对分析流量的来源都是帮助的,要保留。流的信息中的数据包数和流量数是统计流量的重要数据,必须保留。流量测量中一个很重要的输入条件是时间,因而时间信息是需要保留的。但是过多的时间信息会占用大量的存储空间,而流量测量对时间的精确性没有很高的要求,只要能够将来自同一个IP的不同终端的网络流区分开就可以了。我校用户的IP地址采用DHCP方式获取,地址的租期是24小时。当计算机的IP的使用达到租期的一半时,计算机会自动重新进行地址的获取。这说明在IP地址停止使用后的至少12个小时内,该IP地址是不会分配给其他计算机的。也就是说来自同一个IP的不同终端的网络流从时间上至少相差12个小时。只要日志文件首尾两个网络流的时间间隔小于12小时,我们就可以使用首尾两个流的时间来满足上述区分网络流的要求。实践表明,当采用10M大小的文件时即使在访问量最小的凌晨每小时最少也要生成2个文件,完全可以满足上述要求。由于末尾网络流的时间和下一个文件的起始网络的时间几乎一样,因而我们只记录起始流的时间,并以此时间(准确到秒)作为文件名。Netflow日志文件中包含每条流的信息。流的信息中IP地址信息会大量重复的出现,是冗余度很高的信息。如果能够减少这些冗余信息将会减小日志文件的大小。流数据在文件的位置不影响流量测量和分析工作,因而我们采用将目标地址和源地址相同的流连续输出,如果和上一条流记录的目标IP地址相同,则不输出本条记录的目标IP。如果源IP地址也一样,则本条记录的源IP地址也不输出。通过这种方式日志文件的大小减少了近50%。
2.3从日志文件中查询流量详细信息
为了方便日志的查询工作,编写了流量统计的程序。输入条件是校内IP和查询的起止时间。读取当天的每个日志文件,根据文件名判断是否在查询的时间段内。如果在则查找对应的校内IP的流量记录,将来自相同校外IP的流的流量进行累加。由于netflow中的流量单位是字节,长整形的长度是32位,因而如果统计时采用1个长整形,最大的流量是4G字节。为了处理总量大于4G的流量查询,我们采用两个长整形来记录流量统计结果。一个的单位是字节,一个的单位是兆字节。
3IP地址抢夺方式的流量盗用问题
计费系统部署在校园网的出口,将相同目标IP的数据包的长度进行累计,作为该IP对应的帐号的访问流量。如果抢夺已经注册了帐号的IP地址,就等于盗取了别人的流量。目前我校校园网使用以太网。以太网是一种多路访问的广播网,同一个网段内的多个网络可终端共享同一个网络介质。这样一个IP地址可以被同网段的任何终端所共享,只要能够成功“欺骗”网络设备,抢夺他人的IP是可能的。我们需要采用其他的网络安全策略来防止IP地址的抢夺。根据IP抢夺的方式不同介绍两种安全策略。3.1修改IP的抢夺方式这种方法利用默认情况下网路设备对ARP的应答不进行检查,完全信任的问题。针对这个问题,多数网络设备已经开发出了ARP检查的功能,即用一种可信的IP和物理地址对应表来ARP的数据包进行检测,丢弃与可信对应表不一致的ARP数据包。由于DHCP是在学校得到广泛使用的IP地址分配方式,而且通过配置可以控制DHCP应答数据包仅来自可信的服务器,因而DHCP应答数据包中包含了可信的IP和物理地址对应关系,只要能够捕获并存储这些数据,就能够得到一张可信的IP和物理地址对应表,这就是DHCP嗅探功能,也已经成为主流交换机的基本功能。将DHCP嗅探功能和ARP检测功能配合起来就可以防止修改IP的抢夺方式的攻击。3.2修改MAC的抢夺方式攻击人还可以通过修改自己终端的物理地址的方式来获取他人的IP地址。网络层的参数如IP地址和网卡地址都可以仿冒,但是难以仿冒的是交换机接口。一旦用户的上网位置确定了,交换机的接口是固定的。因而只要将物理地址和交换机端口的对应关系存储下来,就可以有效的防止此类攻击。交换机的端口安全策略可以实现这种功能。交换机上的端口和MAC地址的对应表应该有老化时间。我校计费系统的账号的自行下线的条件是从发送最后一个数据包后一定时间之后。当IP地址对应的账号的已经下线了,IP地址抢夺过去也就没有意义了,MAC地址就应该可以不被绑定了。因而MAC地址的老化时间也应该按照此方式处理:(1)老化时间的起点以发出最后一个数据包开始;(2)老化时间的时长等于计费系统自行下线的时长。实际应用中,我们采用的网络设备多数已满足这个需求。添加了这些配置后用户终端的移动性受到了些影响,但是由于提高了安全性还是得到了校园网用户的认可。
4IP地址的定位问题
网络账号被盗用总是难以避免的,当盗用的案件发生时,账号注册的IP的位置信息对于破案是有极大的帮助的,这就需要网络能够进行IP定位。IP地址定位的需求是根据IP和时间可以确定IP对应的终端所在的位置,通常情况下位置能准确到房间就可以大大缩小嫌疑人排查的范围。目前我校的校园网综合布线的密度为每个自然间1-2个信息点,每个信息点对应一个接入层交换机的接口。因而使用接入层交换机的接口就足以描述IP地址的位置信息。IP地址的接入信息可以使用时间、IP、MAC和接口这个四元组进行描述。IP和MAC的关系存储在汇聚层交换机的ARP地址表中,MAC和接口的对应关系存储在接入层交换机的MAC地址表中。这两个数据表可以通过SNMP协议从网络设备中读取。通过对交换机上启用SNMP协议的相关配置,可定期从网络设备中读取所需的数据表信息,然后将互联接口的信息从MAC地址接入表中过滤掉,通过MAC地址将两个表格联合起来再加上执行读取操作时的时间戳就可以得到IP地址的接入信息。将这些信息存储起来就可以作为IP地址定位所需的日志。
5结论
节点的网络管理报文将和PGN、数据长度一起发送。网络管理报文的类型都可以通过标志位来识别,此标志位是网络管理CAN数据帧数据场的一部分。表3定义了网络管理报文的基本参数。表4定义了网络管理CAN数据帧的数据场的格式。以PD2014车型仪表为例,其网络管理报文格式见表5。
2直接网络管理策略
网络管理策略规定了节点网络管理报文的时序流程,其目的是建立和维护节点之间的联系。网络管理策略只是提供网络的状态信息,而不同状态的控制方法由应用程序负责。网络中各个节点状态见表7,状态之间的转换关系见图5。1)睡眠状态当睡眠条件满足时,节点需要进入睡眠状态。通过对Ring报文中的:“Sleepindi-cation=1”和“Sleepacknowledge=1”来切换到睡眠状态。睡眠协商通过以下步骤完成(图6):①睡眠条件满足后,下一个要发送的Ring报文中的位Sleepindication置1;②当Ring报文在逻辑环中传递一周,并且所有接收Ring报文中的位Sleepindication都被置1,那么最先发出Sleepindication=1Ring报文的节点发送Ring报文,并将位Sleepacknowledge置1;③所有接收到Sleepacknowledge=1的Ring报文的节点停止发送任何应用报文,所有节点进入到睡眠状态,启动定时器TWaitBusSleep,在TWaitBusSleep期间,没有网络启动条件发生,当TWaitBusSleep后总线进入非激活状态。2)网络启动每个节点的启动顺序都一样,见图7。图7表示了节点A发生了本地唤醒之后的网络启动顺序。①在tNwStartupLocal,A时间,节点A能够接收数据。为了唤醒网络上的其它节点,节点A发送激活报文。此唤醒报文开始了节点B和节点C的初始化。只要节点A没有接收到其它节点的CAN协议应答,节点A的CAN控制器将重复发送激活报文(总线负载为100%),直到被别的节点应答。②在节点A第一次发送激活报文之后的tNwStartupRemote,B时间,节点B能接收应用报文。节点B接收激活报文,同时CAN控制器进行应答。节点A的CAN控制器停止重复发送激活报文。③节点C比节点B的启动过程要慢。它没有接收到节点A的激活报文,在节点A第一次发送的激活报文之后的tNwStartupRemote,C时间,节点C也可以接收应用报文。④节点B在tNwStartupRemote,B时间,节点C在tNwStartupRemote,C时间分别发送各自的激活报文,但是这些报文不影响网络的启动行为。⑤tNwActive,A时间之后,节点A从网络启动状态转移到网络激活状态。这是节点A最早可以发送应用报文的时间,因为至少在此时,所有的节点能够接收应用报文。此时,节点A允许发送包含导致网络唤醒的信号信息的应用报文。3)激活状态在激活状态下,节点主要在“逻辑环”中进行Ring报文的接收和发送。4)跛行状态跛行状态表明网络通信存在故障。进入跛行状态的前提条件:NM报文发送失败;在TMax时间内没有收到有效的Ring报文。当以上情况的发生使得网络管理计数器NMRx-count、NMTxcount的数值超过各自的阈值NNm-RxLimit、NNmTxLimit时,节点进入跛行状态。跛行状态下,节点以Terror周期地发送LimpHome报文,使得网络上的所有节点仍然能够监听到它。接收到LimpHome报文的节点应更新自身网络的LimpHome配置。当总线进入睡眠或接收到任意一条NM报文后,LimpHome状态结束。
3PD2014车型CAN网络管理测试
PD2014网络管理测试主要包括:3轮台架测试,2轮labcar集成测试,2轮在车测试,1轮EMC测试,4轮道路试验。每轮测试包括间接网络管理测试和直接网络管理测试。间接网络管理测试包括网络启动性能测试、网络停止性能测试。直接网络管理测试包括正常网络管理通信测试、网络唤醒和睡眠测试、电源电压情况测试、网络启动测试、网络关闭测试、跛行状态下节点收发能力测试、网络管理配置测试。下面以直接网络管理中的睡眠测试为例,介绍网络管理台架测试的方法。1)测试设备笔记本电脑PC,CANcardXL(包含CANcab),插接件若干(DB9转接头、OBD-DB9转接头等),120Ω终端电阻(2个),可调电源。2)测试环境①如果待测节点未集成终端电阻,则电路需要连接图8中“1”和“2”终端网络;②如果待测节点集成了120Ω的终端电阻,则电路只需要连接图8中“1”终端网络。3)测试步骤①CANoe建立3个具备网络管理功能的虚拟节点;②启动CANoe,使虚拟节点在线;③本地事件触发DUT通信;④CANoe监测总线报文,查看DUT是否和虚拟节点建立稳定逻辑环;⑤满足DUT睡眠条件;⑥等待2000ms;⑦CANoe监测总线上的报文,查看DUT是否发送网络管理报文将“SleepIndication”位置“1”。4)评价指标DUT发送SI置1的Ring报文。
4结论