JP2009260653A - 中継装置およびパケット中継方法 - Google Patents

中継装置およびパケット中継方法 Download PDF

Info

Publication number
JP2009260653A
JP2009260653A JP2008107176A JP2008107176A JP2009260653A JP 2009260653 A JP2009260653 A JP 2009260653A JP 2008107176 A JP2008107176 A JP 2008107176A JP 2008107176 A JP2008107176 A JP 2008107176A JP 2009260653 A JP2009260653 A JP 2009260653A
Authority
JP
Japan
Prior art keywords
packet
queue
priority
port
transmission
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
JP2008107176A
Other languages
English (en)
Other versions
JP5167924B2 (ja
Inventor
Koyo Nakagawa
幸洋 中川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008107176A priority Critical patent/JP5167924B2/ja
Priority to US12/337,809 priority patent/US8532128B2/en
Priority to EP20080172062 priority patent/EP2111001B1/en
Publication of JP2009260653A publication Critical patent/JP2009260653A/ja
Application granted granted Critical
Publication of JP5167924B2 publication Critical patent/JP5167924B2/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/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/76Routing in software-defined topologies, e.g. routing between virtual machines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/527Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/60Queue scheduling implementing hierarchical scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/622Queue service order
    • H04L47/6225Fixed service order, e.g. Round Robin
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • 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
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】受信するパケット全体の優先度を考慮して優先制御を行うとともに、仮想ネットワークごとに帯域制御を行うことができる中継装置およびパケット中継方法を提供すること。
【解決手段】パケット格納部183が、受信したパケットに係る中継処理命令を、優先度およびVLAN番号によって異なるキューに格納し、DRRスケジューラ155−0〜155−7が、各キューからDRR方式によって中継処理命令を取り出して、優先制御送信スケジューラ156が、優先度が高い順番に、中継処理命令に従って、パケットを他の装置へ送信する。
【選択図】 図6

Description

本発明は、所定の仮想ネットワークに属する装置から受信したパケットを他の装置へ中継する中継装置およびパケット中継方法に関する。
近年、スイッチやルータなどのパケットを中継する中継装置には、QoS(Quality of Service)と呼ばれる通信の品質を確保するための機能を有するものがある。通信の品質を確保するための機能としては、各ユーザと契約した最低帯域幅を保証したデータ伝送を実現する帯域制御や、パケットに設定されている優先度が高い順番にパケットを中継する優先制御などがある。
ところで、近年では、物理ネットワーク内に仮想的なネットワークを形成するVLAN(Virtual Local Area Network)が普及しつつあり、VLANを提供する通信事業者やVLANを利用するユーザから、仮想ネットワークごとに帯域制御を行いたいという要望がある。
そこで、仮想ネットワークごとに帯域制御する機能を実現する技術がいくつか提案されている。例えば、仮想ネットワークを識別するためのVLAN番号ごとにパケットの中継処理を行うことで、仮想ネットワークごとに帯域制御を行う中継装置が提案されている。
国際公開第04/040854号パンフレット 特開2007−274529号公報
しかしながら、上述した従来の中継装置には、異なる仮想ネットワークを流通するパケットに対して優先制御を行うことができないという問題があった。具体的には、上述した従来の中継装置は、VLAN番号が同一のパケットについては、優先度を考慮してパケットの中継処理を行うが、VLAN番号が異なるパケットについては、優先度を考慮してパケットの中継処理を行わない。このため、上述した従来の中継装置では、例えば、VLAN番号「A」かつ優先度「7」であるパケットよりも、VLAN番号「B」かつ優先度「0」のパケットが先に中継されてしまうおそれがあるという問題があった。なお、優先度の数値が大きいほど優先度が高いものとする。
開示の技術は、上述した従来技術による問題点を解消するためになされたものであり、受信するパケット全体の優先度を考慮して優先制御を行うとともに、仮想ネットワークごとに帯域制御を行うことができる中継装置およびパケット中継方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本願に開示する中継装置は、所定の仮想ネットワークに属する装置からパケットを受信する複数の受信ポートと、前記パケットを他の装置へ送信する複数の送信ポートとを有する中継装置であって、送信ポートごとに、パケットを中継する優先順位を示す優先度と仮想ネットワークを識別するためのVLAN番号との組合せに対応付けて設けられた複数のキューと、パケットに設定されている宛先情報に対応付けて、前記送信ポートを識別するためのポート番号を記憶する方路記憶手段と、VLAN番号と優先度との組合せに対応付けて、前記キューを識別するためのキュー番号を記憶するキュー番号記憶手段と、前記受信ポートによってパケットが受信された場合に、該パケットに設定されている宛先情報に対応付けて前記方路記憶手段に記憶されているポート番号が示す送信ポートに該パケットを出力することを決定する方路決定手段と、前記方路決定手段によって決定された送信ポートに対応する複数のキューのうち、前記パケットに設定されているVLAN番号と優先度との組合せに対応付けて前記キュー番号記憶手段に記憶されているキュー番号が示すキューに、前記パケットを格納するパケット格納手段と、前記パケット格納手段によってキューに格納されたパケットを、前記キューに対応付けられた優先度に基づいて前記他の装置へ送信するパケット送信手段とを備えたことを要件とする。
なお、本願に開示する中継装置の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも、他の態様として有効である。
本願に開示した中継装置によれば、受信するパケット全体の優先度を考慮して優先制御を行うとともに、仮想ネットワークごとに帯域制御を行うことができるという効果を奏する。
以下に、本願に開示する中継装置およびパケット中継方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例では、本願に開示する中継装置およびパケット中継方法をスイッチに適用した例について説明するが、本願に開示する中継装置およびパケット中継方法は、ルータ等の他の中継装置に適用することも可能である。
まず、実施例1に係るスイッチの概要について説明する。図1は、実施例1に係るスイッチの概要を説明するための図である。同図に示すように、実施例1に係るスイッチ10は、キュー群150−0等を有する。
キュー群150−0等は、パケットに設定される優先度ごとに、スイッチ10に設けられる。同図に例示したスイッチ10は、受信するパケットに設定される優先度の範囲が「0」〜「7」であるものとして、8個のキュー群150−0〜150−7を有するものとする。なお、同図に示したキュー群150−0は、優先度「0」に対応し、キュー群150−1は、優先度「1」に対応する。
各々のキュー群150−0等は、複数のキューを有する。同図に示した例では、キュー群150−0は、4個のキュー151−0〜154−0を有し、キュー群150−1は、4個のキュー151−1〜154−1を有する。
なお、実施例1に係るスイッチ10は、パケットを受信した場合に、かかるパケットを所定の記憶部(後述するストリームメモリ16)に記憶させる。また、スイッチ10は、ストリームメモリ16に記憶されているパケットを他の装置へ中継する旨の命令(以下、「中継処理命令」という)をキュー151−0等に格納する。ただし、図1を用いた説明では、説明を簡単にするために、スイッチ10は、パケットをキュー151−0等に格納するものとする。
このような構成の下、スイッチ10は、パケットを受信した場合に、かかるパケットに設定されているVLAN番号および優先度と、所定の記憶部(後述するキュー番号記憶部173)に記憶されている各種情報とに基づいて、受信したパケットを格納するキューを決定する。以下、スイッチ10によって決定されたパケットの格納先のキューを「格納先キュー」と呼ぶこととする。
例えば、図1に示した例において、パケットP11は、VLAN番号に「A」が設定されており、優先度に「0」が設定されているものとする。また、パケットP12は、VLAN番号に「B」が設定されており、優先度に「0」が設定されているものとする。また、パケットP21は、VLAN番号に「A」が設定されており、優先度に「1」が設定されているものとする。また、パケットP22は、VLAN番号に「B」が設定されており、優先度に「1」が設定されているものとする。
かかる場合に、スイッチ10は、パケットP11、P12、P21およびP22を受信すると、パケットP11を、優先度「0」に対応するキュー群150−0内のキュー151−0に格納する。また、スイッチ10は、パケットP12を、優先度「0」に対応するキュー群150−0内のキュー152−0に格納する。また、スイッチ10は、パケットP21を、優先度「1」に対応するキュー群150−1内のキュー151−1に格納する。また、スイッチ10は、パケットP22を、優先度「1」に対応するキュー群150−1内のキュー152−1に格納する。
続いて、スイッチ10は、キュー群150−0が有するキュー151−0〜154−0から、DRR(Deficit Round Robin:不足ラウンドロビン)方式によって、パケットを取り出す。同様に、スイッチ10は、キュー群150−1が有するキュー151−1〜154−1から、DRR方式によって、パケットを取り出す。そして、スイッチ10は、それぞれのキュー群から取り出したパケットを、優先度が高い順番に、他の装置(例えば、他のスイッチや、サーバなどの情報処理装置)へ送信する。
このように、実施例1に係るスイッチ10は、優先度とVLAN番号との組合せに対応付けて設けられた複数のキューを有し、パケットを受信した場合に、かかるパケットに設定されている優先度とVLAN番号との組合せごとに異なるキューに格納し、各キュー群からDRR方式によってパケットを取り出して、他の装置へ送信するので、仮想ネットワークごとに帯域制御を行うことができる。また、スイッチ10の利用者(ネットワーク管理者など)は、DRR方式における加重率を変更するだけで、仮想ネットワークごとに最低帯域幅を変更することができる。例えば、図1に示した例において、VLAN番号「A」よりもVLAN番号「B」の帯域幅を大きくしたい場合、利用者は、キュー151−0の加重率より、キュー152−0の加重率を大きくする設定を行うだけで実現できる。
また、実施例1に係るスイッチ10は、各々のキュー群からDRR方式によって取り出したパケットを、優先度が高い順番に他の装置へ送信するので、受信したパケット全体の優先度を考慮した優先制御を行うことができる。
以上のことから、実施例1に係るスイッチ10では、受信するパケット全体の優先度を考慮して優先制御を行うとともに、仮想ネットワークごとに帯域制御を行うことができる。
なお、上記では、VLAN番号が異なるパケットを異なるキューに格納する例について説明したが、VLAN番号が異なるパケットを同一のキューに格納するようにしてもよい。例えば、スイッチ10は、VLAN番号に「A」〜「C」が設定されているパケットをキュー151−0に格納し、VLAN番号「D」〜「F」が設定されているパケットをキュー151−1に格納するようにしてもよい。
これにより、いくつかの仮想ネットワークを1つの仮想ネットワークグループとして扱うことができ、仮想ネットワークグループごとに帯域制御を行うことができる。例えば、同種の業務に用いられている複数の仮想ネットワークを、1つの仮想ネットワークグループとして帯域制御を行うことができる。また、VLANの数が多数存在するようなネットワークであっても、VLANの数と同一のキューを設ける必要がなくなるので、スイッチ10の構成を簡易にすることができる。
また、パケットが流通する時間帯が異なる複数の仮想ネットワークを、1つの仮想ネットワークグループにすることで、資源(キュー)を有効に利用することができる。具体的には、午前のみパケットが流通する仮想ネットワークAと、午後のみパケットが流通する仮想ネットワークBとが存在する場合、仮想ネットワークAおよびBを1つの仮想ネットワークグループにする。これにより、所定のキューを、午前は仮想ネットワークA上で流通するパケットを中継処理する際に用い、午後は仮想ネットワークB上で流通するパケットを中継処理する際に用いることができる。その結果、キューが使用されない時間が減少するので、資源(キュー)を有効に利用することができる。なお、VLAN番号が異なるパケットを同一のキューに格納することは、後述するキュー番号記憶部173に記憶されている各種情報を変更することで容易に実現できる。
次に、実施例1に係るスイッチ10が適用されるネットワークについて説明する。図2は、実施例1に係るスイッチ10が適用されるネットワークの構成例を示す図である。同図に示すように、ネットワーク1は、サーバシステム2A〜2Cと、記憶システム3A〜3Cと、スイッチ10A〜10Fを含むスイッチ群4と、ネットワークシステム5と、ルーティングシステム6とを有する。なお、ネットワーク1は、複数の仮想ネットワーク(VLAN)が形成されているものとする。
サーバシステム2A〜2Cは、ホストコンピュータ等の情報処理装置であり、スイッチ10A〜10Fのいずれかに接続されている。記憶システム3A〜3Cは、ストレージ装置等のデータ入出力装置であり、スイッチ10A〜10Fのいずれかに接続されている。ネットワークシステム5は、ネットワーク1の保守や監視を行うための装置であり、スイッチ10Eに接続されている。ルーティングシステム6は、ネットワーク1と、他のネットワークとの間でデータの中継処理を行うための装置であり、スイッチ10Fに接続されている。
スイッチ10A〜10Fは、データの中継処理を行う中継装置であり、自装置以外の他のスイッチ10A〜10Fや、サーバシステム2A〜2C等と接続されている。スイッチ10A〜10Fは、仮想ネットワークが形成されているネットワーク1内において、パケットにVLANタグを挿入または削除して中継処理を行う。
なお、図2に示したネットワーク1の構成はあくまで一例であり、実施例1に係るスイッチ10A〜10Fが適用されるネットワークの構成例は、同図に示したネットワークの構成に限られない。例えば、同図に示したネットワーク1では、3台のサーバシステム2A〜2Cと、3台の記憶システム3A〜3Cと、6台のスイッチ10A〜10Fと、1台のネットワークシステム5と、1台のルーティングシステム6を有する例を示したが、各々の装置の台数は、同図に示した例に限られない。
次に、実施例1に係るスイッチ10の構成について説明する。図3は、実施例1に係るスイッチ10の構成を示すブロック図である。なお、図3に示したスイッチ10は、図2に示したスイッチ10A〜10Fに対応する。図3に示すように、スイッチ10は、受信ポート11a〜11cと、送信ポート12a〜12cと、スイッチコア13とを有する。
受信ポート11a〜11cは、所定の装置(例えば、サーバシステム2A〜2Cや、他のスイッチ)からパケットを受信するインタフェースである。各々の受信ポート11a〜11cは、所定の仮想ネットワークに属する装置からパケットを受信する。例えば、受信ポート11aは、仮想ネットワークA〜Eに属する装置からのみパケットを受信したり、受信ポート11bは、仮想ネットワークF〜Jに属する装置からのみパケットを受信したりする。
送信ポート12a〜12cは、受信ポート11a〜11cによって受信されたパケットを他の装置へ送信するインタフェースである。各々の送信ポート12a〜12cは、所定の仮想ネットワークに属する装置に対してパケットを送信する。例えば、送信ポート12aは、仮想ネットワークA〜Eに属する装置に対してのみパケットを送信したり、送信ポート12bは、仮想ネットワークF〜Jに属する装置に対してのみパケットを送信したりする。
なお、図3に示した例では、スイッチ10が、3個の受信ポート11a〜11cと、3個の送信ポート12a〜12cとを有する例を示したが、スイッチ10は、2個以下の受信ポートおよび送信ポートを有してもよいし、4個以上の受信ポートおよび送信ポートを有してもよい。
スイッチコア13は、データの中継処理を担う機能部であり、受信ポートモジュール14a〜14cを含むポートモジュール群14と、送信ポートモジュール15a〜15cを含むポートモジュール群15と、ストリームメモリ16と、記憶部17と、制御部18とを有する。
受信ポートモジュール14a〜14cは、受信ポート11a〜11cごとに設けられるモジュールであり、受信ポート11a〜11cからパケットを入力された場合に、かかるパケットをストリームメモリ16に書き込むとともに、パケットのヘッダ情報を、制御部18へ出力する。ここでいう「ヘッダ情報」とは、例えば、DA(Destination Address:宛先MAC(Media Access Control)アドレス)や、SA(Source Address:送信元MACアドレス)、VLAN番号、優先度などを示す。
なお、同図では、受信ポートモジュール14aが受信ポート11aに対応し、受信ポートモジュール14bが受信ポート11bに対応し、受信ポートモジュール14cが受信ポート11cに対応する例を示している。すなわち、受信ポートモジュール14aは、受信ポート11aによって受信されたパケットについて上述した処理を行うことになる。
送信ポートモジュール15a〜15cは、送信ポート12a〜12cごとに設けられるモジュールであり、ストリームメモリ16に格納されているパケットを読み出して送信ポート12a〜12cに出力する。具体的には、送信ポートモジュール15a〜15cは、中継処理命令を格納するためのキューを複数有し、かかる中継処理命令に従って、ストリームメモリ16に格納されているパケットを、送信ポート12a〜12cを介して他の装置へ送信する。送信ポートモジュール15a〜15cの構成については、後に詳述する。
なお、同図では、送信ポートモジュール15aが送信ポート12aに対応し、送信ポートモジュール15bが送信ポート12bに対応し、送信ポートモジュール15cが送信ポート12cに対応する例を示している。すなわち、送信ポートモジュール15aは、送信ポート12aに対してパケットを出力することになる。
ストリームメモリ16は、メモリ等の記憶デバイスであり、受信ポートモジュール14a〜14cによって書き込まれたパケットを記憶する。ストリームメモリ16は、記憶領域を所定のサイズの論理ブロックに分割して、論理ブロック単位にデータを記憶する。例えば、ストリームメモリ16は、パケットのサイズが、1つの論理ブロックのサイズ以下である場合、かかるパケットを1つの論理ブロックに記憶する。一方、パケットのサイズが、1つの論理ブロックのサイズより大きい場合、ストリームメモリ16は、かかるパケットを複数の論理ブロックに分割して記憶する。
記憶部17は、メモリ等の記憶デバイスであり、タグメモリ171と、方路記憶部172と、キュー番号記憶部173とを有する。タグメモリ171は、ストリームメモリ16の論理ブロックを管理するための各種情報を記憶する。
具体的には、タグメモリ171は、論理ブロックを識別するための論理ブロック番号を記憶する。また、タグメモリ171は、論理ブロック間の関係性を示す情報(以下、「リンク情報」という)を記憶する。ここで、タグメモリ171が記憶するリンク情報について例を挙げて説明する。例えば、1つのパケットP101が3個の論理ブロックR1〜R3に分割されて記憶されているとする。かかる場合、タグメモリ171は、パケットP101が論理ブロックR1〜R3に記憶されていることを示すリンク情報を記憶する。また、例えば、1つのデータが9個のパケットP201〜P209に分割されており、かかるパケットP201〜P209が複数の論理ブロックR11〜R30に格納されているとする。かかる場合、タグメモリ171は、パケットP201〜P209が論理ブロックR11〜R30に格納されていることを示すリンク情報を記憶する。
方路記憶部172は、パケットに設定されているDAに対応付けて、かかるパケットの出力先の送信ポートを識別するための番号(以下、受信ポート11a〜11cおよび送信ポート12a〜12cを識別するための番号を「ポート番号」という)を記憶する。方路記憶部172の一例を図4に示す。同図に示すように、方路記憶部172は、MACアドレス、ポート番号といった項目を有する。MACアドレスは、パケットに設定されているDAを示す。ポート番号は、対応するMACアドレスがDAに設定されているパケットの出力先の送信ポート12a〜12cのポート番号を示す。なお、以下では、図3に示した受信ポート11a〜11cおよび送信ポート12a〜12cに付した参照符号「11a」〜「11c」および「12a」〜「12c」をポート番号とする。
すなわち、図4に示した方路記憶部172の1行目は、DAに「00:01:02:03:04:05」が設定されているパケットが、ポート番号「12a」が示す送信ポート12aに出力されることを示している。また、図4に示した方路記憶部172の2行目は、DAに「00:01:02:03:04:06」が設定されているパケットが、ポート番号「12b」が示す送信ポート12bに出力されることを示している。
キュー番号記憶部173は、VLAN番号に対応付けて、優先度ごとに、中継処理命令を格納するキューを識別するためのキュー番号(以下、「QID:queue ID」という)を記憶する。キュー番号記憶部173の一例を図5に示す。同図に示すように、キュー番号記憶部173は、VLAN番号、メンバポート番号、QIDといった項目を有する。
VLAN番号は、仮想ネットワークを識別するための番号を示す。メンバポート番号は、VLAN番号が示す仮想ネットワーク上で流通するパケットを受信または送信する受信ポート11a〜11cおよび送信ポート12a〜12cのポート番号を示す。QIDは、対応するVLAN番号および優先度が設定されているパケットに基づいて生成された中継処理命令の格納先キューのQIDを示す。
すなわち、図5に示したキュー番号記憶部173の1行目は、VLAN番号「1」が示す仮想ネットワーク上で流通するパケットを受信するポートが、受信ポート11aであり、流通するパケットを送信するポートが、送信ポート12aであることを示している。また、図5に示したキュー番号記憶部173の1行目は、VLAN番号が「1」でり、かつ、優先度が「0」〜「7」のいずれかである中継処理命令が、QID「0」が示すキューに格納されることを示している。
制御部18は、スイッチコア13を全体制御する制御部であり、リンク情報取得部181と、方路決定部182と、パケット格納部183とを有する。リンク情報取得部181は、ポートモジュール群14からヘッダ情報を入力された場合に、タグメモリ171から、かかるヘッダ情報を有するパケットのリンク情報を取得して、取得したリンク情報をパケット格納部183へ出力する処理部である。
方路決定部182は、方路記憶部172に記憶されている各種情報に基づいて、受信したパケットを送信する送信ポートを決定する処理部である。具体的には、方路決定部182は、ポートモジュール群14からヘッダ情報を入力された場合に、方路記憶部172から、ヘッダ情報に設定されているDAに対応付けて記憶されているポート番号を取得する。そして、方路決定部182は、取得したポート番号が示す送信ポート12a〜12cのいずれかに、かかるヘッダ情報を有するパケットを出力することを決定する。
例えば、方路記憶部172が図4に示した状態であり、方路決定部182が、DAに「00:01:02:03:04:05」が設定されているヘッダ情報H1を、ポートモジュール群14から入力されたものとする。かかる場合、方路決定部182は、方路記憶部172からポート番号「12a」を取得する。そして、方路決定部182は、取得したポート番号「12a」が示す送信ポート12aに、ヘッダ情報H1を有するパケットを出力することを決定する。
パケット格納部183は、中継処理命令を生成し、キュー番号記憶部173に記憶されている各種情報に基づいて中継処理命令の格納先キューを決定し、決定したキューに中継処理命令を格納する処理部である。
具体的には、パケット格納部183は、ポートモジュール群14からヘッダ情報を入力された場合に、入力されたヘッダ情報や、かかるヘッダ情報を有するパケットが記憶されているストリームメモリ16上の論理ブロックを示す論理ブロック番号、リンク情報取得部181から入力されたリンク情報などを含む中継処理命令を生成する。
続いて、パケット格納部183は、キュー番号記憶部173から、ヘッダ情報に設定されているVLAN番号と優先度との組合せに対応付けて記憶されているQIDを取得する。続いて、パケット格納部183は、方路決定部182によって決定された送信ポート12a〜12cのいずれかに対応する送信ポートモジュール15a〜15cが有するキューのうち、キュー番号記憶部173から取得したQIDが示すキューに、中継処理命令を格納する。
例えば、方路記憶部172が図4に示した状態であり、キュー番号記憶部173が図5に示した状態であるものとする。また、制御部18は、ポートモジュール群14から、DA「00:01:02:03:04:06」、VLAN番号「2」、かつ、優先度「7」が設定されているヘッダ情報H2を入力されたものとする。かかる場合、方路決定部182は、ヘッダ情報H2を有するパケットを送信ポート12bに出力することを決定する。続いて、パケット格納部183は、中継処理命令を生成して、VLAN番号「2」と優先度「7」との組合せに対応付けてキュー番号記憶部173に記憶されているQID「1」を取得する。続いて、パケット格納部183は、方路決定部182によって決定された送信ポート12bに対応する送信ポートモジュール15bが有するキューのうち、優先度「7」に対応付けて設けられたキューであり、かつ、QIDが「1」であるキューに、生成した中継処理命令を格納する。
次に、図3に示した送信ポートモジュール15a〜15cの構成について説明する。図6は、図3に示した送信ポートモジュール15a〜15cの構成を示すブロック図である。なお、送信ポートモジュール15a〜15cは、いずれも同様の構成を有するため、ここでは、送信ポートモジュール15aの構成についてのみ説明する。
同図に示すように、送信ポートモジュール15aは、キュー群150−0〜150−7と、優先制御送信スケジューラ156とを有する。キュー群150−0は、キュー151−0〜154−0と、ラウンドロビン制御スケジューラ(以下、「DRRスケジューラ」という)155−0とを有する。キュー151−0〜154−0は、パケット格納部183によって優先度が「0」である中継処理命令が格納される記憶領域である。上述したように、パケット格納部183は、ヘッダ情報とキュー番号記憶部173に基づいて中継処理命令を格納するキューを、キュー151−0〜154−0のいずれかに決定する。
DRRスケジューラ155−0は、DRR方式によって、キュー151−0〜154−0から中継処理命令を取り出す処理部である。なお、DRRスケジューラ155−0は、加重率が等しいラウンドロビン方式や、WRR(Weighted Round Robin:加重ラウンドロビン)方式によって、中継処理命令を取り出してもよい。また、DRRスケジューラ155−0は、本願の出願人によって出願された特開2004−242335に開示されているラウンドロビン方式によって、中継処理命令を取り出してもよい。
同様に、キュー群150−7は、パケット格納部183によって優先度が「7」である中継処理命令が格納されるキュー151−7〜154−7と、DRRスケジューラ155−7とを有する。同図では、図示することを省略しているが、送信ポートモジュール15aは、優先度が「1」〜「6」である中継処理命令が格納されるキュー群150−1〜150−6も有する。かかるキュー群150−1〜150−6の構成は、キュー群150−0および150−7の構成と同様である。
なお、同図では、各々のキュー群150−0〜150−7は、4個のキュー(キュー群150−0の例では、キュー151−0〜154−0)を有する例を示したが、各々のキュー群150−0〜150−7は、3個以下のキューを有してもよいし、5個以上のキューを有してもよい。
また、以下では、キュー群151−0等が有する各キューのQIDは、上から順に「0」、「1」、「2」、「3」であるものとする。具体的には、キュー151−0のQIDが「0」であり、キュー152−0のQIDが「1」であり、キュー153−0のQIDが「2」であり、キュー154−0のQIDが「3」であるものとする。同様に、キュー151−7のQIDが「0」であり、キュー152−7のQIDが「1」であり、キュー153−7のQIDが「2」であり、キュー154−7のQIDが「3」であるものとする。なお、各キューに割り当てるQIDは、この例に限られず、すべてのキューに対してユニークなQIDを割り当ててもよい。
優先制御送信スケジューラ156は、DRRスケジューラ155−0〜155−7によって取り出された中継処理命令のうち、優先度の高い順番に、中継処理命令に従って処理を行う。具体的には、優先制御送信スケジューラ156は、ストリームメモリ16から、中継処理命令に含まれる論理ブロック番号が示す論理ブロックに記憶されているパケットを読み出して、送信ポート12aへ出力する。また、優先制御送信スケジューラ156は、中継処理命令にリンク情報が含まれている場合、かかるリンク情報に含まれる論理ブロック番号が示す論理ブロックに記憶されているパケットを、ストリームメモリ16から読み出して、送信ポート12aへ出力する。優先制御送信スケジューラ156は、優先度の高い順番に、中継処理命令に従って、同様のパケット出力処理を行う。
次に、実施例1に係るスイッチ10によるパケット中継処理の手順について説明する。図7は、実施例1に係るスイッチ10によるパケット中継処理手順を示すフローチャートである。同図に示すように、スイッチ10の受信ポート11a〜11cがパケットを受信した場合(ステップS101肯定)、受信ポートモジュール14a〜14cは、かかるパケットをストリームメモリ16に書き込む(ステップS102)。また、受信ポートモジュール14a〜14cは、かかるパケットのヘッダ情報を制御部18へ出力する(ステップS103)。
ヘッダ情報を受け付けた制御部18の方路決定部182は、かかるヘッダ情報と、方路記憶部172に記憶されている各種情報に基づいて、パケットを送信する送信ポートを決定する(ステップS104)。続いて、パケット格納部183は、受信ポートモジュール14a〜14cから受け付けたヘッダ情報や、かかるヘッダ情報を有するパケットが記憶されている論理ブロックを示す論理ブロック番号、リンク情報などを含む中継処理命令を生成する(ステップS105)。
続いて、パケット格納部183は、ヘッダ情報に設定されているVLAN番号と優先度との組合せに対応付けてキュー番号記憶部173に記憶されているQIDを取得する(ステップS106)。続いて、パケット格納部183は、方路決定部182によって決定された送信ポート12a〜12cに対応する送信ポートモジュール15a〜15cが有するキューのうち、パケットに設定されている優先度に対応付けて設けられたキューであり、かつ、ステップS106において取得したQIDが示すキューに、中継処理命令を格納する(ステップS107)。
続いて、送信ポートモジュール15a〜15cのDRRスケジューラ155−0〜155−7は、DRR方式によって、キューから中継処理命令を取り出す(ステップS108)。具体的には、DRRスケジューラ155−0は、DRR方式によって、キュー151−0〜154−0から中継処理命令を取り出し、DRRスケジューラ155−7は、DRR方式によって、キュー151−7〜154−7から中継処理命令を取り出す。
続いて、送信ポートモジュール15a〜15cの優先制御送信スケジューラ156は、DRRスケジューラ155−0〜155−7によって取り出された中継処理命令のうち、優先度の高い順番に、中継処理命令に従って、ストリームメモリ16からパケットを取得して、送信ポート12a〜12cへ出力する(ステップS109)。具体的には、優先制御送信スケジューラ156は、中継処理命令に含まれる論理ブロック番号が示す論理ブロックに記憶されているパケットを、ストリームメモリ16から取得して、送信ポート12a〜12cへ出力する。また、優先制御送信スケジューラ156は、中継処理命令にリンク情報が含まれている場合、かかるリンク情報に含まれる論理ブロック番号が示す論理ブロックに記憶されているパケットを、ストリームメモリ16から取得して、送信ポート12a〜12cへ出力する。
上述してきたように、実施例1に係るスイッチ10は、パケット格納部183が、受信したパケットに係る中継処理命令を、優先度およびVLAN番号によって異なるキューに格納し、DRRスケジューラ155−0〜155−7が、各キューからDRR方式によって中継処理命令を取り出して、優先制御送信スケジューラ156が、優先度が高い順番に、中継処理命令に従って、パケットを他の装置へ送信するので、受信するパケット全体の優先度を考慮して優先制御を行うとともに、仮想ネットワークごとに帯域制御を行うことができる。
ところで、上記実施例1では、すべての仮想ネットワークに対して、利用者が所望する所定の帯域制御を行うスイッチの例を示したが、仮想ネットワークの中には、どのような帯域制御を行ってもよい仮想ネットワークが存在する場合もある。例えば、所定のネットワークにおいて、仮想ネットワークA〜Eに対しては、利用者によって所定の帯域制御を行うように指定され、仮想ネットワークF〜Jに対しては、利用者によってどのような帯域制御を行ってもよいと指定されるケースが考えられる。そこで、実施例2では、複数の仮想ネットワークのうち、所定の仮想ネットワークに対してのみ、利用者が所望する帯域制御を行うスイッチの例について説明する。
まず、実施例2に係るスイッチ20の構成について説明する。図8は、実施例2に係るスイッチ20の構成を示すブロック図である。なお、以下では、図3に示した構成部位と同様の機能を有する部位には同一符号を付すこととして、その詳細な説明を省略する。
図8に示すように、スイッチ20が有するスイッチコア23は、図3に示したスイッチコア13が有するポートモジュール群15、記憶部17および制御部18の代わりに、ポートモジュール群25と、記憶部27と、制御部28とを新たに有する。
ポートモジュール群25は、送信ポート12a〜12cに対応する送信ポートモジュール25a〜25cを有する。送信ポートモジュール25a〜25cの構成については、後に詳述する。
記憶部27は、図3に示した記憶部17と比較して、キュー番号記憶部173の代わりに、VLAN記憶部274を新たに有する。VLAN記憶部274の一例を図9に示す。同図に示すように、VLAN記憶部274は、VLAN番号、メンバポート番号といった項目を有する。
制御部28は、図3に示した制御部18と比較して、方路決定部182とパケット格納部183との代わりに、方路決定部282を新たに有する。方路決定部282は、方路記憶部172に記憶されている各種情報に基づいて、パケットを送信する送信ポートを決定する。
また、方路決定部282は、ポートモジュール群14からヘッダ情報を入力された場合に、かかるヘッダ情報や、ヘッダ情報を有するパケットが記憶されている論理ブロックを示す論理ブロック番号、リンク情報などを含む中継処理命令を生成する。そして、方路決定部282は、生成した中継処理命令を、前述において決定した送信ポート12a〜12cのいずれかに対応する送信ポートモジュール25a〜25cに出力する。例えば、方路決定部282は、パケットを送信する送信ポートを送信ポート12aに決定した場合、中継処理命令を送信ポートモジュール25aに出力する。
次に、図8に示した送信ポートモジュール25a〜25cの構成について説明する。図10は、図8に示した送信ポートモジュール25a〜25cの構成を示すブロック図である。なお、送信ポートモジュール25a〜25cは、いずれも同様の構成を有するため、ここでは、送信ポートモジュール25aの構成についてのみ説明する。また、以下では、図6に示した構成部位と同様の機能を有する部位には同一符号を付すこととして、その詳細な説明を省略する。
図10に示すように、送信ポートモジュール25aは、キュー群150−0〜150−7と、優先制御送信スケジューラ156と、キュー番号記憶部251と、パケット格納部252aおよび252bとを有する。
キュー番号記憶部251は、VLAN番号に対応付けて、優先度ごとに、QIDを記憶する。また、キュー番号記憶部251は、中継処理命令の格納先のキューを特定しない場合、QIDに、中継処理命令の格納先のキューを特定しないことを示す情報(以下、「キュー不定情報」という)を記憶する。キュー番号記憶部251の一例を図11に示す。同図に示すように、キュー番号記憶部251は、VLAN番号、QIDといった項目を有する。なお、同図に示した例において、QIDに設定されている「−」は、キュー不定情報を示している。
すなわち、図11に示したキュー番号記憶部251の2行目は、VLAN番号が「2」である中継処理命令が、どのキューに格納されてもよいことを示している。例えば、VLAN番号が「2」であり、優先度が「0」である中継処理命令が、図10に示したキュー151−0〜154−0のいずれのキューに格納されてもよいことを示している。
また、図11に示したキュー番号記憶部251の3行目は、VLAN番号が「3」であり、優先度が「0」〜「3」のいずれかである中継処理命令が、どのキューに格納されてもよいことを示しており、VLAN番号が「3」であり、優先度が「4」〜「7」のいずれかである中継処理命令が、QID「2」のキューに格納されることを示している。
パケット格納部252aおよび252bは、キュー番号記憶部251に記憶されている各種情報に基づいて中継処理命令を格納するキューのQIDを決定するQID決定処理を行い、決定したQIDが示すキューに、方路決定部282から入力された中継処理命令を格納する処理部である。
ここで、図12を用いて、図10に示したパケット格納部252aによるQID決定処理について具体的に説明する。図12は、図10に示したパケット格納部252aによるQID決定処理を説明するための図である。パケット格納部252aは、優先度が「0」である中継処理命令を入力された場合、まず、キュー番号記憶部251から、中継処理命令に含まれるVLAN番号と優先度「0」との組合せに対応付けて記憶されているQIDを取得する。取得したQIDがキュー不定情報でない場合、パケット格納部252aは、かかるQIDを、中継処理命令を格納するキューのQIDに決定する(ステップS1)。
一方、取得したQIDがキュー不定情報である場合、パケット格納部252aは、不特定のQIDを算出する。具体的には、パケット格納部252aは、パケットを受信した受信ポート11a〜11cのいずれかを示すポート番号のMap値を算出する(ステップS2)。例えば、パケット格納部252aは、ポート番号の下位2ビットをMap値として算出する。
また、パケット格納部252aは、パケットのヘッダ情報を用いてハッシュ値を算出する(ステップS3)。例えば、パケット格納部252aは、IP(Internet Protocol)アドレスとTCP(Transmission Control Protocol)/UDP(User Datagram Protocol)ポート番号とVLAN番号などの先頭から8ビットごとに、CRC−8(Cyclic Redundancy Checking:巡回冗長符号)を算出して、算出した複数の巡回冗長符号の排他的論理和演算結果をハッシュ値として算出する。
続いて、パケット格納部252aは、Map値またはハッシュ値のいずれか一方を、中継処理命令を格納するキューのQIDに決定する。そして、パケット格納部252aは、このようにして決定したQIDが示すキューに、中継処理命令を格納する。なお、上記では、Map値やハッシュ値を用いて不特定のQIDを決定する手法を示したが、かかる手法はあくまで一例であり、パケット格納部252aは、他の手法によってQIDを決定してもよい。例えば、パケット格納部252aは、キューに中継処理命令を格納するたびに、格納先のキューを順次変更してもよい。
パケット格納部252bは、パケット格納部252aとほぼ同様の処理を行う処理部であり、優先度が「7」である中継処理命令を入力された場合に、中継処理命令を生成し、キュー番号記憶部251に記憶されている各種情報に基づいて、中継処理命令をキュー151−7〜154−7のいずれかに格納する。
これにより、どのような帯域制御を行ってもよい仮想ネットワーク上の流通パケットに係る中継処理命令は、不特定のキューに格納されるので、スイッチ20は、キューを平均的に用いることができ、その結果、資源(キュー)を有効に用いることができる。
次に、実施例2に係るスイッチ20によるパケット中継処理の手順について説明する。図13は、実施例2に係るスイッチ20によるパケット中継処理手順を示すフローチャートである。同図に示すように、スイッチ20の受信ポート11a〜11cがパケットを受信した場合(ステップS201肯定)、受信ポートモジュール14a〜14cは、かかるパケットをストリームメモリ16に書き込む(ステップS202)。また、受信ポートモジュール14a〜14cは、かかるパケットのヘッダ情報を、制御部28へ出力する(ステップS203)。
ヘッダ情報を受け付けた制御部28の方路決定部282は、かかるヘッダ情報と、方路記憶部172に記憶されている各種情報に基づいて、パケットを送信する送信ポートを決定する(ステップS204)。続いて、方路決定部282は、中継処理命令を生成して(ステップS205)、生成した中継処理命令を、ステップS204において決定した送信ポート12a〜12cのいずれかに対応する送信ポートモジュール25a〜25cに出力する。
中継処理命令を受け付けた送信ポートモジュール25a〜25cのパケット格納部252aまたは252bは、キュー番号記憶部251から、中継処理命令に含まれるVLAN番号と優先度との組合せに対応付けて記憶されているQIDを取得する(ステップS206)。
取得したQIDがキュー不定情報である場合(ステップS207肯定)、パケット格納部252aまたは252bは、中継処理命令を格納するキューのQIDを不特定のQIDに決定する(ステップS208)。例えば、パケット格納部252aまたは252bは、上述したように、Map値やハッシュ値を算出して、算出した値を、中継処理命令を格納するキューのQIDに決定する。
一方、取得したQIDがキュー不定情報でない場合(ステップS207否定)、パケット格納部252aまたは252bは、キュー番号記憶部251から取得したQIDを、中継処理命令を格納するキューのQIDに決定する(ステップS209)。続いて、パケット格納部252aまたは252bは、ステップS208またはS209において決定したQIDが示すキューに、中継処理命令を格納する(ステップS210)。
続いて、送信ポートモジュール25a〜25cのDRRスケジューラ155−0〜155−7は、DRR方式によって、各キューから中継処理命令を取り出す(ステップS211)。続いて、優先制御送信スケジューラ156は、DRRスケジューラ155−0〜155−7によって取り出された中継処理命令のうち、優先度の高い順番に、中継処理命令に従って、ストリームメモリ16からパケットを取得して、送信ポート12a〜12cへ出力する(ステップS212)。
上述してきたように、実施例2に係るスイッチ20は、キュー番号記憶部251が、VLAN番号に対応付けて、優先度ごとに、QIDまたはキュー不定情報を記憶し、パケット格納部252aおよび252bが、キュー不定情報が記憶されている場合には、どのような帯域制御を行ってもよいと判断して、中継処理命令を不特定のキューに格納するので、利用者によって所定の帯域制御を行うように指定された仮想ネットワークについては、仮想ネットワークまたは仮想ネットワークグループごとに、利用者が所望する帯域制御を行うことができ、さらに、資源(キュー)を有効に用いることができる。
また、キュー番号記憶部251には、VLAN番号ごとだけでなく、優先度ごとにもキュー不定情報を設定することができるので、利用者は、優先度ごとに、どのような帯域制御を行ってもよいという指定をすることができる。図11に示した例を用いて具体的に説明する。利用者は、図11に示したキュー番号記憶部251の2行目のように、仮想ネットワークの単位で、どのような帯域制御を行ってもよいという指定ができる。さらに、利用者は、同図に示したキュー番号記憶部251の3行目のように、優先度の単位で、どのような帯域制御を行ってもよいという指定をすることができる。
なお、上記実施例1および2では、パケット格納部183等が中継処理命令をキューに格納し、送信ポートモジュール15a等が、キューから中継処理命令を取り出して、かかる中継処理命令に従ってパケットの中継処理を行う例を示したが、かかるパケット中継処理の手法はあくまで一例であり、他の手法によってパケット中継処理を行ってもよい。例えば、図1を用いて説明したように、スイッチ10および20は、各キューにパケット自体を格納して、パケット中継処理を行ってもよい。
また、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散、統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散、統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPU(Central Processing Unit)および当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
以上の実施例1および2を含む実施形態に関し、更に以下の付記を開示する。
(付記1)所定の仮想ネットワークに属する装置からパケットを受信する複数の受信ポートと、前記パケットを他の装置へ送信する複数の送信ポートとを有する中継装置であって、
送信ポートごとに、パケットを中継する優先順位を示す優先度と仮想ネットワークを識別するためのVLAN番号との組合せに対応付けて設けられた複数のキューと、
パケットに設定されている宛先情報に対応付けて、前記送信ポートを識別するためのポート番号を記憶する方路記憶手段と、
VLAN番号と優先度との組合せに対応付けて、前記キューを識別するためのキュー番号を記憶するキュー番号記憶手段と、
前記受信ポートによってパケットが受信された場合に、該パケットに設定されている宛先情報に対応付けて前記方路記憶手段に記憶されているポート番号が示す送信ポートに該パケットを出力することを決定する方路決定手段と、
前記方路決定手段によって決定された送信ポートに対応する複数のキューのうち、前記パケットに設定されているVLAN番号と優先度との組合せに対応付けて前記キュー番号記憶手段に記憶されているキュー番号が示すキューに、前記パケットを格納するパケット格納手段と、
前記パケット格納手段によってキューに格納されたパケットを、前記キューに対応付けられた優先度に基づいて前記他の装置へ送信するパケット送信手段と
を備えたことを特徴とする中継装置。
(付記2)前記パケット送信手段は、同一の優先度に対応付けられた複数のキューから、ラウンドロビン方式によってパケットを取り出すラウンドロビン制御手段と、前記ラウンドロビン制御手段によって取り出されたパケットを、優先度の高い順番に前記他の装置へ送信する優先制御送信手段とを備えたことを特徴とする付記1に記載の中継装置。
(付記3)前記ラウンドロビン制御手段は、前記ラウンドロビン方式として、不足ラウンドロビン方式または加重ラウンドロビン方式のいずれかによって同一の優先度に対応付けられた複数のキューからパケットを取り出すことを特徴とする付記2に記載の中継装置。
(付記4)前記キュー番号記憶手段は、前記VLAN番号に対応付けて、優先度ごとに、キュー番号、または、パケット格納先のキューを特定しないことを示す情報であるキュー不定情報を記憶し、
前記パケット格納手段は、前記受信ポートによって受信されたパケットに設定されているVLANタグと優先度との組合せに対応付けて前記キュー番号記憶手段にキュー不定情報が記憶されている場合に、前記方路決定手段によって決定された送信ポートに対応する複数のキューのうち、いずれかのキューに前記パケットを格納させることを特徴とする付記1〜3のいずれか一つに記載の中継装置。
(付記5)前記パケット格納手段は、前記パケットに設定されているVLANタグと優先度との組合せに対応付けて前記キュー番号記憶手段にキュー不定情報が記憶されている場合に、前記方路決定手段によって決定された送信ポートに対応する複数のキューのうち、該パケットを受信した受信ポートを示すポート番号のMap値、または、該パケットのヘッダ情報のハッシュ値と同一のキュー番号が示すキューに該パケットを格納させることを特徴とする付記4に記載の中継装置。
(付記6)所定の仮想ネットワークに属する装置からパケットを受信する複数の受信ポートと、前記パケットを他の装置へ送信する複数の送信ポートとを有する中継装置におけるパケット中継方法であって、
前記中継装置が、
パケットに設定されている宛先情報に対応付けて、前記送信ポートを識別するためのポート番号を方路記憶部に記憶する方路記憶工程と、
前記仮想ネットワークを識別するためのVLAN番号と、パケットを中継する優先順位を示す優先度との組合せに対応付けて、送信ポートごとに優先度とVLAN番号との組合せに対応付けて設けられた複数のキューを識別するためのキュー番号をキュー番号記憶部に記憶するキュー番号記憶工程と、
前記受信ポートによってパケットが受信された場合に、該パケットに設定されている宛先情報に対応付けて前記方路記憶部に記憶されているポート番号が示す送信ポートに該パケットを出力することを決定する方路決定工程と、
前記方路決定工程によって決定された送信ポートに対応する複数のキューのうち、前記パケットに設定されているVLAN番号と優先度との組合せに対応付けて前記キュー番号記憶部に記憶されているキュー番号が示すキューに、前記パケットを格納するパケット格納工程と、
前記パケット格納工程によってキューに格納されたパケットを、前記キューに対応付けられた優先度に基づいて前記他の装置へ送信するパケット送信工程と
を含んだことを特徴とするパケット中継方法。
実施例1に係るスイッチの概要を説明するための図である。 実施例1に係るスイッチが適用されるネットワークの構成例を示す図である。 実施例1に係るスイッチの構成を示すブロック図である。 方路記憶部の一例を示す図である。 キュー番号記憶部の一例を示す図である。 図3に示した送信ポートモジュールの構成を示すブロック図である。 実施例1に係るスイッチによるパケット中継処理手順を示すフローチャートである。 実施例2に係るスイッチの構成を示すブロック図である。 VLAN記憶部の一例を示す図である。 図8に示した送信ポートモジュールの構成を示すブロック図である。 キュー番号記憶部の一例を示す図である。 図10に示したパケット格納部によるQID決定処理を説明するための図である。 実施例2に係るスイッチによるパケット中継処理手順を示すフローチャートである。
符号の説明
1 ネットワーク
2A〜2C サーバシステム
3A〜3C 記憶システム
4 スイッチ群
5 ネットワークシステム
6 ルーティングシステム
10A〜10F スイッチ
10、20 スイッチ
11a〜11c 受信ポート
12a〜12c 送信ポート
13、23 スイッチコア
14、15、25 ポートモジュール群
14a〜14c 受信ポートモジュール
15a〜15c、25a〜25c 送信ポートモジュール
16 ストリームメモリ
17、27 記憶部
18、28 制御部
150−0〜150−7 キュー群
151−0〜154−0 キュー
151−7〜154−7 キュー
155−0〜155−7 DRRスケジューラ
156 優先制御送信スケジューラ
171 タグメモリ
172 方路記憶部
173、251 キュー番号記憶部
181 リンク情報取得部
182、282 方路決定部
183、252a、252b パケット格納部
274 VLAN記憶部

Claims (5)

  1. 所定の仮想ネットワークに属する装置からパケットを受信する複数の受信ポートと、前記パケットを他の装置へ送信する複数の送信ポートとを有する中継装置であって、
    送信ポートごとに、パケットを中継する優先順位を示す優先度と仮想ネットワークを識別するためのVLAN番号との組合せに対応付けて設けられた複数のキューと、
    パケットに設定されている宛先情報に対応付けて、前記送信ポートを識別するためのポート番号を記憶する方路記憶手段と、
    VLAN番号と優先度との組合せに対応付けて、前記キューを識別するためのキュー番号を記憶するキュー番号記憶手段と、
    前記受信ポートによってパケットが受信された場合に、該パケットに設定されている宛先情報に対応付けて前記方路記憶手段に記憶されているポート番号が示す送信ポートに該パケットを出力することを決定する方路決定手段と、
    前記方路決定手段によって決定された送信ポートに対応する複数のキューのうち、前記パケットに設定されているVLAN番号と優先度との組合せに対応付けて前記キュー番号記憶手段に記憶されているキュー番号が示すキューに、前記パケットを格納するパケット格納手段と、
    前記パケット格納手段によってキューに格納されたパケットを、前記キューに対応付けられた優先度に基づいて前記他の装置へ送信するパケット送信手段と
    を備えたことを特徴とする中継装置。
  2. 前記パケット送信手段は、同一の優先度に対応付けられた複数のキューから、ラウンドロビン方式によってパケットを取り出すラウンドロビン制御手段と、前記ラウンドロビン制御手段によって取り出されたパケットを、優先度の高い順番に前記他の装置へ送信する優先制御送信手段とを備えたことを特徴とする請求項1に記載の中継装置。
  3. 前記ラウンドロビン制御手段は、前記ラウンドロビン方式として、不足ラウンドロビン方式または加重ラウンドロビン方式のいずれかによって同一の優先度に対応付けられた複数のキューからパケットを取り出すことを特徴とする請求項2に記載の中継装置。
  4. 前記キュー番号記憶手段は、前記VLAN番号に対応付けて、優先度ごとに、キュー番号、または、パケット格納先のキューを特定しないことを示す情報であるキュー不定情報を記憶し、
    前記パケット格納手段は、前記受信ポートによって受信されたパケットに設定されているVLANタグと優先度との組合せに対応付けて前記キュー番号記憶手段にキュー不定情報が記憶されている場合に、前記方路決定手段によって決定された送信ポートに対応する複数のキューのうち、いずれかのキューに前記パケットを格納させることを特徴とする請求項1〜3のいずれか一つに記載の中継装置。
  5. 所定の仮想ネットワークに属する装置からパケットを受信する複数の受信ポートと、前記パケットを他の装置へ送信する複数の送信ポートとを有する中継装置におけるパケット中継方法であって、
    前記中継装置が、
    パケットに設定されている宛先情報に対応付けて、前記送信ポートを識別するためのポート番号を方路記憶部に記憶する方路記憶工程と、
    前記仮想ネットワークを識別するためのVLAN番号と、パケットを中継する優先順位を示す優先度との組合せに対応付けて、送信ポートごとに優先度とVLAN番号との組合せに対応付けて設けられた複数のキューを識別するためのキュー番号をキュー番号記憶部に記憶するキュー番号記憶工程と、
    前記受信ポートによってパケットが受信された場合に、該パケットに設定されている宛先情報に対応付けて前記方路記憶部に記憶されているポート番号が示す送信ポートに該パケットを出力することを決定する方路決定工程と、
    前記方路決定工程によって決定された送信ポートに対応する複数のキューのうち、前記パケットに設定されているVLAN番号と優先度との組合せに対応付けて前記キュー番号記憶部に記憶されているキュー番号が示すキューに、前記パケットを格納するパケット格納工程と、
    前記パケット格納工程によってキューに格納されたパケットを、前記キューに対応付けられた優先度に基づいて前記他の装置へ送信するパケット送信工程と
    を含んだことを特徴とするパケット中継方法。
JP2008107176A 2008-04-16 2008-04-16 中継装置およびパケット中継方法 Active JP5167924B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008107176A JP5167924B2 (ja) 2008-04-16 2008-04-16 中継装置およびパケット中継方法
US12/337,809 US8532128B2 (en) 2008-04-16 2008-12-18 Relaying apparatus and packet relaying method
EP20080172062 EP2111001B1 (en) 2008-04-16 2008-12-18 Relay apparatus and packet relaying method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008107176A JP5167924B2 (ja) 2008-04-16 2008-04-16 中継装置およびパケット中継方法

Publications (2)

Publication Number Publication Date
JP2009260653A true JP2009260653A (ja) 2009-11-05
JP5167924B2 JP5167924B2 (ja) 2013-03-21

Family

ID=40823085

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008107176A Active JP5167924B2 (ja) 2008-04-16 2008-04-16 中継装置およびパケット中継方法

Country Status (3)

Country Link
US (1) US8532128B2 (ja)
EP (1) EP2111001B1 (ja)
JP (1) JP5167924B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8514700B2 (en) * 2010-10-29 2013-08-20 Alcatel Lucent MLPPP occupancy based round robin
CN102006224A (zh) * 2010-11-19 2011-04-06 中兴通讯股份有限公司 一种超虚拟局域网报文的上送方法及装置
EP2782301B1 (en) * 2011-11-17 2018-03-14 Panasonic Intellectual Property Management Co., Ltd. Router device, method for controlling router device, and computer program
US9929880B2 (en) * 2013-10-07 2018-03-27 Dell Products L.P. System and method for managing VLAN associations with network ports
US20190036843A1 (en) * 2016-06-30 2019-01-31 Hitachi, Ltd. Inter-switch communication management apparatus, inter-switch communication management method, and computer-readable storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000232482A (ja) * 1998-12-09 2000-08-22 Hitachi Ltd 可変長パケット通信装置
JP2000324130A (ja) * 1999-05-13 2000-11-24 Nec Corp Atmセル化回路、及びatmセル化方法
JP2004242335A (ja) * 2003-02-07 2004-08-26 Fujitsu Ltd 高速交換環境の不足ラウンドロビンスケジューリングをするシステム、方法及び論理
WO2005079016A1 (ja) * 2004-02-18 2005-08-25 Mitsubishi Denki Kabushiki Kaisha スイッチ装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0440854A (ja) 1990-06-05 1992-02-12 Katoo Maronie:Kk 菓子
US6570876B1 (en) * 1998-04-01 2003-05-27 Hitachi, Ltd. Packet switch and switching method for switching variable length packets
CA2335847A1 (en) * 1998-06-24 1999-12-29 Kenny Ying Theeng Lee Method and system for handling a loop back connection using a priority unspecified bit rate in adsl interface
US6680945B1 (en) * 1999-05-24 2004-01-20 Advanced Micro Devices, Inc. Method and apparatus for support of tagging and untagging per VLAN per port
US6862280B1 (en) * 2000-03-02 2005-03-01 Alcatel Priority remapping for data communication switch
DE10123821A1 (de) * 2000-06-02 2001-12-20 Ibm Geschaltete Ethernet-Netzwerke
US20020167950A1 (en) * 2001-01-12 2002-11-14 Zarlink Semiconductor V.N. Inc. Fast data path protocol for network switching
US6976096B1 (en) * 2001-06-02 2005-12-13 Redback Networks Inc. Method and apparatus for controlling the admission of data into a network element
JP2004030784A (ja) 2002-06-26 2004-01-29 Fujitsu Ltd 半導体記憶装置
JP2004030786A (ja) 2002-06-26 2004-01-29 Matsushita Electric Ind Co Ltd ディスクカートリッジ
JP3788803B2 (ja) 2002-10-30 2006-06-21 富士通株式会社 L2スイッチ
JP3791621B2 (ja) * 2003-01-21 2006-06-28 富士通株式会社 バーチャルネットワークシステムのキャリアネットワークおよび該キャリアネットワークの通信ノード
US7245617B2 (en) 2003-02-07 2007-07-17 Fujitsu Limited Queuing packets written to memory for switching
CN1531282A (zh) * 2003-03-12 2004-09-22 ���µ�����ҵ��ʽ���� 分组中继装置
US7551561B2 (en) * 2003-05-15 2009-06-23 Panasonic Corporation Packet communication terminal
JP2007274529A (ja) 2006-03-31 2007-10-18 Nec Commun Syst Ltd スイッチング装置、帯域制御方法
US20070268903A1 (en) 2006-05-22 2007-11-22 Fujitsu Limited System and Method for Assigning Packets to Output Queues
US20070280104A1 (en) * 2006-06-01 2007-12-06 Takashi Miyoshi System and Method for Managing Forwarding Database Resources in a Switching Environment
JP2008107176A (ja) 2006-10-25 2008-05-08 Hitachi High-Technologies Corp 分離カラム及びそれを用いた液体クロマトグラフ
US7715428B2 (en) * 2007-01-31 2010-05-11 International Business Machines Corporation Multicore communication processing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000232482A (ja) * 1998-12-09 2000-08-22 Hitachi Ltd 可変長パケット通信装置
JP2000324130A (ja) * 1999-05-13 2000-11-24 Nec Corp Atmセル化回路、及びatmセル化方法
JP2004242335A (ja) * 2003-02-07 2004-08-26 Fujitsu Ltd 高速交換環境の不足ラウンドロビンスケジューリングをするシステム、方法及び論理
WO2005079016A1 (ja) * 2004-02-18 2005-08-25 Mitsubishi Denki Kabushiki Kaisha スイッチ装置

Also Published As

Publication number Publication date
US8532128B2 (en) 2013-09-10
JP5167924B2 (ja) 2013-03-21
US20090262747A1 (en) 2009-10-22
EP2111001B1 (en) 2012-10-24
EP2111001A1 (en) 2009-10-21

Similar Documents

Publication Publication Date Title
Kalør et al. Network slicing in industry 4.0 applications: Abstraction methods and end-to-end analysis
JP5104508B2 (ja) 中継装置およびパケット中継方法
US8705363B2 (en) Packet scheduling method and apparatus
JP5164994B2 (ja) 制御装置と複数のフィールド装置との間のデータの最適化された伝送のための方法および設備
CN102577275B (zh) 中继控制设备、中继控制系统、中继控制方法
TWI353144B (en) Systems and methods for protocol filtering for qua
JP5167924B2 (ja) 中継装置およびパケット中継方法
US20080095181A1 (en) Data relay device, data relay method, and computer product
CN114143378B (zh) 一种网络优化方法、装置、网关设备及存储介质
CN105700940B (zh) 一种调度器及调度器的动态复用方法
JP4530806B2 (ja) パケット伝送装置
US9544241B2 (en) Queue scheduling method, apparatus and system
US10581759B1 (en) Sharing packet processing resources
CN115118679B (zh) 一种针对以太网交换器管理帧的快速转发系统
JP5674179B1 (ja) 効率的なネットワークアドレス変換およびアプリケーションレベルゲートウェイ処理のための装置および方法
JP2019176255A (ja) ネットワークシステム、制御装置、処理規則設定方法及びプログラム
US8824484B2 (en) System and method for deterministic I/O with ethernet based industrial networks
Sun et al. Joint Routing and Scheduling Optimization of in Vehicle Time Sensitive Networks based on Improved Grey Wolf Optimizer
US8499026B2 (en) Distributed packet processing system for high-speed networks and distributed packet processing method using thereof
JP2007325178A (ja) パケット処理システム、パケット処理方法、およびプログラム
US20090003371A1 (en) Method for transmitting packet and network system thereof
Axer et al. Requirements on real-time-capable automotive ethernet architectures
US10554572B1 (en) Scalable ingress arbitration for merging control and payload
JP4962083B2 (ja) Rprノード装置および公平性制御方法およびrpr通信システム
JP2007053667A (ja) モバイル装置、ホームエージェント装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120419

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120814

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20120822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121102

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121210

R150 Certificate of patent or registration of utility model

Ref document number: 5167924

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150