Methods and apparatus for directing messages to computer systems based on inserted data

Active Publication Date: 2006-11-28
CISCO TECH INC
View PDF7 Cites 256 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

[0019]As an example of the usefulness of embodiments of the invention, a data communications device equipped with an embodiment of the invention can, for instance, intercept a packet associated with a TCP communications session and can encode or otherwise insert load balancing information that may include demographic and / or geographical or physical location information into the original TCP packet. This operation may, for example, increase the size of the original packet by a certain number of bytes. Prior to retransmission of this packet further towards its intended recipient computer system, the data communications device equipped the technology of the referenced Patent Application can make adjustments to TCP sequence information, acknowledgment information, error correction information (e.g., checksum information) and packet length information within the packet in order to appropriately adjust the TCP connection information associated with that packet so as to not disrupt or disturb the TCP communication session state maintained by the sending (e.g., client) and receiving (e.g., server) computer systems. The recipient computer system (e.g., the server) can thus receive the modified packet without error and without disruption to the TCP connection state associated with the communications session over which that packet arrived. The device that inserts data in this manner is capable of tracking the amount of extra data inserted into, or modified within, packets associated with the communications session and is able to adjust connection information associated with all other packets transmitted over the communications session after the insertion or modification take place such that the computer systems which operate as the endpoints communications session do not experienced disruption to the insertion or modification of data.
[0020]In other words, once insertion of extra data or modification of data to one or more packets in a communications session takes place in order to insert, for example, load balancing information into such packets, the technology disclosed in the aforementioned referenced Patent Application causes the device that inserted the data to continually modify connection information (e.g., TCP sequence and acknowledgment information, checksum information or other information) within all other packets transmitted over the network that are associated with that communications session such that connection state for the communications session maintained by the end computer systems such as a client and server does not become disrupted.
[0023]In another embodiment of the invention, the message includes connection information that the second data communications device modified during the process of inserting the extra data such that a connection over which the message is transmitted between the first computerized device and the second computerized device is not disrupted by the insertion of the extra data into the message by the second data communications device.
[0025]In another embodiment, the extra data is geographic data that indicates a geographic location associated with the first computerized device. The step of identifying selects a second computerized device that is geographically preferred to handle a connection from the first computerized device. In this manner, a device equipped with the invention can perform load balancing by detecting inserted geographic information in packets.
[0026]In still another embodiment, the step of forwarding comprises the step of forwarding the message containing the extra data, and including the modified connection information, to the second computerized device such that the second computerized device (e.g., a selected web server) can process the message in conjunction with the extra data inserted into the message by the second data communications device without disruption to the connection between the first and second computerized devices.

Problems solved by technology

Due to the robustness of connection oriented communications protocols such as TCP, such protocols do not allow for the modification of the contents of one or more packets of data being transmitted through a computer network using one of these protocols.
This would disrupt the TCP communications session between the client and server.
These aspects of TCP are often cited as security features since conventional attempts at modification of packet data for packets transferred using the TCP protocol result in the disruption of sequence and acknowledgment information and error correction or checksum information associated with the connection state of the communications session using the TCP protocol.
That is, mid-stream or post-transmission modifications to TCP packets as those packets propagate through a computer network are typically not performed or allowed by conventional data communications devices or data transmission systems in order to avoid disruption to the TCP communications session state required or expected by the end-to-end computer systems that share the connection.
As a result of the inability to insert data into packets of a communications session while those packets are traveling over a network (e.g., after their transmitted by a client), conventional load balancing technologies such as those employed in a web site are unable to perform load balancing based on information such as extra data inserted into a packet associated with that communications session.
However, since conventional techniques for handling establishment and maintenance of TCP connections between a client and server computer system do not allow modification of messages by adding extra data in those messages once they are transmitted from a client computer system and travel over a network on route to a destination computer system, conventional techniques for load balancing do not take into account information that could be provided by mid-stream devices such as data communications devices through which the message may propagate during transmission of the client computer system to the load balancer.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Methods and apparatus for directing messages to computer systems based on inserted data
  • Methods and apparatus for directing messages to computer systems based on inserted data
  • Methods and apparatus for directing messages to computer systems based on inserted data

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0041]FIG. 1 illustrates an example of a computer system environment 100 suitable for use in explaining example operations of embodiments of the invention. The computer system environment 100 includes a first data communications device 110 configured according to embodiments of the invention to performing load balancing techniques for a web site 105. The environment 100 also includes a computer network 101 that couples the first data communications device 110 to a second data communications device 130. A first computer system 140, such as a client computer system, couples to the computer network 101 via the second data communications device 130 and can send messages 115-1 such as content requests to the web site 105. The second data communications device 130 operates an insertion manager 135 that is capable of inserting extra data 160 into the messages 115-1 transmitted by the first computer system 140 over the computer network 101 to the web site 105. The extra data 118 allows the ...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

Mechanisms and techniques provide a system that operates in a data communications device such as a switch or a router to provide a technique for load balancing packets between computer systems based on extra data inserted in the packets. The system receives a message containing extra data. The extra data was inserted into the message by a second data communications device existing in a network coupling the first data communications device to a first computerized device that originated the message. The system identifies, based on the extra data inserted into the message, a second computerized device that is to process the message and forwards the message to the second computerized device for processing. The extra data can include demographic data that can be used to select a demographic server, and for selection of a specific server from a group of servers associated with the demographic server.

Description

RELATED APPLICATIONS[0001]This invention is related to technology disclosed in a co-pending United States Application for Patent entitled “Methods and Apparatus for Inserting Data into a Communications Session”, having Ser. No. 10 / 044,216, Filed Nov. 20, 2001, and which shares co-inventorship, with the same Assignee as the present Application for Patent. The entire teaching and contents of this referenced patent application are hereby incorporated by reference herein in their entirety.BACKGROUND OF THE INVENTION[0002]Computer and communications networks such as the Internet allow computer systems to exchange information using various data communications protocols. One common protocol in widespread use that provides for a reliable exchange of information in packets between computer systems in such a network is the Transmission Control Protocol or TCP. TCP is a connection oriented protocol that allows two computer systems to each maintain a connection state for a communications sessio...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
IPC IPC(8): G06F15/173G06F15/16
CPCH04L69/16H04L67/1002H04L69/161H04L67/1008H04L67/1021H04L67/1001
InventorCHAMPAGNE, JEAN-PHILIPPEAVIANI, JAMES A.CHASE, JOSHUA MILES
OwnerCISCO TECH INC