背景技术
目前,绝大多数公司的网络设备均统一放置在机房内,都是通过专用的空调来控制机房的温度,从而使网络设备工作在一个正常的温度范围内。比如:设定机房的环境温度为22度,当整个机房的温度超过22度时,空调开始运转,但是由于空调只能监测机房内空气的温度,而不能检测设备附近的温度,当机房空气流动性不好的时候,可能存在高温死角,这些死角的温度可能会比机房空气温度高出3~5度甚至更高,此时,有些设备工作在高温的条件下可能导致频繁的死机。
另外,由于灰尘的堆积,网络设备进风口的进风量会随着使用时间的增加而降低,如果没有及时清理进风口灰尘的话,那么网络设备的工作温度也会直线上升,此时也有必要通过降低机房设定的温度来降低由于进风量减少带来的影响。
以上两种情况,对于空调来说都是无法监测到的,因为这两种情况下的环境温度变化并不明显。所以需要增加一种有效的反馈机制,来使外部空调和网络设备之间建立更好的联系,从而更加精准的调节机房环境温度,使之不仅能保证网络设备的可靠运行,而且也将使得机房工作在更加绿色节能的环境中。
为此,现有的技术采用基于SNMP协议的机房温度管理方案和布置温度监测点的方式来实现对机房空调的管理。其中,
基于SNMP网管协议的温度管理方案,是通过设置网络设备的温度告警点来实现的,当网络设备出现告警后,网络设备通过SNMP协议,将告警信息上报给网管设备,网管设备通过告警信息获知设备过热,进而降低机房的环境温度,将网络设备的温度降低下来,从而消除设备的告警信息。
然而,此方案在网络设备温度上升后,需要人为地调节机房环境温度,同时由于只是监测过温告警,机房内空调不能实时地动态调节环境温度,只能保证网络设备处在安全运行的模式下,但不是最优的环境温度。
布置温度监测点的方式来实现对机房温度的管理方案,是通过在机房的各个角落和设备附近布置温度传感器,通过温度传感器来获取网络设备的温度,从而实现机房温度的调节。
由于环境温度和网络设备的实际运行温度有差异,有可能设备的CPU温度已经过温了,但是外部布置的传感器温度依然很低,此情况下将导致设备实际运行的温度与设定的机房温度出现较大的偏差。另外,此种方案需要对机房进行大量的改造工作,增加温度传感器,成本较高。
发明内容
有鉴于此,本发明提供一种机房温度智能控制的方法和装置。通过本发明,不仅可以实时地完成对机房温度的更精准地调节,降低能耗;而且所有的过程只在初始化温度曲线时需要人为参与,其他过程完全自动,即保证了设备安全,又降低了整个机房的运营成本。
为实现本发明目的,本发明实现方案具体如下:
一种机房温度智能控制的装置,所述装置用于实现对机房温度的智能控制,所述机房内包括至少一台网络设备和至少一台空调设备,所述装置即可以集成于现有网管设备中,也可以独立于网管设备单独存在,其中所述装置包括:
空调控制模块,用于学习各种空调遥控器的红外线温度调节方法,并根据设备管理模块传送过来的空调温度控制数据,实现对机房内空调温度的控制;
设备管理模块,用于获取机房内网络设备的温度信息,并根据所述温度信息计算出机房空调应该工作的温度,并将该温度数据发送给空调控制模块。
本发明同时提供了一种机房温度智能控制的方法,所述方法用于实现对机房温度的智能控制,所述机房内包括至少一台网络设备和至少一台空调设备以及一台本发明机房温度智能控制装置,其中所述方法包括:
步骤1、选择机房内散热条件最差的网络设备,绘制该网络设备的初始化温度曲线;
步骤2、通过SNMP协议获得散热条件最差的网络设备的当前基础温度,根据该网络设备的当前基础温度,获得机房空调设备的工作温度;
步骤3、输出最终的空调工作温度,实现对机房内空调设备的温度控制。
与现有的技术方案相比,本发明具有如下优点:不仅可以实时地完成对机房温度的更精准地调节,降低能耗;而且所有的过程只在初始化温度曲线时需要人为参与,其他过程完全自动,即保证了设备安全,又降低了整个机房的运营成本。
具体实施方式
为了实现本发明目的,本发明采用的核心思想为:利用SNMP管理协议,定期轮询机房内环境最恶劣的网络设备或者通过该网络设备主动反馈其实时的入风口温度和关键芯片温度,通过入风口温度来调节空调的基础工作温度,再根据对关键芯片温度采用预测的方式,加权调节空调的温度;根据最终计算获得的空调温度实现对机房内空调设备的温度控制,从而实现对机房内温度的调节。
为使本发明技术方案更加清楚和明白,以下结合本发明具体实施例加以详细说明。如图1所示,为本发明机房温度智能控制的装置结构示意图。所述装置用于实现对机房温度的智能控制,所述机房内包括至少一台网络设备和至少一台空调设备,所述装置在具体实现时,即可以集成于现有网管设备中,也可以独立于网管设备单独存在,包括空调控制模块和设备管理模块。其中,
空调控制模块,用于学习各种空调遥控器的红外线温度调节方法,并根据设备管理模块传送过来的空调温度控制数据,实现对机房内空调温度的控制。
具体地,空调控制模块进一步包括:红外线学习模块,用于学习不同厂家空调遥控器控制空调温度时发送的红外线编码,并保存在所述装置内部的存储器中。红外线发射模块:用于将所述装置上的设备管理模块传送过来的空调温度控制数据,转化为适当的红外编码发送出去,从而直接接管空调遥控器。空调控制模块在本发明实施例中,其实质就相当于市面上的万能遥控器,只不过在本发明实施例中,遥控器不再是手动的,而是由设备管理模块来管理的自动遥控器。
设备管理模块,用于获取机房内网络设备的温度信息,并根据所述温度信息计算出机房空调应该工作的温度,并将该温度数据发送给空调控制模块。
具体地,设备管理模块进一步包括:告警模块、设备温度查询模块、核心控制模块。其中,
设备温度查询模块采用RJ45的网口与机房内的网络设备直接相连,该模块用于定期发送SNMP的Get-Request报文向网络设备询问温度信息,网络设备会遵循SNMP规范,回送相应的Get-Response报文,其中包含了该网络设备当前的温度信息。作为本发明实施例中的另一种实现方法,所述网络设备也可以主动发送Trap信息给设备温度查询模块。设备温度查询模块在获取到网络设备的温度信息后,会将该网络设备的温度信息告知核心控制模块。
核心控制模块根据特定的算法,计算出当前空调应该工作的温度,并将该温度数据发送给空调控制模块。另外,如果设定了网络设备温度告警门限的话,一旦网络设备的温度达到告警门限,核心控制模块会将告警信息传送给告警模块,告警模块可根据告警信息进行声音、光亮、MMS短信告警或者切断电源等操作,防止网络设备烧毁。
由于所述装置通过SNMP协议可以同时支持访问多台网络设备,当机房内存在多台网络设备时,每一台网络设备的散热情况可能都不一致,本发明的一种实现方式为:将机房内所有网络设备的网口通过交换机直接接入所述装置的设备温度查询模块上,所述设备温度查询模块先采集到不同网络设备的温度、流量信息。然后,所述核心控制模块计算出其中一个网络设备的最恶劣值,根据这个最恶劣值最终来控制外部空调温度。作为前述实现方式的另外一种替代方式为:直接选择机房中散热条件最差的网络设备,将其通过交换机与所述装置的设备温度查询模块相连接,在前述两种实现方式下,默认为整个机房中散热最差的网络设备都能稳定运行,那么其他设备也能够稳定运行。
进一步地,在本发明实施例中,设备温度查询模块查询网络设备的温度信息,具体为该网络设备的出风口温度、关键芯片温度信息。
为了获取机房环境温度、网络设备出风口温度、关键芯片温度与空调设备温度间的对应关系,需要绘制网络设备初始化温度曲线。具体地,让散热最差的网络设备工作在满负载情况下,然后每个小时设定一个温度点,从空调最低的温度点开始设置。每个温度点运行一小时,结束的时候获取该设备当前出风口温度和关键芯片的温度。通过实验测试,得到某应用场景下散热条件最差的网络设备各项温度参数与空调设定温度间的关系如下表1所示:
|
环境温度 |
出风口温度 |
关键芯片温度 |
空调设定温度 |
1 |
22.8 |
23.9 |
48.3 |
16 |
2 |
23.7 |
24.7 |
49.5 |
17 |
3 |
24.9 |
26.5 |
49.9 |
18 |
4 |
25.6 |
25.6 |
50.2 |
19 |
5 |
26.4 |
27.9 |
51.1 |
20 |
6 |
27.5 |
30.2 |
51.9 |
21 |
7 |
28.8 |
31.4 |
53.4 |
22 |
8 |
29.7 |
30.9 |
54.1 |
23 |
9 |
30.2 |
32.7 |
55.4 |
24 |
10 |
31.5 |
33.5 |
56.7 |
25 |
11 |
32.6 |
32.9 |
57.4 |
26 |
12 |
33.4 |
34.7 |
59.1 |
27 |
13 |
34.5 |
36.5 |
59.8 |
28 |
14 |
35.9 |
37.2 |
61.5 |
29 |
15 |
36.4 |
38.1 |
62.3 |
30 |
表1
进一步如图2所示,从上述测试的实际温度曲线可知,该应用场景下,散热条件最差的网络设备工作在满负荷的状态下,关键芯片的温升与空调设定温度的温升曲线基本保持一致。
设备出厂时给定的工作范围一般为-10~45度。那么可根据上表,换算出每一个空调设定温度点下,散热最差设备的关键芯片工作温度,理论上讲,只要关键芯片温度不超过要求,网络设备即可稳定的工作。大量的实验表明,一般按照最高温度点,换算出10度的余量即可。因此,上述应用场景下散热条件最差的网络设备换算完成后的温度列表如下表2所示:
|
环境温度 |
出风口温度 |
关键芯片温度 |
空调设定温度 |
1 |
-10 |
-8.9 |
15.5 |
关闭 |
2 |
45 |
46.1 |
70.5 |
30 |
表2
根据换算表格,如果网络设备的关键芯片工作在60度左右是安全可靠的,由此可以反推获的此时应该设置的环境温度是28度。
以上仅为对散热条件最差的网络设备在满负载的情况下得到的各温度间的对应关系。但在实际过程中,网络设备并非一直处于满负载状况。在本发明实施例中,为了实现所述装置对机房温度更加精准的控制,还需要进一步测算在不同时间段网络设备的关键芯片负载情况。具体的实现方式为:根据不同时间段网络设备接口的流量来预测关键芯片的工作负载情况,由于网络设备通常可以根据处理的数据流量获知当前关键芯片功耗负载情况,进而根据流量曲线可以换算出在各个时间段网络设备关键芯片工作的负载情况,根据该负载情况,动态调整对外设定的空调温度。如图3所示,假如在某应用场景下,在0~7点这一时间段内,网络设备的流量基本稳定在15G左右,此时关键芯片比满负载情况下功耗低20%,换算成温度变换可能是5度的变化。那么此时如果设定的空调温度为28度,那么需要再28度上面进行加权,最终对空调控制器设定的温度为33度。同样,如果在8~12点之间,功耗满负载功耗的100%,此时芯片工作温度较高,需要动态调整加权值,比如初始加权值为-1,那么最终输出给空调控制模块的温度为27度。
作为本发明较佳实施例的一种优选方式,在核心控制模块输出最终空调工作温度后,还需要动态监控在功耗100%情况下,芯片核心温度是否达到60度这个门限,如果在加权值为-1的时候,依然没有达到,那么可以适当放宽加权值为0,那么可在尽量节能的环境下,保证设备正常工作。另外,考虑到随着网络设备使用时间的增加,入风口会累积一定的灰尘,导致散热下降,比如机房刚开始启用时候,空调温度设置为30度,即可满足关键芯片60度的要求,但随着灰尘的累积,空调需要设置为25度才能满足要求,此时5度的差值完全体现在加权值上,加权值累积增加可表示设备的入风口应该清理了。此时核心控制模块会向告警模块发出告警信息,以黄灯、短促声音或以移动短信的方式告知机房管理人员及时清理灰尘。
另外,一旦本发明装置检测到网络设备的关键芯片长期工作在70度(1小时)或者直接工作超过设定的告警门限75度,则所述核心控制模块会直接向告警模块发出强告警信号,告警模块可输出红灯,长鸣报警或以移动短信的方式告知机房管理人员处理问题,告警模块告警30分钟后,将直接输出切断电源信号,切断电源。
如果同一机房内存在多台空调设备的情形,为了节能减排,在每台空调控制的大概范围内,选取其中一台散热条件最差的网络设备进行监控,并将该网络设备的出风口温度和关键芯片温度数据反馈到所述装置的温度查询模块上,进而有针对性的控制该区域内的空调设备,从而使区域内的温度适合即可,不需要将整个环境温度降低。
如图4所示,为本发明某应用场景下机房内网络设备及空调设备的分布图。假设在该应用场景下,设备1为散热最恶劣的网络设备。那么只需将设备1~5划分为一个区域A、设备6~9划分为区域B。分别由空调A和空调B来控制温度。此时在空调A附近布置一套本发明机房温度智能控制的装置,在空调B附近布置另一套从属机房温度智能控制的装置。该两套机房温度智能控制装置在初始化时候同时进行。绘制相同的机房设备温度曲线。在控制时候分别控制。当设备1为散热最恶劣设备时,只需将空调A的温度做相应降低即可,空调B可保持原来的温度不变,由此可降低整体机房的能耗。
本发明同时提供了一种机房温度智能控制的方法,具体如图5所示。其中所述方法应用于实现对机房温度的智能控制,所述机房内至少一个网络设备、一个空调设备以及一台本发明机房温度智能控制装置。其中,所述方法包括:
步骤1、选择机房内散热条件最差的网络设备,绘制该网络设备的初始化温度曲线。
具体地,由于SNMP协议支持访问多台设备,且机房内每一个网络设备的散热情况都不一致,本发明的一种实现方式为:将机房内所有网络设备的网口通过交换机直接接入所述设备温度查询模块上,先采集不同网络设备的温度、流量信息,通过所述核心控制模块选择出散热条件最差的网络设备,最终根据这个散热条件最差的网络设备上的温度参数来控制外部空调温度。另外,本发明的另外一种实现方式为:直接选择机房中散热条件最差的网络设备,将其与所述装置的设备管理模块相连接。在前述两种实现方式下,默认为整个机房中散热最差的网络设备都能稳定运行,那么其他设备也能够稳定运行。
由于在本发明具体实施例中,设备温度查询模块查询网络设备的温度信息,具体为该网络设备的出风口温度、关键芯片温度信息。为了获取机房环境温度、网络设备出风口温度、关键芯片温度与空调设备温度间的对应关系,需要绘制网络设备的初始化温度曲线,具体实现方式为:在网络设备开始初始化过程中,让散热最差的网络设备工作在满负载情况下,然后每个小时设定一个温度点,从空调最低的温度点开始设置。每个温度点运行一小时,结束的时候获取该设备当前出风口温度和关键芯片的温度。
步骤2、通过SNMP协议获得散热条件最差的网络设备的温度信息,根据该网络设备的温度信息,获得机房空调设备初始的工作温度。
具体地,本发明设备温度查询模块通过定期发送SNMP的Get-Request报文向网络设备询问温度信息,网络设备遵循SNMP规范回送相应的Get-Response报文,其中包含了该网络设备当前的温度信息,进而使得本发明设备温度查询模块获知散热条件最差的温度信息。作为本发明实施例中的另一种实现方法,所述散热条件最差的网络设备也可以主动发送Trap信息给本发明设备。
当本发明装置获知网络设备的温度信息后,根据前述步骤1绘制的网络设备的初始化温度曲线,计算出机房空调应该工作的初始温度。
考虑到前述步骤1绘制的网络设备的初始化温度曲线,是网络设备在满负载理想的环境下的环境温度、出风口温度、关键芯片温度与空调温度间的对应关系。然而,在实际过程中,网络设备并非一直处于满负载状况,且随着时间的推移,网络设备上会堆积灰层,这些情况都会导致网络设备的实际工作温度与步骤1绘制的初始化温度曲线并不完全对应。为了实现所述装置对机房温度更加精准的控制,需要在前述网络设备的温度信息基础上进行进一步的加权计算。以网络设备关键芯片的负载情况为例,本发明较佳的实现方式为:测算不同时间段网络设备的关键芯片负载情况。根据不同时间段网络设备接口的流量来预测关键芯片的负载情况,由于网络设备通常可以根据处理的数据流量获知当前关键芯片功耗负载情况,进而根据流量曲线可以换算出在各个时间段网络设备关键芯片工作的负载情况,以根据该负载情况,结合网络设备当前的温度信息并根据关键芯片的流量信息动态加权调整空调的初始工作温度,以获得空调设备最终的工作温度。
进一步地,如果本发明装置设定了网络设备温度告警门限的话,一旦网络设备的温度达到告警门限,所述装置会发送告警信息给机房管理人员,并根据告警信息进行声音、光亮、MMS短信告警或者切断电源等操作,防止网络设备烧毁。
步骤3、输出最终的空调工作温度,实现对机房内空调设备的温度控制。
当所述装置计算出最终空调的工作温度后,通过其红外线发射模块将最终计算出的空调温度控制数据,转化为适当的红外编码发送出去,从而直接接管空调遥控器。
如果同一机房内存在多台空调设备的情形,为了节能减排,在每台空调控制的大概范围内,选取其中一台散热条件最差的网络设备进行监控,并将该网络设备的出风口温度和关键芯片温度数据反馈到所述装置的温度查询模块上,进而有针对性的控制该区域内的空调设备,从而使区域内的温度适合即可,不需要将整个环境温度降低。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。