|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
| Add a new US reference: |
| | Reference | Relevancy | Comments | Reference | Relevancy | Comments | 6011590 Saukkonen 375/240.05 Jan,2000 |      Your vote accepted [0 after 0 votes] | | 6003086 Mitsutake 709/229 Dec,1999 |      Your vote accepted [0 after 0 votes] | | 5951646 Brandon 709/231 Sep,1999 |      Your vote accepted [0 after 0 votes] | | 5933835 Adams
Aug,1999 |      Your vote accepted [0 after 0 votes] | | 5920700 Gordon 709/226 Jul,1999 |      Your vote accepted [0 after 0 votes] | | 5920701 Miller 709/228 Jul,1999 |      Your vote accepted [0 after 0 votes] | | 5917822 Lyles 370/395.4 Jun,1999 |      Your vote accepted [0 after 0 votes] | | 5918020 Blackard 709/228 Jun,1999 |      Your vote accepted [0 after 0 votes] | | 5913041 Ramanathan 709/233 Jun,1999 |      Your vote accepted [0 after 0 votes] | | 5907556 Hisanaga 370/468 May,1999 |      Your vote accepted [0 after 0 votes] | | 5889779 Lincoln 370/398 Mar,1999 |      Your vote accepted [0 after 0 votes] | | 5884037 Aras 709/226 Mar,1999 |      Your vote accepted [0 after 0 votes] | | 5878029 Hasegawa 370/236 Mar,1999 |      Your vote accepted [0 after 0 votes] | | 5875175 Sherer 370/230 Feb,1999 |      Your vote accepted [0 after 0 votes] | | 5859980 Kalkunte 709/232 Jan,1999 |      Your vote accepted [0 after 0 votes] | | 5850398 King, Jr. 370/395.41 Dec,1998 |      Your vote accepted [0 after 0 votes] | | 5796724 Rajamani
Aug,1998 |      Your vote accepted [0 after 0 votes] | | 5793380 Matsuno 345/443 Aug,1998 |      Your vote accepted [0 after 0 votes] | | 5784572 Rostoker 709/247 Jul,1998 |      Your vote accepted [0 after 0 votes] | | 5768527 Zhu 709/231 Jun,1998 |      Your vote accepted [0 after 0 votes] | | 5761438 Sasaki 709/247 Jun,1998 |      Your vote accepted [0 after 0 votes] | | 5737495 Adams 707/104.1 Apr,1998 |      Your vote accepted [0 after 0 votes] | | 5727002 Miller 714/748 Mar,1998 |      Your vote accepted [0 after 0 votes] | | 5675732 Majeti 709/235 Oct,1997 |      Your vote accepted [0 after 0 votes] | | 5557320 Krebs 725/114 Sep,1996 |      Your vote accepted [0 after 0 votes] | | 5553083 Miller 714/748 Sep,1996 |      Your vote accepted [0 after 0 votes] | | 5367517 Cidon 370/431 Nov,1994 |      Your vote accepted [0 after 0 votes] | | | | | |
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
Description  |
|
|
FIELD OF THE INVENTION
This invention relates to a data transmission system and method for
performing contention control on data transmission attempts when a
plurality of terminals transmit data at an arbitrary time point via a
shared network.
DESCRIPTION OF THE RELATED ART
[Transmission Bandwidth Contention]
When a plurality of terminals execute data transmission at an arbitrary
time point on a single network, transmission bandwidth contention may
occur among data transmission attempts. First, this point will be
discussed with reference to FIG. 2.
In general, a network consists of a plurality of transmission media. A
plurality of terminals are connected to the network and data transmission
is executed among the terminals via transmission media making up the
network. The transmission bandwidth is represented by the transmission
data amount per unit time. The transmission capability of a transmission
medium has a limit and the maximum transmission bandwidth Rmax is a
certain finite value.
The bandwidth of a transmission medium is shared by a plurality of data
transmission attempts, and in each data transmission a bandwidth is used
in accordance with the transmission data amount per unit time. The
bandwidth use amount in each data transmission, r(t), changes with time.
If the total of the bandwidth use amounts of data transmission attempts
sharing the bandwidth of the same transmission medium, .SIGMA.r(t), is
greater than the maximum transmission bandwidth of the transmission
medium, Rmax, the data transmission attempts contend with each other for
the shared bandwidth. This is called contention.
The contention occurs for the following reasons. The nucleus of data
transmission is applications operating on the terminals connected to the
network. Generally, a plurality of applications operate on each terminal.
Of course, a plurality of applications operate when viewed from the entire
network. The data transmission conditions of each application are
characterized by the start time, the end time, a transmission terminal, a
reception terminal, a route, and use bandwidth variation with time. Some
applications involving data transmission have the data transmission
conditions that cannot be predicted, such as telnet with human being's
interaction as a transmission data source.
On the other hand, general data transmission is realized by a functional
layered structure typified by the ISO 7-layer reference model. In the
general conventional networks, applications operating on the networks are
undefined and in the functional layer of data transmission control,
control cannot be performed based on information that can be obtained only
in a specific application. That is, when viewed from the side of a
transmission medium which is a functional layer lower than the application
layer, the data transmission conditions from each application sharing the
transmission medium for executing data transmission are all handled as
information that cannot be acquired.
Thus, it is impossible to grasp all the data transmission conditions such
as the start time, the end time, a transmission terminal, a reception
terminal, a route, and use bandwidth variation with time of each data
transmission in the conventional networks. The information is predicted
statistically or in probability.
Applications involving data transmission on the network generally operate
separately and execute data transmission independently of the data
transmission conditions of other applications. Thus, the data transmission
attempts are independent of each other and are controlled plurally at
their respective transmission ends.
Paying attention to one data transmission in such conditions, the bandwidth
R(t) that can be used in the transmission changes with time because of
tradeoffs with the bandwidth use conditions of other data transmission
attempts. However, at the transmission end of the data transmission, the
bandwidth use conditions of other data transmission attempts cannot be
grasped, and other data transmission attempts are controlled separately at
their respective transmission ends.
Thus, at the transmission end of the data transmission, the bandwidth use
conditions of other data transmission attempts must be predicted to
control the bandwidth use amount of the data transmission. If the
prediction is erroneous, the total of the bandwidth use amounts of data
transmission attempts sharing the same transmission medium, .SIGMA.r(t),
may sometimes exceed the maximum transmission bandwidth of the
transmission medium, Rmax.
Such contention lowers the bandwidth use efficiency and should be avoided.
That is, if a bandwidth required for transmission is not obtained because
of bandwidth contention, data to be transmitted is lost. Generally, if
data is lost, it is resent, whereby the effective bandwidth use efficiency
(i.e., (data amount resulting in success in transmission)/(bandwidth
amount used for transmission)) lowers. To suppress contention and
efficiently use the maximum transmission bandwidth of each transmission
medium limited, it is necessary to equally control the current bandwidth
R(t) that can be used for data transmission and the bandwidth r(t) used by
the data transmission at the sending end of the data transmission.
[Conventional Contention Avoidance Schemes]
Next, contention avoidance schemes in the conventional transmission
technologies will be discussed. To share a single transmission medium for
executing a plurality of data transmission attempts, switching
technologies for allocating bandwidths among the data transmission
attempts. The switching technologies are roughly classified into packet
switching and circuit switching.
(1) Packet Switching
Data is divided into small units called packets for transmission. A
bandwidth is allocated to a packet each time arriving at each transmission
medium on the transmission route of the packet. This means that the
bandwidth of each transmission medium is dynamically allocated in packet
units among the data transmission attempts sharing the bandwidth at each
point in time in the packet switching.
(2) Circuit Switching
Before data transmission, a bandwidth required for the transmission is
previously allocated at each transmission medium on the route of the data
transmission. This is called line connection. In contrast, releasing the
bandwidth allocated at each transmission medium on the route is called
line disconnection. Since the bandwidth at each transmission medium on the
route of the data transmission is occupied during the period between the
line connection and disconnection, the bandwidth that can be used for the
transmission, R(t), becomes constant. This means that the bandwidth of
each transmission medium is allocated comparatively statically in line
units among the data transmission attempts sharing the bandwidth.
The control schemes to avoid bandwidth contention in the respective
switching schemes correspond to the following items that are described in
terms of control.
(1) Variable Value Control
A controlled variable (i.e., a bandwidth amount used for transmission at
time t, r(t)) is manipulated for a changing target value (i.e., a
bandwidth amount that can be used for transmission at time t, R(t)) and
control is performed so that the difference .vertline.R(t)-r(t).vertline.
becomes zero.
(2) Constant Value Control
A controlled variable r(t) is manipulated for a constant target value
Rconst and control is performed so that the difference
.vertline.Rconst-r(t).vertline. becomes zero. Control accuracy can be
easily enhanced.
The conventional technologies have the following features.
(1) Packet Switching
Since a bandwidth is dynamically allocated to transmission actually using a
transmission medium bandwidth, the maximum transmission bandwidth of the
transmission medium, Rmax, can be used without waste. On the other hand,
however, variable value control of the use bandwidth needs to be performed
and at the time, excess or shortage may occur in manipulation of the
controlled variable, as shown in FIG. 3.
i) R(t)-r(t)<0 (Controlled Variable is too Large)
A transmission bandwidth contention occurs. Generally, data is buffered
before and after a transmission medium for averaging the bandwidth use
amount relative to the time, thereby absorbing the too large controlled
variable. However, buffer contention may also occur like bandwidth
contention. If the buffer length is sufficiently long, buffering causes a
data transmission delay to increase. Generally, the data transmission
delay increases with an increase in bandwidth contention and data
transmission delay variations also enlarge accordingly.
ii) R(t)-r(t)>0 (Controlled Variable is too Small)
A bandwidth not used for transmission occurs and the bandwidth use
efficiency lowers.
(2) Circuit Switching
When a line is connected, a bandwidth required for transmission needs to be
previously allocated in each transmission medium on the route for the line
connection. The time required for the bandwidth allocation, namely, a line
connection delay (see FIG. 4) is undefined. If a line connection cannot be
established within a given time on general telephone lines, etc., a call
loss (line connection failure) occurs and again an attempt is made to
establish a line connection. However, once the line is connected, a
bandwidth is guaranteed for the line and highly accurate controlled
variable manipulation is enabled under constant value control.
However, one transmission occupies the bandwidth during the line connection
and if a bandwidth not actually used exists, it cannot be used for another
transmission. Thus, the bandwidth use efficiency lowers.
[Limitations of Conventional Schemes]
The conventional schemes have the following limitations.
(1) Packet Switching
As described earlier, hitherto it has been impossible to predict target
value change for performing variable value control of a use bandwidth.
Thus, in the packet switching, feedback control (also called closed loop
control) must be performed, as shown in FIG. 5. In the feedback control,
the difference between a target value and a controlled variable at an
observation point is observed and is returned to a control point as
feedback information. At the control point, the controlled variable is
manipulated based on the feedback information. The variable value control
of a use bandwidth using feedback is roughly classified into the following
two types depending on the feedback information observation point.
a. Type wherein the use conditions of a shared bandwidth are observed in
transmission media sharing the bandwidth and the observation result is fed
back to the transmission end
The CSMA/CD scheme in Ethernet, the CI scheme using rm cells in ATM-ABR
service, the ER scheme, and the like are available as typical technologies
actually applied.
CSMA/CD: Carrier Sense Multiple Access with Collision Detection
ATM: Asynchronous Transfer Mode
ABR: Available Bit Rate
rm: Resource management
CI: Congestion Indication
ER: Explicit Rate
b. Type wherein a data loss is detected at the data reception end and the
detection result is fed back to the data transmission end at which the
data loss is assumed to result from bandwidth contention
The Slow Start scheme in TCP is a typical technology actually applied.
TCP: Transmission Control Protocol
a-1. CSMA/CD Scheme
Ethernet is a passive physical transmission medium of bus type and enables
single packets, called frames in Ethernet, to be transmitted at the same
time, thus performs distributed contention control at each transmission
end in frame units.
At the frame transmission end, a carrier signal on the transmission medium
is sensed and the transmission conditions of another frame are sensed. If
another frame exists on the transmission medium, the frame at the
transmission end is transmitted. If a plurality of terminals then send a
frame at the same time, a frame collision occurs.
If a frame collision is detected at each transmission end, the sending is
interrupted and a period over which the collision probability is expected
to be small is determined according to a Binary Exponential Backoff
algorithm. Then, again the frame sending is tried.
a-2. CI Scheme with rm Cells (ATM-ABR)
The ATM uses an active full-duplex (simultaneous communication in both
directions) transmission medium called a packet (called cell in the ATM)
exchange. A cell exchange temporarily buffers cells transmitted from
terminals and switches them into the routes to their respective
destinations. Thus, the transmission bandwidth use amount can be
controlled by handling the cell sending intervals at the transmission
ends.
In the ATM, a transmission bandwidth contention (called congestion in the
ATM) in switching in the exchange and at cell switching destinations can
occur.
An rm cell is sent at constant intervals from each transmission end via an
exchange on the data transmission route to the reception end, then is
returned to the transmission end.
In the CI scheme, if congestion is sensed in an exchange on the data
transmission route, then the current rm cell passing through the switching
scheme is used to notify the transmission terminal that congestion has
occurred. At the transmission end, when the congestion occurrence
notification is received from the rm cell, the use bandwidth is reduced to
the bandwidth use amount in which the congestion can be expected to be
avoided in probability and when the congestion notification with the rm
cell is canceled, the use amount is increased gradually.
To execute data transmission after stop over a certain period, the
bandwidth use amount is also increased gradually from the bandwidth use
amount in which it is expected that no congestion is caused to occur.
a-3. ER Scheme with rm Cells (ATM-ABR)
In the ER scheme, if congestion is sensed in an exchange on the data
transmission route, then the current rm cell passing through the exchange
is used to send the bandwidth use amount in which the congestion can be
expected to be avoided, from the exchange to the transmission end. At the
transmission end, when the use bandwidth specification is received from
the rm cell, the use bandwidth is handled based on the specification.
b-1. Slow Start Scheme (TCP)
The TCP is a transport protocol for guaranteeing the reliability of data
transmission. In the standard TCP, a data reception terminal only notifies
the transmission end of data reception. A data loss is detected indirectly
by the fact that the data reception notification from the reception
terminal times out. If a data loss is detected at the data transmission
end, the lost data is resent to the reception end.
In the Slow Start scheme, if a data loss is detected at the data
transmission end, it is assumed to have resulted from a bandwidth
contention, and the data sending intervals are adjusted.
Specifically, first, data is consecutively sent only in one packet. If
reception of the data is acknowledged, next two packets of data are sent
consecutively. Thus, whenever each packet reception is acknowledged, the
number of packets sent consecutively is incremented by one.
To eliminate a variable value control error, the feedback control needs to
directly observe a target value and precisely feed back the difference
between the target value and a controlled variable, as shown in a-3. ER
scheme with rm cells (ATM-ABR).
However, in the actual control system, distance L exists between a control
point and an observation point and transfer of feedback information
between the control and observation points involves a delay of
.DELTA.t=(distance L)/(light speed c) at the minimum. This means that the
controlled variable observed at the observation point at time t is the
controlled variable r (t-.DELTA.t) manipulated at the | | |