8.8. The GoAhead Embedded WebServer

Although SNMP is the long-time standard for remote management, more and more devices are seeking an alternative method to eliminate the shortcomings of SNMP. The latest trend is to use Web protocols, such as HyperText Transfer Protocol (HTTP), HyperText Markup Language (HTML), and Java, for remote device management, also called Web-based management. This is accomplished through the use of an embedded Web server running on the device. A device's data can be used to generate dynamic content that is represented in a Web page. These pages are accessed by any standard browser and become the graphical interface to the device. Devices become more user friendly when they can be controlled using a common interface, such as the browser. For example, programming a VCR might not be as daunting a task if the job could be done via a browser interface.[1]

[1] My wife, who finds programming the VCR a daunting task, can verify this and, therefore, relies on me for all of her video recording needs. Yet she is a wizard using a computer to navigate the Web with her favorite browser.

There are a few disadvantages to using SNMP for remote management. One disadvantage is the requirement of application software to control remote devices that is often costly and difficult to use. Another disadvantage is that SNMP uses UDP, which is an unreliable protocol, for communication across networks. Packets that are lost in transmission are not retransmitted, and acknowledgment of received packets is not performed. This can have dire consequences if the information contained in that packet was crucial to the system.

Along with being the hip, up-and-coming trend, Web-based management allows the use of a standard interface that is familiar to most users. Having the browser as an interface also allows the use of handheld devices, most of which have browsers as standard software, for portable management. Network communication from devices is accomplished using TCP, which is a reliable protocol.

Companies currently using the GoAhead WebServer in products include Hewlett-Packard, Honeywell, Siemens, and Canon. A complete list of companies is provided on the GoAhead WebServer site at:

www.goahead.com/webserver/customers.htm

One disadvantage to the Web-based management approach is that once a page is served to the browser, the content is static and does not change until there is some user intervention, such as a refresh request. This can be a problem if a constant flow of data is needed or IF a user needs to be notified of an alarm condition on the device. One solution to this problem is the use of the HTTP REFRESH tag, forcing the browser to re-request the data at a specified interval. Another solution is through the use of Java applets and JavaScript to continually request data from the device.

The GoAhead WebServer is an open-source embedded Web server specifically designed for use in embedded systems. The source code is written in C. Unlike typical server-based Web servers, the GoAhead WebServer is focused on meeting constraints found in an embedded system, including:

  • Small memory footprint

  • Configurable security model

  • Supporting the generation of dynamic Web page content

  • Support for devices that do not have a file system

  • Portability across a wide range of platforms and CPU architectures

  • Integration of the source code into very customized devices

The WebServer requires a TCP/IP stack and approximately 60 kbytes of memory. The GoAhead WebServer supports:

  • Active Server Pages (ASP)

  • In-process Common Gateway Interface (CGI)

  • Embedded JavaScript

  • HTTP 1.0 with persistent connections found in HTTP 1.1

  • 65 connections per second

  • Secure Sockets Layer (SSL) version 3.0

  • Digest Access Authentication (DAA)

  • User Management via login access

  • Storage of Web pages in ROM

Currently, SSL support is not provided for in eCos. Additional information can be found online at the GoAhead WebServer site at:

www.goahead.com/webserver/webserver.htm

Similar to eCos licensing, the GoAhead WebServer offers its source code free of charge in exchange for any enhancements to the source code base. There are three basic requirements to using the GoAhead WebServer in a product. First, GoAhead must be notified prior to shipping the product using the WebServer. Second, the GoAhead mark (which can be found on their Web site) must be displayed on the initial page. Finally, GoAhead is allowed to identify companies using the WebServer for marketing efforts. The GoAhead WebServer license can be found online at:

www.goahead.com/webserver/license.htm

The GoAhead site contains a searchable database of questions, and their solutions. GoAhead offers a bug report form that allows you to submit specific problems with the Web server. Bugs can also be emailed to:

[email protected].

There is also a newsgroup devoted to the GoAhead WebServer, which does not get a large volume of traffic. The newsgroup can be found at:

news://news.goahead.com/goahead.public.webserver

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.221.13.173