JP3802166B2 - ネットワーキング環境におけるネットワーク・トランスポータの検証 - Google Patents
ネットワーキング環境におけるネットワーク・トランスポータの検証 Download PDFInfo
- Publication number
- JP3802166B2 JP3802166B2 JP30866296A JP30866296A JP3802166B2 JP 3802166 B2 JP3802166 B2 JP 3802166B2 JP 30866296 A JP30866296 A JP 30866296A JP 30866296 A JP30866296 A JP 30866296A JP 3802166 B2 JP3802166 B2 JP 3802166B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- components
- pseudo
- network
- transporter
- 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 - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5628—Testing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5652—Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
【発明の属する技術分野】
本発明の方法および装置は、ネットワーク・トランスポータ、たとえば、試験中のアプリケーション特有の集積回路の検証分野に関する。詳細には、本発明は、ネットワーキング環境でのネットワーク・トランスポータの検証に関する。
【0002】
【従来の技術】
通常、ネットワーキング・アプリケーションにおいてネットワーク・トランスポータを検証するには、ある形式のデータを、シミュレートされたネットワーク・トランスポータの一端に加え、他端で何らかの他の形式で受信する。受信されたデータは、送信されたデータとビットごとに比較され、試験中のネットワーク・トランスポータの機能が検証される。この場合、通常、ネットワーク・トランスポータの各側でデータを記憶し、次いでシミュレーション全体が完了した後に比較する必要がある。
【0003】
ネットワーキング・アプリケーションにおいてネットワーク・トランスポータを検証する従来型の手法の欠点は、試験を実行するために、無作為試験のシミュレーションを長期間にわたって実行しなければならないことである。そのような試験では、シミュレーションの終わりに比較する必要がある大量のデータ・ファイルが生成される。したがって、従来型の手法では、大量のディスクまたはその他の記憶空間が必要である。また、シミュレーションの最終結果は、2日または3日以上かかるシミュレーションが終了するまで実現することができない。
【0004】
図1は、試験中のネットワーク・トランスポータを検証する簡単な例を示す。ネットワーク・トランスポータ100は試験中のネットワーク・トランスポータである。ネットワーク・トランスポータ100の一端で、ネットワーク・トランスポータ100にパケットが投函(ポスト)される。ネットワーク・トランスポータ100の他端でパケットが受信される。ネットワーク・トランスポータ100にパケットがポストされると、ファイル、たとえば、ポスト中のパケットから得たデータを含むファイルA102が生成される。ネットワーク・トランスポータ100の他端でパケットが受信された後、通常、第2のファイル、たとえばファイルB104が生成される。シミュレーションの終わりに、ファイルA102とファイルB104が比較される。この比較の結果は、試験中のシミュレートされたネットワーク・トランスポータ100がエラーを有するかどうかを表す。たとえば、ファイルA102の内容とファイルB104の内容を比較して、それらが同じであるかどうかを調べることができる。したがって、試験中のネットワーク・トランスポータに応じて、パケットがポストされネットワーク・トランスポータ100の他端でパケットが受信された後、生成されるそれぞれのファイルは通常同じデータを有する。そうでない場合、これは、ネットワーク・トランスポータ100にエラーが存在することを示すであろう。
【0005】
通常、試験では、試験中のネットワーク・トランスポータを試験するために多数のパケットがポストされる。従来型の手法の下では、すべてのパケットがポストされ受信され、それぞれのファイルが生成されるまで試験結果は明らかにならない。第1または第2のパケットがエラーを示す場合でも、シミュレーションが完了するまで試験結果を得ることはできない。前述のように、従来型のこの手法は、試験結果を生成するのに時間がかかるだけでなく、主として、生成しなければならずかつシミュレーションの終わりに比較されるファイル中の、多量のメモリ空間も消費する。
【0006】
【発明が解決しようとする課題】
したがって、従来型の手法と比較して短い期間で試験結果を生成することができ、従来型の手法ほど多量のメモリを使用する必要なしに試験を実行し試験結果を生成することもできる方法および装置を有することが望ましい。
【0007】
【課題を解決するための手段】
大量のメモリを必要とせずにネットワーク・トランスポータを通じて試験パケットをポストし、短期間で結果を生成することによって、試験を実行し試験結果を生成することができる、試験中のネットワーク・トランスポータを検証する方法および装置を開示する。
【0008】
本発明は、1つまたは複数のFIFO(先入れ先出しバッファ)を使用するものであり、試験中のネットワーク・トランスポータに各パケットがポストされたときに各パケットの試験情報がこのFIFOに記憶される。ネットワーク・トランスポータの他方の側で対応するパケットが受信された直後に、試験情報と受信パケットが比較され、試験結果が生成される。そのような比較が行われ完了し、試験結果が生成された直後に、FIFOに記憶されている対応する試験情報が破棄され、使用された対応するメモリ空間が次のパケットの試験情報のために解放される。
【0009】
各パケットの試験情報をたとえばファイルに保存する必要がある従来型の手法とは異なり、本発明の手法では、シミュレーションが完了し、したがって大量のメモリを使用することが必要になるまで、ポストされたパケットに関する試験情報を保存するだけでよい。本発明は、ネットワーク・トランスポータの他方の側で試験情報が比較された直後にそのような試験情報を記憶する対応するメモリ空間を解放する。
【0010】
試験情報の一部としてFIFOに記憶しなければならないパケット用のデータはCRC(巡回冗長検査)データを含む。データ検査用のCRCはシステムと媒体との間で使用することができ、擬似FIFOを使用して制御を渡すことができる。ある種のパケットは、FIFOによって各部分ごとに(すなわち、情報へのチャネル2.1、2.2、2.3)受信することができ、その場合、各部分は、2.1が受信された後、続いて2.2が受信されると仮定できるように正しい順序付けで自動的に順序付けられる。
【0011】
ネットワーク・インタフェース・カード実施態様では、本発明によって、送信元が、宛先で受信されたパケットと突き合わせて検査するために送信するパケットを記憶することが不要になる。数日にわたる長いシミュレーションを実行する際には、本発明を使用することがさらに必要になる。本発明の利点は、ATM(非同期転送法)、FDDI(ファイバ分散データ・インタフェース)、イーサネット検証に適用することもできる。
【0012】
例示的な実施態様では、NIC(ネットワーク・インタフェース回路)、検証または同様な作業にCRCを適用して、ホスト・メモリと媒体インタフェースとの間のデータ転送に関するシミュレーション環境でのデータの完全性を検証することができる。本発明の他の利点は、どのパターンがどのパケットに属するかを分類するデータ管理を実行せずに、試験中のネットワーク・トランスポータのどちらかの側(媒体またはホスト・メモリ)からデータを送信できることである。
【0013】
試験中のネットワーク・トランスポータを検証する本発明の方法および装置はしたがって、従来型の手法よりも優れている。本発明は、試験中に必要とされるメモリ空間の量を節約するだけでなく、試験結果を得るために必要な時間を節約することができ、したがって潜在的製品を試験するための製品ターンアラウンド速度を高めることができる。さらに、メモリ節約および時間節約の利点のために、本発明の検証方法は、実際のハードウェア実施の前にシミュレートすることができるネットワーク・トランスポータその他のハードウェア構成要素の試験に関する新しい規格および手法を確立する。
【0014】
【発明の実施の形態】
本発明は、従来型の検証手法によって使用されるメモリ空間および時間の量を低減させる、試験中のネットワーク・トランスポータを検証する方法および装置である。
【0015】
図2は、コンピュータ上で使用される本発明の例示的な実施形態を示すブロック図である。コンピュータ200は、メモリ204に結合されたCPU202を有する。コンピュータ200は、モニタ206と、キーボード208と、モデム210とを含む、コンピュータ200自体に取り付けられた様々な周辺装置を有することができる。Verilog−HDLなどのハードウェア・シミュレータ212を、試験すべきハードウェアの例をシミュレートするためにメモリ204に置くことができる。ハードウェア・シミュレータ212は、それぞれの異なるハードウェア構成要素214をシミュレートすることができる。メモリ204はオペレーティング・システム216も有する。本発明を用いた場合、シミュレートされたある種のハードウェア構成要素214の試験は、従来型の手法よりも高速に、かつより少ないメモリ消費量で実行される。
【0016】
図3は、本発明の例示的な実施形態を示す。ハードウェア・シミュレーション214で、シミュレートされたチップ300は、ホスト・メモリ312によって送信されるパケットによって試験される。そのようなパケットは、シミュレートされたチップ300内で処理され、シミュレートされた物理層316上に渡される。物理層は、パケットを転送するために使用される実際の物理媒体を表す。シミュレートされたホスト・メモリ312によってシミュレータ・チップ300にパケットがポスト(投函)されると、同時に、パケットの固有の情報がTX擬似FIFO314に保存される。シミュレートされたチップ300にポストすべき所与のパケットのそのような固有の情報の例示的な内容を図6の説明に示す。パケットは、シミュレートされた物理層316側で受信された後、ホスト・メモリ312によって前にポストされたパケットの固有の情報と比較される。情報が同じである場合、試験結果は合格とみなされる。そのような試験情報(構成要素)は、そのような結果が生成された直後に出力することも、あるいはセッションの終わりに出力することもできる。
【0017】
データを入力された順序で出力する正規のFIFOとは異なり、チップ300から物理環境316に受信されたパケット情報と比較すべき正しいパケット情報を検索するために擬似FIFOの検索を実行しなければならないので、シミュレートされたFIFO314を本明細書では「擬似」FIFOと呼ぶ。ある種のパケットは、FIFOによって各部分ごとに(すなわち、情報へのチャネル2.1、2.2、2.3)受信することができ、その場合、各部分は、2.1が受信された後、続いて2.2が受信されると仮定できるように正しい順序付けで自動的に順序付けられる。対応するパケット情報がすでに物理層によって処理されている(すなわち、チップ300から物理層316に受信されたパケット情報と比較されている)かどうかを示すフラグを擬似FIFOに入力される各パケット情報ごとに使用することができる。たとえば、すでに処理されているパケット情報に対応するフラグは値零を有し、それに対して、まだ処理されていないパケット情報に対応するフラグは値1を有する。したがって、擬似FIFOから必要なパケット情報を検索する際は、まず擬似FIFOが、パケット情報がFIFOに記憶されている順序で検索され、各パケット情報ごとのフラグが、対応するパケット情報がすでに処理されているかどうかを調べるために検査される。対応するパケット情報が処理されていない場合、そのパケット情報が検査され、最近物理層316によってチップ300から受信されたパケット情報と比較する必要があるパケット情報であるかどうかが調べられる。このプロセスは、物理層316によってチップ300から新しいパケット情報が受信されたときに繰り返される。
【0018】
シミュレートされた物理層が、シミュレートされたホスト・メモリ312へパケットを送信する際に従うプロセスは、そのパケットが、シミュレートされたホスト・メモリ312によって、シミュレートされた物理層316にポストされたときと同じものである。したがって、シミュレートされた物理層316がパケットを送信する際、そのパケットの固有の情報はRX擬似FIFO318に記憶される。チップ300の他方の側で、対応するパケットが、シミュレートされたホスト・メモリ312によって受信された後、シミュレートされた物理層316によってRX擬似FIFO318に記憶された最初に送信されたパケットの対応する固有の情報が、シミュレートされたホスト・メモリ312側の受信パケットと比較される。これらが同じである場合、このパケットに関する試験結果は合格であり、そうでない場合、試験結果は不合格である。ハードウェア・シミュレーション214を作成するハードウェア・シミュレータ212は、図示した構成要素を作成する際の例示的なツールとして示されている。
【0019】
図4は、本発明のより詳細な実施形態を示す。図示したすべての構成要素は、シミュレートされたハードウェアである。例示的なこの実施形態では、ネットワーク・トランスポータ310が試験されている。シミュレートされたホスト・システム312によってパケットがポストされ、同時にパケットの固有の情報がTX擬似FIFO314に記憶される。ポスティング(投函)は、パケット・ポスタ400によって実行される。セル生成装置408がVerilogタスク(または実施可能なその他のハードウェア・シミュレータ)を通じて呼び出され、シミュレートされた物理環境316を通じてネットワーク・トランスポータ310に対してセルが生成される。パケット・グラバ410は、RXパケットを検証する際に使用されるSバスのデータを捕捉するのを助ける。パケットは、シミュレートされた物理層316へ送信された後、セル・グラバ402によって捕捉される。セル・グラバ402は、外部メモリ・バッファ319から送信されたすべてのセルを収集し、パケット全体に対するCRC計算を実行し、次いで、エラー検査のために、TX擬似FIFO318内に置かれたCRCと、ネットワーク・トランスポータ310によって算出されたCRCを比較する。例示的な実施形態では、ネットワーク・トランスポータ310は、Sバスを通じてATMインタフェースをホスト・メモリに接続するように設計された、単一のチップとのSバスATMホスト・インタフェースであってよい。セルの固有の情報は、TX擬似FIFO314から比較器404へ送信される。本発明の一実施形態では、TX擬似FIFO314は前述の「擬似」FIFOなので、パケット情報グラバは、シミュレートされたホスト・メモリ312側でもシミュレートされた物理層側316でも実施することができる。そのようなパケット情報グラバ(図示せず)は、適当な擬似FIFOを検索し、セル・グラバ402またはパケット・グラバ410によって捕捉されたパケット情報に対応するパケット情報を捕捉する。パケット情報グラバは、対応するパケット情報が受信側プロセス(シミュレートされたホスト・メモリ312またはシミュレートされた物理層316)によって処理されたかどうかを示す擬似FIFO中の各パケット情報ごとのフラグを検査することによってこのタスクを形成する。パケット情報は、すでに処理されているパケット情報エントリをスキップし、セル・グラバ402によって捕捉されたパケット情報に対応する未処理の適当なパケット情報を捕捉する。比較器404は次いで、固有の情報をパケット中の対応する情報と比較し、試験結果が合格であるか、それとも不合格であるかを判定する。
【0020】
セル生成装置408を含むパケット生成装置406は、シミュレートされたホスト・システム312へ送信されるパケットの形で試験情報を生成する。同時に、パケットの固有の情報がRX擬似FIFO318に記憶される。パケットが、ネットワーク・トランスポータ310を介して、シミュレートされたホスト・システム312へ送信された後、パケット・グラバ410はパケットを捕捉し、RX比較機構412へ送信する。同時に、対応する固有の情報がRX擬似FIFO318からRX比較機構412へ送信される。RX比較機構412は、シミュレートされたホスト・メモリ312によって受信されたパケットのCRCと、そのパケットのためにRX擬似FIFO318内に置かれたCRCとの間のCRC比較を実行し、ネットワーク・トランスポータ310が試験に合格するかどうかが判定される。
【0021】
図5は、例示的なATMセルの通常のフォーマットを示す。ATMセル500は様々なフィールドを有する。例示的なこのセル500は53バイトを有する。第1のバイトはGFC(汎用フロー制御)フィールドとVPI(仮想パス・インディケータ)フィールドとを有する。第2のバイトは、VPIフィールドとVCI(仮想チャネル識別子)フィールドとを有する。第3のバイトはVCIフィールドを有する。第4のバイトは、VCIフィールドと、PTI(ペイロード・タイプ・インディケータ)フィールドと、CLP(セル喪失優先順位)フィールドとを有する。第5のバイトは、HEC(ヘッダ・エラー・コード)フィールドを有する。セルの残りの部分は、48バイトのデータからなる。これらのフィールドは、セルまたは対応するパケットが試験中のネットワーク・トランスポータにポストされたときにコピーしFIFOに保存することができる例示的な固有の情報を表す。PTIフィールドは、3ビット・フィールドであり、対応するセルがデータ・セルであるか、それともRM(資源管理)セルであるかを定義するものでよい。CLPフィールド(セル喪失優先順位)は、対応するセルを優先順位付けるために使用される1ビット・フィールドでよい。CLPフィールドを通じて示される高い優先順位のセルは、低い優先順位のセルよりも前に送信することができる。PTIフィールドは、データ・セルがパケットの最後のセルである(EOP)か、それともパケットの最後のセルではない(NEOP)かも示す。VPIは、所与のセルを送信すべき特定の仮想パスを示す。VCIは、セルが送信されるパケットの仮想チャネルを示す。セルが破壊された場合、そのセルはドロップされる。HECは、バイト1、2、3、4に関するエラー訂正コードである。HEC値に基づいて、ヘッダが破壊されているかどうかを知ることができる。
【0022】
図6は、TX擬似FIFO318およびRX擬似FIFO314の例示的なフォーマットを示す。FIFOデータ・フォーマットは、ネットワーク・トランスポータを試験するために使用されるデータ(セルまたはパケット)と同じ深さのものでよい(すなわち、パケットおよびセルと対応する同数のエントリを含むことができる)。フィールドは、上記の図5に対応する説明で述べた様々なフィールドに対応する。図の擬似FIFOのデータ・フォーマットは、例示的なものに過ぎず、本発明の特定の実施態様に応じ必要に応じて新しいフィールドを追加することも、あるいはフィールドを削除することもできる。
【0023】
図7は、本発明を使用して試験中のネットワーク・トランスポータを検証するためのネットワーキング・アプリケーションを示す。コンピュータ・システム・ネットワーク710は、1つまたは複数のATMネットワーク・インタフェース回路(NIC)712を組み込んだホスト・コンピュータ・システム(図示せず)を含む。NIC712は、ネットワーク710に結合されたホスト・コンピュータ・システム間の非同期データ転送をイネーブルするためにローカルATM交換機714を通じて公衆ATM交換機716に結合される。別法として、NIC712は公衆ATM交換機716に直接結合することもできる。図7に示したように、コンピュータ・システム・ネットワーク710は、ATMネットワークをサポーティング・フレームワークとして使用するイーサネット・ネットワークやトークン・リング・ネットワークなど他のネットワークを接続するゲートウェイとして働くローカル・エリア・ネットワーク(「LAN」)エミュレーション715の使用を組み込んだコンピュータ・システムを含むこともできる。NICは、試験中のネットワーク・トランスポータを検証する本発明の方法および装置を使用して試験することができる。
【0024】
図8は、シミュレートすることができ、かつ実際のハードウェアとして実現する前に、試験中のネットワーク・トランスポータを検証する本発明の手法を適用することができる例示的なチップを示す。ATM NIC712は、システム・バス838を通じて、ATMプロトコルに従って動作するネットワーク媒体840に結合されたホスト・コンピュータ・システムとのインタフェースをとる。
【0025】
図のATM NIC712は、システム・バス・インタフェース820と、汎用入出力(「GIO」)インタフェース824と、システム・ATM層コア822と、ローカル・スレーブ・インタフェース826と、送信(TX)FIFOアレイ828と、受信(RX)FIFOアレイ830と、媒体インタフェース832と、外部バッファ・メモリ・インタフェース834と、クロック合成回路836とを含む。
【0026】
ネットワーク・インタフェース回路712の要素820ないし836は共働して、複数の帯域幅群として動的に割り振られた複数のチャネルを通じてネットワーク中のホスト・コンピュータと他のコンピュータとの間でデータを非同期的に転送する。ネットワーク・インタフェース回路712の要素は全体として、ホスト・コンピュータ・システムのシステム・バス838に結合されたマルチチャネル・インテリジェント直接メモリ・アクセス(DMA)制御装置として機能する。好ましい実施形態では、複数の送信チャネルおよび受信チャネルが、フル二重155/622Mbps(毎秒メガビット)物理リンクを使用する仮想接続として実施される。複数のデータ・パケットが、システム・バス838を介し外部バッファ・メモリ・インタフェース834を介して外部バッファ・メモリ842へ至るそれぞれの異なるチャネルへ送られ、媒体インタフェース832を通じて媒体840へ送信できるようにシステム及びATM層コア822によって送信セルとしてセグメント化される。
【0027】
コア822は、受信パケットの再アセンブリを容易にする再アセンブリ論理機構も備える。TX FIFO828およびRX FIFO830は、コア822と媒体インタフェース832との間に結合され、それぞれ、送信パケットおよび受信パケットの送信セル・ペイロードおよび受信セル・ペイロードをステージングするために使用される。媒体インタフェース832は、クロック合成回路836から提供されるクロック信号によって駆動され、ネットワークの媒体840との間でセルを送受信する。好ましくは、媒体、したがって媒体インタフェース832は、ATMフォーラム暫定仕様によって規定されたATM汎用試験及び動作物理インタフェース(「UTOPIA」)規格を満たす。クロック合成回路836は、UTOPIA仕様を満たすために、20MHzのクロック信号と40MHzのクロック信号のどちらかを提供し、媒体インタフェース832が、155Mbpsの場合に8ビット・ストリームを20MHzでサポートし、あるいは622Mbpsデータ・ストリームの場合に16ビット・ストリームを40MHzでサポートすることができるようにする。
【0028】
本発明の実施形態では、媒体インタフェース832は、それぞれ、TX FIFO828から得た4バイト・セル・ヘッダと48バイト・ペイロードとを有する、52バイト・データ・セルを受信する。媒体インタフェース832は、媒体840に53バイト・データを提供する前に、チェックサムをセル・ヘッダの第5のバイトとして各セルに挿入する。逆に、媒体インタフェース832は、媒体840からセルを受信すると、各セルの第5のバイト中のチェックサムを調べ、そのチェックサムが正しいかどうかを判定する。そうである場合は、チェックサムを表すバイトがセルから除去され、セルがRX FIFO830へ転送される。そうでない場合は、セル全体がドロップされる。
【0029】
ネットワーク・インタフェース回路712は、ホスト・コンピュータ・システム上で実行されるアプリケーションには非同期転送のセル記述の詳細が分からないようにする。本目的のため、ホスト・コンピュータ・システム上で実行されるアプリケーションが、ラップアラウンド送信リングおよび受信リングをパケット・インタフェースと共に使用して送信データおよび受信データを管理すると仮定される。しかし、本発明は、他のデータ構造を使用して送信データおよび受信データを管理するホスト・コンピュータ・システム上で実施されるアプリケーションと共に実施することができる。
【0030】
システム・バス・インタフェース820および汎用入出力インタフェース824は、ホスト・コンピュータ・システムには媒体840への転送の詳細が分からないようにする。さらに、コア822にはシステム・バス838およびホスト・データ構造の詳細は分からない。本発明の好ましい実施形態では、アメリカ電子電気学界(「IEEE」)規格1496仕様に指定されたように、システム・バスはSバスである。システム・バス・インタフェース820は、システム・バス、本発明の例ではSバスの仕様に従って通信するように構成される。
【0031】
システム・バス・インタフェース820をそれぞれの異なるホスト・コンピュータ・システム・バスに整合するように構成できることが企図される。システム・バス・インタフェース820は、汎用入出力インタフェース824によって指定されたプロトコルに従ってデータを送受信するようにも構成される。汎用入出力インタフェース824は、コア822がホスト・コンピュータと通信するための特有のインタフェースを形成する。したがって、コア822は、それぞれの異なるホスト・コンピュータ・システムおよびバスとのインタフェースをとるNIC712のそれぞれの異なる実施形態ごとに異なるものである必要はない。
【0032】
記述子リング852および完了リング854を含むホスト・メモリ850がシステム・バス838に結合される。ホスト・メモリ850は、NIC712を通じて媒体840からパケットを受信することができる。パケットがホスト・メモリ850に入ると、ソフトウェアは、受信したパケットを受け入れ、記述子リング852から読み取る。ソフトウェアは、DMA状態を得ると、パケット中のデータをバッファ856内へ移動し、DMA状態を完了リング854上に置く。
【0033】
図9は、図8に示したネットワーク・トランスポータを試験するために実施される本発明の実施形態を示す。NICは、Sバス・ベースのネットワーク・トランスポータであり、ATM SAR(セグメント化および再アセンブリ)機能を実施する。NICは、32ビット・モードと64ビット・モードの両方と、64バイトまでのバーストをサポートすることができる。ネットワーク・トランスポータ800は、3つのブロック、すなわち入出力(IO)、送信(TX)、受信(RX)に分割される。送信ブロックと受信ブロックは共に、ATM SAR機能を実行する。ネットワーク・トランスポータは、SバスHM(ホスト・メモリ)インタフェース・カードの核である。
【0034】
ホスト環境と物理環境は、ネットワーク・トランスポータ800、TX擬似FIFO314、RX擬似FIFO318のみを通じて通信する。送信動作では、ホスト環境は、ネットワーク・トランスポータ800にパケットをポストし、TX擬似FIFO314内へ1つのエントリを送信する。セルが物理環境から出ると、物理環境はパケットを形成するようにセルを構成する。パケットが形成された後、物理環境は、TX擬似FIFO314から適当なエントリを削除し、パケットを検証する。反対の方向へ実行されることを除いて同じことがRX擬似FIFO318にも当てはまる。
【0035】
TX擬似FIFOは、幅110ビットおよび深さ512エントリのFIFOとして実施することができる。RX擬似FIFO318は、幅109ビットおよび深さ4096エントリのFIFOとして実施することができる。FIFOのフィールドの数は、ネットワーク・トランスポータの一端から他端へ送信する必要がある情報に依存する。FIFOの深さは、ホスト環境側(TX擬似FIFO)および物理環境側(RX擬似FIFO)で待機させることができるパケットの数に依存する。この手法の1つの利点は、CRC検査が使用されることである。送信する必要があるパケットがホスト環境によってポストされるとき、CRCが、その特定のパケットの他のヘッダ情報と共にTX擬似FIFO314に書き込まれる。物理環境側は、このCRCおよび他の情報を検索し、この情報を、ネットワーク・トランスポータ800を通じて送信されたパケットの情報と比較し、データの完全性を検証する。この手法によって、両側でデータを記憶し、そのデータを個別に比較し、それによってシミュレーションを完了し最終結果を生成するために多量のメモリおよび長い時間を費やすことが回避される。
【0036】
図10は、本発明の例示的な実施形態が従うことができる一般的なステップを示す流れ図である。ステップ10で、物理環境またはホスト・メモリからパケットが到着する。ステップ11で、CRCとその他の情報とを含む、パケットの固有の情報が適当なFIFOに書き込まれる。ステップ12で、パケットがチップにポスト(投函)される。ステップ13で、パケットが試験中のチップによって処理される。ステップ14で、パケットがチップの他方の側に(ホスト・メモリ環境または物理環境に)到着する。ステップ15で、パケットが他方の側によって処理され、CRCとパケットの他の情報が計算される。ステップ16で、適当なFIFOから適当なエントリが検索される。ステップ17で、パケットに関するCRCおよびその他の情報が、FIFOから得た適当なパケット情報と比較される。ステップ18で、結果の比較がユーザに示される。これらのステップは、もはやパケットがなくなり、すなわち試験データがなくなるまで繰り返され、ステップ19で最終結果がユーザに示される。
【0037】
試験中のネットワーク・トランスポータを検証する方法および装置について説明した。試験中のシミュレートされたネットワーク・トランスポータによって処理すべき試験パケットは、シミュレートされたホスト・システムとシミュレートされた物理環境との間で転送される。パケットが、シミュレートされたネットワーク・トランスポータにポストされるのと同時に、そのパケットに対応する固有の情報が擬似FIFOに書き込まれ、擬似FIFOは、ネットワーク・トランスポータによってパケットが出力されるまでこの固有の情報を保持する。シミュレートされたネットワーク・トランスポータがパケットの処理を完了し、シミュレートされたネットワーク・トランスポータの他方の側にパケットを出力した後、パケットのCRCおよびその他の情報が計算され、FIFO中の対応するエントリと比較される。パケットの情報とFIFO中のエントリが同じである場合、試験中のネットワーク・トランスポータは、特定のパケットに関する試験に合格し、そうでない場合、ユーザにエラー・メッセージを出力することができる。
【0038】
パケットに関する結果が生成された後、FIFO中の対応する項目が破棄され、そのエントリによって占められていたメモリ空間が、将来使用できるように解放される。パケットの情報が比較されそのパケットに関する試験結果が得られるたびにメモリ空間が解放されるので、本発明の手法は、従来型の手法とは異なり大量のメモリ空間を使用することを必要としない。また、試験者/ユーザが各パケットの試験時に各パケットごとの試験結果を得ることができるので、ユーザは、シミュレートされたネットワーク・トランスポータを通じてパケットが処理された直後にエラー・データに応答することができる。したがって、シミュレーションが終了するまでユーザに試験結果を提供しない従来型の手法とは異なり、本発明の手法では、試験結果を迅速にユーザに提供する方法および装置が可能になる。
【0039】
例示的なある実施形態を詳しく説明し、添付の図面に示したが、当業者なら様々な他の修正例を構想することができるので、そのような実施形態が広範囲な本発明を例示するものに過ぎず、本発明を制限するものではなく、かつ本発明が、図示し説明した特定の構成および構造に制限されないことが理解されよう。
【図面の簡単な説明】
【図1】 試験中のネットワーク・トランスポータの検証の簡単な例を示す図である。
【図2】 コンピュータ上で使用される本発明の例示的な実施形態を示すブロック図である。
【図3】 本発明の例示的な実施形態を示す図である。
【図4】 本発明のより詳細な実施形態を示す図である。
【図5】 例示的なセルの例示的なフォーマットを示す図である。
【図6】 TX擬似FIFO318およびRX擬似FIFO314の例示的なフォーマットを示す図である。
【図7】 試験中のネットワーク・トランスポータを検証するために本発明を使用することができるネットワーキング・アプリケーションを示す図である。
【図8】 シミュレートすることができ、かつ実際のハードウェアとして実現する前に、試験中のネットワーク・トランスポータを検証する本発明の手法を適用することができる例示的なチップを示す図である。
【図9】 図8に示したネットワーク・トランスポータを試験するために実施される本発明の実施形態を示す図である。
【図10】 本発明の例示的な実施形態が従うことができる一般的なステップを示す流れ図である。
【符号の説明】
310 ネットワーク・トランスポータ
312 ホスト・メモリ
314 TX擬似FIFO
316 シミュレートされた物理層
318 RX擬似FIFO
319 外部メモリ・バッファ
400 パケット・ポスタ
402 セル・グラバ
404 比較器
406 パケット生成装置
408 セル生成装置
410 パケット・グラバ
412 RX比較機構
Claims (3)
- 試験中のソフトウェア・シミュレートされたネットワーク・トランスポータを検証する方法において:
データ・パケットの第1の1組の構成要素のコピーを擬似先入れ先出しバッファに保管するステップであって、前記第1の1組の構成要素が前記データ・パケットに固有でありこれを記述しているステップと;
前記保管するステップと同時に、第1の1組の構成要素を有する前記データ・パケットを、最初のシーケンスを有する順序で前記ネットワーク・トランスポータへ送るステップと;
それぞれが前記第1の1組の構成要素の対応する構成要素を有する第2の1組の構成要素を前記ネットワーク・トランスポータから受けるステップと;
前記第2の1組の構成要素が前記最初のシーケンスとは異なる順序でネットワーク・トランスポータから受け取られた場合に、前記擬似先入れ先出しバッファの前記第1の1組の構成要素を前記第2の1組の構成要素のそれぞれが受け取られた順序に対応するように再順序付けするステップと;
前記第2の1組の構成要素のそれぞれが前記再順序付けされた第1の1組の構成要素と一致するか否かを判定するために、前記第2の1組の構成要素のそれぞれが受け取られた際に、前記再順序付けされた第1の1組の構成要素のそれぞれを前記データ・パケットの対応する前記第2の1組の構成要素と比較するステップと
を含む方法。 - データをホスト側と物理側の間で転送するために試験中のソフトウェア・シミュレートされたネットワーク・トランスポータを検証する装置において:
パケットが試験のために前記ネットワーク・トランスポータに同時にポストされた場合、前記パケットに関する第1の1組の構成要素のコピーを記憶する擬似先入れ先出しバッファであって、前記第1の1組の構成要素が前記パケットに固有でありこれを記述しており、最初のシーケンスの順序である擬似先入れ先出しバッファと;
前記第1の1組の構成要素のそれぞれを前記パケットの前記第2の1組の構成要素の対応するそれぞれと比較するために前記擬似先入れ先出しバッファに結合された比較器であって、一度前記パケットが前記ネットワーク・トランスポータによって処理され出力されると、前記第2の1組の構成要素が前記パケットから抽出され、前記第2の1組の構成要素のそれぞれが前記最初のシーケンスとは異なる順序で抽出された場合、前記擬似先入れ先出しバッファの前記第1の1組の構成要素が前記第2の1組の構成要素が抽出された順序に対応するように再順序付けされる比較器と
を含む装置。 - データをホスト側と物理側の間で転送するために試験中のソフトウェア・シミュレートされたネットワーク・トランスポータを検証するコンピュータ・システムにおいて:
前記ネットワーク・トランスポータに同時にポストされたパケットに関する第1の1組の構成要素を記憶する擬似先入れ先出しバッファであって、前記第1の1組の構成要素が前記パケットに固有でありこれを記述しており、最初のシーケンスの順序である擬似先入れ先出しバッファと;
前記第1の1組の構成要素のそれぞれを前記パケットの対応する第2の1組の構成要素と比較するために前記擬似先入れ先出しバッファに結合された比較器であって、一度前記パケットが前記ネットワーク・トランスポータによって処理され出力されると、前記第2の1組の構成要素のそれぞれが前記パケットから抽出され、前記第2の1組の構成要素のそれぞれが前記最初のシーケンスとは異なる順序で抽出された場合、前記擬似先入れ先出しバッファの前記第1の1組の構成要素が前記第2の1組の構成要素が抽出された順序に対応するように再順序付けされる比較器と
を含む装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/554,609 | 1995-11-06 | ||
US08/554,609 US5673279A (en) | 1995-11-06 | 1995-11-06 | Verification of network transporter in networking environments |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09270807A JPH09270807A (ja) | 1997-10-14 |
JP3802166B2 true JP3802166B2 (ja) | 2006-07-26 |
Family
ID=24213998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP30866296A Expired - Lifetime JP3802166B2 (ja) | 1995-11-06 | 1996-11-06 | ネットワーキング環境におけるネットワーク・トランスポータの検証 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5673279A (ja) |
EP (1) | EP0772371B1 (ja) |
JP (1) | JP3802166B2 (ja) |
CA (1) | CA2189619A1 (ja) |
SG (1) | SG79207A1 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5793953A (en) * | 1995-07-07 | 1998-08-11 | Sun Microsystems, Inc. | Method and apparatus for allowing packet data to be separated over multiple bus targets |
US5870628A (en) * | 1996-06-11 | 1999-02-09 | International Business Machines Corporation | Adaptor for receiving and processing asynchronous transfer mode cells within a computer network |
DE19653551C1 (de) * | 1996-12-20 | 1998-02-05 | Siemens Ag | Verfahren zur Überprüfung der Funktionsfähigkeit einer Recheneinheit |
GB2332333B (en) | 1997-12-09 | 2003-01-15 | Sony Uk Ltd | An ATM re-assembly circuit and method |
US6182267B1 (en) * | 1998-11-20 | 2001-01-30 | Cisco Technology, Inc. | Ensuring accurate data checksum |
US6775804B1 (en) | 2000-11-28 | 2004-08-10 | Nortel Networks Limited | Determining integrity of a packet |
US6782503B1 (en) * | 2000-11-28 | 2004-08-24 | Nortel Networks Limited | Generating a signature to add to a test packet to achieve a target check value |
US20020108094A1 (en) * | 2001-02-06 | 2002-08-08 | Michael Scurry | System and method for designing integrated circuits |
US7447982B1 (en) | 2001-03-30 | 2008-11-04 | Cisco Technology, Inc. | BCH forward error correction decoder |
US7003715B1 (en) | 2001-03-30 | 2006-02-21 | Cisco Technology, Inc. | Galois field multiply accumulator |
US7124064B1 (en) * | 2001-03-30 | 2006-10-17 | Cisco Technology, Inc. | Automatic generation of hardware description language code for complex polynomial functions |
US6983414B1 (en) | 2001-03-30 | 2006-01-03 | Cisco Technology, Inc. | Error insertion circuit for SONET forward error correction |
US20020169815A1 (en) * | 2001-05-10 | 2002-11-14 | Francis Wong | Method and apparatus for configuration independent simulation of network layer conditions |
TW528977B (en) * | 2001-12-19 | 2003-04-21 | Inst Information Industry | Software simulation method for multi-access network |
WO2006070451A1 (ja) * | 2004-12-28 | 2006-07-06 | Fujitsu Limited | メモリ診断方法 |
US7809870B2 (en) * | 2006-10-17 | 2010-10-05 | Broadcom Corporation | Method and system for interlocking data integrity for network adapters |
JP4983287B2 (ja) * | 2007-02-13 | 2012-07-25 | 富士通株式会社 | ルール検証装置およびルール検証方法 |
US9253062B2 (en) * | 2011-12-23 | 2016-02-02 | Ixia | Byte by byte received data integrity check |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1431218A (en) * | 1973-06-15 | 1976-04-07 | Marconi Co Ltd | Pseudorandom binary sequence error counters |
US3995258A (en) * | 1975-06-30 | 1976-11-30 | Honeywell Information Systems, Inc. | Data processing system having a data integrity technique |
US4108359A (en) * | 1977-03-30 | 1978-08-22 | The United States Of America As Represented By The Secretary Of The Army | Apparatus for verifying the execution of a sequence of coded instructions |
US4622669A (en) * | 1983-02-07 | 1986-11-11 | Motorola, Inc. | Test module for asynchronous bus |
JPH036156A (ja) * | 1989-06-01 | 1991-01-11 | Mitsubishi Electric Corp | データ伝送路障害検知回路 |
US5142538A (en) * | 1990-04-19 | 1992-08-25 | Photonics Corporation | Link protocol for rs 232 communications |
JPH04127743A (ja) * | 1990-09-19 | 1992-04-28 | Fujitsu Ltd | 広帯域isdnにおける伝送路試験方式 |
JPH04284754A (ja) * | 1991-03-14 | 1992-10-09 | Fujitsu Ltd | Atm交換装置 |
DE4217003A1 (de) * | 1992-05-22 | 1993-11-25 | Sel Alcatel Ag | Verfahren und Schaltungsanordnung zum Wiederherstellen der richtigen Anzahl von Zellen einer gestörten ATM-Verbindung |
US5450425A (en) * | 1993-11-19 | 1995-09-12 | Multi-Tech Systems, Inc. | Protocol for communication of a data packet |
-
1995
- 1995-11-06 US US08/554,609 patent/US5673279A/en not_active Expired - Lifetime
-
1996
- 1996-10-31 EP EP96307882A patent/EP0772371B1/en not_active Expired - Lifetime
- 1996-11-04 SG SG9611061A patent/SG79207A1/en unknown
- 1996-11-05 CA CA002189619A patent/CA2189619A1/en not_active Abandoned
- 1996-11-06 JP JP30866296A patent/JP3802166B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP0772371B1 (en) | 2004-01-02 |
EP0772371A1 (en) | 1997-05-07 |
JPH09270807A (ja) | 1997-10-14 |
CA2189619A1 (en) | 1997-05-07 |
US5673279A (en) | 1997-09-30 |
SG79207A1 (en) | 2001-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3802166B2 (ja) | ネットワーキング環境におけるネットワーク・トランスポータの検証 | |
JP2837650B2 (ja) | ルーティング情報の格納及び取り出しのシステム及び方法 | |
US5828903A (en) | System for performing DMA transfer with a pipeline control switching such that the first storage area contains location of a buffer for subsequent transfer | |
JP3832816B2 (ja) | ネットワーク・プロセッサ、メモリ構成及び方法 | |
JP3872342B2 (ja) | ネットワークのための装置およびスケーラブル・ネットワーク・プロセッサ | |
JP4066382B2 (ja) | ネットワーク・スイッチ及びコンポーネント及び操作方法 | |
US5446726A (en) | Error detection and correction apparatus for an asynchronous transfer mode (ATM) network device | |
JP3819484B2 (ja) | Mpegパケットをパケット化およびセグメント化する装置および方法 | |
US6064674A (en) | Method and apparatus for hardware forwarding of LAN frames over ATM networks | |
JP3817477B2 (ja) | Vlsiネットワーク・プロセッサ及び方法 | |
JP3129244B2 (ja) | 通信制御装置 | |
US5237569A (en) | Method and system for transmitting HDLC data via ATM network | |
JPH05136804A (ja) | Atmセル誤り処理システム | |
JP2000312220A (ja) | データ転送システム及びその転送方法 | |
JP3761980B2 (ja) | 加法によるデータパッキングのための装置及びその方法 | |
US20050105558A1 (en) | Method and apparatus for hardware forwarding of LAN frames over ATM networks | |
US7050461B2 (en) | Packet buffer equipment | |
US5825765A (en) | Communication network based on ATM for general purpose computers | |
US20040090967A1 (en) | Method and apparatus for hardware forwarding of LAN frames over ATM networks | |
US6421343B1 (en) | Asynchronous transfer mode host adapter apparatus with ability of shared media access | |
US5940404A (en) | Method and apparatus for enhanced scatter mode allowing user data to be page aligned | |
WO1995014269A1 (en) | A high-performance host interface for networks carrying connectionless traffic | |
US6788700B1 (en) | Interfacing between a network interface and a bus | |
US5642347A (en) | Approach to direct performing asynchronous transfer mode (ATM) adaptation layer 5 reassembly | |
JP3291866B2 (ja) | データ受信方式及び通信制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060222 |
|
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: 20060328 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060427 |
|
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: 20100512 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120512 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130512 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130512 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |