Communication control system, communication control method, communication control apparatus and communication control program
11711303 · 2023-07-25
Assignee
Inventors
- Hiroyuki Uzawa (Musashino, JP)
- Naotaka Shibata (Musashino, JP)
- Yoichi Fukada (Musashino, JP)
- Jun Terada (Musashino, JP)
Cpc classification
H04L47/225
ELECTRICITY
International classification
Abstract
A communication control system includes a plurality of layer 2 switches (SWs); and a communication control device that controls communication of the SWs. Each SW includes one or more queues that each have a variable queue length for accumulating input frames, and a transmission unit that has a shaping function of transmitting the frames accumulated in the queues to a desired destination at a desired rate. The communication control device includes a correction processing unit that acquires an amount of discarded data generated in each queue of the SW, and multiplies the acquired amount of discarded data by a correction coefficient weighted by the cumulative number of times of discarding occurrences for which the amount of discarded data is not 0 to obtain a corrected amount of discarded data; and an adjustment processing unit that determines adjustment values for the queue length of each queue and shaping rate of the SW based on the corrected amount of discarded data, and notifies each SW of the adjustment values.
Claims
1. A communication control system comprising: a plurality of layer 2 switches (hereinafter, referred to as SWs); and a communication control device that controls communication of the SWs, wherein each SW includes: one or more queues that each have a variable queue length for accumulating input frames; and a transmission unit that has a shaping function of transmitting the frames accumulated in the queues to a desired destination at a desired rate, and the communication control device includes: a correction processing unit that acquires an amount of discarded data generated in each queue of the SW, and multiplies the acquired amount of discarded data by a correction coefficient weighted by the cumulative number of times of discarding occurrences for which the amount of discarded data is not 0 to obtain a corrected amount of discarded data; and an adjustment processing unit that determines adjustment values for the queue length of each queue and shaping rate of the SW based on the corrected amount of discarded data, and notifies each SW of the adjustment values.
2. The communication control system according to claim 1, wherein the correction coefficient is managed for each SW and for each queue, and is a value with an upper limit of 1 that increases by β (β<1) each time the cumulative number of times of discarding occurrences increases.
3. The communication control system according to claim 2, wherein the correction coefficient is α smaller than the β when the cumulative number of times of discarding occurrences is 1.
4. The communication control system according to claim 1, wherein the correction coefficient is managed for each SW and for each queue, and is a value with an upper limit of 1 that increases by βd according to the cumulative number of times of discarding occurrences d, and
β1<β2<. . . <β(N−1)<βN or β1>β2>. . . >β(N−1)>βN is set, where N is the cumulative number of times of discarding occurrences when the correction coefficient reaches 1.
5. The communication control system according to claim 1, wherein the correction processing unit performs processing of stopping incrementing the cumulative number of times of discarding occurrences when the amount of discarded data becomes 0, and of decrementing the cumulative number of times of discarding occurrences when the cumulative number of times of not-discarding occurrences in which the amount of discarded data is 0 exceeds a specified value, after the cumulative number of times of discarding occurrences reaches 1 or more.
6. The communication control system according to claim 1, wherein the correction processing unit sets as an initial value a correction coefficient based on an immediately preceding correction coefficient when the amount of discarded data becomes 0, and obtains a correction coefficient weighted by the cumulative number of times of discarding occurrences reset, after the cumulative number of times of discarding occurrences reaches 1 or more.
7. A communication control method performed by a communication control system including a plurality of layer 2 switches (hereinafter, referred to as SWs) and a communication control device that controls communication of the SWs, each SW including one or more queues that each have a variable queue length for accumulating input frames, and a transmission unit that has a shaping function of transmitting the frames accumulated in the queues to a desired destination at a desired rate, the communication control method comprising: by the communication control device, acquiring an amount of discarded data generated in each queue of the SW; multiplying the acquired amount of discarded data by a correction coefficient weighted by the cumulative number of times of discarding occurrences for which the amount of discarded data is not 0 to obtain a corrected amount of discarded data; determining adjustment values for the queue length of each queue and shaping rate of the SW based on the corrected amount of discarded data; and notifying each SW of the adjustment values.
8. A communication control device for a communication control system that includes a plurality of layer 2 switches (hereinafter, referred to as SWs), and the communication control device that controls communication of the SWs, each SW including one or more queues that each have a variable queue length for accumulating input frames, and a transmission unit that has a shaping function of transmitting the frames accumulated in the queues to a desired destination at a desired rate, the communication control device being configured to acquire an amount of discarded data generated in each queue of the SW; multiply the acquired amount of discarded data by a correction coefficient weighted by the cumulative number of times of discarding occurrences for which the amount of discarded data is not 0 to obtain a corrected amount of discarded data; determine adjustment values for the queue length of each queue and shaping rate of the SW based on the corrected amount of discarded data; and notify each SW of the adjustment values.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
DESCRIPTION OF EMBODIMENTS
(8) A feature of the present invention is to correct the amount of discarded data collected for each flow from each SW of an L2NW by a method described below, and determine adjustment values for the queue length and shaping rate of each SW based on the amount of discarded data after correction (corrected amount of discarded data). The present invention is different from that of NPL 2 in this feature.
(9)
(10) In
(11) The L2NWC includes a correction processing unit 11 that outputs a corrected amount of discarded data obtained by correcting the amount of discarded data collected for each flow ID from each SW, and an adjustment processing unit 12 that determines adjustment values for the queue length and shaping rate of each SW for each flow ID based on the corrected amount of discarded data.
(12) The correction processing unit 11 updates a correction coefficient C(f, n) each time an amount of discarded data is collected, where f is a flow ID and n is the number of an SW, and then the correction processing unit 11 outputs a corrected amount of discarded data obtained by multiplying the amount of discarded data collected for each flow ID from each SW by the updated correction coefficient C(f, n). Note that the correction coefficient C(f, n) is a different value for each SW and each flow ID.
(13) The adjustment processing unit 12 treats the corrected amount of discarded data output by the correction processing unit 11 for each SW and each flow ID as the amount of discarded data collected from each SW, determines the adjustment values for the queue length and shaping rate of each SW for each flow ID in the same manner as in NPL 2, and notifies each SW of the adjustment values.
First Embodiment
(14)
(15) In
C(f,n)=min(1,d×β)
(16) Here, β is a predetermined value, and for example, in a case where the cumulative number of times of discarding occurrences when the correction coefficient C(f, n) reaches the upper limit of 1 is set to N, it is represented as
β=1/N.
(17) As illustrated in
(18) Here, when the correction coefficient C(f, n), which increases according to the cumulative number of times of discarding occurrences d, exceeds 1, the cumulative number of times of discarding occurrences d is reset to 0. Further, the corrected amount of discarded data obtained by multiplying the correction coefficient C(f, n) is suppressed to be equal to or less than the maximum amount of discarded data that can occur in one microburst.
Second Embodiment
(19)
(20) In
β1, β2, . . . , β(N−1), βN
according to the cumulative number of times of discarding occurrences d. Here, N is the cumulative number of times of discarding occurrences when the correction coefficient C(f, n) reaches 1, and
β1<β2<. . . <β(N−1)<βN
may be set so that the rate of increase in the correction coefficient C(f, n) increases as the cumulative number of times of discarding occurrences d increases. Or
β1>β2>. . . >β(N−1)>βN
may be set so that the rate of increase in the correction coefficient C(f, n) decreases as the cumulative number of times of discarding occurrences d increases.
Third Embodiment
(21)
(22) In
d=1:C(f,n)=α
d≥2:C(f,n)=min(1, α+d×β)
(23) Here, α and β are both predetermined values, and for example, are represented as
α=δ/γ
β=(1−α)/(N−1)
where γ [s] is a collection time interval of the amount of discarded data, δ [s] is an average length of microbursts, and N is the cumulative number of times of discarding occurrences when the correction coefficient C(f, n) reaches the upper limit of 1. In addition, α<β<1
may be set.
(24) Further, the value to be added to the correction coefficient C(f, n) each time the cumulative number of times of discarding occurrences d increases is not limited to the fixed value β, and may be, for example, β2 to βN that gradually increase as in the second embodiment. Further, the correction coefficient C(f, n) may be a for a cumulative number of discarding occurrences d of 1, and may be d×β for a cumulative number of discarding occurrences d of 2 or more.
Fourth Embodiment
(25) In the first to third embodiments, when the amount of discarded data collected for each flow ID from each SW reaches 0, incrementing the cumulative number of times of discarding occurrences d is stopped, and the cumulative number of times of discarding occurrences d is reset to 0 when the correction coefficient C(f, n) exceeds 1.
(26) In a fourth embodiment, the number of times the amount of collected discarded data becomes 0 continuously is incremented, and when the cumulative number of that times (the cumulative number of not-discarding occurrences) exceeds M, the cumulative number of times of discarding occurrences d is decremented, and then the correction coefficient C(f, n) corresponding to the cumulative number of times of discarding occurrences d is updated. This makes it possible to prevent a situation in which a traffic condition in which discarded data no longer occurs with time is continuously taken into consideration.
Fifth Embodiment
(27)
(28) In
(29) Here, the determination as to whether or not the amount of discarded data reaches 0 is when the amount of discarded data indicates 0 continuously for a predetermined period. The predetermined period is, for example, a value obtained by adding a predetermined value V to an average of periods for which no data discarding occurs.
OTHER EMBODIMENTS
(30) Although the embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments, and can be implemented by any combination of the embodiments without being inconsistent.
(31) Further, the SWs and L2NWC making up the L2NW in each embodiment may each be provided as a general-purpose computer. In that case, a program for implementing their functions may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read and executed by a computer system. Note that the term “computer system” as used herein includes an OS and hardware such as a peripheral devices. Further, the “computer-readable recording medium” refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, or a CD-ROM, or a storage device such as a hard disk built in the computer system. Further, a “computer-readable recording medium” may include anything that dynamically holds the program for a short period of time, for example, a communication line for transmitting a program via a network such as the Internet or a telecommunication line such as a telephone line, and anything that holds the program for a certain period of time, such as a volatile memory included in the computer system that serves as a server or a client in that case. Further, the above program may be for implementing a part of the above-mentioned functions, may be further provided as any combination of a program already recorded in the computer system for implementing the above-mentioned functions, or may be implemented by using hardware such as PLD (Programmable Logic Device) or FPGA (Field Programmable Gate Array).
REFERENCE SIGNS LIST
(32) 11 Correction processing unit 12 Adjustment processing unit