Electrical computers and digital processing systems: multicomput – Computer-to-computer protocol implementing – Computer-to-computer data transfer regulating
Reexamination Certificate
1999-05-06
2002-10-01
Sheikh, Ayaz (Department: 2155)
Electrical computers and digital processing systems: multicomput
Computer-to-computer protocol implementing
Computer-to-computer data transfer regulating
C709S234000, C709S232000, C370S395430
Reexamination Certificate
active
06460085
ABSTRACT:
BACKGROUND OF THE INVENTION
The present invention relates to telecommunication techniques. More particularly, the present invention provides a technique including methods and systems for managing memory in a TCP over satellite system for use in a wide area network of computers such as the Internet. The present invention provides a controlled memory management in equipment for high speed and quality transmission of signals to a distant location over a satellite system using an Xpress Transport Protocol (herein “XTP”) protocol, for example. But it will be recognized that the invention has a much wider range of applicability; it can also be applied to a private bridged network, terrestrial wireless network links, and the like.
The Internet is an international “super-network” connecting together millions of individual computer networks and computers. The Internet is generally not a single entity. It is an extremely diffuse and complex system over which no single entity has complete authority or control. Although the Internet is widely known for one of its ways of presenting information through the World Wide Web (herein “Web”), there are many other services currently available based upon the general Internet protocols and infrastructure.
The Web is generally easy to use for people inexperienced with computers. Information on the Web can be presented on “pages” of graphics and text that contain “links” to other pages either within the same set of data files (i.e., Web site) or within data files located on other computer networks. Users often access information on the Web using a “browser” program such as one made by Netscape Communications Corporation of Mountain View, Calif. or Microsoft Corporation of Redmond, Wash. Browser programs process information from Web sites and display the information using graphics, text, sound, and animation. Accordingly, the Web has become a popular medium for advertising goods and services directly to consumers.
The Internet supports many other forms of communication. For example, the Internet allows one-to-one communication via electronic mail, which is commonly known as “e-mail.” The Internet also has “bulletin boards” which are used by users to post colorful text and graphics for others to read and respond to. For real time communication, the Internet has “chat rooms” and the like, which allow users to communicate to each other by way of typed messages. In some cases, the Internet can also be used for voice communication between users. All of these forms of communication are possible, at least in part, by way of an important connection, which allows information to be transmitted from many different servers on the Internet.
The Internet is based on the TCP/IP protocol suite. At the network layer, an Internet Protocol, which is known as IP, provides a mechanism to deliver packets addressed to individual computers. The Internet has a plurality of computer systems implementing IP, which are generally interconnected to each other using local area networks and dedicated transmission lines, to form a wide area network of computers. IP packets are delivered on a best effort basis and are not guaranteed to arrive at their intended destination, which is known as “unreliable” service.
For many applications that require reliable data delivery service, the Internet uses a connection mechanism called Transmission Control Protocol, which is known as TCP. TCP has a variety of desirable characteristics that allows it to be suitable for communication over the Internet. For example, TCP considers the data size or best sized segment of data to send from a transmitting server over the communication medium to a receiving server. Additionally, TCP maintains a timer, which waits for the receiving server to send an acknowledgment of the reception of the data segment from the transmitting server. If the timer times out before the acknowledgment is received, TCP resends the data segment, which provides reliability in the communication. TCP also maintains a checksum on its header and data, which monitors any modification in the data in transit. If the data arrives with an invalid checksum, TCP discards the data and does not acknowledge receiving the data. If data segments arrive out of order, TCP can also recombine the segments in order at the receiving server. Furthermore, TCP provides flow control, which only allows a finite amount of data to be sent to a buffer on the receiving server. This prevents a fast server computer from overflowing all the buffers on a slower server computer.
Although TCP has been well suited for transmitting Internet data between a plurality of servers, which are coupled to each other by way of conventional telephone systems and lines with similar characteristics, TCP has many limitations. For example, TCP is suitable for “short hops” but often slows down communication over extremely long distances which can have significant latency (e.g., transcontinental hops via satellite). Here, the flow control and acknowledgment features take too long to send and receive, which make communication slow. Additionally, opportunities for gains in efficiency still exist. In particular, high speed transmission of Internet data over a satellite network, for example, to a relatively slower recipient, such as modem, and the like, can cause congestion. Additionally, pathological conditions can arise in networking using satellites, that can cause resource exhaustion in systems, which leads to further slowing of TCP connections.
From the above, it is seen that a more efficient way of managing memory in the transmission of information for Internet services over large geographical regions using a wireless communication media is highly desirable.
SUMMARY OF THE INVENTION
According to the present invention, a technique for managing memory for storing information communicated over one or more TCP connections over a wireless wide area network is provided. In an exemplary embodiment, the present invention provides methods and systems for controlling the buffering of information that flows over a TCP connection to an Xpress Transport Protocol (herein “XTP”) connection, for example.
In a specific embodiment, the present invention provides a method for managing memory for buffering information communicated over an internet connection established across a satellite link. The method can be operable on a large variety of systems, such as a system comprising one or more clients, one or more servers, a first gateway connected to at least one client, a second gateway connected to at least one server, and a wireless telecommunications link between these gateways. The method includes intercepting a connection attempt with a server initiated by a client. The client will attempt a connection that will have a first characteristic data rate. A connection can be established between a first gateway and a second gateway over the telecommunications link, that can be a satellite link or the like. This connection will have a second characteristic data rate. The first gateway can include a buffer for storing information received over the telecommunications link from the second gateway and a buffer for storing information to be sent to the client. The method can perform a step of determining a state in the receive buffer. The state can indicate whether the characteristic data rate in the telecommunications link is substantially greater than the characteristic data rate for the client. A step of setting a receive window size for the client at the first gateway to reduce an amount of data received over the telecommunications link for the client can also be part of the method. The combination of these steps can provide a method for managing memory for buffering information coming from the telecommunications link in the first gateway.
In another aspect of the present invention, a system for controlling the flow of information over a satellite is provided. The system can include at least one client, selected from a plurality of potential clients and at least one server, selected from a plurality of pot
Hartrick Timothy W.
Hasson Marc B.
McCooey Jeremy A.
Toporek Jerome D.
Duong O.
Mentat Inc.
Sheikh Ayaz
Townsend and Townsend / and Crew LLP
LandOfFree
Method and system for managing memory in an internet over... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system for managing memory in an internet over..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for managing memory in an internet over... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2930447