JP2005033673A - Circuit and method for packet transfer control - Google Patents

Circuit and method for packet transfer control Download PDF

Info

Publication number
JP2005033673A
JP2005033673A JP2003272879A JP2003272879A JP2005033673A JP 2005033673 A JP2005033673 A JP 2005033673A JP 2003272879 A JP2003272879 A JP 2003272879A JP 2003272879 A JP2003272879 A JP 2003272879A JP 2005033673 A JP2005033673 A JP 2005033673A
Authority
JP
Japan
Prior art keywords
flow
packet
class
information
arrival rate
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.)
Pending
Application number
JP2003272879A
Other languages
Japanese (ja)
Inventor
Takeshi Kanazawa
岳史 金澤
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003272879A priority Critical patent/JP2005033673A/en
Publication of JP2005033673A publication Critical patent/JP2005033673A/en
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To provide a packet transfer control circuit with a simple hardware configuration for performing band control on each of a plurality flows of packets, and realizing priority control simultaneously. <P>SOLUTION: The packet transfer control circuit comprises a class setting unit 133, an output queue unit 140, and an arrival rate update unit 150. The class setting unit 133 compares a flow setting information for a flow read from a flow setting information storage unit 120 with an arrival rate for the flow from a rate computing unit 132 based on the flow identified by a flow identifying unit 110, and sets up a class of the flow, to which a packet belongs, in unit of the packet. The output queue unit 140 controls output sequence for a plurality of the packets based on the class of the flow, to which the packets belong, established by the class setting unit 133. The arrival rate update unit 150 updates the arrival rate information for the flow with a predetermined timing, based on residual data amount from the output queue unit 140 and the packet arrival rate information on the flow setting information. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、入力される複数のパケットを出力回線に選択的に出力する時に前記複数のパケットの出力順序の制御を行うパケット転送制御回路及びパケット転送制御方法に関し、特に、前記複数のパケットの複数のフローの各々に対して帯域保証を行うパケット転送制御回路及びパケット転送制御方法に関する。   The present invention relates to a packet transfer control circuit and a packet transfer control method for controlling the output order of a plurality of packets when a plurality of input packets are selectively output to an output line, and more particularly to a plurality of the plurality of packets. The present invention relates to a packet transfer control circuit and a packet transfer control method for guaranteeing bandwidth for each of the flows.

近年、ADSL(Asymmetric Digital Subscriber Line)及びFTTH(Fiber To The Home)の普及によりコンシューマベースの常時接続サービスが一般化し、アクセス網のブロードバンド化が加速している。また、情報家電製品の進展及びディジタル映像配信サービスの普及に伴い、各種通信サービスに応じた通信品質の差別化要望が高まると予想されている。現在のインターネットの主流は、通信品質を保証しないベストエフォートサービスであり、トラヒックの増加及び異なる通信品質を要求するサービスの出現に伴い、ユーザ通信装置に対する通信品質の低下が問題となっている。従って、今後においては、ユーザ通信装置がパケットのフローごとにサービス種別と帯域要望を意識した高品位なQoS(Quality of Services)制御を行うことが重要であると考えられる。   In recent years, with the spread of ADSL (Asymmetric Digital Subscriber Line) and FTTH (Fiber To The Home), consumer-based always-on services have become commonplace, and broadband access networks are accelerating. In addition, with the progress of information home appliances and the spread of digital video distribution services, it is expected that demand for differentiating communication quality according to various communication services will increase. The current mainstream of the Internet is a best effort service that does not guarantee communication quality, and with the increase in traffic and the emergence of services that require different communication quality, there is a problem of deterioration in communication quality for user communication devices. Therefore, in the future, it is considered important that the user communication apparatus performs high-quality QoS (Quality of Services) control in consideration of the service type and bandwidth request for each packet flow.

更に、今後のアクセス網においては最大100Mbps〜1Gbpsといった高速な通信回線を大規模に収容することが通信システムのコストダウンの面から必要とされ、かつ、上記のような高速回線に対して多数のパケットのフローを扱うようになると、例えば、WRR(Weighted Round Robin)のようなパケットのフローごとにキューを持つようなスケジューリングによってQoS制御を行うと、ハードウェア量とスケジューラの処理負荷の両面でスケーラビリティを持たせることが困難となる。   Further, in future access networks, it is necessary to accommodate a high-speed communication line such as a maximum of 100 Mbps to 1 Gbps on a large scale from the viewpoint of cost reduction of the communication system. When handling packet flows, for example, when QoS control is performed by scheduling with a queue for each packet flow, such as WRR (Weighted Round Robin), scalability is possible in terms of both the amount of hardware and the processing load of the scheduler. It becomes difficult to have.

また、簡単なハードウェア構成でユーザフローごとに帯域制御を行う帯域制御装置及びその方法が特許文献1に開示されている。特許文献1に開示されている技術では、まず、各フローのトラヒック流量をレート計測部で計測し、計測した入力レートをフロー情報格納部に格納する一方、各フローの受信パケットを出力回線に出力するためのバッファのキュー長をキュー長監視部で観測する。   Further, Patent Literature 1 discloses a bandwidth control apparatus and method for performing bandwidth control for each user flow with a simple hardware configuration. In the technique disclosed in Patent Document 1, first, the traffic flow rate of each flow is measured by the rate measurement unit, and the measured input rate is stored in the flow information storage unit, while the received packet of each flow is output to the output line. The queue length of the buffer for monitoring is observed by the queue length monitoring unit.

そして、観測したキュー長とフロー情報格納部に格納されている各フローの最低保証帯域とから各フローの許可レートを許可レート計算部で計算する。次に、計測した入力レートと計算した許可レートを廃棄制御部で比較し、入力レートが許可レート以下の場合には、そのフローのパケットをバッファに入力し、入力レートが許可レートを超えた場合には、超えた分だけ廃棄することによって、各フローのバッファへの入力レートが常に許可レート以下になるように制御を行っている。   Then, the permission rate calculation unit calculates the permission rate of each flow from the observed queue length and the minimum guaranteed bandwidth of each flow stored in the flow information storage unit. Next, the measured input rate is compared with the calculated permitted rate at the discard control unit. If the input rate is less than the permitted rate, the packet of that flow is input to the buffer, and the input rate exceeds the permitted rate. In this case, control is performed so that the input rate to the buffer of each flow is always equal to or lower than the permitted rate by discarding the excess.

これによれば、収容する複数のフローが1つのFIFO(First In First Out)バッファを共有するよう制御を行うため、フロー数が増加してもハードウェア量は小規模で済む。また、フローごとに入力レートを監視して、許可レート以上のパケットを廃棄することで、帯域違反を犯したフロー(入力レートが許可レートを超えたフロー)の影響を他のフローに及ぼすことを防ぐ。   According to this, since control is performed so that a plurality of flows to be accommodated share one FIFO (First In First Out) buffer, the amount of hardware is small even if the number of flows increases. In addition, by monitoring the input rate for each flow and discarding packets that exceed the permitted rate, the influence of the flow that violated the bandwidth (the flow whose input rate exceeds the permitted rate) is affected to other flows. prevent.

このように、特許文献1に開示されている技術を用いることによって、単一キューによる複数のフローに対する帯域保証が可能となる。また、余剰帯域(入力された各フローの最低保証帯域を全て満たし、出力リンク帯域までの残りの帯域)が生じた場合には、各フローの許可レートを各フローの最低保証帯域に比例して増加させることにより、各フローの最低保証帯域に応じて余剰帯域をフロー間に分配させることが可能となる。
特開2002−185459号公報
Thus, by using the technique disclosed in Patent Document 1, it is possible to guarantee bandwidth for a plurality of flows using a single queue. In addition, if surplus bandwidth (that satisfies all the minimum guaranteed bandwidth of each input flow and the remaining bandwidth up to the output link bandwidth) occurs, the permitted rate of each flow is proportional to the minimum guaranteed bandwidth of each flow. By increasing the number, it becomes possible to distribute the surplus bandwidth among the flows according to the minimum guaranteed bandwidth of each flow.
JP 2002-185459 A

ところで、特許文献1に開示されている帯域制御装置は、全てのフローを1つのキューに格納して帯域制御を行っている。一方、帯域制御装置に入力される各フローには、様々な種類のパケットが混在している。例えば、各フローには、それぞれ異なるアプリケーションのパケットが混在しており、電子メールやWebアクセスなどの比較的遅延やその揺らぎに対して寛容なものから、音声通信や映像配信などの遅延やその揺らぎに敏感なリアルタイム性を要するもの、また、基幹的業務に関するミッション・クリティカルなものまで様々である。   Incidentally, the bandwidth control device disclosed in Patent Literature 1 performs bandwidth control by storing all the flows in one queue. On the other hand, various types of packets are mixed in each flow input to the bandwidth control apparatus. For example, each flow contains different application packets, which are relatively tolerant to delays and fluctuations such as e-mail and Web access, and delays and fluctuations such as voice communication and video distribution. There are various things, such as those requiring real-time sensitivity sensitive to mission-critical things for mission-critical operations.

このように、様々な種類のパケットが混在する全てのフローを1つのキューによって格納及び管理した場合には、各フロー内の様々な種類のパケットのそれぞれに要求される通信品質に応じたQoS制御を行うことは不可能である。   As described above, when all the flows in which various types of packets are mixed are stored and managed by one queue, QoS control according to the communication quality required for each of the various types of packets in each flow. It is impossible to do.

また、特許文献1に開示されている帯域制御装置は、各フローの最低保証帯域に比例して、余剰帯域の分配を行っている。しかしながら、ユーザ装置によっては、最低保証帯域は小さくてよいが、余剰帯域への送出、いわゆるベストエフォートの領域は大きくとりたいなどの要望がある。特許文献1に開示されている帯域制御装置おいて、余剰帯域を最低保証帯域に比例して分配するだけでは、このような要望に答えることは不可能である。   Further, the bandwidth control device disclosed in Patent Document 1 distributes surplus bandwidth in proportion to the minimum guaranteed bandwidth of each flow. However, depending on the user apparatus, the minimum guaranteed bandwidth may be small, but there is a demand for a large amount of transmission to the surplus bandwidth, that is, a so-called best effort area. In the bandwidth control device disclosed in Patent Document 1, it is impossible to answer such a request simply by distributing the surplus bandwidth in proportion to the minimum guaranteed bandwidth.

本発明は、かかる点に鑑みてなされたものであり、簡単なハードウェア構成によって、パケットの複数のフローの各々に帯域制御を行い、かつ、優先制御を同時に実現することができるパケット転送制御回路及びパケット転送制御方法を提供することを目的とする。   The present invention has been made in view of such points, and a packet transfer control circuit capable of performing bandwidth control on each of a plurality of packet flows and simultaneously realizing priority control with a simple hardware configuration. It is another object of the present invention to provide a packet transfer control method.

また、本発明は、パケットの複数のフローの各々に対する帯域制御及び優先制御だけではなく、パケットの複数のフローを1つのグループとして管理し、各グループに対する帯域制御を行うことができるパケット転送制御回路及びパケット転送制御方法を提供することを目的とする。   The present invention also provides a packet transfer control circuit capable of managing not only bandwidth control and priority control for each of a plurality of packet flows but also managing a plurality of packet flows as one group and performing bandwidth control for each group. It is another object of the present invention to provide a packet transfer control method.

請求項1に記載の発明は、入力される複数のパケットの属する複数のフローを識別するフロー識別手段と、前記複数のフローの各々に対して予め設定された帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を格納するフロー設定情報格納手段と、前記パケットの到着レートを所定の単位時間当たりのデータ量として計測するレート計測手段と、前記所定の単位時間内に到着した前記パケットの属する前記フローに係る前記パケットの全データ量と前記パケットの前記到着レートとに基づいて前記パケットの属する前記フローに係る到着レートを計算するレート計算手段と、前記フロー識別手段により識別された前記フローに基づいて前記フロー設定情報格納手段から読み出される前記フローに係る前記フロー設定情報と前記フローに係る前記到着レートとを比較して前記パケットの単位で前記パケットの属する前記フローのクラスの設定を行うクラス設定手段と、前記クラス設定手段によって設定された前記パケットの属する前記フローのクラスに基づいて前記複数のパケットの出力順序の制御を行う出力制御手段と、前記出力制御手段からの残存データ量及び前記フロー設定情報の前記パケット到着レート情報に基づいて所定のタイミングで前記フローに係る前記パケット到着レート情報を更新する到着レート更新手段と、を有する構成を採る。   The invention according to claim 1 is flow identification means for identifying a plurality of flows to which a plurality of input packets belong, and class information indicating bandwidth information and priority set in advance for each of the plurality of flows. And flow setting information storage means for storing flow setting information having packet arrival rate information, rate measuring means for measuring the arrival rate of the packet as a data amount per predetermined unit time, and within the predetermined unit time Rate calculation means for calculating the arrival rate for the flow to which the packet belongs based on the total data amount of the packet for the flow to which the packet has arrived and the arrival rate for the packet; and The flow related to the flow read from the flow setting information storage means based on the identified flow Class setting means for comparing the row setting information with the arrival rate for the flow and setting the class of the flow to which the packet belongs in units of the packet, and to which the packet set by the class setting means belongs Output control means for controlling the output order of the plurality of packets based on the class of the flow, and at a predetermined timing based on the remaining data amount from the output control means and the packet arrival rate information of the flow setting information And an arrival rate updating means for updating the packet arrival rate information relating to the flow.

この構成によれば、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力するから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   According to this configuration, the flow to which the input packet belongs is identified, the packet setting is performed with reference to the flow setting information including the bandwidth information related to the flow, the class information indicating the priority, and the packet arrival rate information, Select a flow that is set to a class with high priority sequentially and output packets belonging to that flow in sequence, so priority control that selectively outputs flows belonging to a class with high priority on a packet-by-packet basis. This can be realized with a simple hardware configuration.

また、請求項2に記載の発明は、請求項1に記載の発明において、前記クラス設定手段が、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の最低保証帯域情報の値以下の場合には前記フロー設定情報の基準優先クラスに前記パケットの属する前記フローのクラスを設定し、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記最低保証帯域情報の値より大きく上限帯域情報の値以下の場合には前記フロー設定情報の前記基準優先クラスよりも優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される上限優先クラスに前記パケットの属する前記フローのクラスを設定する構成を採る。   The invention according to claim 2 is the invention according to claim 1, wherein the class setting means is configured such that the arrival rate of the flow to which the packet belongs is equal to or less than a value of minimum guaranteed bandwidth information of the flow setting information. In this case, the class of the flow to which the packet belongs is set in the reference priority class of the flow setting information, and the arrival rate for the flow to which the packet belongs is determined by the value of the minimum guaranteed bandwidth information in the flow setting information. When the value is not more than the value of the upper limit bandwidth information, the priority is lower than the reference priority class of the flow setting information, and the packet belongs to the upper limit priority class set in association with the reference priority class Use a configuration to set the flow class.

この構成によれば、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力するから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   According to this configuration, the flow to which the input packet belongs is identified, the packet setting is performed with reference to the flow setting information including the bandwidth information related to the flow, the class information indicating the priority, and the packet arrival rate information, Select a flow that is set to a class with high priority sequentially and output packets belonging to that flow in sequence, so priority control that selectively outputs flows belonging to a class with high priority on a packet-by-packet basis. This can be realized with a simple hardware configuration.

また、請求項3に記載の発明は、請求項2に記載の発明において、前記クラス設定手段が、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記上限帯域情報の値より大きい場合には前記上限優先クラスよりもさらに優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される余剰優先クラスに前記パケットの属する前記フローのクラスを設定する構成を採る。   The invention according to claim 3 is the invention according to claim 2, wherein the class setting means determines that the arrival rate of the flow to which the packet belongs is greater than the value of the upper limit bandwidth information of the flow setting information. In the case of being larger, the configuration is such that the priority is lower than the upper limit priority class and the flow class to which the packet belongs is set in the surplus priority class set in association with the reference priority class.

この構成によれば、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力するから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   According to this configuration, the flow to which the input packet belongs is identified, the packet setting is performed with reference to the flow setting information including the bandwidth information related to the flow, the class information indicating the priority, and the packet arrival rate information, Select a flow that is set to a class with high priority sequentially and output packets belonging to that flow in sequence, so priority control that selectively outputs flows belonging to a class with high priority on a packet-by-packet basis. This can be realized with a simple hardware configuration.

また、請求項4に記載の発明は、請求項2又は3に記載の発明において、前記パケットの属する前記フローに係る前記到着レートと前記フロー設定情報の前記上限帯域情報の値とを比較して、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記上限帯域情報の値より大きい場合には前記パケットの廃棄処理を行うパケット廃棄手段を有する構成を採る。   The invention according to claim 4 is the invention according to claim 2 or 3, wherein the arrival rate of the flow to which the packet belongs is compared with the value of the upper limit bandwidth information of the flow setting information. A configuration is adopted in which packet discarding means for discarding the packet is adopted when the arrival rate of the flow to which the packet belongs is larger than the value of the upper limit bandwidth information of the flow setting information.

この構成によれば、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力するから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   According to this configuration, the flow to which the input packet belongs is identified, the packet setting is performed with reference to the flow setting information including the bandwidth information related to the flow, the class information indicating the priority, and the packet arrival rate information, Select a flow that is set to a class with high priority sequentially and output packets belonging to that flow in sequence, so priority control that selectively outputs flows belonging to a class with high priority on a packet-by-packet basis. This can be realized with a simple hardware configuration.

また、請求項5に記載の発明は、請求項1から請求項4のいずれかに記載の発明において、パケットの複数のフローがグループ化された複数のグループのそれぞれに対して予め設定されたフローグループ対応情報と帯域情報を有するグループ設定情報とを格納するグループ設定情報格納手段と、前記パケットの到着レートに基づいて前記フローの属する前記グループに係る到着レートを計算するグループレート計算手段と、を具備し、前記出力制御手段は、前記フロー識別手段によって識別されて前記グループ設定情報格納手段の前記フローグループ対応情報に基づいて読み出される前記グループ設定情報と前記グループに係る前記到着レートと基づいて前記複数のパケットの出力の制御を行う手段を有する構成を採る。   The invention according to claim 5 is the flow set in advance for each of a plurality of groups in which a plurality of flows of packets are grouped in the invention according to any one of claims 1 to 4. Group setting information storage means for storing group setting information and group setting information having bandwidth information; and group rate calculation means for calculating an arrival rate related to the group to which the flow belongs based on an arrival rate of the packet. And the output control means is based on the group setting information identified by the flow identification means and read based on the flow group correspondence information in the group setting information storage means and the arrival rate related to the group. A configuration having means for controlling the output of a plurality of packets is adopted.

この構成によれば、請求項1から請求項4のいずれかに記載の発明の効果に加えて、パケットの複数のフローを1つのグループとして管理し、各グループに対する帯域制御を行うことができる。   According to this configuration, in addition to the effects of the invention according to any one of claims 1 to 4, it is possible to manage a plurality of flows of packets as one group and perform bandwidth control for each group.

また、請求項6に記載の発明は、入力される複数のパケットの属する複数のフローを識別するフロー識別ステップと、前記複数のフローの各々に対して予め設定された帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報をフロー設定情報格納手段に格納するフロー設定情報格納ステップと、前記パケットの到着レートを所定の単位時間当たりのデータ量として計測するレート計測ステップと、前記所定の単位時間内に到着した前記パケットの属する前記フローに係る前記パケットの全データ量と前記パケットの前記到着レートとに基づいて前記パケットの属する前記フローに係る到着レートを計算するレート計算ステップと、前記フロー識別ステップにおいて識別された前記フローに基づいて前記フロー設定情報格納手段から読み出される前記フローに係る前記フロー設定情報と前記フローに係る前記到着レートとを比較して前記パケットの単位で前記パケットの属する前記フローのクラスの設定を行うクラス設定ステップと、前記クラス設定ステップにおいて設定された前記パケットの属する前記フローのクラスに基づいて前記複数のパケットの出力順序の制御を行う出力制御ステップと、前記出力制御ステップにおける残存データ量及び前記フロー設定情報の前記パケット到着レート情報に基づいて所定のタイミングで前記フローに係る前記パケット到着レート情報を更新する到着レート更新ステップと、を有するようにした。   The invention according to claim 6 shows a flow identification step for identifying a plurality of flows to which a plurality of inputted packets belong, and band information and priority set in advance for each of the plurality of flows. A flow setting information storage step for storing flow setting information having class information and packet arrival rate information in the flow setting information storage means; a rate measuring step for measuring the arrival rate of the packet as a data amount per predetermined unit time; A rate calculation for calculating an arrival rate for the flow to which the packet belongs based on a total data amount of the packet for the flow to which the packet arrives within the predetermined unit time and the arrival rate for the packet And the flow based on the flow identified in the flow identification step A class setting step for setting the class of the flow to which the packet belongs in units of the packet by comparing the flow setting information related to the flow read from a fixed information storage unit and the arrival rate related to the flow; An output control step for controlling the output order of the plurality of packets based on the class of the flow to which the packet set in the class setting step belongs, the remaining data amount in the output control step, and the flow setting information An arrival rate update step of updating the packet arrival rate information related to the flow at a predetermined timing based on the packet arrival rate information.

この方法によれば、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力するから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   According to this method, the flow to which the input packet belongs is identified, the class setting of the packet is performed with reference to the flow setting information including the band information related to the flow, the class information indicating the priority, and the packet arrival rate information, Select a flow that is set to a class with high priority sequentially and output packets belonging to that flow in sequence, so priority control that selectively outputs flows belonging to a class with high priority on a packet-by-packet basis. This can be realized with a simple hardware configuration.

また、請求項7に記載の発明は、請求項6に記載の発明において、前記クラス設定ステップが、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の最低保証帯域情報の値以下の場合には前記フロー設定情報の基準優先クラスに前記パケットの属する前記フローのクラスを設定するステップと、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記最低保証帯域情報の値より大きく上限帯域情報の値以下の場合には前記フロー設定情報の前記基準優先クラスよりも優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される上限優先クラスに前記パケットの属する前記フローのクラスを設定するステップと、を具備する構成を採る。   The invention according to claim 7 is the invention according to claim 6, wherein the class setting step is configured such that the arrival rate of the flow to which the packet belongs is equal to or less than a value of minimum guaranteed bandwidth information of the flow setting information. In the case, the step of setting the class of the flow to which the packet belongs to the reference priority class of the flow setting information, and the arrival rate for the flow to which the packet belongs is the value of the minimum guaranteed bandwidth information of the flow setting information. When the value is lower than the value of the upper limit bandwidth information and lower than the reference priority class of the flow setting information, the packet is assigned to the upper limit priority class set in association with the reference priority class. And a step of setting a class of the flow to which it belongs.

この方法によれば、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力するから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   According to this method, the flow to which the input packet belongs is identified, the class setting of the packet is performed with reference to the flow setting information including the band information related to the flow, the class information indicating the priority, and the packet arrival rate information, Select a flow that is set to a class with high priority sequentially and output packets belonging to that flow in sequence, so priority control that selectively outputs flows belonging to a class with high priority on a packet-by-packet basis. This can be realized with a simple hardware configuration.

また、請求項8に記載の発明は、請求項7に記載の発明において、前記クラス設定ステップが、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記上限帯域情報の値より大きい場合には前記上限優先クラスよりもさらに優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される余剰優先クラスに前記パケットの属する前記フローのクラスを設定するステップを具備するようにした。   The invention according to claim 8 is the invention according to claim 7, wherein the class setting step is configured such that the arrival rate of the flow to which the packet belongs is greater than the value of the upper limit bandwidth information of the flow setting information. If larger, the priority is lower than that of the upper limit priority class, and a step of setting the class of the flow to which the packet belongs to a surplus priority class set in association with the reference priority class is provided. I made it.

この方法によれば、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力するから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   According to this method, the flow to which the input packet belongs is identified, the class setting of the packet is performed with reference to the flow setting information including the band information related to the flow, the class information indicating the priority, and the packet arrival rate information, Select a flow that is set to a class with high priority sequentially and output packets belonging to that flow in sequence, so priority control that selectively outputs flows belonging to a class with high priority on a packet-by-packet basis. This can be realized with a simple hardware configuration.

以上説明したように、本発明によれば、入力パケットの属するフローを識別し、そのフローに係るフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力することによって、帯域制御を行うと同時に各フローの帯域情報に応じてパケット単位でクラス分けを行うから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を簡単なハードウェア構成によって実現することが可能となる。   As described above, according to the present invention, the flow to which an input packet belongs is identified, the class of the packet is set by referring to the flow setting information related to the flow, and the flow set to the class with high priority. By sequentially selecting packets and sequentially outputting packets belonging to the flow, bandwidth control is performed and at the same time, classification is performed on a packet basis according to the bandwidth information of each flow. Priority control for selectively outputting a flow in packet units can be realized with a simple hardware configuration.

本発明の骨子は、入力パケットの属するフローを識別し、そのフローに係る帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力することである。   The gist of the present invention is to identify the flow to which the input packet belongs, and to set the class of the packet with reference to the flow setting information having the band information related to the flow, the class information indicating the priority, and the packet arrival rate information, This is to sequentially select flows set in a class having a high priority and sequentially output packets belonging to the flows.

以下、本発明の実施の形態について、図面を参照して詳細に説明する。     Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

(実施の形態1)
図1は、本発明の実施の形態1に係るパケット転送制御回路の構成を示すブロック図である。
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of a packet transfer control circuit according to Embodiment 1 of the present invention.

図1に示すように、パケット転送制御回路100は、フロー識別部110、フロー設定情報格納部120、到着レート監視部130、出力キュー部140及び到着レート更新部150を具備している。   As shown in FIG. 1, the packet transfer control circuit 100 includes a flow identification unit 110, a flow setting information storage unit 120, an arrival rate monitoring unit 130, an output queue unit 140, and an arrival rate update unit 150.

フロー識別部110は、例えば、所定の通信網に収容されている通信端末装置から送出されたパケットを受ける。フロー識別部110は、入力されるパケット(入力パケット)のヘッダ情報を参照して、入力パケットの属するフローの識別を行い、フローの識別結果に係る情報であるフロー識別情報をフロー設定情報格納部120に通知する。   For example, the flow identification unit 110 receives a packet transmitted from a communication terminal device accommodated in a predetermined communication network. The flow identification unit 110 identifies the flow to which the input packet belongs by referring to the header information of the input packet (input packet), and the flow identification information that is information related to the flow identification result is stored in the flow setting information storage unit 120 is notified.

フロー設定情報格納部120は、複数のパケットの複数のフローに関する情報であるフロー設定情報を格納している。フロー設定情報は、予め設定されている。そして、フロー設定情報格納部120は、フロー識別部110から通知されるフロー識別情報によって特定されるフロー設定情報を到着レート監視部130に送出する。   The flow setting information storage unit 120 stores flow setting information that is information regarding a plurality of flows of a plurality of packets. The flow setting information is set in advance. Then, the flow setting information storage unit 120 sends the flow setting information specified by the flow identification information notified from the flow identification unit 110 to the arrival rate monitoring unit 130.

図2は、本発明の実施の形態1に係るフロー設定情報格納部120に格納されているフロー設定情報の一例を模式的に示す図である。図2に示すフロー設定情報は、フロー1〜n(nは1以上の整数である)の各々の最低保証帯域情報(MPR:Minimum Packet Rate)MPR1〜MPRnと、上限帯域情報(PPR:Peak Packet Rate)PPR1〜PPRnと、フローの各々のパケット到着レートが最低保証帯域情報MPR以下の場合にそのフローが属する基準優先クラス情報(ICL:Initial Class)ICL1〜ICLnと、パケット到着レート情報(PAR:Packet Arrival Rate)PAR1〜PARnと、を有している。   FIG. 2 is a diagram schematically illustrating an example of the flow setting information stored in the flow setting information storage unit 120 according to Embodiment 1 of the present invention. The flow setting information shown in FIG. 2 includes minimum guaranteed bandwidth information (MPR: Minimum Packet Rate) MPR1 to MPRn and upper limit bandwidth information (PPR: Peak Packet) of flows 1 to n (n is an integer of 1 or more). Rate) PPR1 to PPRn, and reference priority class information (ICL: Initial Class) ICL1 to ICLn to which the flow belongs when the packet arrival rate of each flow is equal to or less than the minimum guaranteed bandwidth information MPR, and packet arrival rate information (PAR: Packet Arrival Rate) PAR1 to PARn.

フロー設定情報のうち、最低保証帯域情報MPR、上限帯域情報PPR及び基準優先クラス情報ICLは、複数のパケットの複数のフローの各々に予め設定値が格納されており、後述のように、到着レート監視部130におけるパケットの廃棄処理又はクラス設定処理などに用いられる。また、パケット到着レート情報PARは、後述のように、到着レート監視部130におけるパケットの廃棄処理又はクラス設定処理などに用いられ、更に、到着レート監視部130によるパケットの入力監視の結果に応じて格納される値が逐次更新される。また、帯域監視のための所定時間が経過した場合には、出力キュー部140からパケット及びフローごとに通知される残存データ量で全てのパケット到着レート情報PARが更新される。   Among the flow setting information, the minimum guaranteed bandwidth information MPR, the upper limit bandwidth information PPR, and the reference priority class information ICL have setting values stored in advance in each of a plurality of flows of a plurality of packets. This is used for packet discard processing or class setting processing in the monitoring unit 130. Further, as will be described later, the packet arrival rate information PAR is used for packet discard processing or class setting processing in the arrival rate monitoring unit 130, and further according to the result of packet input monitoring by the arrival rate monitoring unit 130. Stored values are updated sequentially. When a predetermined time for bandwidth monitoring has elapsed, all packet arrival rate information PAR is updated with the remaining data amount notified from the output queue unit 140 for each packet and flow.

到着レート監視部130は、フロー設定情報格納部120からフロー設定情報の通知を受け、フロー識別部110を介してパケットが供給されて、パケットの廃棄処理又はクラス設定処理などを行う。この到着レート監視部130は、レート計測部131、レート計算部132、クラス設定部133及びパケット廃棄部134を有している。   The arrival rate monitoring unit 130 receives the notification of the flow setting information from the flow setting information storage unit 120, is supplied with a packet via the flow identification unit 110, and performs a packet discarding process or a class setting process. The arrival rate monitoring unit 130 includes a rate measuring unit 131, a rate calculating unit 132, a class setting unit 133, and a packet discarding unit 134.

レート計測部131は、フロー識別部110を介して供給されるパケットの到着レートの計測を行う。レート計算部132は、レート計測部131で計測対象となったパケットの属するフローに係るパケット到着レート情報PARの計算を行う。また、クラス設定部133は、レート計算部132で計算されたパケット到着レート情報PARと、通知されたフロー設定情報の最低保証帯域情報MPR及び上限帯域情報PPRとの比較を行い、その比較結果に応じてパケットの廃棄を指示する廃棄要求情報、及び、パケットの属するクラスを指示するクラス設定情報を出力する。また、パケット廃棄部134は、クラス設定部133から廃棄要求情報を受けた場合に、そのパケットの廃棄処理を行う。   The rate measuring unit 131 measures the arrival rate of packets supplied via the flow identifying unit 110. The rate calculation unit 132 calculates the packet arrival rate information PAR related to the flow to which the packet to be measured by the rate measurement unit 131 belongs. In addition, the class setting unit 133 compares the packet arrival rate information PAR calculated by the rate calculation unit 132 with the minimum guaranteed bandwidth information MPR and the upper limit bandwidth information PPR of the notified flow setting information, and the comparison result is In response, discard request information for instructing the discard of the packet and class setting information for instructing the class to which the packet belongs are output. When the packet discard unit 134 receives the discard request information from the class setting unit 133, the packet discard unit 134 discards the packet.

次に、到着レート監視部130の動作について、図1と共に図3を参照して説明する。図3は、本発明の実施の形態1に係る到着レート監視部130における動作の一例を説明するためのフローチャートである。   Next, the operation of the arrival rate monitoring unit 130 will be described with reference to FIG. 3 together with FIG. FIG. 3 is a flowchart for explaining an example of the operation in the arrival rate monitoring unit 130 according to Embodiment 1 of the present invention.

例えば、フローiのパケットが到着レート監視部130に到着した場合、レート計測部131がそのパケットの到着レートを計測する(ステップST301)。計測されたパケットの到着レートは、レート計測部131からレート計算部132に通知される。   For example, when a packet of flow i arrives at the arrival rate monitoring unit 130, the rate measurement unit 131 measures the arrival rate of the packet (step ST301). The measured packet arrival rate is notified from the rate measuring unit 131 to the rate calculating unit 132.

また、レート計算部132は、そのパケットの属するフローiに係るフロー設定情報をフロー設定情報格納部120から取得する(ステップST302)。レート計算部132は、レート計測部131の計測結果とフロー設定情報のパケット到着レート情報PARiとに基づいて、フローiのパケット到着レート情報PARiを新たに計算する(ステップST303)。   Moreover, the rate calculation part 132 acquires the flow setting information regarding the flow i to which the packet belongs from the flow setting information storage part 120 (step ST302). Rate calculation section 132 newly calculates packet arrival rate information PARi of flow i based on the measurement result of rate measurement section 131 and packet arrival rate information PARi of flow setting information (step ST303).

なお、パケット到着レート情報PARiの計算は、例えば、所定の基準タイミングでフローiに属するパケットの供給データ量のカウントを開始し、同一フローiに属するパケットの供給データ量を加算していくことによって、所定の基準タイミング以降に到着レート監視部130に供給されたフローiのデータ量を計算し、再び所定の基準タイミングとなった場合にカウント値をリセットすることにより実行される。   The packet arrival rate information PARi is calculated by, for example, starting counting the supply data amount of packets belonging to the flow i at a predetermined reference timing and adding the supply data amounts of packets belonging to the same flow i. This is executed by calculating the data amount of the flow i supplied to the arrival rate monitoring unit 130 after a predetermined reference timing and resetting the count value when the predetermined reference timing is reached again.

すなわち、レート計測部131の計測結果とフロー設定情報のPARiとを加算することによって、所定の基準タイミング間隔で、フローiのデータ量を計算することが可能となる。なお、後述(ステップST309)のように、レート計算部132で計算された計算結果(PAR)は、フロー設定情報に格納され、次のフローiのデータ量の計算の際に参照される。   That is, by adding the measurement result of the rate measuring unit 131 and the PARi of the flow setting information, the data amount of the flow i can be calculated at a predetermined reference timing interval. As will be described later (step ST309), the calculation result (PAR) calculated by the rate calculation unit 132 is stored in the flow setting information and is referred to when calculating the data amount of the next flow i.

次に、クラス設定部133は、レート計算部132で計算されたPARiと、フロー設定情報の最低保証帯域情報MPRi及び上限帯域情報PPRiとに基づいて、PARi≦MPRiであるか否かを判断する(ステップST304)。   Next, the class setting unit 133 determines whether PARi ≦ MPRi based on the PARi calculated by the rate calculation unit 132 and the minimum guaranteed bandwidth information MPRi and the upper limit bandwidth information PPRi of the flow setting information. (Step ST304).

ステップST304においてPARi≦MPRiである場合に、クラス設定部133は、到着したパケットがフローiに設定された最低保証帯域情報MPRi内である(すなわち、フローiはまだ最低保証帯域に達していない)と判断し、そのパケットを、フローiに予め設定されたクラスICLiに設定する(ステップST306)。また、この時に、クラス設定部133は、パケットをクラスICLiに設定したことを示す情報をクラス設定情報として出力キュー部140に出力する。   When PARi ≦ MPRi in step ST304, the class setting unit 133 has the arrived packet in the minimum guaranteed bandwidth information MPRi set for the flow i (that is, the flow i has not yet reached the minimum guaranteed bandwidth). And the packet is set to the class ICLi set in advance for the flow i (step ST306). At this time, the class setting unit 133 outputs information indicating that the packet is set to the class ICLi to the output queue unit 140 as class setting information.

ステップST304においてPARi≦MPRiでない場合に、クラス設定部133は、ステップST305においてMPRi<PARi≦PPRiであるか否かを判断する。   If PARi ≦ MPRi is not satisfied in step ST304, class setting section 133 determines whether or not MPRi <PARi ≦ PPRi in step ST305.

ステップST305においてMPRi<PARi≦PPRiである場合に、クラス設定部133は、到着したパケットがフローiに設定された最低保証帯域情報MPRiを満足して上限帯域情報PPRiに達するまでの余剰帯域を使用する(すなわち、フローiは最低保証帯域には達したが、まだ上限帯域には達していない)ものと判断し、そのパケットを、フローiに予め設定されたクラスICLiより1つ下のクラスに設定する(ステップST307)。また、この時に、クラス設定部133は、パケットをクラスICLiの1つ下のクラスに設定したことを示す情報をクラス設定情報として出力キュー部140に出力する。   If MPRi <PARi ≦ PPRi in step ST305, the class setting unit 133 uses the surplus bandwidth until the arrived packet satisfies the minimum guaranteed bandwidth information MPRi set for the flow i and reaches the upper limit bandwidth information PPRi. (That is, the flow i has reached the minimum guaranteed bandwidth but has not yet reached the upper limit bandwidth), and the packet is set to a class one lower than the class ICLi set in advance for the flow i. Set (step ST307). At this time, the class setting unit 133 outputs information indicating that the packet has been set to a class immediately below the class ICLi to the output queue unit 140 as class setting information.

ステップST305においてMPRi<PARi≦PPRiでない場合に、クラス設定部133は、到着したパケットが、既にフローiに設定された上限帯域PPRiを超え、許された余剰帯域を全て使い尽くした状態であると判断し、そのパケットの廃棄処理をパケット廃棄部134に実行させる(ステップST308)。この場合、クラス設定部133は、パケット廃棄部134に対してパケットが廃棄処理を要求する廃棄要求情報を通知し、この廃棄要求情報を受けたパケット廃棄部134がパケットの廃棄処理を行う。   When MPRi <PARi ≦ PPRi is not satisfied in step ST305, the class setting unit 133 is in a state in which the arrived packet exceeds the upper limit bandwidth PPRi already set for the flow i, and all allowed surplus bandwidth is used up. The packet discarding process is executed by the packet discarding unit 134 (step ST308). In this case, the class setting unit 133 notifies the packet discard unit 134 of discard request information for requesting the packet to be discarded, and the packet discard unit 134 that has received the discard request information performs the packet discard processing.

ただし、出力リンクの帯域を有効活用するために、上限帯域を超えてもさらに余剰帯域がある場合には、パケットの出力を許可することも可能である。この場合に、クラス設定部133は、フローiに予め設定されたクラスICLiより2つ下のクラスにパケットを設定する(ステップST308)。また、クラス設定部133は、パケットをクラスICLiの2つ下のクラスに設定したことを示す情報をクラス設定情報として出力キュー部140に出力する。   However, in order to effectively utilize the bandwidth of the output link, it is also possible to permit the output of a packet when there is a surplus bandwidth even if the upper limit bandwidth is exceeded. In this case, the class setting unit 133 sets a packet to a class two lower than the class ICLi set in advance for the flow i (step ST308). In addition, the class setting unit 133 outputs information indicating that the packet is set to a class two lower than the class ICLi to the output queue unit 140 as class setting information.

また、パケットがPARi≦MPRiであると判定され、又は、MPRi<PARi≦PPRiであると判定された場合には、クラス設定部133は、フロー設定情報格納部120に格納されているフローiのフロー設定情報のパケット到着レート情報PARiを、新たなパケット到着レート情報PARi(レート計算部132で計算したPARi)で更新する(ステップST309)。   If it is determined that the packet is PARi ≦ MPRi, or if it is determined that MPRi <PARi ≦ PPRi, the class setting unit 133 sets the flow i stored in the flow setting information storage unit 120. The packet arrival rate information PARi of the flow setting information is updated with new packet arrival rate information PARi (PARi calculated by the rate calculation unit 132) (step ST309).

上述のように、到着レート監視部130においてパケットの廃棄処理又はクラス設定処理が行われ、クラス設定処理が行われた場合には到着レート監視部130から出力キュー部140に対して、パケット及びそのパケットに係るクラス設定情報が供給される。なお、クラス設定情報には、少なくともそのパケットに係るフローを識別可能とするフロー識別情報と、そのパケットに係るフローに対して設定されたクラスを示す情報とが記載されている。   As described above, the packet discard process or the class setting process is performed in the arrival rate monitoring unit 130, and when the class setting process is performed, the arrival rate monitoring unit 130 sends the packet and its output queue unit 140 to the output queue unit 140. Class setting information related to the packet is supplied. The class setting information includes at least flow identification information that enables identification of a flow related to the packet and information indicating a class set for the flow related to the packet.

次に、本発明の実施の形態1に係るパケット転送制御回路100の出力キュー部140について、図面を参照して説明する。   Next, the output queue unit 140 of the packet transfer control circuit 100 according to the first embodiment of the present invention will be described with reference to the drawings.

出力キュー部140は、出力順序管理部141、パケット選択部142及びパケット出力部143を有している。出力順序管理部141は、到着レート監視部130から供給されるパケットを格納し、フローの出力順序をクラス別に管理する。出力順序管理部141は、複数のバッファ部1410を有している。バッファ部1410は、動作の順序を決めるための同じ優先度を有するクラスに設定されている。なお、バッファ部1410は、動作の順序を決めるための異なる優先度を有するクラスに対応付けられていてもよい。到着レート監視部130から供給されたパケットは、そのパケットが属するフローのフロー設定情報の基準優先クラス情報ICLによって、複数のバッファ部1410のいずれかに格納される。   The output queue unit 140 includes an output order management unit 141, a packet selection unit 142, and a packet output unit 143. The output order management unit 141 stores packets supplied from the arrival rate monitoring unit 130, and manages the output order of flows by class. The output order management unit 141 has a plurality of buffer units 1410. The buffer unit 1410 is set to a class having the same priority for determining the order of operations. Note that the buffer unit 1410 may be associated with classes having different priorities for determining the order of operations. The packet supplied from the arrival rate monitoring unit 130 is stored in one of the plurality of buffer units 1410 according to the reference priority class information ICL of the flow setting information of the flow to which the packet belongs.

複数のバッファ部1410の各々は、複数のFIFOキュー1411〜1413を有している。複数のFIFOキュー1411は、最も高い優先度を有する基準優先クラスに設定されている。複数のFIFOキュー1412は、基準優先クラスより低い優先度を有する上限優先クラスに設定されている。複数のFIFOキュー1413は、上限優先クラスより低い優先度を有する余剰優先クラスに設定されている。   Each of the plurality of buffer units 1410 has a plurality of FIFO queues 1411 to 1413. The plurality of FIFO queues 1411 are set to the reference priority class having the highest priority. The plurality of FIFO queues 1412 are set to the upper limit priority class having a lower priority than the reference priority class. The plurality of FIFO queues 1413 are set in a surplus priority class having a lower priority than the upper limit priority class.

出力順序管理部141は、到着レート監視部130から供給されるパケットを、それぞれ対応するクラスのFIFOキュー1411〜1413に到着順に格納し、格納しているパケットのデータ量をフロー及びクラス別に管理する。   The output order management unit 141 stores the packets supplied from the arrival rate monitoring unit 130 in the FIFO queues 1411 to 1413 of the corresponding classes in the order of arrival, and manages the data amount of the stored packets for each flow and class. .

更に、複数のバッファ部1410の各々は、帯域監視のための所定時間が経過した場合には、基準優先クラスに対応して設定されたFIFOキュー1411〜1413のいずれかに、上限優先クラス及び余剰優先クラスに対応して設定されたFIFOキュー1411〜1413のいずれかに格納納しているパケットを、上限優先クラス及び余剰優先クラスの順に再格納し、フロー設定情報格納部120に対して、フローごとに上限優先クラス及び余剰優先クラスに対応して設定されたFIFOキュー1411〜1413の残存データ量を通知する。   Further, each of the plurality of buffer units 1410 has an upper limit priority class and a surplus in any of the FIFO queues 1411 to 1413 set corresponding to the reference priority class when a predetermined time for bandwidth monitoring has elapsed. Packets stored and stored in any of the FIFO queues 1411 to 1413 set in accordance with the priority class are re-stored in the order of the upper limit priority class and the surplus priority class, and the flow setting information storage unit 120 receives the flow. The remaining data amount in the FIFO queues 1411 to 1413 set corresponding to the upper limit priority class and the surplus priority class is notified every time.

また、パケット選択部142は、出力順序管理部141で管理されているパケットの出力順序を参照して、最も高いクラスの先頭にキューイングされているパケットを選択し、パケット出力部143に対してそのパケットを出力するよう通知する。また、パケット出力部143は、パケット選択部142によって選択されたパケットを出力順序管理部141から読み出し、外部の通信網に対してそのパケットの出力を行う。   Further, the packet selection unit 142 refers to the output order of the packets managed by the output order management unit 141, selects the packet queued at the head of the highest class, and sends the packet output unit 143 to the packet output unit 143. Notify to output the packet. The packet output unit 143 reads out the packet selected by the packet selection unit 142 from the output order management unit 141 and outputs the packet to an external communication network.

次に、本発明の実施の形態1に係るパケット転送制御回路100の出力キュー部140の動作について、図1と共に図4を参照して説明する。図4は、本発明の実施の形態1に係るパケット転送制御回路100の出力キュー部140における動作の一例を説明するためのフローチャートである。   Next, the operation of the output queue unit 140 of the packet transfer control circuit 100 according to Embodiment 1 of the present invention will be described with reference to FIG. 4 together with FIG. FIG. 4 is a flowchart for explaining an example of the operation in the output queue unit 140 of the packet transfer control circuit 100 according to the first embodiment of the present invention.

ステップST401において、フローiのパケット及びクラス設定情報が到着レート監視部130から供給された場合に、出力順序管理部141が、クラス設定情報内のクラスを示す情報に従って、そのパケットをクラスに対応して設定されたFIFOキュー1411〜1413のいずれかに格納する。   In step ST401, when the packet of the flow i and the class setting information are supplied from the arrival rate monitoring unit 130, the output order management unit 141 associates the packet with the class according to the information indicating the class in the class setting information. Stored in one of the FIFO queues 1411 to 1413 set in the above.

次に、パケット選択部142は、出力順序管理部141に格納されているパケットの格納状況に応じて、次に出力すべきパケットの選択を行う。具体的には、ステップST402において、パケット選択部142は、出力順序管理部141の基準優先クラスのFIFOキュー1411にパケットが存在するか否かを判断する。ステップST402において出力順序管理部141の基準優先クラスのFIFOキュー1411にパケットが存在する場合には、パケット選択部142は、基準優先クラスのFIFOキュー1411を識別可能なキュー識別情報を次に出力すべきパケットを先頭に格納しているキューを識別する情報として生成する(ステップST405)。   Next, the packet selection unit 142 selects the packet to be output next according to the storage status of the packets stored in the output order management unit 141. Specifically, in step ST402, the packet selection unit 142 determines whether a packet exists in the FIFO queue 1411 of the reference priority class of the output order management unit 141. If there is a packet in the reference priority class FIFO queue 1411 of the output order management unit 141 in step ST402, the packet selection unit 142 next outputs queue identification information that can identify the reference priority class FIFO queue 1411. It is generated as information for identifying the queue storing the packet to be headed (step ST405).

また、ステップST402において基準優先クラスのFIFOキュー1411にパケットが存在しない場合には、パケット選択部142は、基準優先クラスより優先度が低い上限優先クラスのFIFOキュー1412にパケットが存在する否かを判断する(ステップST403)。ステップST403において上限優先クラスのFIFOキュー1412にパケットが存在する場合には、パケット選択部142は、上限優先クラスのFIFOキュー1412を識別可能なキュー識別情報を次に出力すべきパケットを先頭に格納しているキューを識別する情報として生成する(ステップST406)。   If there is no packet in the reference priority class FIFO queue 1411 in step ST402, the packet selection unit 142 determines whether there is a packet in the upper limit priority class FIFO queue 1412 having a lower priority than the reference priority class. Judgment is made (step ST403). If there is a packet in the upper-limit priority class FIFO queue 1412 in step ST403, the packet selection unit 142 stores the queue identification information that can identify the upper-limit priority class FIFO queue 1412 next to the packet to be output next. It is generated as information for identifying the queue that is currently in operation (step ST406).

また、ステップST403において上限優先クラスのFIFOキュー1412にパケットが存在しない場合には、パケット選択部142は、上限優先クラスより優先度が低い余剰優先クラス(最低優先クラス)のFIFOキュー1413にパケットが存在する否かを判断する(ステップST404)。ステップST404において、余剰優先クラス(最低優先クラス)のFIFOキュー1413にパケットが存在する場合には、パケット選択部142は、最低優先クラスのFIFOキュー1413を識別可能なキュー識別情報を次に出力すべきパケットを先頭に格納しているキューを識別する情報として生成する(ステップST407)。   If there is no packet in the FIFO queue 1412 of the upper limit priority class in step ST403, the packet selection unit 142 sends a packet to the FIFO queue 1413 of the surplus priority class (lowest priority class) having a lower priority than the upper limit priority class. It is determined whether or not it exists (step ST404). In step ST404, when there is a packet in the FIFO queue 1413 of the surplus priority class (lowest priority class), the packet selection unit 142 next outputs queue identification information that can identify the FIFO queue 1413 of the lowest priority class. It is generated as information for identifying the queue storing the packet to be headed (step ST407).

なお、ステップST404において、パケット選択部142は、余剰優先クラス(最低優先クラス)のFIFOキュー1413にもパケットが存在しない場合には、出力すべきパケットは存在しないと判断し、パケットの出力が行われない。   In step ST404, if there is no packet in the FIFO queue 1413 of the surplus priority class (lowest priority class), the packet selection unit 142 determines that there is no packet to be output, and the packet is output. I will not.

パケット選択部142は、前記ステップST405〜ST407のいずれか1つの処理によって、出力すべきパケットを格納したFIFOキュー示すキュー識別情報を生成した場合には、パケット出力部143に対して、このFIFOキューの先頭のパケットの出力を行うよう要求するために、生成したキュー識別情報を供給する(ステップST408)。パケット出力部143は、供給されたキュー識別情報が示すFIFOキューに先頭に格納されているパケットを選択して、外部の出力回線に出力する(ステップST409)。   When the packet selection unit 142 generates the queue identification information indicating the FIFO queue storing the packet to be output by any one of the steps ST405 to ST407, the packet selection unit 142 sends the FIFO queue to the packet output unit 143. The generated queue identification information is supplied to request output of the first packet of (step ST408). The packet output unit 143 selects the packet stored at the head in the FIFO queue indicated by the supplied queue identification information, and outputs it to the external output line (step ST409).

到着レート更新部150は、所定のタイミングでフロー設定情報格納部120に格納されているフローに係るフロー設定情報の到着レートを出力キュー部140の出力順序管理部141からの残存データ量及びフロー設定情報の到着レートに基づいて更新する。また、到着レート更新部150は、クラス設定部133が保持している到着レートを前記所定のタイミングで更新する。   The arrival rate updating unit 150 determines the arrival rate of the flow setting information related to the flow stored in the flow setting information storage unit 120 at a predetermined timing, the remaining data amount from the output order management unit 141 of the output queue unit 140, and the flow setting. Update based on information arrival rate. The arrival rate updating unit 150 updates the arrival rate held by the class setting unit 133 at the predetermined timing.

以上説明したように、本発明の実施の形態1によれば、入力パケットの属するフローを識別し、そのフローに係るフロー設定情報を参照してパケットのクラス設定を行い、優先度が高いクラスに設定されているフローを逐次に選択して、そのフローに属するパケットを順次に出力することによって、帯域制御を行うと同時に各フローの帯域情報に応じてパケット単位でクラス分けを行うから、優先度が高いクラスに属するフローをパケット単位で選択的に出力する優先制御を行うことが可能となる。   As described above, according to the first embodiment of the present invention, the flow to which the input packet belongs is identified, the class setting of the packet is performed by referring to the flow setting information related to the flow, and the class having a high priority is set. By selecting a set flow sequentially and outputting packets belonging to that flow sequentially, bandwidth control is performed and classification is performed on a packet basis according to the bandwidth information of each flow. It is possible to perform priority control in which flows belonging to a higher class are selectively output in units of packets.

なお、フロー識別部110において識別を行うフローの種類として、例えば、異なるアプリケーションによる分類、送信アドレス、受信アドレス又は中継アドレスなどによる分類による種類がある。   Note that the types of flows to be identified by the flow identification unit 110 include, for example, classifications based on different applications, classifications based on transmission addresses, reception addresses, relay addresses, and the like.

なお、本発明の実施の形態1では、フロー設定情報格納部120が、フロー識別情報で識別されるフロー設定情報を到着レート監視部130に対して通知する態様となっているが、例えば、フロー識別情報がフロー識別部110から到着レート監視部130に通知され、到着レート監視部130がそのフロー識別情報で識別されるフロー設定情報を読み出す態様とすることも可能である。   In Embodiment 1 of the present invention, the flow setting information storage unit 120 notifies the arrival rate monitoring unit 130 of the flow setting information identified by the flow identification information. The identification information may be notified from the flow identification unit 110 to the arrival rate monitoring unit 130, and the arrival rate monitoring unit 130 may read the flow setting information identified by the flow identification information.

(実施の形態2)
次に、本発明の実施の形態2について、図面を参照して詳細に説明する。
(Embodiment 2)
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.

図5は、本発明の実施の形態2に係るパケット転送制御回路の構成を示すブロック図である。なお、本発明の実施の形態2においては、本発明の実施の形態1と同じ構成要素には同じ参照符号が付されてその説明が省略される。   FIG. 5 is a block diagram showing a configuration of the packet transfer control circuit according to the second embodiment of the present invention. In the second embodiment of the present invention, the same components as those in the first embodiment of the present invention are denoted by the same reference numerals and description thereof is omitted.

図5に示すように、本発明の実施の形態2に係るパケット転送制御回路500は、図1に示す本発明の実施の形態1に係るパケット転送制御回路100において、複数のフローのグループごとの帯域制御機能を付加したものである。具体的には、図5に示すパケット転送制御回路500は、パケット転送制御回路100において、複数のパケットの複数のフローの各グループに関する情報(グループ設定情報)を格納するグループ設定情報格納部501を有し、かつ、到着レート監視部130の代わりに到着レート監視部530を有している。   As shown in FIG. 5, the packet transfer control circuit 500 according to the second embodiment of the present invention is different from the packet transfer control circuit 100 according to the first embodiment of the present invention shown in FIG. A bandwidth control function is added. Specifically, the packet transfer control circuit 500 shown in FIG. 5 includes a group setting information storage unit 501 that stores information (group setting information) about each group of a plurality of flows of a plurality of packets in the packet transfer control circuit 100. And an arrival rate monitoring unit 530 instead of the arrival rate monitoring unit 130.

到着レート監視部530は、レート計測部131、パケット廃棄部134、レート計算部531及びクラス設定部532を有している。レート計算部531及びクラス設定部532は、レート計算部132及びクラス設定部133において、複数のパケットの複数のフローのグループごとのパケット到着レート(GPAR:Group Packet Arrival Rate)及び上限帯域情報(GPPR:Group Peak Packet Rate)に関する処理を行う機能が付加されている。   The arrival rate monitoring unit 530 includes a rate measurement unit 131, a packet discard unit 134, a rate calculation unit 531, and a class setting unit 532. The rate calculation unit 531 and the class setting unit 532, in the rate calculation unit 132 and the class setting unit 133, receive a packet arrival rate (GPAR) and upper limit bandwidth information (GPPR) for each group of a plurality of flows of a plurality of packets. : Group Peak Packet Rate) is added.

まず、本発明の実施の形態2に係るパケット転送制御回路500のグループ設定情報格納部501ついて説明する。グループ設定情報格納部501は、複数のフローの各々がどのグループに属しているかを示すフローグループ対応情報と、各グループに関する情報(グループ設定情報)とを格納している。そして、グループ設定情報格納部501は、フロー識別部110からフロー識別情報が通知された場合、フローグループ対応情報を参照してグループを特定し、フロー識別情報によって特定されたグループに係るグループ設定情報を到着レート監視部530に送出する。   First, the group setting information storage unit 501 of the packet transfer control circuit 500 according to Embodiment 2 of the present invention will be described. The group setting information storage unit 501 stores flow group correspondence information indicating to which group each of a plurality of flows belongs, and information about each group (group setting information). When the flow identification information is notified from the flow identification unit 110, the group setting information storage unit 501 identifies the group with reference to the flow group correspondence information, and the group setting information related to the group identified by the flow identification information Is sent to the arrival rate monitoring unit 530.

図6は、本発明の実施の形態2に係るパケット転送制御回路500のグループ設定情報格納部501に格納されているフローグループ対応情報の一例を模式的に示す図である。図7は、本発明の実施の形態2に係るパケット転送制御回路500のグループ設定情報格納部501に格納されているグループ設定情報の一例を模式的に示す図である。   FIG. 6 is a diagram schematically showing an example of the flow group correspondence information stored in the group setting information storage unit 501 of the packet transfer control circuit 500 according to Embodiment 2 of the present invention. FIG. 7 is a diagram schematically illustrating an example of group setting information stored in the group setting information storage unit 501 of the packet transfer control circuit 500 according to Embodiment 2 of the present invention.

図6に示すフローグループ対応情報には、各グループ1〜m(mは1以上の整数である)と各フロー1〜n(nは1以上の整数である)との対応関係が記載されている。例えば、図6に挙げた一例では、フロー1〜5がグループ1に属し、フロー6〜10がグループ2に属することが判る。   The flow group correspondence information shown in FIG. 6 describes the correspondence between each group 1 to m (m is an integer of 1 or more) and each flow 1 to n (n is an integer of 1 or more). Yes. For example, in the example shown in FIG. 6, it can be seen that flows 1 to 5 belong to group 1 and flows 6 to 10 belong to group 2.

また、図7に示すグループ設定情報は、各グループ1〜mの上限帯域情報GPPR1〜GPPRmと、各グループ1〜mのパケット到着レート情報GPAR1〜GPARmとを有している。なお、グループ設定情報のうち、上限帯域情報GPPRのエントリに関しては、各グループに対して予め設定値が格納されている。また、パケット到着レート情報GPARのエントリに関しては、到着レート監視部530によるパケットの入力監視の結果に応じて格納される値が逐次に更新される。   Further, the group setting information shown in FIG. 7 includes upper limit band information GPPR1 to GPPRm for each group 1 to m and packet arrival rate information GPAR1 to GPARm for each group 1 to m. Of the group setting information, for the entry of the upper limit bandwidth information GPPR, a setting value is stored in advance for each group. Regarding the entry of the packet arrival rate information GPAR, values stored in accordance with the result of packet input monitoring by the arrival rate monitoring unit 530 are sequentially updated.

グループ設定情報格納部501は、フロー識別部110からフロー識別情報を受けて、まず、フローグループ対応情報を参照し、入力パケットの属するグループを判別する。更に、グループ設定情報格納部501は、グループ設定情報を参照して、判別されたグループに設定されているグループ設定情報を取得し、到着レート監視部530に対して、そのグループのグループ設定情報を通知する。   The group setting information storage unit 501 receives the flow identification information from the flow identification unit 110 and first refers to the flow group correspondence information to determine the group to which the input packet belongs. Further, the group setting information storage unit 501 refers to the group setting information, acquires group setting information set for the determined group, and sends the group setting information of the group to the arrival rate monitoring unit 530. Notice.

次に、本発明の実施の形態2に係るパケット転送制御回路500の到着レート監視部530の動作について、図5と共に図8を参照して説明する。図8は、本発明の実施の形態2に係るパケット転送制御回路500の到着レート監視部530における動作の一例を説明するためのフローチャートである。   Next, the operation of the arrival rate monitoring unit 530 of the packet transfer control circuit 500 according to Embodiment 2 of the present invention will be described with reference to FIG. 8 together with FIG. FIG. 8 is a flowchart for explaining an example of the operation in the arrival rate monitoring unit 530 of the packet transfer control circuit 500 according to Embodiment 2 of the present invention.

ステップST801において、例えば、フローiのパケットが到着レート監視部530に到着した場合、まず、レート計測部131は、そのパケットの到着レートを計測する。レート計測部131は、計測されたパケットの到着レートをレート計算部531に通知する。   In step ST801, for example, when a packet of flow i arrives at the arrival rate monitoring unit 530, the rate measuring unit 131 first measures the arrival rate of the packet. The rate measuring unit 131 notifies the rate calculating unit 531 of the arrival rate of the measured packet.

また、レート計算部531は、そのパケットの属するフローiに係るフロー設定情報をフロー設定情報格納部120から取得し、更に、そのパケットのフローiが属するグループjに係るグループ設定情報をグループ設定情報格納部501から取得する(ステップST802)。なお、ここでは、フローiがグループjに属しているものとする。   Further, the rate calculation unit 531 obtains the flow setting information related to the flow i to which the packet belongs from the flow setting information storage unit 120, and further sets the group setting information related to the group j to which the flow i of the packet belongs to group setting information. Obtained from the storage unit 501 (step ST802). Here, it is assumed that the flow i belongs to the group j.

そして、レート計算部531は、レート計測部131の計測結果とフロー設定情報のパケット到着レート情報PARiとに基づいてフローiのパケット到着レート情報PARiを新たに計算し、更に、レート計測部131の計測結果とグループ設定情報内のパケット到着レート情報GPARjとに基づいてグループjのパケット到着レート情報GPARjを新たに計算する(ステップST803)。パケット到着レート情報GPARjの計算の方法は、先に述べたパケット到着レートPARiの計算の方法と同一のものを用いることが可能である。   Then, the rate calculation unit 531 newly calculates the packet arrival rate information PARi of the flow i based on the measurement result of the rate measurement unit 131 and the packet arrival rate information PARi of the flow setting information. Based on the measurement result and the packet arrival rate information GPARj in the group setting information, the packet arrival rate information GPARj of group j is newly calculated (step ST803). The method for calculating the packet arrival rate information GPARj can be the same as the method for calculating the packet arrival rate PARi described above.

次に、クラス設定部532は、レート計算部531で計算されたGPARjとグループ設定情報内の上限帯域情報GPPRjとに基づいて、GPARj≦GPPRjであるか否かを判断する(ステップST804)。   Next, class setting section 532 determines whether or not GPARj ≦ GPPRj based on GPARj calculated by rate calculation section 531 and upper limit band information GPPRj in the group setting information (step ST804).

ステップST804においてGPARj≦GPPRjである場合には、到着したパケットは、グループjに設定された上限帯域情報GPPRjにはまだ達しておらず、到着したパケットは、グループj全体に対して設定された上限帯域内にあるものと判断される。すなわち、そのパケットは、グループj全体に設定された帯域を違反するものではなく、グループj全体に設定された帯域という観点において許容される。そして、このパケットに関しては、フロー設定情報に基づいて前述のステップST304〜ST309の処理が行われる。また、クラス設定部532は、グループ設定情報格納部501に格納されているグループjのグループ設定情報内のパケット到着レート情報GPARjを、新たなパケット到着レート情報GPARj(レート計算部531で計算したGPARj)で更新する(ステップST805)。   When GPARj ≦ GPPRj in step ST804, the arrived packet has not yet reached the upper limit bandwidth information GPPRj set for the group j, and the arrived packet has the upper limit set for the entire group j. It is determined that it is within the band. That is, the packet does not violate the bandwidth set for the entire group j, and is permitted in terms of the bandwidth set for the entire group j. And about this packet, the process of above-mentioned step ST304-ST309 is performed based on flow setting information. Also, the class setting unit 532 converts the packet arrival rate information GPARj in the group setting information of the group j stored in the group setting information storage unit 501 into new packet arrival rate information GPARj (GPARj calculated by the rate calculation unit 531). ) (Step ST805).

また、ステップST804においてGPARj≦GPPRjでない場合には、クラス設定部532は、到着したパケットが既にグループjに設定された上限帯域GPPRjを超えて許された余剰帯域を全て使い尽くした状態であると判断し、そのパケットの廃棄処理を実行させる(ステップST806)。この場合、クラス設定部532は、パケット廃棄部134に対してパケットの廃棄処理を要求する廃棄要求情報を通知し、この廃棄要求情報を受けたパケット廃棄部134がパケットの廃棄処理を行う。   If GPARj ≦ GPPRj is not satisfied in step ST804, the class setting unit 532 is in a state where all of the surplus bandwidth allowed for the arrived packet exceeding the upper limit bandwidth GPPRj already set for the group j is exhausted. Judgment is made and the discard processing of the packet is executed (step ST806). In this case, the class setting unit 532 notifies the packet discard unit 134 of discard request information for requesting packet discard processing, and the packet discard unit 134 that has received the discard request information performs packet discard processing.

上記の処理が、到着レート監視部530で行われ、パケットの廃棄処理が行われた場合を除いて、到着レート監視部530から出力キュー部140に対してパケット及びそのパケットのクラス設定情報が供給される。出力キュー部140は、これらの情報を受けて、実施の形態1と同一の処理を行うことによって選択的にパケットの出力を行う。   The packet and the class setting information of the packet are supplied from the arrival rate monitoring unit 530 to the output queue unit 140 except when the above processing is performed by the arrival rate monitoring unit 530 and the packet discarding process is performed. Is done. The output queue unit 140 receives these pieces of information and selectively outputs packets by performing the same processing as in the first embodiment.

以上説明したように、本発明の実施の形態2によれば、フロー及びグループを設定し、入力パケットの属するフロー及びグループを識別することによって、フローごとの帯域制御及び優先制御に加えて、各フローに対して設定された各グループに関して帯域制御を同時に行うことが可能となる。   As described above, according to the second embodiment of the present invention, by setting the flow and group and identifying the flow and group to which the input packet belongs, in addition to bandwidth control and priority control for each flow, Band control can be performed simultaneously for each group set for the flow.

なお、本発明の実施の形態2において、フローの設定と同様に、グループの種類や数、フローとグループとの対応に関しては、必要に応じて任意に設定可能であり、例えば、同一リンクや同一VPN(Virtual Private Network)に属する複数のフローを、それぞれグループ化することが可能である。   In the second embodiment of the present invention, as with the flow setting, the type and number of groups and the correspondence between flows and groups can be arbitrarily set as necessary. For example, the same link or the same A plurality of flows belonging to a VPN (Virtual Private Network) can be grouped.

また、本発明の実施の形態2において、グループ設定情報格納部501が、フロー識別情報から識別されるグループのグループ設定情報を到着レート監視部530に対して通知する態様のほかに、例えば、フロー識別情報がフロー識別部110から到着レート監視部530に通知され、到着レート監視部530がフローグループ対応情報を参照して所望のグループに係るグループ設定情報を読み出す態様とすることも可能である。   In Embodiment 2 of the present invention, in addition to the mode in which the group setting information storage unit 501 notifies the arrival rate monitoring unit 530 of the group setting information of the group identified from the flow identification information, for example, the flow The identification information may be notified from the flow identification unit 110 to the arrival rate monitoring unit 530, and the arrival rate monitoring unit 530 may read the group setting information related to a desired group by referring to the flow group correspondence information.

また、本発明の実施の形態2において、実施の形態1と同様に、出力リンクの帯域を有効活用するという目的で、上限帯域を超えてもさらに余剰帯域がある場合にはパケットの出力を許可することも可能である。   Further, in the second embodiment of the present invention, as in the first embodiment, for the purpose of effectively utilizing the bandwidth of the output link, the packet is permitted to be output when there is a surplus bandwidth even if the upper limit bandwidth is exceeded. It is also possible to do.

また、本発明の実施の形態2において、複数のフローをグループ化して、1つのグループ群を設定しているが、更に、これらのグループ群に属する複数のグループをグループ化し、階層的にグループを構築して帯域制御処理を行うことも可能である。また、本発明の実施の形態2において、異なる態様(異なる分け方)によって複数のフローをグループ化して複数のグループ群を設定し、各グループ群において、並列的に帯域制御処理を行うことも可能である。   Further, in Embodiment 2 of the present invention, a plurality of flows are grouped to set one group group. Further, a plurality of groups belonging to these group groups are grouped, and the groups are grouped hierarchically. It is also possible to construct and perform bandwidth control processing. In the second embodiment of the present invention, it is also possible to group a plurality of flows by different modes (different divisions) to set a plurality of group groups, and to perform band control processing in parallel in each group group It is.

なお、本発明の実施の形態1、2におけるパケット転送制御回路の構成を示すブロック図では、バッファ部を3つに分類している(すなわち、識別可能なクラスを3つに分類している)が、クラスの数はシステムにより変えることが可能である。本発明の実施の形態1、2において、フロー又はグループの種類、及び、フロー又はグループの数は、必要に応じて任意に設定が可能である。   In the block diagram showing the configuration of the packet transfer control circuit according to the first and second embodiments of the present invention, the buffer unit is classified into three (that is, identifiable classes are classified into three). However, the number of classes can be changed by the system. In Embodiments 1 and 2 of the present invention, the type of flow or group and the number of flows or groups can be arbitrarily set as necessary.

本発明は、パケットを転送する装置に適用することができる。   The present invention can be applied to a device for transferring a packet.

本発明の実施の形態1に係るパケット転送制御回路の構成を示すブロック図1 is a block diagram showing a configuration of a packet transfer control circuit according to a first embodiment of the present invention. 本発明の実施の形態1に係るパケット転送制御回路のフロー設定情報格納部に格納されているフロー設定情報の一例を模式的に示す図The figure which shows typically an example of the flow setting information stored in the flow setting information storage part of the packet transfer control circuit which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係るパケット転送制御回路の到着レート監視部における動作の一例を説明するためのフローチャートThe flowchart for demonstrating an example of the operation | movement in the arrival rate monitoring part of the packet transfer control circuit which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係るパケット転送制御回路の出力キュー部における動作の一例を説明するためのフローチャートThe flowchart for demonstrating an example of the operation | movement in the output queue part of the packet transfer control circuit which concerns on Embodiment 1 of this invention. 本発明の実施の形態2に係るパケット転送制御回路の構成を示すブロック図Block diagram showing a configuration of a packet transfer control circuit according to a second embodiment of the present invention 本発明の実施の形態2に係るパケット転送制御回路のグループ設定情報格納部に格納されているフローグループ対応情報の一例を模式的に示す図The figure which shows typically an example of the flow group corresponding | compatible information stored in the group setting information storage part of the packet transfer control circuit which concerns on Embodiment 2 of this invention. 本発明の実施の形態2に係るパケット転送制御回路のグループ設定情報格納部に格納されているグループ設定情報の一例を模式的に示す図The figure which shows typically an example of the group setting information stored in the group setting information storage part of the packet transfer control circuit which concerns on Embodiment 2 of this invention. 本発明の実施の形態2に係るパケット転送制御回路の到着レート監視部における動作の一例を説明するためのフローチャートThe flowchart for demonstrating an example of the operation | movement in the arrival rate monitoring part of the packet transfer control circuit which concerns on Embodiment 2 of this invention.

符号の説明Explanation of symbols

100、500 パケット転送制御回路
110 フロー識別部
120 フロー設定情報格納部
130 到着レート監視部
131 レート計測部
132、531 レート計算部
133、532 クラス設定部
134 パケット廃棄部
140 出力キュー部
141 出力順序管理部
142 パケット選択部
143 パケット出力部
1410 バッファ部
150 到着レート更新部
501 グループ設定情報格納部
100, 500 Packet transfer control circuit 110 Flow identification unit 120 Flow setting information storage unit 130 Arrival rate monitoring unit 131 Rate measurement unit 132, 531 Rate calculation unit 133, 532 Class setting unit 134 Packet discard unit 140 Output queue unit 141 Output order management Unit 142 packet selection unit 143 packet output unit 1410 buffer unit 150 arrival rate update unit 501 group setting information storage unit

Claims (8)

入力される複数のパケットの属する複数のフローを識別するフロー識別手段と、前記複数のフローの各々に対して予め設定された帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報を格納するフロー設定情報格納手段と、前記パケットの到着レートを所定の単位時間当たりのデータ量として計測するレート計測手段と、前記所定の単位時間内に到着した前記パケットの属する前記フローに係る前記パケットの全データ量と前記パケットの前記到着レートとに基づいて前記パケットの属する前記フローに係る到着レートを計算するレート計算手段と、前記フロー識別手段により識別された前記フローに基づいて前記フロー設定情報格納手段から読み出される前記フローに係る前記フロー設定情報と前記フローに係る前記到着レートとを比較して前記パケットの単位で前記パケットの属する前記フローのクラスの設定を行うクラス設定手段と、前記クラス設定手段によって設定された前記パケットの属する前記フローのクラスに基づいて前記複数のパケットの出力順序の制御を行う出力制御手段と、前記出力制御手段からの残存データ量及び前記フロー設定情報の前記パケット到着レート情報に基づいて所定のタイミングで前記フローに係る前記パケット到着レート情報を更新する到着レート更新手段と、を有するパケット転送制御回路。   A flow having flow identification means for identifying a plurality of flows to which a plurality of input packets belong, bandwidth information preset for each of the plurality of flows, class information indicating priority, and packet arrival rate information Flow setting information storing means for storing setting information, rate measuring means for measuring the arrival rate of the packet as a data amount per predetermined unit time, and the flow to which the packet arriving within the predetermined unit time belongs. Rate calculating means for calculating the arrival rate of the flow to which the packet belongs based on the total data amount of the packet and the arrival rate of the packet, and based on the flow identified by the flow identifying means The flow setting information and the flow related to the flow read from the flow setting information storage means. Class setting means for setting the class of the flow to which the packet belongs in comparison with the arrival rate according to the packet, and based on the class of the flow to which the packet belongs set by the class setting means Output control means for controlling the output order of the plurality of packets, and the packets related to the flow at a predetermined timing based on the remaining data amount from the output control means and the packet arrival rate information of the flow setting information A packet transfer control circuit comprising: arrival rate update means for updating arrival rate information. 前記クラス設定手段は、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の最低保証帯域情報の値以下の場合には前記フロー設定情報の基準優先クラスに前記パケットの属する前記フローのクラスを設定し、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記最低保証帯域情報の値より大きく上限帯域情報の値以下の場合には前記フロー設定情報の前記基準優先クラスよりも優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される上限優先クラスに前記パケットの属する前記フローのクラスを設定する請求項1に記載のパケット転送制御回路。   The class setting means, when the arrival rate of the flow to which the packet belongs is equal to or less than the value of the minimum guaranteed bandwidth information of the flow setting information, the class setting means of the flow to which the packet belongs to the reference priority class of the flow setting information A class is set, and the reference priority class of the flow setting information when the arrival rate for the flow to which the packet belongs is greater than the value of the minimum guaranteed bandwidth information of the flow setting information and less than or equal to the value of the upper limit bandwidth information 2. The packet transfer control circuit according to claim 1, wherein the class of the flow to which the packet belongs is set in an upper limit priority class that has a lower priority than that and is set in association with the reference priority class. 前記クラス設定手段は、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記上限帯域情報の値より大きい場合には前記上限優先クラスよりもさらに優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される余剰優先クラスに前記パケットの属する前記フローのクラスを設定する請求項2に記載のパケット転送制御回路。   The class setting means has a lower priority than the upper limit priority class when the arrival rate related to the flow to which the packet belongs is larger than the value of the upper limit bandwidth information of the flow setting information, and the reference The packet transfer control circuit according to claim 2, wherein the class of the flow to which the packet belongs is set in a surplus priority class set in association with a priority class. 前記パケットの属する前記フローに係る前記到着レートと前記フロー設定情報の前記上限帯域情報の値とを比較して、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記上限帯域情報の値より大きい場合には前記パケットの廃棄処理を行うパケット廃棄手段を有する請求項2又は3に記載のパケット転送制御回路。   The arrival rate of the flow to which the packet belongs is compared with the value of the upper limit bandwidth information of the flow setting information, and the arrival rate of the flow to which the packet belongs is determined to be the upper limit bandwidth information of the flow setting information. 4. The packet transfer control circuit according to claim 2, further comprising packet discarding means for discarding the packet when the value is larger than the value of. パケットの複数のフローがグループ化された複数のグループのそれぞれに対して予め設定されたフローグループ対応情報と帯域情報を有するグループ設定情報とを格納するグループ設定情報格納手段と、前記パケットの到着レートに基づいて前記フローの属する前記グループに係る到着レートを計算するグループレート計算手段と、を具備し、前記出力制御手段は、前記フロー識別手段によって識別されて前記グループ設定情報格納手段の前記フローグループ対応情報に基づいて読み出される前記グループ設定情報と前記グループに係る前記到着レートと基づいて前記複数のパケットの出力の制御を行う手段を有する請求項1から請求項4のいずれかに記載のパケット転送制御回路。   Group setting information storage means for storing flow group correspondence information and group setting information having bandwidth information set in advance for each of a plurality of groups in which a plurality of flows of packets are grouped, and an arrival rate of the packets Group rate calculation means for calculating an arrival rate for the group to which the flow belongs based on the flow group, and the output control means is identified by the flow identification means and the flow group of the group setting information storage means The packet transfer according to any one of claims 1 to 4, further comprising means for controlling output of the plurality of packets based on the group setting information read based on correspondence information and the arrival rate related to the group. Control circuit. 入力される複数のパケットの属する複数のフローを識別するフロー識別ステップと、前記複数のフローの各々に対して予め設定された帯域情報と優先度を示すクラス情報とパケット到着レート情報とを有するフロー設定情報をフロー設定情報格納手段に格納するフロー設定情報格納ステップと、前記パケットの到着レートを所定の単位時間当たりのデータ量として計測するレート計測ステップと、前記所定の単位時間内に到着した前記パケットの属する前記フローに係る前記パケットの全データ量と前記パケットの前記到着レートとに基づいて前記パケットの属する前記フローに係る到着レートを計算するレート計算ステップと、前記フロー識別ステップにおいて識別された前記フローに基づいて前記フロー設定情報格納手段から読み出される前記フローに係る前記フロー設定情報と前記フローに係る前記到着レートとを比較して前記パケットの単位で前記パケットの属する前記フローのクラスの設定を行うクラス設定ステップと、前記クラス設定ステップにおいて設定された前記パケットの属する前記フローのクラスに基づいて前記複数のパケットの出力順序の制御を行う出力制御ステップと、前記出力制御ステップにおける残存データ量及び前記フロー設定情報の前記パケット到着レート情報に基づいて所定のタイミングで前記フローに係る前記パケット到着レート情報を更新する到着レート更新ステップと、を有するパケット転送制御方法。   A flow having a flow identification step for identifying a plurality of flows to which a plurality of input packets belong, class information indicating priority, bandwidth information preset for each of the plurality of flows, and packet arrival rate information A flow setting information storing step for storing setting information in the flow setting information storage means; a rate measuring step for measuring the arrival rate of the packet as a data amount per predetermined unit time; and the arrival at the predetermined unit time A rate calculating step for calculating an arrival rate for the flow to which the packet belongs based on a total amount of data of the packet for the flow to which the packet belongs and an arrival rate for the packet; Read from the flow setting information storage means based on the flow A class setting step for setting the flow class to which the packet belongs in units of the packet by comparing the flow setting information related to the flow and the arrival rate related to the flow, and is set in the class setting step An output control step for controlling the output order of the plurality of packets based on the class of the flow to which the packet belongs, a residual data amount in the output control step and the packet arrival rate information of the flow setting information An arrival rate update step of updating the packet arrival rate information relating to the flow at a predetermined timing. 前記クラス設定ステップは、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の最低保証帯域情報の値以下の場合には前記フロー設定情報の基準優先クラスに前記パケットの属する前記フローのクラスを設定するステップと、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記最低保証帯域情報の値より大きく上限帯域情報の値以下の場合には前記フロー設定情報の前記基準優先クラスよりも優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される上限優先クラスに前記パケットの属する前記フローのクラスを設定するステップと、を具備する請求項6に記載のパケット転送制御方法。   In the class setting step, when the arrival rate related to the flow to which the packet belongs is equal to or less than the value of the minimum guaranteed bandwidth information of the flow setting information, the flow of the flow to which the packet belongs to the reference priority class of the flow setting information Setting a class; and if the arrival rate for the flow to which the packet belongs is greater than the value of the minimum guaranteed bandwidth information of the flow setting information and less than or equal to the value of the upper limit bandwidth information, the reference of the flow setting information And a step of setting the class of the flow to which the packet belongs to an upper limit priority class that is lower in priority than a priority class and set in association with the reference priority class. Packet transfer control method. 前記クラス設定ステップは、前記パケットの属する前記フローに係る前記到着レートが前記フロー設定情報の前記上限帯域情報の値より大きい場合には前記上限優先クラスよりもさらに優先度が低く、かつ、前記基準優先クラスに対応付けられて設定される余剰優先クラスに前記パケットの属する前記フローのクラスを設定するステップを具備する請求項7に記載のパケット転送制御方法。   The class setting step has a lower priority than the upper limit priority class when the arrival rate related to the flow to which the packet belongs is larger than the value of the upper limit bandwidth information of the flow setting information, and the reference The packet transfer control method according to claim 7, further comprising a step of setting the class of the flow to which the packet belongs in a surplus priority class set in association with a priority class.
JP2003272879A 2003-07-10 2003-07-10 Circuit and method for packet transfer control Pending JP2005033673A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003272879A JP2005033673A (en) 2003-07-10 2003-07-10 Circuit and method for packet transfer control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003272879A JP2005033673A (en) 2003-07-10 2003-07-10 Circuit and method for packet transfer control

Publications (1)

Publication Number Publication Date
JP2005033673A true JP2005033673A (en) 2005-02-03

Family

ID=34210298

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003272879A Pending JP2005033673A (en) 2003-07-10 2003-07-10 Circuit and method for packet transfer control

Country Status (1)

Country Link
JP (1) JP2005033673A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100688422B1 (en) 2005-12-05 2007-03-02 주식회사 인티게이트 Ethernet packet classifier having pattern comparator using the memory
JP2013179678A (en) * 2013-05-13 2013-09-09 Yamaha Corp Router device
US8532104B2 (en) 2005-08-31 2013-09-10 Yamaha Corporation Communication apparatus capable of traffic controlling in serial connected queues

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8532104B2 (en) 2005-08-31 2013-09-10 Yamaha Corporation Communication apparatus capable of traffic controlling in serial connected queues
KR100688422B1 (en) 2005-12-05 2007-03-02 주식회사 인티게이트 Ethernet packet classifier having pattern comparator using the memory
JP2013179678A (en) * 2013-05-13 2013-09-09 Yamaha Corp Router device

Similar Documents

Publication Publication Date Title
US7123622B2 (en) Method and system for network processor scheduling based on service levels
EP2862301B1 (en) Multicast to unicast conversion technique
CN107959636B (en) Method and device for sending BGP (Border gateway protocol) message
JP3784049B2 (en) Method and system for a network processor for scheduling output using a disconnect / reconnect flow queue
JP2004266389A (en) Method and circuit for controlling packet transfer
US6795870B1 (en) Method and system for network processor scheduler
US20050047425A1 (en) Hierarchical scheduling for communications systems
JP2014517571A (en) Hierarchical scheduling and shaping
Yap et al. Scheduling packets over multiple interfaces while respecting user preferences
US6952424B1 (en) Method and system for network processor scheduling outputs using queueing
US7843825B2 (en) Method and system for packet rate shaping
JP4907545B2 (en) Provisions for fair transmission of communication time without using clear traffic specifications for wireless networks
JP7211765B2 (en) PACKET TRANSFER DEVICE, METHOD AND PROGRAM
JP2020022023A (en) Packet transfer device, method, and program
JP2005033673A (en) Circuit and method for packet transfer control
US8467401B1 (en) Scheduling variable length packets
JP2005268846A (en) Multiplexed packet transfer system
US7315901B1 (en) Method and system for network processor scheduling outputs using disconnect/reconnect flow queues
Strzęciwilk et al. Performance analysis of a qos system with wfq queuing using temporal petri nets
JP4977677B2 (en) Edge node and bandwidth control method
JP3583711B2 (en) Bandwidth control device and method
Yoo et al. Wireless delay proportional service (WDPS) scheduling algorithm for differentiated service in wireless networks with location-dependent errors
JP2004104571A (en) Method and apparatus for packet transfer control, software, and recording medium
Wu et al. A per-flow based node architecture for integrated services packet networks
JP3917830B2 (en) Rate control device