核心交换机嵌入式重启装置研究与设计
需要特殊的系统接口。本系统采用Intel公司的NOR Flash 28F640芯片,其容量为8 MB,将其地址空间映射在ARM920T的bank0。 3 软件实现 3.1操作系统 ARM芯片获得了许多实时操作系统供应商的支持,有:Windows CE、Linux、Palm OS、VxWorks、pSOS、 Nucleus等。因Linux源代码的公开特性,Linux系统的应用越来越广泛。将Linux应用于ARM芯片,可以采用一些现成的针对ARM芯片的嵌入式Linux系统,也可根据需要自行对Linux内核进行裁剪。本系统采用自行裁剪的方法,使用make menuconfig命令对Linux内核进行配置,整个配置以维持系统运行的最小化为原则。需要注意的是内核应支持proc、ext2文件系统、UNIX domain sockets、TCP/IP networking、UART等选项,以保证系统能实现RJ-45口和RS-232接口对外通信。实现这些功能的内核静态压缩映像大约为500 KB[3]。为了实现系统功能,还需编写相应的网络接口和串口驱动程序,建立根文件系统。 3.2 引导加载程序 操作系统的启动离不开引导程序,Linux引导加载程序(BootLoader)由NOR Flash的地址0x0处开始执行,完成存储设备初始化、堆栈初始化、用户环境初始化等,最终BootLoader把操作系统内核映像加载到RAM中。本系统引导加载程序采用ARM-BOOT修改而成。 3.3主程序 主程序每次在设备开机后自动运行,在交换机上先配置一个VLAN接口用于与嵌入式设备通信。嵌入式设备的网络接口IP地址应与交换机的这个VLAN接口IP处于同一网段。为避免与常用私网地址冲突,可以将VLAN接口IP设为192.168.255.1,将嵌入式设备的网络接口IP地址设为192.168.255.2。定时器时间设为1 min,每隔1 min对交换机发送1次SNMP报文,获取交换机状态进行分析,如连续3次(3 min)发现通信失败或判定交换机状态异常,则对交换机进行重启。主程序流程图如图4所示。 3.4 交换机状态监测程序 简单网络管理协议(SNMP)是Internet组织用来管理Internet的网络协议,其定义了传送管理信息的协议消息格式及管理者和设备代理相互之间进行消息传送的规程。在SNMP管理模型中有三个基本组成部分:管理者(Manager),被管代理(Agent)和管理信息库(MIB)。管理者的管理工作是通过轮询代理来完成的,管理者可以通过SNMP 操作直接与被管代理通信,获得即时的设备信息,对网络设备进行远程配置管理或者操作,也可以通过对数据库的访问获得网络设备的历史信息,以决定网络配置变化等操作。SNMP被管代理是指用于跟踪监测被管理设备状态的特殊软件或硬件,每个代理都拥有自己本地的MIB。MIB信息即被管资源,而网络管理中的资源是以对象表示的,每个对象表示被管资源的某方面属性,这些对象形成了MIB库。MIB是一个树形结构,SNMP协议消息通过遍历MIB树形目录中的节点来访问网络中的设备。网络管理者通过对MIB库的存取访问实现配置管理、性能管理、故障管理、安全管理、计费管理等五大管理功能。SNMP提供有三类操作:Get、Set和Trap。Get操作实现对被管理对象所表示的管理信息的读操作,Set操作实现对被管理对象的管理信息进行写操作,Trap 操作实现被管理设备向管理工作站报告设备出现的异常事件。 交换机状态异常或死机的原因主要有:散热不好致温度过高;病毒攻击;交换机背板带宽过低;负荷过大等。交换机状态异常或死机最终表现为:CPU利用率和内存利用率过高、端口丢包率过大、与交换机端口连接不通等。因此,需要对交换机的CPU利用率、内存利用率、端口丢包率等进行监测,同时依据与交换机的SNMP通信是否正常来判断交换机是否出现异常或死机。本系统通过SNMP协议与交换机的SNMP被管代理通信,读取(Get)相应MIB节点数据,获知CPU利用率、内存利用率、端口丢包率等信息。 下面以华为3com公司的S7500系列交换机为例,说明本系统需要使用的MIB节点,如表1所示。 状态监测程序的流程图如图5所示。 3.5 交换机重启程序 远程监控一般是通过网络经交换机以太网口对交换机实行控制,大多数情况下是可行的,但在交换机死机时,所有端口都不通,无法通过以太网口对交换机发送命令,对交换机实行带内管理。对这种特殊情况,带外管理是唯一可行的方法。 带外管理是通过RS232总线与交换机的Console口进行串行通信,给交换机下达命令。一般波特率为9 600 b/s,无流控,每帧包括8位数据、1位起始位、1位停止位共计10 bit,无奇偶校验位。 本嵌入式系统实现了在核心交换


需要注意的是,不同交换机要实现重启,发送的指令字符可能不一样,要根据具体交换机型号而定。以华为3com公司的S7500系列交换机为例,重启程序的流程图如图6所示。
- 基于W5500+STM32的SNMP协议应用(11-26)
- net-snmp移植到arm(11-21)
- 成功移植NET-SNMP到ARM平台(11-11)
- net-snmp移植到ARM平台(11-09)
- 基于51单片机的嵌入式SNMP代理器设计与实现(01-03)
- Windows CE 进程、线程和内存管理(11-09)
