Sign In to Follow Application
View All Documents & Correspondence

Communication Device Communication System Communication Method And Storage Medium Storing Program For Communication

Abstract: To provide a communication device that can suppress imbalances in the amount of data transmitted by each communication line in cases where data is transferred using a plurality of communication lines. [Solution] A splitting unit (81) splits a frame that has been input. A distributing unit (82) distributes the split frame in accordance with the output band of each of a plurality of lines. A transmission unit (83) transmits the distributed frame. The distributing unit (82) distributes the frame to a line having the smallest remaining output weight which indicates the ratio of the remaining amount of data that can be output per predetermined period by each line to the amount of data that can be output in a unit time which is set as the output band for each line. The transmission unit (83) transmits a dummy frame equivalent to the remaining amount of data upon the lapse of the predetermined period.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
13 October 2016
Publication Number
08/2017
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
Parent Application
Patent Number
Legal Status
Grant Date
2022-11-14
Renewal Date

Applicants

NEC CORPORATION
7 1 Shiba 5 chome Minato ku Tokyo 1088001

Inventors

1. HIRATA Ikuo
c/o NEC CORPORATION 7 1 Shiba 5 chome Minato ku Tokyo 1088001

Specification

[Document Name] DESCRIPTION
[Ti t le of Invent ion] COMMUNICATION DEVICE, COMMUNICATION
SYSTEM, COMMUNICATION METHOD, AND STORAGE MEDIUM
STORING PROGRAM FOR COMMUNICATION
5 [Technical Field]
[0001]
The present invent ion relates to a communicat ion device, a
communicat ion system, a communicat ion method, and a storage medium
storing a program for communicat ion that are used for transfer ring data by
10 aggregat ing a plural i ty of communicat ion l ines.
[Background Art]
[0002]
One known technology for increasing a commun icat ion bandwidth
using a plural i ty of l ines is l ink aggregat ion, which is standardized in IEEE
15 (The Inst i tute of Electr ical and Elect ronics Engineers, Inc. ) 802.3ad .
According to the l ink aggregat ion, frames are distr ibuted to a plural i ty of
l ines based on MAC (Media Access Cont rol) addresses, IP ( Internet
Protocol) addresses, or the l ike.
[0003]
20 Besides, PTL 1 descr ibes a method for t ransmi t t ing data packets in
paral lel using a plural i ty of wireless channels or the l ike, and
ret ransmi t t ing them in case of fai lure in normal t ransmission. According
to the method described in PTL 1, data frames accumulated in a
transmission buffer are used to generate a plural i ty of data packets, each of
25 which needs an ident ical t ransmission t ime, in uni ts of packets that can be
transmi t ted in paral lel , and the data packets are t ransmi t ted consecut ively
in uni ts of packets that can be t ransmi t ted in paral lel . Then, i f a plural i ty
of data packets generated at a t ime need different transmission t imes, a
dummy bi t is added before paral lel t ransmission to a data packet that needs
2
a shorter t ransmission t ime so that al l the data packets are t ransmi t ted in an
ident ical t ime.
[Ci tat ions List]
[Patent Li terature]
5 [0004]
[PTL 1] Japanese Unexamined Patent Appl icat ion Publ icat ion No.
2008-187725
[Summary of Invent ion]
[Technical Problem]
10 [0005]
The above-described l ink aggregat ion may cause an imbalance in
consumed bandwidths among l ines . For example, in the case where
traffic in one l ine is heavier than the physical bandwidth whi l e t raffic in
another l ine is l ighter than the physical bandwidth, the above -described
15 method has di fficul ty in dist ribut ing t raffic among l ines evenly.
[0006]
Besides, according to the method described in PTL 1, a plural i ty of
data packets are generated so as to have a t ransmission t ime ident ical to
one another, and the data is t ransfer red through channels independent ly of
20 one another. Consequent ly, an imbalance in the amount of t ransfer red
data may be caused among channels depending on the condi t ion of l ines.
[0007]
Thus, an object of the present invent ion is to provide a
communicat ion device, a communicat ion system, a communicat ion method,
25 and a storage medium storing a program for communicat ion that can
reduce, in the case where data is transferred by using a plural i ty of
communicat ion l ines, an imbalance in the amount of data t ransmi t ted
through the individual l ines.
[Solut ion to Problem]
3
[0008]
A communicat ion device, according to the present invent ion, that
transfers data using a plural i ty of l ines, compr ises:
spl i t t ing means that spl i ts an input ted f rame;
distr ibut ing means that dist ributes spl i t frames 5 based on output
bandwidths of the plural i ty of l ines; and
transmi t t ing means that transmi ts dist ributed f rames,
wherein the distribut ing means di st ributes a frame to a l ine that has
the smal lest remaining output weight , which indicates the rat io of the
10 remaining amount of data that can be output ted through the l ine in every
predetermined period to the amount of data that can be output ted per uni t
t ime, which is speci f ied for each l ine as the output bandwidth,
and wherein the t ransmi t t ing means t ransmi ts a dummy f rame
equivalent to the remaining amount of data upon lapse of the
15 predetermined period.
[0009]
A communicat ion system, according to the present invent ion,
comprises a plural i ty of communicat ion devices, the communicat ion
devices each transfer ring data using a plural i ty of l ines,
20 wherein each of the communicat ion devices compr ises:
spl i t t ing means that spl i ts an input ted f rame;
distr ibut ing means that dist ributes spl i t frames based on output
bandwidths of the plural i ty of l ines; and
transmi t t ing means that transmi ts dist ributed f rames,
25 wherein the distribut ing means dist ributes a frame to a l ine that has
the smal lest remaining output wei ght , which indicates the rat io of the
remaining amount of data that can be output ted through the l ine in every
predetermined period to the amount of data that can be output ted per uni t
t ime, which is speci f ied for each l ine as the output bandwidth,
4
and wherein the t ransmi t t ing means t ransmi ts a dummy f rame
equivalent to the remaining amount of data upon lapse of the
predetermined period.
[0010]
A communicat ion method, according to the present 5 invent ion, for
transfer ring data using a plural i ty of l ines, comprises:
spl i t t ing an input ted frame;
distr ibut ing a spl i t f rame to a l ine that has the smal lest remaining
output weight , which indicates the rat io of the remaining amount of data
10 that can be output ted through the l ine in every predetermined period to th e
amount of data that can be output ted per uni t t ime, which is specified for
each l ine as an output bandwidth; and
transmi t t ing a distributed f rame and a dummy frame equivalent to
the remaining amount of data upon lapse of the predetermined period.
15 [0011]
A storage medium storing a program for communicat ion , according
to the present invent ion, to be appl ied to a computer that t ransfers data
using a plural i ty of l ines,
causes the computer to execute:
20 a spl i t t ing process of spl i t t ing an input ted f rame;
a dist ribut ing process of distribut ing spl i t f rames based on output
bandwidths of the plural i ty of l ines; and
a t ransmi t t ing process of t ransmi t t ing dist ributed frames,
wherein the dist ribut ing process is executed to dist ribute a f rame to
25 a l ine that has the smal lest remaining output weight , which indicates the
rat io of the remaining amount of data that can be output ted through the l ine
in every predetermined period to the amount of data that can be output ted
per uni t t ime, which is speci fied for each l ine as the output bandwidth,
and wherein the t ransmi t t ing process is executed to transmi t a
5
dummy f rame equivalent to the remaining amount of data upon lapse of the
predetermined period.
[Advantageous Effects of Invent ion]
[0012]
According to the present invent ion, in the 5 case where data is
transfer red by using a plural i ty communicat ion l ines, an imbalance in the
amount of data t ransmi t ted through the individual l ines is rest rained.
[Brief Descript ion of Drawings]
[0013]
10 Fig. 1 is a block diagram i l lust rat ing an exemplary embodiment of a
communicat ion system according to the present invent ion.
Fig. 2 is an explanatory diagram i l lust rat ing an example process of
transmi t t ing data frames.
Fig. 3 is an explanatory diagram i l lust rat ing an example process of
15 receiving data f rames.
Fig. 4 is an explanatory diagram i l lust rat ing an example pre -spl i t
data f rame.
Fig. 5 is an explanatory diagram i l lust rat ing example post -spl i t data
frames.
20 Fig. 6 is an explanatory diagram i l lustrat ing an example format of a
control frame.
Fig. 7 is an explanatory diagram i l lustrat ing an example format of a
dummy f rame.
Fig. 8 is an explanatory diagram i l lust rat ing an example process of
25 distr ibut ing f rames.
Fig. 9 is an explanatory diagram i l lust rat ing an example operat ion
in the case where a f rame is output ted to a l ine that has the largest number
of remaining bytes avai lable for output .
Fig. 10 is an explanatory diagram i l lust rat ing an example method of
6
adjust ing an output bandwidth.
Fig. 11 is an explanatory diagram i l lust rat ing an example method of
measuring a delay t ime.
Fig. 12 is a block diagram i l lust rat ing an overview of a
communicat ion device according to the 5 present invent ion.
Fig. 13 is a block diagram i l lust rat ing an overview of a
communicat ion system according to the present invent ion.
[Descript ion of Embodiments]
[0014]
10 Exemplary embodiments of the present invent ion wi l l be descr ibed
below wi th reference to the drawings.
[0015]
Fig. 1 is a block diagram i l lust rat ing an exemplary embodiment of a
communicat ion system according to the present invent ion. The
15 communicat ion system of the present exemplary embodiment includes two
communicat ion devices: a communicat ion device 1 and a communicat ion
device 15. The communicat ion devices 1 and 15 have ident ical funct ions
and include a receiving uni t 2 and a transmi t t ing uni t 3 . Note that other
than the receiving and transmi t t ing uni ts 2 and 3, the communicat ion
20 devices 1 and 15 may respect ively have funct ions di fferent between the
devices.
[0016]
The communicat ion devices 1 and 15 are connected to each other
via a plural i ty of l ines: Line 1, Line 2, . . . , and Line n . The
25 communicat ion devices 1 and 15, const i tut ing a pai r, communicate wi th
each other. Note that the communicat ion devices 1 and 15 may be
connected to each other di rect ly or via any other device . Note that
irrespect ive of whether they are connected via any other device, f rames
from the communicat ion device 1 are addressed to the communicat ion
7
device 15. Further, in the present exemplary embodiment , i t is assumed
that no f rame f rom a device other than the communicat ion device 1 is
input ted to the communicat ion device 15.
[0017]
The t ransmi t t ing uni t 3 includes a spl i t t ing uni 5 t 4, a bandwidth
managing uni t 5, a distribut ing uni t 6, control frame generat ing uni t s 7-1 to
7-n, storing uni ts 8-1 to 8-n, and arbi trat ing uni ts 9-1 to 9-n. In the
descript ions about funct ions below, the control frame generat ing uni ts, the
storing uni ts, and the arbi t rat ing uni ts are respect ively denoted as the
10 control frame generat ing uni t 7, the storing uni t 8, and the arbi trat ing uni t
9. The cont rol f rame generat ing uni t 7, the storing uni t 8, and the
arbi t rat ing uni t 9 are disposed for every connected l ine (port) .
[0018]
The spl i t t ing uni t 4 spl i ts an input ted f rame and inputs resu l tant
15 frames to the dist ribut ing uni t 6. The spl i t t ing uni t 4 may use any method
of spl i t t ing a f rame, and thus the spl i t t ing uni t 4 may use a wel l -known
method to spl i t a f rame.
[0019]
The bandwidth managing uni t 5 manages output bandwidths of the
20 individual l ines. The dist ribut ing uni t 6 dist ributes spl i t f rames into the
storing uni t 8 based on output bandwidths of the individual l ines . Note
that the detai ls of an output bandwidth managed by the bandwidth
managing uni t 5 and how the dist ribut ing uni t 6 distr ibutes post -spl i t
frames are described later.
25 [0020]
The cont rol f rame generat ing uni t 7 generates a control frame to be
transmi t ted to another communicat ion device . In addi t ion, the control
frame generat ing uni t 7 generates a dummy f rame to be t r ansmi t ted i f the
amount of data frames to be transmi t ted is smal ler relat ive to the output
8
bandwidth of a l ine managed by the bandwidth managing uni t 5 . Note
that the detai ls of the control frame and the dummy f rame are described
later.
[0021]
The storing uni t 8 temporari ly holds a f rame that 5 has been input ted
from the dist ribut ing uni t 6.
[0022]
The arbi t rat ing uni t 9 sequent ial ly t ransmi ts, via the connected l ine,
the f rames that have been input ted to the storing uni t 8.
10 [0023]
The spl i t t ing uni t 4, the bandwidth managing uni t 5, the dist ribut ing
uni t 6, the cont rol f rame generat ing uni t 7, and the arbi t rat ing uni t 9 are
implemented by a central processing uni t (CPU) in a computer that runs
according to a program (program for communicat ion) . For example, the
15 program may be stored in a storage uni t (not i l lust rated) in the
communicat ion device 1, and the CPU may read the program to act as the
spl i t t ing uni t 4, the bandwidth managing uni t 5, the dist ribut ing uni t 6, the
control frame generat ing uni t 7, and the arbi t rat ing uni t 9 according to the
program.
20 [0024]
Al ternat ively, each of the spl i t t ing uni t 4, the bandwidth managing
uni t 5, the distribut ing uni t 6, the cont rol f rame generat ing uni t 7, and the
arbi t rat ing uni t 9 may be implemented by a dedicat ed hardware piece.
Further, the storing uni t 8 may be implemented by, for example, a memor y.
25 [0025]
Fig. 2 is an explanatory diagram i l lust rat ing an example process of
transmi t t ing data frames per formed by the t ransmi t t ing uni t 3.
When Frames 1, 2, and 3 are input ted to the transmi t t ing uni t 3, the
spl i t t ing uni t 4 spl i ts each of the frames, adds a sequence number, a head
9
flag, and an end flag to each of the spl i t f rames, and inputs the frames to
the dist ribut ing uni t 6. The head flag ident i fies whether the data is the
head of a f rame that has been spl i t , whi le the end flag ident i fies whether
the data is the end of a f rame that has been spl i t .
5 [0026]
Here, suppose that the sequence number for Frame 1a is n, then the
sequence numbers for Frames 1b, 1c, 2, 3a, and 3b are represented by n +
1, n + 2, n + 3, n + 4, and n + 5, respect ivel y.
[0027]
10 Based on the output bandwidths of the individual l ines managed by
the bandwidth managing uni t 5, the distribut ing uni t 6 t ransmi ts f rames to
the storing uni ts 8 (8-1, 8-2, and 8-3) on the respect ive l ines . The
example shown in Fig. 2 assumes that Line 2 has the largest output
bandwidth and Line 1 has the smal lest output bandwidth among the l ines
15 managed by the bandwidth managing uni t 5. The storing uni t 8, which is
disposed for every l ine, stores received frames . The arbi t rat ing uni t 9
(9-1, 9-2, and 9-3) reads any f rame stored in the storing uni t 8, and
transmi ts i t to the l ine connected thereto.
[0028]
20 The receiving uni t 2 includes fi l tering uni ts 10 -1 to 10-n, cont rol
frame processing uni ts 11-1 to 11-n, storing uni ts 12-1 to 12-n, a reading
uni t 13, and a combining uni t 14. In the descript ions about funct ions
below, the f i l tering uni ts, the control frame processing uni ts, and the
storing uni ts are respect ively denoted as the fi l tering uni t 10, the cont rol
25 frame processing uni t 11, and the storing uni t 12 . The fi l tering uni t 10,
the cont rol f rame processing uni t 11, and the storing uni t 12 are disposed
for every l ine to be connected (port ).
[0029]
The f i l tering uni t 10 receives a f rame t ransmi t ted from another
10
device, and inputs the frame to the cont rol f rame processing uni t 11 and to
the storing uni t 12.
[0030]
The cont rol f rame processing uni t 11 processes a received control
5 frame.
[0031]
The storing uni t 12 temporari ly holds a f rame that has been input ted
from the fi l tering uni t 10.
[0032]
10 The reading uni t 13 reads f rames held by each storing uni t 12 and
inputs the f rames to the combining uni t 14.
[0033]
The combining uni t 14 combines f rames that have bee n input ted
from the reading uni t 13, and transmi ts the resul tant f rames to another
15 device.
[0034]
The f i l tering uni t 10, the cont rol f rame processing uni t 11, the
reading uni t 13, and the combining uni t 14 are implemented by a CPU in a
computer that runs according to a program (program for communicat ion) .
20 For example, the program may be stored in a storage uni t (not i l lust rated)
in the communicat ion device 1, and the CPU may read the program to act as
the fi l tering uni t 10, the cont rol f rame processing un i t 11, the reading uni t
13, and the combining uni t 14 according to the program.
[0035]
25 Al ternat ively, each of the fi l tering uni t 10, the cont rol f rame
processing uni t 11, the reading uni t 13, and the combining uni t 14 may be
implemented by a dedicated hardware piece. Further, the storing uni t 12
may be implemented by, for example, a memor y.
[0036]
11
Fig. 3 is an explanatory diagram i l lust rat ing an example process of
receiving data f rames per formed by the receiving uni t 2 . Frames 1a, 1b,
1c, 2, 3a, and 3b i l lustrated in Fig. 3 are the f rames that have been
transmi t ted by the individual arbi trat ing uni ts 9 i l lust rated in Fig. 2.
5 [0037]
The f i l tering uni t 10 (10-1, 10-2, and 10-3) inputs the transmi t ted
data f rames to the storing uni t 12 (12-1, 12-2, and 12-3). The reading
uni t 13 reads the data frames stored in the stor ing uni t 12 and inputs them
to the combining uni t 14 in the order of sequence number, ir respect ive of
10 the order of ar rival .
[0038]
In the examples i l lustrated in Figs. 2 and 3, the reading uni t 13
starts wi th reading Frame 1a, which has the smal lest sequence number, and
then sequent ial ly reads the fol lowing f rames, each of which has a sequence
15 number obtained by adding 1 to the previous f rame.
[0039]
The combining uni t 14 recognizes a series of frames from the frame
having the head flag 1 to the frame having the end flag 1, as a pre-spl i t
frame. Then, the combining uni t 14 then removes sequence numbers,
20 head flags, and end f lags f rom the spl i t f rames, combines these frames
together to recover pre-spl i t f rames, and t ransmi ts the recovered f rames.
[0040]
Next , the fol lowing describes detai ls of a control f rame . Control
frames are used for checking l ine connect ions and for dynamical ly
25 control l ing output bandwidths . Speci fical ly, a cont rol f rame is generated
by the control f rame generat ing uni t 7 (7-1, 7-2, . . . , 7-n) in the transmi t t ing
uni t 3 i l lust rated in Fig. 1. Then, the arbi t rat ing uni t 9 (9-1, 9-2, . . . , 9-n)
arbi t rates between a data f rame and a control f rame, and outputs the
control frame to the l ine.
12
[0041]
Then, in the receiving uni t 2 in the communicat ion device 15, the
fi l tering uni t 10 (10-1, 10-2, . . . , 10-n) receives a cont rol f rame, and, if the
control frame matches the condi t ion for control f rames, the fi l ter ing uni t
10 inputs i t to the control frame processing uni t 11 (11 -1, 5 11-2, . . . , 11-n) .
The cont rol f rame processing uni t 11 analyzes the contents of a control
frame, and uses the analyzed contents to control an output bandwidth and
to generate a cont rol f rame to be transmi t ted.
[0042]
10 Next , the fol lowing describes detai ls of a dummy f rame . When
the amount of data f rames to be output ted is smal ler relat ive to a speci fied
output bandwidth, a dummy f rame equivalent to the avai lable part of the
bandwidth is inserted. A dummy f rame is also used for dynamical ly
control l ing an output bandwidth, as described later.
15 [0043]
Specif ical l y, i f the amount of data f rames to be output ted is smal ler
relat ive to an output bandwidth under management , the bandwidth
managing uni t 5 not i fies this effect to the control f rame generat ing uni t 7
(7-1, 7-2, . . . , 7-n) corresponding to the each l ine. Upon receipt of the
20 not i ficat ion, the cont rol f rame generat ing uni t 7 generates a dummy frame
so that output ted f rames fi t wi th the output bandwidth man aged by the
bandwidth managing uni t 5, and outputs the dummy f rame to the arbi t rat ing
uni t 9. The arbi t rat ing uni t 9 t ransmi ts the dummy f rame that has
undergone output arbi trat ion wi th data f rames.
25 [0044]
Further, in the receiving uni t 2 in the communic at ion device 15, the
fi l tering uni t 10 (10-1, 10-2, . . . , 10-n) receives the dummy f rame, and, if
the dummy f rame matches the condi t ion for dummy f rames, the fi l ter ing
uni t 10 inputs i t to the cont rol f rame processing uni t 11 (11 -1, 11-2, . . . ,
13
11-n). Then, the control frame processing uni t 11 then discards the
input ted dummy f rame.
[0045]
Next , the fol lowing describes detai ls of a f rame that is used in the
present exemplary embodiment . Fig. 4 is an explanatory 5 diagram
i l lust rat ing an example data f rame be fore i t is spl i t . A pre-spl i t data
frame 21 i l lust rated in Fig. 4 includes a header 22, which is needed for a
frame to go through a network, and a payload 23.
[0046]
10 Fig. 5 is an explanatory diagram i l lust rat ing an example of
post -spl i t data frames . Post-spl i t data f rames 24-a to 24-c are generated
from the pre-spl i t data f rame 21 i l lustrated in Fig. 4. The example in Fig.
5 shows that the pre-spl i t data f rame is spl i t into three f rames.
[0047]
15 As i l lust rated in Fig. 5 wi th the post -spl i t data f rames 24-a to 24-c,
the spl i t t ing uni t 4 spl i ts a pre -spl i t data frame 21 into data segments 31 of
a pre-spl i t data frame. In addi t ion, the spl i t t ing uni t 4 adds a header 25, a
sequence number 26, a head flag 27, an end flag 28, a cont rol flag 29, and a
dummy flag 30 to each data segment to generate a post -spl i t data frame.
20 [0048]
The header 25, which is needed for a data frame to go through a
network, is addi t ional ly given aside f rom the header 22 in a pre -spl i t data
frame.
[0049]
25 The sequence number 26 is used by the reading uni t 13 in the
receiving uni t 2 for rear ranging post -spl i t data f rames . The value of the
sequence number 26 is determined by adding 1 to the sequence number for
the immediately preceding post -spl i t data frame.
[0050]
14
The head flag 27 indicates the head of a pre-spl i t data f rame.
Among the post -spl i t data f rames i l lust rated in Fig. 5, only the post -spl i t
data f rame 24-a has the head f lag 27 set to 1, whi le the post -spl i t data
frames 24-b and 24-c each have the head f lag 27 set to 0.
5 [0051]
The end flag 28 indicates the end of a pre -spl i t data frame.
Among the post -spl i t data f rames i l lust rated in Fig. 5, only the post -spl i t
data f rame 24-c has the end flag 28 set to 1, whi le the post -spl i t data
frames 24-a and 24-b each have the end flag 28 set to 0.
10 [0052]
The head flag 27 and the end flag 28 are used by the combining uni t
14 in the receiving uni t 2 for assembl ing frames.
[0053]
The cont rol f lag 29 indicates that the f rame is a cont rol frame .
15 Besides, the dummy flag 30 indicates that the f rame is a dummy f rame.
In the post -spl i t data f rames i l lustrated in Fig. 5, the cont rol flags 29 and
the dummy f lags 30 are set to 0.
[0054]
Fig. 6 is an explanatory diagram i l lustrat ing an example format of a
20 control frame. As wi th the post -spl i t data frames i l lust rated in Fig. 5, a
control frame 32 includes a header 25, a sequence number 26, a head flag
27, an end flag 28, a control flag 29, and a dummy flag 30 . The value of
the sequence number 26 in a control f rame is determined by adding 1 to t he
sequence number for the immediately preceding cont rol f rame 32 .
25 Further, both the head flag 27 and the end flag 28 are permanent ly set to 1 .
Further, the cont rol f lag 29, which is a field represent ing that the f rame is a
control frame, is set to 1. Further, the dummy flag 30, which is a field
represent ing that the f rame is a dummy f rame, is set to 0.
[0055]
15
If a f rame has the control flag 29 set to 1, the fi l tering uni t 10 in the
receiving uni t 2 determines that the f rame is a cont rol f rame, and outp uts
the cont rol f rame to the cont rol f rame processing uni t 11 . In other words,
the fi l tering uni t 10 makes the determinat ion based on whether the cont rol
flag 29 is set to 1, as the condi t ion for 5 control frames.
[0056]
In addi t ion to the informat ion incl uded in a post -spl i t data f rame,
the cont rol f rame 32 includes, for the purpose of adjust ing a bandwidth of a
l ine, a remote device transmission f rame count 33, a remote device
10 transmission byte count 34, a local device recept ion frame count 35, a local
device recept ion byte count 36, a local device t ransmission f rame count 37,
a local device transmission byte count 38, and delay measurement
informat ion 39.
[0057]
15 The remote device t ransmission frame count 33 indicates the
number of frames transmi t ted f rom the counterpart communicat ion device.
The remote device t ransmission byte count 34 indicates the number of
bytes of f rames t ransmi t ted from the counterpart communicat ion device .
The local device recept ion f rame count 35 indicates the number of frames
20 received f rom the counterpart communicat ion device . The local device
recept ion byte count 36 indicates the number of bytes of f rames received
from the counterpar t communicat ion device . The local device
transmission f rame count 37 indicates the number of frames t ransmi t ted by
the local communicat ion device . The local device t ransmission byte
25 count 38 indicates the number of bytes of f rames t ransmi t ted by the local
communicat ion device. The delay measurement informat ion 39 indicates
a delay t ime measured when a frame is t ransmi t ted. Note that , how the
individual fields included in a cont rol frame are used is described later in
the descript ion below about the funct ion to adjust an output bandwidth.
16
[0058]
Fig. 7 is an explanatory diagram i l lustrat ing an example format of a
dummy f rame. As wi th the post -spl i t data frames 24 i l lust rated in Fig. 5
and the cont rol f rame 32 i l lust rated in Fig. 6, a dummy f rame 40 includes a
header 25, a sequence number 26, a head flag 27, an end 5 flag 28, a cont rol
flag 29, and a dummy flag 30.
[0059]
In a dummy f rame, the sequence number 26 is permanent ly set to 0,
and both the head flag 27 and the end flag 28 are permanent ly set to 1 .
10 Further, the cont rol f lag 29 is set to 0, and the dummy f lag 30 is set to 1.
[0060]
If a f rame has the dummy flag 30 set to 1, the fi l tering uni t 10 in the
receiving uni t 2 determines that the f rame is a dummy f rame, and outputs
the dummy f rame to the control f rame processing uni t 11 . In other words,
15 the fi l tering uni t 10 makes the determinat ion based on whether the dummy
flag 30 is set to 1, as the condi t ion for dummy frames.
[0061]

Next , the fol lowing describes how the dist ribut ing uni t 6 dist ributes
20 post -spl i t f rames . The bandwidth managing uni t 5 manages the amount of
data that can be output ted per uni t t ime, which is speci fied for each l ine as
an output bandwidth, as wel l as managing the remaining amount of data
that can be output ted through the l ine in every predetermined period.
Specif ical l y, the bandwidth managing uni t 5 holds the number of bytes
25 avai lable for output per uni t t ime, as the amount of data that can be
output ted per uni t t ime, as wel l as holding each l ine's number of remaining
bytes avai lable for output , as the remaining amount of data that c an be
output ted in every predetermined period. The uni t t ime is permanent ly
set to a value in any uni t .
17
[0062]
Every t ime a post -spl i t data frame is output ted to a l ine, the
distr ibut ing uni t 6 not ifies the bandwidth managing uni t 5 of the number of
bytes of the output ted post -spl i t data frame. The bandwidth managing
uni t 5 subt racts the not ified number of bytes of the post 5 -spl i t data f rame
from the number of remaining bytes avai lable for output , which is held by
the bandwidth managing uni t 5.
[0063]
Every predetermined period, the bandwidth managing uni t 5 sets the
10 amount of data that can be output ted (the number of bytes avai lable for
output) to the remaining amount of data that can be output ted (the number
of remaining bytes avai lable for output ) . In other words, every
predetermined period, the bandwidth managing uni t 5 resets the number of
remaining bytes avai lable for output to return to the number of bytes
15 avai lable for output . Speci fical ly, every reset t ing period, the bandwidth
managing uni t 5 loads the number of bytes avai lable for output per uni t
t ime, as the number of remaining bytes avai lable for output .
[0064]
The dist ribut ing uni t 6 calculates a value which represents the rat io
20 of the remaining amount of data that can be output ted to the amount of data
that can be output ted. Such calculated value is hereinafter denoted as
remaining output weight . The dist ribut ing uni t 6 may calculate the
remaining output weight using Equat ion 1, which is given below as an
example.
25 [0065]
Remaining Output Weight = Number of Remaining Bytes Avai lable
for Output / Number of Bytes Avai lable for Output per Uni t Time . . .
(Equat ion 1)
[0066]
18
Then, the distr ibut ing uni t 6 dist ributes a f rame to the l ine that has
the largest remaining output weight . In other words, a post -spl i t data
frame is output ted to the l ine that has the largest remaining output weight .
[0067]
Fig. 8 is an explanatory diagram i l lust rat ing an 5 example process of
distr ibut ing f rames . In the example shown in Fig. 8, frames are
distr ibuted by us ing two l ines (Line 1 and Line 2) . Here, i t is assumed
here that Line 1, as i l lust rated in Fig. 8, has 1,200 as the number of bytes
avai lable for output per uni t t ime, whi le Line 2 has 600 as the number of
10 bytes avai lable for output per uni t t ime . Further, individual frames in
Fig. 8 are represented by #, and i t is assumed that fif teen f rames, #1 to #15,
have been transmi t ted. Note that i t is further assumed that the number of
bytes of every f rame is 200.
[0068]
15 As of Time t1, the number of bytes avai lable for output per uni t
t ime is set as the number of bytes avai lable for output . That is, the
number of bytes avai lable for output to Line 1 is 1,200, whi le the number
of bytes avai lable for output to Line 2 is 600 . Upon ar rival of Frame #1,
the distribut ing uni t 6 calculates the remaining output weight as par t of the
20 distr ibut ing process . At Time t1, the calculated remaining output weight
is an ident ical value for both Line 1 and Line 2, and thus the distr ibut ing
uni t 6 distr ibutes Frame #1 to Line 1, which is the smal ler number of the
two. Then, the dist ribut ing uni t 6 calculates the number of remaining
bytes avai lable for output to Line 1 to be 1,000, by subt ract ing 200.
25 [0069]
Next , at Time t2, the number of bytes avai lable for output to Line 1
is now 1,000, whi le the number of bytes avai lable for output to Line 2 is
600. Thus, the dist ribut ing uni t 6 calculates the remaining output weight
for Line 1 to be about 0.83 and the remaining output weight for Line 2 to
19
be 1.00. Accordingly, the dist ribut ing uni t 6 distributes Frame #2 to Line
2, which has a larger remaining output weight . Then, the dist ribut ing
uni t 6 calculates the number of remaining bytes avai lable for output to
Line 2 to be 400, by subt ract ing 200.
5 [0070]
Likewise, at Time t3, the number of bytes avai lable for output to
Line 1 is 1,000, whi le the number of bytes avai lable for output to Line 2 is
now 400. Thus, the dist ribut ing uni t 6 calculates the remaining output
weight for Line 1 to be about 0.83 and the remaining output weight fo r
10 Line 2 to be about 0.67. Accordingly, the dist ribut ing uni t 6 dist ributes
Frame #3 to Line 1, which has a larger remaining output weight .
Subsequent ly, these processes are repeated in a simi lar manner.
[0071]
Here, i t is assumed that the period f rom Time t1 to Time t10 is used
15 as a period for reset t ing the number of remaining bytes avai lable for
output . At Time t10, the bandwidth managing uni t 5 sets the number of
bytes avai lable for output per uni t t ime as the number of remaining bytes
avai lable for output . That is, the number of remaining bytes avai lable for
output to Line 1 is set to 1,200, whi le the number of remaining bytes
20 avai lable for output to Line 2 is set to 600.
[0072]
If the number of remaining bytes avai lable for output is not zero at
the t ime of reset t ing the number of remaining bytes avai lable for output
(that is, before the number of bytes avai lable for output is loaded), the
25 bandwidth managing uni t 5 not i fies the control f rame generat ing uni t 7 of
the number of remaining bytes avai lable for output . The control frame
generat ing uni t 7 generates a dummy f rame equivalent to the number of
remaining bytes avai lable for output , and outputs the dummy f rame to the
arbi t rat ing uni t 9.
20
[0073]
In this way, according to the present exemplary embodiment , the
distr ibut ing uni t 6 compares the remaining output weights between l ines to
distr ibute f rames . As a resul t , frames are evenly output ted to Line 1 and
Line 2 based on the number of bytes avai lable for output 5 per uni t t ime.
[0074]
In other words, in the present exemplary embodiment , the
distr ibut ing uni t 6 outputs a post -spl i t data frame to the l ine that has the
largest remaining output weight , rather than output t ing i t to the l ine that
10 has the largest number of remaining bytes avai lable for ou tput . Thus, the
present exemplary embodiment achieves output t ing f rames to individual
l ines evenl y, wi thout causing an imbalance in terms of t ime.
[0075]
Assuming that a f rame is output ted to the l ine that has the largest
15 number of remaining bytes avai lable for output , i t would be di fficul t to
output frames evenly as i l lustrated in Fig. 8. An operat ion based on this
assumpt ion is i l lust rated in Fig. 9. Fig. 9 is an explanatory diagram
i l lust rat ing an example operat ion in the case where a f rame is output ted to
the l ine that has the largest number of remaining bytes avai lable for output .
20 [0076]
The example in Fig. 9 shows that , throughout the period f rom Time
t1 to Time t4, the number of remaining bytes avai lable for output to Line 1
is equal to or greater than the number of remaining bytes avai lable for
output to Line 2. Thus, during this period frames are distributed to Line
25 1 only, causing an imbalance in frame distribut ion . It is only after the
number of remaining bytes avai lable for output to Line 1 fal ls below the
number of remaining bytes avai lable for output to Line 2, that frames are
distr ibuted to Line 1 and Line 2 al ternately.
[0077]
21
As seen above, if f rames are output ted by using the method in
which a f rame is output ted to the l ine that has t he largest number of
remaining bytes avai lable for output , there exist a period when f rames are
output ted to only one port , as wel l as a per iod when f rames are output ted to
every l ine evenly. Thus, the method makes i t di fficul 5 t to output frames
evenly. In contrast , the present exemplary embodiment solves this
problem by output t ing a f rame to the l ine that has the largest remaining
output weight .
[0078]
10
The fol lowing describes a method of adjust ing an output bandwi dth.
Fig. 10 is an explanatory diagram i l lust rat ing an example method of
adjust ing an output bandwidth. In Fig. 10, the sol id l ine ar row i l lust rated
therein represents a f low of f rames, and the dot ted l ine arrow represents a
15 flow of control f rames . The funct ion of adjust ing an output bandwidth
includes a funct ion of widening an output bandwidth and a funct ion of
narrowing an output bandwidth. The state of per forming the funct ion of
widening an output bandwidth is hereinafter denoted as the output
bandwidth increase mode, whi le the state of per forming the funct ion of
20 narrowing an output bandwidth is hereinafter denoted as the output
bandwidth decrease mode. The present exemplary embodiment assumes
that the device is ini t ial ly in the output bandwidth decr ease mode,
performing the process of narrowing an output bandwidth.
[0079]
25 Fi rst of al l , the fol lowing describes the process of nar rowing an
output bandwidth. In the output bandwidth decrease mode, whether to
narrow an output bandwidth is determined by comparing the number of
frames transmi t ted f rom the communicat ion device 1 wi th the number of
frames received by the counterpart communicat ion device 15 . If the
22
number of f rames received by the communicat ion device 15 is smal ler than
the number of f rames t ransmi t ted by the communicat ion device 1, the
bandwidth managing uni t 5 makes a set t ing so as to narrow the output
bandwidth of the target l ine. According to the present exemplary
embodiment , a new output bandwidth is calculated by using 5 the number of
frames and the number of bytes that have been received from the
communicat ion device 15.
[0080]
In the example i l lust rated in Fig. 10, the arbi t rat ing uni t 9 in the
10 communicat ion uni t 1 counts the numbers of f rames and bytes of spl i t data
frames and dummy f rames together that have been transmi t ted . The
counted values are held by, for example, a memory (not i l lustrated)
included in the arbi trat ing uni t 9. Note that the arbi t rat ing uni t 9 does
not count the numbers of cont rol f rames and thei r bytes.
15 [0081]
The cont rol f rame generat ing uni t 7 generates a control frame at a
predetermined t iming, and inputs the control f rame to the arbi trat ing uni t
9. The arbi trat ing uni t 9 assigns the number of f rames i t holds to the
local device transmission f rame count 37 in the input ted control f rame 32,
20 and assigns the number of bytes i t holds to the local device t ransmission
byte count 38 in the control frame 32. The arbi trat ing uni t 9 then
transmi ts the cont rol f rame 32, to which the number of f rames and the
number of bytes have been assigned, to the communicat ion device 15 .
Upon t ransmission of the cont rol f rame 32, the arbi t rat ing uni t 9 resets
25 both the number of f rames and the number of bytes i t holds to zero.
[0082]
Upon receipt of any spl i t data f rame and dummy frame, the fi l ter ing
uni t 10 in the communicat ion device 15 counts the number of received
frames and the number of their bytes . The counted values are held by, for
23
example, a memory (not i l lust rated) included in the fi l ter ing uni t 10 .
Note that the fi l tering uni t 10 does not count the numbers of control f rames
and thei r bytes.
[0083]
Upon receipt of a control frame, the fi l tering uni 5 t 10 t ransmi ts the
received cont rol f rame to the cont rol f rame processing uni t 11 . At the
same t ime, the fi l tering uni t 10 not i fies the control frame processing uni t
11 of the counted numbers of f rames and bytes.
[0084]
10 The cont rol f rame processing uni t 11 not i fies the cont rol f rame
generat ing uni t 7 in the local communicat ion device 15 of the local device
transmission frame count 37 included in the cont rol f rame 32, the f rame
count 37 being regarded as the remote device t ransmission frame count .
In addi t ion, the cont rol f rame processing uni t 11 not i fies the control f rame
15 generat ing uni t 7 in the local communicat ion device 15 of the local device
transmission byte count 38 included in the control frame 32, the byte count
38 being regarded as the remote device t ransmission byte count .
Furthermore, the control f rame processing uni t 11 not i fies the control
frame generat ing uni t 7 in the local communicat ion device 15 of the f rame
20 count not i fied by the fi l tering uni t 10 in the local communicat ion device
15, the frame count being regarded as the local device recept ion frame
count . In addi t ion, the cont rol f rame processing uni t 11 not i fies the
control f rame generat ing uni t 7 in the local communicat ion device 15 of the
byte count not i fied by the fi l tering uni t 10 in the local communicat ion
25 device 15, the byte count being regarded as the local device recept ion byte
count .
[0085]
The cont rol f rame generat ing uni t 7 in the communicat ion device 15
assigns, to the remote device t ransmission f rame count 33 in the cont rol
24
frame 32, the remote device transmission frame count that has been
not i fied by the cont rol f rame processing uni t 11 . In addi t ion, the cont rol
frame generat ing uni t 7 in the communicat ion device 15 assigns, to the
remote device t ransmission byte count 34 in the cont rol frame 32 , the
remote device t ransmission byte count not ified by 5 the control f rame
processing uni t 11.
[0086]
Likewise, the cont rol frame generat ing uni t 7 in the communicat ion
device 15 assigns, to the local device recept ion f rame count 35 in the
10 control frame 32, the local device recept ion frame count not i fied by the
control frame processing uni t 11. In addi t ion, the cont rol f rame
generat ing uni t 7 in the communicat ion device 15 assigns, to the local
device recept ion byte count 36 in the control f rame 32, the local device
recept ion byte count not i fied by the cont rol f rame processing uni t 11 .
15 Then, the arbi t rat ing uni t 9 in the communicat ion device 15 transmi ts the
control frame 32 containing the respect ive informat ion pieces to the
communicat ion device 1.
[0087]
When the fi l tering uni t 10 in the communicat ion device 1 receives
20 the cont rol f rame 32, the cont rol f rame processing uni t 11 compares the
remote device t ransmission frame count 33 wi th the local device recept ion
frame count 35, both of which are included in the control f rame 32 . If the
remote device t ransmission frame count 33 is greater than the local device
recept ion f rame count 35, the control f rame processing uni t 11 in the
25 communicat ion device 1 determines that the relevant output bandwidth
should be nar rowed, calculates a new output area to be specified, and
not i fies the bandwidth managing uni t 5 in the communicat ion device 1 of
the calculated output bandwidth. The new output bandwidth may be
calculated by using Equat ion 2, which is given below as an example.
25
[0088]
New Output Bandwidth = Local Device Recept ion Byte Count 36 
Control Frame Transmission Interval . . . (Equat ion 2)
[0089]
Note that the bandwidth managing uni t 5 according 5 to the present
exemplary embodiment manages a bandwidth based on the number of bytes
avai lable for output per uni t t ime . Thus, the bandwidth managing uni t 5
may calculate the number of bytes avai lable for output per uni t t ime by
using Equat ion 3, which is given below as an example, and may update the
10 output bandwidth based on the calculated value.
[0090]
Number of Bytes Avai lable for Output per Uni t Time
= Uni t Time  Output Bandwidth Not if ied by the Control Frame
Processing Uni t 11 . . . (Equat ion 3)
15 [0091]
As seen above, in the communicat ion device 1 according to the
present exemplary embodiment , the arbi t rat ing uni t 9 transmi ts to the
communicat ion device 15 a control frame 32 that contains the amount of
transmission data that has been transmi t ted f rom each l ine, and the
20 fi l tering uni t 10 receives the control f rame 32 that has been sent f rom the
communicat ion device 15 in response to the transmission of the control
frame by the arbi trat ing uni t 9. The received cont rol f rame 32 contains
the amount of recept ion data that has been received by the communicat ion
device 15. If the amount of recept ion data is smal ler than the amount of
25 transmission data, the bandwidth managing uni t 5 makes a set t ing so as to
narrow the output bandwidth of the l ine through which the control frame
has been t ransmi t ted. Nar rowing an output bandwidth in such a way can
further reduce an imbalance in the amount of data among l ines.
[0092]
26
Next , the fol lowing describes the process of widening an output
bandwidth. In the output bandwidth increase mode, whether to nar row an
output bandwidth is determined depending on whether a f rame delay t ime
is caused by a dummy f rame that has been temporari ly inserted in an
addi t ional amount by the communicat 5 ion device 1.
[0093]
Specif ical l y, before and after the cont rol frame generat ing uni t 7 in
the communicat ion device 1 temporari ly inserts a dummy f rame in an
addi t ional amount , the cont rol f rame processing uni t 11 measures a f rame
10 delay t ime. If there is an increase in a delay t ime, the cont rol f rame
processing uni t 11 determines that a delay has occur red due to the fact that
the communicat ion bandwidth over a network between the communicat ion
devices 1 and 15 has exceeded the physical bandwidth, and thus determines
that the output bandwidth cannot be widened . In contrast , i f there is no
15 increase in a delay t ime, the control frame processing uni t 11 determines
that the output bandwidth can be widened.
[0094]
According to the present exemplary embodiment , i t is determined
whether an output bandwidth can be widened based on a resul t of
20 determinat ion about any change in a frame delay t ime, instead of
determining whether frame loss has occur red . The control frame
generat ing uni t 7 increases the amount of a dummy frame to the extent that
no frame loss is caused, thereby minimizing an influence on data frames.
[0095]
25 The bandwidth managing uni t 5 in the communicat ion device 1
not i fies the cont rol f rame generat ing uni t 7 in the communicat ion device 1
of the number of remaining bytes avai lable for output . The control frame
generat ing uni t 7 regards the not ified number of remaining bytes avai lable
for output as the amount of a dummy f rame to be inser ted, and then
27
generates a dummy f rame equivalent to the amount of insert ion and outputs
i t to the arbi trat ing uni t 9 in the communicat ion device 1.
[0096]
Note that , in the output bandwidth increase mode, the bandwidth
managing uni t 5 in the communicat ion device 1 add s the 5 increased amount
of bandwidth to the number of remaining bytes avai lable for output , and
not i fies the cont rol f rame generat ing uni t 7 in the communicat ion device 1
of the resul tant value.
[0097]
10 Then, the control frame processing uni t 11 in the communicat ion
device 1 not i fies the bandwidth managing uni t 5 in the communicat ion
device 1 of whether there is an increase in the amount of delay. If there
is no increase in the amount of delay, the bandwidth managing uni t 5 in the
communicat ion device 1 ove rwri tes the number of bytes avai lable for
15 output per uni t t ime wi th the increased amount of bandwidth plus the
number of bytes avai lable for output per uni t t ime.
[0098]
In this way, the cont rol f rame generat ing uni t 7 increases the
amount of data of a t ransmi t ted dummy f rame, and, if no delay is caused by
20 the increase in the dummy f rame, the bandwidth managing uni t 5 makes a
set t ing so as to widen the output bandwidth of the l ine through which the
increased dummy f rame has been t ransmi t ted, based on the i ncreased
amount of data of the dummy f rame.
[0099]
25 The cont rol f rame processing uni t 11 may measure delay t imes
using ei ther of the two measuring methods i l lust rated below. However,
the method of measuring delay t imes is not l imi ted to the i l lustrated two
methods.
[0100]
28
In the first method, the control f rame processing uni t 11 measures a
delay using t ime stamps, l ike the Frame Delay Measurement (ETH-DM)
standardized in Y. 1731. According to the Frame Delay Measurement , a
delay t ime is obtained by using a t ime stamp as of the t ime when a f rame is
transmi t ted and a t ime stamp as of the t ime when the 5 frame is received.
[0101]
In the case of using this method, the control f rame generat ing uni t 7
generates a cont rol f rame 32 in which the t ime stamps are add ed to the
delay measurement informat ion 39. Adding the t ime stamps to the delay
10 measurement informat ion 39 al lows measur ing a delay. In addi t ion,
adding the amount of delay to the delay measurement informat ion 39
al lows the amount of delay to be communic ated between the
communicat ion devices 1 and 15.
[0102]
15 According to the second method, the cont rol f rame processing uni t
11 measures a delay through relat ive comparison of arrival t imes of control
frames. Fig. 11 is an explanatory diagram i l lustrat ing an example method
of measuring a delay t ime.
[0103]
20 The example in Fig. 11 shows that control f rames are t ransmi t ted
from four l ines simul taneously. The communicat ion device on the
receiving side receives the cont rol f rames at di fferent t imings depending
on the bandwidths of the individual l ines . Then, the cont rol frame
generat ing uni t 7 selects one l ine whose output bandwidth is to be widened,
25 and temporari ly inserts a dummy f rame in an addi t ional amount into the
l ine.
[0104]
If the subsequent arr ival t ime of the cont rol f rame represents no
increase in the relat ive amount of delay compared wi th other l ines where
29
addi t ional dummy frames are not inserted, the control frame processing
uni t 11 determines that the output bandwidth can be widened . The
control frame generat ing uni t 7 generates a control frame 32 in which the
relat ive amount of delay is added to the delay measurement informat ion 39 .
Adding the amount of delay to the delay measurement 5 informat ion 39
al lows the amount of delay to be communicated between the
communicat ion devices 1 and 15.
[0105]
The status shift occurs between the output bandwidth increase mode
10 and the output bandwidth decrease mode at the t imings descr ibed below.
In the output bandwidth increase mode, the status shi fts to the o utput
bandwidth decrease mode when frame loss occurs . In the output
bandwidth decrease mode, the status shif ts to the output bandwidth
increase mode when the cont rol f rame processing uni t 11 determines that
15 the l ine should not be subject to nar rowing i ts output bandwidth (that is,
when the remote device t ransmission f rame count 33 is equal to the local
device recept ion f rame count 35).
[0106]
As described above, according to the present exemplary
20 embodiment , the spl i t t ing uni t 4 spl i ts an input ted f rame, the distribut ing
uni t 6 dist ributes the spl i t frames to a plural i ty of l ines based on the output
bandwidths of the l ines, and the arbi trat ing uni ts 9 each transmi t the
distr ibuted f rames . During the distribut ion, the distr ibut ing uni t 6
distr ibutes a f rame to the l ine that has the smal lest remaining output
25 weight , which indicates the rat io of the number of remaining bytes
avai lable for output to the l ine to the number of bytes avai lable for output
per uni t t ime, which is speci fied for each l ine as an output bandwidth.
Further, every reset t ing period, the arbi trat ing uni t 9 t ransmi ts a dummy
frame equivalent to the remaining amount of data . Thus, in the case
30
where data is t ransferred by using a plural i ty communicat ion l ines, the
present exemplary embodiment can reduce an imbalance in the amount of
data t ransmi t ted through the individual l ines.
[0107]
Besides, by a method of nar rowing an output bandwidth 5 according
to the present exemplary embodiment , the arbi t rat ing uni t 9 t ransmi ts to
another device a cont rol f rame that includes the amount of t ransmission
data t ransmi t ted from each l ine. Note that the control frame is generated
by the cont rol f rame generat ing uni t 7 . Then, the fi l tering uni t 10
10 receives a cont rol frame that has been t ransmi t ted f rom the c ommunicat ion
device 15 in response to the t ransmission of the control frame . The
control frame includes the amount of recept ion data received by the
communicat ion device 15. If the cont rol f rame processing uni t 11
determines that the amount of recept ion data is smal ler than the amount of
15 transmission data, the bandwidth managing uni t 5 makes a set t ing so as to
narrow the output bandwidth of the l ine through which the control frame
has been t ransmi t ted. Nar rowing an output bandwidth in such a way can
further reduce an imbalance in the amount of data among l ines.
[0108]
20 Besides, by a method of widening an output bandwidth according to
the present exemplary embodiment , the control f rame generat ing uni t 7
increases the amount of data of a t ransmi t ted dummy f rame, and, i f no
delay is caused by the increased dummy f rame, the bandwidth managing
uni t 5 makes a set t ing so as to widen the output bandwidth of the l ine
25 through which the increased dummy f rame has been t ransmi t ted, based on
the increased amount of data of the dummy f rame. Making such
determinat ion based on delay for a dummy f rame can minimize an
influence on transmission of data frames . Furthermore, widening an
output bandwidth in such a way can achieve efficient data t ransmission.
31
[0109]
As seen above, using the communicat ion devices of the present
exemplary embodiment can, whi le aggregat ing a plural i ty of l ines, transmi t
data according to the l ines' output bandwidth set t ings wi thout causing an
imbalance among the l ines . As a resul t , communicat 5 ions can be made
whi le traff ic is efficient ly dist ributed among l ines according to thei r output
bandwidth set t ings, thereby achieving efficient ut i l izat ion of the l ines.
[0110]
In addi t ion, i f , for example, there is an error in output bandwidth
10 set t ings for a l ine, a frame delay or frame loss wi l l occur to cause fai lure in
normal communicat ion because frames cannot be assembled in the order of
sequence numbers . The present exemplary embodiment can solve such
problem by dynamical ly adjust ing output bandwidth se t t ings for individual
l ines.
15 [0111]
Note that the communicat ion device 1 (communicat ion device 15)
described above as the present exemplary embodiment includes a funct ion
of efficient ly dist ribut ing f rames, as wel l as a funct ion of adjust ing an
output bandwidth. However, the communicat ion device may not
20 necessari ly include the funct ion of adjust ing an output bandwidth.
Al ternat ively, the communicat ion device may include the funct ion of
adjust ing an output bandwidth, wi th ei ther or both of the funct ion of
widening an output bandwidth and the funct ion of nar rowing an output
bandwidth.
25 [0112]
Next , the fol lowing presents an overview of the present invent ion .
Fig. 12 is a block diagram i l lust rat ing an overview of a communicat ion
device according to the pres ent invent ion. A communicat ion device ( for
example, the communicat ion device 1 and the communicat ion device 15)
32
according to the present invent ion transfers data using a plural i ty of l ines,
the communicat ion device including: a spl i t t ing uni t 81 (for example, the
spl i t t ing uni t 4) which spl i ts an input ted f rame; a distribut ing uni t 82 ( for
example, the bandwidth managing uni t 5 and the dist ribut ing uni t 6) which
distr ibutes spl i t f rames based on output bandwidths of the 5 plural i ty of l ines
(for example, based on the individual l ines' output bandwidths managed by
the bandwidth managing uni t 5); and a transmi t t ing uni t 83 ( for example,
the arbi t rat ing uni t 9) which transmi ts the dist ributed frames.
[0113]
10 The distribut ing uni t 82 dist ributes a frame to the l i ne that has the
smal lest remaining output weight , which indicates the rat io of the
remaining amount of data that can be output ted t hrough the l ine ( for
example, the number of remaining bytes avai lable for output ) in every
predetermined period ( for example, the reset t ing period) to the amount of
15 data that can be output ted per uni t t ime , which is speci fied for each l ine as
an output bandwidth (for example, the number of bytes avai lable for output
per uni t t ime) . Besides, the transmi t t ing uni t 83 t ransmi ts a dummy
frame (for example, the dummy f rame 40) equivalent to the remaining
amount of data upon lapse of the predetermined period. Such
20 configurat ion can reduce, in the case where data is t ransfer red by using a
plural i ty of communicat ion l ines, an imbalance in the amount of data
transmi t ted through the individual l ines.
[0114]
Besides, the transmi t t ing uni t 83 may t ransmi t to another device a
25 control frame (for example, the control frame 32) that includes the amount
of t ransmission data transmi t ted from eac h l ine ( for example, the local
device t ransmission frame count 37 and the local device t ransmission byte
count 38) . Besides, the dist ribut ing uni t 82 ( for example, the fi l ter ing
uni t 10) receives a control f rame that has been t ransmi t ted by another
33
device ( for example, the communicat ion device 15) in response to the
transmission of the control f rame, and, i f the amount of recept ion data
received by the other device, as included in the control f rame, is smal ler
than the amount of t ransmission data ( for example, i f such determinat ion is
made by the cont rol frame processing uni t 11), the dist ribut 5 ing uni t 82 ( for
example, the bandwidth managing uni t 5) may make a set t ing so as to
narrow the output bandwidth of the l ine through which the control frame
has been t ransmi t ted.
[0115]
10 Specif ical ly, the dist ribut ing uni t 82 may determine the specif ied
output bandwidth based on the amount of recept ion data received by the
other device relat ive to the interval between t ransmissions of a control
frame (for example, based on Equat ion 2 above).
[0116]
15 Besides, the transmi t t ing uni t 83 ( for example, the cont rol f rame
generat ing uni t 7) may also increase the amount of data of a dummy f rame
to be t ransmi t ted. Then, if no delay is caused by the increased dummy
frame, the distr ibut ing uni t 82 ( for example, the bandwidth managing uni t
5) may make a set t ing so as to widen the output bandwidth of the l ine
20 through which the increased dummy f rame has been t ransmi t ted, based on
the increased amount of data of the dummy f rame . Making such
determinat ion of an output bandwidth based on delay for a dummy frame
can minimize an influence on t ransmission of data frames . Furthermore,
widening an output bandwidth in such a way can achieve efficient data
25 transmission.
[0117]
Specif ical l y, the t ransmi t t ing uni t 83 may increase the amount of a
dummy f rame to the extent that no f rame loss is c aused.
[0118]
34
Fig. 13 is a block diagram i l lust rat ing an overview of a
communicat ion system according to the present invent ion . The
communicat ion system according to the present invent ion includes a
plural i ty of communicat ion devices 80 that transfer data using a plural i ty
of l ines. Note that detai ls of a communicat ion device 5 80 are the same as
the communicat ion device 80 i l lust rated in Fig. 12.
[0119]
In the communicat ion system i l lust rated in Fig. 13, a t ransmi t t ing
uni t 83 ( for example, the arbi trat ing uni t 9) in a fi rst communicat ion
10 device 80 ( for example, the communicat ion device 1) transmi ts to a second
communicat ion device 80 (for example, the communicat ion device 15) a
control frame that includes the amount of transmission data ( for example,
the local device t ransmission frame count 37 and the local device
transmission byte count 38) t ransmi t ted f rom each l ine . The transmi t t ing
15 uni t 83 ( for example, the arbi trat ing uni t 9) in the second communicat ion
device 80 t ransmi ts to the fi rst communicat ion device 80 a control frame
that contains the amount of recept ion data (for example, the remote device
transmission f rame count 33, the remote device tran smission byte count 34,
the local device recept ion f rame count 35, and the local device recept ion
20 byte count 36) received by the local communicat ion device. If the
amount of recept ion data included in the control frame that has been
received f rom the second communicat ion device 80 is smal ler than the
amount of transmission data, the dist ribut ing uni t 82 ( for example, the
control frame processing uni t 11 or the bandwidth managing uni t 5) in the
25 first communicat ion device 80 makes a set t ing so as to nar row t he output
bandwidth of the l ine through which the control frame has been
transmi t ted.
[0120]
Such configurat ion can also reduce, in the case where data is
35
transfer red by using a plural i ty communicat ion l ines, an imbalance in the
amount of data t ransmi t ted through the individual l ines.
[0121]
The whole or part of the exemplary embodiments disclosed above
can be described as, but not l imi ted to, the fol lowing supplementary 5 notes.
[0122]
(Supplementary note 1) A program for communicat ion being
appl ied to a computer that transfers data using a plural i ty of l ines, the
program causing the computer to execute: a spl i t t ing process of spl i t t ing an
10 input ted f rame; a distribut ing process of distr ibut ing spl i t f rames based on
output bandwidths of the plural i ty of l ines; and a transmi t t ing process of
transmi t t ing distributed f rames, wherein the dist ribut ing process is
executed to dist ribute a frame to a l ine that has the smal lest remaining
output weight , which indicates the rat io of the remaining amount of data
15 that can be output ted through the l ine in every predetermined period to the
amount of data that can be output ted per uni t t ime, which is specified for
each l ine as the output bandwidth, and wherein the transmi t t ing process is
executed to t ransmi t a dummy f rame equivalent to the remaining amount of
data upon lapse of the predetermined period.
20 [0123]
(Supplementary Note 2) The program for communicat ion according
to Supplementary Note 1, the program causing a computer to execute: a
transmi t t ing process to t ransmi t to another device a control f rame that
includes the amount of t ransmission data transmi t ted from each l ine; and a
25 distr ibut ing process to receive a cont rol frame that has been t ransmi t ted by
the other device in response to t ransmission of the cont rol frame , and, if
the amount of recept ion data received by the other device, the amount
being included in the control f rame, is smal ler than the amount of
transmission data, make a set t ing so as to nar row an output bandwidth of a
36
l ine through which the cont rol f rame has been transmi t ted.
[0124]
Whi le the invent ion has been part icularly shown and described wi th
reference to example embodiments thereof, the invent ion is not l imi ted to
these embodiments. It wi l l be understood by those of ordinary 5 ski l l in the
art that various changes in form and detai ls may be made therein wi thout
depart ing from the spiri t and scope of the present invent ion as defined by
the claims.
[0125]
10 This appl icat ion is based upon and claims the benefi t of prior i ty
from Japanese patent appl ica t ion No. 2014-096762, fi led on May 8, 2014,
the disclosure of which is incorporated herein in i ts ent i rety by reference.
[ Industrial Appl icabi l i ty]
[0126]
15 The present invent ion is sui tably appl ied to a communicat ion device
that transfers data by aggregat ing a plural i ty of communicat ion l ines.
Examples of the communicat ion l ines may include Ethernet (registered
trademark) networks and other l ines for carrying out communicat ions using
packets or cel ls.
20 [Reference signs List ]
[0127]
1, 15 Communicat ion device
2 Receiving uni t
3 Transmi t t ing uni t
25 4 Spl i t t ing uni t
5 Bandwidth managing uni t
6 Dist ribut ing uni t
7 Control f rame generat ing uni t
8 Storing uni t
37
9 Arbi trat ing uni t
10 Fi l tering uni t
11 Control f rame processing uni t
12 Storing uni t
5 13 Reading uni t
14 Combining uni t

We claim:
[Claim 1]
A communicat ion device that t ransfers data using a plural i ty of
l ines, the communicat ion device comprising:
spl i t t ing means that spl i ts 5 an input ted f rame;
distr ibut ing means that dist ributes spl i t frames based on output
bandwidths of the plural i ty of l ines; and
transmi t t ing means that transmi ts dist ributed f rames,
wherein the distribut ing means dist ributes a frame to a l ine that has
10 the smal lest remaining output weight , which indicates the rat i o of the
remaining amount of data that can be output ted through the l ine in every
predetermined period to the amount of data that can be output ted per uni t
t ime, which is speci f ied for each l ine as the output bandwidth,
and wherein the t ransmi t t ing means t ransmi ts a dummy f rame
15 equivalent to the remaining amount of data upon lapse of the
predetermined period.
[Claim 2]
The communicat ion device according to claim 1,
wherein the t ransmi t t ing means t ransmi ts to another device a
20 control frame that includes the amount of transmission data transmi t ted
from each l ine,
and wherein the distr ibut ing means receives a control frame that has
been transmi t ted by the other device in response to t ransmission of the
control frame, and, i f the amount of recept ion data rec eived by the other
25 device, the amount being included in the control frame, is smal ler than the
amount of transmission data, the dist ribut ing means makes a set t ing so as
to nar row an output bandwidth of a l ine through which the control frame
has been t ransmi t ted.
[Claim 3]
39
The communicat ion device according to claim 2,
wherein the dist ribut ing means determines a specif ied output
bandwidth based on the amount of recept ion data received by another
device relat ive to an interval between t ransmissions of a con t rol f rame.
5 [Claim 4]
The communicat ion device according to any one of claims 1 to 3,
wherein the t ransmi t t ing means increases the amount of data of a
transmi t ted dummy f rame,
and wherein, i f no delay is caused by the increased dummy f rame,
10 the dist ribut ing means makes a set t ing so as to widen an output bandwidth
of a l ine through which the increased dummy f rame has been t ransmi t ted,
based on the increased amount of data of the dummy f rame.
[Claim 5]
The communicat ion device according to claim 4,
15 wherein the t ransmi t t ing means increases the amount of a dummy
frame to the extent that no f rame loss is caused.
[Claim 6]
A communicat ion system comprising a plural i ty of communicat ion
devices, the communicat ion devices each transfer ring data using a plural i t y
20 of l ines,
wherein each of the communicat ion devices compr ises:
spl i t t ing means that spl i ts an input ted f rame;
distr ibut ing means that dist ributes spl i t frames based on output
bandwidths of the plural i ty of l ines; and
25 transmi t t ing means that transmi ts dist ributed f rames,
wherein the distribut ing means dist ributes a frame to a l ine that has
the smal lest remaining output weight , which indicates the rat io of the
remaining amount of data that can be output ted through the l ine in every
predetermined period to the amount of data that can be output ted per uni t
40
t ime, which is speci f ied for each l ine as the output bandwidth,
and wherein the t ransmi t t ing means t ransmi ts a dummy f rame
equivalent to the remaining amount of data upon lapse of the
predetermined per iod.
5 [Claim 7]
The communicat ion system according to claim 6,
wherein the t ransmi t t ing means in a fi rst communicat ion device
transmi ts to a second communicat ion device a cont rol f rame that includes
the amount of t ransmission data t ransmi t ted f rom each l i ne,
10 wherein the t ransmi t t ing means in the second communicat ion device
transmi ts to the fi rst communicat ion device a control frame in which the
amount of recept ion data received by a local communicat ion device is set ,
and wherein, i f the amount of recept i on data included in a control
frame received f rom the second communicat ion device is smal ler than the
15 amount of transmission data, the dist ribut ing means in the first
communicat ion device makes a set t ing so as to narrow an output bandwidth
of a l ine through which the cont rol f rame has been t ransmi t ted.
[Claim 8]
A communicat ion method for transfer ring data using a plural i ty of
20 l ines, the method comprising:
spl i t t ing an input ted frame;
distr ibut ing a spl i t f rame to a l ine that has the smal lest remaining
output weight , which indicates the rat io of the remaining amount of data
that can be output ted through the l ine in every predetermined period to the
25 amount of data that can be output ted per uni t t ime, which is specified for
each l ine as an output bandwidth; and
transmi t t ing a distributed f rame and a dummy frame equivalent to
the remaining amount of data upon lapse of the predetermined period.
[Claim 9]
41
The communicat ion method according to claim 8, comprising:
transmi t t ing to another device a control frame that includes the
amount of transmission data t ransmi t ted f rom each l ine;
receiving a cont rol f rame that has been t ransmi t ted by the other
device in response to transmission of the 5 control frame; and
if the amount of recept ion data received by the othe r device, the
amount being included in the cont rol f rame, is smal ler than the amount of
transmission data, making a set t ing so as to narrow an output bandwidth of
a l ine through which the cont rol f rame has been t ransmi t ted.
10 [Claim 10]
A storage medium storing a program for communicat ion, the
program being appl ied to a computer that transfers data using a plural i ty of
l ines,
the program causing the computer to execute:
15 a spl i t t ing process of spl i t t ing an input ted f rame;
a dist ribut ing process of distribut ing spl i t f rames based on output
bandwidths of the plural i ty of l ines; and
a t ransmi t t ing process of t ransmi t t ing dist ribute d frames,
wherein the dist ribut ing process is executed to dist ribute a f rame to
20 a l ine that has the smal lest remaining output wei ght , which indicates the
rat io of the remaining amount of data that can be output ted through the l ine
in every predetermined period to the amount of data that can be output ted
per uni t t ime, which is speci fied for each l ine as the output bandwidth,
and wherein the t ransmi t t ing process is executed to transmi t a
25 dummy f rame equivalent to the remaining amount of data upon lapse of the
predetermined period.

Documents

Application Documents

# Name Date
1 Priority Document [13-10-2016(online)].pdf 2016-10-13
2 Power of Attorney [13-10-2016(online)].pdf 2016-10-13
3 Form 5 [13-10-2016(online)].pdf 2016-10-13
4 Form 3 [13-10-2016(online)].pdf 2016-10-13
5 Form 18 [13-10-2016(online)].pdf_38.pdf 2016-10-13
6 Form 18 [13-10-2016(online)].pdf 2016-10-13
7 Form 1 [13-10-2016(online)].pdf 2016-10-13
8 Drawing [13-10-2016(online)].pdf 2016-10-13
9 Description(Complete) [13-10-2016(online)].pdf 2016-10-13
10 201617034941.pdf 2016-10-17
11 201617034941-Power of Attorney-261016.pdf 2016-10-28
12 201617034941-OTHERS-261016.pdf 2016-10-28
13 201617034941-Correspondence-261016.pdf 2016-10-28
14 Other Patent Document [08-12-2016(online)].pdf 2016-12-08
15 201617034941-OTHERS-091216.pdf 2016-12-14
16 201617034941-Correspondence-091216.pdf 2016-12-14
17 abstract.jpg 2017-01-06
18 Form 3 [31-03-2017(online)].pdf 2017-03-31
19 201617034941-FER.pdf 2019-05-30
20 201617034941-OTHERS [29-11-2019(online)].pdf 2019-11-29
21 201617034941-FORM-26 [29-11-2019(online)].pdf 2019-11-29
22 201617034941-FER_SER_REPLY [29-11-2019(online)].pdf 2019-11-29
23 201617034941-COMPLETE SPECIFICATION [29-11-2019(online)].pdf 2019-11-29
24 201617034941-CLAIMS [29-11-2019(online)].pdf 2019-11-29
25 201617034941-Power of Attorney-031219.pdf 2019-12-07
26 201617034941-Correspondence-031219.pdf 2019-12-07
27 201617034941-PatentCertificate14-11-2022.pdf 2022-11-14
28 201617034941-IntimationOfGrant14-11-2022.pdf 2022-11-14

Search Strategy

1 Searchstrategy_201617034941_02-05-2019.pdf

ERegister / Renewals