JP3989932B2 - マスタ−スレーブ分散通信システムにおけるローカル同期の方法および機構 - Google Patents

マスタ−スレーブ分散通信システムにおけるローカル同期の方法および機構 Download PDF

Info

Publication number
JP3989932B2
JP3989932B2 JP2004502557A JP2004502557A JP3989932B2 JP 3989932 B2 JP3989932 B2 JP 3989932B2 JP 2004502557 A JP2004502557 A JP 2004502557A JP 2004502557 A JP2004502557 A JP 2004502557A JP 3989932 B2 JP3989932 B2 JP 3989932B2
Authority
JP
Japan
Prior art keywords
data
packet
control information
synchronization
path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004502557A
Other languages
English (en)
Other versions
JP2005524343A (ja
Inventor
アベル、フランソワ、ジー
ベナー、アラン
ブラン、アラン
コルマン、ミシェル
グサト、ミッチ
ポレ、ミシェル
シューマッハー、ノルベルト
ベルハッペン、マーク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2005524343A publication Critical patent/JP2005524343A/ja
Application granted granted Critical
Publication of JP3989932B2 publication Critical patent/JP3989932B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1515Non-blocking multistage, e.g. Clos
    • H04L49/153ATM switching fabrics having parallel switch planes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/45Arrangements for providing or supporting expansion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3072Packet splitting

Landscapes

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

Description

本発明は、電子通信ネットワークにおけるパケット処理技法およびそのために使用する処理機構の設計構造に関する。より詳細には、本発明は、並列動作する複数の処理要素(またはモジュール)を同期させ、複数の並列処理要素の統合総スループットの合計に等しい総スループットを有する単一の処理機構の同等物を構成する方法および装置に関する。本発明の典型的な適用はパケット・スイッチング・システムにおいてである。
現行世代のスイッチ・ファブリック設計のあらゆる競合要件の中で、ポート数のスケーラビリティと費用効果とは、取り組むべき2つの基本的問題である。費用効果が高くスケーラブルなスイッチ・ファブリックを構築する方法は2種類に分類される。第1の方法は、広く採用されている一段スイッチ・アーキテクチャである。これは、極めて効率的であるが、(ポート数の線形増加の結果として)その複雑度が二乗に増大するため、スケーラビリティには限界がある。第2の方法は、多段スイッチ・アーキテクチャである。これは、並列度を増すことによってスループットを向上させるが、一般に一段スイッチに比べて複雑であり、効率も低い。
多段スイッチ・アーキテクチャは、多段結合網(MultistageInterconnection Network:MIN)とも呼ばれる。すなわち、交換資源およびリンク資源を複数の接続によって共用することができるように、リンクを介して多段またはメッシュ状に相互接続した「小規模な」一段交換モジュールから成るファブリック機構であり、その結果、複雑度の増大はNよりも低くなり、一般には、NlogN程度である。ここで、Nはスイッチ・ファブリックの合計ポート数である。極めて高いスループットを得るためと、多数のポートに対応するためにはMINが必要であることは認められているが、その一般的な導入は最近10年間にわたって再三、先延ばしされてきた。その理由の一つは、10年間における一段交換システム設計の絶え間ない革新が、基礎技術の進歩によって生じた新たな可能性とともに、市場の要求の増大に対応することができたためである。また、一段交換アーキテクチャは、そのスケーラビリティの範囲内で、最もコスト・パフォーマンス効果の高い電子パケット・スイッチ・ネットワーク構築方法を実現するという点で極めて魅力的であり続けている。
一段スイッチ・アーキテクチャは、集中制御を行うアーキテクチャと、分散制御を行うアーキテクチャの2種類に分けられる。後者のタイプは、各ドメインが独立したスケジューラ(制御ドメイン)を有する並列スイッチ・ドメインから成る。その主な欠点は、複数のスイッチ・ドメインにわたって分散したパケットを処理する負荷バランシング・アルゴリズムと並べ替えアルゴリズムによって生じる、ある程度の複雑度オーバーヘッドを要することである。文献の中でこれは並列パケット交換(Parallel Packet SwitchingPPS)とも呼ばれる。一方、集中制御を使用するスイッチ・アーキテクチャには、スイッチ・ドメインが1つしかなく、このドメインは、通常、並列動作するいくつかのスイッチ・スライスから成る。複数のスイッチ・スライスを並列して動作させることにより、スイッチ・ポート速度を向上させることができ、したがって、より高速の交換コアを構築することができる。この手法は、多数の外部リンクをより高速の単一リンクとして多重化することによって多数の外部リンクを扱うシステムの構築を可能にするため、多数の一段スイッチで使用される。特定の回路技術の場合、この技法の適用可能性には限界があるが、その適用可能範囲内では、より大規模なスイッチに拡張する最もコスト効果の高い方法となる。集中制御手法に基づく一段スイッチ設計が広く普及している他の理由としては、そのスケジューリング方式が単一であることと、共用メモリ方式の出力待ち行列化構造、クロスバー方式の入力待ち行列化構造、または入出力待ち行列化組合せ構造など、どの待ち行列化構造でも実現可能であることが挙げられる。
本発明に関連する問題は、集中制御を使用するスイッチ・アーキテクチャに関する。その目的は、この種のアーキテクチャの本質的な拡張限界を改善する手段を提供することである。これは、複数のスイッチ要素の統合を容易にすることによってなされ、それらのスイッチ要素を並列にしていわゆる「ポート速度増加」モードにする。MINアーキテクチャは、通常一段交換モジュールで構成されるため、この改善は間接的にMINアーキテクチャにも適用される。
コンピュータ分野では、より高い処理能力を達成するために、以前からデータ並列処理およびパイプライン並列処理が使用されてきた。電子ネットワークにおけるパケット交換技術に適用する場合、これは、パケットが複数の並列スライスにわたって交換されることになり、「ポート速度増加」と呼ばれる場合がある。
ポート速度増加に関する初期の記述は、W.E.デンゼル(Denzel)、A.P.J.エングバーセン(Engbersen)、およびI.イリアディス(Iliadis)による「Gb/s級速度のATMのための柔軟な共用バッファ・スイッチ(Aflexible shared-buffer switch for ATM at Gb/s rates)」(Computer Networks andISDN Systems, Vo.27, No.4、1995年1月、611〜624頁)という名称の論文に記載されている。同論文では、ポート速度増加を使用して、複数のスレーブ・チップをスタックし、それらのチップを単一のマスタ・チップによって制御することによって、モジュラ式にポート速度を増加させている。欧州特許出願EP0849917A2号には、出力待ち行列化スイッチ・アーキテクチャに適用される特定のポート速度増加実施形態も記載されている。
本発明に関連する問題について、以下にさらに詳述する。ポート速度増加の周知の難点は、マスタ・モジュールとスレーブ・モジュールを厳密に同期させる必要があるため、実装が複雑なことである。高ポート速度では、これによって同期ロジックが複雑または高コスト、あるいはその両方を生じさせる結果となり、それによって、通常は、実際の並列度が制限され、したがって、達成可能な最大スループットも制限されることになる。したがって、ポート速度増加方式のスケーラビリティを、同期問題によって生じる実装の複雑さから切り離す必要がある。
ポート速度増加モードで動作させたスイッチ・ファブリック・コアでは、構成スイッチを「マスタ」または「スレーブ」スイッチと呼ぶ。ポート速度増加スイッチ・ファブリックには、1個のマスタと1または複数のスレーブ構成要素が含まれる。マスタとスレーブは、チェーン、環状、またはツリーなどの任意のトポロジで接続することができる。図1を参照しながら、ポート速度増加の一般的概念について、以下で説明/再確認する。図1には、スレーブを1個のみ使用した従来技術の商品であるIBM PRS64Gに関する例が図示されている。PRS64Gは、各ポートが2Gb/sで動作し、合計総帯域幅が64Gb/sになる、32個の入力ポートと32個の出力ポートを実装するパケット・ルーティング・スイッチである。ポート速度増加モードでこれらの2つのチップを組み合わせることによって、物理ポートを4Gb/sで動作させることができ、総帯域幅の2倍(128Gb/s)の処理能力を持つスイッチ・ファブリックを構築することができる。交換するパケットを入力ファブリック・インタフェースが受け取ると、パケットは、「論理ユニット」(LU)(以下で「セグメント」と呼ぶこともある)と呼ばれるいくつかの部分に分割される。この特定の例では、LUの数は、構成スイッチ数と同じであるが、これは必要条件ではない。次に、入力ファブリック・インタフェースは、各パケットの1個のLUをマスタ・スイッチに送り、その次のLUをスレーブ・スイッチに送る。最初のLUには、最初のパケット・ペイロードは一部しか含まれないが、処理情報を含むパケット・ヘッダの全体を有する。2番目のLUはスレーブに渡され、ペイロード情報のみが含まれ、ルーティング情報は含まれない。マスタは、そのLUを、パケット・ヘッダによって伝達されるルーティング情報およびサービス品質情報に従って処理し、適切な(導出)制御情報を送ることによってそのスケジューリング決定をスレーブに通知する。マスタが受け取った各LUについて、導出制御情報が、いわゆる入力ポート速度増加バスを介してスレーブに送られる。同様に、マスタが送信パケットをスケジュールすると、同様の制御情報が出力ポート速度増加バスを介してスレーブに送られる。出力制御経路の伝搬遅延のため、マスタ出力LUは実際にはスレーブ出力LUよりも早めに発信されることがある。また、2つの出力LUが出力ファブリック・インタフェースにほぼ同時に到着する必要がある場合は、マスタとスレーブの間に追加の送信同期機構が必要な場合もある。以上の説明から、ポート速度増加ファブリックは、伝搬遅延の制御と、2つの異なる流れ、すなわち、ファブリック・コアおよび出力ファブリック・インタフェースに向かう入力ファブリック・インタフェースからのデータ・フロー(図1で水平方向に図示)と、マスタから1または複数のスレーブへの制御フロー(図1で垂直方向に図示)との正確な合致とを必要とすることが明らかである。図1のパケット時間の例(64バイトのパケットで128ns)と、(単一ボード上に構成された)スイッチ・ファブリック・コアのコンパクトさを考えた場合、これは、現行技術の単一ボード設計では十分な時間である128nsの1パケット・サイクル以内に制御情報がスレーブに確実に到着するようにすることによって容易に達成可能であった。
一方、データ・リンク速度の絶え間ない高速化とシステム・サイズの増大のために、速度増加システムの構築はますます困難になっている。一方では、高速化したデータ・リンク速度によってパケット所要時間が短縮されたが、ポート速度増加実装における並列度を高めることが必要になった。他方では、システム・サイズが大きくなったことによって、設計者はスイッチ・ファブリックを複数のボードおよびラックに分散させざるを得なくなっており、それによって、ファブリック内のデータ・フローまたは制御フロー、あるいはその両方のリンク距離が長くなっている。このように厳しくなったシステム要件とサイズを考えると、物理的に分散していると同時にパケット所要時間が短縮された要素間の伝搬遅延を正確に制御し、整合させることは極めて困難でコストのかかるものとなる。具体的には、1個のパケットからの複数のLUがマスタ・スイッチと1または複数のスレーブ・スイッチとに同時またはほぼ同時に到着しない場合も起こる可能性がある。実際、まったく異なるパケットからのLUが、マスタ・スイッチまたはスレーブ・スイッチ、あるいはその両方に、同時またはほぼ同時に到着することも起こり得る。
図2に示すような1個のマスタとN−1個のスレーブから成るチェーン方式のトポロジの例を想定すると、考えられる解決策は、システム初期設定時に各スレーブに制御経路の待ち時間を測定し、各スレーブのデータ経路に、制御経路の伝搬遅延を補償し、整合させるデジタル・プログラム可能な遅延を挿入することである。制御経路待ち時間の測定は、マスタによってすべてのスレーブにブロードキャストされる同期信号を基準にして行われる。各スレーブが制御経路の待ち時間を計算すると、データ経路のデジタル・プログラム可能遅延がそれに応じて各スレーブ内で個別に設定され、それによって制御経路の遅延とデータ経路の遅延がパケット・サイクルに基づいて整合される。この提案の方向性は正しいが、複数のポート速増加データ経路における異なる待ち時間を補償することができないため、問題の半分しか解決していない(図2のデータ経路スキューを参照)。実際、提案されているこの方式は、入力ファブリック・インタフェースによって送られたすべてのLUが、パケット・サイクル期間よりも短いスキュー窓内にファブリック・コアに到達するように、システムがある程度厳密に同期化されている場合にのみ効果がある。10Gb/s(OC192)程度のポート速度では、物理ファブリック・サイズを、たとえば単一電子ラックのようなコンパクトな方法で構築することができるポート数であれば、達成可能であるかも知れない。よりサイズが大きく、40Gb/s(OC768)などのより高いポート速度のシステムの場合、ローカル同期方法は、制御経路の待ち時間を補償する必要があるだけでなく、データと制御情報の両方の伝搬経路における予測不能なスキューも補償しなければならず、それを任意の(恣意的な)トポロジについて行わなければならない。また、容易に拡張可能にするために、この方法は、ポート速度増加の概念によって生じる同期の制約を緩和することができなければならない。
欧州特許出願EP0849917A2号 W.E.デンゼル(Denzel)、A.P.J.エングバーセン(Engbersen)、およびI.イリアディス(Iliadis)、「Gb/s級速度のATMのための柔軟な共用バッファ・スイッチ(Aflexible shared-buffer switch for ATM at Gb/s rates)」(Computer Networks andISDN Systems, Vo.27, No.4、1995年1月、611〜624頁)
本発明の目的は、一般には、任意のトポロジの分散マスタ−スレーブ通信システムの各モジュールにおけるデータと制御情報のローカル同期を実現する方法および装置を提供することである。同期は、データと制御情報の伝搬経路における予測不能なスキューを補償することによって実現される。各補償の大きさと符号は、通信システムを通して同期パケットを送ることによって決定される。
他の目的は、分散システムのすべての同期点において、データ経路と制御経路との間の伝搬遅延差をローカルで独立して測定する手段を提供することである。このローカル測定によって、システムがローカルでは同期し、大域的には非同期方式で動作することができるようにすることによって、集中制御による分散通信システムの本質的な速度スケーラビリティ限界に対処することができる。マスタと複数のスレーブの大域同期方式と異なるこの方式の利点は、集中制御システムの規模を、より高度の並列性と、任意の数のスレーブと任意のトポロジとで動作するように変えることができることである。具体的には、この方式は、大規模な分散システムに通常見られる、緩慢に変化する位相のわずかに異なる周波数で異なるモジュールを動作させる、プレシオクロナス・システムの構築を可能にする。
本発明によると、各データ・パケットが制御情報とデータ・ペイロードとを有するヘッダを含む、データ・パケットを処理する通信システムが提供される。このシステムは、データ・パケットを受け取る入力ポートを含み、各入力ポートで各データ・パケットがセグメントに分割される。このシステムは、さらに、セグメントを並列処理するマスタ・ユニットと1または複数のスレーブ・ユニットとを含む。マスタ・ユニットは、データ経路を介して各パケットのヘッダを受け取るように適応化され、1または複数のスレーブ・ユニットは、データ経路を介してデータ・セグメントを受け取るように適応化されている。制御経路を介して、マスタ・ユニットから1または複数のスレーブ・ユニットに導出制御情報を渡すことができる。このシステムには、やはりセグメントに分割された同期パケットを、入力ポートからシステム全体を通して通常のデータ・パケットと同じ経路を介して送り、通常の導出制御情報と同じ経路でシステムに同期制御情報を通す同期化手段(46、47、510、520、570)が備えられている。1または複数のスレーブ・ユニットのそれぞれは、同期パケット・セグメントとそれに対応する同期制御情報を受け取ったときに、データ経路と制御経路との間の伝搬遅延差を表す時間シフト情報を入手する、第1の手段とも呼ぶ時間シフト情報手段(533、534、543、544)を含む。1または複数のスレーブ・ユニットのそれぞれは、時間シフト情報手段が入手した時間シフト情報に応じてデータ・セグメントまたは導出制御情報を遅延させる、第2の手段とも呼ぶ遅延手段(530、531、532、540、541、542、581、582、583)を含む。
本発明の第2の態様によると、各データ・パケットが制御情報とデータ・ペイロードとを有するヘッダを含むデータ・パケットを処理する通信機構であって、入力ポートにおいて各データ・パケットがセグメントに分割される、該データ・パケットを受け取る入力ポートを含み、
該セグメントの並列処理のためのマスタ・ユニットと1または複数のスレーブ・ユニットとを含み、該マスタ・ユニットは、データ経路を介して各パケットから制御情報を有するヘッダを受け取るように適応化され、該1または複数のスレーブ・ユニットはデータ経路を介してデータ・セグメントを受け取るように適応化され、該マスタ・ユニットから該1または複数のスレーブ・ユニットに制御回路を介して導出制御情報が渡される通信機構において、
セグメントに分割された同期パケットを、該入力ポートから通常のデータ・パケットと同じ経路で該システムを通して送り、通常の導出制御情報と同じ経路で該システムに同期制御情報を通す手段(46、47、510、520、570)であって同期化手段とも呼ぶ手段を設け、
各スレーブ・ユニットは、同期パケット・セグメントとそれに対応する同期制御情報とを受け取ったときに、該データ経路と該制御経路との伝搬遅延差を表す時間シフト情報を入手する第1の手段(533、534、543、544)を含み、
各スレーブ・ユニットのそれぞれは、該第1の手段が入手した該時間シフト情報に応答してデータ・セグメントまたは導出制御情報を遅延させる第2の手段(530、531、532、540、541、542、581、582、583)を含む通信機構が提供される。
本発明の第3の態様によると、各データ・パケットが制御情報とデータ・ペイロードとを有するヘッダを含み、各データ・パケットが少なくとも1つの入力ポートを介して受領可能なデータ・パケットを処理するために設計されたマスタ−スレーブ通信システムにおけるローカル同期の方法であって、該システムにおいて各データ・パケットがセグメントの並列処理のために該入力ポートにおいてセグメントに分割され、
該システムは、該セグメントを並列処理するためのマスタ・ユニットと1または複数のスレーブ・ユニットとを含み、該マスタ・ユニットは、各パケットから制御情報を有する該ヘッダを受け取り、該1または複数のスレーブ・ユニットはデータ経路を介してデータ・セグメントを受け取り、該マスタ・ユニットから該1または複数のスレーブ・ユニットに制御経路を介して導出制御情報が渡され、
該方法は、データ経路と制御経路における異なる伝搬遅延にもかかわらず、スレーブ・ユニットにおける受信データ・セグメントと導出制御情報との正しい相関関係を補償するために、
(a)セグメントに分割された同期パケットを該入力ポートから、通常のデータ・パケットと同じ経路で該システムを通して送り、該同期パケットのヘッダから導出された同期制御情報を通常の導出制御情報と同じ経路でシステムに通すステップと、
(b)該1または複数のスレーブ・ユニットにおいて、同期パケット・セグメントとそれに対応する同期制御情報を受け取ったときに、該データ経路と該制御経路との伝搬遅延差を表す時間シフト情報を入手するステップと、
(c)該1または複数のスレーブ・ユニットにおいて、ステップ(b)で入手した該時間シフト情報によって表された該伝搬遅延差を、各受領パケット・セグメントごとに該パケット・セグメント自体または該導出制御情報を遅延させることによって補償するステップとを含む方法が提供される。
本発明のある利点は、同期方式がローカルで自己適応可能であることと、同期方式を堅牢にすることができることである。自己適応可能とは、同期プロセスが分散システムのすべての同起点でローカルかつ自律的に行われ、通信システムのいずれのモジュール間でも双方向通信が不要であることを意味する。データ経路または制御経路あるいはその両方の変動する遅延に対する堅牢性は、同期パケットを複数回、たとえば一定間隔でシステムを通して送ることによって達成することができる。
本発明の他の利点は、マスタ/スレーブ・セグメントがパケット・セグメント間のスキューを補償することができるため、入力アダプタ源がすべてのパケット・セグメントを同時に送信する必要がないことである。実際、送信パケット・セグメントを、制御経路上の直前のマスタ/スレーブが制御情報を経路内の次のスレーブに転送するのに要する時間に制御経路上のそれらの連続したセグメントのデータ経路スキューの差を加えた時間だけ遅延された時点でマスタおよびスレーブに送ることは有利である。これを行うことによって、制御経路待ち時間を補償するためにスレーブのデータ経路上で必要なバッファリングの量が削減される。この利点は、一段システム、または多段通信システムの最初の段でも有効である。
1段当たりの同期制約が緩和されるという利点によって、マスタ・プレーンが自己適応スレーブ・プレーンから時間的に独立するため、一段システムと多段システムの両方のマスタ・プレーンの設計自由度が向上する。多段システムにおけるローカル同期の利点は、各段を大域的に同期させた場合に各段によって加えられる余分な待ち時間がないことである。多段通信システムは、(同一技術の)一段システムより物理的にも大きいため、その種のシステムでは同期制約の緩和はさらに重要である。これは、より大きなシステムは、より長いリンクを介して接続された複数のボード/シェルフ/ラックにわたる可能性があるためである。帯域幅/伝送時間がますます増大/高速化することを考えると、同期制約をパケット長から切り離すことは重要な利点である。
本発明について、図面の図を例として説明するが、図の形態には限定されない。
図面全体を参照し、特に図3を参照しながら、以下「パケット」と呼ぶデータ項目を送信する汎用通信システム30について検討する。規模またはパフォーマンスの特定の厳格な要件を超えて、並列処理は所与の技術における唯一の実現可能な解決策である場合がある。
並列処理は、システムの区分化と分散とによって実現することができる。分散された部分30−1ないし30−Nの機能を合わせた統合機能は、元のシステム30の機能と同じである。したがって、パケット31も(セグメント)に区分化され、パケットの異なる部分をシステムの異なる部分で処理することによって、通信システムを通して伝送される。システムとパケットの区分化を、図3の下部に示す。このような並列システムの典型例は、M=Nであって、パケットの各セグメントが通信システムの対応する部分によって処理される場合である。
入力パケットのセグメント化は、外部装置33によって行われるものとし、以下、この外部装置33を「入力アダプタ」と呼ぶ。同様に、出力パケット・セグメントの再組立ても外部装置34によって行われるものとし、以下、この装置を「出力アダプタ」と呼ぶ。
導入部で述べたように、通信システムの機能をセグメント化し、分散させる方法はいくつかある。本発明に関連する問題は、集中制御を行う分散通信システムに該当し、このシステムを「マスタ−スレーブ]システム・クラスと呼ぶことがある。
マスタ−スレーブ・システム・クラスは、チェーン状、環状、ツリー状など任意のトポロジ、またはこの3種類のトポロジの任意の組合せで接続することができる。図2を参照しながら、集中制御による分散通信システムの入力動作について、他の多くの実施形態のうちの可能な1つの実施形態であるチェーン方式のトポロジに即して説明する。
集中制御による分散通信システムの重要な属性は、その内部リンクが入力外部回線速度よりもはるかに低速で動作可能なことである。外部回線速度をRと仮定すると、通信システムは、並列動作する複数(たとえばN個)のモジュールで構成することができ、それによって、個々のモジュール・リンクをR/Nの速度で動作させることができる。
入力パケットは、入力アダプタによってN個の同じセグメントに区分化されてから、それぞれがR/Nの速度で動作するN個の異なるリンクまたは接続20−0、20−1,...、20−N−1を介して送信される。パケット・ヘッダ(場合によってはペイロードも)を含む最初のセグメントは、マスタ・モジュール21に送られ、データ・ペイロードのみを含む他のN−1個のセグメントは、第1、第2、等々のスレーブ・モジュール22−1ないし22−N−1に送られる。到達可能な最高の並列度は、ヘッダのサイズによって決まり、ヘッダは単一のセグメントに収まらなければならない。したがって、Nはパケットのサイズをヘッダのサイズで割った値を超えることはできない。最大増加モードでは、最初のセグメントはペイロードをまったく伝搬しない。
入力アダプタによってすべてのセグメントが同時に送られるが、トポロジと、リンクの長さおよび品質によって、セグメントごとに伝搬時間τないしτN−1が異なる。したがって、所与のパケットのN個のセグメント23−0ないし23−N−1は、一般に、マスタとスレーブに同時またはほぼ同時に到着することはない。最も速い伝搬時間と最も遅い伝搬時間との差によって、「データ経路スキュー」窓が規定され、この窓は、簡単のために、パケット・サイクル時間に規格化されるものとする。また、極めて高帯域または大規模あるいはその両方の通信システムの場合、連続したパケットの複数のパケット・セグメントが単一リンクまたは接続20−0ないし20−N−1のそれぞれで伝搬中の場合がある。
マスタ・モジュール21は、セグメント23−0を受け取ると、ヘッダ情報を抽出し、そのセグメントを、ヘッダによって伝達されたルーティングとサービス品質(QoS)情報(処理情報)に従って処理する。その後、あるいは場合によってはそれと同時に、以下「導出制御情報」と呼ぶ制御情報24−0が生成され、制御インタフェース25−0を介してスレーブ・モジュール22−1に送信される。導出制御情報24−0は、最初のスレーブ・モジュール22−1に、マスタ・モジュール21によってなされた制御上の決定を通知するとともに、最初のスレーブ・モジュール22−1がその入力セグメント23−1を処理するために必要な情報を含む。したがって、データ・リンク20−0ないし20−N−1と同様に、インタフェース25−k(0≦k≦N−2)を介して伝搬中の導出制御情報は複数あることになる。
図2で仮定したチェーン方式のトポロジでは、最初のスレーブ・モジュール22−1が受け取った導出制御情報24−0は、2番目のスレーブ・モジュール22−2またはチェーン内の次のスレーブ・モジュールとそれ以降のモジュールにも同様に転送され、これは導出制御情報24−N−2が最後のスレーブ22−N−1に達するまで続く。ツリー状トポロジでは、その時導出制御情報24−0をすべてのスレーブにブロードキャストすることもできる。
図2のトポロジの例に戻ると、すべての導出制御情報24−0ないし24−N−2も、異なる伝搬遅延δないしδn−2を受ける場合がある。各スレーブがそのセグメント23−i(0≦i≦N−1)を対応する適切な導出制御情報24−j(0≦j≦N−2)に関連づけるためには、各スレーブ・モジュール22−1ないし22−N−1におけるデータ・フローと制御フローとの同期が有用である。この同期は、経路の伝搬遅延の差を補償することができるようにデータ経路または制御経路あるいはその両方にプログラム可能遅延を加えることによって行うことができる。実際には、最初のスレーブ・モジュール22−1によって加えられるこの補償は、導出制御情報24−0の伝搬遅延δ0から、リンク20−0と20−1との伝搬時間の差を差し引いた値、すなわち(δ−(τ−τ))に相当する。マスタ・モジュール21によって送られた導出制御情報に対する2番目のスレーブ・モジュール22−2の補償は、((δ+δ)−(τ−τ))に相当し、連鎖内の最後のスレーブ・モジュール22−N−1の補償は((δ+δ+...+δN−2)−(τ−τN−1))となる。
各スレーブ・モジュール22−1ないし22−N−1のデータ経路または制御経路あるいはその両方にプログラム可能遅延を加えるために、伝搬遅延差を計算する。すなわち、この差を表す時間シフト情報を入手する。次に、ローカルで必要な補償遅延を計算する。後者について、以下に詳述する。なお、前述の問題との一貫性をもたせるために、チェーン方式トポロジの環境で説明を続ける。
図4を参照すると、本発明の特徴は、以下「同期パケット」と呼ぶ特別な同期パケットを通信システムに導入し、制御フローとデータ・フローとの伝搬遅延差をローカルで(各スレーブ・モジュールの内部で)測定することである。これは、データ経路と制御経路のタイムスタンプを入手することによって行う。これらのタイムスタンプは2つの経路の時間シフトを示す。同期パケットは、通常のデータ・ストリームとは別個に区別可能であり、特定のプロセス47の制御下で入力アダプタ46によって導入される。同期パケットもセグメント43−0ないし43−N−1に分割され、これらのセグメントは通常のデータ・パケットのパケット・セグメントとは区別可能である。図4では、これが陰影付きパケット・セグメントで示されている。
同期パケットは、通常のデータ・パケット間に一定の間隔で周期的にシステムを通して送信することができる。しかし、場合によっては、システム全体を初期設定するときに同期パケットを1個のみ送るか、または必要と思われるときに(不定期に)パケットを送るだけでよい。
マスタ・モジュール41は、同期パケット・セグメント43−0を受け取ると、以下「導出同期制御情報」と呼ぶ、特定の制御情報44−0を生成し、データ・パケットに関連する通常の(非同期)導出制御情報の送信と同様に、制御インタフェース45−0を介して最初のスレーブ・モジュール42−1に送信する。導出同期制御情報は、通常の導出制御情報とは区別可能であり、図4でやはり陰影付きで示されている。
図5および図8を参照しながら、各スレーブ・モジュール内でのデータと導出制御情報の整合について、好ましい実施形態に従って説明する。
1つのスレーブ・モジュールがその入力制御インタフェース510を介して導出制御情報を受け取ると、そのスレーブ・モジュールは2つのことを行う。第一に、その導出制御情報を出力制御インタフェース520を介してチェーン内の次のスレーブ・モジュールにただちに転送する。第二に、「同期制御検出器」534によって入力制御情報を調べる。入力導出制御情報が通常のデータ・パケットに関係する場合は、第1のFiFoバッファ530に書き込まれる。入力導出制御情報が同期タイプのものであれば、バス551を介してシーケンサ550から供給されるシーケンス番号によって「制御タイムスタンプ・レジスタ」533のロードをトリガする。この好ましい実施形態では、導出同期制御情報も、第1のFiFo530に書き込まれるが、これは任意に選択できる。
同種の処理は、入力データ・インタフェース570を介して受け取った入力パケット・セグメントにも適用される。「同期パケット検出器」544が、同期パケット・セグメントから通常のデータ・セグメントを選別する。通常のデータ・パケット・セグメントは、第2のFiFoバッファ540に書き込まれ、同期パケット・セグメントは、やはりシーケンサ550から供給されるシーケンス番号によって「データ・タイムスタンプ・レジスタ」543のロートをトリガするために使用される。導出同期制御情報を第1のFiFoバッファ530に書き込むことに決定した場合、同期パケット・セグメントも第2のFiFoバッファ540に書き込まれる。
シーケンサ550は、基本的には、スレーブ・モジュールの内部クロックによって連続的にインクリメントされるカウンタである。シーケンサ550は、「リセット論理」590によって生成される特定のリセット・コマンド後に、ゼロからカウントを開始するように強制することができる。このリセット論理590は、検出器544および534によって同期パケット・セグメントまたはそれに対応する導出同期制御情報の最初の到着が検出されると、リセット・コマンドを生成する。リセット・コマンドによって、シーケンサ550にゼロからカウントを再開させることができる。
同期パケットの送信後、(通常はすべてのマスタおよびスレーブ・モジュールに共通の)制御プログラム580を使用し、バス581を介してデータ・タイムスタンプ・レジスタ533と制御タイムスタンプ・レジスタ543の内容を監視する。この制御プログラムは、両方のタイムスタンプ・レジスタの内容の差を計算し、それに応じてそれぞれのバス582および583を介して書込みポインタ値531および541を初期設定する。この特定の実施形態では、FiFo530および540は、環状シフト・レジスタとして使用されるものとするが、当業者なら、プログラム可能デジタル遅延を実現する他の手法も容易に考えつくことができるのは明らかである。FiFoバッファ530、540を環状式に動作させることは、FiFoバッファ530、540がそれぞれのバス582および583を介してイネーブルにされた後、読取りポインタと書込みポインタの両方が(内部クロックに制御されて)同時に増加し始めることと、(通常の動作モード、すなわち入力データ、アイドル・パケットまたは同期パケットおよび/または同期パケットの連続フロー状態において、および図5に示す回路による同期パケットの受領後にデータ経路と制御経路の伝搬遅延の変化がローカルに検出されない限り)書込みポインタと読取りポインタとの隔たりが一定していることを意味する。
読取りポインタと書込みポインタの設定は、以下のように行われる。読取りポインタ534および542は常にゼロに設定される。書込みポインタ531および541の設定は、データ・タイムスタンプ・レジスタ533および制御タイムスタンプ・レジスタ543から取り出された番号に基づく。制御プログラム580が、データ・セグメントをそれに対応する導出制御情報よりも先に受け取ったと判断した場合(すなわち{533}>{543})、必要な遅延に等しい値によってデータ書込みポインタ541を初期設定することによって、入力データ経路に遅延が加えられる。制御経路は遅延させる必要がないため、制御書込みポインタ531は、読取りポインタと同じ値、すなわちゼロによって初期設定することができる。
一方、制御プログラムが、制御経路の方がデータ経路よりも速いと判断した場合(すなわち{533}<{543})、必要な遅延によって制御書込みポインタ431を初期設定し、データ書込みポインタ541をゼロに設定することによって、制御経路に遅延が加えられる。必要な遅延は、タイムスタンプ・レジスタ533および543の内容の差の(絶対値)に等しい。
通常の動作モード中、データ・タイムスタンプ・レジスタ533と制御タイムスタンプ・レジスタ543の内容を、制御プログラム580、またはスレーブ・モジュール内に実装されたその他のハードウェア手段によって監視して、2つのレジスタ値の差が同じままであること、したがってシステムが同期し続けていることの確認と検証を行うこともできる。システムが同期し続けていることを確認する他の方法を、同期パケット/セグメントと導出同期制御情報の両方がFiFoバッファ540および530に書き込まれるときに入力ポート・コントローラ560内部で暗黙的に実施することもできる。その場合、第2のFiFoバッファ540から読み出された同期パケット・セグメントは、第1のFiFoバッファ530から読み出された他の導出同期制御情報と常に整合していなければならず、整合していない場合には、システムはもはや同期していないことになる。
なお、最も現実的な適用例では制御経路が最も遅い経路となるが、この好ましい実施形態では、データ・フローと制御フローを遅延させることができることに留意されたい。また、意図的に、データ経路スキュー窓Dskw(所与のパケットに関連づけられたパケット・セグメントの間のデータ・スキューの最大値として定義される)が、2つの連続したスレーブの間の制御経路のいずれかの待ち時間よりも常に小さい場合、すなわちDskw<δ0およびDskw<δ1、...Dskw<δN−2の場合、制御フローの遅延を補償する機構および論理は不要である。
前述のように、同期パケットは一定の間隔で周期的に送るか(これが通常のケースである)、または最初に1個の同期パケットのみを送るか、または要求時に同期パケットを送ることも可能である。
再び図2を参照すると、同期パケットの送信間隔は、入力アダプタによって、以下のように、少なくとも制御送信経路における可能な最長待ち時間にデータ経路スキュー窓の可能最大サイズを加えた値と同じ長さに決定される。
((maxδ0+maxδ1+...+maxδN−2)+Dskw)
2つの同期パケットの送信間の可能最小間隔を計算するために使用されるすべての数値は、意図的に与えられる最大絶対値に対応するため、容易に取得することができる。他方、2つの同期パケットの送信間の可能最大間隔に対する唯一の制限は、シーケンサ550によって対応可能な最大シーケンス範囲と、FiFoバッファ530、540の長さとによって与えられる。
また、この上限要件は図5の特定の実施形態に関するものであり、当業者なら、同期パケットのために他の送信規則を使用する他の実施形態も容易に考えることができることが明らかである。
再び図4を参照すると、同期パケット・セグメント43−i(0≦i≦N−1)と導出同期制御情報44−j(0≦j≦N−2)を通常のデータ・パケット・セグメントおよび通常の導出制御情報から区別する方法がいくつかある。企図される好ましい方法は、パケットをコード化し、たとえば8b/10bファイバ・チャネル/Ethernet(R)/InfinibandコードのK文字などの特別なコーディングを使用して、同期パケット・セグメントおよび導出同期制御情報を明確に区別する方法である。しかし、同期パケットおよび導出同期制御を他のパケットから明確に区別する他の方法も同様に効果がある。
図6および7を参照しながら、集中制御による分散通信システムの出力部について、2つの異なる場合に関して説明する。図6に、通信システム600が一段システムである場合、または同様の通信システムから成るグループの最後の段である場合を示す。図7に、通信システム600が、複数の段を備えた構成のうちの1段のみであり、他のシステム660bがこの構成の次の段として続いている場合を示す。通信システム600の入力側と同様に、システムを離れたパケットはN個の同一のセグメントに区分化され、それぞれが速度R/Nで動作するN個の異なるリンクまたは接続640−0、640−1、...、640−N−1を介して送られる。パケット・ヘッダ(場合によってはペイロードも)を含む最初のセグメントがマスタ・モジュール601によって送信され、データ/ペイロードのみを含む他のN−1個のセグメントが、スレーブ・モジュール602−1ないし602−N−1によって送信される。通信システム600の出力部は、出力データ・セグメントを単一のパケットに再組立てする出力アダプタ660aに接続されるか(図6)、または、多段相互接続構成の場合は他の通信システム660bの入力部に接続される(図7)。
リンク640−0ないし640−N−1(および図7に示す次の段の制御経路663−0ないし663−N−1)の伝搬時間は出力データ・セグメントごとに異なるため、通信システムの入力側のような同期プロセスを、通信システム600の出口側とそれに接続された次のブロックとの間、すなわち、出力アダプタ660aと次段通信システム660bとの間でも使用する。これは、次の段が伝搬遅延差をローカルで測定し、その差をしかるべく調整するために、通信システム600が、組み合わさって1つの同期パケットを表す特別な同期パケット・セグメント650−0、650−1、...、650−N−1を生成し、リンク640−0ないし640−N−1を介して導入することを意味する。
次段も、マスタ−スレーブ・クラスの通信システム(図7)である場合、通信システム600の出口側によって生成された同期パケット・セグメント650−0ないし650−N−1は、前述のように、次段660bの入力側によってデータと導出制御情報とのローカル同期を実現するために使用される。次段が出力アダプタ(図6)である場合、複数のパケット・セグメントを、さらに処理または転送あるいはその両方を行うことができる単一のパケットとして再結合するために、通信システム600の出力側によって生成された同期パケット・セグメント650−0ないし650−N−1を使用して複数のパケット・セグメント間の相対到着時間を測定する。いずれの場合(図6および図7)も、通信システム600の出力側は、それに接続された次段のための入力アダプタとして機能する。
出力同期パケット・セグメント650−0ないし650−N−1の導入時点を定義する方法はいくつかある。好ましい方法は、入力同期パケット・セグメント610−0ないし610−N−1から導入時点を導き出す方法であり、他の方法は、特定の出力プロセス604から直接、導出時間を導き出す方法であろう。
前者の方法は、入力パケットが記憶されずにただちに出力ポートに転送されるバッファなしシステムによって使用される可能性が最も高い。その場合、入力ポート・コントローラ560への同期パケット・セグメントと導出制御同期情報との整合を行うときはいつでも、出力同期パケット・セグメントを生成することができる(図5)。
一方、通信システム600がバッファ付きシステムの場合、入力同期プロセスと出力同期プロセスが互いに切り離される可能性が最も高い。その場合、通信システムが特定の出力同期プロセス604を実施する場合は、同期パケット・セグメントを通信システム自体によって再生成することができる。このプロセスが1個の同期パケットの導入をトリガすると、マスタ・モジュール601によって1個の同期パケット・セグメント650−0が生成され、リンク640−0を介して送信される。同時に、「導出出力同期制御情報」と呼ぶ導出同期制御情報も、制御インタフェース603−0ないし603−N−2を介してすべてのスレーブ・モジュール602−1ないし602−N−1に送られる。その後、各スレーブ・モジュール602内で、導出出力同期制御情報をローカルで使用して、リンク640−0ないし640−N−1を介して送信する出力同期パケット・セグメントが再生成される。入力と出力を切り離すことが必要な他の場合は、出力制御経路上の遅延が入力制御経路上の遅延と異なる場合である。
図2、図4、図6、および図7は、マスタからスレーブへの単一の制御経路を示していることに留意されたい。これは、複数の別個の制御経路を備える可能性を排除するものではない。典型例は図1に示されており、入力制御経路と出力制御経路が別々になっている。
開示のいずれの実施形態も、図示または説明した他の1つまたは複数の実施形態と組み合わせることができる。これは、それらの実施形態の1つまたは複数の特徴についても言える。
分散マスタ−スレーブ通信システムおよびポート速度増加の一般概念を実現する、従来技術の電子交換システムを示すブロック図である。 1個のマスタとN−1個のスレーブから成るチェーン・トポロジとして(任意に)編成されたセグメント化通信システムへの、入力源からの複数のデータ・パケットの送信を概略的に示すブロック図である。 本発明により改良可能なパケット通信システム(CS)とそれに対応するセグメント化パケット通信システムを示す概要図である。 本発明による、同期パケット・セグメントと、ヘッダを含む同期パケットのセグメントから導出された制御情報との送信を概略的に示すブロック図である。 本発明の好ましい実施形態を示すブロック図である。 セグメント通信システムの出力側から出力アダプタ(図6)への複数のデータ・パケットの送信を概略的に示すブロック図である。 多段構成(図7)の場合の、セグメント通信システムの出力側から他のセグメント化通信システムへの複数のデータ・パケットの送信を概略的に示すブロック図である。 同期プロシージャを示す流れ図である。

Claims (11)

  1. 各データ・パケットが制御情報とデータ・ペイロードとを有するヘッダを含むデータ・パケットを処理する通信システムであって、
    前記データ・パケットを受け取る入力ポートであって、そこで前記データ・パケットの各々がセグメントに分割される、入力ポートと、
    前記セグメントを並列処理するマスタ・ユニットおよび1または複数のスレーブ・ユニットと
    を含み、前記マスタ・ユニットはデータ経路を介して各パケットからヘッダを受け取るように適応化され、前記1または複数のスレーブ・ユニットはデータ経路を介してデータ・セグメントを受け取るように適応化され、制御経路を介して前記マスタ・ユニットから前記1または複数のスレーブ・ユニットに導出制御情報を渡すことができ
    (a)セグメントに分割された同期パケットを、前記入力ポートから通常のデータ・パケットと同じ経路で前記システムを通して送り、通常の導出制御情報と同じ経路で前記システムに同期制御情報を通す同期化手段を備え
    (b)前記1または複数のスレーブ・ユニットのそれぞれは、同期パケット・セグメントとそれに対応する同期制御情報とを受け取ったときに、前記データ経路と前記制御経路との伝搬遅延差を表す時間シフト情報を入手する時間シフト情報手段を含み、
    (c)前記1または複数のスレーブ・ユニットのそれぞれは、前記時間シフト情報手段が入手した前記時間シフト情報に応答してデータ・セグメントまたは導出制御情報を遅延させる遅延手段を含む
    通信システム。
  2. 各データ・パケットが制御情報とデータ・ペイロードとを有するヘッダを含むデータ・パケットを処理する通信機構であって、
    前記データ・パケットを受け取る入力ポートであって、そこで前記データ・パケットの各々がセグメントに分割される、入力ポートを含み、
    前記セグメントの並列処理のためのマスタ・ユニットと1または複数のスレーブ・ユニットとを含み、
    前記マスタ・ユニットは、データ経路を介して各パケットから制御情報を有するヘッダを受け取るように適応化され、前記1または複数のスレーブ・ユニットはデータ経路を介してデータ・セグメントを受け取るように適応化され、前記マスタ・ユニットから前記1または複数のスレーブ・ユニットに制御回路を介して導出制御情報が渡され
    (a)セグメントに分割された同期パケットを、前記入力ポートから通常のデータ・パケットと同じ経路で前記システムを通して送り、通常の導出制御情報と同じ経路で前記システムに同期制御情報を通す手段を備え
    (b)各スレーブ・ユニットは、同期パケット・セグメントとそれに対応する同期制御情報とを受け取ったときに、前記データ経路と前記制御経路との伝搬遅延差を表す時間シフト情報を入手する第1の手段を含み、
    (c)各スレーブ・ユニットのそれぞれは、前記第1の手段が入手した前記時間シフト情報に応答してデータ・セグメントまたは導出制御情報を遅延させる第2の手段を含む
    通信機構。
  3. 前記1または複数のスレーブ・ユニットのそれぞれは、前記時間シフト情報を入手する前記第1の手段に関連して、前記各スレーブ・ユニットのローカル・クロック・パルスに応答して増加する内容を有するカウンタの形態のシーケンサを含むことを特徴とする請求項2に記載の通信機構。
  4. 前記1または複数のスレーブ・ユニットのそれぞれは、前記時間シフト情報を入手する前記第1の手段において、
    (a)同期パケットから導出された同期制御情報を前記制御経路を介して受け取ったときに前記シーケンサの内容を記憶する制御タイムスタンプ・レジスタと、
    (b)前記データ経路を介して同期パケット・セグメントを受け取ったときに前記シーケンサの内容を記憶するデータ・タイムスタンプ・レジスタと
    を含むことを特徴とする請求項3に記載の通信機構。
  5. 前記1または複数のスレーブ・ユニットのひとつにおけるタイムスタンプ・レジスタの内容を評価し、前記時間シフトを表す差を判断する内部または外部制御手段を備え、
    前記1または複数のスレーブ・ユニットのそれぞれは、前記第2の手段において、
    (a)パケット・データ・セグメントを遅延させるためと、導出制御情報を遅延させるための別々の遅延手段と、
    (b)前記制御手段に応答して前記別々の遅延手段のうちのいずれか一方において遅延を選択的に作動させる作動手段と
    を含むことを特徴とする請求項4に記載の通信機構。
  6. 各スレーブ・ユニットにおいて、
    (a)前記遅延手段は、書込みポインタと読取りポインタとによって制御される環状シフト・レジスタを含み、
    (b)前記作動手段は、書込ポインタ・レジスタと読取りポインタ・レジスタと、前記書込みポインタ・レジスタのうちの一方の内容を、前記2つのタイムスタンプ・レジスタの内容の差を表す遅延値に設定し、他方の書込みポインタ・レジスタの内容と両方の読取りポインタ・レジスタの内容とをゼロに設定する設定手段とを含む
    ことを特徴とする請求項5に記載の通信機構。
  7. 前記1または複数のスレーブ・ユニットのそれぞれは、同期パケット・セグメントまたは対応する導出同期制御情報の2つのうち先に到着する方の受領に応答して前記シーケンサをリセットする手段を含むことを特徴とする請求項3に記載の通信機構。
  8. 前記セグメントを再組立てしてデータ・パケットを形成する少なくとも1つの出力ポートをさらに含み、一方では通信システムの前記マスタ・ユニットと前記スレーブ・ユニット、他方では出力ポートとの間の経路上の伝搬遅延差を補償する追加の手段を設けたことを特徴とする請求項2に記載の通信機構。
  9. 少なくとも2つの分散通信システムを含み、1つの分散通信システムのモジュールの出力線とそれに続く分散通信システムのモジュールの入力線との間のデータ経路と、制御経路との伝搬遅延差を補償する追加の手段を設けたことを特徴とする請求項2に記載の通信機構。
  10. 各データ・パケットが制御情報とデータ・ペイロードとを有するヘッダを含み、各データ・パケットが少なくとも1つの入力ポートを介して受領可能なデータ・パケットを処理するために設計されたマスタ−スレーブ通信システムにおけるローカル同期の方法であって、
    前記システムにおいて各データ・パケットがセグメントの並列処理のために前記入力ポートにおいてセグメントに分割され、
    前記システムは、前記セグメントを並列処理するためのマスタ・ユニットと1または複数のスレーブ・ユニットとを含み、前記マスタ・ユニットは、各パケットから制御情報を有する前記ヘッダを受け取り、前記1または複数のスレーブ・ユニットはデータ経路を介してデータ・セグメントを受け取り、前記マスタ・ユニットから前記1または複数のスレーブ・ユニットに制御経路を介して導出制御情報が渡され
    (a)セグメントに分割された同期パケットを前記入力ポートから、通常のデータ・パケットと同じ経路で前記システムを通して送り、前記同期パケットのヘッダから導出された同期制御情報を通常の導出制御情報と同じ経路でシステムに通すステップと、
    (b)前記1または複数のスレーブ・ユニットにおいて、同期パケット・セグメントとそれに対応する同期制御情報を受け取ったときに、前記データ経路と前記制御経路との伝搬遅延差を表す時間シフト情報を入手するステップと、
    (c)前記1または複数のスレーブ・ユニットにおいて、ステップ(b)で入手した前記時間シフト情報によって表された前記伝搬遅延差を、各受領パケット・セグメントごとに前記パケット・セグメント自体または前記導出制御情報を遅延させることによって補償するステップと
    を含む方法。
  11. 通常のデータ・パケットの間の一定間隔で同期パケットが前記入力ポートからシステムを通して送られる、請求項10に記載の方法。
JP2004502557A 2002-04-30 2003-03-31 マスタ−スレーブ分散通信システムにおけるローカル同期の方法および機構 Expired - Fee Related JP3989932B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP02009738 2002-04-30
PCT/IB2003/001227 WO2003094446A1 (en) 2002-04-30 2003-03-31 Method and arrangement for local synchronization in master-slave distributed communication systems

Publications (2)

Publication Number Publication Date
JP2005524343A JP2005524343A (ja) 2005-08-11
JP3989932B2 true JP3989932B2 (ja) 2007-10-10

Family

ID=29286105

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004502557A Expired - Fee Related JP3989932B2 (ja) 2002-04-30 2003-03-31 マスタ−スレーブ分散通信システムにおけるローカル同期の方法および機構

Country Status (7)

Country Link
US (2) US7720105B2 (ja)
EP (1) EP1500239B1 (ja)
JP (1) JP3989932B2 (ja)
CN (1) CN1297116C (ja)
AU (1) AU2003215841A1 (ja)
DE (1) DE60317890T2 (ja)
WO (1) WO2003094446A1 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040208199A1 (en) * 2003-04-16 2004-10-21 Bo Li Data encoding for simultaneous bus access
DE10331873B4 (de) * 2003-07-14 2022-09-01 Robert Bosch Gmbh Verfahren zur Überwachung verteilter Software
US7623524B2 (en) * 2003-12-22 2009-11-24 Intel Corporation Scheduling system utilizing pointer perturbation mechanism to improve efficiency
US7570654B2 (en) * 2003-12-22 2009-08-04 Intel Corporation Switching device utilizing requests indicating cumulative amount of data
US20050207436A1 (en) * 2004-03-18 2005-09-22 Anujan Varma Switching device based on aggregation of packets
DE602005026482D1 (de) * 2004-06-14 2011-04-07 Broadcom Corp Kompensation und Messung der Differentiellen Verzögerung in gebundenen Systemen
US8149880B1 (en) 2004-08-18 2012-04-03 Qualcomm Atheros, Inc. Media streaming synchronization
US7792158B1 (en) 2004-08-18 2010-09-07 Atheros Communications, Inc. Media streaming synchronization
CN100377519C (zh) * 2005-06-17 2008-03-26 凯明信息科技股份有限公司 码分多址移动通信系统中用于初始同步的相关方法
US20070091928A1 (en) * 2005-10-21 2007-04-26 Wee Susie J Serial and parallel processing of data using information about the data and information about a streaming network
KR100735230B1 (ko) * 2006-05-02 2007-07-03 삼성전자주식회사 분산 제어 시스템에서의 타임 동기화 방법
JP5140079B2 (ja) * 2006-08-22 2013-02-06 ジュニパー ネットワークス, インコーポレイテッド 制御遅延パケット転送の機器および方法
US20080159145A1 (en) * 2006-12-29 2008-07-03 Raman Muthukrishnan Weighted bandwidth switching device
US20090063693A1 (en) 2007-08-30 2009-03-05 International Business Machines Corporation System and method for active transcoding of content in a distributed system
WO2009146472A1 (en) * 2008-06-02 2009-12-10 Fts Computertechnik Gmbh Method for synchronizing local clocks in a distributed computer network
US8315278B2 (en) * 2008-12-23 2012-11-20 Nokia Corporation Network synchronization method
EP2424136B1 (en) * 2010-08-24 2013-10-02 Siemens Aktiengesellschaft System and method for time synchronization in a communication network
US9276688B2 (en) * 2011-01-11 2016-03-01 Unify Gmbh & Co. Kg Method for the clock synchronization of a plurality of modules
WO2013108676A1 (ja) * 2012-01-19 2013-07-25 三菱電機株式会社 多重ゲートウェイ装置、多重回線通信システム、多重回線通信方法およびプログラム
JP5970958B2 (ja) * 2012-05-22 2016-08-17 富士通株式会社 情報処理装置、遅延差測定方法、及び遅延差測定プログラム
KR101618537B1 (ko) 2012-08-01 2016-05-18 미쓰비시덴키 가부시키가이샤 통신 장치, 통신 시스템 및 동기 제어 방법
CN104283906B (zh) * 2013-07-02 2018-06-19 华为技术有限公司 分布式存储系统、集群节点及其区间管理方法
EP2866398B1 (en) * 2013-10-28 2017-03-01 Alcatel Lucent Data transmission system providing improved failure resilience
CN104660395B (zh) * 2013-11-25 2019-03-01 北京壹人壹本信息科技有限公司 一种数据同步方法、系统和设备
KR102165231B1 (ko) * 2013-12-30 2020-10-14 에스케이하이닉스 주식회사 스큐를 보정하는 리시버 회로, 이를 포함하는 반도체 장치 및 시스템
JP6514001B2 (ja) * 2015-03-31 2019-05-15 株式会社メガチップス 受信装置
CN104901905B (zh) * 2015-04-27 2018-07-03 国家电网公司 一种智能变电站专用网络交换机及其数据交换方法
CN105072047B (zh) * 2015-09-22 2018-12-07 浪潮(北京)电子信息产业有限公司 一种报文传输及处理方法
US10095263B1 (en) * 2015-12-15 2018-10-09 Marvell International Ltd. Apparatus and method for calibrating signal synchronization
US10372647B2 (en) * 2015-12-22 2019-08-06 Intel Corporation Exascale fabric time synchronization
CN106936641B (zh) * 2017-03-27 2019-10-29 迈普通信技术股份有限公司 表项管理方法和系统
CN107257310B (zh) * 2017-07-05 2020-04-24 北京东土科技股份有限公司 基于工业互联网现场层宽带总线架构的实现系统
US11307773B1 (en) * 2018-05-02 2022-04-19 Innovium, Inc. Memory-based power stabilization in a network device
CN109286462B (zh) * 2018-09-12 2019-11-08 中国科学院自动化研究所 基于动态延时补偿的重采样方法、装置和系统
CN111385049B (zh) * 2018-12-29 2022-09-27 中兴通讯股份有限公司 一种时间校正方法、装置、系统及存储介质
CN111459069B (zh) * 2020-04-14 2021-06-01 山东高云半导体科技有限公司 第一控制模块、第二控制模块、数据传输系统及控制方法
CN112929902A (zh) * 2020-04-28 2021-06-08 丁禹 一种采用通信联网平台的指定范围信号控制系统
CN113703874B (zh) * 2021-09-06 2023-09-05 深信服科技股份有限公司 一种数据流处理方法、装置、设备及可读存储介质
CN113806188B (zh) * 2021-11-18 2022-02-22 苏州浪潮智能科技有限公司 一种数据同步告警的方法、装置、设备及可读介质
CN114338361B (zh) * 2022-03-15 2022-06-07 浙江中控技术股份有限公司 通讯装置的通讯方法、通讯装置及分布式控制系统

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01231543A (ja) 1988-03-11 1989-09-14 Nec Corp 交換方式
JPH0467824A (ja) 1990-07-06 1992-03-03 Matsushita Electric Ind Co Ltd 自動炊飯装置
JP2993715B2 (ja) * 1990-08-17 1999-12-27 株式会社日立製作所 Atmスイッチおよびその制御方法
JP2902215B2 (ja) 1992-06-24 1999-06-07 株式会社日立製作所 Atmセルの多重方法および装置
JP3069207B2 (ja) 1992-12-15 2000-07-24 株式会社日立製作所 光atm通話路
EP0603424A1 (de) * 1992-12-21 1994-06-29 Siemens Aktiengesellschaft Verfahren und Schaltungsanordnung zum Übertragen von Nachrichtenzellen über eine ATM-Kommunikationseinrichtung
US5321691A (en) * 1993-01-11 1994-06-14 At&T Bell Laboratories Asynchronous transfer mode (ATM) switch fabric
US5412646A (en) * 1994-05-13 1995-05-02 At&T Corp. Asynchronous transfer mode switch architecture
JP3404136B2 (ja) 1994-07-22 2003-05-06 パナソニック コミュニケーションズ株式会社 段ボールパッキン製作治具及び製作方法
US6775375B1 (en) * 1995-05-16 2004-08-10 At&T Corp. Service and information management system for determining, replicating or correcting failed calls in a telecommunications network
US5905725A (en) * 1996-12-16 1999-05-18 Juniper Networks High speed switching device
JP3563221B2 (ja) 1997-01-13 2004-09-08 株式会社日立コミュニケーションテクノロジー セル復元検査機能を持つセル分割形atmスイッチ
US20020095613A1 (en) * 1997-07-25 2002-07-18 Shinya Matsuoka Synchronizing motion and time-based data for transfer between a server and a client
JPH11252086A (ja) 1998-02-27 1999-09-17 Hitachi Ltd セル分割形atmスイッチ
JP2000151628A (ja) 1998-11-09 2000-05-30 Hitachi Ltd Atmスイッチ
US6434146B1 (en) * 1998-12-04 2002-08-13 Koninklijke Philips Electronics N.V. Use of sequencing information in a local header that allows proper synchronization of packets to subsidiary interfaces within the post-processing environment of an mpeg-2 packet demultiplexing architecture
US6631422B1 (en) * 1999-08-26 2003-10-07 International Business Machines Corporation Network adapter utilizing a hashing function for distributing packets to multiple processors for parallel processing
US6715125B1 (en) * 1999-10-18 2004-03-30 Agere Systems Inc. Source coding and transmission with time diversity
US6940807B1 (en) * 1999-10-26 2005-09-06 Velocity Communication, Inc. Method and apparatus for a X-DSL communication processor
EP1258145B1 (en) * 1999-12-14 2006-07-05 General Instrument Corporation Mpeg re-multiplexer having multiple inputs and multiple outputs
US6697382B1 (en) * 2000-03-07 2004-02-24 Cisco Technology Inc. Distributing and synchronizing a representation of time between components of a packet switching system
JP2001358766A (ja) * 2000-06-14 2001-12-26 Mitsubishi Electric Corp パケット通信システム、パケット通信方法、およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US6976096B1 (en) * 2001-06-02 2005-12-13 Redback Networks Inc. Method and apparatus for controlling the admission of data into a network element
US7336700B2 (en) * 2001-09-20 2008-02-26 Lockheed Martin Corporation System bus transceiver interface
CA2360712A1 (en) * 2001-10-31 2003-04-30 Sicon Video Corporation Method and apparatus for the data-driven synchronous parallel processing of digital data

Also Published As

Publication number Publication date
US20060251124A1 (en) 2006-11-09
US8009702B2 (en) 2011-08-30
DE60317890T2 (de) 2008-11-27
JP2005524343A (ja) 2005-08-11
CN1297116C (zh) 2007-01-24
US20100220749A1 (en) 2010-09-02
DE60317890D1 (de) 2008-01-17
WO2003094446A1 (en) 2003-11-13
CN1643854A (zh) 2005-07-20
AU2003215841A1 (en) 2003-11-17
EP1500239B1 (en) 2007-12-05
US7720105B2 (en) 2010-05-18
EP1500239A1 (en) 2005-01-26

Similar Documents

Publication Publication Date Title
JP3989932B2 (ja) マスタ−スレーブ分散通信システムにおけるローカル同期の方法および機構
US6636518B1 (en) Synchronizing source-synchronous links in a switching device
KR100324092B1 (ko) 통신네크워크및이통신네트워크의이용방법
US5291482A (en) High bandwidth packet switch
US10355851B2 (en) Methods and systems for synchronization between multiple clock domains
US7675919B2 (en) End system scheduling for switched networks
JP3214490B2 (ja) パケット交換ネットワーク
US7082504B2 (en) Method and apparatus for asynchronous read control
US5602850A (en) High-speed packet bus
US7835649B2 (en) Optical data synchronization scheme
US20030099253A1 (en) Apparatus and method for arbitrating data transmission amongst devices having SMII standard
US6757284B1 (en) Method and apparatus for pipeline sorting of ordered streams of data items
EP1987615B1 (en) Buffering schemes for optical packet processing
US7065103B1 (en) Hyper-concatenation across multiple parallel channels
JP3165229B2 (ja) Atmスイッチの同期化方法およびatmスイッチ
US20070058564A1 (en) Method and device for managing data flow in a synchronous network
US8116321B2 (en) System and method for routing asynchronous signals
JP2006114028A (ja) 複数のデバイスを同期デバイスに相互接続する装置
Dimitrakopoulos et al. Virtual-Channel Flow Control Across Mesochronous Clock Domains
JP4650956B2 (ja) 非同期信号をルーティングするためのシステムおよび方法
US7142605B2 (en) Method to transfer data without a clock or strobe signal
Jackson Gradual Synchronization
Nakamura et al. Time-slot interchanger for self-routing event building
Eatherton Latency Minimization for Cells Passing through an ATM Network of Daisy Chained APIC Chips
JPH09162885A (ja) 無瞬断切り替えのための同期装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060822

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20061120

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070710

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070718

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

Free format text: PAYMENT UNTIL: 20100727

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110727

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110727

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120727

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130727

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees