JP3545570B2 - スイッチングハブ - Google Patents
スイッチングハブ Download PDFInfo
- Publication number
- JP3545570B2 JP3545570B2 JP06502897A JP6502897A JP3545570B2 JP 3545570 B2 JP3545570 B2 JP 3545570B2 JP 06502897 A JP06502897 A JP 06502897A JP 6502897 A JP6502897 A JP 6502897A JP 3545570 B2 JP3545570 B2 JP 3545570B2
- Authority
- JP
- Japan
- Prior art keywords
- frame
- unit
- lan
- port
- read
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
Description
【発明の属する技術分野】
本発明は、スイッチングハブに関する。
【0002】
【従来の技術】
スイッチングハブは、既存のイーサネットLAN(Lacal Area Network)環境をそのまま接続でき、しかも、ATM(Asynchronous Transfer Mode)技術を、既存のLAN環境に組み込むために欠かせないバーチャル(V)LAN機能を持つことができるという点で、ATM−LAN時代においても、重要なLAN製品であると考えられている。
【0003】
【発明が解決しようとする課題】
しかしながら、従来のスイッチングハブは、マルチメディア通信へ適用した場合、データ系の通信でデータ落ち(フレーム廃棄)が生じたり、音声系の通信でフレームの遅延が生じたりしていた。
【0004】
例えば、図22に示したように、データ系のフレームを送出する端末Aと、音声系のフレームを送出する端末Bとが、従来のスイッチングハブに接続されており、端末A、Bが、異なるフレーム間隔で、しかも、スイッチ部の1個のフレームをスイッチングするのに必要とする時間と同程度の間隔で、フレームを送出している場合を考える。
【0005】
この場合、端末AからのフレームAは、スイッチングハブ内の端末A用の入力バッファ(ポート)に保持され、端末BからのフレームBは、端末B用の入力バッファに保持される。そして、スイッチングハブ内のスイッチ部は、ラウンドロビン形式で、各入力バッファ内にフレームが保持されているか否かを判断していき、フレームが保持されていた場合、その入力バッファに保持されたフレームを、フレーム内の宛先アドレスに応じた出力バッファ(ポート;図では1つしか表示していない)に供給するので、図中、模式的に示してあるように、音声系のフレームBがスイッチングハブ内で遅延してしまうことになる(フレーム間隔▲1▼′がフレーム間隔▲1▼よりも広くなってしまう)。また、単位時間当たりに各入力バッファから取り出されるフレームの数が、各入力バッファに入力されるフレームの数に応じて制御されている訳でもないので、フレームA用の入力バッファに示してあるように、入力バッファに空き領域がなくなり、フレームAが破棄されてしまうこともあった。
【0006】
データ系の通信では、データ落ちは許されないので、フレームAが廃棄された場合、データの再送信が行われる。すなわち、データ系の通信時に、フレームの廃棄が行われた場合、あるサイズのデータの通信を行うために、そのサイズの何割増しかサイズのデータを送信するためのネットワークリソースが使用されることになる。一方、音声系の通信では、多少データ落ちがあっても、着端末において、その通信の内容が認識できるが、データが遅延した場合、内容が認識困難なものとなってしまう。
【0007】
このため、多少フレームBを廃棄してでも、フレームAが廃棄されないように、フレームAのスイッチングを優先して行うことや、フレームAを後回しにしてしまって(早い段階でフレームAの通信を中断して)、フレームBが遅延しないようにフレームBのスイッチングを優先して行うができることが望まれるが、従来のスイッチングハブは、そのような通信品質制御を行う機能を有していなかった。
【0008】
また、従来のスイッチングハブを組み合わせて、あるいは、スイッチングハブのVLAN機能を用いて、複数のLANからなるネットワークを形成するためには、ルータを使用しなければならなかった。
【0009】
たとえば、2台のスイッチングハブを用いて、2つのLANからなるネットワークを形成するためには、図23に示したように、2台のスイッチングハブの間にルータを設けることが必要であった。この場合、同じスイッチングハブに収容された端末間のフレームのスイッチングは、MACアドレス検索という簡単な処理で行われるので高速に実行されることになる。しかしながら、ルータを介する必要がある端末間(例えば、端末Aと端末E)は、一方のスイッチングハブからのフレームが他方のスイッチングハブに渡される際、ルータによって、上位レイヤの各種アルゴリズムの処理が行われる。ルータが、1フレームを処理するのには、スイッチングハブが1フレームを処理するのに必要とする時間よりも極めて長い時間(通常、50倍)が必要とされるため、従来のスイッチングハブを用いたネットワークは、LAN間通信の通信性能が、LAN内通信時の通信性能よりも極めて低いものとなっていた。すなわち、LAN間通信時には、スイッチングハブの高速性を生かされていないネットワークとなっていた。
【0010】
そこで、本発明の第1の課題は、通信品質の制御が行えるスイッチングハブを提供することにある。
また、本発明の第2の課題は、高速にLAN間通信を実現できるスイッチングハブを提供することにある。
【0011】
【課題を解決するための手段】
上記第1の課題を解決するために、データのタイプを表すタイプ情報が設定されるタイプ情報フィールドを有するフレームを送受信する端末と組み合わせて使用するスイッチングハブを、複数の入出力ポートと、これら複数の入出力ポートと接続され、各入出力ポートから供給されるフレームを、そのフレームに含まれる情報に基づきスイッチングするスイッチ部と、タイプ情報とサービスクラスとの対応関係が記憶されたサービスクラステーブルとから構成するとともに、各入出力ポートとして、フレームを格納するためのバッファメモリと、フレームの格納に使用されている、バッファメモリの一領域を示す格納領域情報とサービスクラスとからなる複数の組み合わせ情報を、各組み合わせ情報が記憶された相対的な順序がわかる形態で記憶するための管理情報メモリと、フレームを受信する受信部と、受信部がフレームを受信したときに、管理情報メモリに記憶されている格納領域情報に基づき、そのフレームを格納できる、バッファメモリの一領域を特定し、特定した領域に当該フレームを格納するとともに、特定した領域を表す格納領域情報と、サービスクラステーブルにおいて、当該フレームのタイプ情報フィールドに設定されたタイプ情報に対応づけられているサービスクラスとからなる組み合わせ情報を、その組み合わせ情報が管理情報メモリ内に既に記憶されている組み合わせ情報の後に記憶されたことがわかる形態で、管理情報メモリに追加する格納制御部と、スイッチ部によって選択されたときに、使用状況情報メモリに記憶された組み合わせ情報の中から、所定の条件を満たすサービスクラスに関係し、しかも、最も過去に記憶された組み合わせ情報を特定し、バッファメモリの、特定した組み合わせ情報に含まれる格納領域情報によって指定される領域に記憶されたフレームをスイッチ部に供給するとともに、管理情報メモリ内の、特定した組み合わせ情報を消去する読出制御部とを、有するものを採用する。
【0012】
このような構成を有する本発明の第1のスイッチングハブによれば、通信品質制御が行えることになる。
なお、第1のスイッチングハブを構成するに際して、格納制御部として、受信部によって受信されたフレームが、サービスクラスフィールドが付加されていないフレームであった場合には、そのフレームに、サービスクラスを設定したサービスクラスフィールドを付加したフレームを、バッファメモリに記憶し、受信部によって受信されたフレームが、サービスクラスフィールドが付加されたフレームであった場合には、そのサービスクラスフィールドに設定されたサービスクラスを有する組み合わせ情報を、管理情報メモリに追加する部を採用することも出来る。
【0013】
このように動作する格納制御部を用いた第1のスイッチングハブからネットワークを構築すれば、発端末から着端末に至る通信経路上の各スイッチングハブにおいて、発端末を収容するスイッチングハブに備えられたサービスクラステーブル内の情報に基づく、共通な通信品質制御が行えることになる。換言すれば、ネットワークを構成する各スイッチングハブ内のサービスクラステーブルの内容を同じものとしなくとも、共通した通信品質制御が行えることになる。
【0014】
なお、第1のスイッチングハブを実現する際には、サービスクラステーブルとして、入出力ポート毎に、タイプ情報とサービスクラスとの対応関係を記憶したテーブルを用い、各入出力ポートを構成する格納制御部として、サービスクラステーブルに記憶されている、自入出力ポートに関する対応関係を用いて、フレーム内のタイプ情報に対応するサービスクラスを求めるものを用いることも出来る。
【0015】
上記第2の課題を解決するために、本発明では、スイッチングハブを、数の入出力ポートと、これら複数の入出力ポートと接続され、各入出力ポートから供給されるフレームを、そのフレームに含まれる情報に基づきスイッチングするスイッチ部と、LANの識別情報であるLAN番号と、入出力ポートの識別情報であるポート番号と、端末の識別情報であるMACアドレスの組み合わせを記憶するためのLANテーブルと、ユニークなLAN番号である自LAN番号を保持する保持部とから構成するとともに、各入出力ポートとして、フレームを送受信する送受信部と、この送受信部によって受信されたフレームを一時的に記憶するためのバッファメモリと、送受信部が端末に直接接続されているか否かを認識する認識部と、送受信部がフレームを受信したときに、認識部によって送受信部が端末に直接接続されていることが認識されていた場合には、宛先LAN番号フィールドと送信元LAN番号フィールドを含み、宛先LAN番号フィールドに、宛先端末が属するLANのLAN番号が不明であることを示す所定情報が設定され、送信元LAN番号フィールドに、保持部に保持された自LAN番号が設定されたタグフィールドを付加したフレームを生成、出力し、認識部によって送受信部が端末に直接接続されていないことが認識されていた場合には、受信されたフレームをそのまま出力する受信フレーム調整部と、この受信フレーム調整部が出力するフレームを、バッファメモリに格納し、スイッチ部によって選択されたときに、スイッチ部に対して、バッファメモリに格納したフレームの中から、最も過去に受信フレーム調整部が出力したフレームを供給するバッファ制御部と、スイッチ部からフレームが供給されたときに、認識部によって送受信部が端末に直接接続されていることが認識されていた場合には、供給されたフレームからタグフィールドを取り除いたフレームを生成して送受信部に供給し、認識部によって送受信部が端末に直接接続されていないことが認識されていた場合には、スイッチ部から供給されたフレームをそのまま送受信部に供給する送信フレーム調整部とを有する入出力ポートを用いる。
【0016】
さらに、スイッチ部として、処理対象とする入出力ポートを、複数の入出力ポートの中から、巡回的に選択する選択部と、この選択部によって選択された入出力ポートから供給されるフレームである対象フレーム内に設定されている宛先MACアドレスに対応するポート番号並びにポート番号の、LANテーブルからの読み出しを試みる第1読出試行部と、この第1読出試行部によってポート番号並びにLAN番号が読み出されたときに、宛先LAN番号フィールドにそのLAN番号を設定した対象フレームを、読み出されたそのポート番号によって識別される入出力ポートに供給する第1供給部と、第1読出試行部によってポート番号並びにLAN番号が読み出されなかったときに、対象フレーム内の宛先LAN番号フィールドに設定されている宛先LAN番号に対応するポート番号の、LANテーブルからの読み出しを試みる第2読出試行部と、この第2読出試行部によってポート番号が読み出されたときに、対象フレームを、読み出されたそのポート番号によって識別される入出力ポートに供給する第2供給部と、第2読出試行部によってポート番号が読み出されなかったときに、対象フレームを、その対象フレームを受信すべき端末と接続されている可能性がある全ての入出力ポートにブロードキャストする第3供給部と、第1供給部ないし第3供給部によってフレームの供給が行われるときに、対象フレーム内の送信元LAN番号フィールドに設定されているLAN番号と、選択部によって選択された入出力ポートのポート番号と、対象フレーム内に設定されている送信元MACアドレスの組み合わせをLANテーブルに記憶するLANテーブル学習部とを有するスイッチ部を用いる。
【0017】
このような構成を有する本発明の第2のスイッチングハブを用いてネットワークを構成すれば、ルータが不要となるので、高速なLAN間通信を実現できることになる。
【0018】
本発明の第2のスイッチングハブを実現する際に、タイプ情報とサービスクラスとの対応関係が記憶されたサービスクラステーブルを付加し、入出力ポートを構成要素である受信フレーム調整部として、送受信部によって受信されたフレームに対して、サービスクラスフィールドをも含み、そのサービスクラスフィールドに、サービスクラステーブルにおいて、当該フレーム内のタイプ情報フィールドに設定されたタイプ情報に対応づけられているサービスクラスを設定したタグフィールドを付加するものを用い、バッファ制御部として、バッファメモリに記憶されたフレームの中から、フレーム内に設定されたサービスクラスが所定の条件を満たし、かつ、最も過去に受信フレーム調整部が出力したフレームをスイッチ部に供給するものを採用しても良い。
【0019】
このような構成の第2のスイッチングハブを用れば、通信品質制御が行え、しかも、高速なLAN間通信を実現できるネットワークを構築できることになる。また、第2のスイッチングハブを製造する際には、サービスクラステーブルとして、遅延に対する寛容さを示す第1サービスクラスと、廃棄に対する寛容さを示す第2サービスクラスとからなるサービスクラスが記憶されたテーブルを用い、バッファ制御部として、スイッチ部によって選択されたときに、バッファメモリの使用率が所定値未満である場合には、スイッチ部に対して、バッファメモリ内の、第1サービスクラスが最も遅延に寛容でないことを示しているフレームの中から、最も過去に受信フレーム調整部が出力したフレームを選択して供給し、バッファメモリの使用率が所定値以上である場合には、スイッチ部に対して、バッファメモリ内の、第2サービスクラスが最も廃棄に寛容でないことを示しているフレームのなかから、最も過去に受信フレーム調整部が出力したフレームを選択して供給するものを用いることが出来る。
【0020】
このような構成を有する第2のスイッチングハブを用いれば、トラヒック量が少ないときには、遅延に寛容でないフレーム(例えば、音声系フレーム)が優先的に処理され、トラヒック量が多くなり、フレーム廃棄が生ずる可能性が高くなったときには、廃棄に寛容でないフレーム(例えば、データ系フレーム)が優先的に処理されるネットワークを実現できることになる。
【0021】
なお、第1サービスクラスと第2サービスクラスとからなるサービスクラスが記憶されたサービスクラステーブルを用いて、第2のスイッチングハブを製造する際には、バッファ制御部として、バッファメモリの使用率が所定値以上である場合には、スイッチ部に対して、バッファメモリ内の、第2サービスクラスが最も廃棄に寛容でないことを示しているフレームのなかから、第1サービスクラスが最も遅延に寛容でないことを示しているフレームを選択し、選択したフレームの中から、最も過去に受信フレーム調整部が出力したフレームを選択して供給するものを用いることも出来る。
【0022】
また、第2のスイッチングハブを構成するに際して、認識部として、送受信部によって受信されたフレームにタグフィールドが含まれていなかった場合に、送受信部が端末に直接接続されていることを認識し、送受信部によって受信されたフレームにタグフィールドが含まれていた場合に、送受信部が端末に直接接続されていないことを認識するものを用いても良い。
【0023】
さらに、本発明の第2のスイッチングハブに、端末と直接接続されている全ての入出力ポートに関する、ポート番号とMACアドレスの対応関係を記憶するアドレステーブルと、選択部によって選択された入出力ポートから供給される対象フレーム内に設定されている宛先MACアドレスに対応するポート番号の、アドレステーブルからの読み出しを試みる第0読出試行部と、第0読出試行部によってポート番号が読み出されたときに、対象フレームを、読み出されたそのポート番号によって識別される入出力ポートに供給する第0供給部とを付加することも出来る。ただし、この際、第1読出試行部としては、第0読出試行部によってポート番号が読み出されなかったときに機能する第1読出部を用いる。
【0024】
このような構成を採用すれば、LANテーブルに記憶される情報量を低減できるため、LANテーブルの実現に要するハードウェア量を低減できることになる。また、LANテーブルの検索が高速に行えることにもなるので、本構成を採用すれば、スイッチング速度の早いスイッチングハブが実現できる。
【0025】
また、本発明の第2のスイッチングハブに、世代情報とMACアドレスの対応関係が記憶される世代情報テーブルを付加するとともに、受信フレーム調整部として、世代情報フィールドを含むタグフィールドを対象フレームに付加する部を採用し、第3供給部として、対象フレームの宛先LAN番号フィールドにブロードキャスト番号が設定されていない場合には、宛先LAN番号フィールドと、世代情報フィールドの内容を、それぞれ、ブロードキャスト番号と、所定手順で決定した世代情報に書き換えた対象フレームをブロードキャストするとともに、決定した世代情報と対象フレーム内の送信元MACアドレスの対応関係を世代情報テーブルに登録し、第0読出試行部として、対象フレーム内の宛先LAN番号フィールドにブロードキャスト番号が設定されていた場合には、その対象フレームに設定されている送信元MACアドレスに対応づけられている世代情報の、世代情報テーブルからの読み出しを試み、対象フレームの世代情報フィールドに記憶された世代情報である対象世代情報と同じ内容の世代情報が読み出された場合には、対象フレームを破棄し、対象世代情報と異なる内容の世代情報が読み出された場合、及び、世代情報が読み出されなかった場合には、対象フレーム内の送信元MACアドレスに対応する世代情報として対象世代情報が記憶されるように、世代情報テーブルの内容を更新するものを採用ことも出来る。
【0026】
このような構成を有するスイッチングハブを用いれば、他のスイッチングハブにおけるフレームのブロードキャストによって、各スイッチングハブが複数個のフレームを受け取ってしまうような形状のネットワークを構成した場合にも、個々のスイッチングハブにおいて、2回目以降に入力される、ブロードキャストによって生じたフレームが破棄されることになる。すなわち、本スイッチングハブを用いれば、どのような形状のネットワークをも構築できることになる。
【0027】
また、本発明の第2のスイッチングハブを構成する際には、バッファ制御部として、受信フレーム調整部が出力したフレームを、バッファメモリに格納できない場合、そのフレームとバッファメモリに記憶されているフレームの中から選択した1つのフレームを破棄するとともに、破棄したフレーム内に設定されていた宛先MACアドレスを輻輳発生データとして有し、輻輳が起こったことをフレームを送出した端末に通知するためのコリジョンフレームを生成し、生成したコリジョンフレームを送受信部に供給する部を用い、第0読出試行部は、対象フレームがコリジョンフレームであった場合、LANテーブルから、そのコリジョンフレーム内の輻輳発生データが示すMACアドレスに関するデータを消去する部を用いることが望ましい。
【0028】
また、アドレステーブル等を採用した上で、LANテーブル学習部として、選択部によって選択された入出力ポートのポート番号がアドレステーブルに記憶されておらず、かつ、第1供給部ないし第3供給部によって対象フレームが供給される入出力ポートのポート番号がアドレステーブルに記憶されている場合には、LANテーブルに、対象フレーム内の送信元LAN番号フィールドに設定されているLAN番号と、選択部によって選択された入出力ポートのポート番号と、対象フレーム内に設定されている送信元MACアドレスの組み合わせをLANテーブルに記憶し、選択部によって選択された入出力ポートのポート番号がアドレステーブルに記憶されておらず、かつ、第1供給部ないし第3供給部によって対象フレームが供給される入出力ポートのポート番号がアドレステーブルに記憶されていない場合には、LANテーブルに、対象フレーム内の送信元LAN番号フィールドに設定されているLAN番号と、選択部によって選択された入出力ポートのポート番号の組み合わせをLANテーブルに記憶する部を用いれば、より、LANテーブルの記憶される情報量が少ないスイッチングハブを実現できる。すなわち、安価な、しかも、極めてスイッチング速度の早いスイッチングハブを実現できることになる。
【0029】
さらに、本構成を採用した場合には、LANテーブル内には、自LANに属する端末と通信したことのある端末のMACアドレスだけが記憶される。このため、上記のように動作するLANテーブル学習部を用いた上で、第0読出試行部として、対象フレーム内に設定されている宛先MACアドレスがブロードキャストフレームであることを示す情報であった場合、その宛先MACアドレスと、LANテーブルに記憶されている情報に基づき、対象フレームの送出元端末と通信を行った可能性がある入出力ポートを特定し、特定した入出力ポートに対象フレームをブロードキャストする部を用いれば、トラヒック量を無駄に増大させることなく、上位プロトコルによるブロードキャストフレームに対処できるスイッチングハブが構成できることになる。
【0030】
さらに、第0読出試行部として、対象フレーム内に設定されている宛先MACアドレスがブロードキャストフレームであることを示す情報であり、かつ、対象フレーム内に設定されているタイプ情報が、MACアドレスを問い合わせるプロトコルであることを示すものであった場合、LANテーブルの内容に依らず、複数の入出力ポートに対象フレームをブロードキャストするものを用いれば、ARP等のMACアドレスの問い合わせプロトコルにも対応できるスイッチングハブを得ることが出来る。
【0031】
【発明の実施の形態】
以下、図面を参照して、本発明の一実施形態を具体的に説明する。
図1に示したように、実施形態のスイッチングハブ10は、複数のポート11とスイッチ部12と記憶部13を主な構成要素として備える。実施形態のスイッチングハブ10は、イーサタイプを有するフレームによる通信のために用いられる機器であり、本スイッチングハブ10を用いて、LAN間通信が可能なネットワークを構築する際には、各ポート11に、通信回線を介して、端末、あるいは、スイッチングハブ10と同構成のスイッチングハブが接続される。
【0032】
記憶部13は、ポート11およびスイッチ部12によってアクセスされるメモリであり、記憶部13には、LANテーブル、アドレステーブル、サービスクラステーブル、世代情報テーブル等が記憶される。また、記憶部13は、ユニークなLAN番号(自LAN番号)も記憶している。なお、実際のスイッチングハブ10は、VLAN機能を有している(記憶部13に複数のLAN番号が設定できる)のであるが、以下では、説明の便宜上、記憶部13に1個のLAN番号が記憶されている(スイッチングハブ10に接続される端末は、全て同一のLANに属する)ものとする。
【0033】
記憶部13内の各テーブルに記憶されるデータの詳細については後述するが、サービスクラステーブルには、通信品質の制御のためのデータであるサービスクラスが、イーサタイプに対応づけて記憶される。サービスクラステーブルの設定は、ネットワーク(スイッチングハブ10)の運用を開始する前に、ネットワーク管理者によって行われ、サービスクラステーブルの内容は、ポート11によって利用される。また、LANテーブル、アドレステーブルには、スイッチ部12が利用するデータが記憶される。LANテーブルへのデータの書き込みは、ネットワークの運用開始後、フレームをスイッチングしたスイッチ部12によって行われる。そして、アドレステーブルへのデータの書き込みは、ネットワークの運用開始後、フレームを受信したポート11によって行われる。
【0034】
以下、各部の構成、動作を詳細に説明する。まず、スイッチングハブ10が備える各ポート11の構成、動作を説明する。
図2に示したように、スイッチングハブ10内の各ポート11は、フレーム送受信部21と受信フレーム検査部22とバッファ23とバッファ制御部24と送信フレーム検査部25とを備える。フレーム送受信部21は、通信回線を介して、外部機器(端末あるいは他のスイッチングハブ内のポート)と接続され、フレームを受信した際、そのフレームを、信号形態を変換した上で、受信フレーム検査部22に供給する。また、送信フレーム検査部25を介して、スイッチ部25からのフレームを受け取った際、フレーム送受信部21は、そのフレームを、信号形態を通信回線用のものに変換した上で、通信回線上に送出する。
【0035】
既に説明したように、スイッチングハブ10は、イーサタイプを有しているフレームによる通信のための機器であるため、端末に、直接、接続されているフレーム送受信部21(ポート11)は、図3あるいは図4に示したように、イーサタイプ(ユーザ・データ・フィールドに格納されているデータのプロトコルを示す識別子)を記憶するためのフィールド(図においてタイプと表記してある領域)を有するフレームを受信する。なお、図3に示したフレームは、DIX仕様のフレームであり、図4に示したフレームは、IEEE802.3仕様の、SNAPフォーマットを採用したフレームである。
【0036】
一方、スイッチングハブ10内、あるいは、2台のスイッチングハブ10間では、高速な通信と、通信内容に応じた通信品質制御を実現するため(詳細は後述)、図5に示したような、端末からのフレームに、VLANタグと名付けた12バイトの情報を付加したフレーム(以下、VLANタグ付きフレーム、あるいは、タグ付きフレームとも表記する)がやり取りされる。なお、図5に示したVLANタグ付きフレームは、図3に対応するものである。また、VLANタグを構成している各データの意味、用途についての説明は後ほど行う。
【0037】
このようなVLANタグ付きフレームを生成する回路が、フレーム送受信部21に接続されている受信フレーム検査部22である。上述したように、受信フレーム検査部22(ポート11)は、端末と接続されることも、他のスイッチングハブ内のポートと接続されることもある。また、受信フレーム検査部22(ポート11)は、自身が、通常のフレームを受信するか、VLANタグ付きフレームを受信するかを知らない状態(端末が接続されているか、他のポートが接続されているかを知らない状態)で、動作を開始する。
【0038】
このため、受信フレーム検査部22は、フレーム送受信部21からフレームを受け取った際、そのフレームがVLANタグ付きフレームであるか否かを判断し、VLANタグ付きフレームでなかった場合には、受け取ったフレームにVLANタグを付加し、VLANタグを付加したフレームをバッファ23に供給する。VLANタグ付きフレームを受け取った際には、当該フレームを、そのまま、バッファ23に供給する。また、フレームをバッファ23に供給する際、受信フレーム検査部22は、バッファ制御部24に、当該フレームの管理手順(通信品質制御手順)を指定するための情報を通知する処理も行う。バッファ制御部24は、その情報を用いて、フレームをバッファ23へ格納する。また、バッファ制御部24は、スイッチ部12から、フレームの出力指示を受けたときに、当該情報を用いて、バッファ23に格納されているフレームのなかから、スイッチ部12に供給する1つのフレームを決定する。
【0039】
より具体的には、図6に示したように、受信フレーム検査部22は、フレーム送受信部21からフレームを受け取った際、そのフレームの先頭部分の内容を読み出すことによって、当該フレームが、タグ付きフレームであるか否かの判断を行うとともに、後の処理に必要なデータを取得する(ステップS101)。このステップにおいて、受信フレーム検査部22は、VLANタグが付加されていなかった場合には、フレーム内に設定されている、送信元アドレスとイーサタイプ(図3参照)を取得する。一方、VLANタグが付加されていた場合には、送信元アドレスとイーサタイプと、VLANタグ内のサービスクラス(図5参照)を取得する。
【0040】
フレーム送受信部21からのフレームが、タグ付きフレームでなかった場合(ステップS102;Y)、受信フレーム検査部22は、自身が端末に直接接続されていることを記憶する(ステップS103)。また、このステップにおいて、受信フレーム検査部22は、ステップS101で取得した送信元アドレスによって識別される端末を収容していることを示す情報を、記憶部13内のアドレステーブルに設定する処理も行う。図7に模式的に示したように、アドレステーブルは、MACアドレスによってポート番号を検索できる形態のテーブルとなっており、ステップS103において、受信フレーム検査部22は、自身を示すポート番号とステップS101で取得した送信元アドレス(MACアドレス)を、アドレステーブル内に設定する。
【0041】
次いで、受信フレーム検査部22は、ステップS101で取得したイーサタイプに対応するサービスクラスを、サービスクラステーブルから検索する(ステップS104)。
【0042】
図8に示したように、サービスクラステーブルは、イーサタイプ(SNA、IP、…)と、それぞれ、サービスクラスXとサービスクラスYからなるサービスクラス(1・1、5・1、…)との対応関係が記憶されたテーブルとなっている。なお、“・”の左右に記してある値が、それぞれ、サービスクラスX、Yに相当している。
【0043】
後述するように、スイッチングハブ10は、フレームの破棄を行わなければならない状況に至ったとき、サービスクラスYが大きなサービスクラスを有するフレームを破棄する。また、通常の状況では、サービスクラスYが小さなフレームを優先的にスイッチングする。このため、ネットワーク管理者は、スイッチングハブ10の運用開始前に、フレームの遅延に寛容なイーサタイプ(IP、ARP等)が、大きなサービスクラスXに対応づけられ、廃棄に寛容なイーサタイプ(AUTOPHONE)が、小さなサービスクラスYを対応づけられるように、このサービスクラステーブルに情報を設定しておく。
【0044】
サービスクラステーブルの検索後、受信フレーム検査部22は、宛先VLAN番号(宛先LAN番号+世代情報)として、“オール0”を設定し、送信元LAN番号として、自LAN番号を設定し、サービスクラスとして、ステップS104で検索したサービスクラスを設定したVLANタグをフレームに付加する(ステップS105)。なお、このステップで設定された世代情報は、この後、参照されることがない(内容の更新後、参照される)。このため、このステップにおいて、どのような値を設定しても良いのであるが、実施形態のスイッチングハブ10では、上記のように、“0”を設定している。
【0045】
このような一連の処理を行った後、受信フレーム検査部22は、サービスクラスX、Yを、バッファ制御部24に通知するとともに、生成したVLANタグ付きフレームをバッファ23に供給する。
【0046】
また、VLANタグが付加されたフレームを受信した場合(ステップS102;N)、受信フレーム検査部22は、端末を、直接、収容していないことを記憶し(ステップS106)、当該フレーム内のサービスクラスX、Yを、バッファ制御部24に通知するとともに、フレーム送受信部21から受け取ったVLANタグ付きフレームをバッファ23に供給する。
【0047】
一方、サービスクラスX,Yの通知を受けたバッファ制御部24は、フレームをバッファ23に格納し、バッファの使用率θ(フレームの格納に使用されている記憶容量/全記憶容量)を算出する(ステップS107)。なお、このステップにおいて、フレームをバッファに格納する際、バッファ制御部24は、内蔵する管理情報用メモリ内に、フレームの格納領域を示す情報を、サービスクラスX、Yと、フレームの相対的な格納順(時間的な格納順)と対応づけて記憶する。
【0048】
また、図示は省略したが、バッファ制御部24は、このステップにおいて、受信フレーム検査部22からのフレームを破棄する場合もあり、バッファ23内に格納されている、他のフレームを破棄して、受信フレーム検査部22からのフレームを格納する場合もある。
【0049】
具体的には、管理情報用メモリ内に記憶された情報を用いた空き領域の検索によって、受信フレーム検査部22からのフレームを格納できる空き領域が見いだせなかった場合、バッファ制御部24は、ステップS107において、管理情報用メモリ内に記憶されている各フレームに関するサービスクラスYの最大値を特定し、特定した最大値と、受信フレーム検査部22から通知されたサービスクラスYの大きさを比較する。そして、当該最大値が、通知されたサービスクラスY以下であった場合には、今回、受信フレーム検査部22から供給されたフレームを破棄する。
【0050】
一方、当該最大値が、通知されたサービスクラスYよりも大きかった場合、バッファ制御部24は、サービスクラスYとして、その最大値を有し、最も最近格納されたフレームを特定する。次いで、特定したフレームをバッファ23内から消去して、今回、与えられたフレームをバッファ23に格納する。
【0051】
すなわち、バッファ制御部24は、受信フレーム検査部22からのフレームを格納できる空き領域が見いだせなかった場合、最も廃棄に寛容な(サービスクラスYが大きい)フレームを廃棄する。
【0052】
さらに、フレームの破棄を行ったとき、バッファ制御部24は、破棄したフレームの送信元に対するコリジョン信号フレームの送出を、送信フレーム検査部25に指示する(詳細は後述)。
【0053】
また、バッファ制御部24は、スイッチ部11から、フレームの出力指示を受けたときに、図9に示した手順で動作することによって、バッファ23内に記憶された1つのフレームをスイッチ部11に供給する。
【0054】
すなわち、フレームの出力指示を受けたとき、バッファ制御部24は、まず、バッファの使用率θが、予め定められたしきい値θ0以上であるか否かを判断する(ステップS201)。そして、θ<θ0であった場合(ステップS201;N)、バッファ制御部24は、管理情報用メモリに記憶してある情報に基づき、最も小さいサービスクラスXが対応づけられた、最も過去にバッファ23に格納されたフレームの格納領域を特定する(ステップS202)。一方、θ≧θ0であった場合(ステップS201;Y)、バッファ制御部24は、管理情報用メモリに記憶してある情報に基づき、最も小さいサービスクラスYが対応づけられたフレームの中から、最も小さいサービスクラスXが対応づけられたフレームであって、最も過去にバッファ23に格納されたフレームの格納領域を特定する(ステップS203)。
【0055】
そして、バッファ制御部24は、ステップS202あるいはステップS203で特定した格納領域に記憶されたVLANタグ付きフレームを、スイッチ部12に供給(ステップS204)する。次いで、バッファの使用率θの値を更新(ステップS205)して、図示した処理を終了する。
【0056】
このように、バッファ制御部24は、バッファ23に十分な空き領域が存在しているとき(θ<θ0)には、サービスクラスXの値が小さいフレーム、すなわち、遅延に寛容ではないフレームを優先的にスイッチ部12に供給する。そして、フレームの廃棄が生じそうな状態にあるとき(θ≧θ0)には、サービスクラスYの値が小さいフレーム、すなわち、廃棄に寛容ではないフレームを優先的にスイッチ部12に供給する。この結果、バッファ23内には、廃棄に寛容なフレームが残ることになるので、実施形態のスイッチングハブ10では、上述したフレーム廃棄時に、廃棄に寛容なフレームが廃棄されることになる。
【0057】
送信フレーム検査部25は、バッファ制御部24からコリジョン信号フレームの送出を指示された際には、破棄されるフレーム内の送信元アドレスが宛先アドレスとして設定された、当該フレーム内の宛先アドレスを輻輳発生宛先アドレスデータとして有するコリジョン信号フレームを送信させるためのデータをフレーム送受信部21に供給する。
【0058】
また、送信フレーム検査部25は、スイッチ部11からフレーム(常にタグ付き)が供給された場合、受信フレーム検査部22によって端末に直接接続されていることが認識されていた場合には、そのフレームからVLANタグを除去し、通常の形態のフレームを生成する。そして、その通常の形態のフレームを、フレーム送受信部21を介して、端末に供給する。一方、受信フレーム検査部22によって端末に直接接続されていないことが認識されていた場合、受信フレーム検査部22は、スイッチ部11からのタグ付きフレームをそのままフレーム送受信部21を介して他のスイッチングハブに供給する。
【0059】
以上説明したように、スイッチングハブ10内の各ポート11は、端末に接続されているか否かによって異なる動作をするように構成されている。このため、本スイッチングハブを組み合わして構成されたネットワークでは、図10に模式的に示したように、端末とスイッチングハブの間では、通常の形態のフレームが授受され、スイッチングハブ間では、タグ付きフレームが授受される。
【0060】
次に、スイッチ部12の動作を説明する。
スイッチ部12は、自らの配下にある複数のポート11に対して、ラウンドロビン形式で、順次(1フレームに対する処理が終わる度に)、フレームの出力指示を出す。
【0061】
出力指示を出したポート11から、フレームが供給された際、スイッチ部12は、図11に示したように、まず、そのフレームに含まれている宛先アドレス(MACアドレス)と、VLANタグの内容(宛先LAN番号、送信元LAN番号)とを取得する(ステップS301)。
【0062】
宛先LAN番号が“オール1”であった場合(ステップS302;オール1)、スイッチ部は、ブロードキャストフレーム応答処理と名付けた処理を実行する。ブロードキャストフレーム応答処理の詳細については後述するが、この処理は、上位プロトコルによるブロードキャストフレームに対応するためのものではなく、フレームを受信すべき端末の位置が判らないときに使用されるブロードキャストフレームに対応するための処理である。ちなみに、本スイッチングハブは、データをブロードキャストする上位プロトコルをもサポートできるようにも構成されており、そのサポートのために用意されている処理(以下では、サポート処理と表記する)についても後述することにする。なお、図示は省略したが、サポート処理を実行するか否かの判断は、ステップS301とS302の間で、フレーム内の宛先アドレス(宛先LAN番号ではない)が“オール1”であるか否かを判断することによって行われている。
【0063】
さて、ステップS301で取得した宛先LAN番号が“オール0”であった場合(ステップS302;オール0)、スイッチ部12は、まず、ステップS301で取得した宛先アドレスを用いてアドレステーブルを検索することによって、ポート番号の読み出しを試みる(ステップS303)。そして、アドレステーブルの検索に成功した場合(ステップS303;Y)、すなわち、宛先アドレスに対応するポート番号が読み出せた場合、そのポート番号によって識別されるポート11にフレームをスイッチング(ステップS309)し、処理を終了する。
【0064】
一方、アドレステーブル内に宛先アドレスに関するデータが存在していなかった場合(ステップS304;N)、スイッチ部11は、宛先アドレスを用いてLANテーブルを検索する(ステップS305)。
【0065】
図12に示したように、LANテーブルは、ポート番号とLAN番号の組み合わせに対して、幾つか(0個の場合もある)のMACアドレスが記憶されるテーブルとなっており、ステップS305において、スイッチ部12は、このLANテーブルから、宛先アドレス(MACアドレス)に対応するLAN番号とポート番号の読み出しを試みる。
【0066】
LAN番号並びにポート番号の読み出しが行えた場合(ステップS306;Y)、スイッチ部12は、それまで、“オール0”が設定されていた宛先LAN番号フィールドに、検索したLAN番号を設定する(ステップS307)。そして、LANテーブル学習処理を行う(ステップS308)。
【0067】
LANテーブル学習処理は、今回、スイッチング(ブロードキャスト)を行うフレームによって与えられた他LANとの接続形態に関する情報をLANテーブルに追加する処理であり、基本的には、以下のような手順で進められる。
【0068】
まず、スイッチ部12は、処理対象フレームの送信元LANが他LANであることを確認する。送信元LANが自LANであった場合、スイッチ部は、LANテーブルの内容を何ら変更することなく、LANテーブル学習処理を終了する。送信元LANが他LANであった場合、スイッチ部は、処理対象フレームが他LANに対するものであるか否かを判断する。すなわち、スイッチ部は、処理対象フレームを、他のスイッチングハブに供給するのか、自LANに属する端末に供給するのかを判断する。そして、前者であった場合、スイッチ部は、LANテーブルに、処理対象フレームを取り出したポートのポート番号と、処理対象フレーム内に設定されている送信元LAN番号の組み合わせを登録する。一方、後者であった場合、スイッチ部は、LANテーブルに、処理対象フレームを取り出したポートのポート番号と、処理対象フレーム内に設定されている送信元LAN番号と、送信元アドレスの組み合わせを登録する。
【0069】
このような手順でLANテーブル学習処理を実行した後、スイッチ部は、テーブル検索によって特定されたポートにフレームをスイッチング(ステップS309)して、図示した処理を終了する。
【0070】
また、ステップS305におけるLANテーブル検索時に、宛先アドレスを有するデータがなかった場合(ステップS306;N)、スイッチ部12は、LANテーブル学習処理を実行(ステップS330)した後、処理対象フレームの宛先LAN番号フィールドと世代情報フィールドに、それぞれ、ブロードキャスト番号(オール1)と、所定のアルゴリズムを用いて発生した乱数を、設定する(ステップS331)。そして、宛先アドレスによって識別される端末(目的端末)を収容している可能性があるポート群(アドレステーブルにポート番号が記憶されていないポート群)に、フレームをブロードキャスト(ステップS332)して、処理を終了する。
【0071】
また、ステップS301で取得した宛先LAN番号が“オール1”でもなく“オール0”でもなかった場合(ステップS302;その他)、スイッチ部11は、その宛先LAN番号が自LAN番号と一致しているか否か、すなわち、フレームの宛先が自LANであるか否かを判断する(ステップS320)。フレームの宛先が自LANであった場合(ステップS320;Y)、スイッチ部12は、宛先アドレスを用いてアドレステーブルを検索し、その宛先アドレスによって識別される端末を収容しているポート(ポート番号)を特定する(ステップS321)。そして、ステップS308に進み、既に説明した処理を実行する。
【0072】
一方、宛先が自LANでなかった場合(ステップS320;N)、宛先LAN番号を用いてLANテーブルを検索することによって、目的端末を収容しているポートのポート番号の特定を試みる(ステップS322)。そして、ポート番号が検索できた場合には、ステップS308において、LANテーブル学習処理を実行した後、検索したポートにフレームをスイッチング(ステップS309)して、処理を終了する。そして、LANテーブルからのポート番号の検索に失敗した場合(ステップS323;N)、スイッチ部は、ステップS330に進み、既に説明した処理を実行する。
【0073】
ここで、図13に示したように、4つのスイッチングハブSH1〜SH4と、それぞれ、MACアドレスA〜Iを有する端末A〜端末Iによってネットワークが形成されており、SH1、SH4、SH2内のLANテーブルの内容が図示したものとなっているときに、LAN1に属する端末Aが、LAN2に属する端末Fへのフレーム(宛先アドレスF、送信元アドレスAを有するフレーム)を送出した場合を例に、スイッチ部12の動作の補足説明を行うことにする。なお、当該場合は、端末Fの送出したフレームを受信した端末Aが、端末Fに対して応答する場合に相当する。
【0074】
この場合、ポートP1は、端末Aから、VLANタグが付加されていないフレームを受信する。このため、ポートP1は、当該フレームに、宛先LAN番号を“オール0”、送信元VLAN番号を“LAN1”としたVLANタグを付加し、そのVLANタグを付加したフレームを、SH1内のスイッチ部(図示せず)に供給する。
【0075】
そのようなVLANタグ付きフレームが供給されたスイッチ部は、ステップs301において、宛先アドレスが“F”であること、宛先LAN番号が“オール0”であることを認識する。そのため、ステップS302において、“オール0”側への分岐を行い、ステップS303において、アドレステーブルからの、宛先アドレス“F”に対応するポート番号の読み出しを試みる。
【0076】
端末Fは、SH2に収容された端末であるため、SH1内のアドレステーブルには、MACアドレス“F”に関するデータは存在していない。このため、スイッチ部は、LANテーブルからの宛先アドレスに対応するLAN番号並びにポート番号の読み出しを試みる(ステップS305)。この場合、LANテーブル内に、MACアドレス“F”に対応づけて、LAN番号“LAN2”とポート番号“P4”とが記憶されているので、スイッチ部は、“オール0”であった宛先LAN番号フィールドに、LAN番号“LAN2”を設定(ステップS307)する。そして、送信元LANが、自LANであるため、LANテーブルの更新を行うことなく、そのフレームを、ポートP4に供給する(ステップS309)。
【0077】
ポートP4は、過去に、VLANタグ付きフレームを受け取っている(LANテーブルにP4に関するデータがある)ので、自身が端末とは接続されていないことを認識している。このため、ポートP4は、VLANタグを除去することなく、スイッチ部12からのフレームを回線上に送出する。
【0078】
ポートP4から送出されたフレーム(VLANタグ付きフレーム)は、SH4内のポートP5を介して、SH4内のスイッチ部に供給される。なお、既に説明したように、ポートP5(のバッファ)内における当該フレームの管理は、SH1においてVLANタグ内に設定されたサービスクラスX、Yを用いて行われる。
【0079】
SH4内のスイッチ部は、ステップS301において、宛先アドレス“F”、宛先LAN番号“LAN2”を取得する。このため、スイッチ部は、ステップs320に進み、宛先が自LAN(すなわち、“LAN4”)であるか否かを判断する。この場合、宛先は他LANであるので、スイッチ部は、ステップS320において“N”側への分岐を行う。そして、ステップS322において、宛先LAN番号“LAN2”を用いて、LANテーブルを検索し、ポート番号“P7”を得る。
【0080】
次いで、スイッチ部は、LANテーブル学習処理を実行し、送信元LANが他LANであり、また、ポートP7は、直接、端末が接続されたポートではないので、自スイッチングハブ内のLANテーブルに、送信元LAN番号“LAN1”と、フレームが受信されたポートのポート番号“P5”との対応関係を記憶する。すなわち、スイッチ部は、フレームが、他LANに対するものであるので、LANテーブルへのMACアドレスの登録は行わず、SH4内のLANテーブルの内容を、図14に示したものに変更する。その後、スイッチ部は、検索によって特定したポートP7に、フレームを供給する。
【0081】
ポートP7、SH2内のポートP8は、それぞれ、ポートP4、ポートP5と同様に動作する。その結果として、SH2内のスイッチ部に、SH4内のスイッチ部がポートP8に対して出力したフレーム(宛先LAN番号=“LAN2”、宛先アドレス=“F”)がそのまま供給される。
【0082】
SH2内のスイッチ部は、宛先LAN番号が、“オール0”、“オール1”のいずれでもないことから、ステップS320を実行する。そして、ステップS320において、宛先が自LANであることを認識する。このため、ステップS322ではなく、ステップS321を実行する。すなわち、フレームに設定された宛先アドレスを用いて、SH2内のアドレステーブルから、その宛先アドレスに対応づけられたポート番号を読み出す。この場合、ポート番号“P11”が読み出されることになるので、スイッチ部は、そのポート番号によって識別されるポートP11に、VLANタグ付きフレームを供給する。
【0083】
また、送信元LANが他LANであるので、SH2内のスイッチ部は、LANテーブルの更新も行う(ステップS308)。この際、スイッチ部は、宛先LANが自LANであるので、LANテーブルに、MACアドレスをも登録する。すなわち、スイッチ部は、SH2内のLANテーブルの内容を、図15に示したものに変更する。
【0084】
ポートP11は、自ポートが端末を直接収容しているポートであるため、スイッチ部からフレームが供給された際、そのフレームからVLANタグの除去を行う。そして、ポートP11は、VLANタグを除去した、通常の形態のフレームを端末Fに送信する。
【0085】
このように、ある端末(図13では、端末F)の送出したフレームが、通信先端末(端末A)に到達していた場合、スイッチングハブ10を用いて構成されたネットワークでは、ブロードキャストが行われることなく、通信先端末からのフレームが、その通信先端末への通信を開始した端末に到達する。
【0086】
次に、図13に示した状況下(端末Dから端末Aへの通信が過去に行われていない状況下)、端末Aから端末D宛のフレームが送出された場合を考える。
この場合、上述した場合と同様に、ポートP1は、端末Aからのフレームに、宛先LAN番号を“オール0”、送信元VLAN番号を“LAN1”としたVLANタグを付加し、そのVLANタグ付きフレームを、SH1内のスイッチ部に供給する。
【0087】
そのようなVLANタグ付きフレームが供給されたスイッチ部は、ステップs301において、宛先アドレスが“D”であること、宛先LAN番号が“オール0”であることを認識する。このため、ステップS302において、“オール0”側への分岐を行い、ステップS303において、アドレステーブルからの、宛先アドレス“D”に対応するポート番号の読み出しを試みる。端末Dは、SH2に収容された端末であるため、SH1内のアドレステーブルには、MACアドレス“D”に関するデータは存在していない。
【0088】
このため、スイッチ部は、LANテーブルからの宛先アドレスに対応するLAN番号並びにポート番号の読み出しを試みる(ステップS305)。この場合、LANテーブル内に、MACアドレス“D”に関係するデータは存在していないため、スイッチ部は、ステップS310以降の処理を実行する。すなわち、SH1内のスイッチ部は、宛先LAN番号フィールド、世代情報フィールドに、それぞれ、ブロードキャスト番号“オール1”と乱数を設定し、目的端末を収容している可能性があるポート群に、当該フレームをブロードキャストする。このケースでは、目的端末を収容している可能性があるポートは、ポートP4だけであるので、スイッチ部は、ポートP4だけに、ブロードキャスト番号を設定したフレームを供給する。
【0089】
ポートP4,P5の動作の結果、SH4内のスイッチ部には、SH1内のスイッチ部からポートP4に供給されたフレームがそのまま供給される。このため、SH4内のスイッチ部は、ステップS302において、“オール0”側への分岐を実行し、ブロードキャストフレーム応答処理を開始する。
【0090】
以下、ブロードキャストフレーム応答処理についての説明を行う。まず、ブロードキャスト用応答処理の概要(存在理由)を説明する。
上述したように、本スイッチングハブ10内のスイッチ部は、フレームを供給すべきポートが判らない場合、目的端末が存在する可能性のある各ポートに、宛先LAN番号としてブロードキャスト番号“オール1”を設定したフレームを供給する。
【0091】
ここで、宛先LAN番号としてブロードキャスト番号“オール1”が設定されたフレームを受信したとき、“オール0”時と同様の処理が実行されるように、スイッチングハブが構成されていたものとし、そのようなスイッチングハブによって、図16に示したような、メッシュ状(複数のルートが利用可能な2端末が存在する形状)のネットワークが形成された場合を考える。
【0092】
この場合、LAN1に属する端末がLAN4に属する端末へのフレームを送出したとき、図中、矢印で示したあるように、LAN1から、LAN3とLAN4に対して、それぞれ、同じ内容のフレームが送出される。そして、LAN1からのフレームを受信したLAN3から、LAN2とLAN4に対して、同じ内容のフレームが送出される。同様に、LAN2から、LAN3とLAN4に対してのフレーム送出も行われるので、LAN4には、4つのフレームが到達してしまう。
【0093】
ブロードキャストフレーム応答処理は、このような現象の発生を防止するために設けられている処理であり、この処理時、スイッチ部は、図17、18に示した流れ図に従って動作する。
【0094】
図17に示したように、スイッチ部は、まず、世代情報テーブルからの、送信元アドレス(ステップS301で取得している)に対応づけられている世代情報の読み出しを試みる(ステップS401)。なお、世代情報テーブルは、受信されたブロードキャストフレームに含まれる、送信元アドレスと、世代情報フィールドに設定された情報(ステップS331で設定される乱数)との対応関係を記憶するためのテーブルであり、ブロードキャストフレーム応答処理が一度も実行されていないスイッチングハブ内の世代情報テーブルは、何ら情報を記憶していないテーブルとなっている。
【0095】
世代情報テーブルに、送信元アドレスに関するデータが記憶されていなかった場合(ステップS402;N)、スイッチ部は、世代情報テーブルに、処理対象となっているフレームに設定されている、送信元アドレスと世代情報(乱数)の組み合わせを登録する(ステップS403)。そして、そのフレームを供給するポートを特定するための処理(図18;詳細は後述)を開始する。
【0096】
一方、世代情報テーブルから、処理対象となっているフレーム内の送信元アドレスに対応づけられた世代情報を読み出せた場合(ステップS402;Y)、その世代情報が、フレーム内に設定されていた世代情報と一致しているか否かを判断する(ステップS404)。そして、両世代情報が同じものであった場合(ステップS404;Y)、スイッチ部は、フレームを破棄(ステップS405)して、処理を終了する。また、両者が同じではなかった場合(ステップS404;N)、世代情報テーブル内に、フレーム内の送信元アドレスに対応づけて記憶されている世代情報を、フレーム内に設定されている世代情報で書き換える(ステップS406)。そして、図18に示した処理を開始する。
【0097】
すなわち、スイッチ部は、ブロードキャスト番号が設定されたフレームを供給するポートを特定するために、まず、フレーム内の宛先アドレスを用いてアドレステーブルを検索する(ステップS410)。ポート番号がアドレステーブルから検索できた場合(ステップS411;Y)、スイッチ部は、処理対象フレームの送信元LANが他LANであった場合には、既に説明したLANテーブル学習処理(ステップS415)を行い、そのポート番号によって識別されるポートにフレームをスイッチング(ステップS415)し、処理を終了する。
【0098】
アドレステーブルからのポート番号の検索に失敗した場合(ステップS411;N)、スイッチ部は、宛先アドレスを用いてLANテーブルを検索することによって、当該宛先アドレスに対応づけられたLAN番号並びにポート番号の読み出しを試みる(ステップS412)。そして、スイッチ部は、ポート番号およびLAN番号の検索に成功した場合(ステップS413;Y)には、宛先LAN番号フィールドに、検索したLAN番号を設定(ステップS414)する。次いで、処理対象フレームの送信元LANが他LANであった場合には、LANテーブルの更新(ステップS415)を行う。ステップS414の実行後にステップS415が実行される場合、処理対象フレームは自LANに対するものではないので(LANテーブルには、自LAN番号が記憶されていない)、処理対象フレームの送信元が他LANであった場合、送信元LAN番号と入力ポート番号の組み合わせがLANテーブルに登録される。
【0099】
その後、スイッチ部は、テーブル(この場合、LANテーブル)検索によって特定したポートに、フレームを供給(ステップS415)し、処理を終了する。また、LANテーブルからのポート番号の検索に失敗した場合(ステップS413;N)、スイッチ部は、LANテーブル学習処理(ステップS420)を行い、目的端末を収容している可能性があるポート群にフレームをブロードキャスト(ステップS421)して、処理を終了する。
【0100】
スイッチングハブ10内のスイッチ部11は、ブロードキャスト番号が設定されたVLANタグ付きフレームを受信した際、このように動作する。このため、実施形態のスイッチングハブ10を組み合わせて、メッシュ状のネットワークを形成した場合、余分なフレームがLAN間でやり取りされることなく、また、1つのフレームだけが目的端末に到達する。
【0101】
例えば、4つのスイッチングハブ10を用いて、図19に示したような形状(図16と同じ形状)のネットワークが構築されており、LAN1に属する端末Zから、LAN4に属する端末Wへのフレームが初めて送出された場合、LAN1のスイッチングハブ(スイッチ部)は、LAN2とLAN3のスイッチングハブに対して、それぞれ、ブロードキャスト番号と世代情報(乱数)が設定された、同じ内容のタグ付きフレームを送出する。
【0102】
そして、LAN1のスイッチングハブからのフレームを受信したLAN2のスイッチングハブは、そのフレーム内にブロードキャスト番号が設定されていることから、ブロードキャストフレーム応答処理を開始し、ステップS403、S410〜S416を実行する。すなわち、スイッチングハブは、世代情報テーブルに、当該フレーム内の送信元アドレス“Z”と世代情報(乱数)とを記憶する。次いで、LAN3とLAN4のスイッチングハブに、同じ内容のフレームを送出する。
【0103】
また、LAN3のスイッチングハブでも、LAN1からのフレームに対して同様の処理が行われ、その結果、LAN2とLAN4のスイッチングハブに対して、同じ内容のフレームが送出される。このため、LAN2内のスイッチングハブは、LAN3からも、同じ内容のフレームを受信する。
【0104】
LAN3からのフレームを受信した際、LAN2のスイッチングハブ(スイッチ部)は、ブロードキャスト番号が設定されていることため、再び、ブロードキャストフレーム応答処理を開始する。そして、スイッチングハブは、そのフレーム内の送信元アドレスと世代情報の組み合わせが、世代情報テーブルに記憶されていることを見いだす(ステップS402;Y、S404;Y)。このため、スイッチングハブは、LAN3からのフレームを廃棄する(図19中、×で表記)。
【0105】
LAN3のスイッチングハブも、同様に、LAN2からのフレームを破棄する。その結果、LAN4のスイッチングハブは、LAN2からの1個のフレームとLAN4からの1個のフレームだけを受信する。そして、LAN4のスイッチングハブも、過去に受信したフレームと、送信元アドレス及び世代情報が一致しているフレームを受信した場合、そのフレームを廃棄するので、結局、端末Wには、端末Zから端末Wに至る複数のルートの中で、最も短い時間でフレームが到達可能なルートを通ったフレームだけが到達することになる。そして、その後の、発端末と着端末とのフレームのやり取りは、最初に、発端末から着端末へのフレームが到達した、そのルートを用いて行われることになる。
【0106】
また、上述した処理手順は、輻輳時のルート変更にも対応できるものとなっている。例えば、図19に示したネットワークにおいて、LAN1−LAN2−LAN4といったルートが設定されているときに、LAN2のスイッチングハブのLAN1側のポートでバッファオーバフローが発生した場合を考える。この場合、既に説明したように、LAN2のスイッチングハブ(ポート)において、あるフレームが破棄され、LAN2のスイッチングハブからLAN1のスイッチングハブに対して、破棄したフレームの送信元アドレスが宛先アドレスとして設定された、破棄されたフレームの送信先アドレスを輻輳発生宛先アドレスデータとして保持したコリジョン信号フレームが送出される。また、コリジョン信号フレームを受信したLAN1のスイッチングハブ(スイッチ部)は、LANテーブルから、コリジョン信号フレーム内に設定されている輻輳発生宛先アドレスデータで示されたMACアドレスに関するデータを削除する。
この結果、破棄されたフレームの送出元である端末が、同一の端末に対する(同一の宛先アドレスが設定された)フレームを送出した場合、LAN1内のスイッチングハブは、図11のステップS305において、ポート番号を検索できなくなり、ステップS310以降の処理を実行することになる。すなわち、図20に模式的に示したように、コリジョン信号フレームの受信後、LAN1のスイッチングハブは、LAN4に対するフレームを次に送出する際、ブロードキャスト番号と世代情報が設定されたVLANタグを有するフレームを、LAN2とLAN3に送出する。
【0107】
また、スイッチ部は、世代情報として乱数を用いているので、そのフレーム内の世代情報は、前回の世代情報とは異なる内容(値)を有する。このため、LAN3のスイッチングハブは、LAN1からのフレームを受信した際には、ステップS404(図17)で“N”側へ分岐する。すなわち、LAN3のスイッチングハブは、そのフレームを破棄することなく、世代情報テーブルの内容を書き換える。次いで、図18に示した処理を実行するので、結局、LAN3のスイッチングハブは、LAN2とLAN4に、受信したフレームをブロードキャストすることになる。LAN2、LAN4のスイッチングハブも同様に動作するため、LAN2からLAN1に対してコリジョン信号が送出された場合、その後、初期ルート設定時と同様の処理が行われ、新たな通信ルート(例えば、LAN1−LAN3−LAN4)が設定されることになる。
【0108】
以下、図21を用いて、ブロードキャストプロトコルをサポートするために設けられているサポート処理の説明を行う。既に説明したように、サポート処理は、宛先アドレスが“オール1”に設定されたVLANタグ付きフレームを受け取ったスイッチ部12によって開始される。
【0109】
図示したように、サポート処理時、スイッチ部は、まず、イーサタイプが、通信相手のMACアドレスを問い合わせるためのプロトコルを示すものであるか否かを判断する(ステップS501)。そして、そのようなプロトコルを示すイーサタイプ(例えば、ARP)であった場合、フレームを受信したポートを除く全ポートに、当該フレームをブロードキャスト(ステップS505)し、処理を終了する。一方、そのようなプロトコルを示すイーサタイプでなかった場合(ステップS501;N)、フレーム内の送信元アドレスに基づき、送信元端末が自LANに属するものであるか否かを判断する(ステップS502)。そして、自LANに属していた場合(ステップS502;Y)には、やはり、入力ポートを除く全ポートに処理対象フレームをブロードキャスト(ステップS505)して、処理を終了する。
【0110】
また、送信元端末が自LANに属する端末ではなかった場合(ステップS502;N)、スイッチ部12は、送信元アドレスを用いてLANテーブルを検索する(ステップS503)。そして、LANテーブル内に送信元アドレスが記憶されていた場合(ステップS504;Y)には、ステップS505に進み、フレームを受信したポートを除く全ポートにフレームをブロードキャストした後、処理を終了する。また、LANテーブル内に送信元アドレスが記憶されていなかった場合(ステップS504;N)には、MACアドレス無しでLANテーブルに、ポート番号が記憶されているポート群にフレームをブロードキャスト(ステップS506)して、処理を終了する。
【0111】
すなわち、スイッチングハブ10(スイッチ部12)は、通常のブロードキャストフレームに対しては、過去に、配下の端末が、そのブロードキャストフレームの送信元端末と通信したことがなかった場合(LANテーブルに、送信元アドレスが記憶されていなかった場合)には、配下の端末にはフレームを送信せずに、ステップS506において、ブロードキャストフレームの送信元端末と通信したことがある他LANに、ブロードキャストフレームを中継するための処理を実行する。
【0112】
換言すれば、通常の(ARP等を除く)ブロードキャストフレームは、そのブロードキャストフレームの送信前に何らかの情報伝達が行われた端末に対して送出されるフレームである。従って、ブロードキャストフレームの送信元端末と通信を行ったことのない端末や、スイッチングハブに対して、ブロードキャストフレームが供給されなくとも何ら問題は生じない。
【0113】
このため、本スイッチングハブでは、ブロードキャストフレームの供給を必要としていない端末やスイッチングハブに接続されたポートへのブロードキャストフレームの供給による不要なトラヒックの増大を防止するために、上位プロトコルのブロードキャストフレームに対して上記処理を採用している。
【0114】
また、スイッチ部12は、初めて通信する端末に対して用いられるプロトコルであるARP等に対しては、LANテーブルの内容に依らず、全ポートにフレームをブロードキャストする。従って、本スイッチングハブ10は、そのようなプロトコルにも、対応できるものとなっている。
【0115】
なお、サポート処理時に、LANテーブル学習処理を行っていないのは、上述したように、通常のブロードキャストフレームの場合、そのブロードキャストフレームの送信前にルートが設定されているからであり、ARP等のブロードキャストフレームの場合、各ブロードキャストフレームの伝送に用いられたルートで、その後、実際に通信が行われるか否かが判らないためである。
【0116】
<変形例>
実施形態のスイッチングハブは、ネットワークを構築したときに、着端末に到達するまでの各スイッチングハブにおいて、発端末を収容したスイッチングハブ内のサービスクラステーブルで規定される条件で、フレームのバッファリング制御(すなわち、通信品質制御)が行われるように構成してあるが、スイッチングハブを、VLANタグの有無に拘わらず、フレームに含まれるイーサタイプからサービスクラスが決定されるよう構成することも出来る。このようにスイッチングハブを構成しても、ネットワークを形成する各スイッチングハブに同じ内容のサービスクラステーブルを設定しておけば、発端末から着端末に至る各スイッチングハブにおいて、同じ通信品質制御が行われることになる。
【0117】
また、1つのLAN内における通信品質制御を行うことのみを目的とする場合などには、実施形態のスイッチングハブから、VRANタグを付加する機能を取り除いたスイッチングハブを用いることが出来る。
【0118】
また、通信品質制御に使用するサービスクラスを、VLANタグ付きフレーム内のサービスクラスと、サービスクラステーブル内のサービスクラスの中から選択できるように、スイッチングハブを構成することも出来る。すなわち、通常の状態では、実施形態のスイッチングハブと同じ動作をし、所定の指示が入力されたとき(所定のデータが内部に設定されたとき)には、VLANタグの有無によらず、フレーム内のイーサタイプに対応づけられたサービスクラスを、サービスクラステーブルから読み出して、その読み出したサービスクラスに応じた通信品質制御を行うようにスイッチングハブ(ポート)を構成することも出来る。
【0119】
さらに、世代情報テーブルとして、世代情報とLAN番号との対応関係を記憶するテーブルを用いるとともに、世代情報が関係する処理(ブロードキャストフレーム応答処理、コリジョン信号フレームに対する処理)が、宛先アドレスではなく、宛先LAN番号単位で行われるようにスイッチングハブを構成することも出来る。
【0120】
【発明の効果】
本発明の第1のスイッチングハブを用いれば、通信品質制御が行えるネットワークを構築できる。
【0121】
また、本発明の第2のスイッチングハブを用いれば、ルータを用いずにLAN間通信が行えるネットワークが形成できるので、高速なLAN間通信が実現できることになる。
【図面の簡単な説明】
【図1】本発明の一実施形態によるスイッチングハブの概略構成図である。
【図2】実施形態のスイッチングハブが備えるポートの概略構成図である。
【図3】実施形態のスイッチングハブが対象とするフレーム(DIX仕様)の説明図である。
【図4】実施形態のスイッチングハブが対象とするフレーム(IEEE802.3仕様)の説明図である。
【図5】実施形態のスイッチングハブ間で交換されるVLANタグ付きフレームの説明図である。
【図6】実施形態のスイッチングハブが備えるポートの、フレーム受信時の動作手順を示した流れ図である。
【図7】実施形態のスイッチングハブが備えるアドレステーブルの説明図である。
【図8】実施形態のスイッチングハブが備えるサービスクラステーブルの説明図である。
【図9】実施形態のスイッチングハブが備えるポートの、スイッチ部へのフレーム供給時の動作手順を示した流れ図である。
【図10】実施形態のスイッチングハブを組み合わして形成されたネットワークにおける、フレームの交換手順を示した説明図である。
【図11】実施形態のスイッチングハブが備える、スイッチ部の全体的な動作手順を示した流れ図である。
【図12】実施形態のスイッチングハブが備える、LANテーブルの説明図である。
【図13】実施形態のスイッチングハブを用いて構成されるネットワークの一例を示した図である。
【図14】図13に示したスイッチングハブSH4内の、端末Aからのフレームの、SH2への送出後のLANテーブルの説明図である。
【図15】図13に示したネットワークにおけるスイッチングハブSH2内の、端末Aからのフレームの、端末Fへの送出後のLANテーブルの説明図である。
【図16】ブロードキャストフレーム応答処理の目的を説明するための図である。
【図17】ブロードキャストフレーム応答処理時のスイッチ部の動作手順を示す流れ図(その1)である。
【図18】ブロードキャストフレーム応答処理時のスイッチ部の動作手順を示す流れ図(その2)である。
【図19】ブロードキャストフレーム応答処理の動作を説明するための図である。
【図20】輻輳発生時における、ブロードキャストフレーム応答処理の動作を説明するための図である。
【図21】上位プロトコルのブロードキャストフレームに対して行われるサポート処理の流れ図である。
【図22】従来のスイッチングハブの問題点を説明するための模式図である。
【図23】従来のスイッチングハブを用いて構成されるネットワークの説明図である。
【符号の説明】
10 スイッチングハブ
11 ポート
12 スイッチ部
13 記憶部
21 フレーム送受信部
22 受信フレーム検査部
23 バッファ
24 バッファ制御部
25 送信フレーム検査部
Claims (12)
- 複数の入出力ポートと、
これら複数の入出力ポートと接続され、各入出力ポートから供給されるフレームを、そのフレームに含まれる情報に基づきスイッチングするスイッチ部と、
LANの識別情報であるLAN番号と、入出力ポートの識別情報であるポート番号と、端末の識別情報であるMACアドレスの組み合わせを記憶するためのLANテーブルと、
ユニークなLAN番号である自LAN番号を保持する保持部とを備え、
前記複数の入出力ポートは、それぞれ、
フレームを送受信する送受信部と、
この送受信部によって受信されたフレームを一時的に記憶するためのバッファメモリと、
前記送受信部が端末に直接接続されているか否かを認識する認識部と、
前記送受信部がフレームを受信したときに、前記認識部によって送受信部が端末に直接接続されていることが認識されていた場合には、宛先LAN番号フィールドと送信元LAN番号フィールドを含み、宛先LAN番号フィールドに、宛先端末が属するLANのLAN番号が不明であることを示す所定情報が設定され、送信元LAN番号フィールドに、前記保持部に保持された自LAN番号が設定されたタグフィールドを付加したフレームを生成、出力し、前記認識部によって送受信部が端末に直接接続されていないことが認識されていた場合には、受信されたフレームをそのまま出力する受信フレーム調整部と、
この受信フレーム調整部が出力するフレームを、前記バッファメモリに格納し、前記スイッチ部によって選択されたときに、前記スイッチ部に対して、前記バッファメモリに格納したフレームの中から、最も過去に前記受信フレーム調整部が出力したフレームを供給するバッファ制御部と、
前記スイッチ部からフレームが供給されたときに、前記認識部によって送受信部が端末に直接接続されていることが認識されていた場合には、供給されたフレームからタグフィールドを取り除いたフレームを生成して前記送受信部に供給し、前記認識部によって送受信部が端末に直接接続されていないことが認識されていた場合には、前記スイッチ部から供給されたフレームをそのまま前記送受信部に供給する送信フレーム調整部とを有し、
前記スイッチ部は、
処理対象とする入出力ポートを、前記複数の入出力ポートの中から、巡回的に選択する選択部と、
この選択部によって選択された入出力ポートから供給されるフレームである対象フレーム内に設定されている宛先MACアドレスに対応するポート番号並びにLAN番号の、前記LANテーブルからの読み出しを試みる第1読出試行部と、
この第1読出試行部によってポート番号並びにLAN番号が読み出されたときに、宛先LAN番号フィールドにそのLAN番号を設定した前記対象フレームを、読み出されたそのポート番号によって識別される入出力ポートに供給する第1供給部と、
前記対象フレーム内の宛先LAN番号フィールドに設定されている宛先LAN番号に対応するポート番号の、前記LANテーブルからの読み出しを試みる第2読出試行部と、
この第2読出試行部によってポート番号が読み出されたときに、前記対象フレームを、読み出されたそのポート番号によって識別される入出力ポートに供給する第2供給部と、
前記第1読出試行部または前記第2読出試行部によってポート番号が読み出せなかったときに、前記対象フレームを、その対象フレームを受信すべき端末と接続されている可能性がある全ての入出力ポートにブロードキャストする第3供給部と、
前記第1供給部ないし前記第3供給部によってフレームの供給が行われるときに、前記対象フレーム内の送信元LAN番号フィールドに設定されているLAN番号と、前記選択部によって選択された入出力ポートのポート番号と、対象フレーム内に設定されている送信元MACアドレスの組み合わせを前記LANテーブルに記憶するLANテーブル学習部とを有することを特徴とするスイッチングハブ。 - 前記端末は、データのタイプを表すタイプ情報が設定されるタイプ情報フィールドを有するフレームを送受信する端末であり、タイプ情報とサービスクラスとの対応関係が記憶されたサービスクラステーブルを、さらに、備え、前記受信フレーム調整部は、前記送受信部によって受信されたフレームに含まれるサービスクラスフィールドに、前記サービスクラステーブルにおいて、当該フレーム内のタイプ情報フィールドに設定されたタイプ情報に対応づけられているサービスクラスを設定したタグフィールドを付加し、前記バッファ制御部は、前記バッファメモリに記憶されたフレームの中から、フレーム内に設定されたサービスクラスが所定の条件を満たし、かつ、最も過去に前記受信フレーム調整部が出力したフレームを前記スイッチ部に供給することを特徴とする請求項1記載のスイッチングハブ。
- 前記サービスクラステーブルは、遅延に対する寛容さを示す第1サービスクラスと、廃棄に対する寛容さを示す第2サービスクラスとからなるサービスクラスを記憶し、前記バッファ制御部は、前記スイッチ部によって選択されたときに、前記バッファメモリの使用率が所定値未満である場合には、前記スイッチ部に対して、前記バッファメモリ内の、第1サービスクラスが最も遅延に寛容でないことを示しているフレームの中から、最も過去に前記受信フレーム調整部が出力したフレームを選択して供給し、前記バッファメモリの使用率が前記所定値以上である場合には、前記スイッチ部に対して、前記バッファメモリ内の、第2サービスクラスが最も廃棄に寛容でないことを示しているフレームのなかから、最も過去に前記受信フレーム調整部が出力したフレームを選択して供給することを特徴とする請求項2記載のスイッチングハブ。
- 前記バッファ制御部は、前記バッファメモリの使用率が前記所定値以上である場合には、前記スイッチ部に対して、前記バッファメモリ内の、第2サービスクラスが最も廃棄に寛容でないことを示しているフレームのなかから、第1サービスクラスが最も遅延に寛容でないことを示しているフレームを選択し、選択したフレームの中から、最も過去に前記受信フレーム調整部が出力したフレームを選択して供給することを特徴とする請求項3記載のスイッチングハブ。
- 前記認識部は、前記送受信部によって受信されたフレームに前記タグフィールドが含まれていなかった場合に、前記送受信部が端末に直接接続されていることを認識し、前記送受信部によって受信されたフレームに前記タグフィールドが含まれていた場合に、前記送受信部が端末に直接接続されていないことを認識する請求項1ないし請求項4のいずれかに記載のスイッチングハブ。
- 端末と直接接続されている全ての入出力ポートに関する、ポート番号とMACアドレスの対応関係を記憶するアドレステーブルを、さらに、備え、前記スイッチ部は、前記選択部によって選択された入出力ポートから供給される対象フレーム内に設定されている宛先MACアドレスに対応するポート番号の、前記アドレステーブルからの読み出しを試みる第0読出試行部と、第0読出試行部によってポート番号が読み出されたときに、前記対象フレームを、読み出されたそのポート番号によって識別される入出力ポートに供給する第0供給部とを、さらに、備え、前記スイッチ部に含まれる前記第1読出試行部は、第0読出試行部によってポート番号が読み出されなかったときに機能することを特徴とする請求項1ないし請求項5のいずれかに記載のスイッチングハブ。
- 世代情報とMACアドレスの対応関係が記憶される世代情報テーブルを、さらに、備え、前記受信フレーム調整部は、世代情報フィールドを含むタグフィールドを対象フレームに付加し、前記第3供給部は、前記対象フレームの宛先LAN番号フィールドにブロードキャスト番号が設定されていない場合には、宛先LAN番号フィールドと、世代情報フィールドの内容を、それぞれ、ブロードキャスト番号と、所定手順で決定した世代情報に書き換えた対象フレームをブロードキャストするとともに、決定した世代情報と前記対象フレーム内の送信元MACアドレスの対応関係を前記世代情報テーブルに登録し、前記第0読出試行部は、対象フレーム内の宛先LAN番号フィールドにブロードキャスト番号が設定されていた場合には、その対象フレームに設定されている送信元MACアドレスに対応づけられている世代情報の、前記世代情報テーブルからの読み出しを試み、前記対象フレームの世代情報フィールドに記憶された世代情報である対象世代情報と同じ内容の世代情報が読み出された場合には、前記対象フレームを破棄し、前記対象世代情報と異なる内容の世代情報が読み出された場合、及び、世代情報が読み出されなかった場合には、前記対象フレーム内の送信元MACアドレスに対応する世代情報として前記対象世代情報が記憶されるように、前記世代情報テーブルの内容を更新することを特徴とする請求項6記載のスイッチングハブ。
- 前記第3供給部は、乱数発生アルゴリズムを用いて世代情報を決定することを特徴とする請求項7記載のスイッチングハブ。
- 前記バッファ制御部は、前記受信フレーム調整部が出力したフレームを、前記バッファメモリに格納できない場合、そのフレームとバッファメモリに記憶されているフレームの中から選択した1つのフレームを破棄するとともに、破棄したフレーム内に設定されていた宛先MACアドレスを輻輳発生データとして有し、輻輳が起こったことを前記フレームを送出した端末に通知するためのコリジョンフレームを生成し、生成したコリジョンフレームを前記送受信部に供給し、前記第0読出試行部は、対象フレームがコリジョンフレームであった場合、前記LANテーブルから、そのコリジョンフレーム内の輻輳発生データが示すMACアドレスに関するデータを消去することを特徴とする請求項7または請求項8記載のスイッチングハブ。
- 前記LANテーブル学習部は、前記選択部によって選択された入出力ポートのポート番号が前記アドレステーブルに記憶されておらず、かつ、前記第1供給部ないし前記第3供給部によって対象フレームが供給される入出力ポートのポート番号が前記アドレステーブルに記憶されている場合には、前記LANテーブルに、前記対象フレーム内の送信元LAN番号フィールドに設定されているLAN番号と、前記選択部によって選択された入出力ポートのポート番号と、対象フレーム内に設定されている送信元MACアドレスの組み合わせを前記LANテーブルに記憶し、前記選択部によって選択された入出力ポートのポート番号が前記アドレステーブルに記憶されておらず、かつ、前記第1供給部ないし前記第3供給部によって対象フレームが供給される入出力ポートのポート番号が前記アドレステーブルに記憶されていない場合には、前記LANテーブルに、前記対象フレーム内の送信元LAN番号フィールドに設定されているLAN番号と、前記選択部によって選択された入出力ポートのポート番号の組み合わせを前記LANテーブルに記憶することを特徴とする請求項6ないし請求項9のいずれかに記載のスイッチングハブ。
- 前記第0読出試行部は、前記対象フレーム内に設定されている宛先MACアドレスがブロードキャストフレームであることを示す情報であった場合、その宛先MACアドレスと、前記LANテーブルに記憶されている情報に基づき、前記対象フレームの送出元端末と通信を行った可能性がある入出力ポートを特定し、特定した入出力ポートに前記対象フレームをブロードキャストすることを特徴とする請求項10記載のスイッチングハブ。
- 前記第0読出試行部は、前記対象フレーム内に設定されている宛先MACアドレスがブロードキャストフレームであることを示す情報であり、かつ、前記対象フレーム内に設定されているタイプ情報が、MACアドレスを問い合わせるプロトコルであることを示すものであった場合、LANテーブルの内容に依らず、前記複数の入出力ポートに前記対象フレームをブロードキャストすることを特徴とする請求項11記載のスイッチングハブ。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06502897A JP3545570B2 (ja) | 1997-03-18 | 1997-03-18 | スイッチングハブ |
US08/921,872 US5910955A (en) | 1997-03-18 | 1997-08-25 | Switching hub capable of controlling communication quality in LAN |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06502897A JP3545570B2 (ja) | 1997-03-18 | 1997-03-18 | スイッチングハブ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10262075A JPH10262075A (ja) | 1998-09-29 |
JP3545570B2 true JP3545570B2 (ja) | 2004-07-21 |
Family
ID=13275121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06502897A Expired - Fee Related JP3545570B2 (ja) | 1997-03-18 | 1997-03-18 | スイッチングハブ |
Country Status (2)
Country | Link |
---|---|
US (1) | US5910955A (ja) |
JP (1) | JP3545570B2 (ja) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5815681A (en) * | 1996-05-21 | 1998-09-29 | Elonex Plc Ltd. | Integrated network switching hub and bus structure |
US6356551B1 (en) * | 1997-02-14 | 2002-03-12 | Advanced Micro Devices, Inc. | Method and network switch having dual forwarding models with a virtual lan overlay |
US6094708A (en) | 1997-05-06 | 2000-07-25 | Cisco Technology, Inc. | Secondary cache write-through blocking mechanism |
US6147993A (en) | 1997-10-14 | 2000-11-14 | Cisco Technology, Inc. | Method and apparatus for implementing forwarding decision shortcuts at a network switch |
TW358911B (en) * | 1998-01-23 | 1999-05-21 | Accton Technology Corp | Data package sorting transmission method |
JP3302918B2 (ja) * | 1998-02-10 | 2002-07-15 | 日本電気株式会社 | バーチャルlan構成情報の自動設定システム及びバーチャルlan構成情報の自動設定方法 |
US6266336B1 (en) * | 1998-02-18 | 2001-07-24 | International Business Machines Corporation | Apparatus and method for setting A/C bits in token ring frames for switches |
US6208649B1 (en) | 1998-03-11 | 2001-03-27 | Cisco Technology, Inc. | Derived VLAN mapping technique |
US6115385A (en) * | 1998-03-11 | 2000-09-05 | Cisco Technology, Inc. | Method and system for subnetting in a switched IP network |
US6175867B1 (en) * | 1998-03-23 | 2001-01-16 | Mci World Com, Inc. | System and method for managing networks addressed via common network addresses |
US6330236B1 (en) * | 1998-06-11 | 2001-12-11 | Synchrodyne Networks, Inc. | Packet switching method with time-based routing |
US6735773B1 (en) | 1998-06-27 | 2004-05-11 | Intel Corporation | Method and apparatus for issuing commands to a network processor configured to provide a plurality of APIs |
US6728249B2 (en) | 1998-06-27 | 2004-04-27 | Intel Corporation | System and method for performing cut-through forwarding in an ATM network supporting LAN emulation |
US6604136B1 (en) | 1998-06-27 | 2003-08-05 | Intel Corporation | Application programming interfaces and methods enabling a host to interface with a network processor |
US6603768B1 (en) | 1998-06-27 | 2003-08-05 | Intel Corporation | Multi-protocol conversion assistance method and system for a network accelerator |
US6724767B1 (en) * | 1998-06-27 | 2004-04-20 | Intel Corporation | Two-dimensional queuing/de-queuing methods and systems for implementing the same |
US6657959B1 (en) | 1998-06-27 | 2003-12-02 | Intel Corporation | Systems and methods for implementing ABR with guaranteed MCR |
US6785274B2 (en) | 1998-10-07 | 2004-08-31 | Cisco Technology, Inc. | Efficient network multicast switching apparatus and methods |
US6553028B1 (en) | 1999-04-30 | 2003-04-22 | Cisco Technology, Inc. | Method and apparatus for multicast switching using a centralized switching engine |
US6839348B2 (en) | 1999-04-30 | 2005-01-04 | Cisco Technology, Inc. | System and method for distributing multicasts in virtual local area networks |
EP1247375B1 (en) * | 2000-01-10 | 2008-03-12 | BRITISH TELECOMMUNICATIONS public limited company | Communications network |
JP2001203739A (ja) * | 2000-01-18 | 2001-07-27 | Fujitsu Ltd | 通信経路制御方法及びその装置 |
US7016351B1 (en) | 2000-02-29 | 2006-03-21 | Cisco Technology, Inc. | Small group multicast in a computer network |
US7065079B1 (en) | 2000-05-04 | 2006-06-20 | Cisco Technology, Inc. | VC sharing for multicast in a computer network |
US6914905B1 (en) | 2000-06-16 | 2005-07-05 | Extreme Networks, Inc. | Method and system for VLAN aggregation |
JP3407717B2 (ja) * | 2000-06-20 | 2003-05-19 | 日本電気株式会社 | Lan通信路制御システム及び制御方法 |
US6912592B2 (en) * | 2001-01-05 | 2005-06-28 | Extreme Networks, Inc. | Method and system of aggregate multiple VLANs in a metropolitan area network |
US6618388B2 (en) | 2001-01-05 | 2003-09-09 | Extreme Networks | Method and system for VMAN protocol |
US20030206518A1 (en) * | 2001-05-25 | 2003-11-06 | Yik James Ching-Shau | Public access separation in a virtual networking environment |
US20040179527A1 (en) * | 2003-03-10 | 2004-09-16 | Cypher Robert E. | Stripping packet routing prefixes in a computer system network |
US7453806B2 (en) * | 2003-06-26 | 2008-11-18 | International Business Machines Corporation | Dynamic data packet flow control for packet switching node |
US7457245B2 (en) * | 2004-09-07 | 2008-11-25 | Intel Corporation | Directional and priority based flow control mechanism between nodes |
US7733770B2 (en) * | 2004-11-15 | 2010-06-08 | Intel Corporation | Congestion control in a network |
JP2007266850A (ja) * | 2006-03-28 | 2007-10-11 | Fujitsu Ltd | 伝送装置 |
US20070230369A1 (en) * | 2006-03-31 | 2007-10-04 | Mcalpine Gary L | Route selection in a network |
JP5249682B2 (ja) | 2008-08-28 | 2013-07-31 | 株式会社東芝 | 保護継電装置用通過時間固定装置 |
US9755899B2 (en) * | 2009-05-14 | 2017-09-05 | Avaya Inc. | Generation and usage of mobility VLAN ID version value |
JPWO2016068316A1 (ja) | 2014-10-31 | 2017-08-10 | 日本電気株式会社 | 無線基地局、パケット送信装置、無線端末、制御方法、及びプログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6163137A (ja) * | 1984-09-05 | 1986-04-01 | Oki Electric Ind Co Ltd | ロ−カルエリアネットワ−クの相互接続方式 |
JPS6194495A (ja) * | 1984-10-15 | 1986-05-13 | Nec Corp | ロ−カルエリアネツトワ−ク制御方式 |
JPH03270532A (ja) * | 1990-03-20 | 1991-12-02 | Fujitsu Ltd | フィルタリング制御方式 |
JPH0556063A (ja) * | 1991-06-21 | 1993-03-05 | Hitachi Ltd | スイツチングシステム |
JPH05199241A (ja) * | 1992-01-21 | 1993-08-06 | Matsushita Electric Ind Co Ltd | Lan間相互接続装置 |
JPH0795231A (ja) * | 1993-07-29 | 1995-04-07 | Toshiba Corp | Lan間接続装置 |
US5633865A (en) * | 1995-03-31 | 1997-05-27 | Netvantage | Apparatus for selectively transferring data packets between local area networks |
-
1997
- 1997-03-18 JP JP06502897A patent/JP3545570B2/ja not_active Expired - Fee Related
- 1997-08-25 US US08/921,872 patent/US5910955A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5910955A (en) | 1999-06-08 |
JPH10262075A (ja) | 1998-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3545570B2 (ja) | スイッチングハブ | |
US8879569B2 (en) | Virtual network connection method, network system, and network device | |
JP4094658B2 (ja) | フラッディング抑制方法 | |
WO2021169258A1 (zh) | 转发报文的方法、发布路由信息的方法、装置及系统 | |
US9584568B2 (en) | Signal processing apparatus and signal processing method thereof for implementing a broadcast or a multicast communication | |
US9923812B2 (en) | Triple-tier anycast addressing | |
CA3080526C (en) | Ip mpls pop virtualization and fault tolerant virtual router | |
US6262976B1 (en) | System and method for network flow optimization using traffic classes | |
JP4369351B2 (ja) | パケット転送装置 | |
US7881279B2 (en) | Telecommunications network and a packet header using local node identifier information to designate routing information | |
US7876756B2 (en) | Packet transmitting method, relay node and receiving node | |
US8081611B2 (en) | Mobility label-based networks | |
WO2018032962A1 (zh) | 一种信息同步的方法,装置及系统 | |
JP2002314571A (ja) | スイッチングノードのための分類およびタグ付け規則 | |
US20040246981A1 (en) | System and method of accessing and transmitting different data frames in a digital transmission network | |
KR20030085016A (ko) | 확장 근거리 통신망에서 사용하기 위한 우선순위 기반부하 분산 방법 및 장치 | |
JP6098192B2 (ja) | アドレス生成装置 | |
US6438133B1 (en) | Load balancing mechanism for a translational bridge environment | |
US20220200820A1 (en) | Packet Sending Method and Apparatus | |
US20230081052A1 (en) | Method and apparatus for sending multicast packet | |
US7333509B1 (en) | Cell relay using the internet protocol | |
JP2022074129A (ja) | BIERv6パケットを送信するための方法および第1のネットワークデバイス | |
JP5657505B2 (ja) | ネットワークシステム、中継装置、通信方法、中継方法及び中継プログラム | |
JP5018490B2 (ja) | 中継装置 | |
JPH11191790A (ja) | 通信データ処理方法及びそのネットワーク間接続装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20031224 |
|
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: 20040331 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040408 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080416 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100416 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |