|
Today's mission-critical systems make extensive use of distributed
computing to share information over large, heterogeneous networks. The
need for distributed applications runs the gamut from the classic
commercial replication of a database to more exotic publishsubscribe
applications. At the heart of these mission-critical systems are real-time
infrastructure software systems, which pass information reliably and
securely in real-time between many application servers and PCs, not just
within the confines of LAN and campus networks, but also across the
WAN/Internet.
The financial services industry is a leading sector for this class of
application, driven by the need for real-time communication of market data
to traders, brokers, and customers over the WAN/Internet. In addition,
real-time infrastructure hardware and software becomes increasingly
critical with the movement to straight-through processing and real-time
settlement.
While the financial industry leads, examples can be found across many
industries in areas such as:
- Manufacturing and process control for real-time collection,
monitoring, and distribution of sensor data from the factory floors.
- Military/aerospace for real-time signal collection and data
distribution from satellites.
- Telecommunications for real-time monitoring and control of network
devices and for distribution of alarms and errors from network
devices.
PUBLISH-THEN-SUBSCRIBE SOLUTIONS
Historically, the communications infrastructure for these distributed
applications was built in-house using low-level inter-process
communications primitives such as sockets, pipes, shared memory, and
remote procedure call. These home-brewed solutions were relatively
straightforward to develop for very small applications running on LANs.
But as the distributed applications grew larger and more heterogeneous,
using these primitive mechanisms became less and less attractive as myriad
complexities arose.
The need to handle these complexities stimulated the introduction of
real-time infrastructure software products, which themselves have
contributed to a broader businessware management system market. IDC
research forecasts that product revenues will experience more than 1,700
percent growth from 1998 to 2003, increasing from $313 million in 1998 to
$5.3 billion in 2003. This growth results from the need for a better way
to deliver application integration, event-driven processing, and business
process automation. Real-time communications and business process
automation will increasingly kick in to drive the expected growth.
Publishsubscribe differs from message queuing in that rather than
forcing applications to find the information they request, the information
is more efficiently pushed to the interested parties. In
publishsubscribe, clients subscribe to (register interest in) a subject.
Once a subject has been subscribed to by a program, the program will
receive any messages published to that subject in the distributed
application. Subjects are defined by the application developer. Subjects
can be thought of as logical message addresses, providing a virtual
connection between programs.
Real-time infrastructure software systems delivering scalable
high-performance publishsubscribe applications cover more than just
high-speed message routing and delivery throughout a network. They provide
high-availability and reliability by handling changes and failures to the
network through dynamic message routing. They also provide transparent
checking of problems that occur when processes are connecting, sending or
receiving messages, and providing automatic recovery. Real-time
infrastructure software systems provide thread-safe operation, allowing
multiple threads to operate simultaneously on a connection. Multiple
threads can greatly increase performance in multi-processor environments.
The heart of a real-time infrastructure software system is a high-speed
software message routing engine that programs can connect with to
send/receive messages with any other programs in the application group.
This message routing engine may or may not reside on the same machine as
the programs that connect to it. A simple application may use only one
server to provide all services. A more complex application may use
multiple servers to reduce network bandwidth and to realize the benefits
of added performance, load sharing, modularity, and reliability.
Leading vendors include Talarian (partially owned by Nortel Networks),
with its SmartSockets product and extensive OEM agreements, and Tibco
Software (partially owned by Reuters).
MAKING IT RELIABLE
Real-time infrastructure software systems and the communicating
applications, databases, and clients ride on an IP network, either
operating in unicast (point-to-point) or multicast (point-to-multipoint)
modes. Most of today's implementations use unicast, running on a
best-effort IP networking infrastructure and employing TCP to provide
highly reliable point-to-point data transfer. As client demands move
increasingly towards highly reliable real-time content distribution, the
underlying network has to move to a high-performance network.
However, it doesn't stop here! The growth of point-to-multipoint
content delivery will drive the deployment of IP multicasting, which is
significantly more bandwidth-effective than using multiple point-to-point
TCP sessions. High-performance IP multicasting is only part of the
solution, since IP multicasting is inherently unreliable; even in the best
design, some packet loss and out-of-sequence packets can occur. This leads
towards the need for reliable multicast protocols that can deliver
TCP-level reliability in a multicast environment. Such a reliable
multicast protocol runs best over a high-performance IP multicast network
(using one of a number of standard multicast protocols), in the same way
that TCP runs best over a high-performance IP unicast network.
The standards bodies are leveraging the experience gained from
designing and deploying reliable multicast protocols. One such protocol is
Pragmatic Generic Multicast (PGM). Another is the Reliable Multicast
Protocol (also known as the RMTP-II protocol). The objective for both is
to deliver TCP-level reliability, to be compatible with TCP congestion
control mechanisms, and to work without the need for router support. Part
of the standards development includes work on an optional Generic Router
Assist that would allow routers and switches to accelerate the recovery
from failures by caching information and retransmitting it as required to
subscribers.
WHAT TO LOOK FOR?
So what are the key parameters in evaluating real-time infrastructure
software and hardware for reliable content distribution? There are three:
- Application development flexibility that allows accelerated
time to market, avoiding the need for extensive customization and
support from the vendor.
- Deployment simplicity avoiding the need for configuration of each
machine that is participating in a publishsubscribe environment.
- Network efficiency offering seamless integration of
publishsubscribe and queuing, and multicast and unicast, offering a
single unified solution for all reliable real-time messaging needs.
Real-time infrastructure software systems meet the need for timely
reliable information dissemination. These applications represent just one
set of applications that characterize the second wave of e-business and
drive the need for superior performance (reliability, throughput, and
scalability) in not only the LAN but also the WAN/Internet.
Tony Rybczynski is director of strategic marketing and technologies
for Nortel Networks' Enterprise
Solutions unit. E-mail questions or comments to tonyryb@nortelnetworks.com.
[ Return
To The December 2000 Table Of Contents ]
|