Jump to content

Embedded HTTP server

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Guy Macon (talk | contribs) at 22:14, 15 January 2013 (Changed "an HTTP" to "a HTTP" ("A Hypertext Transfer Protocol", not "an Hypertext Transfer Protocol").). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

An embedded HTTP server is a component of a software system that implements the HTTP protocol. Examples of usage within an application might be:

There are a few advantages to using HTTP to perform the above:

  • HTTP is a well studied cross-platform protocol and there are mature implementations freely available.
  • HTTP is seldom blocked by firewalls and intranet routers.
  • HTTP clients (e.g. web browsers) are readily available with all modern computers.
  • There is a growing tendency of using embedded HTTP servers in applications that parallels the rising trends of home-networking and ubiquitous computing.

Typical requirements

Natural limitations of the platforms where an embedded HTTP server runs contribute to the list of the non-functional requirements of the embedded, or more precise, embeddable HTTP server. Some of these requirements:

For every specific project requirements can vary significantly. For example, ROM and RAM footprints can be a very serious constraint and limit the choices of the system designer. C++ or JVM availability for the system can be another constraint. Frequently performance is an issue, because typical embedded systems run multiple simultaneous tasks and a HTTP server is only one of them and may be configured as a low priority task.

See also