CN114124642A - 电子设备及其执行的方法以及计算机可读介质 - Google Patents
电子设备及其执行的方法以及计算机可读介质 Download PDFInfo
- Publication number
- CN114124642A CN114124642A CN202010903812.2A CN202010903812A CN114124642A CN 114124642 A CN114124642 A CN 114124642A CN 202010903812 A CN202010903812 A CN 202010903812A CN 114124642 A CN114124642 A CN 114124642A
- Authority
- CN
- China
- Prior art keywords
- snmp
- request
- electronic device
- response
- timeout
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/046—Network management architectures or arrangements comprising network management agents or mobile agents therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及电子设备及其执行的方法以及计算机可读介质。电子设备包括其上存储有指令的存储器以及处理器。处理器被配置为执行存储在存储器上的指令以使电子设备执行以下操作:从网络管理站接收简单网络管理协议(SNMP)请求;响应于接收到SNMP请求,在电子设备处启动计时器,所述计时器的超时时段被设置为第一预定时间段;以及响应于在计时器超时时电子设备尚未完成SNMP请求所要求的操作,向网络管理站发送超时消息以作为对SNMP请求的响应。
Description
技术领域
本公开总体上涉及网络管理,并且更具体地,涉及简单网络管理协议(SNMP)。
背景技术
SNMP是Internet标准协议,其用于收集和组织有关IP网络上受管设备(manageddevice)的信息,以及修改该信息以更改设备行为。由于SNMP协议简单可靠,它在网络管理中得到了广泛应用。常见的网络设备都支持SNMP协议,例如电缆调制解调器、路由器、交换机、服务器、工作站、打印机等等。
在SNMP管理的网络(SNMP managed network)中,网络管理站(NetworkManagement Station,NMS)与运行在各个受管设备上的SNMP代理(Agent)通信。在典型的使用场景中,NMS可以向SNMP代理发送SNMP请求,SNMP代理根据接收到的SNMP请求执行操作,并向NMS返回SNMP响应,例如在响应中包含NMS所需要的参数。此外,当SNMP代理检测到其所处的受管设备上发生了重要事件时,也可以主动向NMS发送通知。
在SNMP操作中,NMS可能会遇到超时的情况。例如,在NMS发出SNMP请求后,NMS上的超时计时器已到期,但仍未收到来自SNMP代理的响应。这种SNMP超时可能是由多种原因引起的。例如,由于网络拥塞,SNMP请求或SNMP响应可能会被中间网络节点丢弃。又例如,由于受管设备禁用了SNMP或者受管设备的防火墙设置,也可能导致SNMP请求被受管设备丢弃。再例如,SNMP代理可能花费了过长的时间来处理SNMP请求,以至于在NMS上的超时计时器到期时仍无法发回响应。然而,当SNMP超时发生时,NMS无法判断造成超时的原因。从而,技术人员将不得不花费大量时间来确定超时的原因并寻求解决方案。
因此,需要改进的办法来应对SNMP超时的问题。
发明内容
本公开的一些方面涉及一种电子设备,其包括:存储器,其上存储有指令;以及处理器,被配置为执行存储在存储器上的指令以使电子设备执行以下操作:从网络管理站接收简单网络管理协议即SNMP请求;响应于接收到所述SNMP请求,在所述电子设备处启动计时器,所述计时器的超时时段被设置为第一预定时间段;以及响应于在所述计时器超时时所述电子设备尚未完成SNMP请求所要求的操作,向网络管理站发送超时消息以作为对SNMP请求的响应。
在一些实施例中,超时消息包括:根据SNMP请求所要操作的对象的对象标识符(OID)、以及指示在电子设备处发生了超时的信息。
在一些实施例中,电子设备包括多个子系统,并且超时消息进一步包括指示在超时发生时尚未完成SNMP请求的子系统的信息。
在一些实施例中,SNMP请求是SNMP WALK过程中所包括的GETNEXT请求或GETBULK请求,并且,超时消息中所包括的OID被用于继续SNMP WALK过程。
在一些实施例中,第一预定时间段小于网络管理站设置的用于监控SNMP请求的超时的第二预定时间段。
在一些实施例中,处理器还被配置为执行存储在存储器上的指令以使电子设备执行以下操作:响应于在所述计时器超时之前从网络管理站接收到与SNMP请求具有相同请求ID的重传的SNMP请求,停止对SNMP请求的处理,并向网络管理站发送超时消息以作为对所述重传的SNMP请求的响应。
在一些实施例中,超时消息符合与SNMP请求对应的SNMP响应的格式。
本公开的其他一些方面涉及一种由电子设备执行的方法,包括:从网络管理站接收简单网络管理协议即SNMP请求;响应于接收到所述SNMP请求,在所述电子设备处启动计时器,所述计时器的超时时段被设置为第一预定时间段;以及响应于在所述计时器超时时所述电子设备尚未完成SNMP请求所要求的操作,向网络管理站发送超时消息以作为对SNMP请求的响应。
在一些实施例中,超时消息包括:根据SNMP请求所要操作的对象的对象标识符(OID)、以及指示在电子设备处发生了超时的信息。
在一些实施例中,电子设备包括多个子系统,并且超时消息进一步包括指示在超时发生时尚未完成SNMP请求的子系统的信息。
在一些实施例中,SNMP请求是SNMP WALK过程中所包括的GETNEXT请求或GETBULK请求,并且,超时消息中所包括的OID被用于继续SNMP WALK过程。
在一些实施例中,第一预定时间段小于网络管理站设置的用于监控SNMP请求的超时的第二预定时间段。
在一些实施例中,所述方法进一步包括:响应于在所述计时器超时之前从网络管理站接收到与SNMP请求具有相同请求ID的重传的SNMP请求,停止对SNMP请求的处理,并向网络管理站发送超时消息以作为对所述重传的SNMP请求的响应。
本公开的其他一些方面涉及一种非瞬时性计算机可读介质,其上存储有指令,所述指令当由电子设备的处理器执行时使得电子设备执行以下操作:从网络管理站接收简单网络管理协议即SNMP请求;响应于接收到所述SNMP请求,在所述电子设备处启动计时器,所述计时器的超时时段被设置为第一预定时间段;以及响应于在所述计时器超时时所述电子设备尚未完成SNMP请求所要求的操作,向网络管理站发送超时消息以作为对SNMP请求的响应。
在一些实施例中,超时消息包括:根据SNMP请求所要操作的对象的对象标识符(OID)、以及指示在电子设备处发生了超时的信息。
在一些实施例中,电子设备包括多个子系统,并且超时消息进一步包括指示在超时发生时尚未完成SNMP请求的子系统的信息。
在一些实施例中,SNMP请求是SNMP WALK过程中所包括的GETNEXT请求或GETBULK请求,并且,超时消息中所包括的OID被用于继续SNMP WALK过程。
在一些实施例中,第一预定时间段小于网络管理站设置的用于监控SNMP请求的超时的第二预定时间段。
在一些实施例中,进一步包括当由电子设备的处理器执行时使得电子设备执行以下操作的指令:响应于在所述计时器超时之前从网络管理站接收到与SNMP请求具有相同请求ID的重传的SNMP请求,停止对SNMP请求的处理,并向网络管理站发送超时消息以作为对所述重传的SNMP请求的响应。
本公开的其他一些方面涉及一种由电子设备实施的装置,其包括用于执行根据上文描述的方法中的各个步骤的部件。
附图说明
为了更好地理解本公开,并示出如何实现本公开,现在将以举例的方式参照附图描述,其中:
图1示出了可以应用本公开实施例的示例性的SNMP管理的网络;
图2示出了示例性的管理信息数据库(MIB)的树状层次结构;
图3示出了根据本公开的实施例的可用于实现受管设备的示例性电子设备;
图4示出了根据本公开的实施例的用于处理SNMP请求的示例性方法的流程图;
图5A-5C示出了根据本公开的实施例的SNMP管理的网络中的示例性信令流程;
图6示出了根据本公开的实施例的在SNMP管理的网络中进行SNMP WALK过程的示例性信令流程。
注意,在整个附图中,相似的附图标记指代对应的部分。此外,同一部分的多个实例由通过破折号与实例编号分离的共同前缀指定。
具体实施方式
参考附图进行以下详细描述,并且提供以下详细描述以帮助全面理解本公开的各种示例实施例。以下描述包括各种细节以帮助理解,但是这些细节仅被认为是示例,而不是为了限制本公开,本公开是由随附权利要求及其等同内容限定的。在以下描述中使用的词语和短语仅用于能够清楚一致地理解本公开。另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
图1示出了可以应用本公开实施例的示例性的SNMP管理的网络。如图1所示,网络管理站(NMS)110与运行在各个受管设备120上的各个SNMP代理130通信。NMS 110与SNMP代理130之间是松散耦合的,它们之间的通信通常是通过用户报文协议(UDP)完成的。一般情况下,NMS 110可以向代理130发送SNMP请求,代理130根据接收到的SNMP请求执行操作,并向NMS 110返回SNMP响应。此外,当代理130检测到受管设备120上发生了重要事件时,也可以主动向NMS 110发送消息进行通知。
NMS 110可以运行在任何网络节点上。例如,NMS 110可以运行在专门的网络管理设备上,也可以运行在受管设备120上。此外,尽管图1中只示出了一个NMS 110,但是被管理的网络中可能存在一个或多个NMS。网络管理员可以通过NMS 110对各个受管设备120进行管理。
每个SNMP代理130会维护各自相应的管理信息数据库(MIB)140。MIB 140定义了受管设备120中的受管对象(managed object)的集合,受管对象通常也可以称为MIB对象或简称为对象。每个MIB对象具有相应的对象标识符(OID)。MIB对象的范围很广泛,可以包括网络管理所需的各种控制和状态信息。利用SNMP协议,NMS 110可以经由代理130来读取MIB140中的对象的值以收集NMS所需的各种信息,还可以经由代理130来设置MIB 140中的对象的值以更改受管设备120的配置。下面将结合图2更详细地描述MIB的结构。
图2示出了示例性的MIB的树状层次结构。MIB树的每个叶子节点代表一个MIB对象,而MIB树的中间层的分支节点表示的是MIB对象的逻辑分组。每个节点都可以由一个OID来唯一标识,并且通常还具有相应的节点名称。通常,OID是由点分隔开的一组整数,也就是从根节点通往它的路径。
例如,如图2所示,分支节点internet的OID是1.3.6.1;其下面的分支节点mgmt表示管理,其OID是1.3.6.1.2;继续往下,分支节点mib-2表示管理信息库,其OID是1.3.6.1.2.1;继续往下,示例性地示出了4个分支节点,分别是system,interface,at和ip,其OID分别是1.3.6.1.2.1.1,1.3.6.1.2.1.2,1.3.6.1.2.1.3和1.3.6.1.2.1.4。这里,system表示受管设备(例如网关、路由器等)系统的总体信息,interface表示各个网络接口的相关信息,at表示地址转换的相关信息,ip表示IP协议的实现和运行相关信息。节点mib-2还可以具有更多的分支节点,为简洁起见,图2中并未示出。MIB树可以继续往下分支,直至叶子节点。例如,叶子节点sysName表示受管设备的名称这一MIB对象,其OID是1.3.6.1.2.1.1.5,对象值是受管设备名称的字符串。本领域技术人员将理解,由于叶子节点sysName为标量节点,在访问该叶子节点对应的对象时,需要在其OID后加上.0(即1.3.6.1.2.1.1.5.0)以表明访问该对象的实例。需要说明的是,图2的MIB树仅仅是表示MIB层次结构的示例,图2并未示出所有的分支,并且MIB还可以有许多其它形式。
回到图1。由NMS 110向代理130发送的SNMP消息的类型有多种,通常可以包括GET、GETNEXT、GETBULK和SET请求。
通过GET请求,NMS 110可以获取受管设备120中与GET请求中包含的OID对应的对象值。通过GETNEXT请求,NMS可以获取GETNEXT请求中包含的OID在MIB树中的下一对象的OID及其对象值。GETBULK请求与GETNEXT请求类似,但是每次可以获取GETBULK请求中所包含的OID在MIB树中接下来的多个对象的OID以及相应的多个对象值,相当于连续执行多次GETNEXT操作。在GETBULK请求中可以定义每次获取的OID及对象值的数量,相当于执行GETNEXT操作的次数。
基于GETNEXT或GETBULK请求,NMS 110可以执行一种名为SNMP WALK的SNMP操作。SNMP WALK过程可以包括自动迭代执行的一系列GETNEXT或GETBULK请求,以遍历MIB树中满足条件的所有叶子节点。具体而言,在SNMP WALK过程的命令行中可以给定一个OID,据此,一系列GETNEXT或GETBULK请求将被迭代执行以获取该给定OID下面的MIB子树中的所有叶子节点(即MIB对象)的值。例如,参考图2,如果SNMP WALK的命令行中包括的OID是1.3.6.1.2.1.1,即MIB树中的分支节点system,那么执行SNMP WALK过程将返回分支节点system下面的所有叶子节点的OID及其对象值。
SET请求可用于由NMS 110来改变受管设备120中与SET请求中的OID对应的对象值。通过SET请求,NMS 110可以更改受管设备120的配置或控制受管设备120的运行状态。例如,NMS 110可以通过SET请求来设置受管设备120的名称、关闭受管设备120上的端口、清除受管设备120的地址解析表中的项,等等。
由代理130向NMS 110发送的SNMP消息通常包括对NMS 110发送的SNMP请求的响应以及TRAP消息。通过TRAP消息,代理130可以主动向NMS 110通报重要事件。例如,TRAP消息可以用来通知NMS 110线路故障、连接的中断和恢复、认证失败等。
需要注意的是,尽管图1中示出每个受管设备120上只有一个代理130,但是受管设备120上也可以有多个代理130分别负责不同的设备模块。此外,在有些情况下,受管设备120上可以存在一个主代理(master agent)和多个子代理(sub-agent),协作完成代理130的功能。
如上文描述过的,在SNMP操作中,NMS可能会遇到超时的情况。例如,在NMS向代理发出SNMP请求后,NMS上的超时计时器已到期,但仍未收到来自代理的响应。这种SNMP超时可能是由多种原因引起的,包括网络拥塞、受管设备设置、代理处理SNMP请求的时间过长等等。
而且,随着网络设备的模块化设计的普及,发生SNMP超时的情况越来越常见。例如,受管设备可能包括彼此通信的多个子系统。对于需要读取受管设备的运行时信息的某些GET或GETNEXT请求,代理可能需要花费大量的时间来从不同的子系统来收集所请求的信息,导致超时的发生。例如,无线接入点(AP)设备在根据来自NMS的SNMP请求收集Wi-Fi客户端信息时可能需要花费很长的时间,尤其是当有大量的Wi-Fi客户端连接到AP的情况下,从而导致SNMP超时的发生。
根据现有的SNMP方案,当SNMP超时发生时,NMS无法判断造成超时的原因,这将导致技术人员花费大量时间来确定超时的原因并寻求解决方案。
此外,SNMP超时还会导致SNMP WALK过程的中断。在SNMP WALK过程中,一旦SNMP代理在处理其中某一个GETNEXT或GETBULK请求时出现问题,导致发生SNMP超时,则SNMP WALK过程将被中断,因为NMS没有收到来自代理的响应,也就无法确定下一个GETNEXT或GETBULK请求中所要包含的OID。
因此,需要改进的办法来应对SNMP超时的问题。
图3示出了根据本公开的实施例的可用于实现受管设备的示例性电子设备。该电子设备可以用于实现例如图1中的受管设备120。并且,该电子设备可以是能够工作在网络上的各种设备,例如电缆调制解调器、路由器、交换机、服务器、工作站、打印机等等。
如图3所示,电子设备300可以包括处理子系统310、存储器子系统312和联网子系统314。处理子系统310包括配置成执行计算操作的一个或多个器件。例如,处理子系统310可以包括一个或多个微处理器、ASIC、微控制器、可编程逻辑设备、图形处理器单元(GPU)和/或一个或多个数字信号处理器(DSP)。程序指令322可以由处理子系统310执行以使得电子设备300执行本文所描述的各种操作。
存储器子系统312包括用于存储数据和/或用于处理子系统310和联网子系统314的指令的一个或多个设备。例如,存储器子系统312可以包括动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)和/或其他类型的存储器(有时统称为或者单独称为“计算机可读存储介质”)。
在一些实施例中,存储器子系统312被耦合到一个或多个高容量大容量存储设备(未示出)。例如,存储器子系统312可以耦合到磁或光驱动器、固态驱动器或另一类型的大容量存储设备。在这些实施例中,电子设备300可以将存储器子系统312用作经常使用的数据的快速访问存储,而大容量存储设备用于存储不频繁使用的数据。
联网子系统314包括被配置成耦合到有线和/或无线网络并在有线和/或无线网络上通信(即,以执行网络操作)的一个或多个设备,包括:控制逻辑316、接口电路318和一个或多个天线320(或天线元件)。(虽然图3包括一个或多个天线320,但是在一些实施例中,电子设备300包括一个或多个节点,诸如节点108,其可以耦合到一个或多个天线320。因此,电子设备300可以包括或者可以不包括一个或多个天线320。)例如,联网子系统314可以包括蓝牙联网系统、蜂窝联网系统(例如,3G/4G/5G网络,诸如UMTS、LTE等)、USB联网系统、基于IEEE 802.11中描述的标准的联网系统(例如,Wi-Fi联网系统)、以太网联网系统和/或另一联网系统。
在电子设备300内,使用总线328将处理子系统310、存储器子系统312和联网子系统314耦合在一起。总线328可以包括子系统可以被用于传达命令和数据等等的电、光和/或电光连接。尽管为了清楚起见仅示出一条总线328,但是不同的实施例可以包括在子系统当中的不同数量或配置的电、光和/或电光连接。
在一些实施例中,电子设备300包括用于在显示器上显示信息的显示子系统326,其可以包括显示器驱动器和显示器,诸如液晶显示器、多点触摸屏等。
尽管使用特定组件来描述电子设备300,但是在替选实施例中,电子设备300中可以存在不同的组件和/或子系统。例如,电子设备300可以包括一个或多个附加处理子系统、存储器子系统、联网子系统和/或显示子系统。另外,电子设备300中可能不存在子系统中的一个或多个。此外,在一些实施例中,电子设备300可以包括在图3中未示出的一个或多个附加子系统。另外,尽管在图3中示出单独的子系统,但是在一些实施例中,给定子系统或组件的一些或全部可以集成到电子设备300中的其他子系统或组件中的一个或多个中。例如,在一些实施例中,程序指令322被包括在操作系统324中并且/或者控制逻辑316包括在接口电路318中。
如上文所述,现有的SNMP方案中,如果在NMS处发生SNMP超时,技术人员往往需要花费大量时间来确定超时的原因并寻求解决方案。为此,根据本公开的实施例,可以在受管设备上设置计时器(下文称为内部计时器,因为其相对于NMS处的计时器而言处于受管设备内部),其具有相应的内部超时时段。一旦受管设备接收到来自NMS的SNMP请求,就启动内部计时器。如果在内部计时器到期时,受管设备上的代理仍未完成SNMP请求所要求的操作(例如尚未获取到所需的对象值,或者尚未设置好指定的对象值),则向NMS发送超时消息(下文称为内部超时消息),以作为对SNMP请求的响应。这样,NMS可以及时了解到,受管设备上的SNMP代理的处理时间过长,这表明与该请求针对的OID相关的硬件或软件可能存在故障或缺陷。从而,技术人员可以及时并且有针对性地对受管设备进行修复,而无需再逐一排除网络拥塞、中间网络节点设置(例如防火墙设置)、受管设备设置(例如受管设备上禁用了SNMP、认证失败、防火墙设置)等可能的原因。
下面将结合图4-图6对本公开的实施例及其优点进行更详细的描述。
图4示出了根据本公开的实施例的用于处理SNMP请求的示例性方法的流程图。图4的方法可以由例如图3所示的电子设备300作为受管设备来执行。并且,受管设备(例如图1示出的受管设备120)可以通过运行其上的SNMP代理(例如图1示出的代理130)来执行图4所示的方法。
在410,受管设备从NMS(例如图1示出的NMS 110)接收SNMP请求。该SNMP请求可以是例如GET请求、SET请求、GETNEXT请求、GETBULK请求、或是符合SNMP协议的任何其它请求。该SNMP请求也可以是SNMP WALK过程中所包括的GETNEXT请求或GETBULK请求。
在420,受管设备响应于接收到SNMP请求,在受管设备处启动计时器(即,内部计时器),该计时器的超时时段被设置为第一预定时间段(即,内部超时时段)。该内部超时时段可以设置为例如3秒、5秒、10秒、或任何其它合适的值。
在430,响应于在内部计时器超时时受管设备尚未完成SNMP请求所要求的操作,受管设备向NMS发送超时消息(即,内部超时消息)以作为对该SNMP请求的响应。例如,如果在内部计时器超时发生时,受管设备上的SNMP代理尚未获取到GET请求所要求的对象值,或者尚未设置好SET请求所指定的对象值,则受管设备可以向NMS发送超时消息,以作为对SNMP请求的响应。
根据一个实施例,受管设备处的内部超时时段可以设置为小于NMS处的超时时段(下文称为外部超时时段)。这样,在NMS处发生超时(下文称为外部超时)之前,NMS即可收到来自受管设备的作为SNMP响应的内部超时消息。从而,NMS不会发生外部超时。不过,在有的情况下,内部超时时段是由受管设备而非NMS设置的,受管设备可能并不知道NMS处的外部超时时段是多少,因而可能存在内部超时时段被设置得大于外部超时时段的情况。在这种情况下,在受管设备上的内部计时器超时之前,就有可能发生了外部超时,从而受管设备会收到来自NMS的重传的SNMP请求,其通常是与前一SNMP请求具有相同请求ID的请求。根据一个实施例,响应于在内部计时器超时之前收到来自NMS的重传的SNMP请求,受管设备可以立即停止对前一SNMP请求的处理,并向NMS发送内部超时消息以作为对重传的SNMP请求的响应。NMS收到该内部超时消息后,即知晓在该受管设备处发生了内部超时,从而技术人员可以及时对该受管设备进行修复。并且,NMS可以避免再次重传该SNMP请求。
根据一个实施例,受管设备所发送的内部超时消息中可以包括指示在受管设备处发生了超时的信息,例如“内部超时”的字符串或是任何其它指示受管设备处的内部超时的指示符。
该内部超时消息中还可以包括根据SNMP请求所要操作的对象的OID。对于GET请求,该内部超时消息中包含的OID就是GET请求所包含的OID,即,NMS需要获取其信息的对象的OID。对于SET请求,该内部超时消息中包含的OID就是SET请求所包含的OID,即,NSM需要对其进行设置的对象的OID。对于GETNEXT请求,该内部超时消息中包含的OID是GETNEXT请求所包含的OID的下一对象的OID。对于GETBULK请求,该内部超时消息中包含的OID是GETBULK请求所包含的OID的接下来的多个对象的OID。
内部超时消息可以符合在正常情况下(即,未超时)由SNMP代理发出的正常SNMP响应的格式,其同样会包含根据SNMP请求所要操作的对象的OID。用于指示内部超时的信息可以放置在正常SNMP响应的OID值字段中。
对于SNMP WALK过程,在内部超时消息中包括根据SNMP请求所要操作的对象的OID具有进一步的好处。具体而言,即使WALK过程中的某个GETNEXT请求(或GETBULK请求)发生了内部超时,SNMP代理仍然会通过内部超时消息向NMS返回下一对象的OID,从而,NMS可以基于该OID继续发出下一GETNEXT请求,使得WALK过程可以继续进行,而不会发生中断。因此,即使由于受管设备的故障或缺陷导致某个对象的值无法获取,也不影响SNMP WALK过程的顺利完成。下文将会结合图6对此进行更详细的描述。
根据一个实施例,内部超时消息中可以进一步包括指示在内部超时发生时尚未完成SNMP请求的子系统的信息。对于包括多个子系统的受管设备,位于一个子系统上的SNMP代理可能需要从其它各个子系统收集SNMP请求所需的信息,或根据SNMP请求对不同的子系统中的对象进行设置。例如,对于家庭网关设备,SNMP代理、Wi-Fi芯片、WLAN接口可能分别位于不同的子系统上,而SNMP请求可能需要获取Wi-Fi芯片和WLAN接口二者中的对象的信息。为此,SNMP代理可能需要分别向Wi-Fi芯片和WLAN接口所位于的子系统请求相关信息。内部超时发生时,SNMP代理可能已经收到了来自WLAN接口的响应,但尚未收到来自Wi-Fi芯片的响应。这有可能是由于Wi-Fi芯片所处的子系统发生了故障。这种情况下,在内部超时消息中包括指示与Wi-Fi芯片相关联的子系统的信息,有助于NMS进一步确定受管设备中存在问题的具体子系统,从而技术人员可以以更高的效率进行处理。
图5A-5C示出了根据本公开的实施例的SNMP管理的网络中的示例性信令流程。
图5A示出的是没有发生超时的情形。如图5A所示,一开始,NMS 110向受管设备120上的代理130发送SNMP请求510,并且启动NMS上的计时器Timer2。响应于接收到SNMP请求510,代理130启动内部计时器Timer1,并且开始执行SNMP请求510所要求的操作。在图5A所示的例子中,Timer1的内部超时时段小于Timer2的外部超时时段。在Timer1到期之前,代理130已经完成了SNMP请求510所要求的操作,并且向NMS 110返回正常的SNMP响应520。一旦返回了SNMP响应520,Timer1即可重置。
图5B示出的是发生了内部超时的情形。如图5B所示,一开始,NMS 110向受管设备120上的代理130发送SNMP请求530,并且启动NMS上的计时器Timer2。响应于接收到SNMP请求530,代理130启动内部计时器Timer1,并且开始执行SNMP请求530所要求的操作。在图5B所示的例子中,Timer1的内部超时时段小于Timer2的外部超时时段。在Timer1到期时,代理130还未完成SNMP请求530所要求的操作。因此,响应于Timer1到期,代理130向NMS 110返回内部超时消息540,作为对SNMP请求530的响应。并且,代理130可以停止继续执行SNMP请求所要求的操作。由于NMS 110在Timer2到期之前就收到了响应,在NMS 110处不会发生外部超时。而且,收到内部超时消息540后,NMS 110可以确定受管设备120上的代理130发生了内部超时,从而技术人员可以及时并且有针对性地对受管设备120进行修复。
图5C示出的是发生了外部超时的情形。如图5C所示,一开始,NMS 110向受管设备120上的代理130发送SNMP请求550,并且启动NMS上的计时器Timer2。响应于接收到SNMP请求550,代理130启动内部计时器Timer1,并且开始执行SNMP请求550所要求的操作。在图5C所示的例子中,Timer1的内部超时时段大于Timer2的外部超时时段。在Timer2到期时,代理130还未完成SNMP请求550所要求的操作,因而没有向NMS发送任何响应。因此,响应于Timer2到期,NMS 110向代理130重传具有相同请求ID和内容的SNMP请求552。尽管Timer1尚未到期,一旦收到重传的SNMP请求552,代理130可以立即停止对SNMP请求550的处理,并向NMS 110发送内部超时消息560以作为对重传的SNMP请求552的响应。收到内部超时消息560后,NMS 110可以确定受管设备120上的代理130发生了内部超时,从而技术人员可以及时并且有针对性地对受管设备120进行修复。
图6示出了根据本公开的实施例的在SNMP管理的网络中进行SNMP WALK过程的示例性信令流程。在图6的例子中,假设代理130处的Timer1的内部超时时段小于NMS 110处的Timer2的外部超时时段。在图6中,为简明起见,与图5类似的细节(例如计时器的启动)未全部示出。
如图6所示,在WALK过程一开始,NMS 110向受管设备120上的代理130发送第一个GETNEXT请求610(请求610中包括OID1)。一旦代理130收到GETNEXT请求610,就启动内部超时计时器Timer1。在Timer1到期之前,代理130获得了GETNEXT请求610所要求的下一个对象OID2和该OID2对应的对象值,并向NMS 110发送正常的响应消息620。随后,NMS 110利用响应消息620中的OID2,发送第二个GETNEXT请求630(请求630中包括OID2)。一旦代理130收到GETNEXT请求630,就重新启动Timer1。在Timer1到期时,代理130还未获得GETNEXT请求630所要求的下一个对象OID3的对象值。因此,响应于Timer1到期,代理130向NMS 110返回内部超时消息640,作为对GETNEXT请求630的响应。该内部超时消息640中包含有OID3以及指示在受管设备处发生了超时的信息,例如“内部超时”的字符串。随后,NMS 110利用内部超时消息640中的OID3,发送第三个GETNEXT请求650(请求650中包括OID3)。代理130收到GETNEXT请求650后,重新启动Timer1,并进行操作以获取GETNEXT请求650所要求的下一个对象OID4和该OID4对应的对象值。依次类推,直至处理完WALK过程所针对的所有对象。从图6可以看到,尽管针对第二个GETNEXT请求630的处理发生了内部超时,因而NMS 110没有获得OID3的对象值,但是SNMP WALK过程仍然能顺利完成而不会中断,而且NMS 110获得了其余OID的对象值。并且,NMS 110了解到受管设备120上与OID3相关的硬件或软件可能存在故障,从而可以进行相应的修复。
本领域技术人员可以理解,虽然前述实施例中的一些操作以软件来实现,但是总体上,这些实施例中的操作可以以多种配置和架构来实现。因此,本公开的实施例中的一些或全部操作可以以硬件、软件或两者来执行。例如,可以使用电子设备300的程序指令322、操作系统324(诸如用于接口电路318的驱动器)或在接口电路318中的固件中实现通信技术中的至少一些操作。可替选地或另外,通信技术中的至少一些操作可以在物理层,诸如电子设备300的接口电路318中的硬件中实现。
本公开可以被实现为装置、系统、集成电路和非瞬时性计算机可读介质上的计算机程序的任何组合。可以将一个或多个处理器实现为执行本公开中描述的部分或全部功能的集成电路(IC)、专用集成电路(ASIC)或大规模集成电路(LSI)、系统LSI,超级LSI或超LSI组件。
根据本公开的方法的各步骤,也可以由包括在装置中的多个部件来分别执行。根据一个实施例,这些部件可以实施为为了实现该方法的各步骤所建立的计算机程序模块,而包括这些部件的装置可以是通过计算机程序来实现该方法的程序模块构架。
本公开包括软件、应用程序、计算机程序或算法的使用。可以将软件、应用程序、计算机程序或算法存储在非瞬时性计算机可读介质上,以使诸如一个或多个处理器的计算机执行上述步骤和附图中描述的步骤。例如,一个或多个存储器以可执行指令存储软件或算法,并且一个或多个处理器可以关联执行该软件或算法的一组指令,以根据本公开中描述的实施例在任何数量的无线网络中增强安全性。
软件和计算机程序(也可以称为程序、软件应用程序、应用程序、组件或代码)包括用于可编程处理器的机器指令,并且可以以高级过程性语言、面向对象编程语言、功能性编程语言、逻辑编程语言或汇编语言或机器语言来实现。术语“计算机可读介质”是指用于向可编程数据处理器提供机器指令或数据的任何计算机程序产品、装置或设备,例如磁盘、光盘、固态存储设备、存储器和可编程逻辑设备(PLD),包括将机器指令作为计算机可读信号来接收的计算机可读介质。
举例来说,计算机可读介质可以包括动态随机存取存储器(DRAM)、随机存取存储器(RAM)、只读存储器(ROM)、电可擦只读存储器(EEPROM)、紧凑盘只读存储器(CD-ROM)或其他光盘存储设备、磁盘存储设备或其他磁性存储设备,或可以用于以指令或数据结构的形式携带或存储所需的计算机可读程序代码以及能够被通用或专用计算机或通用或专用处理器访问的任何其它介质。如本文中所使用的,磁盘或盘包括紧凑盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘和蓝光盘,其中磁盘通常以磁性方式复制数据,而盘则通过激光以光学方式复制数据。上述的组合也包括在计算机可读介质的范围内。
在一个或多个实施例中,词语“能”、“能够”、“可操作为”或“配置为”的使用是指被设计成能够以指定方式使用的一些装置、逻辑、硬件和/或元件。提供本公开的主题作为用于执行本公开中描述的特征的装置、系统、方法和程序的示例。但是,除了上述特征之外,还可以预期其他特征或变型。可以预期的是,可以用可能代替任何上述实现的技术的任何新出现的技术来完成本公开的部件和功能的实现。
另外,以上描述提供了示例,而不限制权利要求中阐述的范围、适用性或配置。在不脱离本公开的精神和范围的情况下,可以对所讨论的元件的功能和布置进行改变。各种实施例可以适当地省略、替代或添加各种过程或部件。例如,关于某些实施例描述的特征可以在其他实施例中被结合。
类似地,虽然在附图中以特定次序描绘了操作,但是这不应该被理解为要求以所示的特定次序或者以顺序次序执行这样的操作,或者要求执行所有图示的操作以实现所希望的结果。在某些情况下,多任务处理和并行处理可以是有利的。
Claims (20)
1.一种电子设备,包括:
存储器,其上存储有指令;以及
处理器,被配置为执行存储在所述存储器上的指令以使所述电子设备执行以下操作:
从网络管理站接收简单网络管理协议即SNMP请求;
响应于接收到所述SNMP请求,在所述电子设备处启动计时器,所述计时器的超时时段被设置为第一预定时间段;以及
响应于在所述计时器超时时所述电子设备尚未完成所述SNMP请求所要求的操作,向所述网络管理站发送超时消息以作为对所述SNMP请求的响应。
2.根据权利要求1所述的电子设备,其中所述超时消息包括:根据所述SNMP请求所要操作的对象的对象标识符即OID、以及指示在所述电子设备处发生了超时的信息。
3.根据权利要求2所述的电子设备,其中所述电子设备包括多个子系统,并且所述超时消息进一步包括指示在超时发生时尚未完成所述SNMP请求的子系统的信息。
4.根据权利要求2所述的电子设备,其中,所述SNMP请求是SNMP WALK过程中所包括的GETNEXT请求或GETBULK请求,并且,所述超时消息中所包括的所述OID被用于继续所述SNMPWALK过程。
5.根据权利要求1所述的电子设备,其中,所述第一预定时间段小于所述网络管理站设置的用于监控所述SNMP请求的超时的第二预定时间段。
6.根据权利要求1所述的电子设备,其中所述处理器还被配置为执行存储在所述存储器上的指令以使所述电子设备执行以下操作:
响应于在所述计时器超时之前从所述网络管理站接收到与所述SNMP请求具有相同请求ID的重传的SNMP请求,停止对所述SNMP请求的处理,并向所述网络管理站发送所述超时消息以作为对所述重传的SNMP请求的响应。
7.根据权利要求1所述的电子设备,其中,所述超时消息符合与所述SNMP请求对应的SNMP响应的格式。
8.一种由电子设备执行的方法,包括:
从网络管理站接收简单网络管理协议即SNMP请求;
响应于接收到所述SNMP请求,在所述电子设备处启动计时器,所述计时器的超时时段被设置为第一预定时间段;以及
响应于在所述计时器超时时所述电子设备尚未完成所述SNMP请求所要求的操作,向所述网络管理站发送超时消息以作为对所述重传的SNMP请求的响应。
9.根据权利要求8所述的方法,其中所述超时消息包括:根据所述SNMP请求所要操作的对象的对象标识符即OID、以及指示在所述电子设备处发生了超时的信息。
10.根据权利要求9所述的方法,其中所述电子设备包括多个子系统,并且所述超时消息进一步包括指示在超时发生时尚未完成所述SNMP请求的子系统的信息。
11.根据权利要求9所述的方法,其中,所述SNMP请求是SNMP WALK过程中所包括的GETNEXT请求或GETBULK请求,并且,所述超时消息中所包括的所述OID被用于继续所述SNMPWALK过程。
12.根据权利要求8所述的方法,其中,所述第一预定时间段小于所述网络管理站设置的用于监控所述SNMP请求的超时的第二预定时间段。
13.根据权利要求8所述的方法,进一步包括:
响应于在所述计时器超时之前从所述网络管理站接收到与所述SNMP请求具有相同请求ID的重传的SNMP请求,所述电子设备停止对所述SNMP请求的处理,并向所述网络管理站发送所述超时消息以作为对所述重传的SNMP请求的响应。
14.一种非瞬时性计算机可读介质,其上存储有指令,所述指令当由电子设备的处理器执行时使得所述电子设备执行以下操作:
从网络管理站接收简单网络管理协议即SNMP请求;
响应于接收到所述SNMP请求,在所述电子设备处启动计时器,所述计时器的超时时段被设置为第一预定时间段;以及
响应于在所述计时器超时时所述电子设备尚未完成所述SNMP请求所要求的操作,向所述网络管理站发送超时消息以作为对所述SNMP请求的响应。
15.根据权利要求14所述的非瞬时性计算机可读介质,其中所述超时消息包括:根据所述SNMP请求所要操作的对象的对象标识符即OID、以及指示在所述电子设备处发生了超时的信息。
16.根据权利要求15所述的非瞬时性计算机可读介质,其中所述电子设备包括多个子系统,并且所述超时消息进一步包括指示在超时发生时尚未完成所述SNMP请求的子系统的信息。
17.根据权利要求15所述的非瞬时性计算机可读介质,其中,所述SNMP请求是SNMPWALK过程中所包括的GETNEXT请求或GETBULK请求,并且,所述超时消息中所包括的所述OID被用于继续所述SNMP WALK过程。
18.根据权利要求14所述的非瞬时性计算机可读介质,其中,所述第一预定时间段小于所述网络管理站设置的用于监控所述SNMP请求的超时的第二预定时间段。
19.根据权利要求14所述的非瞬时性计算机可读介质,进一步包括当由所述电子设备的所述处理器执行时使得所述电子设备执行以下操作的指令:
响应于在所述计时器超时之前从所述网络管理站接收到与所述SNMP请求具有相同请求ID的重传的SNMP请求,停止对所述SNMP请求的处理,并向所述网络管理站发送所述超时消息以作为对所述重传的SNMP请求的响应。
20.一种由电子设备实施的装置,包括用于执行根据权利要求8-13中任一项所述的方法中的步骤的部件。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010903812.2A CN114124642A (zh) | 2020-09-01 | 2020-09-01 | 电子设备及其执行的方法以及计算机可读介质 |
US18/023,426 US11936510B2 (en) | 2020-09-01 | 2021-08-27 | Electronic device, method executed by the electronic device and computer readable medium |
PCT/US2021/047869 WO2022051177A1 (en) | 2020-09-01 | 2021-08-27 | Electronic device, method executed by the electronic device and computer-readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010903812.2A CN114124642A (zh) | 2020-09-01 | 2020-09-01 | 电子设备及其执行的方法以及计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114124642A true CN114124642A (zh) | 2022-03-01 |
Family
ID=78073987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010903812.2A Pending CN114124642A (zh) | 2020-09-01 | 2020-09-01 | 电子设备及其执行的方法以及计算机可读介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11936510B2 (zh) |
CN (1) | CN114124642A (zh) |
WO (1) | WO2022051177A1 (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5978845A (en) * | 1997-03-25 | 1999-11-02 | Sun Microsystems, Inc. | Network management relay mechanism |
CN101594320B (zh) * | 2009-06-23 | 2012-05-09 | 中兴通讯股份有限公司 | 一种基于snmp协议的消息交互方法 |
US9893971B1 (en) * | 2012-12-31 | 2018-02-13 | Juniper Networks, Inc. | Variable timeouts for network device management queries |
-
2020
- 2020-09-01 CN CN202010903812.2A patent/CN114124642A/zh active Pending
-
2021
- 2021-08-27 WO PCT/US2021/047869 patent/WO2022051177A1/en active Application Filing
- 2021-08-27 US US18/023,426 patent/US11936510B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US11936510B2 (en) | 2024-03-19 |
US20230318903A1 (en) | 2023-10-05 |
WO2022051177A1 (en) | 2022-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220078092A1 (en) | Provisioning a service | |
US20140068035A1 (en) | Managing network configurations | |
CN110535692B (zh) | 故障处理方法、装置、计算机设备、存储介质及存储系统 | |
US7974211B2 (en) | Methods and apparatus for network configuration baselining and restoration | |
EP2541867A1 (en) | Method and device for terminal management based on right control | |
US8935388B2 (en) | Systems and methods of automated event processing | |
US8498214B2 (en) | Switching device, information processing device, and recording medium for failure notification control program | |
US10015089B1 (en) | Enhanced node B (eNB) backhaul network topology mapping | |
US10097400B1 (en) | Apparatus, system, and method for distributing management data to network management stations | |
CN105245379A (zh) | 一种模拟snmp网元进行网管系统测试方法及装置 | |
CN111314241A (zh) | 一种任务调度方法及调度系统 | |
US9985862B2 (en) | MEP configuration method and network device | |
CN111970158B (zh) | 边缘接入的处理系统、方法、装置及设备 | |
US20170187575A1 (en) | System and method for customizing standard device-orientated services within a high scale deployment | |
US7836358B2 (en) | Method and network element for improving error management in managed networks, and computer program product therefor | |
CN114124642A (zh) | 电子设备及其执行的方法以及计算机可读介质 | |
US9787531B2 (en) | Automatic notification of isolation | |
CN102684924B (zh) | 网络管理工作站及网络管理软件调试方法 | |
US11638134B2 (en) | Methods, systems, and computer readable media for resource cleanup in communications networks | |
US7739346B1 (en) | Method and apparatus for specification of transaction failures in a network management protocol | |
EP2749007B1 (en) | Managed object manipulation | |
JP2010130113A (ja) | ネットワーク管理システム、ネットワーク管理方法、マネージャおよびエージェント | |
US20190207805A1 (en) | Node fault isolation | |
CN113326159B (zh) | 用于故障注入的方法、装置、系统及计算机可读存储介质 | |
CN111224935A (zh) | 一种用户登录状态的同步方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |