# US 7,424,549 B2 · System, method, and article of manufacture for using a replaceable component to select a replaceable quality of service capable network communication channel component

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,424,549 B2
- Document ID: US7424549B2
- Status: Granted
- Kind: B2
- Application number: 10/118,157
- Filed: 2002-04-09
- Published: 2002-10-10
- Granted: 2008-09-09
- Earliest claimed: 2001-04-09
- Assignees: Objective Interface Systems, Inc.
- Inventors: R. William Beckwith
- Web page: https://patentgrep.com/patent/US7424549B2

## CPC

- G06F 9/465: {Distributed object oriented systems (remote method invocation [RMI] G06F9/548)}
- G06F 9/544: {Buffers; Shared memory; Pipes}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system, method and article of manufacture for communication in a network application. A connection or communication path to a replaceable transport is initiated in a network application. After the initiation, the network application creates an object to accept the connection or communication path. Once the connection or communication path is established, the network application provides QoS information for the replaceable transport to the replaceable transport, and to at least one object corresponding to the connection or communication path.

## Claims

### Claim 1

A communication method comprising:
creating, by at least one ORB, an instance of a first transport plug-in to initiate a communication path;
creating an instance of a second transport plug-in in response to the previously created instance of the first transport plug-in; and
notifying the at least one ORB of the acceptance of the communication path, wherein the first transport plug-in and the second transport plug-in are based on an implementation of one or more replaceable transport abstractions, and wherein said instances of the first and second transport plug-ins operate in accordance with information reflective of a service level specific to the first and second transport plug-ins, said information having a data form that is not specific to any particular transport.

### Claim 2 (depends on 1)

The communication method of claim 1, wherein the information reflective of a service level comprises a list of Quality of Service (QoS) parameters.

### Claim 3 (depends on 2)

The communication method of claim 2, wherein the list is comma-delimited.

### Claim 4 (depends on 1)

The communication method of claim 1, wherein the the at least one ORB stores the information reflective of the service level without interpreting the information.

### Claim 5 (depends on 1)

The communication method of claim 1, further comprising:
selecting a service level scheduling parameter of communication in the at least one ORB.

### Claim 6 (depends on 5)

The communication method of claim 5, wherein the scheduling parameter is at least one of time, priority, latency and bandwidth.

### Claim 7 (depends on 1)

The communication method of claim 1, wherein the instance of the first transport plug-in is created at a client and the instance of the second transport plug-in is created at a server.

### Claim 8 (depends on 1)

The communication method of claim 1, further comprising:
receiving a request to send a message, wherein the request includes information reflective of at least one of a selected communication path and a selected service level.

### Claim 9 (depends on 8)

The communication method of claim 8, wherein the selected service level reflects at least one of a specified Quality of Service (QoS) associated with a delivery of the message and a specified priority for handling the message by a server, the method further comprising:
choosing a subsequent communication path and a priority to service the request based on the information with the request.

### Claim 10 (depends on 1)

The communication method of claim 1, further comprising:
instantiating an object operable to read data from a network and write data to the network.

### Claim 11 (depends on 10)

The communication method of claim 10, wherein the instantiated object is further operable to shutdown the communication path upon failure.

### Claim 12 (depends on 1)

The communication method of claim 1, the further comprising:
transmitting the information to the at least one transport plug-in instance, a first object corresponding to the communication path, and a second object corresponding to the communication path.

### Claim 13 (depends on 12)

The communication method of claim 12, wherein the first object is a factory object which is operable to perform the initiating, and the second object is a factory object which is operable to perform the creating.

### Claim 14 (depends on 1)

The method of claim 1, wherein the data form of the information comprises string format.

### Claim 15

A communication method in a network application comprising:
creating, by at least one ORB, an instance of a first transport plug-in to initiate a communication path;
creating an instance of a second transport plug-in in response to the previously created instance of the first transport plug-in;
notifying the at least one ORB of the acceptance of the communication path, wherein the first transport plug-in and the second transport plug-in are based on an implementation of one or more replaceable transport abstractions, and wherein said instances of the first and second transport plug-ins operate in accordance with information reflective of a service level specific to the first and second transport plug-ins, said information having a data form that is not specific to any particular transport;
receiving a request to send a message, wherein the request includes information reflective of at least one of a selected communication path and a selected service level, and the selected service level reflects at least one of a specified Quality of Service (QoS) associated with delivery of the message and a specified priority for handling the message by a server; and
choosing a subsequent communication path and a priority to service the request based on the information with the request.

### Claim 16

A communication method in a network application comprising:
receiving, from a first network node, a request to send a message, wherein the request includes information indicating at least one of a selected communication path and a selected service level, said information having a data form that is not specific to any particular transport; and wherein the selected service level reflects at least one of a specified Quality of Service (QoS) associated with delivery of the message and a specified priority for handling the message by a server, wherein the server comprises a second network node; and
choosing a subsequent communication path and a priority to service the request based on the information with the request.

### Claim 17

An apparatus for communication comprising:
a memory having an executable program that:
creating, by at least one ORB, an instance of a first transport plug-in to initiate a communication path;
creating an instance of a second transport plug-in in response to the previously created instance of the first transport plug-in; and
notifying the at least one ORB of the acceptance of the communication path, wherein the first transport plug-in and the second transport plug-in are based on an implementation of one or more replaceable transport abstractions, and wherein said instances of the first and second transport plug-ins operate in accordance with information reflective of a service level specific to the first and second transport plug-ins, said information having a data form that is not specific to any particular transport; and
a processor configured to execute the program.

### Claim 18

An apparatus for communication in a network application comprising:
means for creating, by at least one ORB, an instance of a first transport plug-in to initiate a communication path;
means for creating an instance of a second transport plug-in in response to the previously created instance of the first transport plug-in; and
means for notifying the at least one ORB of the acceptance of the communication path, wherein the first transport plug-in and the second transport plug-in are based on an implementation of one or more replaceable transport abstractions, and wherein said instances of the first and second transport plug-ins operate in accordance with information reflective of a service level specific to the first and second transport plug-ins, said information having a data form that is not specific to any particular transport.

### Claim 19 (depends on 18)

The apparatus of claim 18, wherein the information reflective of a service level comprises a list of Quality of Service (QoS) parameters.

### Claim 20 (depends on 19)

The apparatus of claim 19, wherein the list is comma-delimited.

### Claim 21 (depends on 18)

The apparatus of claim 18, wherein the at least one ORB stores the information reflective of the service level without interpreting the information.

### Claim 22 (depends on 18)

The apparatus of claim 18, further comprising:
means for selecting a service level scheduling parameter of communication in the network application.

### Claim 23 (depends on 22)

The apparatus of claim 22, wherein the scheduling parameter is at least one of time, priority, latency and bandwidth.

### Claim 24 (depends on 18)

The apparatus of claim 18, further comprising:
means for receiving a request to send a message, wherein the request includes information reflective of at least one of a selected communication path and a selected service level.

### Claim 25 (depends on 24)

The apparatus of claim 24, wherein the selected service level reflects at least one of a specified Quality of Service (QoS) associated with a delivery of the message and a specified priority for handling the message by a server, and further comprising:
means for choosing a subsequent communication path and a priority to service the request based on the information with the request.

### Claim 26 (depends on 18)

The apparatus of claim 18 further comprising:
means for instantiating an object operable to read data from a network and write data to the network.

### Claim 27 (depends on 26)

The apparatus of claim 26, wherein the instantiated object is further operable to shutdown the communication path upon failure.

### Claim 28 (depends on 18)

The apparatus of claim 18 further comprising:
means for transmitting the information to the at least one transport plug-in instance, a first object corresponding to the communication path, and a second object corresponding to the communication path.

### Claim 29 (depends on 28)

The apparatus of claim 28, wherein the first object is a factory object which is operable to perform the initiating, and the second object is a factory object which is operable to perform the creating.

### Claim 30 (depends on 18)

The apparatus of claim 18, wherein the data form of the information comprises string format.

### Claim 31

A computer storage medium with code embodied therein for causing a computer to perform a communication method, the method comprising:
creating, by at least one ORB, an instance of a first transport plug-in to initiate a communication path;
creating an instance of a second transport plug-in in response to the previously created instance of the first transport plug-in; and
notifying the at least one ORB of the acceptance of the communication path, wherein the first transport plug-in and the second transport plug-in are based on an implementation of one or more replaceable transport abstractions, and wherein said instances of the first and second transport plug-ins operate in accordance with information reflective of a service level specific to the first and second transport plug-ins, said information having a data form that is not specific to any particular transport.

### Claim 32 (depends on 31)

The computer storage medium of claim 31, wherein the at least one ORB stores information reflective of the Quality of Service (QoS) without interpreting the information.

### Claim 33 (depends on 31)

The computer storage medium of claim 31, further comprising:
selecting a Quality of Service (QoS) scheduling parameter of communication in the network application.

### Claim 34 (depends on 33)

The computer storage medium of claim 33, wherein the scheduling parameter comprises at least one of a time, priority, latency and bandwidth.

### Claim 35 (depends on 31)

The computer storage medium of claim 31, wherein the instance of the first transport plug-in is created at a client and the instance of the second transport plug-in is created at a server.

### Claim 36 (depends on 31)

The computer storage medium of claim 31, further comprising:
receiving a request to send a message, wherein the request includes information
reflective of at least one of a selected communication path and a selected service level.

### Claim 37 (depends on 36)

The computer storage medium of claim 36, wherein the selected service level reflects at least one of a specified Quality of Service (QoS) associated with a delivery of the message and a specified priority for handling the message by a server, and further comprising:
choosing a subsequent communication path and a priority to service the request based on the information with the request.

### Claim 38 (depends on 31)

The computer storage medium of claim 31 further comprising:
initiating an object operable to read data from a network and write data to the network.

### Claim 39 (depends on 38)

The computer storage medium of claim 38, wherein the instantiated object is further operable to shutdown the communication path upon failure.

### Claim 40 (depends on 31)

The computer storage medium of claim 31 further comprising transmitting the information to the at least one transport plug-in instance, a first object corresponding to the communication path, and a second object corresponding to the communication path.

### Claim 41 (depends on 40)

The computer storage medium of claim 40, wherein the first object is a factory object which is operable to perform the initiating, and the second object is a factory object which is operable to perform the creating.

### Claim 42 (depends on 31)

The computer storage medium of claim 31, wherein the list is comma-delimited.

### Claim 43 (depends on 31)

The computer storage medium of claim 31, wherein the data form of the information comprises string format.

### Claim 44

An apparatus for communication in a network application comprising:
a memory having a program that, when executed by a processor:
creates, by at least one ORB, an instance of a first transport plug-in to initiate a communication path;
creates an instance of a second transport plug-in in response to the previously created instance of the first transport plug-in;
notifies the at least one ORB of the acceptance of the communication path, wherein the first transport plug-in and the second transport plug-in are based on an implementation of one or more replaceable transport abstractions, and wherein said instances of the first and second transport plug-ins operate in accordance with information reflective of a service level specific to the first and second transport plug-ins, said information having a data form that is not specific to any particular transport;
receives, from a first network node, a request to send a message, wherein the request includes information reflective of at least one of a selected communication path and a selected service level, and the selected service level reflects at least one of a specified quality of service associated with delivery of the message and a specified priority for handling the message by a server wherein the server comprises a second network node; and
chooses a subsequent communication path and priority to service the request based on the information with the request; and
a processor configured to execute the program.

### Claim 45

An apparatus for communication in a network application comprising:
a memory having a program that when executed by a processor:
receives, from a first network node, a request to send a message, wherein the request includes information reflective of at least one of a selected communication path and a selected service level, said information having a data form that is not specific to any particular transport, and wherein the selected service level reflects at least one of a specified Quality of Service (QoS) associated with delivery of the message and a specified priority for handling the message by a server, wherein the server comprises a second network node; and
chooses a subsequent communication path and a priority to service the request based on the information with the request; and
a processor configured to execute the program.

### Claim 46

A computer storage medium with code embodied therein for causing a computer to perform a communication method in a network application, the method comprising:
receiving, from a first network node, a request to send a message, wherein the request includes information reflective of at least one of a selected communication path and a selected service level, said information having a data form that is not specific to any particular transport, and wherein the selected service level reflects at least one of a specified Quality of Service (QoS) associated with delivery of the message and a specified priority for handling the message by a server, wherein the server comprises a second network node; and
choosing a subsequent communication path and a priority to service the request based on the information with the request.

### Claim 47

An apparatus for a communication method in a network application comprising:
means for receiving a request, from a first network node, to send a message, wherein the request includes information reflective of at least one of a selected communication path and a selected service level, said information having a data form that is not specific to any particular transport, and wherein the selected service level reflects at least one of a specified Quality of Service (QoS) associated with delivery of the message and a specified priority for handling the message by a server, wherein the server comprises a second network node; and
means for choosing a subsequent communication path and a priority to service the request based on the information with the request.
