Home arrow Web Services arrow Page 5 - Accessing Devices Using a Web Service

Accessing Devices Using a Web Service

Web ServicesThe old days when embedded devices and factory floor machines had only minimal interaction with humans, the on/off button and little else, are gone. Today the ability to access the device from anywhere is expected. This is a significant challenge when we are sweating over every dollar required in hardware. With a little bit of knowledge and a relatively small piece of software, we can provide a Web service for this type of interaction.

Author Info:
By: Terry Ess
Rating: 4 stars4 stars4 stars4 stars4 stars / 19
January 14, 2004
  1. · Accessing Devices Using a Web Service
  2. · HTTP Requests and Responses
  3. · XML
  4. · Web Service Implementation
  5. · Conclusion

print this article

Accessing Devices Using a Web Service - Conclusion
(Page 5 of 5 )

With a little bit of knowledge and a relatively small piece of software (the example implementation is only a little over 400 lines of C++) we can provide a Web service.  Because of the very restricted nature of this implementation, we can provide this service in a very small footprint and with high security while still providing our customers with the information they need.  If we implement the Web service as a separate process, we can achieve small size, high security and robustness.  Such an implementation is provided in T. H. E. Solution’s PC on the factory floor toolkit (see http://www.the-solution-llc.com/development_tools.htm).  Like most engineering solutions, there are limitations.  The primary limitations are:

  1. This solution is designed to support a relatively small number of connections (in the dozens not hundreds).  Because of the limited number of connections supported, client use of proxy web servers can cause a problem.

  2. Obviously the limited number of connections makes the Web service highly vulnerable to denial of service attacks.  Part of the rational behind the two-channel remote access approach is to provide a separate “unknown” path for remote control access.

  3. The XML used in this example is extremely simple in nature.  Many industry groups are developing specific rules and definitions for data interchange.  Specific applications should take advantage of such style sheets when they exist.

  4. The examples all use a static IP address for the Web service.  This may or may not be a good solution for any specific application.  The requirement to support dynamic IP addressing can significantly complicate the solution.  This is especially true if the application’s environment only provides limited support for configuration and naming services such as DHCP and DNS.

  5. The most complicated area of the web service concept, and one still very much in progress, is the means to dynamically locate web services and determine the nature of the service.  This has not been addressed at all for two reasons.  First, in all practical cases this would be handled exterior to the device.  Second, it is not at all clear that this type of registry capability is applicable to the problem we are trying to solve.


World Wide Web Consortium (W3C)
Specifications of numerous Web protocols including HTTP and XML

Matthew Powell and Leon Brackhnski
HTTP Revealed
Microsoft Interactive Developer, September 1996

David Cook
Write a Simple HTTP-based Server using MFC and Windows Sockets
Microsoft Systems Journal, February 1996

Microsoft Corporation
XML Tutorial
MSDN Library, July 2001

DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.

blog comments powered by Disqus

- Dealing with Loose Coupling in a Service-Ori...
- Loose Coupling in a Service-Oriented Archite...
- Safety, Idempotence, and the Resource-Orient...
- The Resource-Oriented Architecture in Action
- Features of the Resource-Oriented Architectu...
- The Resource-Oriented Architecture
- Getting Started with Flex
- Automated Billing and Faxing for the Web
- An Introduction to Web Services
- The Foundations of Web Services: From Novice...
- Web Services Reengineering: Finishing Touches
- Fault Handling with Web Services
- Flow and Web Services
- Process Lifecycles and Web Services
- Business Processes and Web Services

Watch our Tech Videos 
Dev Articles Forums 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us 
Weekly Newsletter
Developer Updates  
Free Website Content 
Contact Us 
Site Map 
Privacy Policy 

Developer Shed Affiliates


© 2003-2019 by Developer Shed. All rights reserved. DS Cluster - Follow our Sitemap
Popular Web Development Topics
All Web Development Tutorials