Efficient Short Remote Operations (ESRO)
Starter Kit
A reliable connectionless transport
A foundation for development of efficient protocols
When TCP is too much and UDP is not enough
Reliability for Wireless Data when efficiency matters
It has been known for some time that there is a need for a protocol to
fill the gap between TCP and UDP. In the absence of anything better,
TCP has traditionally been used as a heavy-handed solution, but the
demands of the wireless and mobile domains have brought the need for
efficiency into much sharper focus.
The right answer to this is the Efficient Short Remote Operations
protocol, or ESRO. The ESRO service is similar to and consistent with
other Remote Procedure Call services, and the ESRO protocol and
service definition have been designed throughout with a major emphasis
on efficiency. ESRO thus provides the reliability of TCP, along with
the efficiency demanded by mobile and wireless applications.
ESRO was first developed between 1995 and 1997, and was published in
1997 as RFC-2188. Since then a comprehensive set of ESRO features and
resources have been developed. These include a Resource Center,
open-source software implementations for all major platforms, and a
comprehensive maintenance and support infrastructure.
Because of its technical suitability and the richness and completeness
of its support, ESRO is the correct solution for this problem space.
For details, visit any of these websites or resources:
- Purpose Of ESRO: A Foundation for the
Development of Efficient Protocols. This industry white paper provides an overview description of ESRO, including a comparison of ESRO with other candidates for this problem space such as RPC (Sun Microsystems), ROSE (ISO), WTP (the WAP Forum), T/TCP, RDP and VMTP.
- ESRO Protocol:
ESRO has been published as RFC-2188
- The ESRO Organization:
ESRO.org
hosts a number of mailing lists to support maintenance, enhancement and promotion of the ESRO protocols and related technologies.
- Application Programming Interfaces (APIs):
Fully documented APIs
interfacing to ESRO
- ESRO Client Development Toolkit:
Binary form
of ESRO Software
Development Toolkit for the following platforms is available:
- Linux and Solaris (and most other Unix)
- Windows 95/98/2000/XP
- Windows CE
In addition, portations to PalmOS and eCos are either
planned or in progress; and resources are available to
support third-party portation to embedded environments.
- ESRO Server Development Toolkit:
Binary form
of ESRO Software
Development Toolkit for the following platforms is available:
- Linux and Solaris (and most other Unix)
- Windows 2000/XP
- Open-Source Software Implementations:
Portable open-source software implementations of ESRO
are available for all major platforms. These implementations are freely available under the General Public License (GPL).
- ESRO in Embedded Environments:
Portation of ESRO to embedded environments is as simple as
selecting or implementing Open C Platform modules.
The Open C Platform
is subject to
Library General Public License (LGPL) and is publicly availble.
- ESRO in Java and J2ME:
Open-source Java and J2ME implementations of ESRO
are available under the General Public License (GPL).
- ESRO Stress and Regression Test Tools:
Stress and Regression Test
Tools
for ESRO protocols are available in source code form.
- Applications using ESRO:
Uses of ESRO in vertical applications include: telemetry, dispatch, credit card verification and vehicle tracking. For an example of how reliable and efficient applications
can easily be built on top of ESRO, see Efficient Mail Submission and Delivery (EMSD).
- ESRO Commercial Software Licensing:
Neda Communications, Inc
is
the author of ESRO Protocol and this implementation of ESRO. Commercial
licenses for the above software is available through Neda.
- ESRO Commercial Support:
Neda Communications, Inc
provides Maintenance, Portation Assistance and Consulting services
for the ESRO software.