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.
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:
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.
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.
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.
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].