Multiplex communications – Data flow congestion prevention or control – Control of data admission to the network
Reexamination Certificate
1999-08-10
2003-07-01
Rao, Seema S. (Department: 2666)
Multiplex communications
Data flow congestion prevention or control
Control of data admission to the network
C370S231000, C370S428000
Reexamination Certificate
active
06587434
ABSTRACT:
FIELD OF THE INVENTION
The present invention relates to the field of network communications, particularly communications using TCP/IP protocols and the like. Still more particularly, the present invention relates to an intelligent router capable of buffering datagrams.
BACKGROUND OF THE INVENTION
FIG. 1
illustrates a prior art communications circuit between two computers
110
and
120
through a computer network
130
. Computer network
130
may include routers
140
and
150
. Routers
140
and
150
may communicate with each other using one or more standardized protocols.
In prior art TCP/IP networks, first router
130
may not indicate to second router
140
that a certain amount of data storage space is available to store individual frames of data. Even if the router receiving information from a computer to be transmitted on the network has additional buffering space, the router may, in the prior art, receive only as much data at a time as space is available in the destination computer. Such a limitation on buffer size may unduly limit transmission speed over the network and increase latency.
Communications networks deliver data from a source node, typically a computer, to any number of destination nodes. Local Area Networks (LAN) are typically used for communications between nodes relatively close in proximity. LANs implement 48 bit addressing to identify the destination node.
However, due to bandwidth and transmission distance limitations, LANs are not used for coast-to-coast or even State-to-State communications. Wide Area Networks (WAN) are used for networking between computers or LANs located at a significant distance from each other. A LAN, due to close proximity of nodes, is much faster than a WAN with distant nodes.
WANs, such as the internet, use an addressing scheme known as an Internet Protocol (IP). Each node is assigned a unique IP address. Datagrams, also known as frames or packets of data, are sent with an IP header containing the IP address of the source node and, the IP address of the destination node.
A router receives the datagram, checks the IP destination node address and sends the datagram onto another router in an effort to reach the destination node.
Other protocols provide a second layer which rests on top of the IP. One such protocol is the User Datagram Protocol (UDP). Typically a UDP and data are packaged with an IP header which in turn is packaged with an ethernet header. UDP has a number of disadvantages. For example, UDP provides only one-way communication, no connection with the destination node, no verification of datagram receipt, and no error checking.
Another protocol layered on top of IP is the Transmission Control Protocol (TCP), which is the protocol of choice on the Internet. The TCP protocol, residing over the IP protocol (TCP/IP), provides a technique whereby data may be transferred from one node to another while insuring proper delivery of each datagram.
Using TCP/IP, each router may communicate with a counterpart router to indicate that data is to be sent from one router to another. Once a datagram has been transmitted, the source node awaits an acknowledgment from the destination node indicating the datagram has been received. If the datagram is not acknowledged as received within a certain time period (e.g., a timeout condition) the datagram may be resent.
TCP/IP has a number of advantages. For example, a two way connection may be established, the connection is continuous, datagram transmission is error-free, and the order of received datagrams is guaranteed to be correct. Data written to a TCP connection at the source node may be received at the destination node in the correct order and error free due to a sliding window effect of the buffer.
Sliding windows work as follows. In
FIG. 1
, source node
110
has data
160
waiting to be sent to final destination node
120
. Source node
110
transmits datagrams (partial data
160
) to a final destination node
120
having buffer
170
. Datagrams are routed from source node
110
through LAN
190
to first router
140
over WAN
180
to second router
150
and through LAN
200
onto final destination node
120
.
An acknowledgment is then transmitted back from final destination node
120
to source node
110
, along acknowledgment path
130
, after the datagrams has been received. An acknowledgment also reports the number of bytes destination node
120
has free in buffer
170
.
As illustrated in
FIG. 2
, eventually final destination node
120
buffer
170
is full and acknowledgment, advertising a full buffer
170
, is sent back to source node
110
. Source node
110
ceases to transmit data
160
when buffer
170
is full.
FIG. 3
illustrates final destination node
120
eventually consuming data residing in buffer
170
. Buffer
170
slides open, as would a window, and final destination node
120
advertises to source node
110
that buffer
170
has available space. Source node
110
resumes data
160
transmission. Buffer
170
size is a limitation that may unduly limit transmission speed over the network.
While TCP/IP insures that data may be transmitted in a timely fashion and error free, there are some disadvantages, particularly in high latency connections such as the internet. Since the TCP protocol is timeout based, a number of datagrams may be erroneously re-transmitted between nodes if a timeout conditions occurs due to latency of the network. If datagrams are erroneously resent, the latency of the network may be increased by the wasted bandwidth.
Errors in datagrams are corrected by requesting the entire datagram be retransmitted. Retransmitting entire datagrams results in redundant information being transmitted and causing additional latency. In addition, in a prior art TCP/IP protocol network, a router may await receipt of indication that a datagram is received before transmitting a next datagram. In a high latency network, such a technique may unduly slow down communications between nodes.
Also, on a network such as the internet data
160
is being requested sporadically and in bursts when users occasionally request another webpage. When buffer
170
is full data
160
is not sent until buffer
170
slides open. Final destination node
120
then notifies source node
110
that additional data
160
can now be sent. Data
160
may be traveling literally around the world, as shown in FIG.
4
. Notification of available space from destination node
120
to source node
110
through WAN (internet)
180
takes a significant amount of time and user
2
sees an unacceptable delay in the loading of webpages.
Until the present invention, these needs and problems had not been met or solved.
SUMMARY OF THE INVENTION
The present invention is an intelligent router and method for improving the routing of datagrams, resulting in increased effective bandwidth over networks of high latency. Intelligent routers may be used alone or in combination with additional intelligent routers.
Re-transmission signals received due to a timeout condition may be ignored until a later time, to allow for delays in receiving datagrams due to high latency networks. Time delay between receiving a re-transmit request and honoring the request can be determined by computer network delays.
If a signal is later received by the intelligent router from the destination router indicating receipt of the datagram, the re-transmit request is ignored. If no such receipt signal is received, then the re-transmit request may be honored.
Datagrams may continue to be routed by the intelligent router without waiting for confirmation of receipt of a previous datagram. If a previous datagram is not received, such datagram may be re-transmitted in part or in whole.
In addition, the intelligent router may provide additional buffering for data to be transmitted over the network. Rather then receive only enough data to fill the buffer of the destination node, the intelligent router may buffer additional data within the router.
An intelligent router buffering data, as opposed to the destination node buffering data, is tran
Bell Robert P.
Cirrus Logic, Inc
Duong Frank
Lin Steven
Rao Seema S.
LandOfFree
TCP/IP communications protocol does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with TCP/IP communications protocol, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and TCP/IP communications protocol will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3081857