Communication stack for network communication and routing
First Claim
1. A computer-readable medium having computer-executable instructions for performing steps of:
- receiving from an application a message to be delivered to a target application on a target computer and routing information identifying the target computer and routing computers in a selected route to the target computer, the routing information specifying a transport protocol to be used with each routing computer in the selected route to the target computer, and a security mechanism to be used for interacting with the target computer; and
establishing a secured connection with the target computer through the selected route based on the routing information for delivering the message.
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.
30 Citations
41 Claims
-
1. A computer-readable medium having computer-executable instructions for performing steps of:
-
receiving from an application a message to be delivered to a target application on a target computer and routing information identifying the target computer and routing computers in a selected route to the target computer, the routing information specifying a transport protocol to be used with each routing computer in the selected route to the target computer, and a security mechanism to be used for interacting with the target computer; and
establishing a secured connection with the target computer through the selected route based on the routing information for delivering the message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-readable medium having computer-executable components of a communication stack for delivering a message for an application to a target computer, the communication stack comprising:
-
a message layer interfacing with the application to obtain from the application a 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;
a communication layer callable by the message layer to open a connection to the target computer through the selected route provided by the application and sending the 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 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 a connection, and call the security layer to negotiate security parameters with the target computer and perform security operations on subsequent communications with the target computer. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A method for delivering a message to a target computer, comprising:
-
providing a communication stack having a message layer, a communication layer, a security layer, and a transport protocol layer; 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 communication layer being callable by the message layer to open a connection to the target computer through the selected route provided by the application 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, 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 a 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. - View Dependent Claims (26, 27, 28, 29, 30)
-
-
31. 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;
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;
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 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, 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 (32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
Specification