next up previous contents
Next: Limited Hardware Resources Up: SOAP Front end Design Previous: OPC Subscription Service   Contents

Web Service Compliant Fieldbus Applications on the IGUANA Gateway

As stated in chapter 4.2, so-called ``gateway applications'' may be prove to be a good solution to certain tasks. Gateway applications may then reside in the IGUANA gateway, communicate with Internet clients with the SOAP protocol and access the fieldbus through the Extended Service Daemon (ESD), as depicted in figure 58.

Figure 58: Gateway Applications on the IGUANA Gateway
\begin{figure}\centering
\includegraphics[scale=0.7]{graphics/iguana-gwapps1.eps}\end{figure}

To give an example, a public interface to a weather station should be created which should provide the actual temperature, humidity and wind-speed along with some historic data. Several appropriate sensors are present on different fieldbus networks, which are connected to the IGUANA gateway.

The software developer would then write an application that collects data from certain fieldbus datapoints with simple ESD READ commands and stores this data in an internal buffer for a limited time. The application would furthermore implement several functions, such as ``GetTemperature'' and ``GetHumidity'' which return appropriate data from the buffer to clients who called these functions. Moreover, the application may implement security features, such as limiting access to certain networks or authenticate users before permitting access to the service.

As the ESD is also accessible via TCP/IP from outside the IGUANA gateway, the developer may create and thoroughly test the application prior to installing the application on the gateway. Web Service frameworks may be used to support the programmer in creating the gateway application, so that complicated issues, such as the SOAP protocol are managed and created by the framework.

When the application is finished and well tested, the developer would automatically create a WSDL document that can then be used by clients to access the new service. Then he would deploy the application on the IGUANA gateway along with the WSDL document. Clients may then utilize the WSDL code to query the service and thus retrieve data from the weather station.

The above example outlines the following main elements of gateway applications on the IGUANA gateway:

Development of gateway applications:
The development process primarily focuses on accessing the fieldbus with the ESD protocol and creating functions which are exposed as SOAP Web Services. Although no specific tools are needed for developing gateway applications, Web Service frameworks may be used122 which ease the development process by hiding the SOAP protocol from the programmer.

An important issue is testing and debugging the application. Access to the IGUANA gateway with the ESD protocol is also possible by TCP/IP, therefore testing and debugging may be done outside of the gateway. This is a great advantage as the gateway is not interrupted in its operation by malfunctioning gateway applications, moreover, common tools, such as debuggers may be used by the software developer.

Most Web Service frameworks support an automatic creation of WSDL documents, which further eases the development.

Web Service accessibility and deployment:
To accomplish accessibility of a Web Service, a server has to be set up on the IGUANA gateway. This server has to implement the HTTP protocol and has to call the requested Web Service. This server may be implemented in various ways such as with a common HTTP server, which calls services in a CGI-style123. Other ways would be a Web Service that implements a HTTP server by itself or framework specific servers.

Deployment of gateway applications may be either done in a simple way such as with FTP124, or by more sophisticated techniques, such as by implementing a HTTP interface or a dedicated gateway application which implements software deployment. Along with the gateway application itself, the WSDL document may be directly deployed on the IGUANA gateway, although it may also be provided on a different location.

Development of clients for gateway applications:
From the perspective of the client, gateway applications on the IGUANA gateway look like any other Web Service on the Internet. Gateway applications may be designed in a way, so that fieldbus technology is entirely hidden, such as in the above example. In this case, client developers need no fieldbus knowledge at all and may even not be aware that fieldbus technology is involved.

Security of IGUANA Gateway Applications:
The ESD does not implement any security features, such as fine-grained access rights125, authentication or encryption. Instead, the IGUANA gateway relies on the security of the fieldbus itself. Internet/fieldbus gateway should however provide more security features, such as limiting access to different fieldbus data for certain clients.

Gateway applications on the IGUANA gateway may address a number of security issues, such as fine-grained authorization schemes, limiting access from certain networks and even encryption. [VEN05] states that: ``Application specific interfaces also allow a more flexible authorization scheme.'' Moreover, security features may be tailored to the needs of the applications - for instance, one application may be publicly available, while another has need for strong authentication and encryption.

Type checking:
Gateway applications have predefined input and output parameters with associated data types. Therefore type checking may be done at compile time of the client.

On the other hand, abstract fieldbus interfaces, such as OPC XML-DA do not provide static data typing and deliver dynamically typed fieldbus data. Therefore type checking has to be done during run time. This fact is also outlined by [VEN05].



Subsections
next up previous contents
Next: Limited Hardware Resources Up: SOAP Front end Design Previous: OPC Subscription Service   Contents
Hermann Himmelbauer 2006-09-27