JPH11243420A - Packet management method, communication controller, data communication system and recording medium - Google Patents

Packet management method, communication controller, data communication system and recording medium

Info

Publication number
JPH11243420A
JPH11243420A JP4483198A JP4483198A JPH11243420A JP H11243420 A JPH11243420 A JP H11243420A JP 4483198 A JP4483198 A JP 4483198A JP 4483198 A JP4483198 A JP 4483198A JP H11243420 A JPH11243420 A JP H11243420A
Authority
JP
Japan
Prior art keywords
queue
packet
transmission
delay time
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4483198A
Other languages
Japanese (ja)
Other versions
JP3895033B2 (en
Inventor
Takayoshi Kusaka
貴義 日下
Yasuhiro Kobata
康弘 木幡
Masataka Sugano
政孝 菅野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Data Group Corp
Original Assignee
NTT Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Data Corp filed Critical NTT Data Corp
Priority to JP04483198A priority Critical patent/JP3895033B2/en
Publication of JPH11243420A publication Critical patent/JPH11243420A/en
Application granted granted Critical
Publication of JP3895033B2 publication Critical patent/JP3895033B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a data communication system capable of quantitatively and dynamically controls ling the delay time for a packet. SOLUTION: A packet management processing part 16 decides an arrangement object section of a transmission candidate queue, corresponding to a packet group of a delay time control object based on the requested delay time. When a queue group already exists in the arrangement object section and a total sum of a gap in the queue group becomes larger than a burst size of the transmission candidate queue, a gap existing in the section from the final position of the arrangement object section to the front of a transmission queue 17 is eliminated and aligned, and the transmission candidate queue is inserted and rearranged. A transmission processing part 18 transmits in the order of priorities, a transmission candidate queue group, a band control queue group consisting only of band control, a default queue of an object of communication quality guarantee.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、コンピュータを使
用した通信及びネットワーク技術に係り、より詳しく
は、レスポンス時間に依存するような制約された環境下
で、パケットの遅延時間を定量的且つ動的に制御するた
めのパケット管理技術に関する。
The present invention relates to communication and network technology using a computer, and more particularly, to a method for quantitatively and dynamically determining a packet delay time in a restricted environment depending on a response time. The present invention relates to a packet management technique for controlling a packet.

【0002】[0002]

【従来の技術】有線回線を使用する際の標準通信プロト
コルとなっているTCP/IP(Transmission Control
Protocol/Internet Protocol)に準拠するネットワー
ク構成機器では、各機器を通過するパケットに対して当
該機器内部の通過時間や待機(キューイング)による遅
延時間を制御しないのが一般的である。しかしながら、
近年急増している、高品質なネットワーク環境に対する
構築要求に対応して、パケットに対する遅延時間をネッ
トワークにおける利用者及び提供者側の双方で制御可能
にするような、ネットワーク構成機器の開発が望まれて
いる。
2. Description of the Related Art TCP / IP (Transmission Control) which is a standard communication protocol when a wired line is used.
Generally, in a network component device conforming to Protocol / Internet Protocol, a packet passing through each device does not control a transit time inside the device or a delay time due to waiting (queuing). However,
In response to the construction demand for a high-quality network environment, which has been rapidly increasing in recent years, it is desired to develop a network configuration device that enables the delay time for a packet to be controlled by both the user and the provider in the network. ing.

【0003】従来のこの種の遅延時間制御手法では、例
えば、有線回線により構築されたネットワーク環境下に
通信中継装置を配備するとともに、この通信中継装置上
で送受信の対象となるパケットの遅延時間を制御するパ
ケットスケジューリングが知られている。例えば、送受
信の対象となるパケット群において低遅延のパケットを
特定して制御する、所謂、相対的な制御手法等が採用さ
れている。一方、上述のようなネットワーク環境下にお
けるパケットの遅延時間を表現する一手法として、IE
TF(Internet Engineering Task Force) のRFC(Req
uest for Comments)2212 Specification of Guaran
teed Quality of Service(Guaranteed Service)の規
格が知られている。この規格に依れば、送信側インタフ
ェースから送信されたパケットが、受信側インタフェー
スに受信されるまでの遅延時間に着目した表現式が採用
されており、パケット群全体のキューイング遅延時間に
おける上限値を制御するものである。表現式は、具体的
には、以下に示す各パラメータに基づいた式(1)で実
現される。
In this type of conventional delay time control method, for example, a communication relay device is deployed in a network environment constructed by a wired line, and a delay time of a packet to be transmitted and received on the communication relay device is determined. Controlled packet scheduling is known. For example, a so-called relative control method of identifying and controlling low-latency packets in a group of packets to be transmitted and received is employed. On the other hand, as one method of expressing the packet delay time under the network environment as described above, IE
TF (Internet Engineering Task Force) RFC (Req
uest for Comments) 2212 Specification of Guaran
The standard of teed Quality of Service (Guaranteed Service) is known. According to this standard, an expression focusing on the delay time until a packet transmitted from the transmitting interface is received by the receiving interface is adopted, and the upper limit value of the queuing delay time of the entire packet group is adopted. Is controlled. The expression is specifically realized by Expression (1) based on the following parameters.

【0004】式(1)Delay_bound= {(b-M)/R×(p-r)/
(p-t)}+(M+Ctot)/R+Dtot r: Token Bucket Rate (Sustainable Rate) b: Token Bucket Size (Burst Size) p: Peak Rate m: Minimum Policed Unit M: Maximum Packet Size R: Service Rate Ctot: Amount of Rate-Dependent Error Term C:一つの通信中継装置における Rate-Dependent Error
Term Dtot: Amount of Rate-Independent Error Term D:一つの通信中継装置における Rate-Independent Err
or Term 但し、[ 0≦r≦R≦p、0≦m≦M≦b、0≦Ctot、0≦Dtot
]である。
Equation (1) Delay_bound = {(bM) / R × (pr) /
(pt)} + (M + Ctot) / R + Dtot r: Token Bucket Rate (Sustainable Rate) b: Token Bucket Size (Burst Size) p: Peak Rate m: Minimum Policed Unit M: Maximum Packet Size R: Service Rate Ctot: Amount of Rate-Dependent Error Term C: Rate-Dependent Error in one communication relay device
Term Dtot: Amount of Rate-Independent Error Term D: Rate-Independent Error in one communication relay device
or Term where [0 ≦ r ≦ R ≦ p, 0 ≦ m ≦ M ≦ b, 0 ≦ Ctot, 0 ≦ Dtot
].

【0005】上述のパラメータ「r」、「b」、「p」
は、通信中継装置におけるトラフィックの特徴を表し、
パラメータ「Dtot」は、パケットが送信用のキュー
に移動(挿入)した直後から、送信用インタフェースを
介して実際に送信が開始されるまでの時間(以下、キュ
ーイング遅延時間)を表している。また、パラメータ
「M」、「Ctot」は、送信及び受信インタフェース
に対応する通信経路(以下、通信パス)により決定され
る値である。なお、上記式(1)に表記されないパラメ
ータ「m」は、トークンバケットの制御において必要と
なるパラメータである。遅延時間の制御は、上記パラメ
ータR、即ちサービスレートを操作することによる「遅
延時間の調整」という形式で行われる。具体的には、パ
ラメータRを大きくすることにより、遅延時間を小さく
調整可能とするものである。この「遅延時間の調整」に
おける表現式は、上記各パラメータが[ r≦R≦p ]と
なる条件下において、以下に示す式(2)、式(3)、
及び式(4)で実現される。
The above parameters "r", "b", "p"
Represents the characteristics of traffic in the communication relay device,
The parameter “Dtot” represents the time from immediately after the packet is moved (inserted) to the transmission queue until the transmission is actually started via the transmission interface (hereinafter, queuing delay time). The parameters “M” and “Ctot” are values determined by a communication path (hereinafter, communication path) corresponding to the transmission and reception interfaces. The parameter “m” not described in the above equation (1) is a parameter required for controlling the token bucket. The control of the delay time is performed in the form of “adjustment of the delay time” by operating the parameter R, that is, the service rate. Specifically, the delay time can be adjusted to be small by increasing the parameter R. The expression in the “adjustment of delay time” is expressed by the following expressions (2), (3), and (4) under the conditions where the above parameters satisfy [r ≦ R ≦ p].
And equation (4).

【0006】 式(2) Delay_bound = b/r+Ctot/r+Dtot 但し、Delay_boundは、パラメータR=rの場合におけ
る調整の下限値。 式(3) Delay_bound = M/p+Ctot/p+Dtot 但し、Delay_boundは、パラメータR=pの場合におけ
る調整の上限値。 式(4) Delay_bound = M/r+Ctot/p+Dtot 但し、Delay_boundは、パラメータR=pの場合、且つ
送信速度がパラメータrの場合における調整の上限値。
Equation (2) Delay_bound = b / r + Ctot / r + Dtot where Delay_bound is the lower limit of adjustment when parameter R = r. Equation (3) Delay_bound = M / p + Ctot / p + Dtot where Delay_bound is the upper limit of the adjustment when the parameter R = p. Equation (4) Delay_bound = M / r + Ctot / p + Dtot where Delay_bound is the upper limit of the adjustment when the parameter R = p and the transmission rate is the parameter r.

【0007】また、上述のパケットスケジューリング手
法では、以下に示すような関連技術が知られている。こ
れらの関連技術における手法、概要及び文献等の解説に
ついては、「 Gigabit Networking; Craig Partridge
著、Addison-wesley Publishing Company刊(訳書:ソ
フトバンク刊)」が詳しい。 ・FIFO ( First In First Out ) ・Priority Queuing ・Token Bucket with Leaky Bucket Control ( Virtual
Clock Algorithm < Virtual Scheduling Algorithm >
) ・WFQ ( Weighted Fair Queuing ) ・CBQ ( Class Based Queuing )
[0007] In the above-described packet scheduling technique, the following related arts are known. See Gigabit Networking; Craig Partridge
Author, published by Addison-wesley Publishing Company (translation: Softbank).・ FIFO (First In First Out) ・ Priority Queuing ・ Token Bucket with Leaky Bucket Control (Virtual
Clock Algorithm <Virtual Scheduling Algorithm>
) ・ WFQ (Weighted Fair Queuing) ・ CBQ (Class Based Queuing)

【0008】[0008]

【発明が解決しようとする課題】ところで、上述のよう
なパケット群に対する相対的な制御手法、例えば、優先
順位制御のみを行うパケットスケジューリングでは、高
い優先順位のパケットは平均より低い遅延となるのが一
般的であるが、定量的な遅延の低さを正確に把握するこ
とは不可能であった。また、上述のRFC Guaranteed
Service における規格に基づいた制御手法では、定量的
な遅延時間を確保するために、過剰なリソースを使用し
てしまうという問題を含むものであり、遅延時間を調整
するために実際に実行しようとする転送速度、即ちサー
ビスレートを必要以上に確保してしまうという問題があ
った。
By the way, in the above-described relative control method for the packet group, for example, in the packet scheduling for performing only the priority control, the packet of the high priority has a delay lower than the average. Although common, it was not possible to accurately determine the low quantitative delay. In addition, the above RFC Guaranteed
The control method based on the standard in Service includes the problem of using excessive resources to secure a quantitative delay time, and actually tries to execute it to adjust the delay time There has been a problem that a transfer rate, that is, a service rate is secured more than necessary.

【0009】具体的には、RFC Guaranteed Service
規格による、パケットの遅延時間表現手法に基づいた場
合には、以下に示す問題があった。 (1)サービスレート、即ちパラメータRを大きくする
ということは、通信中継装置における制御対象となる通
信パスの割り当て帯域を、実際に必要な帯域「r」より
大きく占有することになる。換言すれば、低遅延の確保
は、実際の必要帯域以上の過剰な帯域の確保に相当する
ものとなる。 (2)キューイング遅延時間、即ちパラメータDtot
は、通信中継装置毎における通信パスからの影響が反映
されるものであり、通信パス数の増減に対応して値が変
化する変数である。パラメータRを大きくすることによ
り、パラメータDtotを小さくすることは可能である
が、パラメータRを、調整の上限値であるパラメータp
のピークレートに設定したとしても、必ずしもパラメー
タDtotの変動を停止することは不可能である。即
ち、パラメータDtotは、変化が持続するため、最大
の遅延時間を大きく見積もらなければならない傾向があ
る。 (3)通信パスが増加した場合に、制御対象以外の通信
パスからの影響を受けることになり、例えば、遅延時間
が累積的に増加してしまう。 (4)通信パス個々の帯域の合計が、物理的な帯域を超
過しないように制御を行う場合では、複数インタフェー
スに各々対応した通信パスからのバースト入力が、同時
に特定のインタフェースに対して集中することに伴い、
一時的に物理的な帯域を超過してしまうような輻輳が発
生する。このような状況下では、通信パスの割り当て帯
域やキュー長に依存することなく、大きな遅延が発生し
てしまう。
Specifically, the RFC Guaranteed Service
When the method is based on the packet delay time expression method according to the standard, there are the following problems. (1) Increasing the service rate, that is, increasing the parameter R, occupies the allocated bandwidth of the communication path to be controlled in the communication relay device larger than the actually required bandwidth “r”. In other words, securing a low delay is equivalent to securing an excess bandwidth beyond the actual required bandwidth. (2) Queuing delay time, that is, parameter Dtot
Reflects the influence of the communication path for each communication relay device, and is a variable whose value changes in accordance with an increase or decrease in the number of communication paths. Although it is possible to decrease the parameter Dtot by increasing the parameter R, the parameter R is changed to the parameter p which is the upper limit value of the adjustment.
Even if the peak rate is set, it is not always possible to stop the fluctuation of the parameter Dtot. That is, the parameter Dtot tends to require a large estimation of the maximum delay time because the change continues. (3) When the number of communication paths increases, the number of communication paths is affected by communication paths other than the control target, and, for example, the delay time is cumulatively increased. (4) In the case where control is performed so that the sum of the individual bandwidths of the communication paths does not exceed the physical bandwidth, burst inputs from communication paths respectively corresponding to a plurality of interfaces are simultaneously concentrated on a specific interface. With that,
Congestion that temporarily exceeds the physical bandwidth occurs. Under such a situation, a large delay occurs without depending on the bandwidth and queue length of the communication path.

【0010】本発明の課題は、ネットワーク環境下にお
いて、パケットに対する遅延時間を定量的且つ動的に制
御することができるパケット管理方法を提供することに
ある。本発明の他の課題は、上記パケット管理方法の実
施に適した通信制御装置、及びデータ通信システムを提
供することにある。本発明の他の課題は、上記パケット
管理方法、通信制御装置及びデータ通信システム等をコ
ンピュータ装置で実現するための記録媒体を提供するこ
とにある。
An object of the present invention is to provide a packet management method capable of quantitatively and dynamically controlling a delay time of a packet in a network environment. Another object of the present invention is to provide a communication control device and a data communication system suitable for implementing the above-described packet management method. Another object of the present invention is to provide a recording medium for realizing the above-described packet management method, communication control device, data communication system, and the like by a computer device.

【0011】[0011]

【課題を解決するための手段】上記課題を解決する本発
明のパケット管理方法は、発信時点までの遅延時間制御
の対象となるパケットの要求遅延時間に基づいて当該パ
ケットの送信キューに対する相対的な挿入先頭位置及び
挿入末尾位置を算出して配置対象区間を特定する過程、
算出された挿入末尾位置から前記送信キューの先頭まで
の区間における間隙の総和を算出する過程、算出された
間隙の総和がパケットサイズ以上である場合に前記配置
対象区間を確保してパケット挿入及びパケット配列を行
う過程を含み、前記送信キューのスケジューリングに前
記要求遅延時間を動的に反映させることを特徴とする。
According to the packet management method of the present invention, which solves the above-mentioned problem, a packet relative to a transmission queue is determined based on a required delay time of a packet to be subjected to delay time control up to the time of transmission. A process of calculating the insertion start position and the insertion end position to specify the placement target section,
Calculating the sum of the gaps in the section from the calculated insertion end position to the top of the transmission queue; securing the placement target section when the calculated sum of the gaps is equal to or larger than the packet size; The method further comprises the step of arranging, wherein the request delay time is dynamically reflected in the scheduling of the transmission queue.

【0012】前記確保した配置対象区間に既に他のパケ
ットが存在する場合は、前記挿入末尾位置を前記他のパ
ケットの先頭位置に変更するとともに、該変更後の挿入
末尾位置からパケットサイズを差分した位置に前記挿入
先頭位置を変更して前記配置対象区間を動的に変更す
る。
If another packet already exists in the secured allocation target section, the insertion end position is changed to the head position of the other packet, and the packet size is subtracted from the changed insertion end position. The insertion start position is changed to a position, and the placement target section is dynamically changed.

【0013】上記他の課題を解決する本発明の通信制御
装置は、通信品質保証を要するパケット群から発信時点
までの遅延時間制御の対象となる1または2以上のパケ
ットを選別して保持するパケット処理手段と、前記保持
された個々のパケットに対する要求遅延時間に基づいて
それぞれ対応する送信キューのスケジューリングを行う
パケット管理手段と、前記スケジューリングされた送信
キューに対応するパケットを所定順に送信するパケット
送信手段とを備え、前記パケットの選別後、当該パケッ
トの送信までの制御を動的に行うことを特徴とする。
[0013] A communication control apparatus according to the present invention for solving the above-mentioned other problems includes a packet for selecting and holding one or two or more packets to be subjected to delay time control from a packet group requiring communication quality assurance to a transmission time point. Processing means; packet management means for scheduling transmission queues respectively corresponding to the held delay times of the individual packets; packet transmission means for transmitting packets corresponding to the scheduled transmission queues in a predetermined order Wherein the control from the selection of the packet to the transmission of the packet is dynamically performed.

【0014】本発明の通信制御装置は、また、送信元か
らのパケット群を送信キューにスケジューリングして受
信先へ送信するための通信制御装置であって、前記送信
元からのパケット群のうち通信品質保証の対象となるパ
ケットから、発信時点までの遅延時間制御及び帯域制御
の対象となる1または2以上のパケットを特定して所定
の帯域制御を施すとともに、遅延時間制御の対象となる
パケット、帯域制御のみの対象となるパケット、通信品
質保証の対象外となるパケットを各々選別して保持する
パケット処理手段と、前記遅延時間制御の対象となるパ
ケットに対応する送信候補キューの要求遅延時間に基づ
いて、前記送信キューにおける当該送信候補キューの相
対的な配置対象区間を特定し、当該配置対象区間に基づ
いて前記送信候補キューのスケジューリングを行うとと
もに、前記送信候補キュー、前記帯域制御のみのパケッ
トに対応する帯域制御キュー、通信品質保証の対象外と
なるパケットに対応するデフォルトキューの優先順位で
スケジューリングを行い、各キューを前記送信キューに
移動して配列するパケット管理手段と、前記送信キュー
に配列された各キューから、相対的に先頭に位置するキ
ューを優先的に選択して対応パケットを前記受信先へ送
信するパケット送信手段と、を備え、キューの制御を定
量的且つ動的に行うように構成されていることを特徴と
する。
The communication control device of the present invention is a communication control device for scheduling a packet group from a transmission source in a transmission queue and transmitting the packet to a reception destination. From packets to be quality-assured, one or two or more packets to be subjected to delay time control and bandwidth control up to the time of transmission are specified and subjected to predetermined bandwidth control, and packets to be subjected to delay time control, Packet processing means for selecting and holding packets to be subjected only to band control and packets not to be subject to communication quality assurance; and request delay time of a transmission candidate queue corresponding to the packet to be subjected to the delay time control. And specifying a relative allocation section of the transmission candidate queue in the transmission queue on the basis of the transmission candidate queue. Scheduling, the scheduling is performed in the priority order of the transmission candidate queue, the bandwidth control queue corresponding to the packet only for the bandwidth control, and the default queue corresponding to the packet not subject to the communication quality assurance. A packet management means for moving to the transmission queue and arranging the packet, and a packet for preferentially selecting a queue located relatively first from each queue arranged in the transmission queue and transmitting a corresponding packet to the reception destination Transmitting means, and is configured to perform queue control quantitatively and dynamically.

【0015】上記通信制御装置において、前記パケット
処理手段は、例えば、所定の通信品質保証ルーティング
に基づくフィルタを用いて、通信品質保証の対象となる
パケットか、通信品質保証の対象外のパケットかを判定
するように構成される。また、前記通信品質保証の対象
となるパケットから第1の帯域制御が施されている第1
パケットと該第1の帯域制御が施されていない第2パケ
ットを特定するとともに、第2パケットに対して第2の
帯域制御を施して正規化されたトークンバケットを得る
ように構成される。前記第2の帯域制御の際にエラーと
なる違反パケットがある場合は、この違反パケットを、
前記通信品質保証の対象外となるパケットとして保持す
るようにする。
In the above-mentioned communication control apparatus, the packet processing means may use a filter based on a predetermined communication quality assurance routing to determine whether the packet is to be subjected to communication quality assurance or is not subject to communication quality assurance. It is configured to determine. In addition, the first band control is performed from the packet to be guaranteed for the communication quality.
The packet and the second packet not subjected to the first band control are specified, and the second band control is performed on the second packet to obtain a normalized token bucket. If there is a violating packet that causes an error during the second bandwidth control, this violating packet is
The packet is held as a packet that is not subject to the communication quality assurance.

【0016】前記遅延時間制御の対象となるパケットの
検出は、例えば、予め保持された、遅延時間制御の指定
がなされる前記送信元及び受信先の識別情報に基づいて
行う。あるいは、パケットのヘッダに付与された遅延時
間制御の識別情報に基づいて行う。
The detection of the packet to be subjected to the delay time control is performed, for example, based on the identification information of the transmission source and the destination to which the delay time control is specified, which is held in advance. Alternatively, it is performed based on the identification information of the delay time control added to the header of the packet.

【0017】上記通信制御装置において、前記パケット
管理手段は、例えば、以下のようにして構成することが
できる。 (1)前記送信候補キューの要求遅延時間と自装置の最
大送信速度との積から前記配置対象区間の挿入末尾位置
を算出するとともに、該挿入末尾位置から当該送信候補
キューのバーストサイズを差分して前記配置対象区間の
挿入先頭位置を算出し、前記送信キューに対する送信候
補キューの相対的な配置対象区間を特定する。 (2)前記算出された挿入末尾位置から前記送信キュー
の先頭までの区間において、スケジューリング済みの送
信候補キューが配置されていない間隙の総和を算出し、
該間隙の総和が送信候補キューに対応するバーストサイ
ズ以上となる場合に前記配置対象区間を確保して新たな
送信候補キューを挿入する。 (3)前記送信キューに新たな送信候補キューを挿入す
ることができ且つ当該送信候補キューの配置対象区間に
既スケジューリングキューが存する場合に、この既スケ
ジューリングキューを整列させた後に当該新たな送信候
補キューを挿入してキュー再配列を行う。 (4)整列後の配置対象区間に残存する既スケジューリ
ングキューを検出し、さらに、検出された既スケジュー
リングキューから、その先頭位置が前記挿入末尾位置に
最も近いものを検出するとともに、前記挿入末尾位置を
検出された既スケジューリングキューの先頭位置に変更
し、該変更後の挿入末尾位置から当該送信候補キューに
対応するバーストサイズを差分して前記挿入先頭位置を
算出することにより、前記新たな送信候補キューの配置
対象区間を変更する。 (5)前記送信キューに配列された特定の送信候補キュ
ーに対する遅延時間制御の無効化指定を検出した場合
に、当該送信候補キューを削除して前記送信キューを当
該送信候補キューの挿入以前の状態に復元する。
In the above communication control device, the packet management means can be constituted, for example, as follows. (1) The insertion end position of the allocation target section is calculated from the product of the request delay time of the transmission candidate queue and the maximum transmission speed of the own device, and the burst size of the transmission candidate queue is subtracted from the insertion end position. Then, the insertion start position of the placement target section is calculated, and the relative placement section of the transmission candidate queue relative to the transmission queue is specified. (2) In a section from the calculated insertion end position to the head of the transmission queue, a total sum of gaps in which no scheduled transmission candidate queues are arranged is calculated;
When the sum of the gaps is equal to or larger than the burst size corresponding to the transmission candidate queue, the allocation target section is secured and a new transmission candidate queue is inserted. (3) When a new transmission candidate queue can be inserted into the transmission queue and a scheduling queue already exists in the section to be arranged for the transmission candidate queue, the new transmission candidate is sorted after the scheduling queue is sorted. Insert queues and perform queue rearrangement. (4) Detecting the existing scheduling queue remaining in the arrangement target section after sorting, further detecting, from the detected existing scheduling queue, a queue whose head position is closest to the insertion end position, and detecting the insertion tail position. Is changed to the head position of the detected scheduling queue, and the insertion head position is calculated by subtracting the burst size corresponding to the transmission candidate queue from the insertion tail position after the change, thereby obtaining the new transmission candidate. Change the queue placement target section. (5) When detecting the designation of disabling delay time control for a specific transmission candidate queue arranged in the transmission queue, deleting the transmission candidate queue and replacing the transmission queue with the transmission candidate queue before the insertion thereof. To restore.

【0018】上記通信制御装置において、前記パケット
送信手段は、例えば、選択された送信候補キュー、前記
帯域制御キュー、及びデフォルトキューのいずれかに対
応するパケットを送信する際に、当該パケットよりも前
記挿入先頭位置が小さい新たな送信候補キューが前記送
信キューにスケジューリングされた場合、当該新たな送
信候補キューに対応するパケットを優先的に選択して送
信するように構成されている。
In the above-mentioned communication control device, when transmitting a packet corresponding to any one of the selected transmission candidate queue, the band control queue, and the default queue, the packet transmitting means may transmit the packet more than the packet. When a new transmission candidate queue with a small insertion head position is scheduled in the transmission queue, a packet corresponding to the new transmission candidate queue is preferentially selected and transmitted.

【0019】なお、前記送信キューの保持領域は、好ま
しくは、前記送信候補キュー及び帯域制御キューにおけ
るトークンバケットサイズの総和以上となるように設定
する。これにより、パケット落ちの事態を回避しやすく
なる。
The holding area of the transmission queue is preferably set to be equal to or larger than the sum of the token bucket sizes in the transmission candidate queue and the bandwidth control queue. This makes it easier to avoid a packet drop situation.

【0020】また、他の課題を解決する本発明のデータ
通信システムは、上記通信制御装置が通信回線に接続さ
れ、この通信回線を介して流通する送信元からのパケッ
トを前記通信制御装置に取り込んで前記通信回線を介し
て対応する受信先へ送信されるように構成されたもので
ある。
According to another aspect of the present invention, there is provided a data communication system in which the communication control device is connected to a communication line, and a packet from a transmission source circulating through the communication line is taken into the communication control device. And transmitted to the corresponding receiver via the communication line.

【0021】本発明のデータ通信システムの好ましい形
態としては、前記通信制御装置自体のサービスレート
を、前記通信回線における送信元及び受信先に各々対応
する通信経路毎の平均転送率に固定化して必要帯域を限
定させ、前記通信経路数の増減に依存して変化するシス
テム全体の遅延時間を、前記必要帯域に基づいた範囲内
に抑制するように構成されていることを特徴とする。ま
た、前記通信回線に、例えばTCP/IPに準拠した通
信プロトコルに基づく複数の前記通信制御装置が存する
場合に、前記送信元からの要求遅延時間及び対応する通
信経路の平均転送率に基づいてシステム全体の総遅延時
間を算出し、当該総遅延時間を前記通信制御装置の台数
で除算した値を、通信制御装置毎の遅延時間として分配
するとともに、通信制御装置毎の送信キューにおける遅
延時間制御の対象となるパケットの配置対象区間を、前
記分配された遅延時間に基づいて特定するように構成さ
れていることを特徴とする。
In a preferred embodiment of the data communication system according to the present invention, it is necessary to fix the service rate of the communication control device itself to an average transfer rate for each communication path corresponding to a transmission source and a reception destination in the communication line. It is characterized in that the band is limited and the delay time of the entire system, which changes depending on the increase or decrease in the number of communication paths, is suppressed within a range based on the required band. Further, when a plurality of communication control devices based on a communication protocol conforming to, for example, TCP / IP exist in the communication line, a system is configured based on a request delay time from the transmission source and an average transfer rate of a corresponding communication path. The total delay time is calculated, and a value obtained by dividing the total delay time by the number of the communication control devices is distributed as a delay time for each communication control device. The configuration is such that a placement target section of a target packet is specified based on the distributed delay time.

【0022】上記他の課題を解決する本発明の記録媒体
は、パケットを送信キューにスケジューリングして送信
するコンピュータ装置において読みとり可能なプログラ
ムが記録された記録媒体であって、前記プログラムが、
少なくとも、下記の処理を前記コンピュータ装置に実行
させるものである。 (1−1)発信時点までの遅延時間制御の対象となるパ
ケットの要求遅延時間に基づいて当該パケットの送信キ
ューに対する相対的な挿入先頭位置及び挿入末尾位置を
算出して配置対象区間を特定する処理、(1−2)算出
された挿入末尾位置から前記送信キューの先頭までの区
間における間隙の総和を算出する処理、(1−3)算出
された間隙の総和がパケットサイズ以上である場合に前
記配置対象区間を確保してパケット挿入及びパケット配
列を行う処理。
According to another aspect of the present invention, there is provided a recording medium storing a program readable by a computer for scheduling a packet in a transmission queue and transmitting the packet.
At least the following processing is executed by the computer device. (1-1) Based on the required delay time of a packet to be subjected to delay time control up to the transmission time point, the relative insertion start position and insertion end position of the packet with respect to the transmission queue are calculated, and the allocation target section is specified. Processing, (1-2) processing of calculating the sum of gaps in a section from the calculated insertion end position to the head of the transmission queue, and (1-3) processing of calculating the sum of gaps equal to or larger than the packet size. A process for securing the placement section and performing packet insertion and packet arrangement.

【0023】本発明の他の記録媒体は、送信元からのパ
ケットを送信キューにスケジューリングして受信先へ送
信するコンピュータ装置において読みとり可能なプログ
ラムが記録された記録媒体であって、前記プログラム
が、少なくとも、下記の処理を前記コンピュータ装置に
実行させるものである。 (2−1)前記送信元からのパケット群のうち通信品質
保証の対象となるパケットから遅延時間制御及び帯域制
御の対象となる1または2以上のパケットを特定して所
定の帯域制御を施す処理、(2−2)遅延時間制御の対
象となるパケット、帯域制御のみの対象となるパケッ
ト、通信品質保証の対象外となるパケットを各々選別し
て保持する処理、(2−3)前記遅延時間制御の対象と
なるパケットに対応する送信候補キューの要求遅延時間
に基づいて、前記送信キューにおける当該送信候補キュ
ーの相対的な配置対象区間を特定する処理、(2−4)
特定された配置対象区間に基づいて前記送信候補キュー
のスケジューリングを行うとともに、前記送信候補キュ
ー、前記帯域制御のみのパケットに対応する帯域制御キ
ュー、通信品質保証の対象外となるパケットに対応する
デフォルトキューの優先順位でスケジューリングを行
い、各キューを前記送信キューに移動して配列する処
理、(2−5)前記送信キューに配列された各キューか
ら、相対的に先頭に位置するキューを優先的に選択して
対応パケットを前記受信先へ送信する処理。
Another recording medium of the present invention is a recording medium on which a program readable by a computer for scheduling a packet from a transmission source in a transmission queue and transmitting the packet to a reception destination is recorded, wherein the program is: At least the following processing is executed by the computer device. (2-1) A process of specifying one or more packets to be subjected to delay time control and band control from among packets to be guaranteed for communication quality from a group of packets from the source and performing predetermined band control. (2-2) a process of selecting and holding a packet to be subjected to delay time control, a packet to be subjected only to bandwidth control, and a packet not to be subject to communication quality assurance; (2-3) the delay time A process of specifying a relative allocation section of the transmission candidate queue in the transmission queue based on a request delay time of the transmission candidate queue corresponding to the packet to be controlled; (2-4)
Scheduling the transmission candidate queue based on the specified allocation target section, the transmission candidate queue, a band control queue corresponding to the packet only for band control, and a default corresponding to a packet not subject to communication quality assurance. A process of performing scheduling in the priority order of the queues and moving and arranging each queue to the transmission queue; (2-5) giving priority to the queue located relatively first from the queues arranged in the transmission queue And transmitting the corresponding packet to the destination.

【0024】[0024]

【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を詳細に説明する。 (第1実施形態)図1は、本発明をインタネット等の有
線通信回線を介したデータ通信システムに適用した場合
の実施の形態を示す機能ブロック図である。このデータ
通信システム1は、情報取得装置となる複数のクライア
ント20、情報提供装置となる複数のサーバ30、及
び、クライアント20〜サーバ30間に介在してデータ
通信の中継を行う複数の通信サーバ10を、それぞれ公
衆網Lを介して相互通信可能に接続されて構成される。
Embodiments of the present invention will be described below in detail with reference to the drawings. (First Embodiment) FIG. 1 is a functional block diagram showing an embodiment in which the present invention is applied to a data communication system via a wired communication line such as the Internet. The data communication system 1 includes a plurality of clients 20 serving as information acquisition devices, a plurality of servers 30 serving as information providing devices, and a plurality of communication servers 10 interposed between the client 20 and the server 30 for relaying data communication. Are connected so as to be able to communicate with each other via a public network L.

【0025】通信サーバ10は、本発明の通信中継装置
として機能するもので、サーバ本体がオペレーティング
システム(OS)と協動するプログラムを読み込んで実
行することにより形成される、受信処理部11、受信キ
ュー12、デフォルトキュー13、受信キュー処理部1
4、帯域制御受信キュー15、パケット管理処理部1
6、送信キュー17、及び送信処理部18、の機能ブロ
ックを具備して構成される。
The communication server 10 functions as a communication relay device of the present invention, and is formed by the server body reading and executing a program cooperating with an operating system (OS). Queue 12, default queue 13, reception queue processing unit 1
4, bandwidth control reception queue 15, packet management processing unit 1
6, a transmission queue 17, and a transmission processing unit 18.

【0026】なお、上記プログラムは、通常、サーバ本
体の内部記憶装置あるいは外部記憶装置に格納され、随
時読み取られて実行されるようになっているが、上記サ
ーバ本体とは分離可能な可搬性記録媒体、例えばCD−
ROMやFD等に格納され、あるいはサーバ本体に接続
されたネットワーク媒体を通じて入力され、使用時に上
記内部記憶装置または外部記憶装置にインストールされ
て随時実行に供されるものであってもよい。
The above-mentioned program is usually stored in an internal storage device or an external storage device of the server main body, and is read and executed as needed. Medium, for example CD-
It may be stored in a ROM, FD, or the like, or input through a network medium connected to the server body, installed in the internal storage device or the external storage device at the time of use, and provided for execution at any time.

【0027】受信処理部11は、公衆網Lを介してクラ
イアント20及びサーバ30からのデータ通信の対象と
なるパケットを受信して通信品質保証の対象となるパケ
ットか否かを検出し、パケットの選別を行うものであ
る。通信品質保証の対象となるパケット群は、受信キュ
ー12に入力され、一方、通信品質保証の対象外となる
パケット(以下、ベストエフォートパケット)群は、デ
フォルトキュー13に入力される。
The reception processing unit 11 receives a packet targeted for data communication from the client 20 and the server 30 via the public network L, detects whether the packet is a packet targeted for communication quality assurance, and detects the packet. The sorting is performed. Packets subject to communication quality assurance are input to the reception queue 12, while packets not subject to communication quality assurance (hereinafter, best effort packets) are input to the default queue 13.

【0028】受信キュー12は、受信処理部11を介し
て取得された通信品質保証の対象となるパケット群を保
持するものである。デフォルトキュー13は、受信処理
部11により選別されたベストエフォートパケット群を
保持するものである。
The reception queue 12 holds a group of packets that are acquired via the reception processing unit 11 and whose communication quality is to be guaranteed. The default queue 13 holds the best effort packet group selected by the reception processing unit 11.

【0029】受信キュー処理部14は、受信キュー12
中のパケット群に対して、遅延時間制御及び帯域制御の
指定がなされたパケットを検出するとともに、帯域制御
が施されていないパケット群に対して帯域制御を行うも
のである。具体的には、受信キュー12中のパケット群
から、シェーピングが施されていないパケットを検出し
てリキーバケットフィルタ付きトークンバケットで正規
化して整形する、所謂公知のポリシングにより行われ
る。該整形後の遅延時間制御の対象外となるパケット群
は、受信キュー12から帯域制御受信キュー15に移動
されて保持される。なお、遅延時間制御の指定とは、通
信サーバ10に対する送信元または受信先となるクライ
アント10及びサーバ30からなされるものであり、特
定のパケットに対して、例えば、「10ms以内の遅延
時間」等と最大遅延時間が指定されるものである。この
指定された最大遅延時間を、以下、要求遅延時間と記
す。
The reception queue processing unit 14 is provided with the reception queue 12
This detects packets for which delay time control and band control have been designated for the middle packet group, and performs band control for a packet group that has not been subjected to band control. Specifically, it is performed by the so-called known policing, in which a packet that has not been subjected to shaping is detected from a group of packets in the reception queue 12 and is normalized by a token bucket with a rekey bucket filter and shaped. The packet group that is not subjected to the delay time control after the shaping is moved from the reception queue 12 to the band control reception queue 15 and held there. Note that the designation of the delay time control is performed by the client 10 and the server 30 that are the transmission source or the reception destination with respect to the communication server 10, and for a specific packet, for example, “delay time within 10 ms” And the maximum delay time. The specified maximum delay time is hereinafter referred to as a required delay time.

【0030】帯域制御受信キュー15は、受信キュー処
理部14においてポリシングによる帯域制御が施され
た、遅延時間制御の対象外となるパケット群を保持する
ものである。パケット管理処理部16は、受信キュー1
2、デフォルトキュー13、及び帯域制御受信キュー1
5中に保持されたパケット群を、送信キュー17に移動
させてスケジューリングを行い保持するものである。な
お、パケットスケジューリングに関する詳細については
後述する。
The band control reception queue 15 holds a packet group that has been subjected to band control by policing in the reception queue processing unit 14 and is not subject to delay time control. The packet management processing unit 16 receives the reception queue 1
2, default queue 13, and bandwidth control reception queue 1
The group of packets held in 5 is moved to the transmission queue 17 for scheduling and holding. Details regarding packet scheduling will be described later.

【0031】送信キュー17は、パケット管理処理部1
6によりスケジューリングがなされた、送信対象となる
パケット群が保持されたものである。送信処理部18
は、図示しない送信インタフェースを介して、送信キュ
ー17中における送信対象となるパケットの送信を行う
ものである。なお、上記受信キュー12、デフォルトキ
ュー13、帯域制御受信キュー15、及び送信キュー1
7は、実際には、バッファ等の記憶手段を用いたパケッ
トの「格納部」として構成されるものであるが、以降の
説明を把握し易くするため便宜的に3種類に分類した
「キュー」として記すものである。
The transmission queue 17 stores the packet management processing unit 1
6, which holds a group of packets to be transmitted, which has been scheduled by S6. Transmission processing unit 18
Is for transmitting a packet to be transmitted in the transmission queue 17 via a transmission interface (not shown). The reception queue 12, the default queue 13, the bandwidth control reception queue 15, and the transmission queue 1
7 is actually configured as a "storage unit" of a packet using a storage means such as a buffer, but "queues" classified into three types for the sake of convenience in order to facilitate the following description. It is written as.

【0032】図2及び図3は、通信サーバ10における
処理の概要を表す処理手順図である。受信処理部11
は、パケットを受信するとともに(ステップS10
1)、当該受信パケットが通信品質保証の対象か否かを
判定する。通信品質保証の対象である場合は(ステップ
S102:Yes)、当該パケットを受信キュー12に保
持する(ステップS103)。一方、通信品質保証対象
外のベストエフォートパケットならば(ステップS10
2:No)、当該パケットをデフォルトキュー13に保持
する(ステップS104)。この通信品質保証の対象か
否かの判定は、例えば、公知のQoS(Quality of Ser
vice)ルーティングに係るQoSフィルタ等を用いて構
成すれば良い。
FIG. 2 and FIG. 3 are processing procedure diagrams showing the outline of the processing in the communication server 10. Reception processing unit 11
Receives the packet (step S10)
1), it is determined whether or not the received packet is subject to communication quality assurance. If the packet is a target of communication quality assurance (step S102: Yes), the packet is held in the reception queue 12 (step S103). On the other hand, if the packet is a best effort packet not covered by the communication quality assurance (step S10
2: No), the packet is held in the default queue 13 (step S104). The determination as to whether or not the communication quality is to be guaranteed is performed by, for example, a known QoS (Quality of Service).
vice) What is necessary is just to comprise using the QoS filter etc. regarding a routing.

【0033】次に、受信キュー処理部14では、受信キ
ュー12中のパケット群に対して帯域制御(シェーピン
グ)が施されているか否かを検出する。パケットにシェ
ーピングが施されていなければ(ステップS105:N
o)、該当するパケットに帯域制御(ポリシング)を施
すとともに(ステップS106)、ポリシング時に受信
キュー12から溢れるような違反パケットがあれば(ス
テップS107:Yes)、当該パケットを受信キュー1
2からデフォルトキュー13へ移動して保持する(ステ
ップS108)。
Next, the reception queue processing unit 14 detects whether or not the packet group in the reception queue 12 is subjected to band control (shaping). If the packet has not been shaped (step S105: N
o), the packet is subjected to bandwidth control (policing) (step S106), and if there is a violating packet that overflows from the reception queue 12 during policing (step S107: Yes), the packet is transferred to the reception queue 1
2 to the default queue 13 and hold it (step S108).

【0034】一方、ポリシングが正常に施された場合
(ステップS107:No)、または、シェーピングが検
出された場合(ステップS105:Yes)のパケットに
対して、受信キュー処理部14は、当該パケットが遅延
時間制御の対象か否かを判定する。遅延時間制御の対象
ならば(ステップS109:Yes)、当該パケットを受
信キュー12に保持し(ステップS110)、一方、帯
域制御のみとなる遅延時間制御の対象外ならば(ステッ
プS109:No)、当該パケットを受信キュー12から
帯域制御受信キュー15に移動して保持する(ステップ
S111)。なお、遅延時間制御の判定は、例えば、遅
延時間制御の指定がなされるクライアント20及びサー
バ30に対する識別情報を予め保持しておき、当該識別
情報に基づいて判定する、または、遅延時間制御に関す
る情報をパケットヘッダに具備させる等、適宜構成すれ
ば良い。
On the other hand, when the policing is performed normally (step S107: No) or when the shaping is detected (step S105: Yes), the reception queue processing unit 14 It is determined whether or not the time is subject to delay time control. If the packet is to be subjected to the delay time control (Step S109: Yes), the packet is held in the reception queue 12 (Step S110). The packet is moved from the reception queue 12 to the bandwidth control reception queue 15 and held (step S111). The determination of the delay time control is performed by, for example, holding identification information for the client 20 and the server 30 to which the delay time control is specified in advance and making a determination based on the identification information, or information on the delay time control. May be provided as appropriate, for example, in the packet header.

【0035】また、本実施形態では、受信処理部11に
おいて、上記ステップS102のように通信品質保証が
必要なパケットか否かを検出して通信品質保証パケット
とベストエフォートパケットとを明示的に選別する構成
としているが、例えば、受信処理部11と受信キュー処
理部14とを統合させて構成することも可能である。こ
の場合、受信したパケットが遅延時間制御対象か否かを
判定して通信品質保証パケットとベストエフォートパケ
ットとを選別するとともに、さらに、通信品質保証パケ
ットに対して帯域制御の有無を検出して上記ステップS
106〜S111の処理を適宜行うように構成すれば良
い。
In this embodiment, the reception processing unit 11 detects whether or not the packet requires the communication quality assurance as in step S102, and explicitly discriminates the communication quality assurance packet from the best effort packet. However, for example, the reception processing unit 11 and the reception queue processing unit 14 may be integrated. In this case, it is determined whether or not the received packet is subject to delay time control, and the communication quality assurance packet and the best effort packet are selected. Step S
What is necessary is just to comprise so that the process of 106-S111 may be performed suitably.

【0036】次に、パケット管理処理部16では、受信
キュー12、デフォルトキュー13、及び帯域制御受信
キュー15中におけるパケット群を送信キュー17に移
動させるとともに、指定された要求遅延時間を反映させ
たスケジューリングを行う(ステップS112)。当該
パケットスケジューリング完了後、送信処理部18で
は、送信キュー17中のパケット群を対応する送信先に
対して送信する(ステップS113)。受信処理部11
では、新たな受信パケットが検出される場合には(ステ
ップS114:Yes)、ステップS101に戻り処理を
繰り返す。なお、上記ステップS114では、受信パケ
ットの検出処理を便宜的に設けたものであるが、実際に
は、受信処理部11及び送信処理部18における、流入
するパケット群及び送信されるパケット群の処理は並列
的に行われるものとなる。
Next, the packet management processing unit 16 moves the packet group in the reception queue 12, the default queue 13, and the bandwidth control reception queue 15 to the transmission queue 17, and reflects the designated request delay time. The scheduling is performed (Step S112). After the completion of the packet scheduling, the transmission processing unit 18 transmits the packet group in the transmission queue 17 to the corresponding transmission destination (step S113). Reception processing unit 11
Then, when a new received packet is detected (Step S114: Yes), the process returns to Step S101 and repeats the processing. In step S114, a process of detecting a received packet is provided for the sake of convenience. Actually, however, the process of the incoming packet group and the transmitted packet group in the reception processing unit 11 and the transmission processing unit 18 is performed. Are performed in parallel.

【0037】次に、本発明におけるパケットスケジュー
リング手法について説明する。従来手法では、送信元と
なる複数のクライアント20またはサーバ30からのパ
ケット群を、通信パス毎の到着順にキューイングしてい
たために、遅延時間が不確実なものになる要因となって
いた。そこで本発明では、送信キュー17における各パ
ケットを動的に並べ替えて配列可能とすることにより、
各々のパケットの位置に基づいた遅延時間の決定が可能
となる「割り込み型パケットスケジューリング手法」を
提案するものである。
Next, a packet scheduling method according to the present invention will be described. In the conventional method, a packet group from a plurality of clients 20 or servers 30 as transmission sources is queued in the order of arrival for each communication path, which causes a cause of uncertain delay time. Therefore, in the present invention, by dynamically rearranging and arranging the packets in the transmission queue 17,
The present invention proposes an "interrupt-type packet scheduling method" that enables a delay time to be determined based on the position of each packet.

【0038】本実施形態の通信サーバ10では、この手
法をパケット管理処理部16に適用することにより実現
するものである。具体的には、以下に示す手順に基づい
て、送信キュー17における各パケットの送信順位を入
れ替えるものである。なお、以下の説明では、パケット
管理処理部16により送信キュー17へ移動後のスケジ
ューリング対象となる各パケットについて、デフォルト
キュー13から移動された1または所定数のパケット群
を「デフォルトキュー」、帯域制御受信キュー15から
移動された1または所定数のパケット群を「帯域制御キ
ュー」、また、受信キュー12から移動された遅延時間
制御の対象となる1または所定数のパケット群を「送信
候補キュー」と記して説明する。 (1)通信パスからの要求遅延時間に基づいて、遅延時
間制御の対象となる「送信候補キュー」の、送信キュー
17における先頭からの相対的な配置対象位置を決定す
る。 (2)位置が決定した「送信候補キュー」と、送信キュ
ー17に既存するスケジューリング済みの「送信候補キ
ュー」(以下、「既存送信候補キュー」)群との位置を
比較するとともに、決定した配置対象位置に基づいて、
当該「送信候補キュー」を送信キュー17に挿入する。 (3)送信処理部18では、送信キュー17にスケジュ
ーリング後の「送信候補キュー」群において、先頭に位
置する「送信候補キュー」のパケットから優先的に送信
する。
In the communication server 10 of the present embodiment, this method is realized by applying this method to the packet management processing unit 16. Specifically, the transmission order of each packet in the transmission queue 17 is switched based on the procedure described below. In the following description, for each packet to be scheduled after being moved to the transmission queue 17 by the packet management processing unit 16, one or a predetermined number of packet groups moved from the default queue 13 are referred to as “default queue”, One or a predetermined number of packets moved from the reception queue 15 is referred to as a “bandwidth control queue”, and one or a predetermined number of packets to be subjected to delay time control moved from the reception queue 12 is referred to as a “transmission candidate queue”. This will be described. (1) Based on the required delay time from the communication path, the relative position of the “transmission candidate queue” to be subjected to the delay time control in the transmission queue 17 from the head is determined. (2) The positions of the determined “transmission candidate queues” and the positions of the scheduled “transmission candidate queues” (hereinafter, “existing transmission candidate queues”) existing in the transmission queue 17 are compared, and the determined arrangement is performed. Based on the target location,
The “transmission candidate queue” is inserted into the transmission queue 17. (3) The transmission processing unit 18 preferentially transmits packets of the “transmission candidate queue” positioned at the head of the “transmission candidate queue” group after scheduling in the transmission queue 17.

【0039】次に、本実施形態におけるデータ通信シス
テム1の構築に際しての前処理となる準備段階について
説明する。まず、前述したRFC Guaranteed Service
規格の式(1)における、パラメータR、即ち通信サー
バ10自体に依存するサービスレートは、遅延時間制御
の対象となる通信パスに対して通信サーバ10毎に設定
されるトークンバケットレートであると解釈可能なもの
である。そこで、当該パラメータを[ R=r ]と固定
化することにより設定値を必要以上に大きくしないとい
う条件を想定する。
Next, a description will be given of a preparatory step which is a pre-processing for constructing the data communication system 1 in the present embodiment. First, the above-mentioned RFC Guaranteed Service
In the equation (1) of the standard, the parameter R, that is, the service rate depending on the communication server 10 itself is interpreted as a token bucket rate set for each communication server 10 for a communication path to be subjected to delay time control. It is possible. Therefore, a condition is assumed in which the parameter is fixed to [R = r] so that the set value is not increased more than necessary.

【0040】もし、パラメータRの指定があれば、要求
に係る送信元インタフェース〜受信先インタフェース間
のパケット遅延時間を算出するために当該パラメータを
使用することもあるが、本実施形態のデータ通信システ
ム1では、サービスレートの過剰確保を防ぐために、パ
ラメータRを用いずに通信パスにおける平均転送率(転
送レート)であるパラメータrを用いるものとする。
If the parameter R is specified, the parameter R may be used to calculate the packet delay time between the source interface and the destination interface according to the request. In No. 1, in order to prevent the service rate from being excessively secured, the parameter r, which is the average transfer rate (transfer rate) in the communication path, is used without using the parameter R.

【0041】この条件下では、データ通信システム1全
体の総キューイング遅延時間を表すパラメータDtot以
外の各パラメータは、通信パス成立時に伴って決定され
るものとなる。即ち、パラメータDtotは、該通信パス
上における通信サーバ10毎のパラメータDの総和であ
ることから、各通信サーバ10におけるパラメータDに
ついての最大値を制御することが、該通信パスの遅延時
間制御であると換言できるものとなる。
Under this condition, each parameter other than the parameter Dtot indicating the total queuing delay time of the entire data communication system 1 is determined when the communication path is established. That is, since the parameter Dtot is the sum of the parameters D for each communication server 10 on the communication path, controlling the maximum value of the parameter D in each communication server 10 is controlled by the delay time control of the communication path. It can be paraphrased.

【0042】このパラメータDは、具体的には、通信サ
ーバ10内で、送信対象となる特定のパケットが、送信
キュー17へのキューイングが先行してなされた他のパ
ケット群に起因して送信を待機しなければならないよう
な「送信に要する待ち時間の合計」、所謂、通信サーバ
10毎のキューイング遅延時間を表すものであり、最悪
のケースでは、当該通信サーバ10に対応する総通信パ
スの遅延時間を要することになる。
Specifically, the parameter D is transmitted within the communication server 10 when a specific packet to be transmitted is transmitted due to another packet group that has been queued in the transmission queue 17 in advance. Represents the “total waiting time required for transmission” that must wait for the communication server 10, that is, the queuing delay time of each communication server 10, and in the worst case, the total communication path corresponding to the communication server 10. Requires a delay time.

【0043】ここで、通信パスにおけるクライアント2
0またはサーバ30からの要求遅延時間を「Dreq」と
すれば、データ通信システム1全体の総キューイング遅
延時間Dtotは、以下の式(5)により算出される。 式(5) Dtot=Dreq−b/r−Ctot/r
Here, the client 2 on the communication path
Assuming that the request delay time from 0 or the server 30 is “Dreq”, the total queuing delay time Dtot of the entire data communication system 1 is calculated by the following equation (5). Formula (5) Dtot = Dreq−b / r−Ctot / r

【0044】通信サーバ10が複数台配備されたデータ
通信システム1では、算出後のパラメータDtotは、該
台数に基づいて分配される。例えば、通信パス中におい
て通信サーバ10が4台あり、パラメータDtotが80
0msであったとすれば、パラメータDを200msと
して一つの通信サーバ10毎に分配すれば良く、パラメ
ータDは、パラメータDtotに基づいた各通信サーバ1
0毎に依存する遅延時間とみなすことができる。なお、
この分配手法としては、例えば、要求された通信品質を
満たす通信経路の最適探索を行う公知のQoSルーティ
ングの一部として実現可能である。このことから、分配
された通信サーバ10毎のキューイング遅延時間である
パラメータDは、送信キュー17における割り込み型パ
ケットスケジューリングの制御パラメータとして利用可
能となる。
In the data communication system 1 in which a plurality of communication servers 10 are provided, the calculated parameter Dtot is distributed based on the number. For example, there are four communication servers 10 in the communication path and the parameter Dtot is 80
If it is 0 ms, the parameter D may be distributed to each communication server 10 as 200 ms, and the parameter D is set to each communication server 1 based on the parameter Dtot.
It can be regarded as a delay time that depends on 0. In addition,
This distribution method can be realized, for example, as a part of a known QoS routing for performing an optimal search for a communication path satisfying a required communication quality. Accordingly, the parameter D, which is the distributed queuing delay time for each communication server 10, can be used as a control parameter for interrupt type packet scheduling in the transmission queue 17.

【0045】また、一つの通信サーバ10におけるキュ
ーイング遅延時間を調整することは、結果的に、該通信
パスに係る環境全体の遅延時間を調整可能となるもので
ある。そこで本発明では、送信元となる通信パスからの
要求遅延時間に基づいて、相対的に小さい要求遅延時間
のパケットに対応する「送信候補キュー」は、出力キュ
ーである送信キュー17の先頭即ち出力口により近く、
一方、相対的に大きい要求遅延時間の「送信候補キュ
ー」は、送信キュー17の後方即ち出力口からより遠
い、位置を各々決定してキューイングを行うものであ
る。
Further, adjusting the queuing delay time in one communication server 10 makes it possible to adjust the delay time of the entire environment related to the communication path. Therefore, in the present invention, the “transmission candidate queue” corresponding to a packet having a relatively small request delay time is set at the head of the output queue 17, that is, the output queue, based on the request delay time from the transmission source communication path. Closer to the mouth,
On the other hand, the “transmission candidate queue” having a relatively large required delay time determines a position behind the transmission queue 17, that is, a position farther from the output port, and performs queuing.

【0046】また、パケットの発生源となる送信元のク
ライアント20またはサーバ30において、前述の式
(1)で示される各パラメータのうち、「r」、
「b」、「m」、「M」のトークンバケットに関連する
パラメータ群は最低限、定義及び指定を行う必要があ
る。もし、これらの指定がなされない場合には、割り込
み型パケットスケジューリングの対象とはならないパケ
ット群が発生してしまうために、上記「r」、「b」、
「m」、「M」のトークンバケットに関連するパラメー
タ群には各値が定義または指定済みであるものとする。
In the transmission source client 20 or server 30, which is a packet generation source, “r”, “r”,
The parameters related to the token buckets “b”, “m”, and “M” need to be defined and specified at a minimum. If these designations are not made, a packet group that is not targeted for interrupt-type packet scheduling will be generated, and the above “r”, “b”,
It is assumed that each value is defined or specified in the parameter group related to the token buckets “m” and “M”.

【0047】また、送信キュー17自体の構成に依存し
て決定される、送信キュー17におけるバッファサイズ
(パラメータB_transmit)は、当該通信サーバ10で発
生する最大キューイング遅延時間を与える要素となるも
のであり、遅延時間制御対象となる通信パスのトークン
バケットサイズbの総和は、パラメータB_transmitより
小さい値に設定するものである。具体的には、受信キュ
ー処理部14における帯域制御、即ちリキーバケットフ
ィルタ付トークンバケットで整形された場合であって
も、タイミングに起因して受信キュー12または帯域制
御受信キュー15から送信キュー17へ移動するパケッ
ト量が、送信キュー17内部でトークンバケットサイズ
bを超過するような状況が発生する場合がある。
The buffer size (parameter B_transmit) in the transmission queue 17, which is determined depending on the configuration of the transmission queue 17 itself, is an element that gives the maximum queuing delay time generated in the communication server 10. In addition, the sum of the token bucket sizes b of the communication paths to be controlled with the delay time is set to a value smaller than the parameter B_transmit. Specifically, even if the bandwidth is controlled by the reception queue processing unit 14, that is, even if the packet is shaped by the token bucket with the rekey bucket filter, the transmission queue 17 is transferred from the reception queue 12 or the bandwidth control reception queue 15 due to the timing. There may be a case where the amount of packets to be moved exceeds the token bucket size b inside the transmission queue 17.

【0048】このような状況下に対処するために、送信
キュー17のバッファサイズを、すべての通信パスが必
要とするトークンバケットサイズ(バーストサイズ)b
の総和以上に設定して構成することにより、送信キュー
17でのパケット落ちが回避可能となる。なお、通信サ
ーバ10一台における最大パケットサイズMの許容値
は、当該通信サーバ10で実現可能な最小キューイング
遅延時間と、パラメータCtotを与えるものであり、
必要以上に大きくしないことが望ましい。この最大パケ
ットサイズMは、OSI参照モデルにおける物理及びデ
ータリンク層のMTU(Maximum Transmit Unit)を用
いるのが一般的である。以上の説明に基づいた、通信サ
ーバ10の構成概念図を図4に示す。
In order to cope with such a situation, the buffer size of the transmission queue 17 is set to the token bucket size (burst size) b required by all communication paths.
, It is possible to avoid a packet drop in the transmission queue 17. Note that the allowable value of the maximum packet size M in one communication server 10 gives the minimum queuing delay time achievable by the communication server 10 and the parameter Ctot,
It is desirable not to make it larger than necessary. The maximum packet size M generally uses the MTU (Maximum Transmit Unit) of the physical and data link layers in the OSI reference model. FIG. 4 shows a conceptual diagram of the configuration of the communication server 10 based on the above description.

【0049】次に、割り込み型パケットスケジューリン
グについて説明する。図5は、パケット管理処理部16
において、送信キュー17に対するスケジューリング対
象となる「送信候補キュー」の挿入及び削除を表す概念
図である。図中の(II)は、「b0」のキューの大きさ
から成る新たな要求遅延時間に対応する「送信候補キュ
ー」を、適切な配置対象位置へ挿入後の送信キュー17
における配列を示しており、当該要求遅延時間に対応す
るような「既存送信候補キュー」の先頭位置から送信キ
ュー17の出力口までの区間であればすべて適切な配置
対象位置とするものである。一方、図中の(I)は、当
該「送信候補キュー」の挿入以前、または当該「送信候
補キュー」を削除後の、送信キュー17における「既存
送信候補キュー」群の配列を示すものである。
Next, interrupt type packet scheduling will be described. FIG. 5 shows the packet management processing unit 16.
3 is a conceptual diagram showing insertion and deletion of a “transmission candidate queue” to be scheduled with respect to a transmission queue 17. (II) in the figure shows the transmission queue 17 after inserting the “transmission candidate queue” corresponding to the new request delay time consisting of the queue size of “b 0 ” into the appropriate placement target position.
In the section from the head position of the “existing transmission candidate queue” corresponding to the request delay time to the output port of the transmission queue 17, all the arrangement positions are appropriate. On the other hand, (I) in the figure shows an array of “existing transmission candidate queues” in the transmission queue 17 before the insertion of the “transmission candidate queue” or after the deletion of the “transmission candidate queue”. .

【0050】この「送信候補キュー」の挿入処理は、例
えば、以下に示す手順に基づいて行われる。 (A)新たな要求遅延時間に係る「送信候補キュー」
の、送信キュー17における挿入すべき配置対象区間
(Insert_Length)をパラメータDに基づいて算出す
る。具体的には、以下の式(6)及び(7)に示す Ins
ert_Length_Head(以下、ILH)と Insert_Length_Ta
il(以下、ILT)との各パラメータから配置対象区間
が得られるものである。
The process of inserting the “transmission candidate queue” is performed based on, for example, the following procedure. (A) “Transmission candidate queue” related to new request delay time
Of the transmission queue 17 to be inserted (Insert_Length) is calculated based on the parameter D. Specifically, Ins shown in the following equations (6) and (7)
ert_Length_Head (ILH) and Insert_Length_Ta
The allocation target section is obtained from each parameter of il (hereinafter, ILT).

【0051】式(6) Insert_Length_Head(ILH)=I
nterface_Rate×D−b 式(7) Insert_Length_Tail(ILT)=Interface_Rat
e×D
Equation (6) Insert_Length_Head (ILH) = I
nterface_Rate × D−b Expression (7) Insert_Length_Tail (ILT) = Interface_Rat
e × D

【0052】この場合の「ILH」は、挿入対象となる
要求遅延時間に係る「送信候補キュー」の先頭位置を示
すものであり、一方「ILT」は、当該「送信候補キュ
ー」の末尾位置を示すものである。また、「Interface_
Rate」は、通信サーバ10における図示しない送信イン
タフェースに依存する物理的な最大送信速度を示すもの
である。
In this case, “ILH” indicates the head position of the “transmission candidate queue” related to the requested delay time to be inserted, while “ILT” indicates the tail position of the “transmission candidate queue”. It is shown. Also, "Interface_
“Rate” indicates a physical maximum transmission speed depending on a transmission interface (not shown) in the communication server 10.

【0053】なお、配置対象区間の算出に際して、パラ
メータDは当該「送信候補キュー」に対するラベルとし
て解釈し、例えば、算出された先頭位置「ILH0」と
末尾位置「ILT0」との組をキューラベルD0のパラメ
ータとする。 (B)送信キュー17に前回スケジューリング済みの
「既存送信候補キュー」群のキューラベルDinに対応
する各末尾位置「ILTin」と、挿入対象となる「送信
候補キュー」D0とのパラメータを比較する。具体的に
は、「既存送信候補キュー」群の各末尾位置「ILTi
n」のうちで、「送信候補キュー」の末尾位置以下、
即ち[ILT0≧ILTi]となる場合の末尾位置「ILT
i」に着目して、最も「送信候補キュー」の末尾位置
「ILT0」に近似する「既存送信候補キュー」の
「i」、即ちラベルを検出する。
When calculating the placement target section, the parameter D is interpreted as a label for the “transmission candidate queue”, and, for example, a set of the calculated start position “ILH 0 ” and end position “ILT 0 ” is stored in the queue. the parameters of the label D 0. (B) Each end position “ILT i -n ” corresponding to the queue label D i -n of the “existing transmission candidate queue” group previously scheduled in the transmission queue 17 and the “transmission candidate queue” D 0 to be inserted And compare the parameters. Specifically, each end position “ILT i of the“ existing transmission candidate queue ”group
~ N, below the end position of the "sending candidate queue",
That is, when [ILT 0 ≧ ILT i ], the end position “ILT 0
by focusing on the i ", the most""iof" existing transmission candidate queue "that approximates to the end position" ILT 0 "of the transmission candidate queue"", that is to detect the label.

【0054】次に、同様にして、「既存送信候補キュ
ー」群の各先頭位置のうちで、「送信候補キュー」の末
尾位置以下、即ち[ILT0≧ILHj]となる場合の先頭
位置「ILHj」に着目して、最も「送信候補キュー」
の末尾位置「ILT0」に近似する「既存送信候補キュ
ー」のラベル「j」を検出する。この検出結果が、[i
=j]となる場合、即ち、位置「ILH0」から位置「I
LT0」までの区間に存する「既存送信候補キュー」に
依存することなく「送信候補キュー」の挿入が可能とな
る場合には、「送信候補キュー」のパラメータDに変化
はなく、図5に示すような挿入形態となる。この図で
は、後述する「既存送信候補キュー」群の間隙を詰める
ことにより、「送信候補キュー」の配置対象区間に存在
していたすべての「既存送信候補キュー」群が当該配置
対象区間より前方に移動され、「送信候補キュー」の挿
入が行われたことを表している。
Next, similarly, of the head positions of the “existing transmission candidate queues” group, the head position of the “transmission candidate queue” is equal to or less than the tail position of the “transmission candidate queue”, ie, the head position “ILT 0 ≧ ILH j ” Focusing on “ILH j ”, the most “transmission candidate queue”
The label “j” of the “existing transmission candidate queue” that is close to the end position “ILT 0 ” of the is detected. The result of this detection is [i
= J], that is, from the position “ILH 0 ” to the position “I
When it becomes possible to insert the “transmission candidate queue” without depending on the “existing transmission candidate queue” existing in the section up to “LT 0 ”, the parameter D of the “transmission candidate queue” does not change. The insertion form is as shown. In this figure, by closing the gaps of the “existing transmission candidate queues” group described later, all the “existing transmission candidate queues” existing in the allocation target section of the “transmission candidate queue” are located ahead of the allocation target section. To indicate that the “transmission candidate queue” has been inserted.

【0055】一方、[i≠j]となる場合には、位置「I
LH0」から位置「ILT0」までの区間に存在する「既
存送信候補キュー」群に起因して、「送信候補キュー」
の末尾及び先頭位置を変更する必要がある。この場合の
挿入イメージを図6の概念図に示す。この図では、図5
と同様の「送信候補キュー」が、後述の間隙を詰める処
理によっても、当該配置対象区間に「既存送信候補キュ
ー」群が存在しているために、平行四辺形で表される形
状の底辺位置へ配置対象区間を変更してパラメータDを
変更することを表している。具体的には、「送信候補キ
ュー」の末尾位置を「ILT0=ILHj」、先頭位置を
「ILH0=ILT0−b」に変更して入れ替えるもので
ある。
On the other hand, when [i ≠ j], the position “I
Due to the group of “existing transmission candidate queues” existing in the section from “LH 0 ” to the position “ILT 0 ”, the “transmission candidate queue”
It is necessary to change the end position and start position of. An insertion image in this case is shown in the conceptual diagram of FIG. In this figure, FIG.
Since the “transmission candidate queue” similar to the above also has the “existing transmission candidate queue” group in the placement target section by the process of filling the gap described later, the base position of the shape represented by the parallelogram Indicates that the parameter D is changed by changing the allocation target section. Specifically, the end position of the “transmission candidate queue” is changed to “ILT 0 = ILH j ”, and the start position is changed to “ILH 0 = ILT 0 −b”.

【0056】この入れ替えに際しては、「送信候補キュ
ー」と近似する「既存送信候補キュー」の末尾位置「I
LTi」から、送信キュー17の出力口までの部分に存
する「既存送信候補キュー」が配置されていない、所謂
「すきま」(以下、間隙)に着目する。この部分に存す
るすべての間隙の合計値がトークンバケットサイズであ
るパラメータb以上であるならば、「送信候補キュー」
0は、送信キュー17に対して挿入可能となるもので
ある。換言すれば、送信キュー17における間隙合計値
がパラメータb以上とならない場合には、「送信候補キ
ュー」D0は「要求遅延時間を満たせない」ことを意味
するものであり、現時点での送信キュー17におけるス
ケジューリングは不可能となる。なお、間隙の合計は、
以下に示す式(8)で算出できる。
At the time of this replacement, the end position “I” of the “existing transmission candidate queue” which is similar to the “transmission candidate queue”
Attention is paid to a so-called “clearance” (hereinafter, gap) in which the “existing transmission candidate queue” existing in a portion from “LT i ” to the output port of the transmission queue 17 is not arranged. If the sum of all the gaps in this part is equal to or larger than the token bucket size parameter b, the “transmission candidate queue”
D 0 can be inserted into the transmission queue 17. In other words, if the total gap value in the transmission queue 17 does not exceed the parameter b, the “transmission candidate queue” D 0 means that “the required delay time cannot be satisfied”, and the transmission queue The scheduling at 17 becomes impossible. Note that the total gap is
It can be calculated by the following equation (8).

【0057】式(8) 間隙の合計 Equation (8): Total gap

【0058】(C)送信キュー17において、何番目の
「既存送信候補キュー」Dnまでが出力口方向に再配列
可能かを算出する。これは、上記手順(B)において、
間隙合計値がパラメータb以上となる位置から、送信キ
ュー17の出力口までの区間に存する「既存送信候補キ
ュー」群の各末尾位置「ILT」及び先頭位置[IL
H」を変更して「送信候補キュー」の配置対象区間を確
保するためである。以下に示すプログラム1及び2は、
この入れ替え処理をプログラミング言語に「C言語」を
用いて記述した場合のインプリメント例である。
(C) In the transmission queue 17, it is calculated how many “existing transmission candidate queues” D n can be rearranged in the output port direction. This is based on the above procedure (B).
Each end position “ILT” and start position [IL of the “existing transmission candidate queues” in the section from the position where the total gap value is equal to or larger than the parameter b to the output port of the transmission queue 17
H ”is changed to secure a section to be arranged in the“ transmission candidate queue ”. Programs 1 and 2 shown below are:
This is an example of implementation in a case where this replacement process is described using “C language” as a programming language.

【0059】 「プログラム1」 offset=(ILT0−ILTi); sum=offset; for(index=i;index≦n;index++){ if(index==n)ILTindex+1=0; sum=sum+(ILHindex−ILTindex+1); if(sum≧b)break; }“Program 1” offset = (ILT 0 −ILT i ); sum = offset; for (index = i; index ≦ n; index ++) {if (index == n) ILT index + 1 = 0; sum = sum + (ILH index− ILT index + 1 ); if (sum ≧ b) break;}

【0060】上記プログラム1では、間隙合計値を変数
sumを用いて算出しており、for文中でループする
「i〜index」、即ち「既存送信候補キュー」Di
ind exまでが「送信候補キュー」の挿入により影響を
受ける入れ替えの対象となる。各先頭位置ILHi
index、及び末尾位置ILTiindexの値は、以下のプ
ログラム2に基づいて変更され、送信キュー17におけ
る出力口方向へ再配列される。
In the above program 1, the total gap value is calculated using the variable sum, and " i- index" loops in the for statement, that is, the "existing transmission candidate queue" Di.
Up to ~ ind ex is the replacement of the object affected by the insertion of "transmission candidate queue". Each head position ILH i ~
The index and the values of the end positions ILT i to index are changed based on the following program 2 and rearranged toward the output port in the transmission queue 17.

【0061】「プログラム2」 b=ILTi−ILHi; ILTi=ILH0; ILHi=ILTi−b; for(j=j+1;j≦index;j++){ b=ILTj−ILHj; ILTj=ILHj-1; ILHj=ILTj−b; }[0061] "Program 2" b = ILT i -ILH i; ILT i = ILH 0; ILH i = ILT i -b; for (j = j + 1; j ≦ index; j ++) {b = ILT j -ILH j; ILT j = ILH j-1 ; ILH j = ILT j −b;}

【0062】上記プログラム2では、「送信候補キュ
ー」の先頭位置から送信キュー17の出力口までの区間
に位置する「既存送信候補キュー」群の各位置を、各々
出力口方向に存在する間隙を詰めることにより再配列を
行い、「送信候補キュー」の配置対象区間を確保する処
理を示している。
In the above program 2, the positions of the “existing transmission candidate queues” located in the section from the head position of the “transmission candidate queue” to the output port of the transmission queue 17 are set to the gaps existing in the direction of the output port. A process is shown in which the rearrangement is performed by stuffing and the allocation target section of the “transmission candidate queue” is secured.

【0063】(D)上記手順(A)〜(C)により、キ
ューラベルD0の「送信候補キュー」が送信キュー17
における配置対象区間に挿入されてスケジューリングが
完了され、キューイング遅延時間Dの要求が受理され
る。該処理の完了により、キューラベルD0の「送信候
補キュー」に対応する遅延時間制御の対象となるパケッ
ト群は、送信キュー17においてキューイング状態とな
る。
(D) By the above procedures (A) to (C), the “transmission candidate queue” of the queue label D 0 is changed to the transmission queue 17.
, The scheduling is completed and the request for the queuing delay time D is accepted. Upon completion of the process, a packet group to be subjected to delay time control corresponding to the “transmission candidate queue” of the queue label D 0 enters a queuing state in the transmission queue 17.

【0064】また、パケット管理処理部16は、送信キ
ュー17にスケジューリングされた「送信候補キュー」
の削除も可能に構成される。この遅延時間制御キューの
削除は、通信パスにおけるクライアント20またはサー
バ30よりなされる、遅延時間制御の対象となるパケッ
トに対する無効化の指定を契機に行われるものである。
なお、該無効化の指定は、例えば、受信処理部11にお
いて検出されるように適宜構成すれば良い。
Further, the packet management processing section 16 executes the “transmission candidate queue” scheduled in the transmission queue 17.
Can be deleted. The deletion of the delay time control queue is performed when the client 20 or the server 30 on the communication path specifies invalidation of a packet to be subjected to delay time control.
The designation of the invalidation may be appropriately configured so as to be detected by the reception processing unit 11, for example.

【0065】遅延時間制御キューの削除処理は、具体的
には、上述した「送信候補キュー」の挿入処理の逆手順
に基づくものであり、削除対象となる「送信候補キュ
ー」の挿入に伴って影響を及ぼされた「既存送信候補キ
ュー」群を元の位置に復元するものである。「送信候補
キュー」の挿入により再配列された「既存送信候補キュ
ー」群は、当該「送信候補キュー」が削除されることに
より、挿入以前の配列に戻されて送信キュー17におけ
る間隙も確保されるようになる。
The process of deleting the delay time control queue is based on a reverse procedure of the process of inserting the “transmission candidate queue” described above, and accompanying the insertion of the “transmission candidate queue” to be deleted. The affected "existing transmission candidate queue" group is restored to the original position. The “existing transmission candidate queues” group rearranged by the insertion of the “transmission candidate queues” are returned to the arrangement before the insertion and the gap in the transmission queue 17 is also secured by deleting the “transmission candidate queues”. Become so.

【0066】図7は、割り込み型パケットスケジューリ
ング〜送信処理における動作を表す概念図である。送信
キュー17のスケジューリングは、より小さいキューラ
ベル値が優先される「プライオリティキューイング」に
基づくものである。具体的には、スケジューリング後の
送信キュー17に配列されたすべてのキュー群Dnのう
ち、先頭位置「ILH」が相対的に最小となる「送信候
補キュー」に対応するパケット群が優先的に、先頭から
順に送信処理部18における送信対象となるものであ
る。
FIG. 7 is a conceptual diagram showing operations in the interrupt type packet scheduling to transmission processing. The scheduling of the transmission queue 17 is based on "priority queuing", in which a smaller queue label value is prioritized. Specifically, of all the queue groups Dn arranged in the transmission queue 17 after scheduling, the packet group corresponding to the “transmission candidate queue” in which the head position “ILH” is relatively minimized preferentially, The data is to be transmitted by the transmission processing unit 18 in order from the top.

【0067】また、送信キュー17において遅延時間制
御の対象となる「送信候補キュー」がない場合には、
「帯域制御キュー」に対応するパケット群が先頭から順
に送信対象となる。さらに、「送信候補キュー」及び
「帯域制御キュー」がない場合には、「デフォルトキュ
ー」に対応するパケット群が先頭から順に送信対象とな
る。このことから、任意のキューのパケットを送信後の
送信キュー17では、次回に送信対象となるキューに対
応するパケット群が最も優先度の高いものとなる。
If there is no “transmission candidate queue” to be subjected to delay time control in the transmission queue 17,
Packet groups corresponding to the “bandwidth control queue” are to be transmitted sequentially from the top. Further, when there is no “transmission candidate queue” and “bandwidth control queue”, a packet group corresponding to the “default queue” becomes a transmission target in order from the top. From this, in the transmission queue 17 after transmitting the packet of the arbitrary queue, the packet group corresponding to the queue to be transmitted next has the highest priority.

【0068】送信処理部18は、パケット管理処理部1
6と共動するものであり、送信キュー17において先頭
位置「ILH」が最小となる「送信候補キュー」に対応
するパケット群をすべて送信する。該送信時に、当該
「ILH」よりも小さい値の新たな「送信候補キュー」
が送信キュー17にスケジューリングされた場合には、
この新規「送信候補キュー」に対応するパケットを優先
的に送信する(図7(1)〜(3))。
The transmission processing unit 18 is provided with the packet management processing unit 1
6, and transmits all the packet groups corresponding to the “transmission candidate queue” in which the head position “ILH” in the transmission queue 17 is minimum. At the time of the transmission, a new “transmission candidate queue” having a value smaller than the “ILH”
Is scheduled in the transmission queue 17,
The packet corresponding to the new “transmission candidate queue” is transmitted with priority (FIGS. 7A to 7C).

【0069】すべての「送信候補キュー」に対応するパ
ケット群が送信完了後、次に送信処理部18は、送信キ
ュー17における「帯域制御キュー」に対応するパケッ
トを選択して送信する(図7(4))。また、「帯域制
御キュー」に対応するパケット群の送信が完了すれば、
送信処理部18は、「デフォルトキュー」に対応するパ
ケット群の送信を行う(図7(5))。
After the transmission of all the packets corresponding to the “transmission candidate queue” is completed, the transmission processing unit 18 selects and transmits the packet corresponding to the “bandwidth control queue” in the transmission queue 17 (FIG. 7). (4)). Also, when the transmission of the packet group corresponding to the “bandwidth control queue” is completed,
The transmission processing unit 18 transmits a packet group corresponding to the “default queue” (FIG. 7 (5)).

【0070】なお、「帯域制御キュー」及び「デフォル
トキュー」に対応するパケット送信時においても上述と
同様に、新規「送信候補キュー」がスケジューリングさ
れた場合には、「送信候補キュー」が優先的に送信され
る。このことから、送信処理部18では、送信キュー1
7における「送信候補キュー」、「帯域制御キュー」、
「デフォルトキュー」の順序から成る優先順位に基づい
た送信となる。
As described above, when a new “transmission candidate queue” is scheduled even when transmitting packets corresponding to the “bandwidth control queue” and the “default queue”, the “transmission candidate queue” has priority. Sent to. From this, the transmission processing unit 18 transmits the transmission queue 1
7, "transmission candidate queue", "bandwidth control queue",
The transmission is based on the priority order consisting of the order of the "default queue".

【0071】このように、本実施形態のデータ通信シス
テム1では、遅延時間を定量的に把握することが可能と
なることから、従来手法のように、サービスレート即ち
パラメータRを大きく設定する必要がなくなるととも
に、平均転送率(転送レート)に着目した遅延時間表現
を行うことにより、実際の必要帯域よりも過剰な帯域を
消費してしまうという危険性が回避できる。
As described above, in the data communication system 1 according to the present embodiment, the delay time can be quantitatively grasped. Therefore, it is necessary to set the service rate, that is, the parameter R to a large value as in the conventional method. In addition, by performing the delay time expression focusing on the average transfer rate (transfer rate), it is possible to avoid the danger of consuming an excessive bandwidth than the actual required bandwidth.

【0072】また、通信パス数の増減に対応して値が変
化する変数パラメータDtot、即ちデータ通信システ
ム1全体の総キューイング遅延時間は、上限値を、平均
転送率に固定化したサービスレートに基づいて決定可能
なことから、総キューイング遅延時間Dtotの変動す
る範囲を当該上限値以内に抑制できる。このことによ
り、通信パスが増加した場合に、制御対象以外の通信パ
スからの影響による遅延時間等の増加が回避できる。
The variable parameter Dtot whose value changes in accordance with the increase or decrease in the number of communication paths, that is, the total queuing delay time of the entire data communication system 1 is set to a service rate in which the upper limit is fixed to the average transfer rate. Since it can be determined based on this, the range in which the total queuing delay time Dtot fluctuates can be suppressed within the upper limit. As a result, when the number of communication paths increases, it is possible to avoid an increase in delay time and the like due to influences from communication paths other than the control target.

【0073】また、特定のインタフェースに集中する各
通信パスからのバースト入力に伴う、一時的に物理的な
帯域を超過してしまうような輻輳を回避できることか
ら、通信パスの割り当て帯域やキュー長に依存すること
なく発生していた累積的な遅延が解消され、データ通信
に係る処理時間を効果的に制御可能となる。このことか
ら、ネットワーク上のパケットに係る遅延に着目した通
信品質管理が可能となることにより、さらに、データ通
信及びシステム全体に係るスループットを一定値以上維
持することが可能になり、通信品質、信頼性及び実用性
が大幅に向上する効果がある。
Further, since it is possible to avoid congestion that temporarily exceeds the physical bandwidth due to burst input from each communication path concentrated on a specific interface, the allocated bandwidth and queue length of the communication path are reduced. The accumulated delay that has occurred without depending on the data communication is eliminated, and the processing time related to the data communication can be effectively controlled. From this, it becomes possible to perform communication quality management focusing on delays related to packets on the network, and further, it is possible to maintain data communication and throughput relating to the entire system to a certain value or more, thereby improving communication quality and reliability. This has the effect of greatly improving the performance and practicality.

【0074】(第2実施形態)上記実施形態における通
信サーバ10は、例えば、スタンドアロン型のコンピュ
ータ装置を用いた通信制御装置として実施することも可
能である。この場合の通信制御装置における構成例とし
ては、スタンドアロン型のコンピュータ装置を用いて、
上記データ通信システム1の通信サーバ10と同一の機
能ブロック群を具備して構成する。
(Second Embodiment) The communication server 10 in the above embodiment can be implemented as, for example, a communication control device using a stand-alone computer device. As a configuration example in the communication control device in this case, using a stand-alone computer device,
The communication system 10 includes the same functional block group as the communication server 10 of the data communication system 1.

【0075】この通信制御装置と通信サーバ10が相違
する点は、サイトにおけるネットワーク管理サーバ等に
接続して使用する通信機器、所謂、単体のルータとして
機能するように構成する点であり、回線状況、及びパケ
ットの送受信状況等を、例えば、接続するネットワーク
管理サーバに対して視認可能なインタフェースや、LE
D等のインジケータを用いることにより提示するように
構成する。このように可搬な単体のルータとして構成す
ることにより、サイトにおけるデータ通信環境が柔軟且
つ容易に構築可能となるとともに、上記データ通信シス
テム1と同等の効果を得ることが可能となる。
The difference between the communication control device and the communication server 10 is that the communication control device and the communication server 10 are configured so as to function as a communication device connected to a network management server or the like at the site, that is, a so-called single router. , And the packet transmission / reception status, for example, an interface visible to a network management server to be connected,
It is configured to be presented by using an indicator such as D. By configuring as a single portable router in this way, the data communication environment at the site can be flexibly and easily constructed, and the same effect as the data communication system 1 can be obtained.

【0076】[0076]

【発明の効果】以上の説明から明らかなように、本発明
のパケット管理方法によれば、ネットワーク環境下にお
いて、パケットに対する遅延時間を定量的且つ動的に制
御可能となることから、例えば、QoSルーティング等
の通信品質管理における重要な指標の一つとして利用可
能となる効果がある。また、本発明を適用して構築した
通信制御装置及びデータ通信システムによれば、レスポ
ンス時間に制約のある、例えば、リアルタイム性が重視
されるネットワーク環境下において、効率的なパケット
管理による最適なパケットの遅延時間が提供可能とな
る、データ通信環境が実現される効果がある。また、本
発明の記録媒体によれば、上記パケット管理方法等によ
る効果が、汎用のコンピュータ装置上で容易に実現可能
となる効果がある。
As is apparent from the above description, according to the packet management method of the present invention, it is possible to quantitatively and dynamically control the delay time of a packet in a network environment. There is an effect that it can be used as one of important indicators in communication quality management such as routing. Further, according to the communication control device and the data communication system constructed by applying the present invention, the optimal packet by the efficient packet management in the network environment where the response time is restricted, for example, in a network environment where real-time property is emphasized, This provides an effect of realizing a data communication environment in which delay time can be provided. Further, according to the recording medium of the present invention, there is an effect that the effects of the packet management method and the like can be easily realized on a general-purpose computer device.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態におけるデータ通信システ
ムの機能ブロック図。
FIG. 1 is a functional block diagram of a data communication system according to an embodiment of the present invention.

【図2】通信サーバにおける処理手順図。FIG. 2 is a processing procedure diagram in the communication server.

【図3】通信サーバにおける処理手順図。FIG. 3 is a processing procedure diagram in the communication server.

【図4】通信サーバにおける構成概念図。FIG. 4 is a conceptual diagram of a configuration in a communication server.

【図5】送信キューに対するキューの挿入及び削除を表
す概念図。
FIG. 5 is a conceptual diagram illustrating insertion and deletion of a queue with respect to a transmission queue.

【図6】送信キューに対するキューの挿入イメージを表
す概念図。
FIG. 6 is a conceptual diagram illustrating a queue insertion image into a transmission queue.

【図7】割り込み型パケットスケジューリング〜送信処
理における動作を表す概念図。
FIG. 7 is a conceptual diagram showing operations in interrupt type packet scheduling to transmission processing.

【符号の説明】[Explanation of symbols]

1 データ通信システム 10 通信サーバ 11 受信処理部 12 受信キュー 13 デフォルトキュー 14 受信キュー処理部 15 帯域制御受信キュー 16 パケット管理処理部 17 送信キュー 18 送信処理部 20 クライアント 30 サーバ L 公衆網 DESCRIPTION OF SYMBOLS 1 Data communication system 10 Communication server 11 Reception processing unit 12 Reception queue 13 Default queue 14 Reception queue processing unit 15 Band control reception queue 16 Packet management processing unit 17 Transmission queue 18 Transmission processing unit 20 Client 30 Server L Public network

Claims (22)

【特許請求の範囲】[Claims] 【請求項1】 発信時点までの遅延時間制御の対象とな
るパケットの要求遅延時間に基づいて当該パケットの送
信キューに対する相対的な挿入先頭位置及び挿入末尾位
置を算出して配置対象区間を特定する過程と、 算出された挿入末尾位置から前記送信キューの先頭まで
の区間における間隙の総和を算出する過程と、 算出された間隙の総和がパケットサイズ以上である場合
に前記配置対象区間を確保してパケット挿入及びパケッ
ト配列を行う過程と、を含み、 前記送信キューのスケジューリングに前記要求遅延時間
を動的に反映させることを特徴とするパケット管理方
法。
1. A placement target section is specified by calculating a relative insertion start position and an insertion end position of a packet to a transmission queue based on a required delay time of a packet to be subjected to delay time control up to a transmission time point. A step of calculating the sum of gaps in a section from the calculated insertion end position to the head of the transmission queue; and securing the allocation target section when the calculated sum of gaps is equal to or larger than the packet size. Performing a packet insertion and a packet arrangement, wherein the request delay time is dynamically reflected in scheduling of the transmission queue.
【請求項2】 前記確保した配置対象区間に既に他のパ
ケットが存在する場合、前記挿入末尾位置を前記他のパ
ケットの先頭位置に変更するとともに、該変更後の挿入
末尾位置からパケットサイズを差分した位置に前記挿入
先頭位置を変更して前記配置対象区間を動的に変更する
ことを特徴とする請求項1記載のパケット管理方法。
2. If another packet already exists in the secured placement target section, the insertion end position is changed to the start position of the other packet, and the packet size is changed from the insertion end position after the change. 2. The packet management method according to claim 1, wherein the insertion start position is changed to a set position, and the placement target section is dynamically changed.
【請求項3】 通信品質保証を要するパケット群から発
信時点までの遅延時間制御の対象となる1または2以上
のパケットを選別して保持するパケット処理手段と、 前記保持された個々のパケットに対する要求遅延時間に
基づいてそれぞれ対応する送信キューのスケジューリン
グを行うパケット管理手段と、 前記スケジューリングされた送信キューに対応するパケ
ットを所定順に送信するパケット送信手段とを備え、 前記パケットの選別後、当該パケットの送信までの制御
を動的に行うことを特徴とする通信制御装置。
3. A packet processing means for selecting and holding one or more packets to be subjected to delay time control from a packet group requiring communication quality assurance to a transmission time point, and a request for the held individual packets. Packet management means for scheduling transmission queues respectively corresponding to the delay time; and packet transmission means for transmitting packets corresponding to the scheduled transmission queues in a predetermined order. A communication control device for dynamically performing control up to transmission.
【請求項4】 送信元からのパケット群を送信キューに
スケジューリングして受信先へ送信するための通信制御
装置であって、 前記送信元からのパケット群のうち通信品質保証の対象
となるパケットから、発信時点までの遅延時間制御及び
帯域制御の対象となる1または2以上のパケットを特定
して所定の帯域制御を施すとともに、遅延時間制御の対
象となるパケット、帯域制御のみの対象となるパケッ
ト、通信品質保証の対象外となるパケットを各々選別し
て保持するパケット処理手段と、 前記遅延時間制御の対象となるパケットに対応する送信
候補キューの要求遅延時間に基づいて、前記送信キュー
における当該送信候補キューの相対的な配置対象区間を
特定し、当該配置対象区間に基づいて前記送信候補キュ
ーのスケジューリングを行うとともに、前記送信候補キ
ュー、前記帯域制御のみのパケットに対応する帯域制御
キュー、通信品質保証の対象外となるパケットに対応す
るデフォルトキューの優先順位でスケジューリングを行
い、各キューを前記送信キューに移動して配列するパケ
ット管理手段と、 前記送信キューに配列された各キューから、相対的に先
頭に位置するキューを優先的に選択して対応パケットを
前記受信先へ送信するパケット送信手段と、を備え、 キューの制御を定量的且つ動的に行うように構成されて
いることを特徴とする通信制御装置。
4. A communication control device for scheduling a packet group from a transmission source in a transmission queue and transmitting the packet to a reception destination, the communication control device comprising: One or two or more packets to be subjected to delay time control and bandwidth control up to the time of transmission are specified and subjected to predetermined bandwidth control, packets to be subjected to delay time control, and packets to be subjected only to bandwidth control A packet processing unit for selecting and holding packets that are not subject to the communication quality assurance, and based on a request delay time of a transmission candidate queue corresponding to the packet to be subjected to the delay time control, A relative allocation target section of the transmission candidate queue is specified, and the transmission candidate queue is scheduled based on the allocation target section. At the same time, scheduling is performed in the priority order of the transmission candidate queue, the band control queue corresponding to the packet only for the band control, and the default queue corresponding to the packet not subject to the communication quality guarantee, and each queue is moved to the transmission queue Packet management means for arranging the transmission queue, and a packet transmission means for preferentially selecting a queue located relatively first from the queues arranged in the transmission queue and transmitting a corresponding packet to the destination. A communication control device comprising: a queue control unit configured to quantitatively and dynamically control a queue.
【請求項5】 前記パケット処理手段は、所定の通信品
質保証ルーティングに基づくフィルタを用いて、通信品
質保証の対象となるパケットか、通信品質保証の対象外
のパケットかを判定するように構成されていることを特
徴とする請求項4記載の通信制御装置。
5. The packet processing means is configured to determine, using a filter based on a predetermined communication quality assurance routing, whether the packet is a target of communication quality assurance or a packet not of communication quality assurance. The communication control device according to claim 4, wherein:
【請求項6】 前記パケット処理手段は、前記通信品質
保証の対象となるパケットから第1の帯域制御が施され
ている第1パケットと該第1の帯域制御が施されていな
い第2パケットを特定するとともに、第2パケットに対
して第2の帯域制御を施して正規化されたトークンバケ
ットを得るように構成されていることを特徴とする請求
項4記載の通信制御装置。
6. The packet processing unit according to claim 1, further comprising: a first packet to which a first bandwidth control is applied and a second packet to which the first bandwidth control is not applied, from the packets subject to the communication quality assurance. 5. The communication control device according to claim 4, wherein the communication control device is configured to specify and perform a second bandwidth control on the second packet to obtain a normalized token bucket.
【請求項7】 前記パケット処理手段は、前記第2の帯
域制御の際にエラーとなる違反パケットを、前記通信品
質保証の対象外となるパケットとして保持するように構
成されていることを特徴とする請求項6記載の通信制御
装置。
7. The apparatus according to claim 1, wherein the packet processing unit is configured to hold a violating packet that causes an error during the second bandwidth control as a packet that is not subject to the communication quality assurance. The communication control device according to claim 6, wherein
【請求項8】 前記パケット処理手段は、予め保持され
た、遅延時間制御の指定がなされる前記送信元及び受信
先の識別情報に基づいて前記遅延時間制御の対象となる
パケットを検出するように構成されていることを特徴と
する請求項4記載の通信制御装置。
8. The packet processing unit detects a packet to be subjected to the delay time control based on identification information of the transmission source and the reception destination for which the delay time control is designated, which is held in advance. The communication control device according to claim 4, wherein the communication control device is configured.
【請求項9】 前記パケット処理手段は、前記遅延時間
制御の対象となるパケットを、当該パケットのヘッダに
付与された遅延時間制御の識別情報に基づいて検出する
ように構成されていることを特徴とする請求項4記載の
通信制御装置。
9. The packet processing means is configured to detect a packet to be subjected to the delay time control based on delay time control identification information added to a header of the packet. The communication control device according to claim 4, wherein
【請求項10】 前記パケット管理手段は、前記送信候
補キューの要求遅延時間と自装置の最大送信速度との積
から前記配置対象区間の挿入末尾位置を算出するととも
に、該挿入末尾位置から当該送信候補キューのバースト
サイズを差分して前記配置対象区間の挿入先頭位置を算
出し、前記送信キューに対する送信候補キューの相対的
な配置対象区間を特定するように構成されていることを
特徴とする請求項4記載の通信制御装置。
10. The packet management means calculates an insertion end position of the allocation target section from a product of a request delay time of the transmission candidate queue and a maximum transmission speed of the own device, and calculates the transmission end position from the insertion end position. The configuration is such that a burst size of a candidate queue is differentiated to calculate an insertion start position of the allocation target section, and a relative allocation target section of the transmission candidate queue with respect to the transmission queue is specified. Item 5. The communication control device according to item 4.
【請求項11】 前記パケット管理手段は、前記算出さ
れた挿入末尾位置から前記送信キューの先頭までの区間
において、スケジューリング済みの送信候補キューが配
置されていない間隙の総和を算出し、該間隙の総和が送
信候補キューに対応するバーストサイズ以上となる場合
に前記配置対象区間を確保して新たな送信候補キューを
挿入するように構成されていることを特徴とする請求項
4または10記載の通信制御装置。
11. The packet management means calculates a sum of gaps in which no scheduled transmission candidate queues are arranged in a section from the calculated insertion end position to the head of the transmission queue, and calculates the sum of the gaps. 11. The communication according to claim 4, wherein when the sum is equal to or larger than the burst size corresponding to the transmission candidate queue, the allocation target section is secured and a new transmission candidate queue is inserted. Control device.
【請求項12】 前記パケット管理手段は、前記送信キ
ューに新たな送信候補キューを挿入することができ且つ
当該送信候補キューの配置対象区間に既スケジューリン
グキューが存する場合に、この既スケジューリングキュ
ーを整列させた後に当該新たな送信候補キューを挿入し
てキュー再配列を行うように構成されていることを特徴
とする請求項11記載の通信制御装置。
12. The packet management means, when a new transmission candidate queue can be inserted into the transmission queue and a scheduling queue already exists in a section to be arranged for the transmission candidate queue, sorts the already scheduled scheduling queue. 12. The communication control device according to claim 11, wherein the communication control device is configured to insert the new transmission candidate queue and perform queue rearrangement after the transmission.
【請求項13】 前記パケット管理手段は、整列後の配
置対象区間に残存する既スケジューリングキューを検出
し、さらに、検出された既スケジューリングキューか
ら、その先頭位置が前記挿入末尾位置に最も近いものを
検出するとともに、前記挿入末尾位置を検出された既ス
ケジューリングキューの先頭位置に変更し、該変更後の
挿入末尾位置から当該送信候補キューに対応するバース
トサイズを差分して前記挿入先頭位置を算出することに
より、前記新たな送信候補キューの配置対象区間を変更
するように構成されていることを特徴とする請求項12
記載の通信制御装置。
13. The packet management means detects an existing scheduling queue remaining in the arrangement target section after sorting, and further determines a packet whose head position is closest to the insertion end position from the detected scheduling queue. Detecting and changing the insertion tail position to the head position of the detected scheduling queue, and calculating the insertion head position by subtracting the burst size corresponding to the transmission candidate queue from the changed insertion tail position. 13. The configuration according to claim 12, wherein the allocation target section of the new transmission candidate queue is changed.
The communication control device according to any one of the preceding claims.
【請求項14】 前記パケット管理手段は、前記送信キ
ューに配列された特定の送信候補キューに対する遅延時
間制御の無効化指定を検出した場合に、当該送信候補キ
ューを削除して前記送信キューを当該送信候補キューの
挿入以前の状態に復元するように構成されていることを
特徴とする請求項4乃至13のいずれかの項記載の通信
制御装置。
14. The packet management means, when detecting a designation of disabling delay time control for a specific transmission candidate queue arranged in the transmission queue, deletes the transmission candidate queue and deletes the transmission queue. 14. The communication control device according to claim 4, wherein the communication control device is configured to restore a state before the transmission candidate queue is inserted.
【請求項15】 前記パケット送信手段は、選択された
送信候補キュー、前記帯域制御キュー、及びデフォルト
キューのいずれかに対応するパケットを送信する際に、
当該パケットよりも前記挿入先頭位置が小さい新たな送
信候補キューが前記送信キューにスケジューリングされ
た場合、当該新たな送信候補キューに対応するパケット
を優先的に選択して送信するように構成されていること
を特徴とする請求項4記載の通信制御装置。
15. When transmitting a packet corresponding to any of the selected transmission candidate queue, the bandwidth control queue, and the default queue, the packet transmitting means includes:
When a new transmission candidate queue whose insertion head position is smaller than the packet is scheduled in the transmission queue, a packet corresponding to the new transmission candidate queue is preferentially selected and transmitted. The communication control device according to claim 4, wherein:
【請求項16】 前記送信キューの保持領域が、前記送
信候補キュー及び帯域制御キューにおけるトークンバケ
ットサイズの総和以上となるように設定されていること
を特徴とする請求項4乃至15のいずれかの項記載の通
信制御装置。
16. The transmission queue according to claim 4, wherein a holding area of the transmission queue is set to be equal to or larger than a sum of token bucket sizes in the transmission candidate queue and the bandwidth control queue. The communication control device according to the item.
【請求項17】 請求項3乃至16のいずれかの項に記
載された通信制御装置が通信回線に接続され、この通信
回線を介して流通する送信元からのパケットを前記通信
制御装置に取り込んで前記通信回線を介して対応する受
信先へ送信されるように構成されたデータ通信システ
ム。
17. The communication control device according to claim 3, wherein the communication control device is connected to a communication line, and a packet from a transmission source flowing through the communication line is taken into the communication control device. A data communication system configured to be transmitted to a corresponding destination via the communication line.
【請求項18】 前記通信制御装置自体のサービスレー
トを、前記通信回線における送信元及び受信先に各々対
応する通信経路毎の平均転送率に固定化して必要帯域を
限定させ、前記通信経路数の増減に依存して変化するシ
ステム全体の遅延時間を、前記必要帯域に基づいた範囲
内に抑制するように構成されていることを特徴とする請
求項17記載のデータ通信システム。
18. A service rate of the communication control device itself is fixed to an average transfer rate for each communication path corresponding to a transmission source and a reception destination in the communication line to limit a required band, and to reduce the number of communication paths. 18. The data communication system according to claim 17, wherein a delay time of the entire system, which changes depending on increase / decrease, is suppressed within a range based on the required bandwidth.
【請求項19】 前記通信回線に複数の前記通信制御装
置が存する場合に、前記送信元からの要求遅延時間及び
対応する通信経路の平均転送率に基づいてシステム全体
の総遅延時間を算出し、当該総遅延時間を前記通信制御
装置の台数で除算した値を、通信制御装置毎の遅延時間
として分配するとともに、 通信制御装置毎の送信キューにおける遅延時間制御の対
象となるパケットの配置対象区間を、前記分配された遅
延時間に基づいて特定するように構成されていることを
特徴とする請求項17または18記載のデータ通信シス
テム。
19. When a plurality of the communication control devices are present in the communication line, a total delay time of the entire system is calculated based on a request delay time from the transmission source and an average transfer rate of a corresponding communication path; A value obtained by dividing the total delay time by the number of the communication control devices is distributed as a delay time for each communication control device, and a placement target section of a packet to be subjected to delay time control in a transmission queue for each communication control device is designated. 19. The data communication system according to claim 17, wherein the data communication system is configured to be specified based on the distributed delay time.
【請求項20】 前記通信制御装置がTCP/IPに準
拠した通信プロトコルに基づく装置であることを特徴と
する請求項19記載のデータ通信システム。
20. The data communication system according to claim 19, wherein said communication control device is a device based on a communication protocol conforming to TCP / IP.
【請求項21】 パケットを送信キューにスケジューリ
ングして送信するコンピュータ装置において読みとり可
能なプログラムが記録された記録媒体であって、 前記プログラムが、少なくとも、 発信時点までの遅延時間制御の対象となるパケットの要
求遅延時間に基づいて当該パケットの送信キューに対す
る相対的な挿入先頭位置及び挿入末尾位置を算出して配
置対象区間を特定する処理、 算出された挿入末尾位置から前記送信キューの先頭まで
の区間における間隙の総和を算出する処理、 算出された間隙の総和がパケットサイズ以上である場合
に前記配置対象区間を確保してパケット挿入及びパケッ
ト配列を行う処理を前記コンピュータに実行させ、前記
送信キューのスケジューリングに前記要求遅延時間を動
的に反映させるものであることを特徴とする記録媒体。
21. A recording medium on which a program readable by a computer device for scheduling and transmitting a packet to a transmission queue is recorded, wherein the program is configured to control at least a packet to be subjected to delay time control until a transmission time. A process of calculating a relative insertion start position and an insertion end position of the packet with respect to the transmission queue based on the required delay time of the packet to specify a placement target section; a section from the calculated insertion end position to the head of the transmission queue Calculating the sum of the gaps in the above, when the calculated sum of the gaps is equal to or larger than the packet size, the computer executes a process of securing the placement target section and performing packet insertion and packet arrangement, and The request delay time is dynamically reflected in scheduling. Recording medium characterized and.
【請求項22】 送信元からのパケットを送信キューに
スケジューリングして受信先へ送信するコンピュータ装
置において読みとり可能なプログラムが記録された記録
媒体であって、 前記プログラムが、 前記送信元からのパケット群のうち通信品質保証の対象
となるパケットから遅延時間制御及び帯域制御の対象と
なる1または2以上のパケットを特定して所定の帯域制
御を施す処理、 遅延時間制御の対象となるパケット、帯域制御のみの対
象となるパケット、通信品質保証の対象外となるパケッ
トを各々選別して保持する処理、 前記遅延時間制御の対象となるパケットに対応する送信
候補キューの要求遅延時間に基づいて、前記送信キュー
における当該送信候補キューの相対的な配置対象区間を
特定する処理、 特定された配置対象区間に基づいて前記送信候補キュー
のスケジューリングを行うとともに、前記送信候補キュ
ー、前記帯域制御のみのパケットに対応する帯域制御キ
ュー、通信品質保証の対象外となるパケットに対応する
デフォルトキューの優先順位でスケジューリングを行
い、各キューを前記送信キューに移動して配列する処
理、 前記送信キューに配列された各キューから、相対的に先
頭に位置するキューを優先的に選択して対応パケットを
前記受信先へ送信する処理、 を前記コンピュータ装置に実行させるものであることを
特徴とする記録媒体。
22. A recording medium on which a program readable by a computer device for scheduling a packet from a transmission source in a transmission queue and transmitting the packet to a reception destination is recorded, wherein the program is a group of packets from the transmission source. Processing for specifying one or more packets to be subjected to delay time control and band control from packets to be guaranteed for communication quality and performing predetermined band control, packets to be subjected to delay time control, band control A process of selecting and holding a packet to be subjected only to the packet and a packet to be excluded from the communication quality assurance, and transmitting the packet based on a required delay time of a transmission candidate queue corresponding to the packet to be subjected to the delay time control. A process of specifying a relative allocation target section of the transmission candidate queue in the queue, And scheduling the transmission candidate queue based on the priority of the transmission candidate queue, the band control queue corresponding to the band control only packet, and the default queue corresponding to the packet not subject to communication quality assurance. Perform a process of moving each queue to the transmission queue and arranging the queue, and, from each queue arranged in the transmission queue, preferentially select a queue located relatively first and transmit a corresponding packet to the reception destination A recording medium characterized by causing the computer device to execute the following processing.
JP04483198A 1998-02-26 1998-02-26 Packet management method, communication control device, data communication system, and recording medium Expired - Lifetime JP3895033B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04483198A JP3895033B2 (en) 1998-02-26 1998-02-26 Packet management method, communication control device, data communication system, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04483198A JP3895033B2 (en) 1998-02-26 1998-02-26 Packet management method, communication control device, data communication system, and recording medium

Publications (2)

Publication Number Publication Date
JPH11243420A true JPH11243420A (en) 1999-09-07
JP3895033B2 JP3895033B2 (en) 2007-03-22

Family

ID=12702418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04483198A Expired - Lifetime JP3895033B2 (en) 1998-02-26 1998-02-26 Packet management method, communication control device, data communication system, and recording medium

Country Status (1)

Country Link
JP (1) JP3895033B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101327638B1 (en) * 2010-04-07 2013-11-21 한국전자통신연구원 Media transmitting apparatus and packet scheduling method
US8958440B2 (en) 2002-03-08 2015-02-17 Broadcom Corporation System and method for identifying upper layer protocol message boundaries

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8958440B2 (en) 2002-03-08 2015-02-17 Broadcom Corporation System and method for identifying upper layer protocol message boundaries
KR101327638B1 (en) * 2010-04-07 2013-11-21 한국전자통신연구원 Media transmitting apparatus and packet scheduling method

Also Published As

Publication number Publication date
JP3895033B2 (en) 2007-03-22

Similar Documents

Publication Publication Date Title
US10148599B2 (en) Programmable broadband gateway hierarchical output queueing
US6154769A (en) Scheduling server requests to decrease response time and increase server throughput
US6560243B1 (en) System and method for receiver based allocation of network bandwidth
JP3953819B2 (en) Scheduling apparatus and scheduling method
CN108092888B (en) Transmission method, gateway and transmission system based on Overlay network
US6377546B1 (en) Rate guarantees through buffer management
JP4396859B2 (en) Load balancing method, node and control program
EP1303083A1 (en) Packet scheduling apparatus
KR100463697B1 (en) Method and system for network processor scheduling outputs using disconnect/reconnect flow queues
CN113746748B (en) Explicit congestion control method in named data network
KR20030045987A (en) An apparatus and method for scheduling packets by using a round robin based on credit
US20210152484A1 (en) Programmable Congestion Control
CN113543209B (en) Token scheduling-based congestion control method and device
CN109327406B (en) Method for guaranteeing service quality of service queue data packet of differential queue
JP3779860B2 (en) Connection admission control method
EP2996293B1 (en) A packet scheduling networking device for deadline aware data flows
CN108696455B (en) Method and device for processing service flow
CN114095434A (en) Method and related apparatus for controlling network congestion
JP3895033B2 (en) Packet management method, communication control device, data communication system, and recording medium
JP5087595B2 (en) Edge node, window size control method and program
Doan et al. Interplay between priority queues and controlled delay in programmable data planes
US7719986B2 (en) Bandwidth control device, computer readable recording medium storing program and method of controlling bandwidth control device
Zhang et al. Efficient data center flow scheduling without starvation using expansion ratio
CN111953598B (en) Distributed traffic forwarding method, device and system
JP2003530014A (en) Method and system for controlling the flow of a subpipe in a computer network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060725

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061017

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061115

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061213

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131222

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term