Release Information for The ACE ORB (TAO)

This document contains information on the following topics related to the current release of TAO:
A complete list of all modifications to TAO is available in the ChangeLog.


IDL Compiler

Point of contact: Jeff Parsons

Current status: (As of April 30, 2001.)


Known bugs/unimplemented constructs:

Future work:

Pluggable Protocols

Point of contact: Ossama Othman

The goal of the pluggable protocol effort is to (1) identify logical communication layers in the ORB, (2) abstract out common features, (3) define general interfaces, and (4) provide necessary mechanisms for implementing different concrete ORB and transport protocols. TAO's pluggable protocol framework will allow disparate communication mechanisms to be supported transparently, each with its own set of requirements and strategies.

For example, if the ORB is communicating over a system bus, such as PCI or VME, and not all the features of GIOP/IIOP are necessary and a simpler, optimized ORB and transport protocol can be defined and implemented. Similarly, it should be straightforward to add support for new transport protocols that use native ATM or shared memory as the underlying communication mechanism. In all cases the ORB's interface to the application will remain compliant with the OMG CORBA standard.

There will be several stages of the development process: (1) basic pluggable transport protocols framework, (2) support for multiple profiles, (4) add example transport protocols, such as ATM and VME, and refine/optimize the transport protocols framework, and (4) add support for pluggable ORB protocols, e.g., replacements for GIOP. Each of these steps is outlined below:

Current Status:

Known Issues:

Critical Work: Future Work:


Portable Object Adapter (POA)

Point of contact: Irfan Pyarali

The POA associates servants with the ORB and demultiplexes incoming requests to servants.

Current Status:

Known issues: Future work: Recently completed work:



CORBA Naming Service and Interoperable Naming Service

Points of contact: Marina Spivak and Vishal Kachroo

OMG defined CORBA Naming Service (spec here) to provide a basic service location mechanism for CORBA systems. CosNaming manages a hierarchy of name-to-object-reference mappings. Anything, but typically the server process hosting an object, may bind an object reference with a name in the Naming Service by providing the name and object reference. Interested parties (typically clients) can then use the Naming Service to resolve a name to an object reference.

More recently, CORBA Naming Service was subsumed/extended by the CORBA Interoperable Naming Service, a.k.a. INS (spec here). INS inherits all the functionality from the original Naming Service specification in addition to addressing some its shortcomings. In particular, INS defines a standard way for clients and servers to locate the Naming Service itself. It also allows the ORB to be administratively configured for bootstrapping to services not set up with the orb at install time. This page provides a brief description of additional features INS provides, and how they are implemented in TAO.

Current status (as of 18 May 2001):

Recent work: Features: Future work:


CORBA Trading Service

Point of contact: Seth Widoff

The Trading Service is an implementation of the COS Trading Service speficiation that meets the Linked Trader conformance criteria --- it implements the Lookup, Register, Admin, and Link interfaces, but not the Proxy interface. Notably, the TAO trader supports the following features:

Trading Service documentation is also available.

Future Work:


CORBA Property Service

Point of contact: Alexander Babu Arulanthu

Current status (as of Mar 9th, 1999): All the interfaces of this service have been implemented. Please go through the test examples at $TAO/orbsvcs/tests/CosPropertyService. Property Service is has been used by the TAO's Audio Video Streaming Servicedeveloped for TAO. For general documentation of the Property Service, please read The Property Service Specification.

Recent Work:


CORBA Concurrency Service

Point of contact: Torben Worm

Current status (as of May 3rd): The Concurrency Service provides a mechanism that allows clients to acquire and release various types of locks in a distributed system.

Future Work:


CORBA Audio/Video Streaming Service

Point of contact: Yamuna Krishnamurthy

This is an implementation of the OMG spec addressing the Control and Management of Audio/Video Streams.For more documentation on TAO's A/V Service please have a look here.

Current Status:

(as of Sep 1st 1999)

Work in progress:


CORBA Time Service

Point of contact: Vishal Kachroo

The Time Service allows clients to connect to Time Service Clerks and obtain globally synchronized time. This time is calculated from the time obtained from one or more Time Servers running on multiple machines in the network. The service uses the TAO Implementation Repository to activate the time servers on demand.

Current status (as of 10th Jan 1999):

Future work:


CORBA Event Service

Last updated: Fri Mar 5 20:38:26 CST 1999

Point of contact: Pradeep Gore

The COS compliant Event Service implements the Event Service Specification: (.pdf), (.ps)
This implementation is based on the Real Time Event service.

Features in this release:

Known bugs:


CORBA Telecom Log Service

Last updated: Sat Feb 19 16:58:42 CDT 2000

Point of contact: Krishnakumar Elakkara Pathayapura

The CORBA Telecom Log Service prototype was released in TAO version 1.0.6.

Features supported in the first version:

Things to be done:

Future work and enhancements:


CORBA Notification Service

Last updated:Wed Feb 14 15:14:15 CST 2001

Point of contact: Pradeep Gore

Work is in progress to implement the CORBA Notification Service . The implementation released in TAO 1.1.12 consists of the following (see the associated README's for more information):

Features supported thus far:

Note that this implementation does not support Pull interfaces and Typed Event style communication.

Project Schedule

The TODO list runs like this:

CORBA Security Service

Point of contact: Ossama Othman

For up-to-date information, see the project web site here.

Implemented Features:

Current Status: Schedule:


TAO's Scheduling Service

Point of contact: Chris Gill and David Levine

Currently Implemented Features:

Future work:

TAO's Logging Service

Point of contact: Krishnakumar Elakkara Pathayapura

Current status (Jan 23 2000):

Future work:

TAO's support for FT services

Point of contact: Balachandran Natarajan

Current Status:

TAO supports the ORB level requirements to achieve Fault Tolerance for CORBA Objects. The details of the ORB level support is described in the FT spec . Specifically TAO implements the sections 27.2.2, 27.2.3, 27.2.6 thru 27.2.8 of the document.

Future Work:


TAO's Load Balancer

Point of contact: Ossama Othman

Current Status:

TAO's Load Balancer currently implements the following load balancing algorithms:

Known Issues:

Recent Work:

Future Work:


Test & Performance Tests

Point of contact: Nagarajan Surendran

Current Status:

The TAO IDL_Cubit test application makes use of the Naming Service and the server holds a TAO_Naming_Server component.Just running server and client is enough to test the application.

The various tests in the tests/POA test the different features of the Portable Object Adapter interface like Explicit Activation, On Demand Activation,etc..

MT_Cubit:

Current status:

The TAO MT_Cubit test application is meant to serve as a starting point for real-time tests on the TAO system. It comprises the following parts:

Clearly, if the ORB endsystem handles the priorities of the various requests correctly, increasing the volume of lower priority requests should not affect the performance seen by the higher priority requests. The application thus serves as a tool to measure and confirm this behavior.

Future work:

Pluggable:

Current status:

The TAO Pluggable test utilizes ACE Timeprobes to time the latency at various points in the ORB, especially that incurred by the Pluggable Protocols implementation. Comparisons can be made not only between different layers of the ORB, but also between different protocols as they become available.

Future work:


ORB-related ACE Changes

Points of contact: Nanbor Wang and Irfan Pyrarli

Recently Completed Work:

Future work:
None currently scheduled.

The DOVE Demo

Points of contact: Michael Kircher and Chris Gill.

DOVE is documented in detail online. This discussion focuses on the following goals:

The DOVE Browser uses independent visualization components (Java Beans) and the Event Channel as DOVE Agent. Connections can be established between monitored metrics and the visualization components.

We have three major components: Observables (monitored metrics), Observers (a Java Bean for displaying the metric) and a DataHandler (for demultiplexing the monitored metrics to the appropriate Observables). Each component inherits from a base class, so that a certain behavior of the components can be assured for each component. Relationships between components are based on these base classes.

The used Java Beans are required to conform to some standards, as they have to support a function called "getProperty" which allows the DOVE Browser to determine if the vizualization capabilities of a specific Java Bean are sufficient to display the metric. A JavaBean is for example a Java Panel which shows a Graph of the delivered doubles. So all metrics can be displayed by this visualization component which can be expressed by a single double.

The DataHandler is connected to the Event Push Consumer (PUSH, because we use the push concept of the Event Service). The Event Push Consumer does not know what kind of data is transported. The only component knowing all the details about the dependencies of the metrics is the DataHandler. This separation allows easy extension and change of the demo.

Object Diagrams are available about this new concept.

Event Service events are used as communication between DOVE Applications and the DOVE Browser. The DOVE MIB analyses the event data field of all events and stores this information into a file. The event data filed is of type CORBA::Any and the DOVE MIB has no notion of what is conveyed in this field. So the DOVE MIB has to discover the content via the embedded type code information. Future work includes:

For more information on the DOVE demo, please refer to: $TAO_ROOT/orbsvcs/tests/Simulator/README.


Location Forwarding

Point of contact: Irfan Pyarali, Michael Kircher.

For more information see Location forwarding


Global Resources and Leader-Follower Model

Point of contact: Irfan Pyarali, Michael Kircher.

For more information see Leader-follower model


Implementation of locate request

Point of contact: Irfan Pyarali, Michael Kircher.

For more information see Locate request


Asynchronous Method Invocation

Points of contact: Alexander Arulanthu , Michael Kircher and Carlos O'Ryan

Status:

Finished work:

Future Work:


Portable Interceptors

Point of contact: Ossama Othman.

For more information see Portable Interceptors


Local Interfaces

Point of contact: Nanbor Wang.

Local interfaces are first defined in the CORBA Component Model specification. For more information on using the local interfaces, please refers to Section 11.1.1 to 11.1.4 of the spec and our short guideline on implementing local objects.


CORBA Standards Conformance

Here is a summary of TAO's conformance issues with CORBA latest CORBA specifications (updated 9 August 2000):
2.3.1 and 2.3 differ in very little, if at all, check:
ftp://ftp.omg.org/pub/docs/formal/99-10-07.pdf
and search for the change bars, meanwhile this can help:

Future Work (aka. known problems):


Back to the TAO documentation index.