一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

网络压力测试的制作方法

2022-02-22 02:15:03 来源:中国专利 TAG:


1.本公开涉及用于楼宇自动化和控制网络(bacnet)协议或其他类似协议的网络压力测试。网络压力测试可以识别协议上单个设备的断点。


背景技术:

2.楼宇自动化和控制网络(bacnet)是楼宇管理系统(bms)的常用协议标准,其允许楼宇自动化并可用于各种楼宇子系统(例如hvac、照明、火灾探测、安全等)。bacnet允许不同制造商制造的不同子系统通过标准化网络相互通信。这允许楼宇所有者实现广泛范围的子系统,并允许这些子系统相互交互。这对于能源管理系统可能是有用的(例如,基于照明系统中的占用传感器打开或关闭hvac系统)。
3.像bacnet这样的协议通常利用客户端-服务器软件模型以在不同的楼宇子系统之间进行通信。一些子系统(例如,hvac)具有较大的内存,并从可能具有较小的内存的其他子系统(例如,照明)请求数据或轮询其他子系统。客户端是请求数据的子系统,并且服务器是提供数据的子系统。从服务器的角度来看,客户端-服务器关系可以是一对一的(例如,有一个客户端从单个服务器请求数据),或者客户端-服务器关系可以是多对一的(例如,有多个客户端从单个服务器请求数据)。根据客户端的类型(例如,单个建筑系统)或所需的数据,不同的客户端可能以不同的速率轮询单个服务器。
4.客户端的数量和每个客户端轮询的速度给服务器带来压力。大量客户端轮询单个服务器和单个客户端轮询过快的组合可能会导致服务器延迟、缓冲或故障。如果发生这种情况,则服务器可能无法与一个或多个客户端通信,并且一个或多个客户端可能无法提取它们所需的必要数据。这可能会导致整个建筑的系统范围内的减速或故障。这种减速或故障可能会影响居民的不适和/或居民的安全。


技术实现要素:

5.在一个实施例中,一种进行网络压力测试的方法可以包括提供通过客户端-服务器关系与第一服务器通信的第一客户端。该方法还可以包括将第一频率设置为设定频率。该方法还可以包括以设定频率从第一客户端向第一服务器发送第一请求。此外,该方法可以包括从第一服务器向第一客户端发送第一响应。该方法还包括测量第一请求和第一响应之间的第一经过时间,并将第一经过时间与通信阈值进行比较。
6.在另一个实施例中,一种在bacnet协议上进行网络压力测试的方法可以包括提供通过客户端-服务器关系与第一服务器通信的第一客户端。该方法还可以包括提供与第一客户端和第一服务器通信的测量系统。该方法还可以包括以设定频率从第一客户端向第一服务器发送第一请求。此外,该方法可以包括从第一服务器向第一客户端发送第一响应。该方法还可以包括用测量系统测量第一请求和第一响应之间的第一经过时间,并显示第一经过时间。
7.在又一个实施例中,一种确定bacnet协议上的性能退化的方法可以包括提供通过
客户端-服务器关系与第一服务器通信的第一客户端,以及提供与第一客户端和第一服务器通信的测量系统。该方法还可以包括以设定频率从第一客户端向第一服务器重复发送第一请求,并且针对每个第一请求从第一服务器向第一客户端发送第一响应。此外,该方法可以包括测量每个连续的第一请求和第一响应之间的第一经过时间,以及测量初始请求和最终响应之间的第二经过时间。该方法还可以包括将第一经过时间与第一阈值进行比较,以及将第二经过时间与第二阈值进行比较。最后,该方法可以包括当第二经过时间超过第二阈值时增加设定频率,以及当第一经过时间超过第一阈值时停止以设定频率从第一客户端向第一服务器发送第一请求。
8.通过考虑详细描述和附图,本公开的其他方面将变得显而易见。
附图说明
9.图1描绘了根据多个实施例的在bacnet协议上运行的单个客户端系统的示意图。
10.图2描绘了根据多个实施例的在bacnet协议上运行的多客户端系统的示意图。
11.图3描绘了根据多个实施例的消息测试流程的示意图。
12.图4描绘了可以与图1所示的单个客户端系统实施例一起使用的第一测试循环的流程图。
13.图5描绘了可以与图2所示的多客户端系统实施例一起使用的第二测试循环的流程图。
具体实施方式
14.在详细解释任何实施例之前,应当理解,本公开的应用不限于以下描述中阐述的或以下附图中示出的构造和部件布置的细节。本公开能够以各种方式实施或执行其他实施例。此外,应该理解,本文使用的措辞和术语是为了描述的目的而不应该被认为是限制。本文所使用的“包括”和“包含”及其变体意指涵盖其后列出的项目及其等同物以及附加项目。本文所使用的“由......组成”及其变体意指仅涵盖其后列出的项目及其等同物。除非另有说明或限制,否则术语“安装”、“连接”、“支撑”和“耦合”及其变体被广泛使用,并且涵盖直接和间接安装、连接、支撑和耦合。
15.一般而言,本公开涉及用于确定bacnet协议中的故障点的网络压力测试。网络压力测试可以确定使用bacnet协议的单个设备在不导致网络故障的情况下可以承受的最大流量。
16.如图1所示,bacnet协议可以以客户端-服务器关系来组织。所示实施例描绘了根据多个实施例的单个客户端系统10。客户端100可以是整个bms中的较大设备或子系统。客户端100可以具有大的内部存储器或处理器,并且可以处理大量数据。通过操作,客户端100可以产生和收集可用于自我调节客户端100(例如,改变客户端100的操作模式)的数据。例如,hvac系统可能包括控制加热系统和冷却系统是否以及何时开启或关闭的温度传感器。
17.客户端100还可以从在bacnet协议上并发运行的服务器105收集数据。服务器105可以是整个bms中的较小设备或子系统。与客户端100相比,服务器105具有较小的内部存储器或处理器,并且可能无法处理与客户端100相同的数据量。客户端100可以从服务器105请求数据以进一步协助监管。例如,hvac系统可以从照明设备请求数据,并基于从照明设备接
收到的信号(例如,占用传感器是否感测到房间中的人)加热或冷却房间。
18.为了从服务器105获取数据,客户端100可以发送请求110。通过发送请求110,客户端100可以从服务器105请求一条特定的信息(例如,照明设备是否打开)。服务器105可以通过向客户端100发送响应115来回答请求110。在一些实施例中,当客户端100和服务器105接通时,轮询过程(即,在客户端100和服务器105之间发送请求110和响应115)可以以给定频率tc(即,每分钟请求数量110次)连续进行。在其他实施例中,对于给定的客户端100和服务器105,轮询可以以不同的频率发生。
19.如图2所示,多客户端系统20可以包括贯穿bacnet协议的多个客户端100,其可以与单个服务器105通信。每个客户端100可以向服务器105发出单独的请求110,并且服务器105然后可以回答每个单独的请求110。在一些实施例中,每个客户端100可以发出相同但单独的请求110(即,每个客户端100请求相同的信息片段)。在其他实施例中,一些客户端100可以从其他客户端100发出唯一请求110(即,每个客户端100请求不同的信息片段)。每个请求110可以以恒定的时间间隔(例如,每个客户端100的时间tc可以相同)进行。每个客户端100还可以以不同的时间间隔(例如,一些客户端100的时间tc可能不同)发出请求110。
20.为了控制到达服务器105的数据量,交换机120(例如,第2层网络交换机)可以位于客户端100和服务器105之间。交换机120可以通过仅允许特定数量的请求110进入服务器105,一次仅允许特定数量的客户端100发出请求110。在这种情况下,交换机120可以阻止超过特定数量的所有请求110到达服务器105,直到当前特定数量的请求110已经被解决(例如,使用响应115)。
21.在单客户端系统10(例如,参见图1)和多客户端系统20(例如,参见图2)中,可能存在服务器105不能对来自客户端100的请求110提供适当的响应115的点(例如,请求110和响应115之间的经过时间或响应时间t
res
超过用户定义的通信阈值)。在多客户端系统20中,请求110和响应115之间的可接受经过时间t
res
的阈值在不同客户端110之间可能不同(例如,在一些客户端100中,响应时间t
res
可能是关键的,而在其他客户端100中,响应时间可能不是关键的)。因此,多客户端系统20中的通信阈值可以链接到最关键的客户端100(例如,具有最快所需响应时间t
res
的客户端实际上可以为服务器设置响应时间要求)。例如,负责生命安全功能的客户端100可能需要比不负责生命安全功能的客户端100更及时的响应时间t
res

22.了解响应时间t
res
如何以及何时超过通信阈值非常重要,尤其是对于bacnet服务器105的制造商。制造商需要了解什么样的轮询频率tc以及有多少客户端100可能导致他们的服务器105的性能退化(即,超过通信阈值)。
23.如图1和图2所示,捕获软件125可以被并入网络中。捕获软件125可以记录客户端100的请求110以及服务器105的响应115。捕获软件125可以记录请求110和响应115的类型(例如,客户端100正在请求什么以及服务器105提供什么)。捕获软件125还可以记录请求110和响应115之间的经过时间t
res
。在某些情况下,请求110和响应115的这种记录可以通过集中式网络下载或共享。在多客户端系统20中,捕获软件125可以位于交换机120和服务器105之间,并且可以记录去往服务器105的请求110和来自服务器105的响应115。来自捕获软件125的记录可以允许用户跨不同类型的请求110分析响应115的不同时间间隔。
24.如图3所示,客户端100可以通过请求110向服务器105发送多条消息m。在一些实施
例中,每条消息m可以是相同的(例如,客户端100可以请求相同的信息),而在其他实施例中,不同的消息m可以请求不同的信息。在接收到消息m之后,服务器105可以在响应时间t
res
内向客户端100发送响应115。客户端100然后可以在定义的速率tc经过之后继续发送下一条消息m(例如,请求相同或不同的信息)。该定义的速率tc可以是给定客户端100的轮询速率。网络压力测试可以测量服务器105是否具有小于轮询频率tc的响应时间t
res
。在多客户端系统20中,网络压力测试可以测量服务器105是否具有小于最关键的客户端100的轮询频率tc的所有请求110的响应时间t
res
。该信息对于确定用户是否不希望服务器105得到备份从而可能不能及时响应(115)请求110可能是重要的。
25.如图4所示,第一轮询或测试循环可以与单个客户端系统10和捕获软件125一起使用,以便确定何时达到通信阈值。为了开始第一测试循环200,首先确定给定客户端100的通信阈值是多少(205)(例如,确定特定客户端100的最慢可接受响应时间t
res
),以及测试阈值或测试的总长度(210)(例如,一小时)。还可以建立第一频率(215)(例如,最小或最慢频率)。在多个实施例中,第一频率tc可以是每10分钟一个请求110。在其他实施例中,第一频率tc可以是每10分钟多于或少于一个请求110。可以通过以第一频率轮询服务器105(220)来启动第一测试循环。本文预期用户或机器可以建立频率或响应时间。
26.在接收到请求110之后,服务器105可以给出响应115,其可以由捕获软件125记录(225)。然后捕获软件125可以将响应时间t
res
与建立的通信阈值进行比较(230)。如果响应时间小于阈值(例如,如果响应时间t
res
快于由通信阈值(205)建立的最慢允许响应时间),则捕获软件125随后可以在第一循环内检查客户端已经以当前频率轮询多长时间(235)。如果该经过时间小于(即,快于)测试的设定长度,则客户端可以以设定频率(例如,第一频率tc)重新开始轮询(220)。
27.如果响应时间t
res
小于阈值并且第一次测试已经过去(例如,一个小时已经过去),则轮询频率增加(240),并以新的频率tc重新开始轮询服务器105。每次测试过去而没有达到通信阈值时,可以增加轮询频率(240)。在多个实施例中,轮询频率tc可以以定义的增量增加(例如,从每10分钟一个请求110增加到每0.001ms一个请求110)。在其他实施例中,轮询频率tc可以在每10分钟一个请求到每0.001秒一个请求110之间以至少六个步骤增加(例如,每10分钟、1分钟、10秒、1秒、0.1秒、0.01秒和0.001秒一条消息)。
28.如果轮询响应时间t
res
大于建立的通信阈值(230),则第一测试循环结束(245)。捕获软件125可以记录服务器何时在通信阈值下无法响应。这可以允许用户或机器查看测试进行了多长时间,以及服务器在通信阈值下无法响应的频率。
29.如图5所示,第二轮询或测试循环可以与多客户端系统20和捕获软件125一起使用,以便确定何时达到通信阈值。为了开始第二测试循环(300),可以为给定的一组客户端100确定通信阈值(305)(例如,确定最关键的客户端100的最慢可接受响应时间t
res
),以及测试阈值或测试的总长度(310)(例如,一小时)。随后可以在与服务器的通信中添加第一客户端(315),并且可以建立第一频率(320)(例如,最小或最慢频率)。在多个实施例中,第一频率tc可以是每10分钟一个请求110。在其他实施例中,第一频率tc可以是每10分钟多于或少于一个请求110。随后可以通过以第一频率轮询服务器105(325)来启动第二测试循环。
30.在接收到请求110之后,服务器105可以给出响应115,所有这些可以由捕获软件125记录(330)。然后捕获软件125可以将响应时间t
res
与建立的通信阈值进行比较(335)。如
果响应时间t
res
小于阈值(例如,响应时间t
res
快于由通信阈值(305)建立的最慢允许响应时间),则可以执行对客户端以当前频率轮询多长时间的检查(340)。如果该经过时间t
res
小于(即,快于)测试的设定长度,则客户端可以以设定频率(例如,第一频率tc)重新开始轮询(325)。
31.如果响应时间t
res
小于阈值并且第一次测试已经过去(例如,一小时已经过去),则轮询频率可以增加(345),并且可以以新的频率tc重新开始轮询服务器105。每次测试过去而未达到通信阈值时,轮询频率可以增加(345)。在多个实施例中,轮询频率可以以定义的增量增加(例如,从每10分钟一个请求110增加到每0.001ms一个请求110)。在其他实施例中,轮询频率可以在每10分钟一个请求到每0.001秒一个请求110之间以至少六个步骤增加(例如,每10分钟、1分钟、10秒、1秒、0.1秒、0.01秒和0.001秒一条消息)。
32.如果轮询响应时间t
res
大于建立的通信阈值(335),则捕获软件可以随后检查以查看是否已达到给定循环的最大客户端数量(350)。如果没有,则可以添加一个额外的客户端(355),并且可以从最低频率tc(例如,每10分钟一个客户端请求)开始重复测试。交换机120可以控制在给定时间允许哪个客户端100与服务器105通信(例如,客户端100可以在与服务器105通信和不通信之间交替)。如果测试完成(例如,时间已经过去)且未达到阈值,则轮询频率可以增加(345)。如果在完成测试之前达到通信阈值,则可以添加额外的客户端100(355),并且可以重复测试。一旦添加最终客户端(355)(例如,达到了用于第二测试循环的客户端100的总数),并且达到了通信阈值,则第二测试循环可以结束(360)。
33.在完成测试循环之后,可以使用捕获软件125确定达到通信阈值的每个点。根据该数据,bacnet服务器105的制造商可以改变服务器105内的内部性能参数以改善性能特性(例如,增加服务器105将无法满足通信阈值的频率)。制造商还可以通过给定单个服务器105能够以给定频率tc与之通信的最大数量的客户端100来向特定bms提供性能要求。
34.本领域技术人员将认识到,本文所描述的方法和系统不仅可以用于网络压力测试和防止网络故障、失败或中断,还可以用于根据管理员的需求优化网络通信。作为非限制性示例,本文所描述的阈值或通信阈值不一定仅指可能发生网络故障或失败的点,还可以指管理员为了通信优化的目的选择性地设置或选择的通信目标(例如但不限于,增加网络上的平均服务器响应时间或校准尽可能多的客户端以与服务器通信)。此外,本文预期,这种选择性地设置或选择的通信阈值可以由人类管理员或由自主机器管理员来选择。
35.以上描述的和图中所示的一个或多个实施例仅作为示例的方式呈现,并不旨在作为对本公开的概念和原理的限制。因此,应当理解,对元件及其配置和/或布置的变更和修改存在于所描述的一个或多个独立方面的精神和范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献