剖析千兆以太网交换机警报控制任务和监视任务,对于千兆以太网交换机的警报组的两个任务的描述,可能没有一个具体的模式,所以下面的警报监视任务问题以及网友给出的答复可能帮不了你的忙,获取事件。如果没有事件,阻塞于该操作。
警报组由两个任务组成:一个警报控制任务,一个警报监视任务。当SNMP代理执行了对MIB的操作后,会产生一个事件,由该事件激活警报控制任务。警报控制任务执行以下操作:
◆获取事件。如果没有事件,阻塞于该操作。
通过状态参数表与警报表比较,检查是否有新的警报任务中入。若有,要对这个新的警报任务进行初始化,首先获取该警报的监视对象alarm Variable,检查其标识符是否存在于MIB中,并且其值是否由ASN.1的INTEGER类型表示,否则无法进行监视。
然后在警报状态参数表中为新警报增加一个节点,并为该警报创建一个定时器:若alarmSampleType值为1,则定时间隔为设定的采样间隔alarmInterval;若千兆以太网交换机alarmSampleType值为2,则定时间隔为设定的采样间隔alarmInterval/2。
定时到期函数向警报组消息队列发一消息,消息值为该警报的索引值alarmIndex。***读取MIB中被监视对象的值,将其保存到千兆以太网交换机alarmValue中,并检查该当前值是否产生警报。
◆检查是否有已定义的千兆以太网交换机警报被删除。若有,删除相应的定时器,然后删除警报状态参数表中相应的节点。
警报监视任务执行以下千兆以太网交换机循环:
◆从警报消息队列接收定时器的消息,从消息中得到千兆以太网交换机警报索引;
◆由索引在警报表中得到监视的端口及监视的对象标识符,由该标识符读取MIB中的值sample;
◆检查千兆以太网交换机是否产生警报;
◆将此次读到的值保存到alarmValue中。