Communication stack for network communication and routing
First Claim
1. A computer-readable medium having computer-executable components of a communication stack on an origin computer for delivering a message from an application on the origin computer to an application on a target computer, the communication stack comprising:
- a message layer interfacing with the application to obtain from the application on the origin computer a message to be delivered to the application on the target computer and routing information identifying the target computer and routing computers in a selected route to the target computer, the routing information including data identifying a transport protocol to be used with each routing computer in the selected route to the target computer;
a communication layer callable by the message layer to open a secured connection to the target computer through the selected route provided by the application on the origin computer and sending a message payload to the target computer through the connection;
a security layer callable by the communication layer for performing security operations on outgoing and incoming network communications;
a transport protocol layer callable by the communication layer for sending messages via a selected transport protocol, the transparent protocol layer having a plurality of plug-in transport protocol modules implementing different transport protocols;
the communication layer being programmed to use the transport protocol layer to send a connection message via the selected route to the target computer to establish the secured connection, and call the security layer after the secured connection is established to negotiate security parameters with the target computer and perform security operations on subsequent communications with the target computer.
2 Assignments
0 Petitions
Accused Products
Abstract
A communication stack enables computers implementing it to send, receive, or route network communications. The communication stack includes a message layer, a communication layer, a security layer, and a transport protocol layer, with plug-in transport protocol modules and plug-in security protocol modules. Each of the origin computer, target computer, and routing computers involved in delivering a message implements the communication stack. An application on the origin computer calls the message layer of the computer to send messages to a target computer and identifies routing computers on the route for delivering the message to the target computer. The message layer calls the communication layer to establish a connection to the target computer. The communication layer uses the transport protocol layer to establish an initial connection with the target computer, and uses the security layer to negotiate security parameters and to handle secured communications between the origin and target computers.
137 Citations
28 Claims
-
1. A computer-readable medium having computer-executable components of a communication stack on an origin computer for delivering a message from an application on the origin computer to an application on a target computer, the communication stack comprising:
-
a message layer interfacing with the application to obtain from the application on the origin computer a message to be delivered to the application on the target computer and routing information identifying the target computer and routing computers in a selected route to the target computer, the routing information including data identifying a transport protocol to be used with each routing computer in the selected route to the target computer; a communication layer callable by the message layer to open a secured connection to the target computer through the selected route provided by the application on the origin computer and sending a message payload to the target computer through the connection; a security layer callable by the communication layer for performing security operations on outgoing and incoming network communications; a transport protocol layer callable by the communication layer for sending messages via a selected transport protocol, the transparent protocol layer having a plurality of plug-in transport protocol modules implementing different transport protocols; the communication layer being programmed to use the transport protocol layer to send a connection message via the selected route to the target computer to establish the secured connection, and call the security layer after the secured connection is established to negotiate security parameters with the target computer and perform security operations on subsequent communications with the target computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for delivering a message to a target computer, comprising:
-
providing a communication stack on an origin computer having a message layer, a communication layer, a security layer, and a transport protocol layer, the transport layer having a plurality of plug-in transport protocol modules implementing different transport protocols; and invoking the message layer to deliver the message, including passing to the message layer the message to be delivered to the target computer and routing information identifying the target computer and routing computers in a selected route to the target computer, the routing information including data identifying a transport protocol to be used with each routing computer in the selected route to the target computer, the communication layer being callable by the message layer to open a secured connection to the target computer through the selected route provided by an application on the origin computer and send messages to the target computer through the connection, the security layer being callable by the communication layer for performing security operations on outgoing and incoming network communications, and the transport protocol layer being callable by the communication layer for sending messages via a selected transport protocol module, the communication layer being programmed to use the transport protocol layer to send a connection message via the selected route to the target computer to establish the secured connection, and to call the security layer to negotiate security parameters with the target computer and perform security operations on subsequent communications with the target computer after establishing the secured connection. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer networking system for network communications, comprising:
-
an origin computer, a target computer, and at least one routing computer disposed between the origin computer and target computer for routing network communications between the origin and target computers, each of the origin, target, and routing computers implementing a communication stack including a message layer, a communication layer, a security layer, and a transport protocol layer, the transport protocol layer of the origin computer having a plurality of plug-in transport protocol modules implementing different transport protocols; and an application on the origin computer using the communication stack on the origin computer to delivery a message to a target application on the target computer by invoking the message layer of the origin computer and passing the message to be delivered and routing information identifying a selected route from the origin computer to the target computer, said selected route including said at least one routing computer, said routing information including data identifying a transport protocol to be used with each routing computer in the selected route to the target computer; wherein the message layer of the origin computer calls the communication layer of the origin computer to connect to the target computer, the communication layer of the origin computer calls the transport protocol layer of the origin computer to send a connection message through the selected route to the target computer to establish a secured connection, and calls the security layer of the origin computer to negotiate security parameters with the security layer of the target computer and to perform security operations on subsequent messages sent to and received from the target computer after the secured connection is established, and wherein the communication stack of the routing computer receives the connection message, recognizes that the routing computer is not a destination of the connection message, forwards the connection message to a next stop in the selected route toward the target computer, and routes subsequent communications between the origin computer and the target computer. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
Specification