Method and apparatus for data communication

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Reexamination Certificate

active

06243765

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to the field of data communication. In particular, the present invention describes a method and apparatus for communicating data, where the data is communicated independent of the platform, and the data is self describing.
2. Description of Related Art
In early computer systems, programs were executed sequentially. The instructions for a first program would be read into a large mainframe and the result would be computed. Then another program's instructions would be read into the computer and those results would be computed. Now, computer systems can run a number of programs, appearing to the user to be executing simultaneously. This concept has even evolved to the use of networks where one computer is running one application while another computer networked to the first computer runs a second application. To improve performance of modern computer systems, it is desirable for the computers to be able to communicate information between the various programs (applications).
In previous systems, one application would be written to be able to communicate data with a second application. For example, if two applications wanted to share information, the first application would be designed to include a number of variables that the second application would understand. Data could then be inserted in the variables and transmitted from the first application to the second application. The second application would have been written to understand these variables and to extract the information from them. Thus, two applications could communicate. However, as computer systems and the networks they run on get larger and larger, the number of applications needing to share information has grown substantially. For example, it's conceivable to have a thousand applications running on 500 computer systems, all of those applications then needing to share information. Some applications are likely to be of an earlier version, than others. New applications will be added, having new functions and needing to share more and different information. Some applications will only know how to communicate with only a few of the other applications. However, it is desirable that all the applications would be able to share at least some data with each other.
One possible solution to this problem has been to define a very small set of known data components. For example, in Simple Network Management Protocol, IETF Request For Comments (RFC) 1067 (SNMP), two applications must know all the data components that are to be shared between the two applications. For example, if a first application transmits the time and date and a file name to a second application, the second application would have to have been written to understand that the time and date and the file name would be received from a first application. Further in some protocols, the ordering of the data being transmitted was critical. For example, the first application might send the time, date and file name in that order and the second application would understand that the first piece of information would be the time, the next piece of information would be the date, and the next piece of information would be the file name. If the authors of the first application wished to change this order, or to add a new variable to the information, the second application would also have to be rewritten to incorporate these changes. Thus what is needed is a system where the data to be transmitted is not ordered, that is not necessarily predefined, and in particular, allows older versions of applications exchange information with newer versions of applications.
Another prior art system is available from International Business Machines, of New York. IBM has created a distributed data management (DDM™) system to transmit information from one computer system to another computer system in a heterogeneous network. DDM, for example, allows a personal computer to communicate file data with a mainframe. A personal computer will send a request for information containing a list of objects. The list might include, for example, a file name, a record number and file type. The list can contain any number of objects in any order. Prior to exchanging any requests for data, the DDM applications must first negotiate what level of service will be provided. For example, at the lowest level, relatively basic information can be exchanged. If the mainframe application and the PC application both support a higher level of DDM implementation, then more information can be exchanged. For example, relational database access may be provided by the mainframe at a higher level of DDM support.
DDM has a number of shortcomings. First, DDM supports only point-to-point communications, that is, a request for information sent by the PC to the mainframe cannot then be used by another level of the implementation on, for example, a second PC. Thus, if the PC implements level two of DDM, the mainframe implements level one and a second PC implements level two, the first PC can only exchange level one information with the mainframe. The first PC would not be able to communicate level two information to the second PC without directly communicating with the second PC. A second shortcoming related to DDM, is that a level one, or earlier version application, cannot accept objects related to a higher level application. Therefore, for example, assume two PCs are in communication. The first PC runs a level one implementation and the second PC runs a level two implementation. The following problem occurs. If the second application did not negotiate the levels prior to attempting to transmit information to the first application, the second application would not understand that the first application only implements level one. That is, a request from the second application may include data objects that are not supported by the first application. DDM requires that the first application transmit a reply a message that that object is not supported.
Therefore, what is required is a system that allows applications to share data easily and efficiently. The system should be extensible, and should not require prior negotiation of data interfaces. The system should be able to work on a single computer executing a number of applications, as well as, on a number of computers running a number of applications. It is also desirable to have a system which allows a number of different versions of a single application to continue to communicate with other versions of that application.
SUMMARY OF THE INVENTION
A method and apparatus for easily communicating information is described. In one embodiment, OCL (Object Control Language) data classes support flexible data types and structures useful in a variety of applications. OCL provides a general and extensible format for exchanging data between applications. The data can be exchanged without requiring applications to predefine data types, templates or transport mechanisms used for exchanging data. OCL data is self contained. Receiving applications need process only the data that the application is interested in, other data can be ignored. The use of dynamic property lists as the basic structure of exchange provides an easy path to extendibility. New, or updated applications, may add additional elements to exchanged data, without affecting previous applications, which do not need the additional element. For data exchange, OCLLIST instances are encoded into architecture-neutral binary streams at the sending end and are decoded back into OCLLIST instances at the receiving end.
One embodiment, of the present invention, includes a method of communicating data between a plurality of applications. First a list is encoded. The list includes a first set of data objects. Each of the data objects includes data to be communicated. Next, the encoded list is transmitted to a first of said plurality of applications. Then the encoded list is decoded for a first application. However, the first application and a second of said

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and apparatus for data communication does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and apparatus for data communication, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for data communication will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2488841

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.