WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Method and apparatus for pacing communications in a distributed heterogeneous network    

Get related patents on CD
United States Patent5517622   
Link to this pagehttp://www.wikipatents.com/5517622.html
Inventor(s)Ivanoff; Mario J. (Denver, CO); Skaates; Mary Z. (Eaglewood, CO)
AbstractA data communication method and apparatus is presented that allows communication in a distributed heterogeneous network. Communications managers reside in local processing environments and are responsible for interfacing local end users with the remainder of the heterogeneous network. Each communications manager receives distribution units from end users, the distribution units being assigned various priority levels and levels of assurance. Within each communications manager, an adjacent communications manager is determined in accordance with a communications path to a destination for the distribution unit. The distribution unit is then configured according to a network protocol stack existing between the communications manager and the adjacent communications manager, and the distribution units are transmitted according to priority. Each communications manager can have any number of adjacent communications managers each communicating through different network protocol stacks. Also described is load distribution among a complex of processors that share common functions, as well as control of information flow between adjacent communications managers.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History Custom Search
Inventor     Ivanoff; Mario J. (Denver, CO); Skaates; Mary Z. (Eaglewood, CO)
Owner/Assignee     Galileo International Partnership (Rosemount, IL)
Patent assignment
All assignments
Company News
Publication Date     May 14, 1996
Application Number     08/208,618
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     March 9, 1994
US Classification     709/232 370/256 370/408 709/224 710/29
Int'l Classification     G06F 013/00
Examiner     Lee; Thomas C.
Assistant Examiner     Luu; Le Hien
Attorney/Law Firm     Arnold, White & Durkee
Address
Parent Case     This is a divisional of application Ser. No. 07/685,073 filed on Apr. 11, 1991 now became U.S. Pat. No. 5,317,568.
Priority Data    
USPTO Field of Search     395/275 395/200 370/85.6 370/85.13 370/94.1 370/94 370/60 370/85
Patent Tags     pacing communications distributed heterogeneous network
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5107492
Roux

Apr,1992

[0 after 0 votes]
5063562
Barzilai

Nov,1991

[0 after 0 votes]
5058110
Beach
370/464
Oct,1991

[0 after 0 votes]
5016248
Kudoh
370/413
May,1991

[0 after 0 votes]
4893307
McKay
370/389
Jan,1990

[0 after 0 votes]
4811337
Hart
370/256
Mar,1989

[0 after 0 votes]
4736369
Barzilai
370/231
Apr,1988

[0 after 0 votes]
4727537
Nichols
370/236
Feb,1988

[0 after 0 votes]
4706081
Hart
370/254
Nov,1987

[0 after 0 votes]
4677616
Franklin
370/423
Jun,1987

[0 after 0 votes]
4663706
Allen
709/234
May,1987

[0 after 0 votes]
4616359
Fontenot
370/230
Oct,1986

[0 after 0 votes]
4509851
Ippolito
399/77
Apr,1985

[0 after 0 votes]
5163042
Ochiai
370/238
Dec,1969

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B

[0 market size comments]
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 market share comments]
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 reasonable royalty comments]
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

[0 Guesstimation of Royalty Value Comments]
License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 license availability comments]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 owner/assignee comments]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

[0 competitive advantage comments]
Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

[0 commercial alternatives comments]
 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed:

1. An apparatus for pacing data communications transmitted between communications managers residing on a plurality of hardware platforms of a distributed heterogeneous communications network, comprising:

a plurality of adjacent communications managers including an origin communications manager residing on an origin hardware platform a destination communications manager residing on a destination hardware platform and at least one intermediate communications manager residing on an intermediate hardware platform between said origin and destination communications managers, at least one of said communications managers having a hardware operating platform different from hardware operating platforms of all other communications managers;

means, within each prior adjacent communications manager of said plurality of adjacent communications managers, for appending a pacing request to information packets being transmitted from said origin communications manager to said destination communications manager;

a network protocol stack interface, within each prior adjacent communications manager, for configuring each of said information packets according to a convention of a network protocol stack between said prior adjacent communications manager and said next adjacent communications manager, at least two of said network protocol stacks between adjacent communications managers being different from one another;

means for transmitting said information packets from said prior adjacent communications manager to said next adjacent communications manager;

means, within said next adjacent communications manager, for assessing availability of local resources;

means, within said next adjacent communications manager, for receiving said information packets from said prior adjacent communications manager;

means, within said next adjacent communications manager, for assessing pacing requests in each received information packet;

means, within said next adjacent communications manager and responsive to said pacing requests, for formulating pacing responses indicative of a desired increase or decrease of transmission of information packets from said prior adjacent communications manager to said next adjacent communications manager in accordance with said assessment of local resources within said next adjacent communications manager;

a network protocol stack interface, within each next adjacent communications manager, for configuring said pacing response in accordance with said convention of said network protocol stack between said prior adjacent communications manager and said next adjacent communications manager; and

means for transmitting said pacing responses from said next adjacent communications manager to said prior adjacent communications manager.

2. The apparatus of claim 1, said means for assessing availability of local resources within said next adjacent communications manager, further comprising:

means for comparing an amount of available local resources within said next adjacent communications manager with at least one predetermined threshold.

3. The apparatus of claim 2, said means for comparing further comprising means for comparing said amount of available of local resources with first and second predetermined thresholds.

4. A method of pacing data communications transmitted between adjacent communications managers residing on a plurality of hardware platforms of a distributed heterogeneous communications network, each communications manager being connected to a respective plurality of end users, comprising:

creating information units within an origin communications manager residing on an origin hardware platform, each information unit including indicia of a destination communications manager residing on a destination hardware platform, said origin communications manager, said destination communications manager and at least one intermediate communications manager residing on an intermediate hardware platform constituting a chain of adjacent communications managers;

within each prior adjacent communications manager of said chain of adjacent communications managers, appending a pacing request to each information unit indicative of an amount of information to be transmitted to a next adjacent communications manager of said chain of adjacent communications managers;

within each prior adjacent communications manager, configuring each of said information units according to a convention of a network protocol stack between said prior adjacent communications manager and said next adjacent communications manager, at least two of said network protocol stacks between adjacent communications managers being different from one another;

transmitting said information units from said prior adjacent communications manager to said next adjacent communications manager in accordance with said convention of said network protocol stack;

assessing availability of local resources within each said next adjacent communications manager;

receiving said information units from said prior adjacent communications manager in said next adjacent communications manager;

assessing, within said next adjacent communications manager, pacing requests appended to each received information unit;

within said next adjacent communications manager, forming pacing responses in accordance with said pacing requests, each pacing response being indicative of a required increase or decrease of transmission of information units from said prior adjacent communications manager to said adjacent communications manager, in accordance with said assessment of local resources within said next adjacent communications manager;

within said next adjacent communications manager, configuring said pacing responses according to said convention of said network protocol stack; and

transmitting said pacing responses from said next adjacent communications manager to said prior adjacent communications manager.

5. The method of claim 4, further comprising:

assigning a priority designation to each information unit.

6. The method of claim 5, each said next adjacent communications manager forming said pacing response in accordance with said priority designation.

7. The method of claim 4, further comprising:

transmitting pacing requests from said prior adjacent communications manager to said next adjacent communications manager without information units.

8. The method of claim 4, said step of assessing availability of local resources with each said next adjacent communications manager comprising:

comparing an amount of available local resources within said next adjacent communications manager with at least one predetermined threshold.

9. The method of claim 8, said comparing step comprising comparing said amount of available local resources with first and second predetermined thresholds.

10. The method of claim 4, further comprising:

assessing, within each said next adjacent communications manager, an intensity of local resource use by other adjacent communications managers; and

forming and transmitting pacing response to said other adjacent communications managers according to an intensity of local resource usage.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

The invention relates to a method and apparatus for managing and facilitating communications in a distributed heterogeneous network.

Information system planners are faced with a wealth of new technology including powerful processes at every level of the system. Such processes include, for example, desktop systems, main frame systems, cooperative processing, graphical user interfaces, distributed data bases and so-called "open" operating systems, which are just a few of the technological advances that promise to propel computing even more fully into the daily activities of people in organizations. The proliferation of communication networks to connect these processes over the past several years has increased the potential for users of the information systems to share information.

Such computer networking resulted in gains in productivity and efficiency, and networked computer systems provide access to a vast information repository. Every major hardware and software vendor in the world has created networked platforms and applications. With such proliferation, connecting these disparate communication networks and operating platforms so that they can cooperate and interoperate to allow information in physically separate networks to be integrated seamlessly has been a problem.

Corporations are moving rapidly toward implementing large scale strategic computing systems that integrate all components of an enterprise. These complex computer systems will be based on networks capable of supporting large numbers of personal computers, file servers, and multiple links to disparate main frame systems. Data and processing will be distributed throughout the network in cooperative processing applications. In addition, such distributive cooperative processing will allow enterprises to keep pace with rapid technological change while protecting past investment in information structure. Enterprise connectivity, transparent seamless data transfer, and increased transaction processing are just some of the growing requirements facing modern enterprises.

In conjunction with the increased demand for distributed environments, there has been an increase in on-line transaction processing. With the advent of high performance hardware and improved operating systems, on-line, mission critical applications are being developed and implemented outside of the main frame environment. It has been projected by the Vertical Systems Group that local area network originated messages across Wide Area Network Systems will increase in size 690% (21K to 145K) by 1994 with a corresponding 30% reduction in transport time (1.5 seconds to 1.05 seconds).

In addition to these factors, there is an increasing requirement for interoperability among various vendor hardware platforms and across unlike networks. The desire for vendor independence without the associated costs (both in development and productivity), is driving the support of open systems and common communication interfaces.

In a traditional environment, applications are forced to perform the activities that are not only germane to the business needs, but also to the communications network needs. If an application were viewed as a column with the user interface at the top of the column, the interface development at the bottom of the column becomes a customization process specific to the communications network environment. This customization inhibits the movement of the application to other environments, and it limits change to the communications network or operating environment without impact to the application. Typically, this impact is two-fold, first the cost of the application rewrite, and second, the cost of supporting two applications performing the same tasks during cut-over. For a single platform change in a reasonably-sized environment, hundreds of applications may be affected, significantly impacting development and computing resources.

In order to avoid such customization of application, it would be desirable to have a standard communications network interface independent of the different types of communications networks used in the system.

SUMMARY OF THE INVENTION

The present invention solves the above-noted problems by providing an enterprise-wide virtual communications network with seamless access to applications across multiple communication networks. The present invention normalizes the application interface to the communications network, thus relieving the application of performing network-type services, allowing the application developer to concentrate on the business need and contributing to making the application portable across multiple environments which utilize the standard interface.

The present invention can be made to work with all major communications network architectures worldwide. With the present invention, the benefits of standard application interfaces, application portability, and virtual communication networks, can be applied on a global basis, across any number of disparate systems and architectures with end-to-end network management capability being provided, independent of the underlying networks.

The present invention normalizes application interaction with communications channels through a simplified three-verb interface: SEND, RECEIVE and STATUS. This allows applications to interact with a single communications interface, regardless of the number of underlying communications networks that exist. In addition, selectable levels of assurance and selectable levels of message priority are provided.

Also according to the present invention, virtual addresses for computing complexes can be created, and these virtual addresses can then be resolved to a physical address by an intermediate network node. This provides a simple, yet effective enterprise-wide scheme for resource management from within each complex.

The present invention also provides priority queuing, message correlation, message segmentation and message reassembly.

These features, and others that will become apparent with reference to the following detailed description, provide several distinct benefits. First, the interface to applications is normalized across all environments. The application is not required to compensate for the existing network services, but instead only needs to interact with the SEND, RECEIVE and STATUS primitives. The primitives offer parameters for functional customization of the individual communications managers dependent upon the user needs, but this does not disrupt the applications in any way.

In addition, the present invention provides seamless, cross-system access to any user application on the network, and an end user application is no longer required to know where data and applications reside. The protocol interface function of the present invention handles the multi-system access specifics.

Further, because of the ability of the present invention to work across the major communications networks existing worldwide, it can be ported to any number of platforms, regardless of their individual communication traits. This portability of the present invention allows the benefits of the present invention to be applied to a system or systems of any size.

More particularly, the present invention includes a method and apparatus for communicating between communications managers of a distributed heterogeneous network. Within the network, at least one of the communications managers operates on an operating platform which is different from the operating platforms of other communications managers in the heterogeneous network.

To each communications manager are connected a number of end users including privileged end users and non-privileged end users. The privileged end users typically perform system management functions and communicate through the heterogeneous network by use of system management distribution units, whereas non-privileged end users typically transfer information or data distribution units between one another.

When sending distribution units, an origin end user transfers the distribution unit to an origin communications manager along with a priority designation for the distribution unit and an indication of the destination end user that is to receive the distribution unit. The priority designations available to privileged end users for application to distribution units include all of those available to non-privileged end users and additional designations of higher priority.

For each distribution unit, the communications manager determines an adjacent communications manager along a communication path within the heterogeneous network from the origin end user to the destination end user. After determining the adjacent communications manager, the distribution unit is configured according to the conventions of a network protocol stack existing between the two communications managers.

The distribution units are then transmitted from the origin communications manager to the adjacent communications manager with system management distribution units typically being transmitted before any data or information distribution units.

Within the adjacent communications manager, it is determined whether the destination end user is connected to the adjacent communications manager. This can be performed by comparing the identity of the destination communications manager with the identity of the adjacent communications manager.

If it is determined that the destination end user is connected to the adjacent communications manager, the distribution unit is forwarded to that destination end user. If, on the other hand, it is determined that the destination communications manager is not the adjacent communications manager, the adjacent communications manager determines a next adjacent communications manager along the path to the destination end user, and configures the distribution unit according to the conventions of a network protocol stack existing between the adjacent communications manager and the next adjacent communications manager. This procedure is repeated until the distribution unit arrives at the end user.

Within each communications manager there exists a management information base which includes system management information including, for example, tables used to assess the identity of adjacent communications managers, indicators of local resource usage, and the like. The management information base of each communications manager can only be modified by privileged end users either locally or through system management distribution units transmitted from remotely located privileged end users.

The present invention also contemplates load distribution among information processors that share common functions, for example, data base searching functions. Thus, the information processors which are distributed throughout the heterogeneous network can be collected into subsets or complexes of information processors when the information processors within a complex perform common functions. Each complex is assigned a load distribution record and is also assigned a virtual communications manager address.

Then, an origin end user which desires to use the functions common to the processors in a complex need only indicate the address of the virtual communications manager in distribution units being transmitted. Then, within one of the chain of communications managers between the origin information processor and the information processor which ultimately will perform the task, the virtual communications manager address is translated into an actual communications manager address by use of the information in a load distribution record corresponding to the complex of processors. Each load distribution record can be adjusted to reconfigure the distribution of processing load among processors in a complex. In addition, processors within a complex can themselves be grouped into subcomplexes, each with virtual communications manager addresses. In other words, a virtual communications manager address can either be resolved into an actual communications manager address, or into another virtual communications manager address.

The pacing of communications between adjacent communications managers is also contemplated by the present invention. To pace communications, pacing requests are formulated in a prior adjacent communications manager and appended to information packets being transmitted to a next adjacent communications manager. Those pacing requests typically include a request to increase the amount of information that can be transferred from the prior adjacent to next adjacent communications manager.

The prior adjacent communications manager then configures the information packet and pacing request in accordance with a convention of a network protocol stack existing between the prior adjacent and next adjacent communications managers. Pacing requests typically call for the increase in information flow from prior adjacent to next adjacent communications manager. The information packets with pacing requests are then transmitted from the prior adjacent to the next adjacent communications manager, and the next adjacent communications manager determines whether the request to increase transmission should be honored, or whether transmission should be reduced, based on availability of local resources. A pacing response is then formulated and configured according to the conventions of the network protocol stack existing between the next adjacent and prior adjacent communications manager, and the pacing response is transferred from next to prior adjacent communications manager over the network protocol stack.

If local resources are particularly scarce, the pacing response can indicate that the next adjacent communications manager refuses all communication from the prior adjacent communications manager, with the exception of the highest priority system management communications. In addition, since a particular communications manager can have a number of adjacent communications manager, a communications manager can apply different pacing restrictions on different adjacent communications managers, typically as a function of intensity of use of local resources by the adjacent communications managers.

The detailed features and functions of the present invention will be more clearly understood by those skilled in the art with reference to the drawings and detailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a distributed heterogeneous network embodying the communications manager of the present invention.

FIG. 2 is an exemplary configuration of vendor specific hardware and software embodying the communications manager of the present invention.

FIG. 3 is a more detailed exemplary configuration of hardware and software embodying the communications manager of the present invention.

FIG. 4 illustrates the flexibility of the present invention to allow applications to communicate over various network transport services.

FIG. 5 is a block diagram illustrating the layering of the communications manager environment according to the present invention.

FIG. 6 is a schematic representation of the major functions of the communications manager of the present invention connecting end users to one another.

FIG. 7 is a more detailed schematic representation of the functions of the communications manager of the present invention.

FIG. 8 is yet another detailed schematic representation of the functions of the communications manager of the present invention.

FIG. 9 is the data flow through multiple communications managers according to the present invention.

FIG. 10 is the data flow control from adjacent communications manager to adjacent communications manager in accordance with the present invention.

FIG. 11 shows the resource management of the communications manager/network layer of the present invention.

FIG. 12 shows asynchronous traffic flow from one end user to another according to the present invention.

FIG. 13 shows synchronous traffic flow from one end user to another for a query according to the present invention.

FIG. 14 shows synchronous traffic flow from one end user to another for a reply according to the present invention.

FIGS. 15A and 15B illustrate CM to CM protocol flow according to the present invention.

FIGS. 16A and 16B show query-reply and query-relay/query-reply correlation flow according to the present invention.

FIG. 17 is an example of a Load Distribution Record (LDR) according to the present invention.

FIG. 18 is the format of a communications manager Interchange Unit (CMIU) according to the present invention.

FIG. 19 is a diagram of the CMIU component field introducer according to the present invention.

FIG. 20 is a diagram of the CMIU element subfield introducer according to the present invention.

FIG. 21 is a diagram of the CMIU fields and subfields according to the present invention.

FIGS. 22, 23 and 24 are diagrams of the CMIU Formats 1, 2 and 3 in accordance with the present invention.

FIG. 25 is a diagram of the CMIU prefix component as used in the present invention.

FIG. 26 is a diagram of the CMIU transmission services component as used in the present invention.

FIG. 27 is a diagram of the CMIU control component as used in the present invention.

FIG. 28 is a diagram of the CMIU environment component as used in the present invention.

FIG. 29 is a diagram of the CMIU distribution component as used in the present invention.

FIG. 30 is a diagram of the CMIU response component as used in the present invention.

FIG. 31 is a diagram of a Systems Management Distribution Unit (SMDU) component field introducer according to the present invention.

FIG. 32 is a diagram of another SMDU component field introducer according to the present invention.

FIG. 33 is a diagram of a SMDU element subfield introducer according to the present invention.

FIG. 34 is a diagram of another SMDU element subfield introducer according to the present invention.

FIG. 35 is a diagram of SMDU fields and subfields according to the present invention.

FIG. 36 illustrates the cooperation of local and remote communications managers.

FIG. 37 illustrates category 1 data exchange.

FIG. 38 illustrates category 2 data exchange.

FIG. 39 illustrates category 3 data exchange.

FIG. 40 illustrates category 4 data exchange.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

A. DEFINITIONS

ACF/NCP--IBM's Advanced Communications Facility/Network Control Program

API--Application Program Interface

APPC--IBM's Advanced Program-to-Program Communications

AS--Application Services

CM--Communications Manager. An application level entity which manages the common Network Protocol Stack resource on behalf of the other applications in the invention. Communications between applications residing in separate physical systems are co-managed by the Communications Manager counterparts parts residing in the individual systems.

CM#--Communications Manager Number. A unique number assigned to each Communications Manager by which it is known by all other Communications Managers.

CMAPI--Communications Manager Applications Program Interface. The command boundary between the application

and the Communications Manager.

CMIU--Communications Manager Interchange Unit. An envelope which the Communications Manager appends to a distribution or distribution segment.

DIA--IBM's Document Interchange Architecture

DU--Distribution Unit. Data which the End User has passed to the Communications Manager for delivery to a counterpart End User.

EU End User. An applications program using the Communications Manager in order to communicate with a counterpart End User.

EU#--End User Number. A number assigned to each End User within the network.

GTID--Global Terminal ID

HLH--Host Link Handler

INET--Integrated Network

IRD--Intermediate Routing and Distribution Node

IWS--Intelligent Workstation

LAN--Local Area Network

LCN--Local Computer Network

LDR--Load Distribution Record

LU--Logical Unit within IBM's SNA

MIB--Management Information Base. CM operational data base containing routing information, CM local data elements and CM activity status.

MPIF--IBM's Multiprocessor Interconnect Facility

MVS IBM's Multiple Virtual Storage

NPH--Network Protocol Header

NPS--Network Protocol Stack. Any set of network transport services which facilitates the ability of applications to communicate with other applications.

NPT--Network Protocol Trailer

PSAPI--Protocol Stack Applications Program Interface. The underlying transport mechanism interface utilized in Communications Manager network transfers.

SMAP--Systems Management Applications Program. The most significant privileged End User to be invoked in support of Communications Manager Management Command type functions. The SMAP is the single focal point through which to coordinate the management of the Communications Manager "Virtual Network" environment and resources.

SMAPI--Systems Management Applications Program Interface

SMDU--Systems Management Distribution Unit. A distribution which flows between partner SMAPs, and which is made up of a series of self-defining fields that may themselves be broken into self-defining subfields.

SNA--IBM's Systems Network Architecture

SSCP--System Services Control Point within IBM's SNA

TCP/IP--Transmission Control Protocol/Internet Protocol

TCU--Terminal Control Unit

TPF--IBM's Transaction Processing Facility

WANS--Wide Area Network Services

B. DESCRIPTION

1. Introduction

FIG. 1 illustrates, without reference to specific vendor products, a configuration of the Communications Manager of the present invention. It illustrates the Communications Manager as a connection facility for connecting any computing device to any other computing device on a peer-to-peer basis. FIG. 1 also illustrates that this connection can be carried over various communications networks. The only restriction to these connections being that two computing devices that are immediately adjacent, using the Communications Manager of the present "invention to communicate with each other, are required to use the same underlying network.

Referring to FIG. 1, host computers 101 using Communications Managers 102 communicate directly with other host computers 101 over an unspecified Local Computer Network 103. Host computers 101 using Communications Managers 104 communicate directly with each other and with computers with a Unix derivative operating system 106, personal computers 107, mini computers 108, and an unspecified computing device 109, each with their own Communications Managers, over an unspecified Wide Area Network 110 through controller 111.

Computer 106 with a Unix derivative operating system using Communications Manager 112, communicates directly with other computers 113 with Unix derivative operating systems, personal computers 114, and unspecified computing devices 116, each with their own Communications Managers, over an unspecified local area network 117 of bus technology.

Personal computer 107 using Communications Manager 118 communicates directly with other personal computers 119, and unspecified computing devices 121, each with their own Communications Managers, over an unspecified Local Area Network 122 of ring topology.

Minicomputer 108 uses Communications Manager 123 to communicate directly with personal computers 124 and unspecified computing devices 126, each with their own Communications Managers, over an unspecified vendor proprietary network 127.

An unspecified computing device 109 using Communications Manager 128 communicates directly with personal computers 129 and unspecified computing devices 131, each with their own Communications Managers, over an unspecified communications network 132.

Finally, FIG. 1 implicitly illustrates that any computer with a Communications Manager in accordance with the present invention can communicate with any other computer with a Communications Manager through the pass-through routing capabilities of the present invention. The various networks shown generically in FIG. 1 are illustrative of the networks with which the Communications Manager of the present invention can be used, and should not be construed to restrict the present invention to only those networks. The Communications Manager of the present invention can use any network that can pass data in octet format or that can simulate passing da