1、2009 ASHRAE 545ABSTRACTBACnet Web Services (BACnet/WS) is the latest Internet communication method of the ASHRAE standard for building management systems. This paper provides theoretical and experimental studies on the message transmission perfor-mance of BACnet/WS access over the Internet. The aver
2、age transmission times of the BACnet/WS “getValues” service for a large number of objects were measured from inter-continen-tal locations. The theoretical calculation of a TCP/IP through-put equation accurately matched resulting data from field tests. This paper found that the average transmission t
3、ime is roughly proportional to the average round trip time of IP network connectivity probing, “Ping”. This paper concludes that trans-mission time takes up a significant portion of the total service time of a remote BACnet/WS system over the Internet.INTRODUCTIONThe BACnet standard (ASHRAE 2004) fo
4、r building management systems is becoming popular, not only in North America, but also in Asian and European countries. Recently, a new technology for the Internet, “Web Services”, has emerged. The BACnet standard has employed Web Services as one of the communication methods for exchanging BACnet me
5、ssages (ASHRAE 2006). Since the Web Services commu-nication method uses the Internet Web access protocol, i.e., HTTP (HyperText Transfer Protocol), it is possible to pass through firewalls in IP networks. It is expected that BACnet Web Services (BACnet/WS) will become a desirable BACnet communicatio
6、n method for building management systems over the Internet (Tom, S. 2004).Due to its character-based message format, the BACnet/WS method takes a longer time to transmit a message compared to the conventional BACnet communication meth-ods. Although bit rates of IP networks are increasing, signal pro
7、pagation delay between extremely long distances, such as inter-continental locations, will not shorten proportionally. The communication performance will still be a significant problem even in the future for BACnet/WS over the Internet.There have been many research papers on various aspects of the B
8、ACnet standard, such as conformance testing (Bushby 1990), communication characteristics (Tomboli 1995; Song 2003), and implementation modeling (Huang 2004). Some research papers have focused on the performance of specific communication methods, i.e., BACnet/MS/TP (Master Slave/Token Passing) (Song
9、2003; Hong 2003; Hong 2004a; Hong 2004b) and BACnet/IP (Ninagawa 2005). The communication protocols of these methods, i.e., the MS/TP and UDP (User Datagram Protocol) are relatively simple as compared to the TCP protocol (Stevens 1994). Theoretical study of the communication performance of BACnet/WS
10、 using TCP for message transmission is difficult because the TCP maintains a complicated algorithm. So far, few research papers on the evaluation of communication performance of the BACnet/WS have been published (Ninagawa 2008).Even though the BACnet/WS standard was never intended for real-time appl
11、ications, attention should be paid to transmission delay of BACnet/WS remote systems in the cases of extremely distant networks. In general, remote systems need careful engineering for interactive applications using the Global Internet. Furthermore, the data format and transmis-sion method of BACnet
12、/WS takes a longer message compared to BACnet/IP. Systems designers should predict throughput of BACnet/WS and decide how many objects can be read at once for reasonable response over the Global Internet.Communication Performance of BACnet Web Service over the Global InternetChuzo Ninagawa, PhD Tomo
13、taka Sato Yahiko KawakitaChuzo Ninagawa is chief engineer in the Air-Conditioner Designing Department and Tomotaka Sato is manager in the Electronic Equipment Designing Section, Air-Conditioning Goetzler 2007). A typical VRF air-conditioning system consists of tens or hundreds of air-conditioner uni
14、ts. Each air-conditioner unit includes a microcomputer controller for autonomous high-level functionality in the air-conditioning system. These controllers exchange control messages with each other using a proprietary VRF fieldbus communication system (Honda 1993; Yokohama 2008). Each high-level fun
15、ctionality, e.g., “OnOffStatus” or “OperationMode” is represented by a BACnet object data struc-ture such as “BinaryInput” or “MultiStateInput” type defined by the BACnet standard. The total number of BACnet objects for a VRF air-conditioning system often reaches more than hundreds.All BACnet object
16、s are implemented in a device called a “gateway” (Bushby 1998) in most cases of VRF systems. The gateway is connected with the building management system network and the VRF fieldbus as shown in Figure 1. BACnets fundamental way of accessing objects is based on a type of “Client-Server” framework. T
17、he web server software on the gateway holds the BACnet objects. A number of web clients access the web server on the gateway using BACnet/WS communication method. These clients are not necessarily located in the same building in which the server is located. In the case of the system model in this re
18、search, the clients are assumed to be located on different continents and communi-cate with the server over the Internet.In actual applications of BACnet/WS to remote manage-ment systems, the number of objects read at a single access depends on system design. In this paper, in order to investigate t
19、he limitation, we have studied extreme cases of the single access with up to 1000 objects in the BACnet/WS server over various inter-continental connections. This paper focuses on the net communication performance, that is, the total trans-mission time of this BACnet/WS object request/response acces
20、s.Modeling of BACnet/WS AccessSince this research focuses on communication perfor-mance, lengthy messages of BACnet/WS services are the primary focus of this paper. This research has selected the “getValues” service defined by the BACnet/WS standard because it is a typical service for reading a numb
21、er of objects at once in a BACnet/WS remote system and the access often results in a lengthy message.Figure 2 shows a model of message data transmission of the BACnet “getValues” service. In the “getValues” service, a web client transfers a request message of “getValues” to the web server. Then, the
22、 web server returns a response message to the client. The request/response messages are represented by the SOAP (Simple Object Access Protocol) standard, and controlled by the HTTP upper layer protocol. The TCP/IP lower layer protocol divides the message into a number of communication packets and tr
23、ansports them one by one over the IP network. After all the packets of the request message are received by the web server, it reconstructs these packets into the original request message. Next, the server parses the contents of the request message and prepares a corresponding response message. The r
24、esponse message is transferred from Figure 1 BACnet/WS building management system for VRF air-conditioners over the Internet.ASHRAE Transactions 547the server to the client in the same way as the request message by the TCP/IP protocol.It is assumed that the BACnet/WS web server on the gate-way has a
25、 cache memory for the present values of the BACnet objects representing the high-level functionality states of the air-conditioners so as to return the values immediately. The gateway periodically collects the present values of objects from each air-conditioner unit via the VRF fieldbus. In general,
26、 the interval of point value collection is several tens of seconds for cases of VRF building air-conditioning systems.In this paper, the elapsed time from the moment when the gateway finishes receiving a request message to the moment when it starts sending a response message is defined as the web se
27、rver process time TSP. In the case that the gateway has the above-mentioned cache memory, TSP is short such as 0.3 s compared to the transmission time over the Internet. The process time TSPhardly depends on the number of objects in one request message in most implementations. Therefore, TSPcan be n
28、egligible for the Global Internet communication in the case of inter-continental connections.In this paper, the total access time for a pair of request/response messages is defined as TA. The time TAconsists of the request transmission time TT1, the web server process time TSP , and the response tra
29、nsmission time TT2as shown in Figure 2. Here, the total request/response transmission time TTis defined as TT= TT1+ TT2. Hereafter in this paper, the term “transmission time” means TTexcluding the process time TSP, and TTwill be treated as object access time TA unless otherwise stated.Content of BAC
30、net/WS “getValues” MessageFigure 3 shows the content of a request message for an object access service “getValues”. The “getValues” service is one of the service types defined by the BACnet/WS standard. This service type is for requesting the values of a number of objects at once. In the special cas
31、e that the number of objects is one, the service type is called “getValue”.In the case of an example shown in Figure 3, the number of objects K is 1000. In this example, there are 1000 blocks of XML (eXtensible Markup Language) data items. Each block corresponds to an instance of the BACnet object o
32、n the web server. Each object is able to have a number of properties that hold a specific value representing each air-conditioners pres-ent value. The names of objects and properties are specified by character strings conforming to the XML tag-formatting rule. The XML tag-formatting rule is another
33、cause that makes BACnet/WS message length long in comparison with BACnet/IP.As mentioned above, the web server of a VRF gateway often has hundreds of objects and the length of the “getValues” message can be more than hundreds of bytes. This makes the message transmission time of the BACnet/WS an imp
34、ortant matter when the message data length and the distance over the Internet network are significantly large.Once the above-mentioned message data is handed over to the TCP/IP lower layer of communication, the message is now merely a stream of character bytes. Therefore, the TCP/IP protocol execute
35、s transmission of the BACnet/WS message as just a plain payload, even though the content of the message has a layered structure from the BACnet application soft-wares point of view. Table 1 shows the data length of the BACnet/WS messages in the cases of the “getValue” of one Figure 2 Request/Respons
36、e transmission of a BACnet/WS object access.Figure 3 Content of BACnet/WS “getValues” request message for objects of VRF air-conditioners.548 ASHRAE Transactionsobject, “getValues” of 500 objects, and “getValues” of 1000 objects for the above-mentioned example shown in Figure 3.It is well known that
37、 the number of IP packets LMPfor a message to be sent by the TCP/IP is calculated by dividing the message length LMBby the unit IP packet size of 1.460 kB as shown in Table 1. Now that LMPhas been obtained, the average transmission time TTfor both the request and response messages can be calculated
38、if the average throughput of the TCP/IP data transmission can be derived.THEORETICAL CALCULATIONCalculation of TCP/IP Transmission ThroughputThe number of IP communication packets that success-fully arrive at the destination during a unit time is called “throughput” of data transmission. Since TCP/I
39、P data trans-mission is a complicated stochastic process, the throughput varies each time depending on stochastic network conditions. However, the average throughput of TCP/IP transmission Sais given by the following equations (Padhye 2000).(1)where W ( p), Q ( p, w), and G (p) are defined as follow
40、ings,W ( p) = 2/3 + (4 (1 p)/(3p) + 4/9)1/2(2)G ( p) = 1 + p + 2p2+ 4p3+ 8p4+ 16p5+ 32p6(3)(4)The parameters p, TRT , TO, and Wmare the average loss rate of packets, the average round trip time of packets, the timeout for retransmission, and the maximum windows size, respectively. The term “window s
41、ize” is the number of packets the sender can transmit before receiving the receivers acknowledgement.Figure 4 shows an example of the TCP/IP average throughput calculation results plotted with respect to the aver-age loss rate p with parameters of the average round trip time TRT . The window size Wm
42、and the timeout TOare assumed to be 10 and 3.0 s, respectively for typical values. As shown in the figure, the throughput Safor various values of TRT becomes saturated for the values of p less than approximately 0.002 (dimensionless). Therefore, in the cases of small values of pthe average throughpu
43、t Saof the BACnet/WS message trans-mission can be predicted using the parameter TRT .The average transmission time over the network is calcu-lated by dividing the message length (the number of packets LMP) by the average throughput Sa(the number of packets received per second). The transmission time
44、 becomes longer for a smaller throughput. In cases that the data transmission time accounts for a large part of the total access time, the total Table 1. BACnet/WS Message Length ParametersParameter “getValue” “getValues” “getValues”No. of objects in one access: NO1 500 1000Message length (*1)Reques
45、t message length1.2 kB 225 kB 449 kBResponse message length0.9 kB 115 kB 230 kBTotal message bytes: LMB2.1 kB 340 kB 679 kBNumber of packets (*2)Request message packets2 154 309Response message packets1 79 158Total message packets: LMP3 233 467(*1) Message length from the TCP/IP protocols point of v
46、iew.(*2) Assumed that an IP packet size is 1.460 kB.SapTRT,() =1 p()p Wp()2 QpWp(),()+TRTWp() 1+ QpWp(),()Gp()TO1 p()+-,Wp() Wm1 p()p Wm2 QpWm,()+TRTWm4 1 p()pWm()2+ QpWm,()Gp()TO1 p()+-.otherwise Qpw,()min 111p()3()11p()311p()w 3+11p()w-,=Figure 4 Theoretical calculation of TCP/IP average data tran
47、smission throughput.ASHRAE Transactions 549access time is highly dependent on the throughput. If insuffi-cient throughput is known in the stage of commercial operation, the system may have to be redesigned. Therefore, it is impor-tant to predict the throughput for the prior evaluation of the respons
48、e time of the remote screen from a different continent.THE INTERNET FIELD TESTThe Internet Field Test MethodA gateway testing device with the BACnet/WS web server was placed at a site in Nagoya, a city in Japan. The loca-tions of the BACnet/WS web clients were chosen in such a way that the propagation delays over the Internet were as different as possible. The gateway with the BACnet/WS web server was connected to a broadband router, and then the router was conn