JP2008166888A - スイッチにおける優先度帯域制御方法 - Google Patents

スイッチにおける優先度帯域制御方法 Download PDF

Info

Publication number
JP2008166888A
JP2008166888A JP2006350847A JP2006350847A JP2008166888A JP 2008166888 A JP2008166888 A JP 2008166888A JP 2006350847 A JP2006350847 A JP 2006350847A JP 2006350847 A JP2006350847 A JP 2006350847A JP 2008166888 A JP2008166888 A JP 2008166888A
Authority
JP
Japan
Prior art keywords
priority
destination
switch
data
nodes
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
JP2006350847A
Other languages
English (en)
Other versions
JP5034491B2 (ja
JP2008166888A5 (ja
Inventor
Michitaka Okuno
通貴 奥野
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006350847A priority Critical patent/JP5034491B2/ja
Priority to US11/878,279 priority patent/US20080159149A1/en
Publication of JP2008166888A publication Critical patent/JP2008166888A/ja
Publication of JP2008166888A5 publication Critical patent/JP2008166888A5/ja
Application granted granted Critical
Publication of JP5034491B2 publication Critical patent/JP5034491B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element
    • H04L49/501Overload detection
    • H04L49/503Policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3072Packet splitting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches

Abstract

【課題】 スイッチファブリックの特定の宛先が混雑している輻輳状態では、高優先度のデータを低遅延または高スループットで通過させ、また特定の宛先が混雑していない非輻輳状態では優先度によらずスイッチの交換帯域を利用しつくす。
【解決手段】 宛先毎に2個以上の優先度キューを持つ複数個の送信元ノードと、全入力に対し宛先毎に均等に出力を行うスイッチと、前記スイッチからデータを受信する複数個の宛先ノードにより構成するスイッチファブリックにおいて、送信元ノードが管理するスイッチの宛先毎の受信バッファ空き容量が、設定した輻輳閾値以下となったら当該宛先が輻輳しているとみなし、当該宛先に対し前記優先度キューからのデータ出力を優先度に応じて予め設定した帯域まで制限し、また前記宛先毎の受信バッファ空き容量が設定した輻輳解除閾値以上となったら当該宛先の輻輳が解除されたとみなし、前記の優先度に応じた帯域制限を解除する。
【選択図】 図1

Description

本発明は、ルータ、サーバ、ストレージ装置などにおいて、装置内部に有する複数の機能ブロックを動的に相互に接続するスイッチ技術に関する。特に、独立動作する複数のスイッチを利用し、データに付加された優先度情報により優先度帯域制御を実現するための技術に関する。
特開2002−247080 US20060104298(A1)
ルータなどのネットワーク転送装置やサーバ装置、複数のディスクアレイを接続するストレージ装置などでは、装置内部の機能ブロック間でデータ交換を行うためにスイッチファブリックが利用される。スイッチファブリックの交換帯域には限りがあるため、複数の入力データが同一宛先に集中する場合、優先度に応じたデータ通過を実現することが望まれている。すなわち、高優先度のデータを低遅延または高スループットで通過させることが望まれる。
一般に、ルータやスイッチと呼ばれるネットワーク転送装置では、ネットワークから、パケットまたはフレームと呼ばれるデータを受信すると当該データのヘッダ情報を利用して装置内における優先度を決定し、装置内での優先度情報をデータに付加する。例えば、音声データや映像データ、特定の経路を通過するデータ等を高優先度とし、それ以外のデータを低優先度としたりする。そして、付加した優先度情報を利用して、装置内のスイッチファブリックにおける当該データの扱いを変えることで優先度制御を実現する。
一般に、スイッチファブリックにおける優先度制御方法は、次の二通りに分類することができる。一つ目は、スイッチファブリックの送信元ノードにおいて、優先度による帯域制御機能を設ける方法である。この方法によれば、スイッチデバイスに対してデータを送信できる状態であっても優先度が低ければ、ある閾値条件を満たしていなければ出力を禁止する。つまり、スイッチファブリックへのデータ入力に対して優先度毎に出力制限を設けることで、高優先度データの低遅延化または高スループット化を実現できる。この技術の具体例として、特開2002−247080が挙げられる。
二つ目は、スイッチファブリック内のスイッチデバイスに優先データ選択出力機能を設ける方法である。この方法によれば、スイッチデバイスにおいて、可変長のパケット単位、または、パケットを構成する固定長のセル単位で宛先毎にデータの出力調停を行う。優先度の高いデータを優先して選択出力することで、高優先度データの低遅延化または高スループット化を実現できる。
しかしながら、これらの従来手法には問題点がある。まず、一つ目の方法では、優先度によって利用可能な帯域を常に制限しているため、優先度の低いデータだけしか存在しない場合、スイッチファブリックがすいている非輻輳の状態でも低優先度のデータ出力が制限されてしまう。その結果として、スイッチファブリックの交換帯域を利用しきれない問題点がある。
また、スイッチファブリックが輻輳した場合に、どこで輻輳したかという情報をスイッチが送信側ノードへコマンドとして送信し、帯域制御を行う方法がUS20060104298(A1)に述べられているが、この場合、スイッチに特殊なコマンドを生成する仕組みが必要となる。また、コマンドが送信側ノードへ到着するまでにはある程度の時間がかかるため、即応性にやや欠ける。
また、二つ目の方法では、送信元ノードからスイッチデバイスに送信された低優先度データの一部がスイッチデバイス内に滞留しやすくなり、この現象が問題を引き起こしうる。例えば、スイッチデバイス内に優先度毎に独立したデータの一次保持領域を持たない場合、同一送信元からの後続の高優先度データが、先行の低優先度データによって進行を妨げられる問題が発生する。この問題を避けるためには、同一送信元毎に優先度毎に独立したデータの一次保持領域が必要であるが、これは優先度数に正比例してハードウェア量が増加するため、ハードウェアコストを上昇させてしまい、やはり問題が残る。
また、前記二つ目の方法では、目的とする交換容量の1/Kの交換容量のスイッチをK面分用意し、前記K面のスイッチ全てに対して、全ての送信元ノードと全ての宛先ノードとを接続し、入力データを各スイッチ面へ分散させ、並列動作させる分散型スイッチで可変長データを交換する場合においては問題が顕著である。一般に、ハードウェア構成を簡易にするために、スイッチファブリック内では可変長データを複数の固定長データに区切って送信し、宛先で元の可変長データに組み立てなおす操作が行われる。
ここで、スイッチデバイスに優先度データ選択出力機能があると、K面の中のいくつかのスイッチで高優先度データと低優先度データの衝突が発生したとき、低優先度のデータがスイッチデバイス内に残ってしまう。一方で、衝突の発生しなかったスイッチでは、低優先度のデータがそのまま通過するため、結果として、可変長データの一部だけがスイッチに滞留してしまう現象が発生する。この状況が続くと、送信元ノードは空いているスイッチ面を利用してどんどんデータを送信するため、後続の低優先度データが、先行の低優先度データを追い越す現象となる。特に、スイッチ面数が多い場合や、ノード数が多い場合には、この問題の影響が大きい。宛先ノードでは、元の可変長データを再現するために、それを構成する全ての固定長データの待ち合わせが必要であるが、前記のスイッチでのデータ滞留が頻発する状況では、滞留しているデータの待ち合わせを行うための論理やメモリを巨大化せざるを得なくなり、コスト的な問題を引き起こす。
スイッチファブリックの特定の宛先が混雑している輻輳状態において、高優先度のデータを低遅延または高スループットで通過させることが課題である。同時に、スイッチファブリックの特定の宛先が混雑していない非輻輳状態において、優先度によらずスイッチの交換帯域を利用しつくすことが課題である。
本発明の代表的実施例に従えば、宛先毎に2個以上の優先度別出力キューを持つ複数個の送信元ノードと、全入力に対し宛先毎に均等に出力を行うスイッチと、前記スイッチからデータを受信する複数個の宛先ノードにより構成するスイッチファブリックにおいて、送信元ノードが管理するスイッチの宛先毎の受信バッファ空き容量が、設定した輻輳閾値以下となったら当該宛先が輻輳しているとみなし、当該宛先に対し、前記優先度別出力キューからのデータ出力を優先度に応じて予め設定した帯域まで制限し、また、前記宛先毎の受信バッファ空き容量が設定した輻輳解除閾値以上となったら当該宛先の輻輳が解除されたとみなし、前記の優先度に応じた帯域制限を解除する。
本発明を利用することにより、スイッチファブリックの特定の宛先が混雑している輻輳状態において、高優先度のデータを低遅延または高スループットで通過させることができる。同時に、スイッチファブリックの特定の宛先が混雑していない非輻輳状態において、優先度によらずスイッチの交換帯域を利用しつくすことができる。また、可能な限り小規模のハードウェア資源で、前記の優先度帯域制御の仕組みを提供できる。
以下、より詳細な内容を添付図面に基づいて実施例で説明する。
本発明における分散型スイッチ構成の一実施例を4ポートの小規模スイッチファブリックとして図2に示す。スイッチファブリックは、送信元ノード100−0〜3、データ交換を行うスイッチ200−1〜2、宛先ノード300−0〜3により構成する。ここで、スイッチ200は、優先度制御を行わず、全入力に対し宛先毎に均等に出力を行う非常にシンプルなスイッチとする。尚、ここでは、2面の分散型スイッチ200を前提としているが、1面だけのスイッチ200でも構わない。また、3面以上の分散型スイッチ200でも構わない。
送信元ノード100は、宛先毎及び優先度毎の仮想出力キュー(VOQ:Virtual Output Queue)を持つ。ここでは、優先度は2クラスとし、高優先度QoS1のVOQ110〜113−Aと低優先度QoS0のVOQ110〜113−Bを持つ。前記VOQ110〜113−A、Bは優先度によらず、宛先毎に独立したクレジットをクレジットテーブル120に持つ。ここで、クレジットとは、スイッチ200が送信元毎及び宛先毎に持つ受信バッファの空き容量を意味する。クレジットがある前記VOQ110〜113−A、Bはデータをスイッチ200へ送信することができる。
ここで、図3を利用して、スイッチファブリックの一般的なクレジット制御に関して説明する。図3は、送信元ノード100−0が、宛先ノード300−1へデータ400を送信する例である。送信元ノード100−0は、状態1において、スイッチ200の自送信元用の宛先ノード300−1の空きバッファ領域、すなわち、クレジットが残っているか調べる。クレジットが残っていれば、データ400をスイッチ200へ送信し、当該クレジットを減らし状態2へ移行する。次にスイッチ200は、宛先ノード300−1のクレジットが残っているか調べる。クレジットが残っていれば、データ400を宛先ノード300−1へ送信し、宛先ノード300−1用のクレジットを減らす。更に、スイッチ200では送信元100−0用のバッファ領域が再び空くため、送信元ノード100−0へ回復用のクレジット500を返却する(状態3)。
以上のように、送信元100は、スイッチ200用の宛先のクレジットが残っている限り、当該宛先へのデータ送信が可能である。クレジットは、データがスイッチ200を通過するたびに、スイッチ200が当該データ送信元へ回復クレジットを返却することにより回復する。尚、スイッチ200には、送信元毎に、このデータ送信からクレジット回復までにかかる時間(RTT:Round Trip Time)分以上のバッファ領域が必要であり、送信元100は前記のバッファ容量に相当する分のクレジットを持つ。データが順調に流れている場合、送信元100のクレジットは前記RTT分消費された状態が続く。
また、図4を利用して、スイッチファブリックで輻輳が発生する状況に関して説明する。図4は、全ての送信元ノード100−0〜3が、同一の宛先ノード300−1へデータ400−0〜3を送信する例である。送信元ノード100−0〜3は、状態1において、スイッチ200の自送信元用の宛先ノード300−1の空きバッファ領域、すなわち、クレジットが残っているか調べる。クレジットが残っていれば、データ400−0〜3をスイッチ200へ送信し、当該クレジットを減らし状態2へ移行する。次にスイッチ200は、宛先ノード300−1のクレジットが残っているか調べる。クレジットが残っていれば、データ400−0〜3のうち一つを選択し宛先ノード300−1へ送信し、宛先ノード300−1用のクレジットを減らす。この例では、送信元100−3のデータ400−3が選択されたため、スイッチ200では送信元100−3用のバッファ領域が再び空くため、送信元ノード100−3へ回復用のクレジット500を返却する(状態3)。
図4の状態が続くと、各送信元100へは回復クレジット返却が滞るようになるため、各送信元はクレジット不足に陥り、データが送信できない状態が頻発し、スイッチファブリックの当該宛先は輻輳状態となる。以上、一般的なクレジット制御に関する説明を終える。
ここで、図1を用いて、本発明のスイッチファブリックにおける優先度制御方法に関して説明する。図1の状態130、状態140は、ともに、図2のVOQのうち、あるひとつの宛先用の優先度毎のVOQを示している。また、状態130は優先度帯域制御を無効化している状態、状態140は優先度帯域制御を有効化している状態を表現している。また、優先度帯域制御の有効化の有無に関わらず、複数の優先度のVOQにデータがあれば、高優先度であるVOQの出力を優先する。尚、ここでは、説明を簡単にするために、高優先度(QoS1)VOQ119Aと低優先度(QoS0)VOQ119Bの二つだけとしている。
状態130では、優先度によってVOQ119A、119Bのデータ出力帯域を制限しない。このため、状態130では、VOQ119AとVOQ119Bいずれのデータも、帯域を制限することなく出力可能である。図2のスイッチ200において、宛先が輻輳していない場合においては、優先度によらずスイッチファブリックの交換帯域を利用しきることができるため、この状態130が望ましい。しかしながら、ある宛先が輻輳している場合、例えば、図2において、送信元0からは常に低優先度データを、送信元1からは常に高優先度データを宛先0へ送信した場合、スイッチ200が全入力に対し宛先毎に均等にデータ出力するため、宛先0から観測すると、高優先度と低優先度のデータがスイッチ200の交換帯域を均等に利用してしまう。このため、高優先度のデータを低遅延または高スループットで通過させることができなくなってしまう問題がある。
状態140では、優先度によってVOQ119A、119Bのデータ出力帯域を制限する。具体的には、VOQ119Aのデータ出力帯域は制限せず、VOQ119Bのデータ出力帯域を制限する。より一般的には、最高優先度のVOQのデータ出力帯域は制限せず、その他の低優先度のVOQのデータ出力帯域を制限する。
図2のスイッチ200において、宛先が輻輳している場合においては、前記宛先には高優先度のデータがスイッチファブリックの交換帯域を多く利用することができるため、この状態140が望ましい。注意すべき点は、図1の状態140を常に保つと、背景技術で説明したように、優先度の低いデータだけしか存在しない場合、ある宛先が非輻輳の状態でも低優先度のデータ出力が制限されてしまう。その結果、低優先度のデータだけが存在する場合、スイッチファブリックの交換帯域を利用しきれないという問題点がある。
そこで、本発明では、スイッチファブリックのある宛先が輻輳状態にあるか、または、輻輳状態が解除されたかを、当該宛先の残クレジット量を利用して検出し、優先度帯域制御の有効化と無効化を切り替える。この方法に関して図5〜図8を用いて説明する。
まず、図4で説明したように、各送信元ノード100のクレジットテーブル120において宛先毎の残クレジットを観測することにより、輻輳の発生している宛先を検出することができる。図5は、クレジットテーブル120のある宛先の残クレジット量をグラフとして示した図である。残クレジット量に対し、RTT閾値620、輻輳閾値630、輻輳解除閾値640、優先度毎の送出禁止閾値60X(本例では、4レベルの優先度QoSXを例として示しており、X=0〜3である)を設ける。図5では、縦方向を残クレジット量とし、1クレジットをひとつの四角で表現し、上ほど値が大きいものとして以下の説明を行う。
RTT閾値620とは、送信元ノード100がスイッチ200へデータ送信し、スイッチ200から送信元ノード100へ回復クレジットが届くまでにかかる時間に送信可能なデータ量に相当するクレジット数である。ただ一つの送信元ノード100からある宛先ノード300へのデータ送信が続く場合、残クレジット量は、RTT閾値620と一致する。
輻輳閾値630とは、図5では、RTT閾値620以下の値である。複数の送信元ノード100から同時にある宛先ノード300へのデータ送信が続く場合、残クレジット量は、輻輳閾値630を下回るため、輻輳が発生したとみなすことができる。従来技術のスイッチで輻輳検出を行う場合、スイッチに特殊なコマンドを生成する仕組みが必要であったり、また、コマンドが送信側ノードへ到着するまでにはある程度の時間がかかり即応性にややかけたりする問題があった。本発明によれば、送信元ノードで残クレジット参照によって輻輳状態の検出を行うため、スイッチには前記の特殊コマンドの実装は不要であるし、また、応答性も前記に比べて速いという利点がある。
輻輳が発生した場合、優先度毎に送出禁止閾値60X(X=0〜3)の設定を有効化する。各優先度のデータは、残クレジットが送出禁止閾値60X(X=0〜3)以上残っている場合に限りデータを出力することができる。Xの値が大きいほど優先度が高いとしたとき、Xの値が大きいほど送出禁止閾値60Xは小さくする。少なくとも、最高優先度(QoS3)の場合は、クレジットを全て使い切るまで送信可能であるべきであり、図5では残クレジット量を示すグラフの最下辺と一致させる。
輻輳解除閾値640とは、輻輳状態が解除されたとみなすための閾値である。当該宛先へのデータ転送が途切れ、スイッチ200からの回復クレジット返却が続くと、残クレジット量は、輻輳解除閾値640を上回る。このとき、優先度毎の送出禁止閾値60X(X=0〜3)の設定を無効化する。一般に、輻輳解除閾値640は、優先度毎の送出禁止閾値60X(X=0〜3)のいずれよりも大きい値である。
次に、図5を簡易化し、優先度を2レベルだけとした図6と、図7のフローチャートによって、本発明の優先度帯域制御方法を説明する。図6の状態10は、ある宛先のクレジットの全てが未使用の状態、つまり残クレジット量が8個の状態である。当該宛先に対しデータ送信を続けると、状態11に示すように使用中クレジットが増加し、残クレジットが減少して行く。しかしここまでは、優先度帯域制限は無効であり、上記宛先へ送信すべきデータが来る毎に、図7のフローチャートでステップ700→701→703と進む。ステップ704で当該宛先の残クレジットはまだ輻輳閾値600を下回らないので、710に進んで完了する。つまり、毎回のデータがスイッチ200へ送出され、それに対応して当該宛先のクレジットが削減される。
当該宛先へのデータ送信が続いている最中に、他の送信元も同一の宛先へデータ送信を行い始めると、当該送信元へのクレジット返却が滞るようになるため、図6の状態12に示すように、残クレジット量が輻輳閾値630を下回る。この状態をトリガとして、当該宛先の優先度帯域制御を有効化する。図7のフローチャートでは、ステップ704から705へと進み、優先度帯域制限が有効化される。この制御状態の変更以降のデータについては、ステップ701から702に進むので、ステップ702の判定に応じてデータ送信可否が決まる。具体的には、その時の残クレジット量をデータの優先度に対して設定された送出禁止閾値と比較し、それ以上であればデータを送信してクレジットを削減する。つまり、当該送信元の当該宛先へのデータ送信には、優先度に応じた制限が加わる。図6の例では、低優先度のデータは、当該宛先の残クレジット量が、低優先度送出禁止閾値600を越えるまで、つまり図6の状態13になるまで、データ送信が禁止される。一方、高優先度のデータは、送出禁止閾値は最低値(残クレジットがEMPTY)に設定されているので、クレジットがある限り毎回送信される。
当該送信元のデータ出力が途切れ、当該宛先の回復クレジットが当該送信元に返却され続けると、輻輳解除閾値640を上回り、図6の状態14となる。この状態をトリガとして、当該宛先の優先度帯域制御を無効化する。図8はこの輻輳回復過程での制御状態の変更動作を示すフローチャートである。ステップ800で回復クレジットがスイッチ200から返ると、ステップ801で当該宛先のクレジットが増加する。その結果、ステップ802の判定で当該宛先の残クレジット量が輻輳解除閾値640に達すると、ステップ803に進み、当該宛先の優先度帯域制御を無効化する。
ここで、本発明の優先度帯域制御の無効化と有効化を切り替えながら優先度帯域制御を行うための送信元ノード100におけるVOQ選択論理の一実施例を図9に示す。
送信元ノード100では、優先度と宛先数の積で示される数のVOQを持つ。各VOQからの出力調停要求を優先度毎にVOQ調停器170〜173が集め、ラウンドロビン等のアルゴリズムに基づいてそれぞれ候補となるVOQを選択する。
次に、QoS調停器180により、選択された候補VOQの間で最も優先度の高いものを選択する。選択後に、残クレジットチェック器192により、選択されたVOQの宛先の残クレジットをチェックする。残クレジットはクレジットテーブル120から読み出され、当該宛先の優先度帯域制御が有効化されていれば、優先度によって残クレジットを優先度送出禁止閾値で関連付けられる量だけ減らした値でチェックを行う。当該宛先の優先度帯域制御が無効化されていれば、クレジットテーブル120の読出し値をそのまま利用してチェックを行う。残クレジットチェック器192において、クレジットが残っていると判定されれば、選択されたVOQは出力調停に勝利したことになり、クレジットが残っている限りデータ出力を行える。クレジットはスイッチから回復クレジットが返却されることで回復する(150)。
勝利VOQのデータを出力する毎に、クレジットテーブル120の当該宛先の残クレジットを削減し(151)、優先度毎のVOQ調停器170〜173では、選択アルゴリズムの結果修正、例えば、ラウンドロビン制御であれば優先選択出力番号を一つずらすこと、を行う(152)。また、勝利VOQの読出しポインタを修正して、次のデータ読み出しに備える(153)。
ここで、これまでに説明を行った、送信元ノード100のVOQからのデータ出力と残クレジットの関係を図10に示す。横軸は残クレジット量、縦軸はデータ出力の可否(上なら可、下なら不可)であり、横軸上には、図5で示した輻輳閾値630、輻輳解除閾値640、輻輳が発生した場合の優先度毎に送出禁止閾値60X(優先度が4クラスの場合、X=0〜3)の位置関係を示している。
非輻輳の場合、データの優先度に拠らず、残クレジットが1以上ある限り、VOQからデータ出力が可能である。すなわち、図10中のQoS3と同じ制御状態となる。一方、一度、残クレジットが輻輳閾値630を下回ると、優先度帯域制御が有効化され、優先度毎の送出禁止閾値600、601、602、603が有効となる。この状態では、データの優先度によって、図10中のQoS0〜QoS3の制御状態になる。すなわち、優先度Xの場合、残クレジットが優先度毎の送出禁止閾値60Xを以上であればVOQからデータ出力が可能であるが、下回ればデータ出力を抑止する。また、輻輳状態に突入した宛先に関しては、当該宛先のデータ出力が一旦終わり、残クレジットが輻輳解除閾値640を上回るまでは、優先度帯域制御を有効化したままである。
優先度毎の帯域優先度制御を無効化した場合、及び、有効化した場合、それぞれについて、スイッチファブリックの全入力の比率(100%は隙間無く連続して送信元ノード100へデータ入力することを示す)と交換帯域の一般的な関係を図11に示す。尚、宛先は、ランダムであり、特定の宛先への偏りがある場合もあるものとする。
優先度帯域制御を無効化している場合は、入力レートが100%に近づくにつれて、実効交換帯域、すなわちデータの通過率は減少していく。一方で、優先度帯域制御を有効化している場合は、複数の優先度が混じったデータが入力されていれば、優先度が高いデータの場合、入力レートが100%に近づいても、ほぼ100%に近い実効交換帯域、すなわちデータの通過率を維持できる。これは、言い換えると、優先度の低いデータの実効交換帯域を減少させることにより、優先度の高いデータの実効交換帯域を向上させている。優先度帯域制御の有効化、無効化の切り替え方は、図5〜図8及び図10を利用して先に説明したとおりである。
また、優先度によるスイッチファブリックの通過遅延の様子を図12に示す。優先度帯域制御を無効化している場合は、入力レートが100%に近づくにつれて、遅延は増加していく。一方で、優先度帯域制御を有効化している場合は、複数の優先度が混じったデータが入力されていれば、優先度が高いデータの場合、入力レートが100%に近づいても、ほぼ一定の通過遅延を維持できる。これは、言い換えると、優先度の低いデータの通過遅延を増加させることにより、優先度の高いデータの通過遅延を低下させている。
以上、本発明による優先度帯域制御の無効化と有効化を切り替えながら優先度帯域制御を行う方法に関して詳細な説明を行った。本説明は、実施の一形態に過ぎず、本発明の技術的思想および技術的範囲から離れることなく、様々な変形が可能である。
実施例1では、送信元ノード100からの送信は、単一の宛先ノード300へのユニキャストを想定していたが、複数の宛先ノード300へのマルチキャストの場合でも同様の優先度帯域制御が可能であり、実施例2として説明する。
マルチキャストをサポートする場合、実施例1の送信元ノード100のユニキャスト用VOQに加え、扱う優先度の数だけ、マルチキャスト専用VOQを用意する。
基本的な処理は、実施例1と同様であるが、送信元ノード100でマルチキャストデータを選択する場合は、図2のクレジットテーブル120では、対応する全ての宛先の残クレジットを参照し、残クレジットがある場合にのみデータを出力することができる。この時、送信元ノード100はマルチキャストであるという情報、すなわち、複数の宛先情報を付加してデータをスイッチ200へ送信する。スイッチ200は前記マルチキャスト情報に基づき、指定された全ての宛先ノード300へデータをコピーして送信する。
尚、優先度帯域制御が、対応する宛先のうち一つでも有効化されている場合は、全ての宛先に対して優先度帯域制御が有効化されているものとみなして処理を行う。
本説明は、実施の一形態に過ぎず、本発明の技術的思想および技術的範囲から離れることなく、様々な変形が可能である。
実施例1、2では、図2において送信元ノード100が管理するスイッチ200の残クレジットを宛先毎に管理している。実施例3では、実施例1、2を前提とし、前記残クレジットを、複数の宛先で共有する方法に関して説明する。尚、本実施例のメリットは、ポート数の多いスイッチ200を利用しても、比較的小規模の論理で優先度帯域制御が実現できる点である。
スイッチ200の内部に、送信元ノード100毎に各宛先に対して独立な受信バッファを設けると、ある宛先が輻輳しても、他の宛先はその影響を全く受けずにデータ送信が可能になる。しかしながら、スイッチ200を構成するスイッチデバイスのチップ面積がポート数の二乗で巨大化してしまう問題がある。スイッチの巨大化を避ける方法として、スイッチ200の受信バッファを共用する方法が挙げられる。
スイッチ200の受信バッファを共有する方法には、一つ目として、複数の送信元ノード100間でスイッチ200の受信バッファを共有する方法、二つ目として、送信元ノード100毎に複数の宛先間でスイッチ200の受信バッファを共有する方法がある。一つ目の方法は、他の送信元ノード100の送信状況によって受信バッファの空き容量、すなわち、残クレジット量が変わってしまい、制御が複雑化するため望ましくない。よって、ここでは、二つ目の方法に関して、スイッチファブリックの優先度帯域制御方法を説明する。
送信元ノード100毎に複数の宛先間でスイッチ200の受信バッファを共有する方法の場合、図2のクレジットテーブル120におけるクレジット管理は、個別の宛先毎ではなく、スイッチ200の受信バッファを共有している宛先間で一つずつ管理する。例えば、スイッチ200が8ポートのスイッチであり、出口ポートを全て独立に管理する場合は、クレジットテーブル120は、宛先毎、合計八つの残クレジットを管理する。一方、8ポートのスイッチ200で、出口ポート0〜1、2〜3、4〜5、6〜7で受信バッファを共有する場合、クレジットテーブル120は、宛先0〜1で一つ、宛先2〜3で一つ、宛先4〜5で一つ、宛先6〜7で一つ、合計四つの残クレジットを管理する。
ある宛先の残クレジットが不足し、図5の輻輳閾値630を下回る場合、当該宛先及び、当該宛先と残クレジットを共有する他の宛先も一緒に優先度帯域制御の有効化を行う。優先度帯域制御の無効化は、当該宛先と残クレジットを共有する全ての宛先行きのデータの送信が途切れて、残クレジットが輻輳解除閾値640を上回る場合に行う。
本実施例は、図2において、特に、多ポートのスイッチ200を利用する場合に適用しやすい。多ポートのスイッチであるほど、物理的な制約から、送信元及び宛先毎に完全に独立した受信バッファを搭載しにくくなるため、先に述べた、送信元ノード100毎に複数の宛先間でスイッチ200の受信バッファを共有する方法が有効であるためである。送信元ノード100でのクレジットテーブル120の制御も、宛先を集約した分、制御論理が単純化され制御が容易になる。1ポートの輻輳の影響が、宛先を共有する他の出力ポートへも輻輳の影響を与え、スループットが低下するが、共有するポート数をある程度少なくすることによって、前記の悪影響は最小限に抑えることも可能である。
本説明は、実施の一形態に過ぎず、本発明の技術的思想および技術的範囲から離れることなく、様々な変形が可能である。
近年のルータやスイッチ(L2スイッチ、L3スイッチ等)などの多くのネットワーク転送装置では、転送データとして可変長のイーサネットフレーム(以後、パケットと呼ぶ)が利用されている。そして、スイッチファブリックを持つネットワーク転送装置は、装置内でパケットを固定長のセルに分割して転送することが多い。すなわち、スイッチファブリックへの入力データが、複数のデータで構成されているように見える。そこで、実施例4として、実施例1から実施例3までに関して、扱うデータがパケットである場合についての本発明の適用方法を示す。
実施例4では、図2の送信元ノード100のVOQは、データとしてパケットを管理する。そして、パケットをVOQから読出し、スイッチ200に送信する際に、1個以上のセルに分割する。クレジットテーブル120の残クレジットは、スイッチ200に実際に送出したセルの数に応じて減少させる。
ここで、あるパケットをセルに分割してスイッチ200に転送している最中に、当該宛先の残クレジットが図5の輻輳閾値630を下回ることがある。下回った時点で、実施例1から実施例3までで述べたように、当該宛先の優先度帯域制御を有効化するが、当該パケットは、まだ途中までしかセル化していない。この場合、当該パケットから生成されるセルに限って、QoSX送出禁止閾値60X(X=0〜3)の制限を受けずにそのまま送出してもよい。
また、優先度帯域制御が有効化されている間、VOQからの取り出しに成功したパケットは、QoSX送出禁止閾値60X(X=0〜3)の制限を受けずに全てをセル化して送出してもよい。もしくは、優先度帯域制御が有効化されている間、VOQからの取り出しに成功したパケットは、QoSX送出禁止閾値60X(X=0〜3)の制限を受けている分のセルは、一旦、送出を停止し、QoSX送出禁止閾値60X(X=0〜3)の制限を受けない分ずつだけ送出してもよい。
本説明は、実施の一形態に過ぎず、本発明の技術的思想および技術的範囲から離れることなく、様々な変形が可能である。
実施例1から実施例4では、スイッチファブリックのスイッチ200は、単段のスイッチを前提として記載した。しかしながら、扱うポート数を大きく増加させるためには、単一スイッチデバイスではなく、複数のスイッチデバイスでクロス網やベネス網など、3ステージ以上の多段結合網を構成する必要がある。この場合でも、実施例1から4に示した方法と同様の優先度帯域制御を実現でき、このための修正点を実施例5として説明する。
実施例5において、送信元ノード100が扱うスイッチ200の残クレジットは、送信元ノード100に最も近いステージに位置するスイッチデバイスの空きバッファ容量を示す。2ステージ目以降のスイッチデバイスの空きバッファ容量は、送信元ノード100では管理する必要がなく、一般にNステージ目(Nは2以上の整数)のスイッチデバイスの残クレジットは、(N−1)ステージのスイッチデバイスが管理する。優先度待機制御の有効化、無効化、及びそれぞれの状態における送信元ノード100における帯域制御方法も実施例1をそのまま実施すればよい。すなわち、複数ステージのスイッチデバイスで多段結合網を構成するスイッチシステムにて、その多段結合網のうち最も送信ノードに近いスイッチデバイスの宛先毎の受信バッファ空き容量として残クレジット量を管理し、その情報のみによって優先度帯域制御の有効化と無効化を切り換える。
本説明は、実施の一形態に過ぎず、本発明の技術的思想および技術的範囲から離れることなく、様々な変形が可能である。
本発明による優先度帯域制御方法は、大容量回線を利用したデータ交換が必要なシステムで利用することができる。例えば、ルータやスイッチに代表されるネットワーク装置内のスイッチファブリックや、サーバやストレージ機器の装置内のスイッチファブリック等での利用が考えられる。
本発明の優先度帯域制御方法を示すブロック図。 本発明を適用するスイッチファブリックのブロック図。 従来のクレジット制御方法の例を示すブロック図。 従来のクレジット制御方法の例を示すブロック図。 本発明の残クレジット量による優先度帯域制御方法を示す説明図。 本発明の残クレジット量による優先度帯域制御方法を示す説明図。 本発明の優先度帯域制御の有効化方法及び帯域制限方法を示すフローチャート。 本発明の優先度帯域制御の無効化方法を示すフローチャート。 本発明の優先度帯域制御を実施する論理の一実施形態を示すブロック図。 本発明の優先度帯域制御が有効化されている場合のデータ出力状況を示すグラフ。 本発明の優先度帯域制御が有効化されている場合の交換帯域状況を示すグラフ。 本発明の優先度帯域制御が有効化されている場合の通過遅延状況を示すグラフ。
符号の説明
100:送信元ノード
200:スイッチ
300:宛先ノード
110:VOQ
120:クレジットテーブル
130:優先度帯域制御無効化状態
140:優先度帯域制御有効化状態
600−603:QoS0−3データ送出禁止閾値
620:ラウンドトリップタイム閾値
630:輻輳閾値
640:輻輳解除閾値。

Claims (11)

  1. 宛先毎に2個以上の優先度別出力キューを持つ複数個の送信元ノードと、前記複数個の送信ノードから投入されたデータを、その宛先毎に均等に配信するスイッチと、前記スイッチからデータを受信する複数個の宛先ノードにより構成するスイッチファブリックにおける優先度帯域制御方法であって、
    各送信元ノードは、
    各々が管理するスイッチの宛先毎の受信バッファ空き容量が、設定した輻輳閾値以下となったら当該宛先が輻輳しているとみなし、当該宛先に対し、前記優先度別出力キューからのデータ出力を優先度に応じて予め設定した帯域まで制限し、
    また、前記宛先毎の受信バッファ空き容量が設定した輻輳解除閾値以上となったら当該宛先の輻輳が解除されたとみなし、前記の優先度に応じた帯域制限を解除することを特徴とするスイッチの優先度帯域制御方法。
  2. 宛先毎に2個以上の優先度別出力キューを持つ複数個の送信元ノードと、前記複数個の送信ノードから分割してそれぞれ投入されたデータを、その宛先毎に均等に配信する複数個のスイッチと、前記スイッチからデータを受信する複数個の宛先ノードとを持ち、全ての前記送信元ノードと全ての前記宛先ノードが、前記複数個のスイッチ全てに対し接続を持つスイッチファブリックにおける優先度帯域制御方法であって、
    各送信元ノードは、
    各々が管理するスイッチの宛先毎の受信バッファ空き容量が、設定した輻輳閾値以下となったら当該宛先が輻輳しているとみなし、当該宛先に対し、前記優先度別出力キューからのデータ出力を優先度に応じて予め設定した帯域まで制限し、
    また、前記宛先毎の受信バッファ空き容量が設定した輻輳解除閾値以上となったら当該宛先の輻輳が解除されたとみなし、前記の優先度に応じた帯域制限を解除することを特徴とするスイッチの優先度帯域制御方法。
  3. 請求項1に記載の優先度帯域制御方法において、ある送信元ノードからのデータが複数の宛先へ配信すべきマルチキャストデータである場合、当該宛先のうち少なくとも一つが輻輳状態にあれば、当該マルチキャストの全ての宛先に対し、前記優先度別出力キューからのデータ出力を優先度に応じて、予め設定した帯域まで制限することを特徴とするスイッチの優先度帯域制御方法。
  4. 請求項1に記載の優先度帯域制御方法において、送信元ノードが管理するスイッチの宛先毎の受信バッファ空き容量を複数の宛先で共有する方法及びスイッチシステム。
  5. 請求項1に記載の優先度帯域制御方法において、前記優先度別出力キューからのデータ出力を優先度に応じて予め設定した帯域まで制限している時に、送信元ノードから可変長データを固定長データに分割し、帯域制限にかからない量ずつだけ固定長データを出力することを特徴とするスイッチの優先度帯域制御方法。
  6. 請求項1に記載の優先度帯域制御方法において、前記優先度別出力キューからのデータ出力を優先度に応じて予め設定した帯域まで制限している時に、送信元ノードから可変長データの先頭の取り出しに成功したら、スイッチの当該宛先の受信バッファ空き容量がある限り、可変長データを固定長データに分割し、帯域制限に拠らずデータを出力することを特徴とするスイッチの優先度帯域制御方法。
  7. 請求項1に記載の優先度帯域制御方法において、ある送信元からある宛先への経路毎に複数個のスイッチデバイスでスイッチステージを構成し、送信元で管理するスイッチの宛先毎の受信バッファ空き容量は、送信元ノードに最も近いステージのスイッチの宛先毎に管理することを特徴とするスイッチの優先度帯域制御方法。
  8. 宛先毎に2個以上の優先度別出力キューを持つ複数個の送信元ノードと、
    前記複数個の送信ノードから投入されたデータを、その宛先毎に均等に配信するスイッチと、
    前記スイッチからデータを受信する複数個の宛先ノードにより構成するスイッチファブリック、及び、
    前記スイッチファブリックの優先度帯域制御の有効化と無効化を、前記宛先ノードの輻輳状態を示す情報により切り替える優先度帯域制御手段を含むスイッチシステム。
  9. 宛先毎に2個以上の優先度別出力キューを持つ複数個の送信元ノードと、
    前記複数個の送信ノードから投入されたデータを、その宛先毎に均等に配信するスイッチと、前記スイッチからデータを受信する複数個の宛先ノードにより構成するスイッチファブリックにおける優先度帯域制御方法であって、
    送信元に最も近いスイッチデバイスの受信バッファ空き容量の情報のみにより、優先度帯域制御の有効化と無効化を切り替えることを特徴とするスイッチの優先度帯域制御方法。
  10. 宛先毎に2個以上の優先度別出力キューを持つ複数個の送信元ノードと、
    前記複数個の送信ノードから投入されたデータを、その宛先毎に均等に配信するスイッチと、前記スイッチからデータを受信する複数個の宛先ノードにより構成するスイッチファブリックにおいて、
    優先度帯域制御を有効化した場合には、高優先度のデータの通過率を低優先度のデータの通過率より向上させ、
    優先度帯域制御を無効化した場合には、優先度によらず一定のデータ通過率を維持することを特徴とするスイッチの優先度帯域制御方法。
  11. 宛先毎に2個以上の優先度別出力キューを持つ複数個の送信元ノードと、前記複数個の送信ノードから投入されたデータを、その宛先毎に均等に配信するスイッチと、前記スイッチからデータを受信する複数個の宛先ノードにより構成するスイッチファブリックにおける優先度帯域制御方法であって、
    優先度帯域制御を有効化した場合には、高優先度のデータの通過遅延を低優先度のデータの通過遅延より小さくし、
    優先度帯域制御を無効化した場合には、優先度によらず一定のデータ通過遅延を維持することを特徴とするスイッチの優先度帯域制御方法。
JP2006350847A 2006-12-27 2006-12-27 スイッチにおける優先度帯域制御方法 Active JP5034491B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006350847A JP5034491B2 (ja) 2006-12-27 2006-12-27 スイッチにおける優先度帯域制御方法
US11/878,279 US20080159149A1 (en) 2006-12-27 2007-07-23 Prioritized bandwidth management method for switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006350847A JP5034491B2 (ja) 2006-12-27 2006-12-27 スイッチにおける優先度帯域制御方法

Publications (3)

Publication Number Publication Date
JP2008166888A true JP2008166888A (ja) 2008-07-17
JP2008166888A5 JP2008166888A5 (ja) 2009-09-24
JP5034491B2 JP5034491B2 (ja) 2012-09-26

Family

ID=39583802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006350847A Active JP5034491B2 (ja) 2006-12-27 2006-12-27 スイッチにおける優先度帯域制御方法

Country Status (2)

Country Link
US (1) US20080159149A1 (ja)
JP (1) JP5034491B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8095721B2 (en) 2008-02-05 2012-01-10 Alaxala Networks Corporation Network switch and method of switching in network

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4958745B2 (ja) * 2007-11-21 2012-06-20 アラクサラネットワークス株式会社 分散型スイッチファブリック
JP5028316B2 (ja) * 2008-04-02 2012-09-19 アラクサラネットワークス株式会社 セル分散型スイッチファブリック
IL219391A0 (en) * 2012-04-24 2012-07-31 Eci Telecom Ltd Technique of congestion control of packet switches
US9036479B2 (en) * 2013-03-08 2015-05-19 Brocade Communications Systems, Inc. Mechanism to enable buffer to buffer credit recovery using link reset protocol
US9378168B2 (en) * 2013-09-18 2016-06-28 International Business Machines Corporation Shared receive queue allocation for network on a chip communication
US10476804B2 (en) * 2014-03-17 2019-11-12 Telefonaktiebolaget Lm Ericsson (Publ) Congestion level configuration for radio access network congestion handling
CN104954284B (zh) * 2015-06-23 2018-08-17 哈尔滨工程大学 一种面向概率路由的延迟容忍网络拥塞避免方法
KR102269068B1 (ko) * 2017-03-10 2021-06-24 한국전자통신연구원 스위칭을 위한 스케줄링 방법 및 스케줄러

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000013405A (ja) * 1998-06-18 2000-01-14 Nec Corp Atmスイッチ
JP2000151633A (ja) * 1998-11-12 2000-05-30 Hitachi Ltd パケットスイッチ
JP2003536323A (ja) * 2000-06-06 2003-12-02 パワー エックス リミテッド スイッチシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6628609B2 (en) * 1998-04-30 2003-09-30 Nortel Networks Limited Method and apparatus for simple IP-layer bandwidth allocation using ingress control of egress bandwidth
US6292098B1 (en) * 1998-08-31 2001-09-18 Hitachi, Ltd. Surveillance system and network system
US7733770B2 (en) * 2004-11-15 2010-06-08 Intel Corporation Congestion control in a network
US9426092B2 (en) * 2006-02-03 2016-08-23 Level 3 Communications Llc System and method for switching traffic through a network
US20080080504A1 (en) * 2006-09-28 2008-04-03 Mircea Gusat System and method for managing flow of a plurality of packets in a lossless communication network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000013405A (ja) * 1998-06-18 2000-01-14 Nec Corp Atmスイッチ
JP2000151633A (ja) * 1998-11-12 2000-05-30 Hitachi Ltd パケットスイッチ
JP2003536323A (ja) * 2000-06-06 2003-12-02 パワー エックス リミテッド スイッチシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8095721B2 (en) 2008-02-05 2012-01-10 Alaxala Networks Corporation Network switch and method of switching in network

Also Published As

Publication number Publication date
US20080159149A1 (en) 2008-07-03
JP5034491B2 (ja) 2012-09-26

Similar Documents

Publication Publication Date Title
JP5034491B2 (ja) スイッチにおける優先度帯域制御方法
US11818037B2 (en) Switch device for facilitating switching in data-driven intelligent network
CN1689278B (zh) 网络拥塞控制方法和装置
US9325637B2 (en) System for performing distributed data cut-through
US20130182704A1 (en) Prioritization and preemption of data frames over a switching fabric
US9774461B2 (en) Network switch with dynamic multicast queues
US10645033B2 (en) Buffer optimization in modular switches
US9197570B2 (en) Congestion control in packet switches
JP2001285364A (ja) スイッチング装置とその方法
US10728156B2 (en) Scalable, low latency, deep buffered switch architecture
US20140022895A1 (en) Reducing Store And Forward Delay In Distributed Systems
US10320686B2 (en) Load balancing eligible packets in response to a policing drop decision
US10367751B2 (en) Distributing and rate limiting packets among multiple paths in a single stage switching topology to a reordering node
US7734808B1 (en) End-to-end congestion control in a Fibre Channel network
JP2015069345A (ja) 情報処理装置,データ転送装置,およびデータ転送方法
US11683276B2 (en) Quasi-output queue behavior of a packet switching device achieved using virtual output queue ordering independently determined for each output queue
US20240056385A1 (en) Switch device for facilitating switching in data-driven intelligent network
KR101171463B1 (ko) 신호 전달 제어 장치 및 그의 제어 방법
KR100429907B1 (ko) 유니캐스트 패킷과 멀티캐스트 패킷 서비스를 위한 라우터및 라우팅 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090805

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120321

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120418

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: 20120605

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120618

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

Free format text: PAYMENT UNTIL: 20150713

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 5034491

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20150713

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250