Patent Publication Number: US-5896372-A

Title: Method and apparatus for creating virtual high bandwidth data channels

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention generally relates to bi-directional communication links comprised of a high bandwidth link and a low bandwidth link and, more particularly, to such communications links in which the direction of the high bandwidth link is dynamically reversed in response to data traffic conditions to create virtual high bandwidth data channels in both directions. 
     2. Background Description 
     There are several systems with a bi-directional communication link where the bandwidth in one direction must always be far greater than the bandwidth in the other direction. Such systems, however, cannot handle wide variations in data traffic flowing in the low bandwidth direction. 
     In database systems that do database queries and information retrieval, a user sends a query to some information server and receives a response. The query message comprises a small amount of bytes, but the response could be a very large data stream comprising graphics, images and text. These systems require a high bandwidth link downstream to the user and a low bandwidth link upstream to the server. However, users often have large databases on their local machine that need to be transferred to another location. For example, a local business office may execute many transactions during the day on a local database and then require that the database be backed up to a remote site. During the day, transactions information are received from some central server on the high bandwidth link. At the end of the day, the high bandwidth link is required in the reverse direction to provide speedy backup. 
     Browsing the World Wide Web on the Internet is another application that requires links with different bandwidths in each direction. When a user is browsing another site, the high bandwidth link is required in the downstream direction. However, the user may have a set of web pages on the local machine that are being read by a remote site. In this case, the high bandwidth link is needed in the upstream direction. 
     SUMMARY OF THE INVENTION 
     It is therefore an object of the present invention to provide a method and apparatus for creating a virtual high bandwidth, bi-directional, communications link utilizing low and high bandwidth uni-directional links in opposite directions. 
     According to the invention, there is provided two uni-directional communications links whose directions can be dynamically reversed. A bandwidth management protocol between two stations allows the asymmetrical links to be reversed in response to changing traffic needs. 
     A communications media provides a bi-directional link between two stations but restricts the bandwidth in one direction to a fraction of the total bandwidth supported by the link. In such a system, high bandwidth communication is only provided in one direction. By making the direction of the high bandwidth link dynamically reversible, the system can provide each station with the ability to either send or receive along a high bandwidth link. The system time shares the high bandwidth connection using a protocol running on the stations. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The foregoing and other objects, aspects and advantages will be better understood from the following detailed description of a preferred embodiment of the invention with reference to the drawings, in which: 
     FIGS. 1A and 1B diagramatically illustrate the two states of the bi-directional communication channels according to the invention; 
     FIG. 2 is a block diagram showing a transmit buffer as located at both stations shown in FIGS. 1A and 1B; 
     FIG. 3 is a flow diagram of the control flow of the exchange between Stations A and B when going from high bandwidth transmit to low; and 
     FIG. 4 is a flow diagram of the control flow of the exchange between Stations A and B when going from low bandwidth transmit to high. 
    
    
     DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION 
     Referring now to the drawings, and more particularly to FIGS. 1A and 1B, there is shown two stations with an asymmetrical bi-directional communications link. The link is reversible. FIG. 1A shows &#34;state A&#34;, where station A is using the high bandwidth channel to transmit to station B. FIG. 1B shows &#34;state B&#34; with the link reversed, where station B is using the high bandwidth channel to transmit to station A. 
     FIG. 2 shows a transmit buffer. Such a transmit buffer is provided in each of the two stations. Data is queued in the transmit buffer before being transmitted. This is a first-in, first-out or FIFO buffer. Note that there are two thresholds relative to the depth of the data queued in the buffer. These thresholds are used by the protocols running on stations A and B to dynamically reverse the direction of the high bandwidth channel. FIGS. 3 and 4 show the control flow of the exchange process when going from high bandwidth transmit to low, and when going from low bandwidth to high. 
     The process of reversing or exchanging the link is as follows. Two stations, A and B, are connected through a bi-directional link. Station B&#39;s transmit link is high bandwidth while its receive link is low bandwidth. Station A&#39;s receive link is high bandwidth while its transmit link is low bandwidth. When Station A&#39;s transmit buffer fills up and reaches a set maximum threshold, Station A will immediately send a control packet to Station B requesting that the high bandwidth direction be reversed. Station B, upon receiving the control packet, checks its transmit buffer. One of two cases will occur: 
     Case 1: If Station B&#39;s transmit buffer is below a set minimum threshold, then 
     1. Station B sends a control packet to Station A granting the request. 
     2. Station B stops transmitting on high bandwidth link. 
     3. Station B listens for data on high bandwidth link as well as low bandwidth link. 
     4. Station A receives the control packet granting its request. 
     5. Station A stops transmitting on low bandwidth link. 
     6. Station A starts transmitting on high bandwidth link. 
     7. Station A listens for data on low bandwidth link. 
     8. Station B receives data on high bandwidth link. 
     9. Station B starts transmitting on low bandwidth link. 
     10. Station A receives data on low bandwidth link. 
     Case 2: If station B&#39;s transmit buffer is above a set threshold, then 
     1. Station B sends a control packet to Station A denying the request. 
     2. Station A retries at a later time. 
     Referring to FIG. 3, the control flow of the exchange process when going from high bandwidth transmit to low bandwidth transmit is described in more detail. The process begins in function block 31 with the bi-directional communication link in State A with Station A using the high bandwidth transmit channel (i.e., FIG. 1A). An exchange request is received from Station B, and a test is made in decision block 32 to determine which of the two cases is true. Specifically, for case 1 to be true, Station A&#39;s transmit buffer must be below the minimum threshold, but for case 2 to be true, Station A&#39;s transmit buffer is above the minimum threshold. If case 2 is true, Station A sends a control packet to Station B denying the exchange request in function block 33. The control process then loops back to function block 31 with no change. Station B, after an appropriate time period, repeats the exchange request. 
     If case 1 is true, then Station A sends a control packet to Station B in function block 34 granting the exchange request. Station A then stops transmitting data on the high bandwidth channel in function block 35. Station B receives the grant in function block 36, stops transmitting on the low bandwidth channel, and starts transmitting on the high bandwidth channel. When data is received on the high bandwidth channel, Station A begins transmitting on the low bandwidth channel in function block 37. At this point, the status of the bi-directional communication link is in State B (FIG. 1B), with station A using the low bandwidth transmit channel in function block 38. 
     Referring next to FIG. 4, the control flow of the exchange process when going from low bandwidth transmit to high is described in more detail. The process begins in State B in function block 41. The transmit buffer of Station A is above the maximum threshold in function block 42 and, as a result, Station A transmits an exchange request to Station B in function block 43. A determination is made in decision block 44 which of case 1 or case 2 is true. If case 2 is true, Station B rejects the request and the process loops back to function block 41. If case 1 is true, Station B grants the request and, in function block 45, Station A stops transmitting on the low bandwidth channel and starts transmitting on the high bandwidth channel. At this point, the process is in State A, as indicated in function block 46. 
     Two products entering the market can benefit from the invention. One is the Asymmetric Digital Subscriber Line (ADSL) modem and the other is the 56 Kbs modem. In both products, a high bandwidth connection is supported in one direction only. This invention enhances these products by allowing the direction of the high bandwidth link to dynamically reverse in response to data traffic conditions. 
     While the invention has been described in terms of a single preferred embodiment, those skilled in the art will recognize that the invention can be practiced with modification within the spirit and scope of the appended claims.