U.S. patent application number 09/814097 was filed with the patent office on 2003-10-09 for priority data transfer method.
This patent application is currently assigned to NEC CORPORATION. Invention is credited to Sashihara, Toshiyuki.
Application Number | 20030189948 09/814097 |
Document ID | / |
Family ID | 18603132 |
Filed Date | 2003-10-09 |
United States Patent
Application |
20030189948 |
Kind Code |
A1 |
Sashihara, Toshiyuki |
October 9, 2003 |
Priority data transfer method
Abstract
When a send packet from a slave station and a send packet from a
relay station are simultaneously sent to other relay station, the
collision of the send packets against each other is detected, and
the backoff time of the collided packet is calculated based on the
hop count recorded in a hop count recording field of the collided
packet. Therefore, the backoff time is set so that the backoff time
decreases with increasing the hop count. This increases the
probability of resending of the packet without collision with other
packet in the resending processing, and enables the packet having a
larger hop count to be preferentially sent. By virtue of this
construction, a priority data transfer method can be realized
which, when collision of a packet against other packet has
occurred, performs resend processing based on the priority level of
the packet.
Inventors: |
Sashihara, Toshiyuki;
(Tokyo, JP) |
Correspondence
Address: |
FOLEY AND LARDNER
SUITE 500
3000 K STREET NW
WASHINGTON
DC
20007
US
|
Assignee: |
NEC CORPORATION
|
Family ID: |
18603132 |
Appl. No.: |
09/814097 |
Filed: |
March 22, 2001 |
Current U.S.
Class: |
370/445 ;
370/448 |
Current CPC
Class: |
H04W 74/0875 20130101;
H04L 12/4015 20130101; H04L 12/413 20130101 |
Class at
Publication: |
370/445 ;
370/448 |
International
Class: |
H04L 012/413 |
Foreign Application Data
Date |
Code |
Application Number |
Mar 23, 2000 |
JP |
2000-087060 |
Claims
What is claimed is:
1. A priority data transfer method comprising the steps of:
determining the stepwise priority level of collided packet; and
resending the collided packet based on the priority level.
2. A priority data transfer method for a communication system using
random access control, said priority data transfer method
comprising the steps of: detecting collision of a send packet
against other packet on a transmission line (a collision detection
step); upon the detection of the collision of the packet against
other packet in the collision detection step, generating a random
number (a random number generation step); judging the priority
level of the send packet (a priority level judging step);
generating a delay time, which elapses until the send packet is
resent, based on the random number generated in the random number
generation step and the priority level of the send packet judged in
the priority level judging step (a delay time generation step); and
resending the packet after the elapse of the delay time generated
in the delay time generation step.
3. The priority data transfer method according to claim 2, wherein:
a hop count recording field for recording a hop count as a measure
of the priority level of the send packet is provided in the send
packet; and in judging the send packet priority level in the
priority level judging step, the priority level of the send packet
is judged based on the hop count recorded in the hop count
recording field.
4. The priority data transfer method according to claim 3, wherein,
in the delay time generation step, the random number generated in
the random number generation step is multiplied by a value obtained
by subtracting a value proportional to the hop count from 1 (one)
to generate the delay time, and the packet having a larger hop
count recorded in the hop count recording field is preferentially
sent.
5. The priority data transfer method according to claim 2, wherein:
a priority value recording field for recording a priority value as
a measure of the priority level of the send packet is provided in
the send packet; and in judging the send packet priority level in
the priority level judging step, the priority level of the send
packet is judged based on the priority value recorded in the
priority value recording field.
6. The priority data transfer method according to claim 5, wherein,
in the delay time generation step, the random number generated in
the random number generation step is multiplied by a value
proportional to the priority value of the send packet to generate
the delay time, and the packet having a higher priority level
recorded in the priority value recording field is preferentially
sent.
7. The priority data transfer method according to claim 5 or 6,
wherein the priority level of the send packet increases with
decreasing the priority value.
8. The priority data transfer method according to claim 2, wherein:
the send packet has a send data length recording field for
recording the length of send data as a measure of the priority
level of the send packet, and a continued data recording field for
indicating whether continued data of the send packet is present or
absent, and in judging the send packet priority level in the
priority level judging step, the priority level of the send packet
is judged based on the send data length and the continued data.
9. The priority data transfer method according to claim 8, wherein,
in the delay time generation step, the random number generated in
the random number generation step is multiplied by a value obtained
by subtracting a value proportional to the data size from 1 (one),
and, when the continued data is present, in addition, the obtained
value is multiplied by a predetermined value to generate a delay
time, and the packet having a larger data size recorded in the send
data length recording field is preferentially sent, and when the
data size is identical, the packet, wherein continued data is
present in the continued data recording field, is preferentially
sent.
10. The priority data transfer method according to claim 2, wherein
the send packet has a hop count recording field for recording a hop
count as a measure of the priority level of the send packet, and a
priority value recording field for recording a priority value as a
measure of the priority level of the send packet, and in judging
the send packet priority level in the priority level judging step,
the priority level of the send packet is judged based on the hop
count and the priority value.
11. The priority data transfer method according to claim 10,
wherein, in the delay time generation step, the random number
generated in the random number generation step is multiplied by a
value proportional to the priority value and then by a value
obtained by subtracting a value proportional to the hop count from
1 (one), whereby the delay time is generated, and the packet having
a higher priority level and the packet having a larger hop count
are preferentially sent.
12. The priority data transfer method according to claim 10 or 11,
wherein the priority level of the send packet increases with
decreasing the priority value.
13. The priority data transfer method according to any one of
claims 1 to 12, wherein the communication system is a radio
communication system.
Description
FIELD OF THE INVENTION
[0001] The invention relates to a priority data transfer method,
and more particularly to a priority data transfer method in a
communication system wherein, when data collision has occurred in
random access control, the collided data is resent based on the
priority level of the data.
BACKGROUND OF THE INVENTION
[0002] When a plurality of packet senders are present in an
identical packet transmission line as in cable or wireless LAN, the
send of packets in the same timing sometimes causes collision of
the packets against each other. The collision of data (packets)
against each other results in breaking of send data, or otherwise
makes it impossible to guarantee the quality of send data. In order
to overcome this problem, for example, the following method has
hitherto been used to avoid the collision of data.
[0003] CSMA/CD (carrier sense multiple access with collision
detection) is known as a method for detecting the collision of data
and controlling and managing data. According to this method, prior
to transmission of data, CS (carrier sense) is performed to detect
carriers on the transmission line, and, when, upon the send of
data, the data has collided against other data on the transmission
line, CD (collision detection) is performed to detect a collision
signal. Upon the detection of the collision signal, terminal units,
which have sent the collided data, resend the respective data after
standby, i.e., after the elapse of random times generated by the
respective terminal units. According to this CSMA/CD method, the
random time is determined by a calculation method, which can
logarithmically reduce the probability of collision, so as not to
cause collision again.
[0004] Another method is ICMA/PE (idle-signal casting multiple
access with partial echo). The idle/occupy of a leading channel has
been indicated by idle line/inhibit bit, and the
receive/non-receive due to collision has been indicated by
collision detection indication bit. By contrast, according to this
method, in addition, send data subjected to certain processing is
folded back as a partial echo to the trailing collision control
bit, and, thus, sending can be confirmed frame by frame.
[0005] For example, Japanese Patent Laid-Open No. 128059/1993
discloses a priority data transfer method wherein the backoff time
is determined in such a manner that, based on whether collided
packets are usual data or priority data, priority data is judged,
and the packet judged to be priority data is preferentially
resent.
[0006] FIG. 13 is a schematic block diagram showing a conventional
priority data transfer method.
[0007] According to the conventional priority data transfer method
shown in FIG. 13, a communication unit 1310 is connected to a
communication unit 1320 through a bus 1330. The communication unit
1310 comprises a collision detector 1311, a resend time generation
section 1312, a priority data judging section 1313, and a random
number generation section 1314. The communication unit 2 has the
same construction as the communication unit 3.
[0008] In this conventional priority data transfer method, as soon
as the collision detector 1311 has detected that collision on the
bus 1330 continuously occurred a predetermined number of times, the
collision detector 1311 requests the resend time generation section
1312 to generate a send data resend time of the data, which could
not have been sent due to the collision on the bus 1330, and, in
addition, requests the priority data judging section 1313 to judge
the priority of the send date, which could not have been sent due
to the collision on the bus 1330.
[0009] The resend time generation section 1312 requests the random
number generation section 1314 to generate a random number, and
generates a resent time of the send data corresponding to the
random number generated in the random number generation section
1314.
[0010] The priority data judging section 1313 checks the priority
of the send data requested by the collision detector 1311 to judge
whether the requested send data is ordinary data or priority data,
and informs the resend time generation section 1312 of the
result.
[0011] In the conventional priority data transfer method, however,
judgment processing in the priority data judging section for
judging whether or not the collided data is priority data is not
embodied.
[0012] Further, the conventional priority data transfer method is
used for avoiding the collision of data between communication units
connected to each other through a bus (a cable), and no mention is
made to radio communication.
SUMMARY OF THE INVENTION
[0013] In view of the above problems of the prior art, the
invention has been made, and it is an object of the invention to
provide a priority data transfer method wherein, when the collision
of packets has occurred on a bus, the collided packet is resent
based on the priority of the packet.
[0014] More specifically, the object of the invention is to provide
a priority data transfer method which, in random access control,
such as CSMA/CD or ICMA/PE, judges whether or not the collided
packet is priority data, and, when the packet has been judged to be
priority data, calculates the resend time (backoff time) of the
packet based on the priority, and preferentially sends this
packet.
[0015] In order to attain the above object, according to the first
feature of the invention, a priority data transfer method comprises
the steps of: determining the stepwise priority level of collided
packet; and resending the collided packet based on the priority
level.
[0016] According to the second feature of the invention, a priority
data transfer method for a communication system using random access
control comprises the steps of:
[0017] detecting collision of a send packet against other packet on
a transmission line (a collision detection step);
[0018] upon the detection of the collision of the packet against
other packet in the collision detection step, generating a random
number (a random number generation step);
[0019] judging the priority level of the send packet (a priority
level judging step);
[0020] generating a delay time, which elapses until the send packet
is resent, based on the random number generated in the random
number generation step and the priority level of the send packet
judged in the priority level judging step (a delay time generation
step); and
[0021] resending the packet after the elapse of the delay time
generated in the delay time generation step.
[0022] In the priority data transfer method according to the second
feature of the invention, preferably,
[0023] a hop count recording field for recording a hop count as a
measure of the priority level of the send packet is provided in the
send packet; and
[0024] in judging the send packet priority level in the priority
level judging step, the priority level of the send packet is judged
based on the hop count recorded in the hop count recording
field.
[0025] In this case, preferably, in the delay time generation
step,
[0026] the random number generated in the random number generation
step is multiplied by a value obtained by subtracting a value
proportional to the hop count from 1 (one) to generate the delay
time, and
[0027] the packet having a larger hop count recorded in the hop
count recording field is preferentially sent.
[0028] In the priority data transfer method according to the second
feature of the invention, preferably,
[0029] a priority value recording field for recording a priority
value as a measure of the priority level of the send packet is
provided in the send packet; and
[0030] in judging the send packet priority level in the priority
level judging step, the priority level of the send packet is judged
based on the priority value recorded in the priority value
recording field.
[0031] In this case, preferably, in the delay time generation
step,
[0032] the random number generated in the random number generation
step is multiplied by a value proportional to the priority value of
the send packet to generate the delay time, and
[0033] the packet having a higher priority level recorded in the
priority value recording field is preferentially sent.
[0034] In the above embodiments of the priority data transfer
method according to the second feature of the invention, a
construction may be adopted such that the priority level of the
send packet increases with decreasing the priority value.
[0035] In the priority data transfer method according to the second
feature of the invention, preferably,
[0036] the send packet has
[0037] a send data length recording field for recording the length
of send data as a measure of the priority level of the send packet,
and
[0038] a continued data recording field for indicating whether
continued data of the send packet is present or absent, and
[0039] in judging the send packet priority level in the priority
level judging step, the priority level of the send packet is judged
based on the send data length and the continued data.
[0040] In this case, preferably, in the delay time generation
step,
[0041] the random number generated in the random number generation
step is multiplied by a value obtained by subtracting a value
proportional to the data size from 1 (one), and, when the continued
data is present, in addition, the obtained value is multiplied by a
predetermined value to generate a delay time, and
[0042] the packet having a larger data size recorded in the send
data length recording field is preferentially sent, and
[0043] when the data size is identical, the packet, wherein
continued data is present in the continued data recording field, is
preferentially sent.
[0044] In the priority data transfer method according to the second
feature of the invention, preferably,
[0045] the send packet has
[0046] a hop count recording field for recording a hop count as a
measure of the priority level of the send packet, and
[0047] a priority value recording field for recording a priority
value as a measure of the priority level of the send packet,
and
[0048] in judging the send packet priority level in the priority
level judging step, the priority level of the send packet is judged
based on the hop count and the priority value.
[0049] In this case, preferably, in the delay time generation
step,
[0050] the random number generated in the random number generation
step is multiplied by a value proportional to the priority value
and then by a value obtained by subtracting a value proportional to
the hop count from 1 (one), whereby the delay time is generated,
and
[0051] the packet having a higher priority level and the packet
having a larger hop count are preferentially sent.
[0052] In these two above embodiments of the priority data transfer
method according to the second feature of the invention, the
priority level of the send packet increases with decreasing the
priority value.
[0053] In the priority data transfer methods according to the first
and second features of the invention, the communication system is a
radio communication system.
[0054] According to the invention, in random access control, such
as ICMA/PE or CSMA/CD, judgment is made on whether or not the
collided packet is priority data, and the resend time of the packet
is determined based on the priority information and a random
number, followed by preferential resending of the priority
packet.
BRIEF DESCRIPTION OF THE DRAWINGS
[0055] The invention will be explained in more detail in
conjunction with the appended drawings, wherein:
[0056] FIG. 1 is a diagram showing the construction of a network to
which a preferred embodiment of the priority data transfer method
according to the invention has been applied;
[0057] FIG. 2 is a diagram showing the construction of
leading/trailing packets in ICMA/PE according to a preferred
embodiment of the priority data transfer method of the
invention;
[0058] FIG. 3 is a diagram showing the construction of a leading
transmission packet among a relay terminating station, a relay
station, and a slave station according to a preferred embodiment of
the invention;
[0059] FIG. 4 is a block diagram showing the internal construction
of a relay station according to the first embodiment of the
invention;
[0060] FIG. 5 is a block diagram showing the internal construction
of a slave station according to the first embodiment of the
invention;
[0061] FIG. 6 is a conceptual diagram illustrating the collision of
send packets in a communication system to which the priority data
transfer method according to the first preferred embodiment of the
invention has been applied;
[0062] FIG. 7 is a flow chart showing an example of the operation
of a relay station in the first preferred embodiment of the
invention;
[0063] FIG. 8 is a flow chart showing an example of the operation
of a slave station in the first preferred embodiment of the
invention;
[0064] FIG. 9 is a schematic block diagram showing the construction
of a relay station according to the second preferred embodiment of
the invention;
[0065] FIG. 10 is a diagram showing the construction of a leading
transmission packet among a relay terminating station, a relay
station, and a slave station according to the second preferred
embodiment of the invention;
[0066] FIG. 11 is a diagram showing the construction of a leading
transmission packet among a relay terminating station, a relay
station, and a slave station according to a third preferred
embodiment of the invention;
[0067] FIG. 13 is a diagram showing the construction of a leading
transmission packet among a relay terminating station, a relay
station, and a slave station according to a fourth preferred
embodiment of the invention; and
[0068] FIG. 13 is a schematic block diagram showing the
construction of a conventional priority data transfer method.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0069] Preferred embodiments of the priority data transfer method
according to the invention will be explained in more detail in
conjunction with the accompanying drawings. FIGS. 1 to 12 show
preferred embodiments of the priority data transfer method
according to the invention.
[0070] FIG. 1 is a schematic diagram showing the construction of a
communication system to which a preferred embodiment of the
priority data transfer method according to the invention has been
applied. The communication system shown in FIG. 1 comprises a relay
terminating station 1, a plurality of relay stations 2, and a
plurality of slave stations 3. Unique IDs (identification numbers)
are assigned respectively to the stations.
[0071] The relay terminating station 1 has the function of storing
data sent from the relay stations 2 and the slave stations 3.
[0072] For the slave stations 3 present in an area (cell) at which
radio waves from the relay terminating station 1 do not reach, the
relay station 2 sends data of the relay stations 2 and the slave
stations 3 located within the cell covered by the relay station 2
to the relay terminating station 1 or a higher rank relay station
2.
[0073] The slave station 3 is, for example, a telemeter, and
functions to send data to the relay terminating station 1 and the
relay station 2.
[0074] In FIG. 1, when the distance (hop counts) in the sense of
the graph theory from nodes of the individual relay stations 2 and
slave stations 3 to the node of the relay terminating station 1 is
1, this layer is a first layer, while, when the hop count is 2, the
layer is a second layer. Thus, as shown in the drawing, the relay
terminating station 1, the relay stations 2, and the slave stations
3 constitute a network having a hierarchical structure with the
relay terminating station 1 being at the apex.
[0075] In this communication system, communication between the
higher rank layer and the lower rank layer is performed by wireless
communication. A plurality of the relay stations 2 and the slave
stations 3 located in the lower rank layer share an identical radio
channel to perform communication with the higher rank layer. Here
the channel refers to, for example, TDMA (time division multiple
access). Therefore, when a plurality of stations simultaneously
send packets, the collision of packets takes place. The present
preferred embodiment will be explained on the premise that this
collision is detected by ICMA/PE.
[0076] FIG. 2 is a general diagram showing the construction of
leading/trailing packet signals in ICMA/PE according to a preferred
embodiment of the priority data transfer method of the
invention.
[0077] In FIG. 2, regarding a leading packet signal (a), send data
is divided into units having a given length, and each unit
comprises length information 201, a leading information signal 202,
an error correction signal 203 and the like. The remaining unit
number is added to the head of each unit information, and, in this
state, data is sent.
[0078] A trailing packet signal (b) is reported, with a trailing
information signal 204 being added thereto, in correspondence to
the leading information unit, and comprises an idle line/inhibit
indication bit 205, a receive/non-receive bit 206, and a partial
echo (PE) field 207.
[0079] When there is data being received, the idle line/inhibit bit
205 indicates "inhibit" and inhibits access from other mobile
stations. The receive/non-receive indication bit 206 indicates
"receive" in the case of proper reception of an error signal, and
indicates "non-receive" in the case of the presence of an
uncorrectable error in the case of a signal unreceived state. When
"non-receive" is indicated during signal transmission, the mobile
station, which is sending data packet, temporarily stops to send
information, and begins a resend procedure. The partial echo field
207 is used for a display mobile station to check a part of the
received data against this information to judge whether or not the
information sent by its own station is properly received.
[0080] FIG. 3 is a diagram showing the construction of a packet
used as a leading send packet among the relay terminating station,
the relay stations, and the slave stations in a preferred
embodiment of the priority data transfer method according to the
invention.
[0081] In FIG. 3, the leading send packet comprises length
information 301, a sender 302, a send destination 303, a hop count
recording section 304, a send data 305, and an error correction
symbol 306.
[0082] The length information 301 represents the number of
remaining packets to be sent. The sender 302 is used for
identifying the sender of the packet, and stores the ID number of
the packet sender. The send destination 303 designates the send
destination of the packet, and stores the packet send destination
ID number. The hop count recording section 304 is a section for
storing the hop count of this packet. When the packet is initially
sent, "1" is stored. Thereafter, every time when the packet is
relayed, "1" is added. The send data 305 is a section for storing
send data. The error correction symbol 306 is a symbol for
detecting and correcting a receive error of this packet.
[0083] FIG. 4 is a block diagram showing the internal construction
of a relay station in a preferred embodiment of the invention. In
FIG. 4, the relay station in the preferred embodiment of the
invention comprises a radio section 401, a packet receive section
402, a relay processing unit 403, a hop count addition section 404,
a packet transmitter 405, a send buffer 406, a collision detector
407, a backoff time decision section 408, a random number
generation section 409, and a priority packet judging section
410.
[0084] The radio section 401 performs wireless packet send/receive
through an antenna (not shown).
[0085] The packet receive section 402 is a section for receiving
packets through the radio section 401.
[0086] The relay processing unit 403 functions to send the packet
received by the packet receive section 402 to a next send
destination.
[0087] The hop count addition section 404 functions to add "1" to
the hop count recorded in the hop count recording section described
below and to write the result in the same place.
[0088] The packet transmitter 405 asks the packet receive section
402 about higher rank state (idle line/inhibit), and, in the case
of an idle state, sends the packet, sent from the hop count
addition section 404, through the radio section 401 and, at the
same time, stores the sent packet in the send buffer 406.
[0089] Further, the packet transmitter 405 has the function of
acquiring the number of resends of the packet from the send buffer
406, adding "1" to the number of resends, and again writing the
result in the send buffer 406.
[0090] The send buffer 406 is an area for temporarily storing the
sent packet and the number of resends of the packet.
[0091] The collision detector 407 is a section for determining
whether or not the packet sent through the radio section 401 has
collided against other send packet.
[0092] The backoff time decision section 408 determines the backoff
time in resend processing of the collided packet based on
information from the random number generation section 409 described
below and information from the priority packet judging section
410.
[0093] The random number generation section 409, upon the request
from the backoff time decision section 408, generates a random
number in a certain predetermined range, and transfers the
generated random number to the back off time decision section
408.
[0094] The priority packet judging section 410 fetches the sent
packet from the send buffer 406, examines the priority level of the
packet, and sends the result to the backoff time decision section
409.
[0095] FIG. 5 is a block diagram showing the internal construction
of a relay terminating station and slave stations in a preferred
embodiment of the invention. In FIG. 5, the relay terminating
station and the slave stations in a preferred embodiment of the
invention each comprise a radio section 501, a packet receive
section 502, an interface 503, a packet transmitter 504, a send
buffer 505, a collision detector 506, a backoff time decision
section 507, a random number generation section 508, and a priority
packet judging section 509.
[0096] The radio section 501 performs wireless packet send/receive
through an antenna (not shown).
[0097] The packet receive section 502 is a section for receiving
packets through the radio section 501.
[0098] The interface 503, upon the receipt of the packet received
in the packet receive section 502, and selects the data portion
from the packet which is then transferred to a higher rank layer in
an OPI (open system interconnection) hierarchy. Further, the
interface 503, when requested from a higher rank layer to send
data, packets the data, and transfers the packet to the packet
transmitter 504.
[0099] The packet transmitter 504 asks the packet receive section
502 about higher rank state (idle line/inhibit), and, in the case
of an idle state, sends the packet, sent from the hop count
addition section 504, through the radio section 501 and, at the
same time, stores the sent packet in the send buffer 505.
[0100] Further, the packet transmitter 504 has the function of
acquiring the number of resends of the packet from the send buffer
505, adding "1" to the number of resends, and again writing the
result in the send buffer 505.
[0101] The send buffer 505 is an area for temporarily storing the
sent packet and the number of resends of the packet.
[0102] The collision detector 506 is a section for determining
whether or not the packet sent through the radio section 501 has
collided against other send packet.
[0103] The backoff time decision section 507 determines the backoff
time in resend processing of the collided packet based on
information from the random number generation section 508 described
below and information from the priority packet judging section
509.
[0104] The random number generation section 508, upon the request
from the backoff time decision section 507, generates a random
number in a certain predetermined range, and transfers the
generated random number to the backoff time decision section
507.
[0105] The priority packet judging section 509 fetches the sent
packet, from the send buffer 505, examines the priority level of
the packet, and sends the result to the backoff time decision
section 507.
[0106] FIG. 6 is a conceptual diagram illustrating the collision of
send packets in a communication system to which the priority data
transfer method according to a preferred embodiment of the
invention has been applied.
[0107] FIG. 6 shows the case where a send packet from a slave
station 3C and a send packet from a relay station 2B are
simultaneously sent to a relay station 2A. An example of the
operation of each station will be explained in conjunction with
FIGS. 7 and 8.
First Preferred Embodiment
[0108] FIG. 7 is a flow chart showing an example of the operation
of a relay station in the first preferred embodiment of the
invention. In FIG. 7, a relay station 2B judges at a certain time
t1 whether or not data has been received through the radio section
401 from any of slave stations 3E to 3G (step S701). Here when
judgment is such that data has not been received (step S701/NO),
receive processing in the radio station section 401 is
continued.
[0109] On the other hand, in step S701, when there is data received
through the radio section 401 (step S701/YES), whether or not the
packet has been properly received is judged (step S702). When the
packet has not been properly received (step S702/NO), a trailing
packet indicating abnormal receive is transferred through the
packet receive section 402 to the radio section 401, followed by
send of the packet (step S704).
[0110] In step S702, when it has been confirmed that the packet was
properly received (step S702/YES), a trailing packet indicating
normal receive is transferred through the packet receive section
402 to the radio section 401, followed by send of the packet (step
S703).
[0111] In the relay processing unit 403, the sender 302 and the
send destination 303 in the properly received packet are rewritten
respectively to ID of the relay processing unit per se and ID of a
relay station 2A to which the packet is to be sent next (step
S705). Thereafter, addition processing of a hop counter is
performed in an after-hop count addition section 404 (step S706).
In the addition processing of the hop counter in the hop count
addition section 404, a value obtained by adding "1" to the value
of the hop count recording section 304 is written in the same
place, followed by transfer of the packet to the packet transmitter
405.
[0112] The packet transmitter 405 asks the packet receive section
402 about higher rank state (idle line/inhibit) (step S707), and,
when "idle line" indication has been received from the higher rank
(that is, in the case of an idle state), transfers the packet,
received from the hop count addition section 404, to the packet
transmitter 405 and then to the radio section 401, followed by send
to the relay station 2A (step S708). The time at this point is
t2.
[0113] Next, the collision detector 407 judges whether or not
collision has occurred at the time of sending (step S709). Here
when collision has not been detected by the collision detector 407
(step S709/NO), judgment is made on whether or not the partial echo
stored in the partial echo field matches (step S710).
[0114] In step S710, when the judged partial echo has matched (step
S710/YES), judgment is made on whether or not there is further data
to be sent (step S717).
[0115] In step S717, when judgment is such that there is further
data to be sent (step S717/YES), the data is sent through the
packet transmitter 405 (step S718), and the detection of the
collision of the sent data is performed in the collision detector
207 (step S719). Here when the result of the detection is such that
there is no collision (step S719/NO), processing is returned to
step S717. On the other hand, when the result of the detection is
such that there is collision (step S719/YES), processing is
transferred to step S701.
[0116] In step S709, when the result of the detection of collision
in the collision detector 407 is such that there is collision (step
S709/YES), or when the result of the judgment in step S710 is such
that the partial echo does not match (step S710/NO), the relay
station 2B informs the packet transmitter 405 of the fact that the
collision has been detected. Upon the receipt of the notification,
the packet transmitter 405 fetches information on the number of
resends of the collided packet from the send buffer 406 to confirm
whether or not the recycle is over, that is, to perform retryout of
resend (step S711).
[0117] In step S711, when the result of judgment is such that the
recycle of the collided packet is over (step S711/YES), the send of
this packet is regarded as having failed, followed by transfer to
processing in step S701.
[0118] On the other hand, when the result of judgment in step S711
is such that the recycle of the collided packet is not over (step
S711/NO), a request is made to the backoff time decision section
408 for the determination of the backoff time, and the backoff time
decision section 408 asks the random number generation section 409
to generate a random number (step S712), and asks the priority
packet judging section 410 to examine the priority level of the
collided packet (step S713).
[0119] Upon the receipt of the request, the random number
generation section 409 informs the backoff time decision section
408 of the generated random number, and the priority packet judging
section 410 informs the backoff time decision section 408 of the
result of the examination on the priority level of the packet.
[0120] The backoff time decision section 408 calculates the backoff
time based on the notice of the random number and the result of the
examination of the priority level of the packet (step S714), and
informs the packet transmitter 405 of the determined backoff
time.
[0121] The packet transmitter 405 waits the send of packet by the
notified backoff time (step S715).
[0122] Upon the completion of the standby by the backoff time in
step S715, the packet transmitter 405 acquires the packet to be
resent from the send buffer 406 (step S716), followed by transfer
to processing in step S707.
[0123] FIG. 8 is a flow chart showing an example of the operation
of a slave station in the first preferred embodiment of the
invention. In FIG. 8, a slave station 3C judges whether or not, in
the interface 503, there is a demand (a request) for the send of
data from a higher rank layer in the OSI reference model (step
S801). Here when the result of judgment is such that there is a
demand (a request) for the send of data (step S801/YES), the packet
transformation 504 asks the packet receive section 502 about higher
rank state (idle line/inhibit) (step S802), and, when "idle line"
indication has been received from the higher rank (in the case of
an idle state), sends the packet, received from the interface 503,
through the radio section 501 (step S803).
[0124] Next, the collision detector 506 judges through the
detection procedure whether or not collision has occurred at the
time of sending (step S804). Here when the result of judgment by
the collision detector 506 is such that the collision has not
occurred (step S804/NO), judgment is made on whether or not the
partial echo stored in the partial echo field matches (step
S805).
[0125] In step S805, when the judged partial echo has matched (step
S805/YES), judgment is made on whether or not there is further data
to be sent (step S812).
[0126] In step S812, when judgment is such that there is further
data to be sent (step S812/YES), the data is sent through the
packet transmitter 504 (step S813), and the detection of the
collision of the sent data is performed in the collision detector
506 (step S814). Here when the result of detection is such that
there is no collision (step S814/NO), processing is returned to
step S812. On the other hand, when the result of the detection is
such that there is collision (step S814/YES), processing is
transferred to step S801.
[0127] In step S804, when the result of the detection of collision
in the collision detector 506 is such that there is collision (step
S804/YES), or when the result of the judgment in step S805 is such
that the partial echo does not match (step S805/NO), the slave
station 3C informs the packet transmitter 504 of the fact that the
collision has been detected. Upon the receipt of the notification,
the packet transmitter 504 fetches information on the number of
resends of the collided packet from the send buffer 505 to confirm
whether or not the recycle is over, that is, to perform retryout of
resent (step S806).
[0128] In step S806, when the result of judgment is such that the
recycle of the collided packet is over (step S806/YES), the send of
this packet is regarded as having failed, followed by transfer to
processing in step S801.
[0129] On the other hand, when the result of judgment in step S806
is such that the recycle of the collided packet is not over (step
S806/NO), a request is made to the backoff time decision section
507 for the determination of the backoff time, and the backoff time
decision section 507 asks the random number generation section 508
to generate a random number (step S807), and asks the priority
packet judging section 509 to examine the priority level of the
collided packet (step S808).
[0130] Upon the receipt of the request, the random number
generation section 508 informs the backoff time decision section
507 of the generated random number, and the priority packet judging
section 509 informs the backoff time decision section 507 of the
result of the examination on the priority level of the packet.
[0131] The backoff time decision section 507 calculates the backoff
time based on the notice of the random number and the result of the
examination of the priority level of the packet (step S809), and
informs the packet transmitter 504 of the determined backoff
time.
[0132] The packet transmitter 504 waits the send of packet by the
notified backoff time (step S810).
[0133] Upon the completion of the standby by the backoff time in
step S810, the packet transmitter 504 acquires the packet to be
resent from the send buffer 505 (step S811), followed by transfer
to processing in step S802.
[0134] The backoff time determined by the backoff time decision
section 408, 507 in step S714 shown in FIG. 7 and step S809 shown
in FIG. 8 is calculated according to the following equation:
Backoff time=Random number from random number generation section
(409, 508).times.(1-hop count received from priority packet judging
section (410, 509)/maximum hop count) (1)
[0135] Here the term "maximum hop count" refers to the maximum hop
count which is possible in the network structure shown in FIG. 5.
The value obtained by the calculation according to equation (1) is
such that the backoff time decreases with increasing the hop
count.
[0136] According to a preferred embodiment of the invention, the
value stored in the hop recording section 304 in the packet sent
from the slave station 3C is "1." On the other hand, the value
stored in the hop recording section 304 in the packet sent from the
relay station 2B is "2." That is, the hop count sent from the relay
station 2B is larger. Therefore, this leads to a higher probability
that the backoff time determined by calculation in the backoff time
decision section 408 in the relay station 2B is shorter than that
determined by calculation in the backoff time decision section 507
in the slave station 3C.
[0137] The backoff times determined by calculation in the backoff
time decision sections 408, 507 are notified respectively to the
packet transmitters 405, 504. After standby by the notified backoff
times, the respective collided packets are fetched from the send
buffers 406, 505, followed by resend of the packets.
[0138] In the priority data transfer method according to the first
preferred embodiment of the invention, the backoff time decreases
with increasing the hop count. A shorter backoff time provides a
higher probability that, in resending the packet after standby by
the backoff time in the packet transmitter, this packet can be sent
without collision against other packet. Therefore, a packet with a
larger hop count can be preferencially sent.
[0139] As is apparent from the construction of a communication
system shown in FIGS. 1 or 6, the packet with a larger hop count is
passed through a larger number of relay stations 2 in the course of
transmission. Therefore, this packet is more likely to be lost as a
result of a failure of transmission in the course of the
transmission. Further, the delay time and the magnitude of a
variation in delay are larger. The preferential send of the packet
with a larger hop count can reduce a probability that the packet is
lost due to recycle-over in the course of transmission.
[0140] Further, the preferential send of the packet with a larger
hop count can reduce the delay time and the magnitude of a
variation in delay. Therefore, the resend according to a transport
protocol in the higher rank layer, such as TCP, caused by the delay
and the variation in delay can be inhibited, and the probability of
the loss of the packet per se can be reduced.
Second Preferred Embodiment
[0141] FIG. 9 is a schematic block diagram showing the construction
of a relay station in a second preferred embodiment of the
invention. In FIG. 9, the relay station in the second preferred
embodiment of the invention comprises a radio section 901, a packet
receive section 902, a relay processing unit 903, a packet
transmitter 904, a send buffer 905, a collision detector 906, a
backoff time decision section 907, a random number generation
section 908, and a priority packet judging section 909.
[0142] The second preferred embodiment is different from the first
preferred embodiment in that the top count addition section 404 is
not provided.
[0143] The radio section 901 performs wireless packet send/receive
through an antenna (not shown).
[0144] The packet receive section 902 is a section for receiving
packets through the radio section 901.
[0145] The relay processing unit 903 functions to send the packet
received by the packet receive section 902 to a next send
destination.
[0146] The packet transmitter 904 asks the packet receive section
902 about higher rank state (idle line/inhibit), and, in the case
of an idle state, sends the packet, sent from the relay processing
unit 903, through the radio section 901 and, at the same time,
stores the sent packet in the send buffer 905.
[0147] Further, the packet transmitter 904 has the function of
acquiring the number of resends of the packet from the send buffer
905, adding "1" to the number of resends, and again writing the
result in the send buffer 905.
[0148] The send buffer 905 is an area for temporarily storing the
sent packet and the number of resends of the packet.
[0149] The collision detector 905 is a section for determining
whether or not the packet sent through the radio section 901 has
collided against other send packet.
[0150] The backoff time decision section 907 determines the backoff
time in resend processing of the collided packet based on
information from the random number generation section 908 described
below and information from the priority packet judging section 909
described below.
[0151] The random number generation section 908, upon the request
from the backoff time decision section 907, generates a random
number in a certain predetermined range, and transfers the
generated random number to the backoff time decision section
907.
[0152] The priority packet judging section 909 fetches the collided
packet, from the send buffer 905, examines the priority level of
the packet, and sends the result to the backoff time decision
section 907.
[0153] FIG. 10 is a diagram showing the construction of a packet
used as a leading send packet among the relay terminating section,
the relay stations, and the slave stations in the priority data
transfer method according to the second preferred embodiment of the
invention.
[0154] In FIG. 10, the leading send packet in the second preferred
embodiment of the invention comprises length information 1001, a
sender 1002, a send destination 1003, a priority value 1004, a send
data 1005, and an error correction symbol 1006.
[0155] The length information 1001 represents the number of
remaining packets to be sent. The sender 1002 is used for
identifying the sender of the packet, and stores the ID of the
packet sender. The send destination 1003 designates the send
destination of the packet, and stores the packet send destination
ID. The priority value 1004 represents the level of the required
rapidity of the send of this packet, that is, priority, and is one
integer value. The priority level increases with decreasing this
value. The send data 1005 is a section for storing send data. The
error correction symbol 1006 is a symbol for detecting and
correcting a receive error of the packet.
[0156] An example of the operation of the priority data transfer
method in the second preferred embodiment of the invention will be
explained in conjunction with FIG. 9. In FIG. 9, as soon as the
packet receive section 902 receives a packet from a relay station 2
or a slave station 3 located in a lower rank layer through the
radio section 901, this packet is sent to the relay processing unit
903. Upon the receipt of the packet, the relay processing unit 903
rewrites the sender 1002 of the packet to the ID of the relay
processing unit 903, writes ID of a higher rank relay station 2 or
a relay terminating station 1 in the send destination 1003,
transfers this packet to the packet transmitter 904. The packet
transmitter 904 transfers the received packet to the radio section
901, and, in addition, stores the same packet (copy) as the sent
packet in the send buffer 905.
[0157] Here when the collision detector 906 has detected that
collision occurred at the time of packet transmission, this is
notified to the packet transmitter 904. In order to determine the
backoff time for resend, the packet transmitter 904 requests the
backoff time decision section 907 for the calculation of the
backoff time. The backoff time decision section 907 requests the
random number generation section 908 for the generation of a random
number falling within a certain value range, and receives the
result.
[0158] In order to learn about the priority level of the latest
sent packet, simultaneously with the receipt of the random number
generated in the random number generation section 908, the backoff
time decision section 907 requests the priority packet judging
section 909 for the examination of the priority level of the
packet, that is, the priority value 1004 in the second preferred
embodiment of the invention.
[0159] The priority packet judging section 909 fetches the latest
sent packet from the send buffer 905, examines the value of the
priority 1004, and informs the backoff time decision section 907 of
this value. The backoff time decision section 907 calculates
backoff time from the random number received from the random number
generation section 908 and the value of the priority received from
the priority packet judging section 909, for example, according to
the following equation:
Backoff time=(Value received from priority packet judging section
909/4).times.(Value received from random number generation section
908) (2)
[0160] In formula (2), the backoff time is calculated by
multiplying a value proportional to the value received from the
priority packet judging section 909, that is, a value proportional
to the priority value 1004 recorded in the collided packet, by the
random number received from the random number generation section
908. Therefore, a lower value of the priority 1004 provides a
shorter backoff time than usual, and thus leads to more
preferential send processing.
[0161] Upon the calculation of the backoff time in the backoff time
decision section 907, this value is notified to the packet
transmitter 904. The packet transmitter 904 waits the send
processing by the backoff time notified by the backoff time
decision section 907, fetches the latest sent collided packet from
the send buffer 905, and then again performs send processing
through the radio section 901.
[0162] In the priority data transfer method according to the second
preferred embodiment of the invention, an area for indicating the
priority value 1004 is provided in the send packet, and the random
number generated by the random number generation section 908 is
multiplied by the priority value so that the backoff time decreases
with increasing the priority level of the packet. By virtue of
this, upon the collision of packets, the packet with a higher
priority level can be preferentially sent.
Third Preferred Embodiment
[0163] The schematic construction of slave stations in the priority
data transfer method according to the third preferred embodiment of
the invention is the same as the construction shown in FIG. 9, and,
thus, the explanation of the construction will be omitted.
[0164] FIG. 11 is a diagram showing the construction of a packet
used as a leading send packet among the relay terminating station,
the relay stations, and the slave stations in a third preferred
embodiment of the priority data transfer method according to the
invention.
[0165] In FIG. 11, the leading send packet in the third preferred
embodiment of the invention comprises length information 1101, a
sender 1102, a send destination 1103, a continued bit 1104, a data
size 1105, a send data 1106, and an error correction symbol
1107.
[0166] The length information 1101 represents the number of
remaining packets to be sent. The sender 1102 is used for
identifying the sender of the packet, and stores the ID of the
packet sender. The send destination 1103 designates the send
destination of the packet, and stores the packet send destination
ID. The continued bit 1104 is a section for indicating whether or
not, when data is sent in the state of being divided by
fragmentation, continued data is stored in the send data 1106. The
data size 1105 stores the size of data stored in the send data
1106. The send data 1106 is data to be sent. The error correction
symbol 1107 is a symbol for detecting and correcting a receive
error of the packet.
[0167] Next, an example of the operation of the priority data
transfer method in the third preferred embodiment of the invention
will be explained in conjunction with FIG. 9. In FIG. 9, as soon a
the packet receive section 902 receives a packet from a relay
station 2 or a slave station 3 located in a lower rank layer
through the radio section 901, this packet is sent to the relay
processing unit 903. Upon the receipt of the packet, the relay
processing unit 903 rewrites the sender 1102 of the packet to the
ID of the relay processing unit 903, writes ID of a higher rank
relay station 2 or a relay terminating station 1 in the send
destination 1103, transfers this packet to the packet transmitter
904. The packet transmitter 904 transfers the received packet to
the radio section 901, and, in addition, stores the same packet
(copy) as the sent packet in the send buffer 905.
[0168] Here when the collision detector 906 has detected that
collision occurred at the time of packet transmission, this is
notified to the packet transmitter 904. In order to determine the
backoff time for resend, the packet transmitter 904 requests the
backoff time decision section 907 for the calculation of the
backoff time. The backoff time decision section 907 requests the
random number generation section 908 for the generation of a random
number falling within a certain value range, and receives the
result.
[0169] In order to learn about the priority level of the latest
sent packet, simultaneously with the receipt of the random number
generated in the random number generation section 908, the backoff
time decision section 907 requests the priority packet judging
section 909 for the examination of the priority level of the
packet, that is, the contents of the continued bit 1104 and the
data size 1105 in the third preferred embodiment of the
invention.
[0170] The priority packet judging section 909 fetches the latest
sent packet from the send buffer 905, examines the contents of the
continued bit 1104 and the data size 1105, and informs the backoff
time decision section 907 of the result. The backoff time decision
section 907 calculates backoff time from the random number received
from the random number generation section 908 and the results of
the examination of the contents received from the priority packet
judging section 909, for example, according to the following
equation:
Backoff time=Value received from random number generation section
908.times.[1-(k.times.data size received from priority packet
judging section 909/maximum data size)].times.t (3)
[0171] Here k is a parameter for regulating the priority level
utilizing the data size, and is a value of 0 to less than 1, for
example, about 0.5. t is a value which varies depending upon the
state of the continued bit 1104 notified by the priority packet
section 909. When the continued bit 1104 indicates that no
continued data is present, t is 1, while when the continued bit
1104 indicates that continued data is present, t is 0<t<1.
For example, t is about 0.8. Therefore, the value obtained by
calculation according to equation (3) is such that the backoff time
decreases with increasing the data size 1105 and that, in the case
of the same data size, the backoff time is shorter when the
continued bit 1104 indicates that continued data is present.
[0172] In the priority data transfer method according to the third
preferred embodiment of the invention, the packet with a larger
data size and, in the case of the same data size, the packet with
continued data can be preferentially send. Thus, delay can be
reduced in the transmission of data having a large size as a
whole.
Fourth Preferred Embodiment
[0173] The schematic construction of slave stations in the priority
data transfer method according to the fourth preferred embodiment
of the invention is the same as the construction shown in FIG. 3,
and, thus, the explanation of the construction will be omitted.
[0174] FIG. 12 is a diagram showing the construction of a packet
used as a leading send packet among the relay terminating station,
the relay stations, and the slave stations in the priority data
transfer method according to the fourth preferred embodiment of the
invention.
[0175] In FIG. 12, the leading send packet in the fourth preferred
embodiment of the invention comprises length information 1202, a
sender 1202, a send destination 1203, a hop count recording section
1204, a priority value 1205, a send data 1206, and an error
correction symbol 1207.
[0176] The length information 1202 represents the number of
remaining packets to be sent. The sender 1202 is used for
identifying the sender of the packet, and stores the ID of the
packet sender. The send destination 1203 designates the send
destination of the packet, and stores the packet send destination
ID. The hop count recording section 1204 is a section for storing
the hop count of this packet. When the packet is initially sent,
"1" is stored. Thereafter, every time when the packet is relayed,
"1" is added. The priority value 1205 represents the level of the
required rapidity of the send of this packet, that is, priority,
and is an integer of 1 to 4. The priority level increases with
decreasing this value. The send data 1206 is data to be sent. The
error correction symbol 1207 is a symbol for detecting and
correcting a receive error of the packet. In this case, the backoff
time is calculated according to the following equation:
Backoff time=(Value received from random number generation section
409).times.(packet priority value received from priority packet
judging section 410/4).times.(1-hop count received from priority
packet judging section 410/maximum hop count) (4)
[0177] In the priority data transfer method according to the fourth
preferred embodiment of the invention, the backoff time is
calculated by multiplying the random number received from the
random number generation section 409 by a value proportional to the
priority value and then by a value obtained by subtracting a value
proportional to the hop count from 1 (one). Therefore, a packet
with a higher priority level and a packet with a larger hop count
are preferentially sent. Further, even in the case of a packet with
a small hop count, when the packet is on a higher priority level,
this packet can be preferentially sent.
[0178] In the above-described preferred embodiments of the
invention, random access control (collision control) is performed
by ICMA/PE. The invention, however, is not limited to this only.
For example, the invention can also be applied to random access
control by CSMA/CD.
[0179] As is apparent from the foregoing description, according to
the priority data transfer method of the invention, setting is made
so that the backoff time decreases with increasing the hop count. A
shorter backoff time provides a higher probability that, in
resending the packet after standby by the backoff time in the
packet transmitter, this packet can be sent without collision
against other packet. Therefore, a packet with a larger hop count
can be preferentially sent.
[0180] Further, according to the priority data transfer method of
the invention, an area for indicating the priority value is
provided in the send packet, and the random number generated by the
random number generation section 409 is multiplied by a value
proportional to the priority value so that the backoff time
decreases with increasing the priority level of the packet. By
virtue of this, upon the collision of packets, the packet with a
higher priority level can be preferentially sent.
[0181] Further, according to the priority data transfer method of
the invention, the packet with a larger data size and, in the case
of the same data size, the packet with continued data can be
preferentially sent. Thus, delay can be reduced in the transmission
of data having a large size as a whole.
[0182] Further, according to the priority data transfer method of
the invention, the backoff time is calculated by multiplying the
random number received from the random number generation section
409 by a value proportional to the priority value and then by a
value obtained by subtracting a value proportional to the hop count
from 1 (one). Therefore, a packet with a higher priority level and
a packet with a larger hop count are preferentially sent. Further,
even in the case of a packet with a small hop count, when the
packet is on a higher priority level, this packet can be
preferentially sent.
[0183] Further, according to the priority data transfer method of
the invention, the priority data transfer control, which has
hitherto been carried out by each terminal unit, is performed in a
relay unit. Therefore, a load on each terminal unit can be reduced,
and data transfer processing at a higher speed can be realized.
[0184] The invention has been described in detail with particular
reference to preferred embodiments, but it will be understood that
variations and modifications can be effected within the scope of
the invention as set forth in the appended claims.
* * * * *