JPH11145990A - イーサネット(登録商標)互換ネットワークのトランク化 - Google Patents
イーサネット(登録商標)互換ネットワークのトランク化Info
- Publication number
- JPH11145990A JPH11145990A JP10184666A JP18466698A JPH11145990A JP H11145990 A JPH11145990 A JP H11145990A JP 10184666 A JP10184666 A JP 10184666A JP 18466698 A JP18466698 A JP 18466698A JP H11145990 A JPH11145990 A JP H11145990A
- Authority
- JP
- Japan
- Prior art keywords
- network
- layer
- trunk
- physical
- link
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
Abstract
(57)【要約】
【課題】 物理リンクを通って通信する際に、過剰なト
ラフィックを生じさせずに、かつシステムを輻湊させず
に行えるようにした。 【解決手段】 複数の物理リンクを単一の論理チャネル
・トランクに論理的に組み合せて、各リンクによって搬
送されるデータ・フローを平衡させることにより、物理
リンク間のデータ・フローを制御する。トランク内の各
リンクは同一の物理層および同一のメディア・アクセス
制御層特性を有している。システム・サーバは物理層お
よびネットワーク層に加えて、これらの間に配置された
擬似ドライバ・ソフトウェア層を含んでおり、この擬似
ドライバ・ソフトウェア層は受信路においてマルチプレ
クサとして機能し、送信路においてデマルチプレクサと
して機能する。
ラフィックを生じさせずに、かつシステムを輻湊させず
に行えるようにした。 【解決手段】 複数の物理リンクを単一の論理チャネル
・トランクに論理的に組み合せて、各リンクによって搬
送されるデータ・フローを平衡させることにより、物理
リンク間のデータ・フローを制御する。トランク内の各
リンクは同一の物理層および同一のメディア・アクセス
制御層特性を有している。システム・サーバは物理層お
よびネットワーク層に加えて、これらの間に配置された
擬似ドライバ・ソフトウェア層を含んでおり、この擬似
ドライバ・ソフトウェア層は受信路においてマルチプレ
クサとして機能し、送信路においてデマルチプレクサと
して機能する。
Description
【0001】
【発明の属する技術分野】本発明は総括的にイーサネッ
ト・ネットワークを含むネットワークに関し、詳細にい
えば、トランク化されたイーサネットおよびイーサネッ
ト互換ネットワークに関する。
ト・ネットワークを含むネットワークに関し、詳細にい
えば、トランク化されたイーサネットおよびイーサネッ
ト互換ネットワークに関する。
【0002】
【従来の技術】ネットワークは多数のワークステーショ
ン、コンピュータまたはその他の機器(以下総括的に
「コンピュータ」という)が互いに通信を行うのを可能
とする通信施設である。ネットワークの一部はハードウ
ェアおよびソフトウェア、たとえば、コンピュータまた
はステーション(これらは個別に、1つまたは複数の中
央演算処理装置、ランダム・アクセス・メモリおよび永
続メモリを構成する)、インターフェース構成要素、こ
れらを接続するケーブルまたは光ファイバ、ならびにネ
ットワーク上での情報へのアクセスおよびその流れを管
理するソフトウェアを含んでいる。データ・フローが1
00Mビット/秒(「Mbps」)以上であるネットワ
ークにおいて、伝送媒体はしばしば光ファイバである。
低いデータ伝送率、たとえば10Mbpsが受け入れら
れるネットワークにおいては、伝送媒体は同軸ケーブル
でよいし、またイーサネット・ネットワークの場合で
は、しばしばより線である。
ン、コンピュータまたはその他の機器(以下総括的に
「コンピュータ」という)が互いに通信を行うのを可能
とする通信施設である。ネットワークの一部はハードウ
ェアおよびソフトウェア、たとえば、コンピュータまた
はステーション(これらは個別に、1つまたは複数の中
央演算処理装置、ランダム・アクセス・メモリおよび永
続メモリを構成する)、インターフェース構成要素、こ
れらを接続するケーブルまたは光ファイバ、ならびにネ
ットワーク上での情報へのアクセスおよびその流れを管
理するソフトウェアを含んでいる。データ・フローが1
00Mビット/秒(「Mbps」)以上であるネットワ
ークにおいて、伝送媒体はしばしば光ファイバである。
低いデータ伝送率、たとえば10Mbpsが受け入れら
れるネットワークにおいては、伝送媒体は同軸ケーブル
でよいし、またイーサネット・ネットワークの場合で
は、しばしばより線である。
【0003】ネットワークにおいては、ネットワーク・
アーキテクチャが、コンピュータその他の機器およびソ
フトウェアが遵守しなければならないプロトコル、メッ
セージのフォーマットおよびその他の規格を定義する。
ほとんどのネットワーク・アーキテクチャは、所与の層
が特定のセットの機能の実行ならびに特定のセットのサ
ービスを担う機能層からなるモデルを用いている。それ
故、各層および層間インターフェースが提供するサービ
スはネットワーク・アーキテクチャを定義することがで
きる。プロトコルは層インタフェース全体にわたって対
象となるサービス、およびサービスの一部として実行さ
れる処理の際に順守される規則を定義する。
アーキテクチャが、コンピュータその他の機器およびソ
フトウェアが遵守しなければならないプロトコル、メッ
セージのフォーマットおよびその他の規格を定義する。
ほとんどのネットワーク・アーキテクチャは、所与の層
が特定のセットの機能の実行ならびに特定のセットのサ
ービスを担う機能層からなるモデルを用いている。それ
故、各層および層間インターフェースが提供するサービ
スはネットワーク・アーキテクチャを定義することがで
きる。プロトコルは層インタフェース全体にわたって対
象となるサービス、およびサービスの一部として実行さ
れる処理の際に順守される規則を定義する。
【0004】いくつかの組織がネットワーク・コミュニ
ティ内で受け入れられているモデルと企画を提案してい
る。たとえば、国際標準化機構(「ISO」)はコンピ
ュータ・ネットワーキング用の7層参照モデルを提案し
ており、これは開放型システム間相互接続(「OS
I」)アーキテクチャと呼ばれている。規格の他のセッ
トが、IEEEプロジェクト802として知られている
米国電気電子技術者協会(「IEEE」)が提案してい
るローカル・エリア・ネットワーク(「LAN」)規格
のセットによって公表されている。このモデルは7層の
OSIモデルに適合しているが、ただし直接適合してい
るのはOSIの最も下の2層、すなわち物理層とデータ
・リンク層だけである。
ティ内で受け入れられているモデルと企画を提案してい
る。たとえば、国際標準化機構(「ISO」)はコンピ
ュータ・ネットワーキング用の7層参照モデルを提案し
ており、これは開放型システム間相互接続(「OS
I」)アーキテクチャと呼ばれている。規格の他のセッ
トが、IEEEプロジェクト802として知られている
米国電気電子技術者協会(「IEEE」)が提案してい
るローカル・エリア・ネットワーク(「LAN」)規格
のセットによって公表されている。このモデルは7層の
OSIモデルに適合しているが、ただし直接適合してい
るのはOSIの最も下の2層、すなわち物理層とデータ
・リンク層だけである。
【0005】図1AはISOの7層モデルに対するIE
EEプロジェクト802の改変形によるネットワークを
示しており、数台のコンピュータ10、10’、10”
は、データ伝送機器ユニット(「DTE」)120,1
20’、120”を介して物理リンク媒体20、たとえ
ばケーブルによってデータを互いに通信できる。DTE
のいずれか、あるいは全部は交換機、ルータ、他のコン
ピュータ・システムなどでよい。実際には、ネットワー
クは数百台あるいは数千台のコンピュータを含んでいる
ことがある。図1Aにおいて、コンピュータ10”(ま
たは、同等物)には同様な7層のISOモデルが関連付
けられていることを理解されたい。
EEプロジェクト802の改変形によるネットワークを
示しており、数台のコンピュータ10、10’、10”
は、データ伝送機器ユニット(「DTE」)120,1
20’、120”を介して物理リンク媒体20、たとえ
ばケーブルによってデータを互いに通信できる。DTE
のいずれか、あるいは全部は交換機、ルータ、他のコン
ピュータ・システムなどでよい。実際には、ネットワー
クは数百台あるいは数千台のコンピュータを含んでいる
ことがある。図1Aにおいて、コンピュータ10”(ま
たは、同等物)には同様な7層のISOモデルが関連付
けられていることを理解されたい。
【0006】ISOおよびプロジェクト802モデルに
おける最も下の第1層ないし「L1」層30は、物理伝
送媒体(たとえば、ケーブル20)でのビット・ストリ
ームの伝送を可能とする2台の機械(たとえば、コンピ
ュータ10,10’)の間の接続に関する物理層であ
る。それ故、物理層30はケーブリング、ケーブル・プ
ラグ、ポート・コネクタなどのタイプに関するものであ
る。サーバが最大50の物理ポート接続を有しているこ
とがしばしばあるが、Sun Microsystem
s,Inc.Enterpriseモデル10000サ
ーバなどの最新の装置では各々が100Mビット/秒の
フローレートを有している100物理リンクを受理でき
る。
おける最も下の第1層ないし「L1」層30は、物理伝
送媒体(たとえば、ケーブル20)でのビット・ストリ
ームの伝送を可能とする2台の機械(たとえば、コンピ
ュータ10,10’)の間の接続に関する物理層であ
る。それ故、物理層30はケーブリング、ケーブル・プ
ラグ、ポート・コネクタなどのタイプに関するものであ
る。サーバが最大50の物理ポート接続を有しているこ
とがしばしばあるが、Sun Microsystem
s,Inc.Enterpriseモデル10000サ
ーバなどの最新の装置では各々が100Mビット/秒の
フローレートを有している100物理リンクを受理でき
る。
【0007】多くのイーサネット・ネットワークは搬送
波感知多重アクセス/衝突検出(「CSMA/CD」)
規格に準拠している。CSMA/CDの802モデルに
おいて、メディア独立インタフェース(「MII」)規
格によって定義されたリコンシリエーション・インタフ
ェース40が、物理層30とメディア・アクセス制御
(「MAC」)サブレイヤー50Bの間のリコンシリエ
ーション・サブレイヤー40のインタフェース用として
存在している。
波感知多重アクセス/衝突検出(「CSMA/CD」)
規格に準拠している。CSMA/CDの802モデルに
おいて、メディア独立インタフェース(「MII」)規
格によって定義されたリコンシリエーション・インタフ
ェース40が、物理層30とメディア・アクセス制御
(「MAC」)サブレイヤー50Bの間のリコンシリエ
ーション・サブレイヤー40のインタフェース用として
存在している。
【0008】MIIの下で、データと区切り文字は対応
するクロックと同期しており、2つの非同期媒体状況信
号、すなわち搬送波感知(「CRS」)信号および衝突
(「COL」)信号が与えられる。MIIは制御および
状況収集のための2線シリアル管理インタフェース、す
なわち管理データ・クロック(「MDC」)および管理
データ入出力(「MDIO」)を備えている。OSI7
層モデルにおいて、物理層の上の層はデータ・リンク層
で、これはネットワーク・ノード間でのデータ・フレー
ムのエラーのない伝送を担う。データ・リンク制御プロ
トコルはこの層の動作およびインタフェースを記述して
おり、これもモデル内の高位の層を物理伝送媒体に関す
る問題から遮断しなければならない。
するクロックと同期しており、2つの非同期媒体状況信
号、すなわち搬送波感知(「CRS」)信号および衝突
(「COL」)信号が与えられる。MIIは制御および
状況収集のための2線シリアル管理インタフェース、す
なわち管理データ・クロック(「MDC」)および管理
データ入出力(「MDIO」)を備えている。OSI7
層モデルにおいて、物理層の上の層はデータ・リンク層
で、これはネットワーク・ノード間でのデータ・フレー
ムのエラーのない伝送を担う。データ・リンク制御プロ
トコルはこの層の動作およびインタフェースを記述して
おり、これもモデル内の高位の層を物理伝送媒体に関す
る問題から遮断しなければならない。
【0009】図1Aに示した802モデルにおいて、デ
ータ・リンク層はさらにMAC層50Bおよびこれに重
なる論理リンク制御(「LLC」)層50Aとに分けら
れ、これらをまとめて第2層ないしL2層と呼ぶ。メデ
ィア・アクセス制御サブレイヤー50Bは物理伝送媒体
の使用を制御する方法を決定するアクセス制御方法に関
する。LLCサブレイヤー50Aは媒体独立データ・リ
ンク機能を担っており、ネットワーク(ないし、上記の
インターネット・プロトコル「IP」)層60が、ネッ
トワークの実施方法とは無関係にLANサービスにアク
セスすることを可能とする。ネットワークないしIP層
60は層3ないしL3と呼ばれることがしばしばある。
802アーキテクチャによれば、LLCサブレイヤー5
0Aは広域ネットワークにおける従来のデータ・リンク
・プロトコルと同じ態様で、ネットワーク60へのサー
ビスを提供する。
ータ・リンク層はさらにMAC層50Bおよびこれに重
なる論理リンク制御(「LLC」)層50Aとに分けら
れ、これらをまとめて第2層ないしL2層と呼ぶ。メデ
ィア・アクセス制御サブレイヤー50Bは物理伝送媒体
の使用を制御する方法を決定するアクセス制御方法に関
する。LLCサブレイヤー50Aは媒体独立データ・リ
ンク機能を担っており、ネットワーク(ないし、上記の
インターネット・プロトコル「IP」)層60が、ネッ
トワークの実施方法とは無関係にLANサービスにアク
セスすることを可能とする。ネットワークないしIP層
60は層3ないしL3と呼ばれることがしばしばある。
802アーキテクチャによれば、LLCサブレイヤー5
0Aは広域ネットワークにおける従来のデータ・リンク
・プロトコルと同じ態様で、ネットワーク60へのサー
ビスを提供する。
【0010】MACサブレイヤー50Bはこれに重なっ
ているLLCサブレイヤー50Aへのサービスを提供
し、ネットワーク上のさまざまなステーションの間での
伝送の共用を管理する。メディア・アクセス管理機能は
必要な制御機能が追加された後、データカプセル化機能
からフレームを受け取る。その後、メディア・アクセス
管理はデータの物理伝送を確保する。イーサネット全2
重方式環境におけるデータ・フレームの最大サイズは1
518バイトである。
ているLLCサブレイヤー50Aへのサービスを提供
し、ネットワーク上のさまざまなステーションの間での
伝送の共用を管理する。メディア・アクセス管理機能は
必要な制御機能が追加された後、データカプセル化機能
からフレームを受け取る。その後、メディア・アクセス
管理はデータの物理伝送を確保する。イーサネット全2
重方式環境におけるデータ・フレームの最大サイズは1
518バイトである。
【0011】MACサブレイヤー50Bにはいわゆる搬
送波感知多重アクセス/衝突検出(「CSMA/C
D」)規格を含む数種類の802規格が存在しており、
802.3MAC規格は半2重方式環境でフロー制御機
構を提供する。このような環境において、CSMA/C
DはMACサブレイヤー50B自体によって実行される
データ・カプセル化/カプセル化解除機能およびメディ
ア・アクセス管理機能、下の物理層30によって実行さ
れるデータ符号化/復号化機能を定義する。しかしなが
ら、本明細書で以下で説明するように、本発明はトラン
クの各セグメントに対して、物理層30およびメディア
・アクセス制御層50Bにおいて全2重方式動作を想定
している。
送波感知多重アクセス/衝突検出(「CSMA/C
D」)規格を含む数種類の802規格が存在しており、
802.3MAC規格は半2重方式環境でフロー制御機
構を提供する。このような環境において、CSMA/C
DはMACサブレイヤー50B自体によって実行される
データ・カプセル化/カプセル化解除機能およびメディ
ア・アクセス管理機能、下の物理層30によって実行さ
れるデータ符号化/復号化機能を定義する。しかしなが
ら、本明細書で以下で説明するように、本発明はトラン
クの各セグメントに対して、物理層30およびメディア
・アクセス制御層50Bにおいて全2重方式動作を想定
している。
【0012】データの物理伝送は搬送波(キャリア)感
知を使用して、ネットワークがクリアになるまで伝送を
遅らせることによって確保される。簡単に言えば、送信
ステーション(たとえば、コンピュータまたはユーザ1
0)は伝送媒体(たとえば、ケーブル20)を伝送前に
聴取ないし監視して、他のステーション(たとえば、コ
ンピュータまたはユーザ10’)が現在メッセージを伝
送しているかどうかを判定する。すなわち、媒体が空い
ているかどうかを判定する。L1物理層30のサービス
を使用して、メディア・アクセス管理は伝送媒体(すな
わち、搬送波)が現在使用されているかどうかを判定す
る。媒体が使用されていない場合には、メディア・アク
セス管理はデータ・フレームをL1物理層30に渡し、
伝送する。フレームの伝送が開始された後でも、メディ
ア・アクセス管理は搬送波の監視を継続する。搬送波が
使用中である場合、メディア・アクセス管理は他のステ
ーションが伝送を行わなくなるまで監視を継続する。メ
ディア・アクセス管理は次いで、ネットワークがクリア
になるのを指定されたランダムな時間待機して、その後
伝送を開始する。
知を使用して、ネットワークがクリアになるまで伝送を
遅らせることによって確保される。簡単に言えば、送信
ステーション(たとえば、コンピュータまたはユーザ1
0)は伝送媒体(たとえば、ケーブル20)を伝送前に
聴取ないし監視して、他のステーション(たとえば、コ
ンピュータまたはユーザ10’)が現在メッセージを伝
送しているかどうかを判定する。すなわち、媒体が空い
ているかどうかを判定する。L1物理層30のサービス
を使用して、メディア・アクセス管理は伝送媒体(すな
わち、搬送波)が現在使用されているかどうかを判定す
る。媒体が使用されていない場合には、メディア・アク
セス管理はデータ・フレームをL1物理層30に渡し、
伝送する。フレームの伝送が開始された後でも、メディ
ア・アクセス管理は搬送波の監視を継続する。搬送波が
使用中である場合、メディア・アクセス管理は他のステ
ーションが伝送を行わなくなるまで監視を継続する。メ
ディア・アクセス管理は次いで、ネットワークがクリア
になるのを指定されたランダムな時間待機して、その後
伝送を開始する。
【0013】しかし、送信するメッセージを持っている
他のステーションはすべて同時に聴取を行い、伝送媒体
が静粛と思われることを認識し、メッセージを同時に伝
送し始めることがある。その結果衝突が起こり、メッセ
ージが乱れる。信号衝突が検出されると、受信ステーシ
ョンは乱れた伝送を無視し、送信ステーションは直ちに
メッセージの伝送を停止し、ジャミング信号を媒体へ伝
送する。衝突後、各送信ステーションは搬送波がクリア
になるのをランダムなバックオフ遅延時間の間待ってか
ら、再伝送を試みる。それ故、送信ステーションは十分
な期間聴取して、衝突が起こっていないことを確認しな
ければならない。
他のステーションはすべて同時に聴取を行い、伝送媒体
が静粛と思われることを認識し、メッセージを同時に伝
送し始めることがある。その結果衝突が起こり、メッセ
ージが乱れる。信号衝突が検出されると、受信ステーシ
ョンは乱れた伝送を無視し、送信ステーションは直ちに
メッセージの伝送を停止し、ジャミング信号を媒体へ伝
送する。衝突後、各送信ステーションは搬送波がクリア
になるのをランダムなバックオフ遅延時間の間待ってか
ら、再伝送を試みる。それ故、送信ステーションは十分
な期間聴取して、衝突が起こっていないことを確認しな
ければならない。
【0014】図1Aにおいて、ネットワークないしIP
層60はあるネットワーク・ノードから他のノードへの
データの経路選択に関する。ネットワーク・ノード間の
データの経路指定を行うのは、ネットワーク層60の役
目である。
層60はあるネットワーク・ノードから他のノードへの
データの経路選択に関する。ネットワーク・ノード間の
データの経路指定を行うのは、ネットワーク層60の役
目である。
【0015】トランスポート層70は、2つのステーシ
ョンの間で接続が確立されると、同意した品質レベルで
ステーション間のデータ転送を行う。トランスポート層
70は使用する特定のクラスのサービスを選択し、伝送
を監視して、サービス品質が維持されていることを確認
し、品質が維持できない場合には、ステーション(また
は、ユーザ)に連絡する。
ョンの間で接続が確立されると、同意した品質レベルで
ステーション間のデータ転送を行う。トランスポート層
70は使用する特定のクラスのサービスを選択し、伝送
を監視して、サービス品質が維持されていることを確認
し、品質が維持できない場合には、ステーション(また
は、ユーザ)に連絡する。
【0016】セッション層80はステーション間で生じ
るダイアログを編成し、同期させるサービスを提供し、
ステーション間でのデータ交換を管理する。したがっ
て、セッション層80はステーションが同時に送受信で
きるか、交互であるかに基づいて、ステーションがデー
タを送受信できる時期を制御する。
るダイアログを編成し、同期させるサービスを提供し、
ステーション間でのデータ交換を管理する。したがっ
て、セッション層80はステーションが同時に送受信で
きるか、交互であるかに基づいて、ステーションがデー
タを送受信できる時期を制御する。
【0017】プレゼンテーション層90は情報がネット
ワーク・ユーザへ有意に提示されたことを確認し、文字
コード変換サービス、データ変換、データ圧縮伸張サー
ビスを行う。
ワーク・ユーザへ有意に提示されたことを確認し、文字
コード変換サービス、データ変換、データ圧縮伸張サー
ビスを行う。
【0018】アプリケーション層100はアプリケーシ
ョン・プロセスがシステム相互接続機能にアクセスし
て、情報交換を行う機構を備えている。アプリケーショ
ン層はユーザ間接続を確立および終了し、相互接続され
たシステムおよびこれらが用いているリソースを監視お
よび管理するのに使用されるサービスを与える。
ョン・プロセスがシステム相互接続機能にアクセスし
て、情報交換を行う機構を備えている。アプリケーショ
ン層はユーザ間接続を確立および終了し、相互接続され
たシステムおよびこれらが用いているリソースを監視お
よび管理するのに使用されるサービスを与える。
【0019】図1Aに示したネットワークは半2重方式
(ないし、共用)、または全2重方式でよいが、本発明
に関しては、全2重方式のみを想定する。全2重方式に
は、送信路と受信路があり、1つまたは複数のステーシ
ョンが同時に送受信を行える。2重通信チャネルないし
通信路は実際には、複数のワイヤないしケーブル、ある
いは単一のワイヤないしケーブルでよく、恐らくは周波
数分割を使用して送信および受信信号を両方向へ同時に
搬送する。全2重方式ネットワークのデータ伝送速度は
半2重方式ネットワークよりも高く、しばしば100M
bpsであり、通信速度が速いため選ばれることがしば
しばある。
(ないし、共用)、または全2重方式でよいが、本発明
に関しては、全2重方式のみを想定する。全2重方式に
は、送信路と受信路があり、1つまたは複数のステーシ
ョンが同時に送受信を行える。2重通信チャネルないし
通信路は実際には、複数のワイヤないしケーブル、ある
いは単一のワイヤないしケーブルでよく、恐らくは周波
数分割を使用して送信および受信信号を両方向へ同時に
搬送する。全2重方式ネットワークのデータ伝送速度は
半2重方式ネットワークよりも高く、しばしば100M
bpsであり、通信速度が速いため選ばれることがしば
しばある。
【0020】歴史的に、ネットワーク通信リンク速度は
増加してきた。10BASE−Tリンクは100BAS
E−Tリンクに取って代わられ、今では1000BAS
E−Tリンクによる最大1ギガビット/秒(1000M
bps)通信速度に上がっている。しかし、実用上、リ
ンク速度(たとえば、10Mbps、100Mbps、
1000Mbps)の選択肢は特定のネットワーク装置
がサポートできる維持データ・スループットの量と適切
にマッチしていないことがある。たとえば、最近のマル
チプロセッサ・サーバは100Mbps超の総合ネット
ワーク転送速度を維持することができる。さらに、交換
機と高性能ルータを使用して、所与の伝送速度の複数の
リンクを相互接続した場合、交換機間またはルータ間リ
ンクが少なくともいくつかのリンクの集合をサポートで
きることが必要であり、また望ましい。ネットワーク・
リンク速度を、たとえば100Mbpsから1000M
bpsに上げても、高速リンクの利用度がかなり、たと
えば40%ないし50%以上へ高めない限り、あまり費
用効果は高くならない。ネットワーク・リンク速度を上
げることも新しいハードウェアを必要とする。
増加してきた。10BASE−Tリンクは100BAS
E−Tリンクに取って代わられ、今では1000BAS
E−Tリンクによる最大1ギガビット/秒(1000M
bps)通信速度に上がっている。しかし、実用上、リ
ンク速度(たとえば、10Mbps、100Mbps、
1000Mbps)の選択肢は特定のネットワーク装置
がサポートできる維持データ・スループットの量と適切
にマッチしていないことがある。たとえば、最近のマル
チプロセッサ・サーバは100Mbps超の総合ネット
ワーク転送速度を維持することができる。さらに、交換
機と高性能ルータを使用して、所与の伝送速度の複数の
リンクを相互接続した場合、交換機間またはルータ間リ
ンクが少なくともいくつかのリンクの集合をサポートで
きることが必要であり、また望ましい。ネットワーク・
リンク速度を、たとえば100Mbpsから1000M
bpsに上げても、高速リンクの利用度がかなり、たと
えば40%ないし50%以上へ高めない限り、あまり費
用効果は高くならない。ネットワーク・リンク速度を上
げることも新しいハードウェアを必要とする。
【0021】図1Aにおいて、ケーブル媒体20はイー
サネット互換ケーブルであり、複数の独立したワイヤを
含んでいる。上述したように、ホスト、たとえばコンピ
ュータ10は通常複数の出力ポート・コネクタ(恐ら
く、50個)を有しており、これらの各々は、他端が交
換機120または他のDTEに接続されている独立した
物理ケーブルに適合している。まとめて言うと、複数の
ワイヤがケーブル内に存在していても、ホスト10をD
TE120に接続している独立したワイヤはイーサネッ
ト互換ケーブルの単一のリンクを形成している。
サネット互換ケーブルであり、複数の独立したワイヤを
含んでいる。上述したように、ホスト、たとえばコンピ
ュータ10は通常複数の出力ポート・コネクタ(恐ら
く、50個)を有しており、これらの各々は、他端が交
換機120または他のDTEに接続されている独立した
物理ケーブルに適合している。まとめて言うと、複数の
ワイヤがケーブル内に存在していても、ホスト10をD
TE120に接続している独立したワイヤはイーサネッ
ト互換ケーブルの単一のリンクを形成している。
【0022】図1BはここではネットワークID番号n
id0、nid1、nid2、...nid4によって
示されている複数の出力コネクタ・ポートを備えたサー
バ10を示す。もちろん、50個以上のこのようなポー
トおよび関連するネットワークIDがある。nid0に
関連付けられているリンクには物理的に他の機器95が
接続されて示されているが、正確な機器および終端宛先
は重要なものではない。ケーブル20内の複数の物理リ
ンクはDTE120、ここでは交換機で終端するものと
して示されている。交換機120の他のポートは、たと
えばさらに他のシステム105、ならびにクライアント
10’および他のDTE120’に接続する物理リンク
を有するものとして示されている。
id0、nid1、nid2、...nid4によって
示されている複数の出力コネクタ・ポートを備えたサー
バ10を示す。もちろん、50個以上のこのようなポー
トおよび関連するネットワークIDがある。nid0に
関連付けられているリンクには物理的に他の機器95が
接続されて示されているが、正確な機器および終端宛先
は重要なものではない。ケーブル20内の複数の物理リ
ンクはDTE120、ここでは交換機で終端するものと
して示されている。交換機120の他のポートは、たと
えばさらに他のシステム105、ならびにクライアント
10’および他のDTE120’に接続する物理リンク
を有するものとして示されている。
【0023】図1Bのサーバ10に関連付けられている
オペレーティング・システムは、サーバのコネクタ・ポ
ート(ないし、これに接続された物理ケーブル・リン
ク)の各々を個別に処理しなければならない。たとえ
ば、機器95をnid0に関連付けられたポート位置か
ら、サーバ10の他の出力ポートへ物理的に再配置する
ものと仮定する。これを達成するために、ケーブル・リ
ンクAがもはや使用されず、その代わりに、サーバ10
の異なる出力ポートで終端する新しいケーブル・リンク
が使用されるため、システム・アドミニストレータは再
配置された機器95に新しいIPレベル・アドレスを割
り当てなければならない。同様に、nid1に関連付け
られたサーバ出力ポートを交換機120の第1の入力ポ
ートに結合しているケーブル・リンクBがダウン、たと
えば、断線または故障した場合、ケーブルBが修理また
は交換されるまで、データが交換機120のその入力ポ
ートに提示されなくなる。図示の従来技術の構成では、
システム・スループットを保存するための、データの自
動リダイレクトは行われない。
オペレーティング・システムは、サーバのコネクタ・ポ
ート(ないし、これに接続された物理ケーブル・リン
ク)の各々を個別に処理しなければならない。たとえ
ば、機器95をnid0に関連付けられたポート位置か
ら、サーバ10の他の出力ポートへ物理的に再配置する
ものと仮定する。これを達成するために、ケーブル・リ
ンクAがもはや使用されず、その代わりに、サーバ10
の異なる出力ポートで終端する新しいケーブル・リンク
が使用されるため、システム・アドミニストレータは再
配置された機器95に新しいIPレベル・アドレスを割
り当てなければならない。同様に、nid1に関連付け
られたサーバ出力ポートを交換機120の第1の入力ポ
ートに結合しているケーブル・リンクBがダウン、たと
えば、断線または故障した場合、ケーブルBが修理また
は交換されるまで、データが交換機120のその入力ポ
ートに提示されなくなる。図示の従来技術の構成では、
システム・スループットを保存するための、データの自
動リダイレクトは行われない。
【0024】図1Bにおいて、サーバ10がクライアン
ト10’へデータを伝送している場合、システム・アド
ミニストレータはまず、クライアント10’が交換機1
20に関連付けられている複数のサブリンクの1つにあ
るようにシステムを構成しなければならない。パケット
情報を伝送する際に、サーバ10はクライアント10’
が割り当てられていたリンクの1つに対応するIPレベ
ルのサブリンク・アドレス(IP層60に関連付けられ
た)を指定することとなる。一般に、IPレベル・サブ
リンク・アドレスは2つのポート、ネットワークIDと
ホストIDを有している。しかしながら、各IPレベル
・サブリンク・アドレスはこれに関連付けられた異なる
ネットワークIPレベル・アドレスを有している(図4
Bも参照)。同一のIPアドレスを使用しようとするク
ライアントの数が多すぎる場合には、過剰なデータ・ト
ラフィックが単一のリンクを流れようと試み、ネットワ
ーク・システムが輻輳する可能性があることが理解でき
よう。
ト10’へデータを伝送している場合、システム・アド
ミニストレータはまず、クライアント10’が交換機1
20に関連付けられている複数のサブリンクの1つにあ
るようにシステムを構成しなければならない。パケット
情報を伝送する際に、サーバ10はクライアント10’
が割り当てられていたリンクの1つに対応するIPレベ
ルのサブリンク・アドレス(IP層60に関連付けられ
た)を指定することとなる。一般に、IPレベル・サブ
リンク・アドレスは2つのポート、ネットワークIDと
ホストIDを有している。しかしながら、各IPレベル
・サブリンク・アドレスはこれに関連付けられた異なる
ネットワークIPレベル・アドレスを有している(図4
Bも参照)。同一のIPアドレスを使用しようとするク
ライアントの数が多すぎる場合には、過剰なデータ・ト
ラフィックが単一のリンクを流れようと試み、ネットワ
ーク・システムが輻輳する可能性があることが理解でき
よう。
【0025】ネットワーク・アドミニストレータは、ク
ライアント10’が専用のものとなっている、あるいは
拘束されているリンクのグループの1つに関連付けられ
たIPレベル・アドレスに対して共通ネットワーク・レ
ベルIDを使用する。望んでいない結果の1つはクライ
アント10’のDTEおよび物理リンク(ここでは、
Q)が拘束されているため、システム・アドミニストレ
ータは任意の数の物理リンクを簡単に、あるいは柔軟に
まとめることができない。
ライアント10’が専用のものとなっている、あるいは
拘束されているリンクのグループの1つに関連付けられ
たIPレベル・アドレスに対して共通ネットワーク・レ
ベルIDを使用する。望んでいない結果の1つはクライ
アント10’のDTEおよび物理リンク(ここでは、
Q)が拘束されているため、システム・アドミニストレ
ータは任意の数の物理リンクを簡単に、あるいは柔軟に
まとめることができない。
【0026】ネットワークないしIPレベルの3つのア
ドレスはnid0、nid1、...idNで示されて
いる(図4Bも参照)。従来技術においては、リンクの
グループ化はサブリンクをレベル2で、アドレスnid
1.1、nidl.2、nid1.3などによって示さ
れるようなものである.nid1を含むサブリンクのグ
ループと関連付けられている1つの機器、たとえばクラ
イアント10’と通信するためには、どのリンクが関与
しているか、たとえばnid1.3で示されているリン
ケージ3を指定する必要がある。
ドレスはnid0、nid1、...idNで示されて
いる(図4Bも参照)。従来技術においては、リンクの
グループ化はサブリンクをレベル2で、アドレスnid
1.1、nidl.2、nid1.3などによって示さ
れるようなものである.nid1を含むサブリンクのグ
ループと関連付けられている1つの機器、たとえばクラ
イアント10’と通信するためには、どのリンクが関与
しているか、たとえばnid1.3で示されているリン
ケージ3を指定する必要がある。
【0027】それ故、図1Bにおいてサーバ10からク
ライアント10’へ情報を送ることを望むソフトウェア
は一意の宛先アドレスをnid1.3として指定しなけ
ればならない。これはソフトウェア・アプリケーション
がレベル3を介してレベル2と通信しなければならない
からである(図1Aおよび図4B参照)。要約すると、
レベル3はデータ・パケットをアドレスnid1.3へ
送るためにソフトウェアで管理される。
ライアント10’へ情報を送ることを望むソフトウェア
は一意の宛先アドレスをnid1.3として指定しなけ
ればならない。これはソフトウェア・アプリケーション
がレベル3を介してレベル2と通信しなければならない
からである(図1Aおよび図4B参照)。要約すると、
レベル3はデータ・パケットをアドレスnid1.3へ
送るためにソフトウェアで管理される。
【0028】レベル3の情報は、それ自体のアドレス指
定プロトコルだけしか理解しない層2に理解できるよう
に、層2へ通信されなければならない。それ故、層3は
サーバが維持するマッピング機能を含んでおり、この機
能はnid1.3を、ネットワーク・レベル2層で有意
なものである物理(たとえば、MAC/LLC)アドレ
スに変換する。実用上、サーバはその層3に、イーサネ
ットIDに対応するローカル・リンクである各ネットワ
ークレベルIDに対してマッピング・テーブルを維持す
る(アドレス・レゾリューション・プロトコルすなわち
「ARP」情報を使用して)。要約すると、垂直リンク
・レベル3−ツウ−MACアドレス・レベル2マッピン
グが、問題のネットワークIDに対して生じる。別々に
維持されるプロトコル・テーブルはnid1.3に対す
るエントリ(他のエントリのうち)、ならびに関連する
MAC/LLCアドレスを含む。マップが報告する特定
のMAC/LLCアドレスを使用して、問題のパケット
をクライアント10’へ送るし、実際、送らなければな
らない。残念ながら、上述したもののような交換ネット
ワークにおいては、問題のパケットは、この特定のMA
C/LLCアドレスを除き、クライアント10’に対す
る代替経路を有していない。このため、アドレス指定シ
ステムは静的なものであるといわれる。
定プロトコルだけしか理解しない層2に理解できるよう
に、層2へ通信されなければならない。それ故、層3は
サーバが維持するマッピング機能を含んでおり、この機
能はnid1.3を、ネットワーク・レベル2層で有意
なものである物理(たとえば、MAC/LLC)アドレ
スに変換する。実用上、サーバはその層3に、イーサネ
ットIDに対応するローカル・リンクである各ネットワ
ークレベルIDに対してマッピング・テーブルを維持す
る(アドレス・レゾリューション・プロトコルすなわち
「ARP」情報を使用して)。要約すると、垂直リンク
・レベル3−ツウ−MACアドレス・レベル2マッピン
グが、問題のネットワークIDに対して生じる。別々に
維持されるプロトコル・テーブルはnid1.3に対す
るエントリ(他のエントリのうち)、ならびに関連する
MAC/LLCアドレスを含む。マップが報告する特定
のMAC/LLCアドレスを使用して、問題のパケット
をクライアント10’へ送るし、実際、送らなければな
らない。残念ながら、上述したもののような交換ネット
ワークにおいては、問題のパケットは、この特定のMA
C/LLCアドレスを除き、クライアント10’に対す
る代替経路を有していない。このため、アドレス指定シ
ステムは静的なものであるといわれる。
【0029】図2Aないし図2Cは各種のネットワーク
相互接続構成を示す。図2Aにおいて、3つの別々のワ
イヤ・リンク・セグメントA、BおよびCが媒体20に
含まれており、DTE、ここではサーバ10と交換機1
20(または、その他の機構)を結合するために使用さ
れる。もちろん、システムに必要とされる帯域幅の大き
さに応じて、3つよりも多くの、あるいは3つよりも少
ないワイヤ・リンク・セグメントを使用することができ
る。交換機120も1,2,3,4および5で示される
いくつかのクライアント・セグメントに結合されてい
る。この構成において、サーバ10を他のタイプの機
器、たとえば、ルータ、高性能なワークステーション、
プリンタなどと置き換えることもできる。
相互接続構成を示す。図2Aにおいて、3つの別々のワ
イヤ・リンク・セグメントA、BおよびCが媒体20に
含まれており、DTE、ここではサーバ10と交換機1
20(または、その他の機構)を結合するために使用さ
れる。もちろん、システムに必要とされる帯域幅の大き
さに応じて、3つよりも多くの、あるいは3つよりも少
ないワイヤ・リンク・セグメントを使用することができ
る。交換機120も1,2,3,4および5で示される
いくつかのクライアント・セグメントに結合されてい
る。この構成において、サーバ10を他のタイプの機
器、たとえば、ルータ、高性能なワークステーション、
プリンタなどと置き換えることもできる。
【0030】図2Bの実施の形態において、3つのワイ
ヤ・リンク・セグメントA、B、およびCが交換機12
0’を交換機120に接続しているが、この場合も、異
なる数のセグメントを使用することもできる。図2Cに
おいて、3つのセグメント(A、B、C)がサーバ1
0’をサーバ10に結合しているが、一方または両方の
サーバを他の機器、たとえばルータと置き換えることが
できる。
ヤ・リンク・セグメントA、B、およびCが交換機12
0’を交換機120に接続しているが、この場合も、異
なる数のセグメントを使用することもできる。図2Cに
おいて、3つのセグメント(A、B、C)がサーバ1
0’をサーバ10に結合しているが、一方または両方の
サーバを他の機器、たとえばルータと置き換えることが
できる。
【0031】従来技術のシステムにおいて、図2Aまた
は図2Bまたは図2Cの適合構成は通常、層60が3本
のワイヤA、B、Cの各々にリンク内の別々のIPアド
レスを割り当てることを必要としている。複数のクライ
アントが同一のIPアドレスを使用している場合、その
データ・トラフィックはすべて単一のリンクへ渡され、
システムを輻輳させる。それ故、アドミニストレーショ
ン上、3つのインターネット・アドレスはリンク20内
の3本(たとえば)のワイヤを取り扱うことが必要であ
る。ネットワーク・ソフトウェアは次いで、3つのリン
クの各々を3つの異なるリンクとして取り扱うことにな
る。実用上、物理リンク20内に50本以上(たとえ
ば、A、B、C、...)があり、アドミニストレーシ
ョン上、各々に対して別々のインターネット・プロトコ
ル・アドレスを割り当て、取り扱わなければならないこ
とはわずらわしい。
は図2Bまたは図2Cの適合構成は通常、層60が3本
のワイヤA、B、Cの各々にリンク内の別々のIPアド
レスを割り当てることを必要としている。複数のクライ
アントが同一のIPアドレスを使用している場合、その
データ・トラフィックはすべて単一のリンクへ渡され、
システムを輻輳させる。それ故、アドミニストレーショ
ン上、3つのインターネット・アドレスはリンク20内
の3本(たとえば)のワイヤを取り扱うことが必要であ
る。ネットワーク・ソフトウェアは次いで、3つのリン
クの各々を3つの異なるリンクとして取り扱うことにな
る。実用上、物理リンク20内に50本以上(たとえ
ば、A、B、C、...)があり、アドミニストレーシ
ョン上、各々に対して別々のインターネット・プロトコ
ル・アドレスを割り当て、取り扱わなければならないこ
とはわずらわしい。
【0032】たとえば、イーサネット交換機を使用して
イーサネット互換ネットワークへ接続されているサーバ
/ホスト・システムからの複数のイーサネット・リンク
を有しているシステムにおいて、システム・アドミニス
トレータは各リンクへ異なるIDアドレスを静的に割り
当てなければならず(たとえば、異なるIPホスト名を
割り当てなければならず)、また異なるMACアドレス
によって各リンクを構成しなければならない。時間がか
かることに加えて、ネットワーク・アドミニストレータ
は他のホスト/クライアント・システムを異なるIPサ
ブネットへグループ化し、複数のリンクがサーバへのネ
ットワーク・データ・トラフィックをサーバへ共用でき
るようにする必要がある。関連付けられた論理グループ
へのクライアントのグループ化が必要なのは、1本のケ
ーブルが使用されているため、いくつかのクライアント
が1つのIPアドレスを使用して、サーバにアクセスし
なければならないからである。
イーサネット互換ネットワークへ接続されているサーバ
/ホスト・システムからの複数のイーサネット・リンク
を有しているシステムにおいて、システム・アドミニス
トレータは各リンクへ異なるIDアドレスを静的に割り
当てなければならず(たとえば、異なるIPホスト名を
割り当てなければならず)、また異なるMACアドレス
によって各リンクを構成しなければならない。時間がか
かることに加えて、ネットワーク・アドミニストレータ
は他のホスト/クライアント・システムを異なるIPサ
ブネットへグループ化し、複数のリンクがサーバへのネ
ットワーク・データ・トラフィックをサーバへ共用でき
るようにする必要がある。関連付けられた論理グループ
へのクライアントのグループ化が必要なのは、1本のケ
ーブルが使用されているため、いくつかのクライアント
が1つのIPアドレスを使用して、サーバにアクセスし
なければならないからである。
【0033】
【発明が解決しようとする課題】残念ながら、クライア
ントまたはDTEをシステム内で再配置しなければなら
ない場合、これはサーバから来る新しいケーブルを使用
することとなり、その再配置はシステム・アドミニスト
レータが新しいIPアドレスを割り当てることを必要と
する。各種のクライアント(または、その他のDTE)
がシステムの受信側で分散されており、IPアドレスの
再割当てを慎重に行わなければ、あまりにも多くのクラ
イアントが同一のIPアドレスを使用することになって
しまう。このことは単一の物理リンクを通ろうとする過
剰なトラフィックを生じさせやすく、システムを輻湊さ
せ、システム帯域幅を劣化させる。さらに、物理リンク
が損傷を受けたり、切り離された場合、専用IPアドレ
スがそのリンクに関与していたクライアントはサーバへ
アクセスできなくなり、他のアクセス経路は存在しな
い。このようなクライアントとやり取りされるデータは
失われることになる。
ントまたはDTEをシステム内で再配置しなければなら
ない場合、これはサーバから来る新しいケーブルを使用
することとなり、その再配置はシステム・アドミニスト
レータが新しいIPアドレスを割り当てることを必要と
する。各種のクライアント(または、その他のDTE)
がシステムの受信側で分散されており、IPアドレスの
再割当てを慎重に行わなければ、あまりにも多くのクラ
イアントが同一のIPアドレスを使用することになって
しまう。このことは単一の物理リンクを通ろうとする過
剰なトラフィックを生じさせやすく、システムを輻湊さ
せ、システム帯域幅を劣化させる。さらに、物理リンク
が損傷を受けたり、切り離された場合、専用IPアドレ
スがそのリンクに関与していたクライアントはサーバへ
アクセスできなくなり、他のアクセス経路は存在しな
い。このようなクライアントとやり取りされるデータは
失われることになる。
【0034】それ故、従来技術のネットワーク構成プロ
トコルにおいては、各物理リンクに対して、アドミニス
トレータが別々のレベル3IP層アドレスおよびレベル
2LLC/MAC層50A/Bアドレスを静的に割り当
てる。DTEユニットがリンクのグループ、たとえばサ
ブリンクのリンクと静的に関連付けられているため、I
P層サブリンク・アドレスが必要となる。
トコルにおいては、各物理リンクに対して、アドミニス
トレータが別々のレベル3IP層アドレスおよびレベル
2LLC/MAC層50A/Bアドレスを静的に割り当
てる。DTEユニットがリンクのグループ、たとえばサ
ブリンクのリンクと静的に関連付けられているため、I
P層サブリンク・アドレスが必要となる。
【0035】要約すると、イーサネット互換ネットワー
クにおいて、複数の物理リンクを単一の論理リンクまた
は仮想リンクに論理的にまとめることを可能とする柔軟
で、動的な方法が必要である。このようなシステムにお
いては、システム・アドミニストレータが単一のLLC
/MAC層2アドレスと、単一のIP層3アドレスを結
果として得られる仮想リンクに割り当てられることがで
きなければならない。このようなシステムは単一のトラ
ンクへ、任意の数の物理リンクをグループ化できなけれ
ばならない。結果として得られるシステムはネットワー
ク・システムを簡単に再構成する点で、アドミニストレ
ータに融通性を与えなければならない。
クにおいて、複数の物理リンクを単一の論理リンクまた
は仮想リンクに論理的にまとめることを可能とする柔軟
で、動的な方法が必要である。このようなシステムにお
いては、システム・アドミニストレータが単一のLLC
/MAC層2アドレスと、単一のIP層3アドレスを結
果として得られる仮想リンクに割り当てられることがで
きなければならない。このようなシステムは単一のトラ
ンクへ、任意の数の物理リンクをグループ化できなけれ
ばならない。結果として得られるシステムはネットワー
ク・システムを簡単に再構成する点で、アドミニストレ
ータに融通性を与えなければならない。
【0036】このような再構成機能は負荷平衡およびネ
ットワーク・システム・スループットの維持を改善する
はずであり、また使用された物理リンクを通るデータ・
フローの妨害または障害があった場合に、異なる物理リ
ンクへのデータ・フロー・トラフィックの柔軟な再割当
てを可能とするはずである。さらに、このようなシステ
ムは2つの通信ポイントの間のネットワークによって搬
送されるデータ・パケットのフロー・シーケンスを論理
的に保存しなければならない。さらに、以前障害を起こ
した物理リンクが再度利用できるようになった場合に
は、システムがこのようなリンクを使用して、ネットワ
ーク・トランクでのデータ・フロー負荷の共用を助ける
ものでなければならない。
ットワーク・システム・スループットの維持を改善する
はずであり、また使用された物理リンクを通るデータ・
フローの妨害または障害があった場合に、異なる物理リ
ンクへのデータ・フロー・トラフィックの柔軟な再割当
てを可能とするはずである。さらに、このようなシステ
ムは2つの通信ポイントの間のネットワークによって搬
送されるデータ・パケットのフロー・シーケンスを論理
的に保存しなければならない。さらに、以前障害を起こ
した物理リンクが再度利用できるようになった場合に
は、システムがこのようなリンクを使用して、ネットワ
ーク・トランクでのデータ・フロー負荷の共用を助ける
ものでなければならない。
【0037】本発明はイーサネット互換ネットワーク・
システムで使用されるそのような方法を提供する。
システムで使用されるそのような方法を提供する。
【0038】
【課題を解決するための手段】イーサネット互換ネット
ワークにおいて、サーバおよびホストは複数の別々のワ
イヤ(または、リンク)を担持しているケーブル(また
は、同等物)を使用して、DTE、たとえば交換機へ接
続されている。規則セットを使用して、任意の数の複数
のリンク(または、サーバ・コネクタ)が、単一の論理
(または、仮想)リンクとして高位のネットワーク層を
表すことができるようにトランク化される。このような
仮想リンクには、複数の別々な物理リンクが含まれ、表
示されることにかかわりなく、1つのMACアドレスお
よび1つのIPアドレスが割り当てられる。(これは各
コネクタまたはリンクが専用のIPアドレスを必要とす
る従来技術の技法と対照的なものである。)
ワークにおいて、サーバおよびホストは複数の別々のワ
イヤ(または、リンク)を担持しているケーブル(また
は、同等物)を使用して、DTE、たとえば交換機へ接
続されている。規則セットを使用して、任意の数の複数
のリンク(または、サーバ・コネクタ)が、単一の論理
(または、仮想)リンクとして高位のネットワーク層を
表すことができるようにトランク化される。このような
仮想リンクには、複数の別々な物理リンクが含まれ、表
示されることにかかわりなく、1つのMACアドレスお
よび1つのIPアドレスが割り当てられる。(これは各
コネクタまたはリンクが専用のIPアドレスを必要とす
る従来技術の技法と対照的なものである。)
【0039】仮想リンクにより、ネットワーク・システ
ム・アドミニストレーションが単調な再アドレス指定タ
スクにかかわることなく、機器の位置を柔軟かつ動的に
再割り当てすることが可能となる。恐らくはリンクの喪
失による機器の移動は簡単に対処され、移動後に異なる
物理リンクが使用されても、移動した機器が同一の仮想
ネットワーク内に論理的にとどまる。この柔軟性は、ケ
ーブル内の別々の各リンクが専用化されており、それ自
体のMACアドレスおよびIPアドレスによって構成し
なければならない従来技術と対照的なものである。
ム・アドミニストレーションが単調な再アドレス指定タ
スクにかかわることなく、機器の位置を柔軟かつ動的に
再割り当てすることが可能となる。恐らくはリンクの喪
失による機器の移動は簡単に対処され、移動後に異なる
物理リンクが使用されても、移動した機器が同一の仮想
ネットワーク内に論理的にとどまる。この柔軟性は、ケ
ーブル内の別々の各リンクが専用化されており、それ自
体のMACアドレスおよびIPアドレスによって構成し
なければならない従来技術と対照的なものである。
【0040】本発明はN本の離散物理情報チャネルを論
理的に表し、単一の仮想情報チャネルが単一の物理MA
Cアドレスを持っているので、各々が一意の物理アドレ
スを持っている。トランク化擬似ドライバ・ソフトウェ
ア層が、イーサネット互換ネットワーク・モデルのサー
バ側のみのIP(または、ネットワーク)層と物理層の
デバイス・ドライバ部分との間に導入される。クライア
ントないし受信側は変更されない。サーバからパケット
を複数の物理リンク上で伝送する際に、負荷の分配はサ
ーバ内のデバイス・ドライバ・コードをトランク化する
ことによって処理される。擬似ドライバ・コード・アル
ゴリズムは、物理リンクが横切っている2つの通信端部
の間で論理フローの順序を保存するために、伝送された
パケットを確実に分配する。物理リンクの障害は、トラ
フィックを存続しているリンクに再割り当てし、リンク
がサービスに復帰したときに、パケット負荷の少なくと
も一部を随行したリンクへ送ることによって対処され
る。
理的に表し、単一の仮想情報チャネルが単一の物理MA
Cアドレスを持っているので、各々が一意の物理アドレ
スを持っている。トランク化擬似ドライバ・ソフトウェ
ア層が、イーサネット互換ネットワーク・モデルのサー
バ側のみのIP(または、ネットワーク)層と物理層の
デバイス・ドライバ部分との間に導入される。クライア
ントないし受信側は変更されない。サーバからパケット
を複数の物理リンク上で伝送する際に、負荷の分配はサ
ーバ内のデバイス・ドライバ・コードをトランク化する
ことによって処理される。擬似ドライバ・コード・アル
ゴリズムは、物理リンクが横切っている2つの通信端部
の間で論理フローの順序を保存するために、伝送された
パケットを確実に分配する。物理リンクの障害は、トラ
フィックを存続しているリンクに再割り当てし、リンク
がサービスに復帰したときに、パケット負荷の少なくと
も一部を随行したリンクへ送ることによって対処され
る。
【0041】本発明はどのパケット・アドレス情報を送
るかを決定する際に、他の場合に層3および層2に利用
できるのと同じ情報を使用する。ただし、従来技術の技
法が層3と層2の間の垂直マッピング・リンクに依存し
ているのに対し、本発明は従来のマップテーブル情報、
それ自体のソースMACアドレス、および層3をポイン
トするパケットIDを使用して宛先MACアドレスを構
築する。レベル3−レベル2通信において、本発明は複
数のレベル2リンクをレベル3に対し、単一の仮想リン
クないしデバイスであるかのように見せるようにする。
各下位レベルあたり1つの、複数レベルのIPレベルの
3つのアドレスではなく、本発明のIPレベルの3層は
単一の仮想ないし論理デバイスを調べる。
るかを決定する際に、他の場合に層3および層2に利用
できるのと同じ情報を使用する。ただし、従来技術の技
法が層3と層2の間の垂直マッピング・リンクに依存し
ているのに対し、本発明は従来のマップテーブル情報、
それ自体のソースMACアドレス、および層3をポイン
トするパケットIDを使用して宛先MACアドレスを構
築する。レベル3−レベル2通信において、本発明は複
数のレベル2リンクをレベル3に対し、単一の仮想リン
クないしデバイスであるかのように見せるようにする。
各下位レベルあたり1つの、複数レベルのIPレベルの
3つのアドレスではなく、本発明のIPレベルの3層は
単一の仮想ないし論理デバイスを調べる。
【0042】本発明はホスト層2を変更して、拡張され
た構成機能を有するソフトウェアで実施されたドライバ
を作り出す。デバイス・ドライバはパケットに、各リン
クに対応したデバイスを指定するトランクレベルIDを
含むアドレス情報を発行する。この情報は受信側でロー
カルに使用される。受信側へ搬送される情報パケットは
他の場合と異なっていないため、受信側はそれがトラン
ク化されたリンクと通信していることを認識しない。
た構成機能を有するソフトウェアで実施されたドライバ
を作り出す。デバイス・ドライバはパケットに、各リン
クに対応したデバイスを指定するトランクレベルIDを
含むアドレス情報を発行する。この情報は受信側でロー
カルに使用される。受信側へ搬送される情報パケットは
他の場合と異なっていないため、受信側はそれがトラン
ク化されたリンクと通信していることを認識しない。
【0043】本発明はトランクが任意の数のセグメント
を有しており、その各々が同一の全2重方式動作物理層
およびメディア・アクセス性形相の特性を有しており、
その各々が共用発信下および宛先を他のトランク・セグ
メントと共用しているものと想定する。所与のトランク
セグメントを横切ってトランスポートされる情報パケッ
トの一時的な配列は、ネットワーク全体にわたって保存
され、ブロードキャストまたはマルチキャスト・パケッ
トはエコーされたり、送り返されたりしない。負荷平衡
は宛先MACアドレスをハッシュし、パケットがアドレ
ス指定され、送られる適切な物理リンクを選択すること
によって、促進される。
を有しており、その各々が同一の全2重方式動作物理層
およびメディア・アクセス性形相の特性を有しており、
その各々が共用発信下および宛先を他のトランク・セグ
メントと共用しているものと想定する。所与のトランク
セグメントを横切ってトランスポートされる情報パケッ
トの一時的な配列は、ネットワーク全体にわたって保存
され、ブロードキャストまたはマルチキャスト・パケッ
トはエコーされたり、送り返されたりしない。負荷平衡
は宛先MACアドレスをハッシュし、パケットがアドレ
ス指定され、送られる適切な物理リンクを選択すること
によって、促進される。
【0044】
【発明の実施の形態】本発明の他の特徴および利点は、
添付図面に関連して好ましい実施の形態を詳細に記載す
る以下の説明から明らかとなろう。
添付図面に関連して好ましい実施の形態を詳細に記載す
る以下の説明から明らかとなろう。
【0045】本発明はネットワーク・システム・アドミ
ニストレーションを単純化し、新しい形態のトランク化
を用いることによって、金銭的またはパフォーマンス上
のコストを大幅に増加させることなくシステム帯域幅を
向上させられる。トランク化は複数の並列物理リンクを
1本の論理(または、仮想)チャネルに組合せる機能と
定義される。本発明で使用する場合、トランクは物理リ
ンク(たとえば、媒体20)が共通送信元および共通宛
先を共用することに限定される。さらに、このようなト
ランクにおいて、リンク(または、トランク「セグメン
ト」)の各々は同一の物理層30およびLLC/MAC
層50A/Bの特性を有することを想定している。
ニストレーションを単純化し、新しい形態のトランク化
を用いることによって、金銭的またはパフォーマンス上
のコストを大幅に増加させることなくシステム帯域幅を
向上させられる。トランク化は複数の並列物理リンクを
1本の論理(または、仮想)チャネルに組合せる機能と
定義される。本発明で使用する場合、トランクは物理リ
ンク(たとえば、媒体20)が共通送信元および共通宛
先を共用することに限定される。さらに、このようなト
ランクにおいて、リンク(または、トランク「セグメン
ト」)の各々は同一の物理層30およびLLC/MAC
層50A/Bの特性を有することを想定している。
【0046】図2Aないし図2Cを再度参照すると、物
理媒体20は複数の物理リンクまたはセグメント、たと
えばワイヤA、B、Cを含んでいる。本発明は図1Aの
モデルにおける高レベルネットワーク層の観点から、こ
の複数の物理リンクないしセグメントを単一の論理ない
し仮想リンクに見せるように動作する。複数の物理リン
クを単一の仮想リンクとして取り扱う機能はネットワー
ク・システム・アドミニストレーションのタスクを大幅
に単純化し、かつネットワーク帯域幅を柔軟に広げ、維
持することに寄与できるものである。アドミニストレー
ション上、ネットワーク・システムは、リンクが複数の
物理的に別々なケーブルないしセグメントを含んでいて
も、1つの論理(ないし、仮想)リンクに対して単一の
IPアドレスおよび単一のイーサネット・アドレスを使
用することができる。
理媒体20は複数の物理リンクまたはセグメント、たと
えばワイヤA、B、Cを含んでいる。本発明は図1Aの
モデルにおける高レベルネットワーク層の観点から、こ
の複数の物理リンクないしセグメントを単一の論理ない
し仮想リンクに見せるように動作する。複数の物理リン
クを単一の仮想リンクとして取り扱う機能はネットワー
ク・システム・アドミニストレーションのタスクを大幅
に単純化し、かつネットワーク帯域幅を柔軟に広げ、維
持することに寄与できるものである。アドミニストレー
ション上、ネットワーク・システムは、リンクが複数の
物理的に別々なケーブルないしセグメントを含んでいて
も、1つの論理(ないし、仮想)リンクに対して単一の
IPアドレスおよび単一のイーサネット・アドレスを使
用することができる。
【0047】本発明によれば、トランク化されたネット
ワーク・オペレーティング・システムにおいて、リンク
には単一の識別(ID)アドレスおよび単一のMAC層
アドレスが割り当てられる(または、関連付けられ
る)。希望する結果の1つは複数の別々のリンクを構成
する物理ケーブル(または、同等物)が、高位のネット
ワーク・システム・レベルに対して、1つの仮想ないし
論理エンティティ、すなわちIP層60が単一のIP名
を割り当てることのできるエンティティとして見えるこ
とである。
ワーク・オペレーティング・システムにおいて、リンク
には単一の識別(ID)アドレスおよび単一のMAC層
アドレスが割り当てられる(または、関連付けられ
る)。希望する結果の1つは複数の別々のリンクを構成
する物理ケーブル(または、同等物)が、高位のネット
ワーク・システム・レベルに対して、1つの仮想ないし
論理エンティティ、すなわちIP層60が単一のIP名
を割り当てることのできるエンティティとして見えるこ
とである。
【0048】このような仮想リンク参照の利点の1つ
は、高い有効ネットワーク帯域幅容量を柔軟に実現でき
ることである。たとえば、10本の10Mbpsリンク
を備えているネットワーク・システムにおいて、10本
のリンクの論理的グループ化は100Mbpsのスルー
プットを生じる。ネットワーク・システム・アドミニス
トレータの観点からの重要度は低いが、本発明によって
与えられるアドレス指定の利点は、システム再構成をき
わめて柔軟なものとする。
は、高い有効ネットワーク帯域幅容量を柔軟に実現でき
ることである。たとえば、10本の10Mbpsリンク
を備えているネットワーク・システムにおいて、10本
のリンクの論理的グループ化は100Mbpsのスルー
プットを生じる。ネットワーク・システム・アドミニス
トレータの観点からの重要度は低いが、本発明によって
与えられるアドレス指定の利点は、システム再構成をき
わめて柔軟なものとする。
【0049】本発明を実施する際に、トランクの各端に
ある機器が順守しなければならない規則セットを定義す
る。これらの規則はトランクの各端部が規則に従わなけ
ればならないという点で対称的なものである。さらに、
規則はDTE、あらゆる範疇のコンピュータなどを含む
端部ステーションに適用され、またネットワーク・イン
フラストラクチャ構成要素(たとえば、具体的には交換
機)に適用される。規則は以下の通りである。 1.トランクは任意の数のセグメントを有することがで
きるが、すべてのセグメントは同一の物理層およびメデ
ィア・アクセス制御層の特性を有していなければならな
い。 2.各トランク・セグメントは共通送信元および共通宛
先を他のトランク・セグメントと共用しなければならな
い。 3.所与のトランク・セグメントを通してトランスポー
トされる情報パケットの一時的配列を、ビット・エラー
によるロスのみを条件として、ネットワーク全体で保存
しなければならない。 4.トランクの異なるセグメントと通じてトランスポー
トされるパケットの一時的配列を想定することができな
い。 5.パケット(ブロードキャスト・パケットおよびマル
チキャスト・パケットを含む)を、トランク・セグメン
トを横切って反復したり、複写してはならない。 6.トランク・セグメントを通じて伝送されるブロード
キャスト・パケットおよびマルチキャスト・パケットを
他のトランク・セグメント上で送信側へエコーまたはル
ープバックしてはならない。 7.規則は各セグメントに対する物理層およびメディア
・アクセス制御層において全2重方式動作を行うモデル
に基づくものであり、CSMA/CDを使用する半2重
方式動作はサポートされていないし、望まれるものでも
ない。 8.トランク端部ステーションは単一の48ビットIE
EE MACアドレスをすべてのトランク・セグメント
に関連付ける。 9.セグメント間の完全な負荷平衡を行うことができ
ず、各トランク端部は上記の規則すべてを条件として、
できる限りセグメント間で負荷を平衡させようとする。
ある機器が順守しなければならない規則セットを定義す
る。これらの規則はトランクの各端部が規則に従わなけ
ればならないという点で対称的なものである。さらに、
規則はDTE、あらゆる範疇のコンピュータなどを含む
端部ステーションに適用され、またネットワーク・イン
フラストラクチャ構成要素(たとえば、具体的には交換
機)に適用される。規則は以下の通りである。 1.トランクは任意の数のセグメントを有することがで
きるが、すべてのセグメントは同一の物理層およびメデ
ィア・アクセス制御層の特性を有していなければならな
い。 2.各トランク・セグメントは共通送信元および共通宛
先を他のトランク・セグメントと共用しなければならな
い。 3.所与のトランク・セグメントを通してトランスポー
トされる情報パケットの一時的配列を、ビット・エラー
によるロスのみを条件として、ネットワーク全体で保存
しなければならない。 4.トランクの異なるセグメントと通じてトランスポー
トされるパケットの一時的配列を想定することができな
い。 5.パケット(ブロードキャスト・パケットおよびマル
チキャスト・パケットを含む)を、トランク・セグメン
トを横切って反復したり、複写してはならない。 6.トランク・セグメントを通じて伝送されるブロード
キャスト・パケットおよびマルチキャスト・パケットを
他のトランク・セグメント上で送信側へエコーまたはル
ープバックしてはならない。 7.規則は各セグメントに対する物理層およびメディア
・アクセス制御層において全2重方式動作を行うモデル
に基づくものであり、CSMA/CDを使用する半2重
方式動作はサポートされていないし、望まれるものでも
ない。 8.トランク端部ステーションは単一の48ビットIE
EE MACアドレスをすべてのトランク・セグメント
に関連付ける。 9.セグメント間の完全な負荷平衡を行うことができ
ず、各トランク端部は上記の規則すべてを条件として、
できる限りセグメント間で負荷を平衡させようとする。
【0050】上記の規則はそれ自体がトランク構成、設
定、管理、または保守、アドレス障害検出または回復を
対象とするものではない。本発明は特定のトランク・セ
グメントが障害を起こした場合に、物理層が何らかの指
示を与えることを想定している。さらに、本発明は各ト
ランク端部がどのような状況が物理層によって与えられ
るかを監視し、適切な処置を行うことを想定している。
実用上、構成および設定は各インプリメンテーション固
有の手動操作によって行われるが、非手動操作を使用す
ることもできる。
定、管理、または保守、アドレス障害検出または回復を
対象とするものではない。本発明は特定のトランク・セ
グメントが障害を起こした場合に、物理層が何らかの指
示を与えることを想定している。さらに、本発明は各ト
ランク端部がどのような状況が物理層によって与えられ
るかを監視し、適切な処置を行うことを想定している。
実用上、構成および設定は各インプリメンテーション固
有の手動操作によって行われるが、非手動操作を使用す
ることもできる。
【0051】サーバの観点から、本発明はデータがどの
ように送られるかを制御するものであるが、データがど
のように着信するかを制御するものではない。さらに、
サーバは論理リンクに対するデバイス・ドライバ・レベ
ルでクライアントIDの割当てを行うものであるが、本
発明が使用される交換機(または、その他の)機構は関
与するリンケージが仮想的なものであることを理解しな
ければならない。それ故、この機構は、集合した単一の
リンクであると思われるとしても、リンクが論理リンク
であり、10個の交換機極に結合された10本のワイヤ
を含んでいることがあることを認識すべきである。それ
故、交換機またはその他の機構はサーバからのトラフィ
ックを機構へどのように分配するか、好ましくはこれら
の各種のリンクの間に均等に分配することを知っていな
ければならない。通常、交換機およびその他のDTE機
構はマイクロプロセッサで制御されており、1組の機構
指定ポートを単一の論理リンクとして簡単に構成できる
ようになっている。
ように送られるかを制御するものであるが、データがど
のように着信するかを制御するものではない。さらに、
サーバは論理リンクに対するデバイス・ドライバ・レベ
ルでクライアントIDの割当てを行うものであるが、本
発明が使用される交換機(または、その他の)機構は関
与するリンケージが仮想的なものであることを理解しな
ければならない。それ故、この機構は、集合した単一の
リンクであると思われるとしても、リンクが論理リンク
であり、10個の交換機極に結合された10本のワイヤ
を含んでいることがあることを認識すべきである。それ
故、交換機またはその他の機構はサーバからのトラフィ
ックを機構へどのように分配するか、好ましくはこれら
の各種のリンクの間に均等に分配することを知っていな
ければならない。通常、交換機およびその他のDTE機
構はマイクロプロセッサで制御されており、1組の機構
指定ポートを単一の論理リンクとして簡単に構成できる
ようになっている。
【0052】トランク化モデルの重要な目標は、複数セ
グメント・トラックであっても、サーバのプロトコル・
スタックの観点から、単一の広帯域幅インタフェースに
見えるようにすることである。さらに、トランクを介し
てサーバと通信を行うすべてのクライアントは、サーバ
の同一性について、たとえばMACおよびインターネッ
ト・プロトコルないしIPホスト・アドレスについて一
貫したビューを有していなければならない。本出願人は
クライアント内のアドレス・プロトコル(ARP)テー
ブルを管理することによって負荷平衡を達成する試みを
回避した。このような手法は、サーバが放出しなければ
ならないARPフレームが多すぎ、またサーバARPの
インプリメンテーションを機能性の点でかなり増強しな
ければならないため、望ましいものではない。
グメント・トラックであっても、サーバのプロトコル・
スタックの観点から、単一の広帯域幅インタフェースに
見えるようにすることである。さらに、トランクを介し
てサーバと通信を行うすべてのクライアントは、サーバ
の同一性について、たとえばMACおよびインターネッ
ト・プロトコルないしIPホスト・アドレスについて一
貫したビューを有していなければならない。本出願人は
クライアント内のアドレス・プロトコル(ARP)テー
ブルを管理することによって負荷平衡を達成する試みを
回避した。このような手法は、サーバが放出しなければ
ならないARPフレームが多すぎ、またサーバARPの
インプリメンテーションを機能性の点でかなり増強しな
ければならないため、望ましいものではない。
【0053】上記で列挙した4番目の規則は異なるトラ
ンク・セグメントを通してパケットをトランスポートす
る際の一時的なパケット配列を取ることを排除してい
る。したがって、サーバは一時的な配列を必要とするパ
ケットの任意のシーケンスにおけるすべてのパケットが
トランクの同一のセグメント上を伝送されるようにしな
ければならない。一般に、トランスポート・プロトコル
はパケットが不規則に到着した状況から回復することが
できるが、回復は一般にスループットの大幅な劣化を伴
う。これは不規則なパケットの受信が例外として取り扱
われ、最適化されていないからである。したがって、サ
ーバの負荷平衡機構を第3の規則、すなわちトランクの
所与のセグメントを通じてトランスポートされるパケッ
トの一時的な配列を、ビット・エラーによる損失のみを
条件として、ネットワーク全体にわたって保存しなけれ
ばならないことを利用するように設計しなければならな
い。
ンク・セグメントを通してパケットをトランスポートす
る際の一時的なパケット配列を取ることを排除してい
る。したがって、サーバは一時的な配列を必要とするパ
ケットの任意のシーケンスにおけるすべてのパケットが
トランクの同一のセグメント上を伝送されるようにしな
ければならない。一般に、トランスポート・プロトコル
はパケットが不規則に到着した状況から回復することが
できるが、回復は一般にスループットの大幅な劣化を伴
う。これは不規則なパケットの受信が例外として取り扱
われ、最適化されていないからである。したがって、サ
ーバの負荷平衡機構を第3の規則、すなわちトランクの
所与のセグメントを通じてトランスポートされるパケッ
トの一時的な配列を、ビット・エラーによる損失のみを
条件として、ネットワーク全体にわたって保存しなけれ
ばならないことを利用するように設計しなければならな
い。
【0054】図3は本発明を実施するのに使用される、
全2重方式交換環境のイーサネット互換ネットワークの
図1に示すモデルの下位レベルに対する比較的わずかな
改変形を示している。関連する変更が第3のモデル層、
すなわちIPないしネットワーク層60の下で行われて
いることに留意されたい。具体的にいうと、トランク化
擬似ドライバ層150がIP層20の下で、LLC/M
AC層50A/Bの上に導入される。基礎となるネット
ワーク・モデルに対してわずかな変更が行われるだけで
あるため、得られるネットワークは完全にIEEE80
2互換のものとなる。
全2重方式交換環境のイーサネット互換ネットワークの
図1に示すモデルの下位レベルに対する比較的わずかな
改変形を示している。関連する変更が第3のモデル層、
すなわちIPないしネットワーク層60の下で行われて
いることに留意されたい。具体的にいうと、トランク化
擬似ドライバ層150がIP層20の下で、LLC/M
AC層50A/Bの上に導入される。基礎となるネット
ワーク・モデルに対してわずかな変更が行われるだけで
あるため、得られるネットワークは完全にIEEE80
2互換のものとなる。
【0055】図3のトランク化サーバ・インタフェース
において、擬似ドライバ層150は送信路におけるデマ
ルチプレクサおよび受信路におけるマルチプレクサとし
て機能する。一時的な配列に関して上記で列挙した規則
を満足させるために、擬似ドライバは特定のトランスポ
ート層データグラムに関連付けられたパケットがすべて
同じネットワーク・デバイス送信待ち行列に待ち行列化
しようと試みる。この想定はデータグラム内での配列が
十分であり、データグラム間の配列が不必要であるとい
うことに基づいて行われている。
において、擬似ドライバ層150は送信路におけるデマ
ルチプレクサおよび受信路におけるマルチプレクサとし
て機能する。一時的な配列に関して上記で列挙した規則
を満足させるために、擬似ドライバは特定のトランスポ
ート層データグラムに関連付けられたパケットがすべて
同じネットワーク・デバイス送信待ち行列に待ち行列化
しようと試みる。この想定はデータグラム内での配列が
十分であり、データグラム間の配列が不必要であるとい
うことに基づいて行われている。
【0056】図4Aは図3によって示唆された改変の効
果を示すものであり、従来の改変されていないIP層
3、すなわちLLC/MAC層2インタフェースを示す
図4Bと対称的なものである。図4Aおよび図4Bにお
いて、最終的に、A、B、C、...Nで示されている
複数のクライアント(または、同等物)が、その層3−
層2が示されているサーバによってサービスを受ける。
しかしながら、サーバ側のみで層2−層3インタフェー
スを若干改変することにより、本発明は各クライアント
A、B、...Nがここではnid1で示されている単
一のIP(または、イーサネット)レベル・アドレスを
介してIP層3を参照した単一のサブネットに属すこと
ができるようにするため有利である。要約すると、本発
明はMACアドレス情報を発信パケットに含めることに
よってピア・ツー・ピアでレベル2で動作する。これと
は対照的に、従来技術のアドレス指定は各物理リンクが
ネットワークIDアドレスに専用とされているため、垂
直なレベル3ARPテーブル−層2変換を必要とする。
果を示すものであり、従来の改変されていないIP層
3、すなわちLLC/MAC層2インタフェースを示す
図4Bと対称的なものである。図4Aおよび図4Bにお
いて、最終的に、A、B、C、...Nで示されている
複数のクライアント(または、同等物)が、その層3−
層2が示されているサーバによってサービスを受ける。
しかしながら、サーバ側のみで層2−層3インタフェー
スを若干改変することにより、本発明は各クライアント
A、B、...Nがここではnid1で示されている単
一のIP(または、イーサネット)レベル・アドレスを
介してIP層3を参照した単一のサブネットに属すこと
ができるようにするため有利である。要約すると、本発
明はMACアドレス情報を発信パケットに含めることに
よってピア・ツー・ピアでレベル2で動作する。これと
は対照的に、従来技術のアドレス指定は各物理リンクが
ネットワークIDアドレスに専用とされているため、垂
直なレベル3ARPテーブル−層2変換を必要とする。
【0057】図4Aのクライアントに関連付けられてい
るオペレーティング・システムに対して、N個の別々の
システム・コネクタまたはケーブルは単一の論理リンク
に見えるようになる。アドミニストレーション上、図4
Aのサーバに結合されたN個の機器を柔軟にリンクし
て、高いシステム帯域幅を向上させることができる。た
とえば、N個の10Mビット/秒のリンクがある場合、
これらを論理的にグループ化して、N×10Mビット/
秒のシステムを表すことができる。機器の再配置、たと
えばDTEの図4Aの「位置A」から「位置C」への移
動、あるいは通常使用されていた物理リンクがダウンし
た場合であっても、位置CにおけるDTEがデータを受
信できるようにすることに関して、システム・アドミニ
ストレーションが特に単純となる。
るオペレーティング・システムに対して、N個の別々の
システム・コネクタまたはケーブルは単一の論理リンク
に見えるようになる。アドミニストレーション上、図4
Aのサーバに結合されたN個の機器を柔軟にリンクし
て、高いシステム帯域幅を向上させることができる。た
とえば、N個の10Mビット/秒のリンクがある場合、
これらを論理的にグループ化して、N×10Mビット/
秒のシステムを表すことができる。機器の再配置、たと
えばDTEの図4Aの「位置A」から「位置C」への移
動、あるいは通常使用されていた物理リンクがダウンし
た場合であっても、位置CにおけるDTEがデータを受
信できるようにすることに関して、システム・アドミニ
ストレーションが特に単純となる。
【0058】対照的に、従来技術の図4Bにおいて、各
クライアントに対して別々のIP(ないし、イーサネッ
ト)レベル・アドレス、たとえば、デバイスhme0を
有しているクライアントAに対するリンクnid0、デ
バイスhme2を有しているクライアントBに対するリ
ンクnid2などがあることに留意されたい。(図1B
も参照。)図4Bにおいて、各種のクライアントないし
デバイス(A、B、...Nで示す)がレベル2とレベ
ル3の間のインタフェースを参照してNのサブネットに
グループ化されている。図4Bにおいて、N個のネット
ワーク・レベルID(nid0、nid1、...ni
dN)、および各デバイス名が単一の物理リンクを表し
ているN個のデバイス名hme0、hme1、...h
meNがIPレベル3層およびLLC/MACレベル2
層に関連付けられていることにも留意されたい。上述し
たように、従来の技術の図4Bにおいて、IP層3は各
物理リンクに対して別々のネットワークIDアドレスを
認識しなければならない。
クライアントに対して別々のIP(ないし、イーサネッ
ト)レベル・アドレス、たとえば、デバイスhme0を
有しているクライアントAに対するリンクnid0、デ
バイスhme2を有しているクライアントBに対するリ
ンクnid2などがあることに留意されたい。(図1B
も参照。)図4Bにおいて、各種のクライアントないし
デバイス(A、B、...Nで示す)がレベル2とレベ
ル3の間のインタフェースを参照してNのサブネットに
グループ化されている。図4Bにおいて、N個のネット
ワーク・レベルID(nid0、nid1、...ni
dN)、および各デバイス名が単一の物理リンクを表し
ているN個のデバイス名hme0、hme1、...h
meNがIPレベル3層およびLLC/MACレベル2
層に関連付けられていることにも留意されたい。上述し
たように、従来の技術の図4Bにおいて、IP層3は各
物理リンクに対して別々のネットワークIDアドレスを
認識しなければならない。
【0059】ここで、本発明によって得られるアドレス
指定の利点を検討する。機構(たとえば、交換機)に着
信するデータのパケットはネットワーク・レベルに宛先
アドレスおよびトランクIDアドレスを含むアドレス情
報を搬送する。一般に、宛先アドレスは他のイーサネッ
ト互換ポートが同じ宛先アドレスを絶対に有していない
点で、絶対的に一意のものである。宛先アドレスは長さ
が6バイトであり、送信元アドレスは長さが6バイトで
あり、2バイトは物理リンクがサーバから機構へ搬送す
べきパケットのタイプを識別するのに使用される。本発
明によるトランク化は、パケットが複数の異なるイーサ
ネット・レベルの宛先アドレスを搬送する必要性を回避
する。それ故、本発明によれば、5本の入力リンクを受
信するように結合された交換機は5つの別々の6バイト
の宛先アドレスをリンクの各々に対して必要としない。
指定の利点を検討する。機構(たとえば、交換機)に着
信するデータのパケットはネットワーク・レベルに宛先
アドレスおよびトランクIDアドレスを含むアドレス情
報を搬送する。一般に、宛先アドレスは他のイーサネッ
ト互換ポートが同じ宛先アドレスを絶対に有していない
点で、絶対的に一意のものである。宛先アドレスは長さ
が6バイトであり、送信元アドレスは長さが6バイトで
あり、2バイトは物理リンクがサーバから機構へ搬送す
べきパケットのタイプを識別するのに使用される。本発
明によるトランク化は、パケットが複数の異なるイーサ
ネット・レベルの宛先アドレスを搬送する必要性を回避
する。それ故、本発明によれば、5本の入力リンクを受
信するように結合された交換機は5つの別々の6バイト
の宛先アドレスをリンクの各々に対して必要としない。
【0060】好ましくは6バイトのレベル2宛先アドレ
スを割り当てることに加えて、本発明はレベル3アドレ
スも割り当てる。しかしながら、従来技術が各レベルに
イーサネット・アドレスに対して3つのインターネット
・アドレスを必要とするのに対して(図4B)、本発明
は単一のレベルにアドレスを備えた複数の物理リンクに
対する単一のレベル3アドレスによって機能する(図4
A)。このようにして、複数のレベルにリンケージ(な
いし、サブリンク)をネットワーク・モデル内の層3以
上の層に対して単一の仮想リンクとして表すことができ
る。ホストないしサーバ側の層2を改変して、強化され
た構成機能によってソフトウェア・デバイス・ドライバ
を含める。改変された層2は擬似デバイス・ドライバ層
に対してコマンドを発行して、各リンクに対応するデバ
イスを指定する。関連するトランクはトランクIDによ
りソフトウェア的に識別される。
スを割り当てることに加えて、本発明はレベル3アドレ
スも割り当てる。しかしながら、従来技術が各レベルに
イーサネット・アドレスに対して3つのインターネット
・アドレスを必要とするのに対して(図4B)、本発明
は単一のレベルにアドレスを備えた複数の物理リンクに
対する単一のレベル3アドレスによって機能する(図4
A)。このようにして、複数のレベルにリンケージ(な
いし、サブリンク)をネットワーク・モデル内の層3以
上の層に対して単一の仮想リンクとして表すことができ
る。ホストないしサーバ側の層2を改変して、強化され
た構成機能によってソフトウェア・デバイス・ドライバ
を含める。改変された層2は擬似デバイス・ドライバ層
に対してコマンドを発行して、各リンクに対応するデバ
イスを指定する。関連するトランクはトランクIDによ
りソフトウェア的に識別される。
【0061】従来技術の図4Bを再度参照すると、N本
のサブリンク(たとえば、A、B、...N)の各々は
レベル3において異なるサブリンクIPアドレスを有し
ている。N=5のリンクがある場合には、5つの異なる
レベル3サブリンクIPアドレスが必要とされる。ホス
ト・サーバ10がデータをクライアント10’(また
は、その他の機器)に送ることを望んでいる場合、サー
バ10はクライアント10’が割り当てられている特定
のリンクに対応した適切なIPサブリンク・アドレスを
指定する必要がある。それ故、サーバ10がクライアン
ト10’を指定するために、IPレベル3のサーバ10
はホストIDおよびネットワークIDを有している一意
のIPアドレスを指定する。上述したように、ネットワ
ーク・アドミニストレータがネットワークを構成した場
合、クライアント10’に割り当てられたネットワーク
・レベルIDはクライアント10’に関連付けられたI
Pレベル・アドレスと同じ物となるが、これは関連付け
られた物理リンクがこのクライアントに拘束されている
からである。対照的に、図4Aに示すように、層3およ
び2に及ぶ単一の仮想リンクは複数の下位レベルリンク
を表すことができる。
のサブリンク(たとえば、A、B、...N)の各々は
レベル3において異なるサブリンクIPアドレスを有し
ている。N=5のリンクがある場合には、5つの異なる
レベル3サブリンクIPアドレスが必要とされる。ホス
ト・サーバ10がデータをクライアント10’(また
は、その他の機器)に送ることを望んでいる場合、サー
バ10はクライアント10’が割り当てられている特定
のリンクに対応した適切なIPサブリンク・アドレスを
指定する必要がある。それ故、サーバ10がクライアン
ト10’を指定するために、IPレベル3のサーバ10
はホストIDおよびネットワークIDを有している一意
のIPアドレスを指定する。上述したように、ネットワ
ーク・アドミニストレータがネットワークを構成した場
合、クライアント10’に割り当てられたネットワーク
・レベルIDはクライアント10’に関連付けられたI
Pレベル・アドレスと同じ物となるが、これは関連付け
られた物理リンクがこのクライアントに拘束されている
からである。対照的に、図4Aに示すように、層3およ
び2に及ぶ単一の仮想リンクは複数の下位レベルリンク
を表すことができる。
【0062】実用上、擬似ドライバを備えたソフトウェ
ア・コードが各パケットのヘッダを調べ、これらを特定
のデータグラムに関連付けようと試みることは困難であ
る。しかしながら、コードを実行するのに十分高速なプ
ロセッサを与えれば、これを実現することができる。各
ネットワーク・インタフェース、たとえばトランクの各
セグメントに関連付けられたMAC(ないし、IP)宛
先アドレスの小さいキャッシュを維持することで十分で
あると思われる。このようなキャッシュは、このような
コードを実行するソフトウェア・コードおよびプロセッ
サと同様に、ステーション10、10’、10”など
(図1A参照)のいずれかで維持することができる。
ア・コードが各パケットのヘッダを調べ、これらを特定
のデータグラムに関連付けようと試みることは困難であ
る。しかしながら、コードを実行するのに十分高速なプ
ロセッサを与えれば、これを実現することができる。各
ネットワーク・インタフェース、たとえばトランクの各
セグメントに関連付けられたMAC(ないし、IP)宛
先アドレスの小さいキャッシュを維持することで十分で
あると思われる。このようなキャッシュは、このような
コードを実行するソフトウェア・コードおよびプロセッ
サと同様に、ステーション10、10’、10”など
(図1A参照)のいずれかで維持することができる。
【0063】それ故、IP層が擬似ドライバにパケット
を渡した場合、擬似ドライバはキャッシュを調べて、最
近、パケットを関連する宛先アドレス(「DA」)へ送
信したかどうかを判断する。送信している場合、擬似ド
ライバは最後のパケットをDAに待ち行列化するのに使
用されたのと同じインタフェースに待ち行列化する。こ
のDAへ最近伝送が行われていない場合、擬似ドライバ
はパケットを、最も空の(最もすいている)送信待ち行
列、または次に利用できる待ち行列のいずれかに、たと
えばラウンド・ロビン形態で待ち行列化することができ
る。選択した待ち行列にかかわりなく、擬似ドライバは
待ち行列に対するキャッシュを新しいDAによって更新
しなければならない。
を渡した場合、擬似ドライバはキャッシュを調べて、最
近、パケットを関連する宛先アドレス(「DA」)へ送
信したかどうかを判断する。送信している場合、擬似ド
ライバは最後のパケットをDAに待ち行列化するのに使
用されたのと同じインタフェースに待ち行列化する。こ
のDAへ最近伝送が行われていない場合、擬似ドライバ
はパケットを、最も空の(最もすいている)送信待ち行
列、または次に利用できる待ち行列のいずれかに、たと
えばラウンド・ロビン形態で待ち行列化することができ
る。選択した待ち行列にかかわりなく、擬似ドライバは
待ち行列に対するキャッシュを新しいDAによって更新
しなければならない。
【0064】ここで、サーバが1つだけのクライアント
と通信する縮退の場合を検討する。本発明もこのクライ
アントに対するすべてのパケットが同じインタフェース
を、それ故、トランクの同じセグメントを通るようにす
る。負荷平衡が達成され、本発明は非縮退の場合の方が
良好に機能する。IPとネットワーク・ドライバの間の
異なるDAへのパケットのインターリーブ度が所与のマ
ルチプロセッサ・サーバ内のプロセッサの数と同じ程度
であると想定できることを条件として、パケットの規則
的な送付が確保される。手引きとして、キャッシュの深
さは所与のサーバ内のプロセッサの数の約2倍でなけれ
ばならない。もちろん、キャッシュ深さが大きくなる
と、キャッシュの更新が若干やりやすくなる。実際に
は、最適なキャッシュ深さ値、ならびにキャッシュされ
る層2および層3のアドレスの最適な分配量がある。
と通信する縮退の場合を検討する。本発明もこのクライ
アントに対するすべてのパケットが同じインタフェース
を、それ故、トランクの同じセグメントを通るようにす
る。負荷平衡が達成され、本発明は非縮退の場合の方が
良好に機能する。IPとネットワーク・ドライバの間の
異なるDAへのパケットのインターリーブ度が所与のマ
ルチプロセッサ・サーバ内のプロセッサの数と同じ程度
であると想定できることを条件として、パケットの規則
的な送付が確保される。手引きとして、キャッシュの深
さは所与のサーバ内のプロセッサの数の約2倍でなけれ
ばならない。もちろん、キャッシュ深さが大きくなる
と、キャッシュの更新が若干やりやすくなる。実際に
は、最適なキャッシュ深さ値、ならびにキャッシュされ
る層2および層3のアドレスの最適な分配量がある。
【0065】いくつかの交換機負荷平衡機構を使用し
て、パケットをトランクへ送ることができる。ここで、
次の負荷平衡ガイドラインのセットが交換機サーバ間ト
ランク(たとえば、図2A)、および交換機間トランク
(たとえば、図2B)に適用できる、交換機などのネッ
トワークDTEの間での負荷平衡を検討する。これらの
ガイドラインは交換機の挙動を従来のブリッジ・ガイド
ラインと一致させることを目的としている。ガイドライ
ンは次の通りである。 1.フレームの不規則化が所与のMAC送信元と宛先の
間の所与の優先レベルに対して生じてはならない。 2.フレームの重複が生じてはならない。 3.負荷平衡はMAC層上で動作するプロトコルに対し
て透過的でなければならない。
て、パケットをトランクへ送ることができる。ここで、
次の負荷平衡ガイドラインのセットが交換機サーバ間ト
ランク(たとえば、図2A)、および交換機間トランク
(たとえば、図2B)に適用できる、交換機などのネッ
トワークDTEの間での負荷平衡を検討する。これらの
ガイドラインは交換機の挙動を従来のブリッジ・ガイド
ラインと一致させることを目的としている。ガイドライ
ンは次の通りである。 1.フレームの不規則化が所与のMAC送信元と宛先の
間の所与の優先レベルに対して生じてはならない。 2.フレームの重複が生じてはならない。 3.負荷平衡はMAC層上で動作するプロトコルに対し
て透過的でなければならない。
【0066】負荷平衡手法の1つはすべてのトランク・
セグメントの使用状態を等しくすることにより、高速な
リンクをエミュレートすることである。たとえば、対応
する出力待ち行列をセグメントの使用度の尺度として使
用する。リンクがフロー制御を備えていることを条件と
して、出力待ち行列の長さはセグメント利用度に関する
良好な2点間プロキシとなる。フロー制御を行わない場
合、受信待ち行列の他端におけるパケットの損失のた
め、高いセグメント負荷は必ずしも出力待ち行列の状態
を反映しないものとなる。
セグメントの使用状態を等しくすることにより、高速な
リンクをエミュレートすることである。たとえば、対応
する出力待ち行列をセグメントの使用度の尺度として使
用する。リンクがフロー制御を備えていることを条件と
して、出力待ち行列の長さはセグメント利用度に関する
良好な2点間プロキシとなる。フロー制御を行わない場
合、受信待ち行列の他端におけるパケットの損失のた
め、高いセグメント負荷は必ずしも出力待ち行列の状態
を反映しないものとなる。
【0067】しかしながら、どのセグメントをパケット
ごとに使用するかを決定するためだけに待ち行列の長さ
を使用すると、フレームが不規則化し、上記の最初のガ
イドラインに違反することになる。しかしながら、セグ
メントの判定をパケットの送信元アドレスの関数とし
て、あるいはパケットの到着ポートの関数としてだけ行
った場合、最初のガイドラインは常に満たされる。この
手法はしかしながら、トランクの有効性がトラフィック
送信元の分布によって決まる静的負荷並行機能を与え
る。一方、多数のトラフィック送信元は認容できる一様
な分布を有している結果を生じることとなる。しかし、
他方において、そのマッピング機能がかなりの量のトラ
フィックを同じセグメントへ送り、システムの輻湊を増
進する構成が生じることがある。
ごとに使用するかを決定するためだけに待ち行列の長さ
を使用すると、フレームが不規則化し、上記の最初のガ
イドラインに違反することになる。しかしながら、セグ
メントの判定をパケットの送信元アドレスの関数とし
て、あるいはパケットの到着ポートの関数としてだけ行
った場合、最初のガイドラインは常に満たされる。この
手法はしかしながら、トランクの有効性がトラフィック
送信元の分布によって決まる静的負荷並行機能を与え
る。一方、多数のトラフィック送信元は認容できる一様
な分布を有している結果を生じることとなる。しかし、
他方において、そのマッピング機能がかなりの量のトラ
フィックを同じセグメントへ送り、システムの輻湊を増
進する構成が生じることがある。
【0068】好ましい手法は動的なマッピング機能を実
現するとともに、フレームの規則性を維持することであ
る。この手法はこの機能の変化が出力待ち行列の遷移時
間よりも遅く生じることを想定している。たとえば、所
与の送信元アドレスに対するマッピングを、送信元アド
レスを有する最初のパケットを調べるときに決定するこ
とができる。結局、送信元アドレスが十分な期間の間見
えなくなった後、マッピングをエージングすることがで
きる。
現するとともに、フレームの規則性を維持することであ
る。この手法はこの機能の変化が出力待ち行列の遷移時
間よりも遅く生じることを想定している。たとえば、所
与の送信元アドレスに対するマッピングを、送信元アド
レスを有する最初のパケットを調べるときに決定するこ
とができる。結局、送信元アドレスが十分な期間の間見
えなくなった後、マッピングをエージングすることがで
きる。
【0069】マッピング機能は送信元アドレスと着信ポ
ートの両方を考慮して、異常状態の数を少なくすること
が好ましい。たとえば、トラフィックが特定の入力ポー
トによって空間的に左右される場合、送信元アドレスを
考慮することはそのトラフィックを広げるのを助成す
る。逆に、着信ポートを考慮することは、特に2つ以上
のトランクが交換機に存在している場合、少ない数のア
ドレス(たとえば、サーバまたはルータ)によって左右
されるトラフィックを分散できるようにする。
ートの両方を考慮して、異常状態の数を少なくすること
が好ましい。たとえば、トラフィックが特定の入力ポー
トによって空間的に左右される場合、送信元アドレスを
考慮することはそのトラフィックを広げるのを助成す
る。逆に、着信ポートを考慮することは、特に2つ以上
のトランクが交換機に存在している場合、少ない数のア
ドレス(たとえば、サーバまたはルータ)によって左右
されるトラフィックを分散できるようにする。
【0070】トランク化されたポートのセットを、セグ
メントごとに別々の待ち行列によってこれらが単一のポ
ートであるかのように取り扱い、すべての送信を待ち行
列の1つのみに行うようにして、フレームの重複を防止
する。さらに、MACアドレスを認識、フレームのフィ
ルタリング、該当するスパニング・ツリー・プロトコル
の実行などのその他のIEEE802.1(d)の機能
に対しても、トランク化ポートをこれらが単一のポート
であるかのように取り扱う。
メントごとに別々の待ち行列によってこれらが単一のポ
ートであるかのように取り扱い、すべての送信を待ち行
列の1つのみに行うようにして、フレームの重複を防止
する。さらに、MACアドレスを認識、フレームのフィ
ルタリング、該当するスパニング・ツリー・プロトコル
の実行などのその他のIEEE802.1(d)の機能
に対しても、トランク化ポートをこれらが単一のポート
であるかのように取り扱う。
【0071】上記の説明はMAC層情報を使用した負荷
平衡を中心としたものであった。ネットワーク交換機が
高位レベルのプロトコル情報を順守して、負荷平衡の判
断をよりよくすることもできるが、第3の規則(プロト
コルの透過性に関する)を守ることが条件となる。透過
性とは、プロトコルが交換機の負荷平衡機能を意識せ
ず、これと明示的に協働しないことをいう。さらに、交
換機によってサポートも、理解もされていないプロトコ
ルに対するコネクティビティも保証しなければならな
い。
平衡を中心としたものであった。ネットワーク交換機が
高位レベルのプロトコル情報を順守して、負荷平衡の判
断をよりよくすることもできるが、第3の規則(プロト
コルの透過性に関する)を守ることが条件となる。透過
性とは、プロトコルが交換機の負荷平衡機能を意識せ
ず、これと明示的に協働しないことをいう。さらに、交
換機によってサポートも、理解もされていないプロトコ
ルに対するコネクティビティも保証しなければならな
い。
【0072】パケットごとに層3のヘッダを調べる交換
機に対する高位レベルの情報に基づいて、負荷平衡を実
施するのが通常のやり方である。たとえば、VLAN構
成において、交換機は層3のヘッダを1回調べ、パケッ
ト処理に対応する層2の情報を使用することができる。
ただし、本出願人はこのような手法の潜在的な負荷平衡
パフォーマンスを完全には検討していない。
機に対する高位レベルの情報に基づいて、負荷平衡を実
施するのが通常のやり方である。たとえば、VLAN構
成において、交換機は層3のヘッダを1回調べ、パケッ
ト処理に対応する層2の情報を使用することができる。
ただし、本出願人はこのような手法の潜在的な負荷平衡
パフォーマンスを完全には検討していない。
【0073】上記の説明はセグメントの間での均等な平
衡を向上させるマッピング機能を与えることを対象とし
たものであるが、マッピング機能の対象を他のものとす
ることもできる。たとえば、マッピング機能は優先順位
に従い、あるいはトラフィックが帯域幅で管理されてい
るかどうかに従い、あるいは最善の条件に従ってトラフ
ィックを分離することができる。優先順位ベースの手法
は、さまざまの優先順位の間でのパケットの順序を保存
する必要がないため、上記の最初の規則(フレームの不
規則化がない)によってサポートされる。VLANタグ
を使用している場合と同様、優先順位情報がMACレベ
ルで十分に定義されている場合、優先順位ベースの手法
はきわめて直接的なものとなる。
衡を向上させるマッピング機能を与えることを対象とし
たものであるが、マッピング機能の対象を他のものとす
ることもできる。たとえば、マッピング機能は優先順位
に従い、あるいはトラフィックが帯域幅で管理されてい
るかどうかに従い、あるいは最善の条件に従ってトラフ
ィックを分離することができる。優先順位ベースの手法
は、さまざまの優先順位の間でのパケットの順序を保存
する必要がないため、上記の最初の規則(フレームの不
規則化がない)によってサポートされる。VLANタグ
を使用している場合と同様、優先順位情報がMACレベ
ルで十分に定義されている場合、優先順位ベースの手法
はきわめて直接的なものとなる。
【0074】上記の説明から、交換機またはその他の機
器の挙動が概念上、単純な規則の組によって左右される
ことがわかる。特定の交換機アーキテクチャを考慮した
が、特定のサーバの負荷平衡挙動と無関係に本発明を実
施することができる。
器の挙動が概念上、単純な規則の組によって左右される
ことがわかる。特定の交換機アーキテクチャを考慮した
が、特定のサーバの負荷平衡挙動と無関係に本発明を実
施することができる。
【0075】イーサネット互換ネットワークのサーバ側
の層2レベル内で、本発明を実施することをここで検討
する。以下の説明において、「hme」という用語は図
3および図4Aに示すトランク化擬似ドライバ層150
に含まれているもののようなデバイス・ドライバを指す
ものとする。好ましい実施の形態において、hmeデバ
イスは、Sun Microsystems,Inc.
が開発している多くのシステムを含む、いくつかのハー
ドウェア・プラットフォームに10/100Mbpsの
イーサネット互換インタフェースを備えている。これら
の各種のプラットフォームにおけるhmeデバイスは同
じhmeデバイス・ドライバ・バイナリによって制御さ
れるのが好ましい。hmeデバイス・ドライバおよびト
ランク化についての説明を行うとともに、トランクに必
要とされるこのようなアーキテクチャ上の変更およびh
meドライバ・ソフトウェアの変更を複数のhmeデバ
イスと共に説明する。
の層2レベル内で、本発明を実施することをここで検討
する。以下の説明において、「hme」という用語は図
3および図4Aに示すトランク化擬似ドライバ層150
に含まれているもののようなデバイス・ドライバを指す
ものとする。好ましい実施の形態において、hmeデバ
イスは、Sun Microsystems,Inc.
が開発している多くのシステムを含む、いくつかのハー
ドウェア・プラットフォームに10/100Mbpsの
イーサネット互換インタフェースを備えている。これら
の各種のプラットフォームにおけるhmeデバイスは同
じhmeデバイス・ドライバ・バイナリによって制御さ
れるのが好ましい。hmeデバイス・ドライバおよびト
ランク化についての説明を行うとともに、トランクに必
要とされるこのようなアーキテクチャ上の変更およびh
meドライバ・ソフトウェアの変更を複数のhmeデバ
イスと共に説明する。
【0076】大まかにいって、hmeデバイス・ドライ
バはデータ・リンク・プロバイダ・インタフェース
(「DLPI」)インタフェースを備えた2.x So
laris STREAMSベースのドライバであるこ
とが好ましい。好ましい実施の形態において、このドラ
イバはSun MicrosystemsのSバス・タ
イプ・プラットフォームに対するファスト・イーサネッ
ト・パラレル・ポートSCSI([FEPS])ASI
Cに基づき、またPCIプラットフォームに対するSu
n MicrosystemsのCheerioクラス
のASICに基づいてネットワーク・インタフェースを
制御して、MAC機能およびメディア・インデペンデン
ト・インタフェース(「MII」)トランシーバを確保
する。ドライバはnddコマンドを使用してドライバ構
成パラメータを設定/取得するioct1機能も備えて
いる。ドライバのソース・コードは以下のファイルから
なっている。usr/src/uts/sun/io/
hme.c−すべてのC機能を含む。usr/src/
uts/sun/sys/hme.h−ドライバに対す
るデータ構造化定義を含む。usr/src/uts/
sun/sys/hme_mac.h − conta
ins the definitions of th
e MAC (FEPS or Cheerio) A
SIC usr/src/uts/sun/sys/h
me_phy.h−MIIトランシーバの定義を含む。
バはデータ・リンク・プロバイダ・インタフェース
(「DLPI」)インタフェースを備えた2.x So
laris STREAMSベースのドライバであるこ
とが好ましい。好ましい実施の形態において、このドラ
イバはSun MicrosystemsのSバス・タ
イプ・プラットフォームに対するファスト・イーサネッ
ト・パラレル・ポートSCSI([FEPS])ASI
Cに基づき、またPCIプラットフォームに対するSu
n MicrosystemsのCheerioクラス
のASICに基づいてネットワーク・インタフェースを
制御して、MAC機能およびメディア・インデペンデン
ト・インタフェース(「MII」)トランシーバを確保
する。ドライバはnddコマンドを使用してドライバ構
成パラメータを設定/取得するioct1機能も備えて
いる。ドライバのソース・コードは以下のファイルから
なっている。usr/src/uts/sun/io/
hme.c−すべてのC機能を含む。usr/src/
uts/sun/sys/hme.h−ドライバに対す
るデータ構造化定義を含む。usr/src/uts/
sun/sys/hme_mac.h − conta
ins the definitions of th
e MAC (FEPS or Cheerio) A
SIC usr/src/uts/sun/sys/h
me_phy.h−MIIトランシーバの定義を含む。
【0077】当分野の技術者には、hmeドライバのデ
ータ構造および機能がさまざまな方法で実施できること
が理解されよう。これらの構造および機能の好ましいイ
ンプリメンテーションを以下で説明する。
ータ構造および機能がさまざまな方法で実施できること
が理解されよう。これらの構造および機能の好ましいイ
ンプリメンテーションを以下で説明する。
【0078】STREAMS構造のリンク・リスト /* * Per- Stream instance state information. * 各インスタンスはオープン時にdynamically
allocatedat(動的に割り振られ)()クロ
ーズ時に開放される()。各パーStreamインスタ
ンスはsb_hmepフィールドを使用して、多くても
1つのパーデバイス構造をポイントする。すべてのイン
スタンスはデバイス番号の少ない順に並べられたアクテ
ィブ・インスタンスの1つのリストにまとめてスレッド
化される。 */ struct hmestr { struct hmestr *sb_nextp; /* next in list */ queue_t *sb_rq; /* pointer to our read queue */ struct hme *sb_hmep; /* attacheddevice */ u_long sb_state; /*currentDLstate*/ u_long sb_sap; /*boundsap*/ u_long sb_flags; /*misc.flags*/ u_int sb_mccount; /*#enabledmulticastaddrs*/ struct ether_addr*sb_mctab; /*tableofmulti- castaddrs*/ u_long sb minor; /*minordevicenumber*/ kmutex t sb_lock; /*protecU this structure*/ }; /* *Linkedlistofactive (inuse) driverStreams. */ static struct hmestr *hmestrup=NULL;
allocatedat(動的に割り振られ)()クロ
ーズ時に開放される()。各パーStreamインスタ
ンスはsb_hmepフィールドを使用して、多くても
1つのパーデバイス構造をポイントする。すべてのイン
スタンスはデバイス番号の少ない順に並べられたアクテ
ィブ・インスタンスの1つのリストにまとめてスレッド
化される。 */ struct hmestr { struct hmestr *sb_nextp; /* next in list */ queue_t *sb_rq; /* pointer to our read queue */ struct hme *sb_hmep; /* attacheddevice */ u_long sb_state; /*currentDLstate*/ u_long sb_sap; /*boundsap*/ u_long sb_flags; /*misc.flags*/ u_int sb_mccount; /*#enabledmulticastaddrs*/ struct ether_addr*sb_mctab; /*tableofmulti- castaddrs*/ u_long sb minor; /*minordevicenumber*/ kmutex t sb_lock; /*protecU this structure*/ }; /* *Linkedlistofactive (inuse) driverStreams. */ static struct hmestr *hmestrup=NULL;
【0079】 hme構造のリンク・リスト /* *HMEDeviceChannelinstancestateinformation. *Eachinstanceisdynamicallyallocatedonfirstattach. */ struct hme{ struct hme *hme_nextp; /*nextinalinkedlist*/ dev_info_t *hme_dip; /*associateddev_info*/ /*data- structurestocontrolthetransceiver,MACandtostorestats*/ ---- ---- ---- } ; すべてのhmeインスタンス・データ構造はhme n
extpフィールドを使用してまとめてリンクされる。
このリストの先頭へのポインタは次の通りである。 staticstructhme*hmeup*=NU
LL;
extpフィールドを使用してまとめてリンクされる。
このリストの先頭へのポインタは次の通りである。 staticstructhme*hmeup*=NU
LL;
【0080】ドライバの機能 ドライバの機能と構成
を以下に示す。 構成 Solaris2.xカーネルにおいてド
ライバを構成する機能は次のようになることが好まし
い。 hmeinfo −デバイスに関する情報を返す。 hmeidentify −デバイスの名前を「hme」または「SUNW,hm
s」として識別する。 hmeattach −デバイス・インスタンスに対してhme構造を割り振
り、構成パラメータによって初期化し、またデバイスに
対するhme割込みハンドラ機能を登録する。 hmedetach, −デバイス・インスタンスに割り振られたhme構造お
よびその他のメモリを割振り解除し、デバイスに対する
割込みハンドラを登録解除する。
を以下に示す。 構成 Solaris2.xカーネルにおいてド
ライバを構成する機能は次のようになることが好まし
い。 hmeinfo −デバイスに関する情報を返す。 hmeidentify −デバイスの名前を「hme」または「SUNW,hm
s」として識別する。 hmeattach −デバイス・インスタンスに対してhme構造を割り振
り、構成パラメータによって初期化し、またデバイスに
対するhme割込みハンドラ機能を登録する。 hmedetach, −デバイス・インスタンスに割り振られたhme構造お
よびその他のメモリを割振り解除し、デバイスに対する
割込みハンドラを登録解除する。
【0081】STREAMSの動作 STREAMSインタフェース動作を実施する機能は次
のようなものであることが好ましい。インタフェース: hmeopen −hmestr構造を割振ることによりSTREAMを
オープンし、STREAMをDL_UNATTACHE
D状態にする。 hmeclose −STREAMに対するhmestr構造およびすべて
のその他のメモリを割振り解除することによりSTRE
AMをクローズする。 hmewput −上位レベルのモジュールによって呼び出され、ファス
トパス動作に対するDLPIプリミティブないしM_D
ATAメッセージであるSTREAMSメッセージ、ま
たは特別なSTREAMSメッセージを渡す。M_DA
TAメッセージはhmestart()機能を呼び出す
ことにより、直ちに伝送される:DLPIプリミティブ
はhme書込み待ち行列に待ち行列化されて、書込み待
ち行列がサービスに使用可能とされたときに、サービス
機能hmewsrv()によって処理される。 hmewsrv −STREAMSスケジューラによって呼び出されて、
hme待ち行列に待ち行列化されたメッセージを処理す
る。この待ち行列はM_PROTOタイプのメッセー
ジ、および送信記述子リング内で自由エントリを待機し
ている送信メッセージを含んでいる。hmestart
()を呼び出してパケットを送信し、hmeproto
()を呼び出してM_PROTOタイプ・メッセージを
処理する。 hmeioctl −上位レベルのモジュールによって呼び出されて、ロウ
−モード、ファストパス、ならびにndd setおよ
びget ioctlsを処理する。
のようなものであることが好ましい。インタフェース: hmeopen −hmestr構造を割振ることによりSTREAMを
オープンし、STREAMをDL_UNATTACHE
D状態にする。 hmeclose −STREAMに対するhmestr構造およびすべて
のその他のメモリを割振り解除することによりSTRE
AMをクローズする。 hmewput −上位レベルのモジュールによって呼び出され、ファス
トパス動作に対するDLPIプリミティブないしM_D
ATAメッセージであるSTREAMSメッセージ、ま
たは特別なSTREAMSメッセージを渡す。M_DA
TAメッセージはhmestart()機能を呼び出す
ことにより、直ちに伝送される:DLPIプリミティブ
はhme書込み待ち行列に待ち行列化されて、書込み待
ち行列がサービスに使用可能とされたときに、サービス
機能hmewsrv()によって処理される。 hmewsrv −STREAMSスケジューラによって呼び出されて、
hme待ち行列に待ち行列化されたメッセージを処理す
る。この待ち行列はM_PROTOタイプのメッセー
ジ、および送信記述子リング内で自由エントリを待機し
ている送信メッセージを含んでいる。hmestart
()を呼び出してパケットを送信し、hmeproto
()を呼び出してM_PROTOタイプ・メッセージを
処理する。 hmeioctl −上位レベルのモジュールによって呼び出されて、ロウ
−モード、ファストパス、ならびにndd setおよ
びget ioctlsを処理する。
【0082】DLPIの動作 以下の機能をDLPIプリミティブを処理するのに使用
する。 hmeproto −DLPIプリミティブ・メッセージを処理するために
適切なルーチンを呼び出し、送信すべきデータを含んで
いるDL_UNITDATA_REQタイプ・メッセー
ジを処理するためにhmeudreq()機能を呼び出
す。 hmeareq −DL_ATTACH_REQプリミティブを処理する
が、これはSTREAMに対するhmestr構造のs
b_hmepフィールドを初期化して、指定されたhm
eデバイス・インスタンスのhme構造をポイントす
る。また、STREAMをDL_ATTACHED状態
にする。 hmedreq −DL_DETACH_REQプリミティブを処理し、
STREAMを関連するhmeデバイスから切り離し、
STREAMをDL_UNATTACHED状態にす
る。 hmebreq −DL_BIND_REQプリミティブを処理し、イー
サネット・ヘッダのタイプ・フィールドである、指定さ
れたDLSAP(データ・リンク・サービス・アクセス
・ポイント)値にSTREAMを関連付け、STREA
MをDL_IDLE状態とし、パケットの送信および受
信を可能とする。 hmeubreq −DL_UNBIND_REQプリミティブを処理し、
STREAMに関連付けられたDLSAPを除去し、S
TREAM状態をDL_UNBIND_REQにする。 hmeireq −DL_INFO_REQプリミティブを処理し、デバ
イス・タイプ、イーサネット・アドレス、ブロードキャ
スト・アドレスなどのデバイス情報を返す。 hmeponreq −DL_PROMISCON_REQプリミティブを処
理して、STREAMがすべてのパケット(DL_PR
OMISC_PHYSモード)、すべてのマルチキャス
ト・パケット(DL_PROMISC_MULTIモー
ド)、またはすべてのSAP値(DL_PROMISC
_MULTIモード)のいずれかを受信できるようにす
る。 hmepoffreq −DL_PROMISCOFF_REQプリミティブを
処理して、指定されたpromiscuousモードを
オフにする。 hmeemreq −DL_ENABMULTI_REQプリミティブを処
理して、指定されたマルチキャスト・アドレスの受信を
可能とする。 hmedmreq −DL_DISABMULTI_REQプリミティブを
処理して、指定されたマルチキャスト・アドレスの受信
を不可能とする。 hmepareq −DL_PHYS_ADDR_REQプリミティブを処
理して、ファクトリ・アドレス(DL_FACT_PH
YS_ADDRが要求された場合)または現行アドレス
(DL_CURR_PHYS_ADDRが要求された場
合)のいずれかを返す。 hmespareq −DL_SET_PHYS_ADDR_REQプリミテ
ィブを処理して、指定されたイーサネット・アドレスを
セットする。 hmeudreq −DL_UNITDATA_REQプリミティブを処理
して、メッセージ内のデータをイーサネット・パケット
にパッケージし、hmestart()機能を呼び出し
て、パケットを送信する。
する。 hmeproto −DLPIプリミティブ・メッセージを処理するために
適切なルーチンを呼び出し、送信すべきデータを含んで
いるDL_UNITDATA_REQタイプ・メッセー
ジを処理するためにhmeudreq()機能を呼び出
す。 hmeareq −DL_ATTACH_REQプリミティブを処理する
が、これはSTREAMに対するhmestr構造のs
b_hmepフィールドを初期化して、指定されたhm
eデバイス・インスタンスのhme構造をポイントす
る。また、STREAMをDL_ATTACHED状態
にする。 hmedreq −DL_DETACH_REQプリミティブを処理し、
STREAMを関連するhmeデバイスから切り離し、
STREAMをDL_UNATTACHED状態にす
る。 hmebreq −DL_BIND_REQプリミティブを処理し、イー
サネット・ヘッダのタイプ・フィールドである、指定さ
れたDLSAP(データ・リンク・サービス・アクセス
・ポイント)値にSTREAMを関連付け、STREA
MをDL_IDLE状態とし、パケットの送信および受
信を可能とする。 hmeubreq −DL_UNBIND_REQプリミティブを処理し、
STREAMに関連付けられたDLSAPを除去し、S
TREAM状態をDL_UNBIND_REQにする。 hmeireq −DL_INFO_REQプリミティブを処理し、デバ
イス・タイプ、イーサネット・アドレス、ブロードキャ
スト・アドレスなどのデバイス情報を返す。 hmeponreq −DL_PROMISCON_REQプリミティブを処
理して、STREAMがすべてのパケット(DL_PR
OMISC_PHYSモード)、すべてのマルチキャス
ト・パケット(DL_PROMISC_MULTIモー
ド)、またはすべてのSAP値(DL_PROMISC
_MULTIモード)のいずれかを受信できるようにす
る。 hmepoffreq −DL_PROMISCOFF_REQプリミティブを
処理して、指定されたpromiscuousモードを
オフにする。 hmeemreq −DL_ENABMULTI_REQプリミティブを処
理して、指定されたマルチキャスト・アドレスの受信を
可能とする。 hmedmreq −DL_DISABMULTI_REQプリミティブを
処理して、指定されたマルチキャスト・アドレスの受信
を不可能とする。 hmepareq −DL_PHYS_ADDR_REQプリミティブを処
理して、ファクトリ・アドレス(DL_FACT_PH
YS_ADDRが要求された場合)または現行アドレス
(DL_CURR_PHYS_ADDRが要求された場
合)のいずれかを返す。 hmespareq −DL_SET_PHYS_ADDR_REQプリミテ
ィブを処理して、指定されたイーサネット・アドレスを
セットする。 hmeudreq −DL_UNITDATA_REQプリミティブを処理
して、メッセージ内のデータをイーサネット・パケット
にパッケージし、hmestart()機能を呼び出し
て、パケットを送信する。
【0083】ハードウェアの初期設定 hmeinit −ハードウェア(MACおよびトランシーバ)を初期設
定し、送信用のソフトウェア・リソースを初期設定し、
パケットを受信する。デバイスがSTREAMに接続さ
れたときにまず呼び出され、また何らかのハードウェア
のリプログラミングが必要となったときに呼び出され
て、たとえば、promiscuousモードを使用可
能/使用不能とし、マルチキャスト受信を使用可能/使
用不能とし、リンク速度およびモードなどを変更する。
また、割込みハンドラから呼び出されて、致命的エラー
からの回復を行う。 hmouninit −呼び出されて、ハードウェアがパケットを受信および
送信するのを不能とし、かつ割込みを不能とする。 hme_reset_transceiver −hmeinit()機能によって呼び出されて、トラ
ンシーバをリセットする。 hme_try_speed −hmeinit()機能によって呼び出されて、自動
ネゴシエーションを使用してリンクを立ち上げる。 hme_force_speed −hmeinit()機能によって呼び出されて、リン
クを指定された速度およびモード(強制速度およびモー
ド)で立ち上げる。 hme_check_link −timeout()インタフェースを使用して30秒
ごとに呼び出されて、トランシーバをチェックする。h
meデバイス・ドライバはRJ45コネクタに接続され
たオンボード・トランシーバまたはMII(メディア・
インデペンデント・インタフェース)コネクタに接続さ
れた外部トランシーバを使用する製品をサポートしてい
る。この機能はトランシーバの変更をポーリングし、ト
ランシーバが変更されている場合には、hmeinit
()機能を呼び出して、MACおよびトランシーバを再
初期設定する。
定し、送信用のソフトウェア・リソースを初期設定し、
パケットを受信する。デバイスがSTREAMに接続さ
れたときにまず呼び出され、また何らかのハードウェア
のリプログラミングが必要となったときに呼び出され
て、たとえば、promiscuousモードを使用可
能/使用不能とし、マルチキャスト受信を使用可能/使
用不能とし、リンク速度およびモードなどを変更する。
また、割込みハンドラから呼び出されて、致命的エラー
からの回復を行う。 hmouninit −呼び出されて、ハードウェアがパケットを受信および
送信するのを不能とし、かつ割込みを不能とする。 hme_reset_transceiver −hmeinit()機能によって呼び出されて、トラ
ンシーバをリセットする。 hme_try_speed −hmeinit()機能によって呼び出されて、自動
ネゴシエーションを使用してリンクを立ち上げる。 hme_force_speed −hmeinit()機能によって呼び出されて、リン
クを指定された速度およびモード(強制速度およびモー
ド)で立ち上げる。 hme_check_link −timeout()インタフェースを使用して30秒
ごとに呼び出されて、トランシーバをチェックする。h
meデバイス・ドライバはRJ45コネクタに接続され
たオンボード・トランシーバまたはMII(メディア・
インデペンデント・インタフェース)コネクタに接続さ
れた外部トランシーバを使用する製品をサポートしてい
る。この機能はトランシーバの変更をポーリングし、ト
ランシーバが変更されている場合には、hmeinit
()機能を呼び出して、MACおよびトランシーバを再
初期設定する。
【0084】パケットの送信およびパケットの受信 hmestart −M_DATAタイプ・メッセージ(ファストパス)に
対するhmewput()およびDL_UNITDAT
Aプリミティブを備えたM_PROTOメッセージに対
するhmeudreq()によって呼び出されて、イー
サネット・パケットを送信する。また、hmerecl
aim()機能を呼び出して、ある数を超えた(たとえ
ば、>64)数の記述子を再利用しなければならない場
合には、送信リソースを解除する。自由な送信記述子が
ない場合にはメッセージはSTREAMS書込み待ち行
列の先頭に待ち行列化され、待ち行列に対するフラグを
セットして、自由な送信記述子が利用可能となった場合
に、待ち行列を使用可能とし、再度処理するためにスケ
ジュールする。 hmeintr −このルーチンはFEPS/チェリオ状態レジスタを読
み取り、エラー、パケットの受信および送信などの事象
に関するチェックを行う。通常、送信割込みを使用不能
とされる。致命的エラーの場合には、状態を更新するた
め、およびhmeinit()機能を呼び出して、ハー
ドウェアおよびソフトウェア・データ構造を再初期設定
するために、hme_fatal_error()を呼
び出す。非致命的エラーの場合には、hme_non
fatal_err()機能を呼び出す。 −パケット送信事象が報告された場合には、hmere
claim()機能を呼び出して、送信記述子および送
信パケット・バッファを解除する。 −パケット受信事象が報告された場合には、ループ内の
hmeread()機能を呼び出して、各受信パケット
を処理する。 hmereclaim −この機能は最後のパケットが送信されるまで、最後に
再利用された記述子から送信記述子リング内をループす
る。送信された各記述子に送信パケット・バッファを解
除し、送信された各パケットについて送信パケット・カ
ウントを更新する。書き込み待ち行列中のいずれかのパ
ケットが自由な送信記述子エントリを待っている場合に
は、STREAMSスケジューラによる処理のために、
書込みSTREAMS待ち行列が使用可能とされる。 hmeread −自由なSTREAMSメッセージ・バッファが、受信
したパケットの変わりに受信記述子リング内のハードウ
ェアに割り振られ、ポストされる。自由なバッファがな
い場合には、受信データは廃棄され、バッファが受信記
述子リング内のハードウェアに再ポストされる。 −通常、1つのストリームだけがETHERTYPE_
IPにセットされたsb_sapフィールド値を備えた
IP層から開かれる。hme構造はこのようなストリー
ムの読み取り待ち行列をポイントするためのフィールド
hme_ipqを含んでいる。受信パケットのフィール
ド・タイプがETHERTYPE_IPである場合に
は、このパケットがIP処理のためその待ち行列へ送ら
れる。他の場合には、受信パケット・タイプ・フィール
ドがhmeデバイスに接続されているすべてのストリー
ムのsb_sapフィールドと比較され、パケットのコ
ピーがパケットを受信するのに適格なすべてのストリー
ムへ送られる。
対するhmewput()およびDL_UNITDAT
Aプリミティブを備えたM_PROTOメッセージに対
するhmeudreq()によって呼び出されて、イー
サネット・パケットを送信する。また、hmerecl
aim()機能を呼び出して、ある数を超えた(たとえ
ば、>64)数の記述子を再利用しなければならない場
合には、送信リソースを解除する。自由な送信記述子が
ない場合にはメッセージはSTREAMS書込み待ち行
列の先頭に待ち行列化され、待ち行列に対するフラグを
セットして、自由な送信記述子が利用可能となった場合
に、待ち行列を使用可能とし、再度処理するためにスケ
ジュールする。 hmeintr −このルーチンはFEPS/チェリオ状態レジスタを読
み取り、エラー、パケットの受信および送信などの事象
に関するチェックを行う。通常、送信割込みを使用不能
とされる。致命的エラーの場合には、状態を更新するた
め、およびhmeinit()機能を呼び出して、ハー
ドウェアおよびソフトウェア・データ構造を再初期設定
するために、hme_fatal_error()を呼
び出す。非致命的エラーの場合には、hme_non
fatal_err()機能を呼び出す。 −パケット送信事象が報告された場合には、hmere
claim()機能を呼び出して、送信記述子および送
信パケット・バッファを解除する。 −パケット受信事象が報告された場合には、ループ内の
hmeread()機能を呼び出して、各受信パケット
を処理する。 hmereclaim −この機能は最後のパケットが送信されるまで、最後に
再利用された記述子から送信記述子リング内をループす
る。送信された各記述子に送信パケット・バッファを解
除し、送信された各パケットについて送信パケット・カ
ウントを更新する。書き込み待ち行列中のいずれかのパ
ケットが自由な送信記述子エントリを待っている場合に
は、STREAMSスケジューラによる処理のために、
書込みSTREAMS待ち行列が使用可能とされる。 hmeread −自由なSTREAMSメッセージ・バッファが、受信
したパケットの変わりに受信記述子リング内のハードウ
ェアに割り振られ、ポストされる。自由なバッファがな
い場合には、受信データは廃棄され、バッファが受信記
述子リング内のハードウェアに再ポストされる。 −通常、1つのストリームだけがETHERTYPE_
IPにセットされたsb_sapフィールド値を備えた
IP層から開かれる。hme構造はこのようなストリー
ムの読み取り待ち行列をポイントするためのフィールド
hme_ipqを含んでいる。受信パケットのフィール
ド・タイプがETHERTYPE_IPである場合に
は、このパケットがIP処理のためその待ち行列へ送ら
れる。他の場合には、受信パケット・タイプ・フィール
ドがhmeデバイスに接続されているすべてのストリー
ムのsb_sapフィールドと比較され、パケットのコ
ピーがパケットを受信するのに適格なすべてのストリー
ムへ送られる。
【0085】上述したように、トランク化イーサネット
・プロトコルにおける本発明のインプリメンテーション
は本明細書において上述した9つの規則を厳守する必要
がある。
・プロトコルにおける本発明のインプリメンテーション
は本明細書において上述した9つの規則を厳守する必要
がある。
【0086】本発明の実施形態の1つにおいて、トラン
ク化はSTREAMS多重化擬似ドライバ、たとえばソ
フトウェアのみを使用し、トランクのメンバーであるp
lumbs hmeデバイスをその下に配する。しかし
ながら、この手法はhmeドライバにある種の変更を必
要とし、擬似ドライバとhmeドライバの間の通信にS
TREAMS putnext()機能を使用するとい
うオーバヘッドを伴う。
ク化はSTREAMS多重化擬似ドライバ、たとえばソ
フトウェアのみを使用し、トランクのメンバーであるp
lumbs hmeデバイスをその下に配する。しかし
ながら、この手法はhmeドライバにある種の変更を必
要とし、擬似ドライバとhmeドライバの間の通信にS
TREAMS putnext()機能を使用するとい
うオーバヘッドを伴う。
【0087】より好ましい実施の形態はhmeドライバ
そのものを改変して、ND SETおよびND_GET
ioctlインタフェースおよびnddコマンドを使
用するトランク構成をサポートする。この実施の形態
は、擬似ドライバにおける多くのコードの重複をなく
し、付加的なSTREAMS層のオーバヘッドを回避す
るので好ましい。
そのものを改変して、ND SETおよびND_GET
ioctlインタフェースおよびnddコマンドを使
用するトランク構成をサポートする。この実施の形態
は、擬似ドライバにおける多くのコードの重複をなく
し、付加的なSTREAMS層のオーバヘッドを回避す
るので好ましい。
【0088】トランクでのシステムのブートはfcod
e内のブート・コードがトランクを取り扱わないので、
行えない。コードはブート要求をリンクの1つへ伝送す
ることができるが、交換機が複数のリンク上で応答を送
った場合、これはこれらすべてのパケットを処理できな
い。
e内のブート・コードがトランクを取り扱わないので、
行えない。コードはブート要求をリンクの1つへ伝送す
ることができるが、交換機が複数のリンク上で応答を送
った場合、これはこれらすべてのパケットを処理できな
い。
【0089】トランクを構成する際に、hmeデバイス
の1つがトランクヘッドとして識別され、他はトランク
メンバーとして識別される。hme1、hme2、hm
e3、およびhme4という、トランクとして構成され
ることになっている4つのhmeデバイスを考えてみ
る。これらのデバイスの各々は異なるローカルMACア
ドレスを持っていることができるが、同一のトランクの
一部となるためには、これらのデバイスのすべてを同一
のMACアドレスによって構成しなければならない。こ
れはデバイスの1つをトランクヘッドとして、他をトラ
ンクメンバーとして選択することにより、簡単に行われ
る。トランクヘッドのMACアドレスはすべての他のト
ランクメンバに対するMACアドレスとして選択でき
る。さらに、トランクヘッドのインスタンスの数は、デ
ータ転送のためにトランクにアクセスするために、ユー
ザ・プログラムおよび高位レベルのプロトコル・モジュ
ールによって使用され、他のトランクメンバーは何らか
のDLPIプロトコル動作のためにアクセスすることが
できない。たとえば、hme1がトランクヘッドとして
選択された場合、ユーザは/etc/hostnam
e.hme1ファイルを作成することとなり、その結
果、hme1インタフェースはシステムのブート・プロ
セス時のTCP/IPプロトコル・アクセスのために配
されることとなる。
の1つがトランクヘッドとして識別され、他はトランク
メンバーとして識別される。hme1、hme2、hm
e3、およびhme4という、トランクとして構成され
ることになっている4つのhmeデバイスを考えてみ
る。これらのデバイスの各々は異なるローカルMACア
ドレスを持っていることができるが、同一のトランクの
一部となるためには、これらのデバイスのすべてを同一
のMACアドレスによって構成しなければならない。こ
れはデバイスの1つをトランクヘッドとして、他をトラ
ンクメンバーとして選択することにより、簡単に行われ
る。トランクヘッドのMACアドレスはすべての他のト
ランクメンバに対するMACアドレスとして選択でき
る。さらに、トランクヘッドのインスタンスの数は、デ
ータ転送のためにトランクにアクセスするために、ユー
ザ・プログラムおよび高位レベルのプロトコル・モジュ
ールによって使用され、他のトランクメンバーは何らか
のDLPIプロトコル動作のためにアクセスすることが
できない。たとえば、hme1がトランクヘッドとして
選択された場合、ユーザは/etc/hostnam
e.hme1ファイルを作成することとなり、その結
果、hme1インタフェースはシステムのブート・プロ
セス時のTCP/IPプロトコル・アクセスのために配
されることとなる。
【0090】システムがブートされると(ローカル・デ
ィスクから、あるいは非トランク化ネットワーク・イン
タフェースを使用してネットワークによって)、カーネ
ルはすべてのネットワーク・インタフェースを通常の形
態で、ローカルMACアドレスがあれば、それのついた
個別のリンクとして構成する。カーネルの構成が完了し
た後、/sbin/initプロセスは/sbin/r
cSスクリプトを実行し、このスクリプトは/etc/
hostname.xxファイルが存在しているネット
ワーク・インタフェースを構成するための/etc/r
cS.d/S30rootusr.shスクリプト・フ
ァイルを実行する。トランクを構成するためのnddコ
マンドを/etc/rcS.dディレクトリ内のシェル
・スクリプトに入れ、ファイルに、たとえばS20tr
unk.shと命名することにより、initプロセス
にトランクを構成させてから、ネットワーク・インタフ
ェース構成コマンドを実行することができる。
ィスクから、あるいは非トランク化ネットワーク・イン
タフェースを使用してネットワークによって)、カーネ
ルはすべてのネットワーク・インタフェースを通常の形
態で、ローカルMACアドレスがあれば、それのついた
個別のリンクとして構成する。カーネルの構成が完了し
た後、/sbin/initプロセスは/sbin/r
cSスクリプトを実行し、このスクリプトは/etc/
hostname.xxファイルが存在しているネット
ワーク・インタフェースを構成するための/etc/r
cS.d/S30rootusr.shスクリプト・フ
ァイルを実行する。トランクを構成するためのnddコ
マンドを/etc/rcS.dディレクトリ内のシェル
・スクリプトに入れ、ファイルに、たとえばS20tr
unk.shと命名することにより、initプロセス
にトランクを構成させてから、ネットワーク・インタフ
ェース構成コマンドを実行することができる。
【0091】トランクが構成されたら、構成(トランク
番号またはトランクヘッド)を、好ましくは、/etc
/rcS.d/S20trunk.shファイルを変更
し、システムをリブートした後にのみ変更することがで
きる。この制限はシステム内でネットワーク・インタフ
ェースの履歴を維持することのできるアプリケーション
に関する混乱の可能性を回避するのを助ける。最も好ま
しいのは、トランクが接続されている交換機による対応
する再構成操作後に、リンクをトランクに追加するか、
トランクから除去することである。
番号またはトランクヘッド)を、好ましくは、/etc
/rcS.d/S20trunk.shファイルを変更
し、システムをリブートした後にのみ変更することがで
きる。この制限はシステム内でネットワーク・インタフ
ェースの履歴を維持することのできるアプリケーション
に関する混乱の可能性を回避するのを助ける。最も好ま
しいのは、トランクが接続されている交換機による対応
する再構成操作後に、リンクをトランクに追加するか、
トランクから除去することである。
【0092】構成コマンド hmeドライバが以下のユーザ構成可能ndd変数を各
インタフェースに対してサポートしているのが好まし
い。 trunk−id − 各トランクは1−256の範
囲の数によって識別され、0値はインタフェースがトラ
ンクに属していないことを示す。 trunk−head − 1という値はインタフェ
ースがトランクヘッドであることを示し、それ以外の場
合、値は0となる。このパラメータが変動するのはtr
unk−idパラメータが1−256の範囲の場合だけ
である。etc/rcS.d/S20trunk.sh
ファイル内の以下のコマンドのシーケンスは、trun
k−idが10で、hme2がトランクヘッドである、
hme1、hme2、hme3およびhme4インタフ
ェースからなるトランクの構成を示す。 ndd -set /dev/hme 1:trunk-id 10 ndd -set /dev/hme 2:trunk-id 10 ndd -set /dev/hme 3;trunk-id 10 ndd -set /dev/hme 4:trunk-id 10 ndd -set /dev/hme 2:trunk-head 1 まず、すべてのトランク・メンバーはturnk−id
によって識別され、最後のコマンドがトランクヘッドを
識別しなければならない。トランクヘッドが識別された
場合、トランク構成はトランクヘッド・インタフェース
のMAC idを使用してすべてのトランク・メンバー
・インタフェースを再初期設定することによって完了す
る。このステップの後、hme2(トランクヘッド)の
みが、ユーザに直接アクセス可能である。たとえば、h
me2のみが任意のストリームに接続できる。他のトラ
ンクメンバー・インタフェースhme1、hme3およ
びhme4にユーザがアクセスすることはできない。た
とえば、ストリームに接続することができない。
インタフェースに対してサポートしているのが好まし
い。 trunk−id − 各トランクは1−256の範
囲の数によって識別され、0値はインタフェースがトラ
ンクに属していないことを示す。 trunk−head − 1という値はインタフェ
ースがトランクヘッドであることを示し、それ以外の場
合、値は0となる。このパラメータが変動するのはtr
unk−idパラメータが1−256の範囲の場合だけ
である。etc/rcS.d/S20trunk.sh
ファイル内の以下のコマンドのシーケンスは、trun
k−idが10で、hme2がトランクヘッドである、
hme1、hme2、hme3およびhme4インタフ
ェースからなるトランクの構成を示す。 ndd -set /dev/hme 1:trunk-id 10 ndd -set /dev/hme 2:trunk-id 10 ndd -set /dev/hme 3;trunk-id 10 ndd -set /dev/hme 4:trunk-id 10 ndd -set /dev/hme 2:trunk-head 1 まず、すべてのトランク・メンバーはturnk−id
によって識別され、最後のコマンドがトランクヘッドを
識別しなければならない。トランクヘッドが識別された
場合、トランク構成はトランクヘッド・インタフェース
のMAC idを使用してすべてのトランク・メンバー
・インタフェースを再初期設定することによって完了す
る。このステップの後、hme2(トランクヘッド)の
みが、ユーザに直接アクセス可能である。たとえば、h
me2のみが任意のストリームに接続できる。他のトラ
ンクメンバー・インタフェースhme1、hme3およ
びhme4にユーザがアクセスすることはできない。た
とえば、ストリームに接続することができない。
【0093】トランクが構成されると、トランクヘッド
hme2インタフェースが非トランク化ネットワーク・
インタフェースとまったく同じように使用される。たと
えば、ifconfigコマンドによって参照して、T
CP/IPプロトコル・スタックを配することができ
る。ユーザ・パラメータまたはIP層によってhme2
デバイスへ送られるすべてのパケットは、フロー内のパ
ケットの順序が維持されるように、トランク内のリンク
の1つによって送られる。トランク内のリンクのいずれ
かで受信したすべてのパケットは、hme2デバイスに
接続されたストリームへ送られる。
hme2インタフェースが非トランク化ネットワーク・
インタフェースとまったく同じように使用される。たと
えば、ifconfigコマンドによって参照して、T
CP/IPプロトコル・スタックを配することができ
る。ユーザ・パラメータまたはIP層によってhme2
デバイスへ送られるすべてのパケットは、フロー内のパ
ケットの順序が維持されるように、トランク内のリンク
の1つによって送られる。トランク内のリンクのいずれ
かで受信したすべてのパケットは、hme2デバイスに
接続されたストリームへ送られる。
【0094】リンク速度およびモードを変更するため
に、nddがアクセスできるのはトランクヘッド・デバ
イスだけである。トランクを10/100Mbpsの速
度および半2重方式/全2重方式モードで動作させるこ
とができるが、100Mbpsの速度のみおよび全2重
方式モードのみをサポートするのが最善であると思われ
る。従って、好ましい実施の形態において、10Mbp
sの速度のみ、あるいは半2重方式モードのみで動作可
能なトランクメンバは、リンクがダウンしたかのように
扱われる。
に、nddがアクセスできるのはトランクヘッド・デバ
イスだけである。トランクを10/100Mbpsの速
度および半2重方式/全2重方式モードで動作させるこ
とができるが、100Mbpsの速度のみおよび全2重
方式モードのみをサポートするのが最善であると思われ
る。従って、好ましい実施の形態において、10Mbp
sの速度のみ、あるいは半2重方式モードのみで動作可
能なトランクメンバは、リンクがダウンしたかのように
扱われる。
【0095】送信負荷平衡 送信のためトランクヘッド・デバイスに接続されたスト
リームで送られるメッセージは、フロー内のパケット・
フローの順序が破壊されないように、トランク内のリン
クの1本によって送られなければならない。好ましく
は、2つ以下のリンク帯域幅のデータを、特定の宛先が
トランク化されていることもわかっていない限り、特定
の宛先のMACアドレスへ送らなければならない。この
ようなことは、たとえば、トランクが2つのサーバを直
接接続する場合である。それ故、パケットのリンクへの
分配は通常、イーサネット・ヘッダ内の宛先MACアド
レスに基づいている。
リームで送られるメッセージは、フロー内のパケット・
フローの順序が破壊されないように、トランク内のリン
クの1本によって送られなければならない。好ましく
は、2つ以下のリンク帯域幅のデータを、特定の宛先が
トランク化されていることもわかっていない限り、特定
の宛先のMACアドレスへ送らなければならない。この
ようなことは、たとえば、トランクが2つのサーバを直
接接続する場合である。それ故、パケットのリンクへの
分配は通常、イーサネット・ヘッダ内の宛先MACアド
レスに基づいている。
【0096】ユーザは構成変数をドライバに設定するこ
とによって、トランクが2つのサーバに接続する時期を
示すことができる。このような場合、パケットの分配は
TCP/UDPパケットに対するTCP/UDPポート
番号に基づく。他のIPまたは非IPパケットは宛先M
ACアドレスに基づいて分配され、このアドレスは異な
るマルチキャスト・ストリームを異なるリンクへ分配す
る可能性を与えるので有利である。
とによって、トランクが2つのサーバに接続する時期を
示すことができる。このような場合、パケットの分配は
TCP/UDPパケットに対するTCP/UDPポート
番号に基づく。他のIPまたは非IPパケットは宛先M
ACアドレスに基づいて分配され、このアドレスは異な
るマルチキャスト・ストリームを異なるリンクへ分配す
る可能性を与えるので有利である。
【0097】しかし、本明細書で上述した規則番号4で
述べたように、パケットの一時的な配列を保存すること
が重要である。パケットを送信するときに一時的な配列
を保存する好ましい方法は、flow−id(宛先MA
CアドレスまたはTCP/UDPポート番号)をlin
k−idにハッシュすることによって決定される同じリ
ンクを常に使用することである。多くのハッシュ手法を
使用することができるが、目標は乱数化機能を得ること
である。
述べたように、パケットの一時的な配列を保存すること
が重要である。パケットを送信するときに一時的な配列
を保存する好ましい方法は、flow−id(宛先MA
CアドレスまたはTCP/UDPポート番号)をlin
k−idにハッシュすることによって決定される同じリ
ンクを常に使用することである。多くのハッシュ手法を
使用することができるが、目標は乱数化機能を得ること
である。
【0098】リンクマップ・テーブルを使用して、fl
ow−idを特定のリンクへマップする。リンクマップ
・テーブル・エントリの数は、トランクメンバーの数が
2の累乗である場合、トランクメンバー(リンクヘッド
を含む)の数に等しい。2の累乗でない場合、エントリ
の数は次の高さの2の累乗に等しくなければならない。
たとえば、5つのトランクメンバーがある場合、リンク
マップ・テーブル内には8つのエントリがある。
ow−idを特定のリンクへマップする。リンクマップ
・テーブル・エントリの数は、トランクメンバーの数が
2の累乗である場合、トランクメンバー(リンクヘッド
を含む)の数に等しい。2の累乗でない場合、エントリ
の数は次の高さの2の累乗に等しくなければならない。
たとえば、5つのトランクメンバーがある場合、リンク
マップ・テーブル内には8つのエントリがある。
【0099】各リンクマップ・テーブル・エントリはト
ランクメンバーへのポインタを含んでおり、またそのト
ランクメンバーを使用するためのいくつかの状態情報を
含んでいる。リンクマップ・テーブルのサイズが2n で
ある場合、Txパケットのflow−idの最後のnビ
ットがリンクマップ・テーブルを索引付けし、パケット
を送信するためのトランクメンバーを選択するために使
用される。
ランクメンバーへのポインタを含んでおり、またそのト
ランクメンバーを使用するためのいくつかの状態情報を
含んでいる。リンクマップ・テーブルのサイズが2n で
ある場合、Txパケットのflow−idの最後のnビ
ットがリンクマップ・テーブルを索引付けし、パケット
を送信するためのトランクメンバーを選択するために使
用される。
【0100】トランクの構成時(トランクヘッドを識別
するとき)に、リンクマップ・テーブルが作成され、好
ましくはラウンドロビン形式で、トランクメンバーへの
ポインタによって初期設定される。トランク・サイズが
2の累乗でない場合、いくつかのトランクメンバーが2
つのエントリに割り当てられる。
するとき)に、リンクマップ・テーブルが作成され、好
ましくはラウンドロビン形式で、トランクメンバーへの
ポインタによって初期設定される。トランク・サイズが
2の累乗でない場合、いくつかのトランクメンバーが2
つのエントリに割り当てられる。
【0101】トランクメンバーのリンクがダウンした場
合、そのトランクメンバーへのポインタを含んでいるリ
ンクマップのエントリが変更されて、他の活動トランク
メンバーをポイントする。これらのエントリに対する状
態情報が変更されて、これらのエントリへマップするf
low−idによるパケットの送信のための新しいトラ
ンクメンバーを使用する前に、タイムアウトを待つ。こ
のようなパケットはタイムアウトが生じるまで、STR
EAMS待ち行列に保持される。このようなタイムアウ
トを使用すると、トランクメンバーが障害を起こす前に
送られたパケットの一時的な配列を維持するのが支援さ
れる。リンクの故障がデータの損失を意味する従来技術
の手法と対照的に、本発明は異なるフロー経路を通じて
ではあるが、データ・フローを維持することができる。
合、そのトランクメンバーへのポインタを含んでいるリ
ンクマップのエントリが変更されて、他の活動トランク
メンバーをポイントする。これらのエントリに対する状
態情報が変更されて、これらのエントリへマップするf
low−idによるパケットの送信のための新しいトラ
ンクメンバーを使用する前に、タイムアウトを待つ。こ
のようなパケットはタイムアウトが生じるまで、STR
EAMS待ち行列に保持される。このようなタイムアウ
トを使用すると、トランクメンバーが障害を起こす前に
送られたパケットの一時的な配列を維持するのが支援さ
れる。リンクの故障がデータの損失を意味する従来技術
の手法と対照的に、本発明は異なるフロー経路を通じて
ではあるが、データ・フローを維持することができる。
【0102】同様に、故障したトランクメンバー・リン
クが回復した場合、リンクマップ・テーブルの少なくと
も1つのエントリが変更されて、回復したトランクメン
バーをポイントする。これらのエントリに対する状態は
変更されて、これらのエントリを他の送信に使用する前
にタイムアウトを待つ。
クが回復した場合、リンクマップ・テーブルの少なくと
も1つのエントリが変更されて、回復したトランクメン
バーをポイントする。これらのエントリに対する状態は
変更されて、これらのエントリを他の送信に使用する前
にタイムアウトを待つ。
【0103】トランク化のための好ましいデータ構造以
下のユーザ構成可能なndd変数をhme.hファイル
のhme_param_array[]構造に追加する
のが好ましい。 trunk−id trunk−head flow−type −このパラメータは宛先MACアドレスまたはTCP/
UDP宛先port_idをフローの識別に使用すべき
かどうかを示す。たとえば、0は宛先MACアドレスを
使用することを示し、1はTCP/UDP port
idを使用することを示す。
下のユーザ構成可能なndd変数をhme.hファイル
のhme_param_array[]構造に追加する
のが好ましい。 trunk−id trunk−head flow−type −このパラメータは宛先MACアドレスまたはTCP/
UDP宛先port_idをフローの識別に使用すべき
かどうかを示す。たとえば、0は宛先MACアドレスを
使用することを示し、1はTCP/UDP port
idを使用することを示す。
【0104】各インタフェースに対する「hme」構造
には、以下を追加する。 unsigned int hme_trunkid; unsigned int hme_trunkhead_flag; / * このデバイスがトランクヘッドであるかどうかを示す*/ structhme_trunk*hme_trunkp; /* 第1の エントリとしてトランクヘッドを有するトランクに対するhme_trunk構 造のアレイに対するポインタ*/ unsignedinthme_linkmap refcnt; /* このトランクメンバをポイントしているリンクマップ・テーブル内のエントリの 数 */ /*新しい構造の定義*/ /*トランクヘッドが識別されたときに動的に作成されるトランク関連情報 */ structhme_trunk { kmutex_t tr_lock; /* この構造を保護するためのロ ック*/ unsignedinttr_flowid_type; /*wh ether dst mac id or tcp/ udpport id* / structhme_flowidtr_last_flowid; /* 最後のパケットのflowid*/ unsignedinttr_last_link id; /*最後のパ ケットに使用されたリンクの索引*/ structhmep*tr_members; /*トランクメンバーの アレイに対するポインタ。最初のメンバーはトランクヘッドである*/ unsignedinttr_trunksize; /*上記のアレイ内 のトランクメンバーの数*/ structhme_linkmap *tr_linkmap; /* リンクマップ・テーブルに対するポインタ*/ unsignedinttr_linkmap_size; /* リンク マップ・テーブル内のエントリの数*/ } ;
には、以下を追加する。 unsigned int hme_trunkid; unsigned int hme_trunkhead_flag; / * このデバイスがトランクヘッドであるかどうかを示す*/ structhme_trunk*hme_trunkp; /* 第1の エントリとしてトランクヘッドを有するトランクに対するhme_trunk構 造のアレイに対するポインタ*/ unsignedinthme_linkmap refcnt; /* このトランクメンバをポイントしているリンクマップ・テーブル内のエントリの 数 */ /*新しい構造の定義*/ /*トランクヘッドが識別されたときに動的に作成されるトランク関連情報 */ structhme_trunk { kmutex_t tr_lock; /* この構造を保護するためのロ ック*/ unsignedinttr_flowid_type; /*wh ether dst mac id or tcp/ udpport id* / structhme_flowidtr_last_flowid; /* 最後のパケットのflowid*/ unsignedinttr_last_link id; /*最後のパ ケットに使用されたリンクの索引*/ structhmep*tr_members; /*トランクメンバーの アレイに対するポインタ。最初のメンバーはトランクヘッドである*/ unsignedinttr_trunksize; /*上記のアレイ内 のトランクメンバーの数*/ structhme_linkmap *tr_linkmap; /* リンクマップ・テーブルに対するポインタ*/ unsignedinttr_linkmap_size; /* リンク マップ・テーブル内のエントリの数*/ } ;
【0105】トランク化を行う関数 hmeioctl −新しいndd変数trunk−id、トランクヘッド
およびflow−idを処理するコードを追加する。 −新しいトランクヘッドが指定された場合、トランクに
構造を割り振り、トランクメンバー構造を初期設定し、
hmeinit()を呼び出すことによってトランクメ
ンバー・ハードウェア・デバイスを初期設定する。 −インスタンス番号、すなわち<nn>:<name>
形式(nnはインスタンス番号であり、nameはパラ
メータを指す)を含むコード・サポートndd変数を追
加する。 hmedetach −トランク化された場合、トランク・サポートに割り振
られているすべての動的データ構造を割振り解除する。 hmeareq −デバイスが非トランクヘッド・トランクメンバーとし
て構成されている場合に、エラーを返すコードを追加す
る。 hme_trunk_init −新しい関数。MACパラメータ/モードを変更するた
めにhmeinit()が呼び出されたかどうかに応じ
て、hme_trunk_init()を呼び出して、
MACアドレス、マルチキャスト・アドレス、prom
iscuousモードなどがすべてのトランクメンバー
に設定されるようにする。 hme trunk_start −新しい関数。パケットを送信するためにhmesta
rt()が現在呼び出されているかどうかに応じて、h
me trunk_start()呼び出して、トラン
クに対するパケット送信を処理する。 −この関数はパケットに対するflow−idを使用し
て、リンクを使用するかどうか決定する。パケットをリ
ンクへポストできる場合には、hmesta.rt()
を呼び出して、そのリンク上のパケットを送信する。パ
ケットを何らかのリンクにポストできない場合には、S
TREAMS待ち行列に戻され、tr_txall_w
aitフラグがセットされる。 hme ntr −リンク状態がトランクメンバーに対してリンクダウン
状態を示している場合には、代替トランクメンバーを割
り当てる。また、新しいトランクメンバーを使用する前
に、タイムアウトを起動する。 hmeread −受信パケットをmblkに取得した後、トランクヘッ
ドに対する「hmep」ポインタを使用して、mblk
を送る。
およびflow−idを処理するコードを追加する。 −新しいトランクヘッドが指定された場合、トランクに
構造を割り振り、トランクメンバー構造を初期設定し、
hmeinit()を呼び出すことによってトランクメ
ンバー・ハードウェア・デバイスを初期設定する。 −インスタンス番号、すなわち<nn>:<name>
形式(nnはインスタンス番号であり、nameはパラ
メータを指す)を含むコード・サポートndd変数を追
加する。 hmedetach −トランク化された場合、トランク・サポートに割り振
られているすべての動的データ構造を割振り解除する。 hmeareq −デバイスが非トランクヘッド・トランクメンバーとし
て構成されている場合に、エラーを返すコードを追加す
る。 hme_trunk_init −新しい関数。MACパラメータ/モードを変更するた
めにhmeinit()が呼び出されたかどうかに応じ
て、hme_trunk_init()を呼び出して、
MACアドレス、マルチキャスト・アドレス、prom
iscuousモードなどがすべてのトランクメンバー
に設定されるようにする。 hme trunk_start −新しい関数。パケットを送信するためにhmesta
rt()が現在呼び出されているかどうかに応じて、h
me trunk_start()呼び出して、トラン
クに対するパケット送信を処理する。 −この関数はパケットに対するflow−idを使用し
て、リンクを使用するかどうか決定する。パケットをリ
ンクへポストできる場合には、hmesta.rt()
を呼び出して、そのリンク上のパケットを送信する。パ
ケットを何らかのリンクにポストできない場合には、S
TREAMS待ち行列に戻され、tr_txall_w
aitフラグがセットされる。 hme ntr −リンク状態がトランクメンバーに対してリンクダウン
状態を示している場合には、代替トランクメンバーを割
り当てる。また、新しいトランクメンバーを使用する前
に、タイムアウトを起動する。 hmeread −受信パケットをmblkに取得した後、トランクヘッ
ドに対する「hmep」ポインタを使用して、mblk
を送る。
【0106】首記の特許請求の範囲によって画定される
本発明の主題および精神から逸脱することなく、開示し
た実施の形態に改変および変更を行うことができる。
本発明の主題および精神から逸脱することなく、開示し
た実施の形態に改変および変更を行うことができる。
【図1A】 従来の技術によるネットワークおよびモデ
ルを示す図である。
ルを示す図である。
【図1B】 本発明を実施することのできる典型的なネ
ットワーク・システム接続を示す図である。
ットワーク・システム接続を示す図である。
【図2】 各種のリンク構成を示す図である。
【図3】 本発明による図1Aのネットワーク・モデル
に対する改変形を示す図である。
に対する改変形を示す図である。
【図4】 Aは本発明による層改変の効果を示す図であ
る、Bは従来の技術による無改変の層を示す図である。
る、Bは従来の技術による無改変の層を示す図である。
10 サーバ 10’ クライアント 20 ケーブル 30 物理層 40 リコンシリエーション・サブレイヤー 50A 論理リンク制御 50B メディア・アクセス制御サブレイヤー 60 ネットワーク層 80 セッション層 90 プレゼンテーション層 100 アプリケーション層 120、120’ 交換機 150 擬似ドライバ層
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成10年9月25日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正内容】
【図1A】
【図1B】
【図2】
【図3】
【図4】
───────────────────────────────────────────────────── フロントページの続き (71)出願人 591064003 901 SAN ANTONIO ROAD PALO ALTO,CA 94303,U. S.A. (72)発明者 レオ・エイ・ヘジャ アメリカ合衆国・94087・カリフォルニア 州・サニーベイル・クインス アヴェニ ュ・1146 (72)発明者 サンパス・エイチ・ケイ・クマー アメリカ合衆国・95123・カリフォルニア 州・サン ホゼ・ギャレン ドライブ・ 491
Claims (20)
- 【請求項1】 ネットワーク・システムにおける、その
システムに結合可能な物理リンクの間のデータ・フロー
を動的に制御する方法において、 複数の前記物理リンクを単一の論理チャネル・トランク
に論理的に組み合せるステップを備えている方法。 - 【請求項2】 前記トランクを構成する前記物理リンク
の各々を、同一の物理層および同一のメディア・アクセ
ス制御層特性によって表すことのできる請求項1に記載
の方法。 - 【請求項3】 前記データ・フローを動的に制御して、
前記の単一の論理チャネル・トランクを構成する前記物
理リンクの各々によって搬送されるデータ・フローを平
衡させるステップをさらに含んでいる請求項1に記載の
方法。 - 【請求項4】 前記システム内のサーバが単一のメディ
ア・アクセス制御層アドレスを前記の単一のトランク化
論理チャネルに割り当てるステップをさらに含んでいる
請求項1に記載の方法。 - 【請求項5】 前記システムに利用可能なマップテーブ
ル情報を使用して、前記の単一のメディア・アクセス制
御層アドレスを構築するステップをさらに含んでいる請
求項4に記載の方法。 - 【請求項6】 前記物理リンクの1つに対する宛先アド
レスをランダムに選択するステップをさらに含んでいる
請求項4に記載の方法。 - 【請求項7】 前記のランダムな選択が前記物理リンク
に対して前記宛先メディア・アクセス制御層アドレスを
ハッシュすることを含んでいる請求項6に記載の方法。 - 【請求項8】 データ・パケットを前記システム内のサ
ーバから、前記物理リンクのうちの選択されたものへ分
配して、データ・フローの一時的な配列が保存されるよ
うにするステップをさらに含んでいる請求項1に記載の
方法。 - 【請求項9】 前記サーバが前記の単一の論理チャネル
・トランクの共通セグメントにより、前記データ・パケ
ットを分配するステップをさらに含んでいる請求項8に
記載の方法。 - 【請求項10】 少なくとも物理層とネットワーク層を
含んでいる多層モデルによって表すことのできる前記シ
ステム内のサーバに対して、前記物理層と前記ネットワ
ーク層の間に配置された擬似ドライバ・ソフトウェア層
を定義するステップをさらに含んでいる請求項1に記載
の方法。 - 【請求項11】 前記擬似ドライバ・ソフトウェア層が
受信路においてマルチプレクサとして機能し、送信路に
おいてデマルチプレクサとして機能する請求項10に記
載の方法。 - 【請求項12】 前記ネットワークがイーサネット互換
である請求項1に記載の方法。 - 【請求項13】 前記ネットワークが全2重方式モード
で機能する請求項1に記載の方法。 - 【請求項14】 ネットワーク・システムに結合可能な
第1の物理リンクと、 前記ネットワーク・システムに結合可能な第2の物理リ
ンクと、 前記物理リンクの各々を単一の論理チャネル・トランク
へ動的に組合せるサーバ・インタフェースを有している
サーバとを備えているネットワーク・システム。 - 【請求項15】 前記トランクを構成する前記物理リン
クの各々が、同一の物理層および同一のメディア・アク
セス制御層特性によって表すことができ、 前記サーバ・インタフェースが単一のメディア・アクセ
ス制御層アドレスを前記の単一のトランク化論理チャネ
ルに割り当てる請求項14に記載のネットワーク・シス
テム。 - 【請求項16】 (i)マップテーブル、(ii)前記
物理リンクに対する宛先メディア・アクセス制御層アド
レスのランダム・セレクタ、(iii)前記物理リンク
に対する宛先メディア・アクセス制御層アドレスをハッ
シュするハッシュ・ユニットからなる群から選択された
アドレス・ジェネレータによって、 前記アドレスが生成される請求項14に記載のネットワ
ーク・システム。 - 【請求項17】 前記単一の論理チャネル・トランクを
構成する前記物理リンクの各々によって搬送されるデー
タ・フローを、前記サーバ・インタフェースが動的に平
衡させる請求項14に記載のネットワーク・システム。 - 【請求項18】 前記サーバがデータ・パケットを、前
記物理リンクのうちの選択されたものへ分配して、デー
タ・フローの一時的な配列が保存されるようにする請求
項14に記載のネットワーク・システム。 - 【請求項19】 前記インタフェースが前記サーバ内の
物理層とネットワーク層の間に配置された擬似ドライバ
・ソフトウェア層を含み、 前記擬似ドライバ・ソフトウェア層が受信路においてマ
ルチプレクサとして機能し、送信路においてデマルチプ
レクサとして機能する請求項14に記載のネットワーク
・システム。 - 【請求項20】 (i)前記ネットワークが全2重方式
モードで機能すること、 (ii)前記ネットワークが
イーサネット・ネットワークであること、(iii)前
記ネットワークがイーサネット互換であることからなる
群から選択された少なくとも1つの特性を、前記ネット
ワーク・システムが有している請求項14に記載のネッ
トワーク・システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/885072 | 1997-06-30 | ||
US08/885,072 US6049528A (en) | 1997-06-30 | 1997-06-30 | Trunking ethernet-compatible networks |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11145990A true JPH11145990A (ja) | 1999-05-28 |
Family
ID=25386070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10184666A Pending JPH11145990A (ja) | 1997-06-30 | 1998-06-30 | イーサネット(登録商標)互換ネットワークのトランク化 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6049528A (ja) |
EP (1) | EP0889624B1 (ja) |
JP (1) | JPH11145990A (ja) |
DE (1) | DE69812777T2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009524356A (ja) * | 2006-01-23 | 2009-06-25 | アライドテレシスホールディングス株式会社 | 通信ネットワークを通じたトラフィック分配を向上させる方法およびシステム |
JP2009296084A (ja) * | 2008-06-03 | 2009-12-17 | Hitachi Ltd | マルチパス通信システム |
Families Citing this family (177)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6791947B2 (en) | 1996-12-16 | 2004-09-14 | Juniper Networks | In-line packet processing |
US6591303B1 (en) * | 1997-03-07 | 2003-07-08 | Sun Microsystems, Inc. | Method and apparatus for parallel trunking of interfaces to increase transfer bandwidth |
US6226680B1 (en) | 1997-10-14 | 2001-05-01 | Alacritech, Inc. | Intelligent network interface system method for protocol processing |
US6658480B2 (en) * | 1997-10-14 | 2003-12-02 | Alacritech, Inc. | Intelligent network interface system and method for accelerated protocol processing |
US7237036B2 (en) * | 1997-10-14 | 2007-06-26 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding a TCP connection |
US6434620B1 (en) * | 1998-08-27 | 2002-08-13 | Alacritech, Inc. | TCP/IP offload network interface device |
US8621101B1 (en) | 2000-09-29 | 2013-12-31 | Alacritech, Inc. | Intelligent network storage interface device |
US6687758B2 (en) * | 2001-03-07 | 2004-02-03 | Alacritech, Inc. | Port aggregation for network connections that are offloaded to network interface devices |
US7167927B2 (en) | 1997-10-14 | 2007-01-23 | Alacritech, Inc. | TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism |
US8782199B2 (en) * | 1997-10-14 | 2014-07-15 | A-Tech Llc | Parsing a packet header |
US7174393B2 (en) * | 2000-12-26 | 2007-02-06 | Alacritech, Inc. | TCP/IP offload network interface device |
US6757746B2 (en) * | 1997-10-14 | 2004-06-29 | Alacritech, Inc. | Obtaining a destination address so that a network interface device can write network data without headers directly into host memory |
US7185266B2 (en) * | 2003-02-12 | 2007-02-27 | Alacritech, Inc. | Network interface device for error detection using partial CRCS of variable length message portions |
US8539112B2 (en) | 1997-10-14 | 2013-09-17 | Alacritech, Inc. | TCP/IP offload device |
US6697868B2 (en) * | 2000-02-28 | 2004-02-24 | Alacritech, Inc. | Protocol processing stack for use with intelligent network interface device |
US7133940B2 (en) * | 1997-10-14 | 2006-11-07 | Alacritech, Inc. | Network interface device employing a DMA command queue |
US6404738B1 (en) * | 1998-01-21 | 2002-06-11 | Nec Usa, Inc. | Dynamic network bandwidth allocation for multimedia applications with soft quality-of-service requirements |
US6195349B1 (en) * | 1998-01-28 | 2001-02-27 | 3Com Corporation | Scalable logical LAN |
US6195351B1 (en) * | 1998-01-28 | 2001-02-27 | 3Com Corporation | Logical switch set |
US6487214B1 (en) * | 1998-04-13 | 2002-11-26 | Cisco Technology, Inc. | Method and apparatus for implementing an ethernet protocol using three wires |
US6252888B1 (en) * | 1998-04-14 | 2001-06-26 | Nortel Networks Corporation | Method and apparatus providing network communications between devices using frames with multiple formats |
US6359879B1 (en) * | 1998-04-24 | 2002-03-19 | Avici Systems | Composite trunking |
US6496502B1 (en) * | 1998-06-29 | 2002-12-17 | Nortel Networks Limited | Distributed multi-link trunking method and apparatus |
US6449054B1 (en) * | 1998-08-01 | 2002-09-10 | Canon Kabushiki Kaisha | Dynamic assignment of group addresses for controlling parallel peripheral devices |
US6970419B1 (en) * | 1998-08-07 | 2005-11-29 | Nortel Networks Limited | Method and apparatus for preserving frame ordering across aggregated links between source and destination nodes |
US6570880B1 (en) * | 1998-08-21 | 2003-05-27 | Adc Telecommunications, Inc. | Control data over a ring network |
US6389030B1 (en) * | 1998-08-21 | 2002-05-14 | Adc Telecommunications, Inc. | Internet access over a ring network |
US7664883B2 (en) * | 1998-08-28 | 2010-02-16 | Alacritech, Inc. | Network interface device that fast-path processes solicited session layer read commands |
US6421735B1 (en) * | 1998-10-30 | 2002-07-16 | Advanced Micro Devices, Inc. | Apparatus and method for automatically selecting a network port for a home network station |
FI106499B (fi) * | 1998-12-29 | 2001-02-15 | Nokia Networks Oy | Tiedonsiirtomenetelmä ja verkkoelementti |
US6519231B1 (en) | 1999-01-12 | 2003-02-11 | Nortel Networks Limited | Method and apparatus providing a spanning tree protocol for a data communications network having a multi-link trunk |
US6611502B1 (en) | 1999-01-15 | 2003-08-26 | 3Com Corportion | Spanning tree with rapid propagation of topology changes |
US6771610B1 (en) | 1999-01-19 | 2004-08-03 | 3Com Corporation | Spanning tree with protocol for bypassing port state transition timers |
US6535490B1 (en) * | 1999-03-04 | 2003-03-18 | 3Com Corporation | High availability spanning tree with rapid reconfiguration with alternate port selection |
US6512774B1 (en) * | 1999-03-18 | 2003-01-28 | 3Com Corporation | Fail over with multiple network interface cards |
US6590861B1 (en) * | 1999-03-18 | 2003-07-08 | 3Com Corporation | Combining virtual local area networks and load balancing with fault tolerance in a high performance protocol |
US6363432B1 (en) * | 1999-03-29 | 2002-03-26 | Micro Linear Corporation | Media independent interface between IEEE 802.3 (ethernet) based physical layer devices |
EP1041776A1 (en) * | 1999-03-30 | 2000-10-04 | International Business Machines Corporation | Multiple ARP functionality for an IP data transmission system |
US6701432B1 (en) * | 1999-04-01 | 2004-03-02 | Netscreen Technologies, Inc. | Firewall including local bus |
US6538990B1 (en) * | 1999-04-15 | 2003-03-25 | International Business Machines Corporation | Method and system for congestion flow control in a high speed network |
US6788692B1 (en) * | 1999-05-03 | 2004-09-07 | Nortel Networks Limited | Network switch load balancing |
US6631141B1 (en) * | 1999-05-27 | 2003-10-07 | Ibm Corporation | Methods, systems and computer program products for selecting an aggregator interface |
US6754220B1 (en) * | 1999-05-31 | 2004-06-22 | International Business Machines Corporation | System and method for dynamically assigning routers to hosts through a mediator |
US6501749B1 (en) * | 1999-06-25 | 2002-12-31 | International Business Machines Corporation | System and method for data transmission across a link aggregation |
US6643287B1 (en) * | 1999-11-24 | 2003-11-04 | Pluris, Inc. | Apparatus and method for forwarding encapsulated data packets on a network having multiple links between nodes |
US6697380B1 (en) * | 1999-12-07 | 2004-02-24 | Advanced Micro Devices, Inc. | Multiple key lookup arrangement for a shared switching logic address table in a network switch |
US7765581B1 (en) * | 1999-12-10 | 2010-07-27 | Oracle America, Inc. | System and method for enabling scalable security in a virtual private network |
US6621790B1 (en) * | 1999-12-30 | 2003-09-16 | 3Com Corporation | Link aggregation repeater process |
US6765866B1 (en) | 2000-02-29 | 2004-07-20 | Mosaid Technologies, Inc. | Link aggregation |
US20020009098A1 (en) * | 2000-07-14 | 2002-01-24 | International Business Machines Corporation | Communication control method and device |
US6553005B1 (en) | 2000-07-26 | 2003-04-22 | Pluris, Inc. | Method and apparatus for load apportionment among physical interfaces in data routers |
JP4540293B2 (ja) * | 2000-08-17 | 2010-09-08 | アドバンスト・ネットワーク・テクノロジー・ラボラトリーズ・ピーティーイー・リミテッド | 再構築可能なコンピュータネットワーク |
US6771673B1 (en) * | 2000-08-31 | 2004-08-03 | Verizon Communications Inc. | Methods and apparatus and data structures for providing access to an edge router of a network |
US7315554B2 (en) | 2000-08-31 | 2008-01-01 | Verizon Communications Inc. | Simple peering in a transport network employing novel edge devices |
US8087064B1 (en) | 2000-08-31 | 2011-12-27 | Verizon Communications Inc. | Security extensions using at least a portion of layer 2 information or bits in the place of layer 2 information |
US6850495B1 (en) | 2000-08-31 | 2005-02-01 | Verizon Communications Inc. | Methods, apparatus and data structures for segmenting customers using at least a portion of a layer 2 address header or bits in the place of a layer 2 address header |
US8019901B2 (en) * | 2000-09-29 | 2011-09-13 | Alacritech, Inc. | Intelligent network storage interface system |
US6907395B1 (en) * | 2000-10-24 | 2005-06-14 | Microsoft Corporation | System and method for designing a logical model of a distributed computer system and deploying physical resources according to the logical model |
US7606898B1 (en) | 2000-10-24 | 2009-10-20 | Microsoft Corporation | System and method for distributed management of shared computers |
US7113900B1 (en) | 2000-10-24 | 2006-09-26 | Microsoft Corporation | System and method for logical modeling of distributed computer systems |
US6850498B2 (en) * | 2000-12-22 | 2005-02-01 | Intel Corporation | Method and system for evaluating a wireless link |
US6963569B1 (en) | 2000-12-29 | 2005-11-08 | Cisco Technology, Inc. | Device for interworking asynchronous transfer mode cells |
US7010591B1 (en) * | 2001-01-25 | 2006-03-07 | Advanced Micro Devices, Inc. | Self-configuring trunking on a network device |
JP4141106B2 (ja) * | 2001-02-06 | 2008-08-27 | 富士通株式会社 | 帯域制御装置 |
GB2372670B (en) * | 2001-02-27 | 2003-01-08 | 3Com Corp | Optimisation of network configuration |
US7145866B1 (en) | 2001-03-01 | 2006-12-05 | Emc Corporation | Virtual network devices |
US7095716B1 (en) | 2001-03-30 | 2006-08-22 | Juniper Networks, Inc. | Internet security device and method |
US7093280B2 (en) * | 2001-03-30 | 2006-08-15 | Juniper Networks, Inc. | Internet security system |
US7492737B1 (en) * | 2001-05-23 | 2009-02-17 | Nortel Networks Limited | Service-driven air interface protocol architecture for wireless systems |
WO2002103547A1 (en) | 2001-06-15 | 2002-12-27 | Advanced Network Technology Laboratories Pte Ltd. | Computer networks |
US8041814B2 (en) * | 2001-06-28 | 2011-10-18 | International Business Machines Corporation | Method, system and computer program product for hierarchical load balancing |
TW576061B (en) * | 2001-08-13 | 2004-02-11 | Via Tech Inc | Device and method for load balancing of packet switching |
US7787370B1 (en) * | 2001-09-06 | 2010-08-31 | Nortel Networks Limited | Technique for adaptively load balancing connections in multi-link trunks |
US7302700B2 (en) | 2001-09-28 | 2007-11-27 | Juniper Networks, Inc. | Method and apparatus for implementing a layer 3/layer 7 firewall in an L2 device |
US8417788B1 (en) | 2001-09-28 | 2013-04-09 | Emc Corporation | File system for virtual local area network |
DE60116318T2 (de) * | 2001-10-08 | 2006-08-31 | Alcatel | Verfahren zur Lastverteilung zwischen mehreren gemeinsamen Betriebsmitteln in einem Kommunikationsnetzwerk und Netzwerk zur Anwendung des Verfahrens |
US7212526B2 (en) * | 2002-01-18 | 2007-05-01 | Hitachi, Ltd. | Method and apparatus for composing virtual links in a label switched network |
US7313135B2 (en) | 2002-01-31 | 2007-12-25 | Mosaid Technologies, Inc. | Trunking in a matrix |
US6973082B2 (en) * | 2002-02-01 | 2005-12-06 | Fujitsu Limited | Forwarding packets to aggregated links using distributed ingress card processing |
US7650634B2 (en) | 2002-02-08 | 2010-01-19 | Juniper Networks, Inc. | Intelligent integrated network security device |
US7734752B2 (en) * | 2002-02-08 | 2010-06-08 | Juniper Networks, Inc. | Intelligent integrated network security device for high-availability applications |
US8370936B2 (en) | 2002-02-08 | 2013-02-05 | Juniper Networks, Inc. | Multi-method gateway-based network security systems and methods |
US7496689B2 (en) * | 2002-04-22 | 2009-02-24 | Alacritech, Inc. | TCP/IP offload device |
US7543087B2 (en) * | 2002-04-22 | 2009-06-02 | Alacritech, Inc. | Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device |
GB2389023B (en) * | 2002-05-20 | 2004-04-28 | Sun Microsystems Inc | Computer system, method and network |
US7965693B2 (en) * | 2002-05-28 | 2011-06-21 | Zte (Usa) Inc. | Interworking mechanism between wireless wide area network and wireless local area network |
US6895481B1 (en) | 2002-07-03 | 2005-05-17 | Cisco Technology, Inc. | System and method for decrementing a reference count in a multicast environment |
US7453837B2 (en) | 2002-08-15 | 2008-11-18 | Zteit Usa, Inc. | Trunking system for CDMA wireless communication |
WO2004036805A2 (en) * | 2002-08-29 | 2004-04-29 | Broadcom Corporation | System and method for network interfacing in a multiple network environment |
US8631162B2 (en) * | 2002-08-30 | 2014-01-14 | Broadcom Corporation | System and method for network interfacing in a multiple network environment |
US7934021B2 (en) * | 2002-08-29 | 2011-04-26 | Broadcom Corporation | System and method for network interfacing |
CN100336363C (zh) * | 2002-09-18 | 2007-09-05 | 中兴通讯股份有限公司 | 一种实现聚合链路流量均衡的方法 |
US7337241B2 (en) * | 2002-09-27 | 2008-02-26 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding to a TCP connection |
US7191241B2 (en) * | 2002-09-27 | 2007-03-13 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding to a TCP connection |
US20040088262A1 (en) * | 2002-11-06 | 2004-05-06 | Alacritech, Inc. | Enabling an enhanced function of an electronic device |
US8635374B1 (en) * | 2003-01-28 | 2014-01-21 | Marvell International Ltd. | Automatic media converter |
US7570648B2 (en) * | 2003-02-03 | 2009-08-04 | At&T Intellectual Property I, L.P. | Enhanced H-VPLS service architecture using control word |
US20040177164A1 (en) * | 2003-02-25 | 2004-09-09 | Dimambro Francesco | System and method for reclaiming transmit descriptors |
US8122106B2 (en) | 2003-03-06 | 2012-02-21 | Microsoft Corporation | Integrating design, deployment, and management phases for systems |
US7072807B2 (en) * | 2003-03-06 | 2006-07-04 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US7890543B2 (en) | 2003-03-06 | 2011-02-15 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US20040210623A1 (en) * | 2003-03-06 | 2004-10-21 | Aamer Hydrie | Virtual network topology generation |
US7689676B2 (en) * | 2003-03-06 | 2010-03-30 | Microsoft Corporation | Model-based policy application |
US20040184407A1 (en) * | 2003-03-21 | 2004-09-23 | Sbc Knowledge Ventures, L.P. | Operations, administration, and maintenance data packet and related testing methods |
US7643424B2 (en) | 2003-03-22 | 2010-01-05 | At&T Intellectual Property L, L.P. | Ethernet architecture with data packet encapsulation |
US7325002B2 (en) | 2003-04-04 | 2008-01-29 | Juniper Networks, Inc. | Detection of network security breaches based on analysis of network record logs |
DE10319323B3 (de) * | 2003-04-29 | 2004-12-16 | Siemens Ag | Verfahren zur automatischen Konfiguration einer Kommunikationseinrichtung |
US7706363B1 (en) | 2003-06-11 | 2010-04-27 | Radlan Computer Communications, Ltd | Method and apparatus for managing packets in a packet switched network |
US7590736B2 (en) * | 2003-06-30 | 2009-09-15 | Microsoft Corporation | Flexible network load balancing |
US7567504B2 (en) * | 2003-06-30 | 2009-07-28 | Microsoft Corporation | Network load balancing with traffic routing |
US7636917B2 (en) * | 2003-06-30 | 2009-12-22 | Microsoft Corporation | Network load balancing with host status information |
US7613822B2 (en) * | 2003-06-30 | 2009-11-03 | Microsoft Corporation | Network load balancing with session information |
US7606929B2 (en) * | 2003-06-30 | 2009-10-20 | Microsoft Corporation | Network load balancing with connection manipulation |
US8285881B2 (en) * | 2003-09-10 | 2012-10-09 | Broadcom Corporation | System and method for load balancing and fail over |
US8462817B2 (en) | 2003-10-15 | 2013-06-11 | Qualcomm Incorporated | Method, apparatus, and system for multiplexing protocol data units |
US9226308B2 (en) | 2003-10-15 | 2015-12-29 | Qualcomm Incorporated | Method, apparatus, and system for medium access control |
US8483105B2 (en) * | 2003-10-15 | 2013-07-09 | Qualcomm Incorporated | High speed media access control |
US8233462B2 (en) | 2003-10-15 | 2012-07-31 | Qualcomm Incorporated | High speed media access control and direct link protocol |
US8472473B2 (en) * | 2003-10-15 | 2013-06-25 | Qualcomm Incorporated | Wireless LAN protocol stack |
US6996070B2 (en) * | 2003-12-05 | 2006-02-07 | Alacritech, Inc. | TCP/IP offload device with reduced sequential processing |
US8903440B2 (en) * | 2004-01-29 | 2014-12-02 | Qualcomm Incorporated | Distributed hierarchical scheduling in an ad hoc network |
US7778422B2 (en) | 2004-02-27 | 2010-08-17 | Microsoft Corporation | Security associations for devices |
US7474895B1 (en) | 2004-03-04 | 2009-01-06 | Zte (Usa) Inc. | Frequency reuse in wireless communication networks |
US8335533B2 (en) * | 2004-04-19 | 2012-12-18 | Zte Corporation | Trunking and push-to-talk mechanisms for WCDMA wireless communications |
US20050246529A1 (en) | 2004-04-30 | 2005-11-03 | Microsoft Corporation | Isolated persistent identity storage for authentication of computing devies |
US8401018B2 (en) * | 2004-06-02 | 2013-03-19 | Qualcomm Incorporated | Method and apparatus for scheduling in a wireless network |
US7729303B2 (en) * | 2004-06-30 | 2010-06-01 | Zteit Usa, Inc. | Global open trunking system for CDMA wireless communication |
US8891509B2 (en) * | 2004-07-06 | 2014-11-18 | Hewlett-Packard Development Company, L.P. | Proxy networking device for a router |
US8355400B2 (en) * | 2004-08-06 | 2013-01-15 | Lantiq Deutschland Gmbh | System and method for transmitting information over a plurality of communication links |
US9699102B2 (en) * | 2004-08-09 | 2017-07-04 | Arris Enterprises Llc | Very high speed cable modem for increasing bandwidth |
US7542463B2 (en) * | 2004-09-24 | 2009-06-02 | Cisco Technology, Inc. | Communicating packets along a control channel and a media channel |
US8248939B1 (en) | 2004-10-08 | 2012-08-21 | Alacritech, Inc. | Transferring control of TCP connections between hierarchy of processing mechanisms |
US7680053B1 (en) | 2004-10-29 | 2010-03-16 | Marvell International Ltd. | Inter-device flow control |
US7415035B1 (en) | 2005-04-04 | 2008-08-19 | Sun Microsystems, Inc. | Device driver access method into a virtualized network interface |
US7779164B2 (en) * | 2005-04-04 | 2010-08-17 | Oracle America, Inc. | Asymmetrical data processing partition |
US7529245B1 (en) | 2005-04-04 | 2009-05-05 | Sun Microsystems, Inc. | Reorder mechanism for use in a relaxed order input/output system |
US7865624B1 (en) | 2005-04-04 | 2011-01-04 | Oracle America, Inc. | Lookup mechanism based on link layer semantics |
US7987306B2 (en) * | 2005-04-04 | 2011-07-26 | Oracle America, Inc. | Hiding system latencies in a throughput networking system |
US7415034B2 (en) * | 2005-04-04 | 2008-08-19 | Sun Microsystems, Inc. | Virtualized partitionable shared network interface |
US7992144B1 (en) | 2005-04-04 | 2011-08-02 | Oracle America, Inc. | Method and apparatus for separating and isolating control of processing entities in a network interface |
US7443878B2 (en) * | 2005-04-04 | 2008-10-28 | Sun Microsystems, Inc. | System for scaling by parallelizing network workload |
US7664127B1 (en) | 2005-04-05 | 2010-02-16 | Sun Microsystems, Inc. | Method for resolving mutex contention in a network system |
US7353360B1 (en) | 2005-04-05 | 2008-04-01 | Sun Microsystems, Inc. | Method for maximizing page locality |
US7843926B1 (en) | 2005-04-05 | 2010-11-30 | Oracle America, Inc. | System for providing virtualization of network interfaces at various layers |
US8762595B1 (en) | 2005-04-05 | 2014-06-24 | Oracle America, Inc. | Method for sharing interfaces among multiple domain environments with enhanced hooks for exclusiveness |
US8510491B1 (en) | 2005-04-05 | 2013-08-13 | Oracle America, Inc. | Method and apparatus for efficient interrupt event notification for a scalable input/output device |
US7567567B2 (en) * | 2005-04-05 | 2009-07-28 | Sun Microsystems, Inc. | Network system including packet classification for partitioned resources |
US7889734B1 (en) | 2005-04-05 | 2011-02-15 | Oracle America, Inc. | Method and apparatus for arbitrarily mapping functions to preassigned processing entities in a network system |
US7802144B2 (en) | 2005-04-15 | 2010-09-21 | Microsoft Corporation | Model-based system monitoring |
US8489728B2 (en) | 2005-04-15 | 2013-07-16 | Microsoft Corporation | Model-based system monitoring |
US7797147B2 (en) | 2005-04-15 | 2010-09-14 | Microsoft Corporation | Model-based system monitoring |
US20060250966A1 (en) * | 2005-05-03 | 2006-11-09 | Yuan-Chi Su | Method for local area network security |
US8549513B2 (en) | 2005-06-29 | 2013-10-01 | Microsoft Corporation | Model-based virtual system provisioning |
US7746862B1 (en) | 2005-08-02 | 2010-06-29 | Juniper Networks, Inc. | Packet processing in a multiple processor system |
US8600336B2 (en) | 2005-09-12 | 2013-12-03 | Qualcomm Incorporated | Scheduling with reverse direction grant in wireless communication systems |
US8259566B2 (en) * | 2005-09-20 | 2012-09-04 | Qualcomm Incorporated | Adaptive quality of service policy for dynamic networks |
US7941309B2 (en) | 2005-11-02 | 2011-05-10 | Microsoft Corporation | Modeling IT operations/policies |
US7738500B1 (en) | 2005-12-14 | 2010-06-15 | Alacritech, Inc. | TCP timestamp synchronization for network connections that are offloaded to network interface devices |
US8566471B1 (en) * | 2006-01-09 | 2013-10-22 | Avaya Inc. | Method of providing network link bonding and management |
TWI303367B (en) * | 2006-03-30 | 2008-11-21 | Infoaction Technology Inc | Management system for usb audio device cluster |
US7743129B2 (en) * | 2006-05-01 | 2010-06-22 | International Business Machines Corporation | Methods and arrangements to detect a failure in a communication network |
CN100461741C (zh) * | 2006-06-09 | 2009-02-11 | 华为技术有限公司 | 防止以太网链路聚合逻辑端口报文丢失的方法及通信设备 |
US8565085B2 (en) | 2006-10-17 | 2013-10-22 | Verizon Patent And Licensing Inc. | Link aggregation |
US8213430B2 (en) * | 2007-02-28 | 2012-07-03 | Hewlett-Packard Development Company, L.P. | Transmitting a packet from a distributed trunk switch |
US9344356B2 (en) * | 2007-02-28 | 2016-05-17 | Hewlett Packard Enterprise Development Lp | Transmitting a packet from a distributed trunk switch |
US7953895B1 (en) | 2007-03-07 | 2011-05-31 | Juniper Networks, Inc. | Application identification |
US8472325B2 (en) * | 2007-05-10 | 2013-06-25 | Futurewei Technologies, Inc. | Network availability enhancement technique for packet transport networks |
US8189476B1 (en) * | 2007-08-20 | 2012-05-29 | F5 Networks, Inc. | Dynamic trunk distribution on egress |
US20090097401A1 (en) * | 2007-10-12 | 2009-04-16 | Wael William Diab | Method and system for configurable data rate thresholds for energy efficient ethernet |
US20090216886A1 (en) * | 2008-02-21 | 2009-08-27 | Inventec Corporation | Method of multi-path accessing remote logic device under linux system |
US8539513B1 (en) | 2008-04-01 | 2013-09-17 | Alacritech, Inc. | Accelerating data transfer in a virtual computer system with tightly coupled TCP connections |
US8341286B1 (en) | 2008-07-31 | 2012-12-25 | Alacritech, Inc. | TCP offload send optimization |
US9306793B1 (en) | 2008-10-22 | 2016-04-05 | Alacritech, Inc. | TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies |
US8819161B1 (en) | 2010-01-18 | 2014-08-26 | Marvell International Ltd. | Auto-syntonization and time-of-day synchronization for master-slave physical layer devices |
US9253515B2 (en) * | 2012-03-11 | 2016-02-02 | Broadcom Corporation | Channel bonding synchronization |
US9251025B1 (en) | 2013-01-24 | 2016-02-02 | Seagate Technology Llc | Managed reliability of data storage |
US20160080246A1 (en) * | 2014-09-12 | 2016-03-17 | Futurewei Technologies, Inc. | Offloading Tenant Traffic in Virtual Networks |
Family Cites Families (144)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4539637A (en) * | 1982-08-26 | 1985-09-03 | At&T Bell Laboratories | Method and apparatus for handling interprocessor calls in a multiprocessor system |
GB8407102D0 (en) * | 1984-03-19 | 1984-04-26 | Int Computers Ltd | Interconnection of communications networks |
US4652874A (en) * | 1984-12-24 | 1987-03-24 | Motorola, Inc. | Serial communication interface for a local network controller |
US4641302A (en) * | 1985-06-24 | 1987-02-03 | Racal Data Communications Inc. | High speed packet switching arrangement |
JPS62243057A (ja) * | 1986-04-16 | 1987-10-23 | Hitachi Ltd | フアイル転送管理方式 |
US4737953A (en) * | 1986-08-04 | 1988-04-12 | General Electric Company | Local area network bridge |
US4850042A (en) * | 1987-04-14 | 1989-07-18 | Westinghouse Electric Corp. | Dual media local area network interfacing |
US4807111A (en) * | 1987-06-19 | 1989-02-21 | International Business Machines Corporation | Dynamic queueing method |
US4811337A (en) * | 1988-01-15 | 1989-03-07 | Vitalink Communications Corporation | Distributed load sharing |
US4899333A (en) * | 1988-03-31 | 1990-02-06 | American Telephone And Telegraph Company At&T Bell Laboratories | Architecture of the control of a high performance packet switching distribution network |
US4922503A (en) * | 1988-10-28 | 1990-05-01 | Infotron Systems Corporation | Local area network bridge |
US4933938A (en) * | 1989-03-22 | 1990-06-12 | Hewlett-Packard Company | Group address translation through a network bridge |
US5220562A (en) * | 1989-05-12 | 1993-06-15 | Hitachi, Ltd. | Bridge apparatus and a communication system between networks using the bridge apparatus |
GB8915137D0 (en) * | 1989-06-30 | 1989-08-23 | Inmos Ltd | Message routing |
US5179557A (en) * | 1989-07-04 | 1993-01-12 | Kabushiki Kaisha Toshiba | Data packet communication system in which data packet transmittal is prioritized with queues having respective assigned priorities and frequency weighted counting of queue wait time |
US5163046A (en) * | 1989-11-30 | 1992-11-10 | At&T Bell Laboratories | Dynamic window sizing in a data network |
US5159685A (en) * | 1989-12-06 | 1992-10-27 | Racal Data Communications Inc. | Expert system for communications network |
US5210746A (en) * | 1990-04-16 | 1993-05-11 | Motorola, Inc. | Communication system network having communication system fallback operation |
US5301333A (en) * | 1990-06-14 | 1994-04-05 | Bell Communications Research, Inc. | Tree structured variable priority arbitration implementing a round-robin scheduling policy |
US5309437A (en) * | 1990-06-29 | 1994-05-03 | Digital Equipment Corporation | Bridge-like internet protocol router |
US5231633A (en) * | 1990-07-11 | 1993-07-27 | Codex Corporation | Method for prioritizing, selectively discarding, and multiplexing differing traffic type fast packets |
US5150358A (en) * | 1990-08-23 | 1992-09-22 | At&T Bell Laboratories | Serving constant bit rate traffic in a broadband data switch |
US5481540A (en) * | 1990-08-24 | 1996-01-02 | At&T Corp. | FDDI bridge frame learning and filtering apparatus and method |
US5251205A (en) * | 1990-09-04 | 1993-10-05 | Digital Equipment Corporation | Multiple protocol routing |
US5353412A (en) * | 1990-10-03 | 1994-10-04 | Thinking Machines Corporation | Partition control circuit for separately controlling message sending of nodes of tree-shaped routing network to divide the network into a number of partitions |
US5490260A (en) * | 1990-12-14 | 1996-02-06 | Ceram, Inc. | Solid-state RAM data storage for virtual memory computer using fixed-sized swap pages with selective compressed/uncompressed data store according to each data size |
CA2065578C (en) * | 1991-04-22 | 1999-02-23 | David W. Carr | Packet-based data compression method |
US5420862A (en) * | 1991-06-14 | 1995-05-30 | Digital Equipment Corporation | Router using remote address resolution to enable bridge like data forwarding |
US5500860A (en) * | 1991-06-14 | 1996-03-19 | Digital Equipment Corporation | Router using multiple hop redirect messages to enable bridge like data forwarding |
US5392432A (en) * | 1991-08-27 | 1995-02-21 | At&T Corp. | Method for automatic system resource reclamation for object-oriented systems with real-time constraints |
US5623489A (en) * | 1991-09-26 | 1997-04-22 | Ipc Information Systems, Inc. | Channel allocation system for distributed digital switching network |
US5875464A (en) | 1991-12-10 | 1999-02-23 | International Business Machines Corporation | Computer system with private and shared partitions in cache |
CA2092134C (en) * | 1992-03-24 | 1998-07-21 | Anthony J. Mazzola | Distributed routing network element |
US5675714A (en) * | 1992-03-30 | 1997-10-07 | Canon Kabushiki Kaisha | Mode identifying method and output apparatus using such a method |
US5313454A (en) * | 1992-04-01 | 1994-05-17 | Stratacom, Inc. | Congestion control for cell networks |
US5343471A (en) * | 1992-05-11 | 1994-08-30 | Hughes Aircraft Company | Address filter for a transparent bridge interconnecting local area networks |
US5432907A (en) * | 1992-05-12 | 1995-07-11 | Network Resources Corporation | Network hub with integrated bridge |
US5742760A (en) | 1992-05-12 | 1998-04-21 | Compaq Computer Corporation | Network packet switch using shared memory for repeating and bridging packets at media rate |
US5457681A (en) * | 1992-06-05 | 1995-10-10 | Washington University | ATM-Ethernet portal/concentrator |
JPH066362A (ja) * | 1992-06-23 | 1994-01-14 | Hitachi Ltd | Lanにおけるホストシステムのメッセージ処理負荷分散方式 |
US5425028A (en) * | 1992-07-16 | 1995-06-13 | International Business Machines Corporation | Protocol selection and address resolution for programs running in heterogeneous networks |
US5291482A (en) * | 1992-07-24 | 1994-03-01 | At&T Bell Laboratories | High bandwidth packet switch |
US5490252A (en) * | 1992-09-30 | 1996-02-06 | Bay Networks Group, Inc. | System having central processor for transmitting generic packets to another processor to be altered and transmitting altered packets back to central processor for routing |
JP3104429B2 (ja) * | 1992-10-08 | 2000-10-30 | 株式会社日立製作所 | コピー機能を有する共通バッファ形atmスイッチ及びそのコピー方法 |
US5649109A (en) * | 1992-10-22 | 1997-07-15 | Digital Equipment Corporation | Apparatus and method for maintaining forwarding information in a bridge or router using multiple free queues having associated free space sizes |
US5404538A (en) * | 1992-10-28 | 1995-04-04 | International Business Machines Corporation | Method and apparatus for multilevel bus arbitration |
JPH07118717B2 (ja) * | 1993-01-05 | 1995-12-18 | 日本電気株式会社 | マルチプロトコル対応のパケット網構成方法 |
US5410722A (en) * | 1993-01-21 | 1995-04-25 | Conner Peripherals, Inc. | Queue system for dynamically allocating and moving memory registers between a plurality of pseudo queues |
US5459714A (en) * | 1993-02-22 | 1995-10-17 | Advanced Micro Devices, Inc. | Enhanced port activity monitor for an integrated multiport repeater |
US5365514A (en) * | 1993-03-01 | 1994-11-15 | International Business Machines Corporation | Event driven interface for a system for monitoring and controlling a data communications network |
US5485578A (en) * | 1993-03-08 | 1996-01-16 | Apple Computer, Inc. | Topology discovery in a multiple-ring network |
US5386413A (en) * | 1993-03-19 | 1995-01-31 | Bell Communications Research, Inc. | Fast multilevel hierarchical routing table lookup using content addressable memory |
JPH077524A (ja) * | 1993-04-06 | 1995-01-10 | Siemens Ag | 通信加入者のアドレス識別子へのアクセス方法 |
US5402415A (en) * | 1993-04-22 | 1995-03-28 | Washington University | Multicast virtual circuit switch using cell recycling |
AU675302B2 (en) * | 1993-05-20 | 1997-01-30 | Nec Corporation | Output-buffer switch for asynchronous transfer mode |
US5426736A (en) * | 1993-05-26 | 1995-06-20 | Digital Equipment Corporation | Method and apparatus for processing input/output commands in a storage system having a command queue |
US5396602A (en) * | 1993-05-28 | 1995-03-07 | International Business Machines Corp. | Arbitration logic for multiple bus computer system |
GB9312135D0 (en) * | 1993-06-11 | 1993-07-28 | Inmos Ltd | Generation of checking data |
US5394402A (en) * | 1993-06-17 | 1995-02-28 | Ascom Timeplex Trading Ag | Hub for segmented virtual local area network with shared media access |
JP2546505B2 (ja) * | 1993-06-23 | 1996-10-23 | 日本電気株式会社 | Cladにおけるアドレス学習装置 |
US5555405A (en) * | 1993-07-06 | 1996-09-10 | Digital Equipment Corporation | Method and apparatus for free space management in a forwarding database having forwarding entry sets and multiple free space segment queues |
US5515376A (en) * | 1993-07-19 | 1996-05-07 | Alantec, Inc. | Communication apparatus and methods |
US5473607A (en) * | 1993-08-09 | 1995-12-05 | Grand Junction Networks, Inc. | Packet filtering for data networks |
US5422838A (en) * | 1993-10-25 | 1995-06-06 | At&T Corp. | Content-addressable memory with programmable field masking |
US5574861A (en) * | 1993-12-21 | 1996-11-12 | Lorvig; Don | Dynamic allocation of B-channels in ISDN |
US5485455A (en) * | 1994-01-28 | 1996-01-16 | Cabletron Systems, Inc. | Network having secure fast packet switching and guaranteed quality of service |
JP2713153B2 (ja) * | 1994-03-09 | 1998-02-16 | 日本電気株式会社 | ブリッジ装置 |
JPH07254906A (ja) * | 1994-03-16 | 1995-10-03 | Mitsubishi Electric Corp | 優先処理機能を有するシフトレジスタ、それを用いたパケット通信用スイッチング装置及びそれを用いたatmネットワーク並びに優先処理を伴うパケット通信方式及び優先処理を伴うatm通信方式 |
JP3542159B2 (ja) | 1994-03-17 | 2004-07-14 | 株式会社日立製作所 | マルチプロセッサ構造のブリッジ |
US5509123A (en) * | 1994-03-22 | 1996-04-16 | Cabletron Systems, Inc. | Distributed autonomous object architectures for network layer routing |
US5459717A (en) * | 1994-03-25 | 1995-10-17 | Sprint International Communications Corporation | Method and apparatus for routing messagers in an electronic messaging system |
US5493564A (en) * | 1994-03-25 | 1996-02-20 | Sprint International Communications Corp. | Method and apparatus for global routing of electronic messages |
EP0676878A1 (en) * | 1994-04-07 | 1995-10-11 | International Business Machines Corporation | Efficient point to point and multi point routing mechanism for programmable packet switching nodes in high speed data transmission networks |
EP0680178A1 (en) * | 1994-04-28 | 1995-11-02 | Hewlett-Packard Company | Cell switch fabric chip |
EP0680179B1 (en) * | 1994-04-28 | 2001-09-05 | Hewlett-Packard Company, A Delaware Corporation | Multicasting apparatus |
EP0680173B1 (en) * | 1994-04-28 | 2003-09-03 | Hewlett-Packard Company, A Delaware Corporation | Multicasting apparatus |
EP0681381A1 (en) * | 1994-05-06 | 1995-11-08 | International Business Machines Corporation | Method and apparatus for modifying frame check sequences in intermediate high speed network nodes |
EP0684716B1 (en) * | 1994-05-25 | 2002-02-27 | International Business Machines Corporation | A data communication network and method for operating said network |
US5461611A (en) * | 1994-06-07 | 1995-10-24 | International Business Machines Corporation | Quality of service management for source routing multimedia packet networks |
US5617421A (en) * | 1994-06-17 | 1997-04-01 | Cisco Systems, Inc. | Extended domain computer network using standard links |
US5583981A (en) * | 1994-06-28 | 1996-12-10 | Microsoft Corporation | Method and system for changing the size of edit controls on a graphical user interface |
EP0691769A1 (en) * | 1994-07-07 | 1996-01-10 | International Business Machines Corporation | Voice circuit emulation system in a packet switching network |
US5615340A (en) * | 1994-07-21 | 1997-03-25 | Allied Telesyn Int'l Corp. | Network interfacing apparatus and method using repeater and cascade interface with scrambling |
US5751967A (en) | 1994-07-25 | 1998-05-12 | Bay Networks Group, Inc. | Method and apparatus for automatically configuring a network device to support a virtual network |
US5640605A (en) * | 1994-08-26 | 1997-06-17 | 3Com Corporation | Method and apparatus for synchronized transmission of data between a network adaptor and multiple transmission channels using a shared clocking frequency and multilevel data encoding |
US5619500A (en) * | 1994-09-01 | 1997-04-08 | Digital Link Corporation | ATM network interface |
US5594727A (en) * | 1994-09-19 | 1997-01-14 | Summa Four, Inc. | Telephone switch providing dynamic allocation of time division multiplex resources |
US5490139A (en) * | 1994-09-28 | 1996-02-06 | International Business Machines Corporation | Mobility enabling access point architecture for wireless attachment to source routing networks |
US5784573A (en) | 1994-11-04 | 1998-07-21 | Texas Instruments Incorporated | Multi-protocol local area network controller |
US5608733A (en) * | 1994-11-29 | 1997-03-04 | Valle; Richard | ATM inverse multiplexing |
US5837021A (en) | 1994-12-09 | 1998-11-17 | L'air Liquide, Societe Anonyme Pour L'etude Et L'exploitation Des Procedes Georges Claude | Installation for the treatment of at least one fluid, by passage through two adjacent masses of material |
KR0132960B1 (ko) | 1994-12-22 | 1998-04-21 | 양승택 | 망 노드 폭주상태 결정장치 및 방법 |
US5566170A (en) * | 1994-12-29 | 1996-10-15 | Storage Technology Corporation | Method and apparatus for accelerated packet forwarding |
US5550816A (en) * | 1994-12-29 | 1996-08-27 | Storage Technology Corporation | Method and apparatus for virtual switching |
US5563878A (en) * | 1995-01-05 | 1996-10-08 | International Business Machines Corporation | Transaction message routing in digital communication networks |
JP3099663B2 (ja) | 1995-02-09 | 2000-10-16 | 株式会社デンソー | 通信システム |
US5706472A (en) * | 1995-02-23 | 1998-01-06 | Powerquest Corporation | Method for manipulating disk partitions |
US5561666A (en) * | 1995-03-06 | 1996-10-01 | International Business Machines Corporation | Apparatus and method for determining operational mode for a station entering a network |
US5633865A (en) * | 1995-03-31 | 1997-05-27 | Netvantage | Apparatus for selectively transferring data packets between local area networks |
US5561791A (en) * | 1995-04-10 | 1996-10-01 | Digital Equipment Corporation | Method and apparatus for conditioning timed program independent of transport timing |
JPH08288965A (ja) | 1995-04-18 | 1996-11-01 | Hitachi Ltd | スイッチングシステム |
US5608726A (en) * | 1995-04-25 | 1997-03-04 | Cabletron Systems, Inc. | Network bridge with multicast forwarding table |
US5802278A (en) | 1995-05-10 | 1998-09-01 | 3Com Corporation | Bridge/router architecture for high performance scalable networking |
JP3515263B2 (ja) | 1995-05-18 | 2004-04-05 | 株式会社東芝 | ルータ装置、データ通信ネットワークシステム、ノード装置、データ転送方法及びネットワーク接続方法 |
JP2770782B2 (ja) | 1995-05-31 | 1998-07-02 | 日本電気株式会社 | Lan間接続装置 |
US5815737A (en) | 1995-06-05 | 1998-09-29 | Pmc-Sierra, Inc. | Approach for identifying a subset of asynchronous transfer mode (ATM) VPI/VCI values in the complete VPI/VCI range |
US5619661A (en) * | 1995-06-05 | 1997-04-08 | Vlsi Technology, Inc. | Dynamic arbitration system and method |
US5734865A (en) | 1995-06-07 | 1998-03-31 | Bull Hn Information Systems Inc. | Virtual local area network well-known port routing mechanism for mult--emulators in an open system environment |
US5636371A (en) * | 1995-06-07 | 1997-06-03 | Bull Hn Information Systems Inc. | Virtual network mechanism to access well known port application programs running on a single host system |
US5790808A (en) | 1995-07-06 | 1998-08-04 | 3 Com | Active topology maintenance in reconfiguring bridged local area networks with state transition with forgetting interval |
US5751971A (en) | 1995-07-12 | 1998-05-12 | Cabletron Systems, Inc. | Internet protocol (IP) work group routing |
US5651002A (en) * | 1995-07-12 | 1997-07-22 | 3Com Corporation | Internetworking device with enhanced packet header translation and memory |
US5754540A (en) | 1995-07-18 | 1998-05-19 | Macronix International Co., Ltd. | Expandable integrated circuit multiport repeater controller with multiple media independent interfaces and mixed media connections |
US5691984A (en) * | 1995-08-15 | 1997-11-25 | Honeywell Inc. | Compact, adaptable brouting switch |
US5740175A (en) | 1995-10-03 | 1998-04-14 | National Semiconductor Corporation | Forwarding database cache for integrated switch controller |
JPH09130421A (ja) | 1995-11-02 | 1997-05-16 | Furukawa Electric Co Ltd:The | 仮想ネットワーク管理方法 |
US5784559A (en) | 1995-11-06 | 1998-07-21 | Sun Microsystems, Inc. | Full duplex flow control for ethernet networks |
US5757771A (en) | 1995-11-14 | 1998-05-26 | Yurie Systems, Inc. | Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch |
US5684800A (en) * | 1995-11-15 | 1997-11-04 | Cabletron Systems, Inc. | Method for establishing restricted broadcast groups in a switched network |
US5754801A (en) | 1995-11-20 | 1998-05-19 | Advanced Micro Devices, Inc. | Computer system having a multimedia bus and comprising a centralized I/O processor which performs intelligent data transfers |
JP2842522B2 (ja) | 1995-12-06 | 1999-01-06 | 日本電気株式会社 | Atmスイッチ及びその制御方法 |
US5633810A (en) * | 1995-12-14 | 1997-05-27 | Sun Microsystems, Inc. | Method and apparatus for distributing network bandwidth on a media server |
US5689506A (en) * | 1996-01-16 | 1997-11-18 | Lucent Technologies Inc. | Multicast routing in multistage networks |
US5754774A (en) | 1996-02-15 | 1998-05-19 | International Business Machine Corp. | Client/server communication system |
US5740375A (en) | 1996-02-15 | 1998-04-14 | Bay Networks, Inc. | Forwarding internetwork packets by replacing the destination address |
US5781549A (en) | 1996-02-23 | 1998-07-14 | Allied Telesyn International Corp. | Method and apparatus for switching data packets in a data network |
US5724358A (en) | 1996-02-23 | 1998-03-03 | Zeitnet, Inc. | High speed packet-switched digital switch and method |
US5764634A (en) | 1996-03-13 | 1998-06-09 | International Business Machines Corporation | Lan switch with zero latency |
US5742604A (en) | 1996-03-28 | 1998-04-21 | Cisco Systems, Inc. | Interswitch link mechanism for connecting high-performance network switches |
US5764636A (en) | 1996-03-28 | 1998-06-09 | Cisco Technology, Inc. | Color blocking logic mechanism for a high-performance network switch |
US5740171A (en) | 1996-03-28 | 1998-04-14 | Cisco Systems, Inc. | Address translation mechanism for a high-performance network switch |
US5812527A (en) | 1996-04-01 | 1998-09-22 | Motorola Inc. | Simplified calculation of cell transmission rates in a cell based netwook |
US5923654A (en) | 1996-04-25 | 1999-07-13 | Compaq Computer Corp. | Network switch that includes a plurality of shared packet buffers |
US5878043A (en) | 1996-05-09 | 1999-03-02 | Northern Telecom Limited | ATM LAN emulation |
US5748631A (en) | 1996-05-09 | 1998-05-05 | Maker Communications, Inc. | Asynchronous transfer mode cell processing system with multiple cell source multiplexing |
US5802052A (en) | 1996-06-26 | 1998-09-01 | Level One Communication, Inc. | Scalable high performance switch element for a shared memory packet or ATM cell switch fabric |
US5872783A (en) | 1996-07-24 | 1999-02-16 | Cisco Systems, Inc. | Arrangement for rendering forwarding decisions for packets transferred among network switches |
US5748905A (en) | 1996-08-30 | 1998-05-05 | Fujitsu Network Communications, Inc. | Frame classification using classification keys |
US5835491A (en) | 1996-11-21 | 1998-11-10 | Xerox Corporation | Method for supporting multicast capabilities in switching networks with a reservation ring |
US5878232A (en) | 1996-12-27 | 1999-03-02 | Compaq Computer Corporation | Dynamic reconfiguration of network device's virtual LANs using the root identifiers and root ports determined by a spanning tree procedure |
US5852607A (en) | 1997-02-26 | 1998-12-22 | Cisco Technology, Inc. | Addressing mechanism for multiple look-up tables |
US6591303B1 (en) * | 1997-03-07 | 2003-07-08 | Sun Microsystems, Inc. | Method and apparatus for parallel trunking of interfaces to increase transfer bandwidth |
US5859849A (en) | 1997-05-06 | 1999-01-12 | Motorola Inc. | Modular switch element for shared memory switch fabric |
US5856977A (en) | 1997-05-15 | 1999-01-05 | Yang; Muh-Rong | Distribution network switch for very large gigabit switching architecture |
-
1997
- 1997-06-30 US US08/885,072 patent/US6049528A/en not_active Expired - Lifetime
-
1998
- 1998-06-29 EP EP98305137A patent/EP0889624B1/en not_active Expired - Lifetime
- 1998-06-29 DE DE69812777T patent/DE69812777T2/de not_active Expired - Lifetime
- 1998-06-30 JP JP10184666A patent/JPH11145990A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009524356A (ja) * | 2006-01-23 | 2009-06-25 | アライドテレシスホールディングス株式会社 | 通信ネットワークを通じたトラフィック分配を向上させる方法およびシステム |
JP2009296084A (ja) * | 2008-06-03 | 2009-12-17 | Hitachi Ltd | マルチパス通信システム |
Also Published As
Publication number | Publication date |
---|---|
DE69812777D1 (de) | 2003-05-08 |
US6049528A (en) | 2000-04-11 |
DE69812777T2 (de) | 2004-02-05 |
EP0889624A1 (en) | 1999-01-07 |
EP0889624B1 (en) | 2003-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6049528A (en) | Trunking ethernet-compatible networks | |
US5918021A (en) | System and method for dynamic distribution of data packets through multiple channels | |
US8649387B2 (en) | Method and system for fibre channel and ethernet interworking | |
JP4898781B2 (ja) | オペレーティング・システム・パーティションのためのネットワーク通信 | |
US8520686B2 (en) | Method for interfacing a fibre channel network with an ethernet based network | |
EP1459485B1 (en) | Methods and apparatus for encapsulating a frame for transmission in a storage area network | |
US7145866B1 (en) | Virtual network devices | |
US9219683B2 (en) | Unified infrastructure over ethernet | |
EP0861544B1 (en) | Method for establishing restricted broadcast groups in a switched network | |
US7164656B2 (en) | Communicating data through a network so as to ensure quality of service | |
US6600743B1 (en) | IP multicast interface | |
US20020075878A1 (en) | Ip multicast interface | |
US6925078B1 (en) | Network adaptor driver with destination based ordering | |
AU2004300680A1 (en) | Fibre channel switch that enables end devices in different fabrics to communicate with one another while retaining their unique fibre channel domain_IDs | |
US6327621B1 (en) | Method for shared multicast interface in a multi-partition environment | |
JP4995387B2 (ja) | 通信システム | |
Cisco | Bridging and IBM Networking Overview | |
Cisco | Bridging and IBM Networking Overview | |
Cisco | Bridging and IBM Networking Overview | |
Cisco | Bridging and IBM Networking Overview | |
Cisco | Bridging and IBM Networking Overview | |
Cisco | Frame Relay Commands | |
Cisco | Bridging and IBM Networking Overview | |
Cisco | Bridging and IBM Networking Overview | |
Cisco | Bridging and IBM Networking Overview |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050415 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070813 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070821 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080205 |