(57)【特許請求の範囲】
【請求項１】
フレームをＡＴＭセル化して転送し、あるいは、ＡＴＭセルをフレーム化して転送するＡＴＭ通信システムのフレームとＡＴＭセルとの相互変換方法において、１セル相当分のフレーム情報を受信する毎にＡＴＭセル化して転送する手順と、フレーム全体を受信完了後、ＡＴＭセル化して転送する手順とを備え、前記２つの手順が接続毎に選択使用可能なことを特徴とするフレームとＡＴＭセルとの相互変換方法。
【請求項２】
フレームをＡＴＭセル化して転送し、あるいは、ＡＴＭセルをフレーム化して転送するＡＴＭ通信システムのフレームとＡＴＭセルとの相互変換方法において、ＡＴＭセルの受信後、フレームを構成するセルを接続毎に設定したセル数分、バッファに蓄積した後、フレームの組み立てを開始し、フレームの転送を行う手順と、フレームを構成する全てのセルの受信が完了した後、フレームの組み立てを開始し、フレームの転送を行う手順とを備え、前記２つの手順を接続毎に選択使用可能なことを特徴とするフレームとＡＴＭセルとの相互変換方法。
【請求項３】
組み立てられたフレームの送信順序は、ＡＴＭセルが受信される毎にそのセル情報が登録されるテーブルの内容に基づいて管理されることを特徴とする請求項２記載のフレームとＡＴＭセルとの相互変換方法。
【請求項４】
スイッチ制御部、回線インタフェース部、フレームとＡＴＭセルとの相互変換を行うインタフェース部、及び、スイッチ部を備えたＡＴＭ交換機において、前記フレームとＡＴＭセルとの相互変換を行うインタフェース部は、１セル相当分のフレーム情報を受信する毎に、１セル相当分のフレーム情報をＡＴＭセル化して転送する手段と、フレーム全体を受信完了後、フレーム全体をＡＴＭセル化して転送する手段とを備え、前記２つの手段のどちらかをコネクション情報に基づいて選択することを特徴とするＡＴＭ交換機。
【請求項５】
前記フレームとＡＴＭセルとの相互変換を行うインタフェース部は、組み立てられたフレームの送信順序を、ＡＴＭセルが受信される毎にそのセル情報が登録されるテーブルの内容に基づいて管理する機能を有することを特徴とする請求項４記載のＡＴＭ交換機。
【請求項６】
スイッチ制御部、回線インタフェース部、フレームとＡＴＭセルとの相互変換を行うインタフェース部、及び、スイッチ部を備えたＡＴＭ交換機において、前記フレームとＡＴＭセルとの相互変換を行うインタフェース部は、ＡＴＭセルを受信後、フレームを構成するセルを接続毎に設定したセル数分、バッファに蓄積した後、フレームの組み立てを開始し、フレームの転送を行う手段と、フレームを構成する全てのセルを受信完了した後、フレーム組み立てを開始し、フレームの転送を行う手段とを備え、前記２つの手段のどちらかをコネクション情報に基づいて選択することを特徴とするＡＴＭ交換機。
【請求項７】
前記フレームとＡＴＭセルとの相互変換を行うインタフェース部は、組み立てられたフレームの送信順序を、ＡＴＭセルが受信される毎にそのセル情報が登録されるテーブルの内容に基づいて管理する機能を有することを特徴とする請求項６記載のＡＴＭ交換機。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パケットの通信装置におけるフレームとＡＴＭセルとの相互変換方法及びＡＴＭ交換機に係り、特に、可変長のパケット(以下、フレームという)と固定長のパケット(以下、セルという)との間の相互変換方法およびこれを用いるＡＴＭ交換機に関する。
【０００２】
【従来の技術】
図３は本発明が適用されるＡＴＭ網を経由して通信を行うネットワークの構成例を示すブロック図、図５はフレームとセルとのフォーマットの対応関係とその変換を説明する図、図２６はセルのフォーマットを説明する図である。以下、図３、図５、図２６を参照して従来技術を説明する。図３において、１０００−Ａ、１０００−ＢはＡＴＭ交換機、１７００−Ａ、１７００−Ｂは通信回線、２０００−Ａ、２０００−Ｂは通信端末、３０００はＡＴＭ通信網である。なお、図３に示す例では、通信端末２０００−Ａが、ＡＴＭ通信網３０００を経由する接続（コネクション）３５００を用いて、データを通信端末２０００−Ｂに対して送信するものとする。また、以後の説明において、複数の同一機器を区別する必要のない場合、その符号を上位の数字のみで示す場合もある。
【０００３】
図３において、端末２０００−Ａから送信されたフレームリレー等のＨＤＬＣ(High−level Data Link Control Procedure）系の可変長のデータパケット２０−Ａ(以下、フレームという)は、通信回線１７００−Ａを経由してＡＴＭ交換機１０００−Ａに送られる。ＡＴＭ交換機１０００−Ａは、フレーム２０−Ａをセル１０−１，１０−２，・・・，１０−ｎ(ｎは１以上の整数)に変換する。セル１０−１，１０−２，・・・，１０−ｎは、ＡＴＭ交換機１０００−ＡからＡＴＭ通信網３０００内の通信回線１８００を通してＡＴＭ交換機１０００−Ｂへ送信される。
【０００４】
ＡＴＭ交換機１０００−Ｂは、受信したセル１０−１，１０−２，・・・，１０−ｎをフレーム２０−Ｂに変換する。フレーム２０−Ｂは回線１７００−Ｂを経由して端末２０００−Ｂに送られる。
【０００５】
次に、通信端末２０００−Ａから送信されるフレーム２０とＡＴＭ通信網内を伝送されるセル１０（１０−１〜１０−ｎ）とのフォーマット変換の手順を図５を参照して説明する。
【０００６】
フレーム２０は、図５に示すように、フレームの先頭部分に設けられているヘッダ２１と、情報フィールド２２と、フレームの最終部分に設けられているトレイラ２３とにより構成され、ＣＰＣＳ(Common Part Convergence Sublayer)レイヤ、ＳＡＲ(Segmentation And Reassembly Sublayer)レイヤの処理を経てセルに変換される。すなわち、まず、ＣＰＣＳレイヤにおいて、フレーム２０から、フレームの先頭部分に設けられているヘッダ２１とフレームの最終部分に設けられているトレイラ２３とが取り除かれる。残った部分がフレームの情報フィールド２２である。
【０００７】
フレームの情報フィールド２２は、ＣＰＣＳ−ＰＤＵ(CPCS−Protocol Data Unit)ペイロード３２とされ、このＣＰＣＳ−ＰＤＵペイロード３２に８バイトのトレイラ３３と、ＣＰＣＳ−ＰＤＵ３０の全長が４８バイトの整数倍になるように調整するためのパディング３４が付与されて、ＣＰＣＳ−ＰＤＵ３０が形成される。
【０００８】
ＣＰＣＳ−ＰＤＵ３０は、ＳＡＲレイヤにおいて４８バイトずつに分割され、ＳＡＲ−ＰＤＵ(SAR-Protocol Data Unit)４０−１，４０−２，・・・，４０−(ｎ−１)，４０−ｎ(ｎは1以上の整数)になる。
【０００９】
これらのＳＡＲ−ＰＤＵ４０−１，４０−２，・・・，４０−(ｎ−１)，４０−ｎは、ＡＴＭレイヤにおいて、それぞれセルの情報フィールド１２−１，１２−２，・・・，１２−(ｎ−１)，１２−ｎとされ、これらのセルの情報フィールド１２のそれぞれには、５バイトのセルヘッダ１１が付与されて、セル１０−１，１０−２，・・・，１０−(ｎ−１)，１０−ｎに変換される。
【００１０】
セル１０のフォーマットは、図２６に示すように、セルヘッダ１１に３ビットのペイロードタイプ識別子(Payload Type Identifier、以下、ＰＴＩという)１４が設けられて構成されており、この領域を用いてセルの情報フィールド１１の内容を識別する。具体的には、セル１０−1，１０−２，・・・，１０−(ｎ−１)のそれぞれのセルヘッダ１１−１，１１−２，・・・，１１−(ｎ−１)のＰＴＩ１４は、“0x0”(xは0または1)と表示され、セルが継続することを示す。また、セル１０−ｎのヘッダ１１−ｎのＰＴＩ１４は0x1(xは0または1)と表示され、セル１０−ｎがフレーム２０を構成する最終のセルであることを示す。
【００１１】
次に、再び図５を参照してセル１０からフレーム２０に変換する手順を説明する。
【００１２】
図５に示したように、ＳＡＲレイヤにおいて、セル１０−１，１０−２，・・・，１０−(ｎ−１)，１０−ｎから、それぞれヘッダ１１−１，１１−２，・・・，１１−(ｎ−１)，１１−ｎを取り除いたものがＳＡＲ−ＰＤＵ４０−１，４０−２，・・・，４０−(ｎ−１)，４０−ｎとされる。そして、ＣＰＣＳレイヤにおいて、ＳＡＲ−ＰＤＵ４０−１，４０−２，・・・，４０−(ｎ−１)，４０−ｎを集めたものがＣＰＣＳ−ＰＤＵ３０とされる。さらに、ＣＰＣＳ−ＰＤＵからトレイラ３３とパディング３４を取り除いたものがＣＰＣＳ−ＰＤＵペイロード３２とされる。ＣＰＣＳ−ＰＤＵペイロード３２は、フレームの情報フィールド２２とされ、フレームの情報フィールド２２にヘッダ２１とトレイラ２３を付与したものがフレーム２０とされる。
【００１３】
前述したようなフレームとセルとの変換に関する従来技術として、特開平５−１３６８１６号公報、特開平５−５６０６６号公報等に記載された技術が知られている。そして、前者の従来技術は、フレームを受信して、フレームをセルに変換し、セルを送信するＡＴＭ交換機が、フレーム全体をバッファに蓄積した後、セルを組み立ててセルの転送を開始するというものである。また、後者の従来技術は、セルを受信し、セルをフレームに変換して、フレームを送信するＡＴＭ交換機が、受信したセルをバッファに蓄積し、フレームを構成する全てのセルを受信した後、フレームを組み立ててフレームの転送を開始するというものである。
【００１４】
【発明が解決しようとする課題】
一般に、音声、画像等のリアルタイム性が要求されるアプリケーションは、エンド−エンドでの通信に要する遅延時間が小さいことが望まれている。
【００１５】
前述した従来技術は、ＡＴＭ交換機が全フレームを蓄積した後にセルに変換し、また、フレームを構成する全てのセルを受信した後にフレームを組み立てているので、フレームからセルに変換する処理に必要となる時間、及び、セルからフレームに変換する処理に必要となる時間が大きくなるため、エンド−エンドでの通信に要する遅延時間を増大させるという問題点を有している。
【００１６】
例えば、図３に示したネットワークにおいて、回線速度が１.５Ｍ ビット／秒の回線１７００−Ａから１０２４バイトのフレームを受信して、フレームをセルに変換し、セルを送信するＡＴＭ交換機１０００−Ａでのフレーム２０−Ａの先頭部分を受信してから、フレーム全体を受信完了するまでに、１０２４バイト×８／(１.５Ｍビット／ｓ)＝５.５msを必要とすることになる。また、フレームからセルに変換する場合には、フレームを分解してセルを組み立てるのに要する時間の他、プロトコル変換の処理を必要とするため、さらに遅延時間が増大することになる。
【００１７】
また、回線速度が４５Ｍビット／ｓのＡＴＭ回線１８００からセルを受信し、１０２４バイトのフレームに変換し、フレームを送信するＡＴＭ交換機１０００−Ｂが、フレームを構成する先頭セル１０−１を受信してから、フレームを構成する最終セル１０−ｎを受信完了するまでには、１セルが５３バイトで、１０２４バイトのフレームを構成するセル数が２２セルであるとして、５３×８×２２／(４５Ｍビット／ｓ)＝０.２１ms を必要とする。
【００１８】
一方、公衆網におけるＡＴＭ交換機ではシェーピングが行われる。このため、例えば、ＡＴＭ交換機において３Ｍビット／ｓのシェーピングが行われる場合、１０２４バイトのフレームを構成する先頭のセルを受信してから、最終セルを受信完了するまでに、実際には、５３×８×２２／(３Ｍビット／ｓ)＝３.１ms を必要とすることになる。そして、セルからフレームに変換する場合には、セルを分解してフレームを組み立てるのに要する時間の他、プロトコル変換の処理を必要とするため、さらに遅延時間が増大することになる。
【００１９】
前述したように、従来技術によるフレームとセルとの変換の処理は、ＡＴＭ交換機においてフレームとセルを相互変換することによって生じる遅延時間が大きいため、エンド−エンドでの通信に要する遅延時間が増大するという問題点を有している。
【００２０】
本発明の目的は、前述した従来技術の問題点を解決し、フレームをＡＴＭセルに変換することによって生じる遅延時間を短縮すると共に、ＡＴＭセルをフレームに変換することによって生じる遅延時間をも短縮することができるフレームとＡＴＭセルとの相互変換方法及びこれを用いたＡＴＭ交換機を提供することにある。
【００２１】
【課題を解決するための手段】
本発明によれば前記目的は、フレームからセルに変換する処理において、１セル相当分のフレーム情報を受信する毎にセル組立を行い、セル送信を開始することにより、また、ＡＴＭ交換機において、フレームを構成するＡＴＭセルを受信し、数セル分、または、ある時間、セルをバッファに蓄積して、フレームを構成する全てのセルを受信することを待つことなく、フレーム組立を開始し、フレームの送信を開始することにより達成される。
【００２２】
さらに、前記目的は、多対１の接続を行うＡＴＭ交換機のように、複数の回線からＡＴＭセルを受信し、セルをフレームに変換してフレームを送信するＡＴＭ交換機において、あるフレームを送信中に、他のフレームのフレーム情報が送信開始されることを防ぐため、複数フレームの送信順序をテーブルを用いて管理することにより達成される。
【００２３】
具体的に言えば、前記目的は、フレームをＡＴＭセル化して転送し、あるいは、ＡＴＭセルをフレーム化して転送するＡＴＭ通信システムのフレームとＡＴＭセルとの相互変換方法において、１セル相当分のフレーム情報を受信する毎にＡＴＭセル化して転送する手順と、フレーム全体を受信完了後、ＡＴＭセル化して転送する手順とを備え、前記２つの手順を接続毎に選択使用可能とすることにより、また、ＡＴＭセルを受信後、フレームを構成するセルを接続毎に設定した一定セル数分、バッファに蓄積した後、フレームの組み立てを開始し、フレームの転送を行い、あるいは、ＡＴＭセルを受信後、フレームを構成するセルを接続毎に設定した一定時間、バッファに蓄積した後、フレームの組み立てを開始し、フレームの転送を行うことにより達成される。
【００２４】
また、前記目的は、組み立てられたフレームの送信順序を、ＡＴＭセルが受信される毎にそのセル情報が登録されるテーブルの内容に基づいて管理することにより達成される。
【００２５】
さらに、前記目的は、スイッチ制御部、回線インタフェース部、フレームとＡＴＭセルとの相互変換を行うインタフェース部、及び、スイッチ部を備えたＡＴＭ交換機において、前記フレームとＡＴＭセルとの相互変換を行うインタフェース部に、前述したフレームとＡＴＭセルとの相互変換を行うための機能部を備えることにより達成される。
【００２６】
【発明の実施の形態】
以下、本発明によるフレームとＡＴＭセルとの相互変換方法及びＡＴＭ交換機の実施形態を図面により詳細に説明する。
【００２７】
図１は本発明の一実施形態によるＡＴＭセルとの相互変換方法を実現するＨＤＬＣインタフェースの構成を示すブロック図、図２は本発明によるＡＴＭ交換機の構成を示すブロック図、図３、図４は本発明が適用されるＡＴＭ網を経由して通信を行うネットワークの構成例を示すブロック図である。図１〜図４において、１０００−Ａ−１、１０００−Ａ−２はＡＴＭ交換機、１１００はＨＤＬＣインタフェース、１２００はスイッチ（ＳＷ）部、１３００は回線インタフェース、１４００はスイッチ制御部、１１１１はＨＤＬＣコントローラ、１１２０はＣＰＵ、１１３０は上り処理用バッファ、１１４０は下り処理用バッファ、１１５０はメモリ、１１６０はＦＩＦＯバッファ、１１７０はバス、１１９０はＤＭＡコントローラ１１９０、１７００−Ａ−１、１７００−Ａ−２、１８００−１、１８００−２は通信回線、２０００−Ａ−１、２０００−Ａ−２は通信端末であり、他の符号は図３の場合と同一である。
【００２８】
本発明が適用される図３に示すネットワークの構成例については、すでに従来技術の欄で説明しているので、ここでの説明は省略する。また、図４に示す本発明が適用されるネットワークの構成例は、図３におけるＡＴＭ通信網３０００内に多数のＡＴＭ交換機が収容され、ＡＴＭ交換機１０００−ＢがＡＴＭ交換機１０００−Ａ−１、１０００−Ａ−２との間に通信回線を持つ点で図３に示す例と相違するだけで、その他の構成動作は同一である。
【００２９】
まず、図２を参照してＡＴＭ交換機について説明する。ＡＴＭ交換機１０００は、フレームとＡＴＭセルとの相互変換を行うＨＤＬＣインタフェース１１００−１，・・・，１１００−ｌ，・・・，１１００−ｊ（ｊは１以上の整数、ｌは１以上ｊ以下の整数）、ＡＴＭセルを目的の方路に振り分けるスイッチ部１２００、スイッチ部１２００を制御するスイッチ制御部１４００、スイッチ部１２００から送られたＡＴＭセルをＡＴＭ回線１８００へ出力し、あるいは、ＡＴＭ回線１８００から入力されたＡＴＭセルをスイッチ部１２００に送り出す回線インタフェース１３００−１，・・・，１３００−ｍ，・・・，１３００−ｋ（ｋは１以上の整数、ｍは１以上ｋ以下の整数）から構成される。
【００３０】
前述のように構成されるＡＴＭ交換機１０００において、ＨＤＬＣインタフェース１１００−ｌは、回線１７００−ｌ−ａからフレーム２０−ａを受信して、フレームをＡＴＭセルに変換し、ＡＴＭセルをスイッチ部１２００に転送する。
【００３１】
スイッチ部１２００は、宛先に応じた回線インタフェース１３００−ｍにＡＴＭセルを振り分ける。回線インタフェース１３００は、ＡＴＭ回線１８００−ｍ−ａに対してＡＴＭセル１０−ａ−１，・・・，１０−ａ−ｎ(ｎは１以上の整数)を出力する。
【００３２】
また、ＡＴＭ回線１８００−ｍ−ｂからＡＴＭセル１０−ｂ−１，・・・，１０−ｂ−ｎを受信した回線インタフェース１３００−ｍは、ＡＴＭセルをスイッチ部１２００に転送する。スイッチ部１２００は、宛先に応じたＨＤＬＣインタフェース１１００−ｌにＡＴＭセルを振り分ける。ＨＤＬＣインタフェース１１００−ｌは、ＡＴＭセルをフレームに変換し、フレーム２０−ｂを回線１７００−ｌ−ｂに送り出す。
【００３３】
フレームとＡＴＭセルとの相互変換を実行するＨＤＬＣインタフェース１１００は、図１に示すように、ＨＤＬＣコントローラ１１１０、ＣＰＵ１１２０、上り処理用バッファ１１３０、下り処理用バッファ１１４０、メモリ１１５０、ＦＩＦＯバッファ１１６０、バス１１７０、ＤＭＡコントローラ１１９０から構成される。
【００３４】
前述のように構成されるＨＤＬＣインタフェース１１００において、ＨＤＬＣコントローラ１１１０は、ＣＲＣ符号の生成等のＨＤＬＣ処理を行う。ＣＰＵ１１２０は、従来技術の欄で図５により説明したように、ＣＰＣＳ及びＳＡＲの処理を行う。上り処理用バッファ１１３０は、ＨＤＬＣコントローラ１１１０から転送されたフレーム情報からＡＴＭセルを組み立てる。下り処理用バッファ１１４０は、ＦＩＦＯバッファ１１６０から送られたＡＴＭセルのヘッダを取り除いてＡＴＭセルをバッファリングする。
【００３５】
ＦＩＦＯバッファ１１６０は、ＡＴＭ交換機１０００のスイッチ部１２００へのＡＴＭセル出力の待ち合わせ、及び、下り処理用バッファ１１４０へのＡＴＭセル出力の待ち合わせを行う。ＤＭＡコントローラ１１９０は、ＨＤＬＣコントローラ１１１０が受信したフレームを上り処理用バッファ１１３０にＤＭＡ(Direct Memory Access)転送し、また、下り処理用バッファ１１４０で生成されたフレームをＨＤＬＣコントローラ１１１０へＤＭＡ転送する。メモリ１１５０は、コネクション情報の格納及び検索、ＣＰＵ１１２０の作業エリア、ＣＰＵ１１２０用のプログラムを格納する機能を持つと共に、信順序管理テーブル１１８０を持つ。
【００３６】
図９は送信順序管理テーブル１１８０の構成を示す図であり、以下、これについて説明する。
【００３７】
送信順序管理テーブル１１８０は、エントリー記述部分１１８１と送信順序管理キュー１１８５とから構成される。エントリー記述部分１１８１には、次の５つの項目を設定する箇所が設けられている。すなわち、フレームの識別子１１８２−１、コネクション（接続）の識別子１１８２−２、そのフレームがフレームを構成する全てのＡＴＭセルを受信後、フレーム組立を開始し、フレームを送信するフレームであることを示すｂｕｆビット１１８２−３、下り処理用バッファ１１４０からＨＤＬＣコントローラ１１１０へフレームを転送することが可能な状態であることを示す送信可能ビット１１８２−４、下り処理用バッファ１１４０において、フレームが転送可能状態になるまでに蓄積するＡＴＭセル数を示すゆらぎビット１１８２−５の５つの項目がエントリー記述部分１１８１に設定される。
【００３８】
送信順序管理キュー１１８５は、送信可能状態にあるフレーム、すなわち、送信可能ビット１１８２−４がセットされているフレームの送信順序を管理するためのものである。フレームが送信可能状態になると、送信可能ビット１１８２−４がセットされ、あわせて送信順序管理キュー１１８５にフレームの識別子が入力される。フレームの送信が完了すると、送信順序管理テーブル１１８０の該当するエントリー記述部分１１８１が削除され、あわせて送信順序管理キュー１１８５の先頭にある識別子が取り除かれる。
【００３９】
次に、図１参照してフレーム２０−ａをＡＴＭセル１０−ａ−１，・・・，１０−ａ−ｎに変換する手順を説明する。
【００４０】
ＨＤＬＣコントローラ１１１０に入力される受信フレーム２０−ａは、１ＡＴＭセル相当分のフレーム情報が到着する毎にフレームから４８バイト分を取り出して分割される。ＤＭＡコントローラ１１９０は、分割されたフレーム情報を、バス１１７０を経由して、上り処理用バッファ１１３０に転送する。上り処理用バッファ１１３０は、ＨＤＬＣコントローラ１１１０から１ＡＴＭセル相当分のフレーム情報が転送される毎に、ＡＴＭセルヘッダを付加し、ＡＴＭセルを組み立てる。組み立てられたＡＴＭセルは、順次、上り処理用バッファ１１３０からバス１１７０を経由してＦＩＦＯバッファ１１６０に転送される。ＦＩＦＯバッファ１１６０は、ＡＴＭセル１０−ａ−１，・・・，１０−ａ−ｎをＡＴＭ交換機１０００のスイッチ部１２００に転送する。
【００４１】
図６はフレームをＡＴＭセルに変換し、そのＡＴＭセルを送信するＨＤＬＣインタフェース１１００における処理手順を説明するフローチャートであり、以下、これについて説明する。
【００４２】
（１）ＨＤＬＣコントローラ１１１０において、１ＡＴＭセル相当分のフレーム情報が受信されると、ＤＭＡコントローラ１１９０によって１ＡＴＭセル相当分の情報が上り処理用バッファ１１３０に転送される（ステップ１１０）。
【００４３】
（２）転送されているフレームが、フレーム全体をバッファリングするフレームである(以下、バッファリングモードという)か、逐次ＡＴＭセルを組み立ててＡＴＭセルを送信するフレームである(以下、ストリーミングモードという)かを、メモリ１１５０に格納されているコネクション情報に基づいて判断する（ステップ１３０）。
【００４４】
（３）ステップ１３０で、受信しているフレームがバッファリングモードのフレームであると判断された場合、フレーム全体を受信完了したか否かを判断し、フレーム全体の受信が完了していない場合、ステップ１１０の処理に戻る（ステップ１７０）。
【００４５】
（４）ステップ１７０で、バッファリングモードのフレームで、フレーム全体の受信を完了したと判断された場合、ＡＴＭセルヘッダを付加してＡＴＭセルの組み立てを行い、ＡＴＭセルを送信する（ステップ１８０、１９０）。
【００４６】
（５）ステップ１９０で送信したＡＴＭセルが、フレームを構成する最終のＡＴＭセルであるか否かを判断し、直前に送信したＡＴＭセルがフレームを構成する最終のＡＴＭセルではない場合、ステップ１８０に戻り、ＡＴＭセルの組み立て及びＡＴＭセルの送信の処理を繰り返し、最終のＡＴＭセルである場合、処理を終了する（ステップ２００、２５０）。
【００４７】
（６）ステップ１３０で、受信しているフレームが、ストリーミングモードのフレームであると判断された場合、セルヘッダを付加してＡＴＭセルの組み立てを行い、組み立てたＡＴＭセルを送信する（ステップ１４０、１５０）。
【００４８】
（７）ステップ１５０で送信したＡＴＭセルがフレームを構成する最終のＡＴＭセルであるか否かを判断し、直前に送信したＡＴＭセルが最終のＡＴＭセルではない場合、ステップ１１０からの処理を繰り返し、最終のＡＴＭセルである場合、処理を終了する（ステップ１６０、２５０）。
【００４９】
次に、図１を参照して、ＡＴＭセル１０−ｂ−１，・・・，１０−ｂ−ｎをフレーム２０−ｂに変換する手順を説明する。
【００５０】
スイッチ部１２００からＦＩＦＯバッファ１１６０に入力されたＡＴＭセル１０−ｂ−１，・・・，１０−ｂ−ｎは、順次、バス１１７０を経由して下り処理用バッファ１１４０に転送される。下り処理用バッファ１１４０は、ＡＴＭセルヘッダを取り除いてＡＴＭセル分解を行うと共に、ＡＴＭセルの到着時間の遅延ゆらぎを吸収するためのバッファリングを行う。下り処理用バッファ１１４０内に、フレームを構成するＡＴＭセルが一定ＡＴＭセル数分バッファリングされた場合、フレームを構成するＡＴＭセルが指定した時間、バッファリングされた場合、または、フレームを構成する全てのＡＴＭセルがバッファリングされた場合、ＣＰＵ１１２０は、フレームが送信可能状態にあることを送信順序管理テーブル１１８０にセットする。
【００５１】
ＤＭＡコントローラ１１９０は、下り処理用バッファ１１４０からＨＤＬＣコントローラ１１１０へＤＭＡコントローラ１１９０による転送中のフレーム情報がない場合、送信順序管理テーブル１１８０に示されたフレームの送信順序に従って、バス１１７０を経由して、ＨＤＬＣコントローラ１１１０へのフレーム情報の転送を開始する。ＨＤＬＣコントローラ１１１０は、フレーム情報が転送されてくると、ＣＲＣチェック等のＨＤＬＣ処理を行い、フレーム２０−ｂを回線１７００−ｂを経由して端末へ転送する。
【００５２】
図７はＨＤＬＣコントローラ１１００に入力されたＡＴＭセルを、下り処理用バッファ１１４０にバッファリングし、送信順序管理テーブル１１８０を設定する手順を説明するフローチャートであり、以下、これについて説明する。
【００５３】
（１）ＣＰＵ１１２０は、ＦＩＦＯバッファ１１６０から１つのＡＴＭセルを取り出し（ここでは１ＡＴＭセル受信という）、ＡＴＭセルをバス１１７０を経由して、下り処理用バッファ１１４０に転送する。下り処理用バッファ１１４０は、転送されたＡＴＭセルのヘッダ部分を取り外してバッファリングする。ＦＩＦＯバッファ１１６０から取り出すＡＴＭセルがない場合、処理を終了する（ステップ３１０、３２０、５００）。
【００５４】
（２）ＣＰＵ１１２０は、下り処理用バッファ１１４０にＡＴＭセルをバッファリングした後、送信順序管理テーブル１１８０を参照して、下り処理用バッファ１１４０にバッファリングしたＡＴＭセルがフレームを構成する先頭ＡＴＭセルであるか否か、すなわち、送信順序管理テーブル１１８０に、下り処理用バッファ１１４０にバッファリングしたＡＴＭセルによって構成されるフレームに関するエントリー１１８１がないか否かを判断する（ステップ３３０、３４０）。
【００５５】
（３）ステップ３４０の判定で、下り処理用バッファ１１４０にバッファリングしたＡＴＭセルがフレームを構成する先頭ＡＴＭセルである場合、テーブル１１８０のエントリー記述箇所１１８１にフレームの識別子１１８２−１、コネクションの識別子１１８２−２を記述することによって、送信順序管理テーブル１１８０にフレームのエントリー１１８１を登録する（ステップ３５０）。
【００５６】
（４）ステップ３５０の処理により、送信順序管理テーブル１１８０へのフレームのエントリー１１８１の登録が完了すると、フレームを構成する全てのＡＴＭセルを受信完了してから、フレームの送信を開始するフレームである（以下、バッファリングモードという）か、逐次フレームの組み立てを行い、フレームの送信を開始するフレームである（以下、ストリーミングモードという）かを、メモリ１１５０に格納されているコネクション情報に基づいて判断する（ステップ３６０）。
【００５７】
（５）ステップ３６０で、フレームがバッファリングモードのフレームであると判断した場合、送信順序管理テーブル１１８０のエントリー１１８１のｂｕｆビット１１８２−３をセットする（ステップ３７０）。
【００５８】
（６）ステップ３６０で、ＡＴＭセル受信バッファ１１４０にバッファリングしたＡＴＭセルが先頭ＡＴＭセルで、そのＡＴＭセルによって構成されるフレームがストリーミングモードのフレームであると判断した場合、送信順序管理テーブル１１８０のフレームのエントリー１１８１のバッファリングするＡＴＭセル数の設定箇所１１８２−５にバッファリングするＡＴＭセル数ｍをセットする（ステップ３６５）。
【００５９】
（７）ステップ３４０で、下り処理用バッファ１１４０にバッファリングしたＡＴＭセルがフレームを構成する先頭ＡＴＭセルではない、すなわち、受信したＡＴＭセルに関するエントリー１１８１が存在する場合、そのＡＴＭセルによって構成されるフレームがバッファリングモードのフレームであるか否かを、メモリ１１５０に格納されているコネクション情報に基づいて判断する（ステップ４００）。
【００６０】
（８）ステップ４００で、下り処理用バッファ１１４０にバッファリングしたＡＴＭセルによって構成されるフレームがバッファリングモードのフレームであると判断した場合、または、ステップ３７０の処理の終了後、バッファリングしたＡＴＭセルがフレームを構成する最終ＡＴＭセルであるか否かを判断し、最終ＡＴＭセルでない場合、処理を終了する（ステップ３８０、５００）。
【００６１】
（９）ステップ３８０で、バッファリングしたＡＴＭセルがフレームを構成する最終ＡＴＭセルである場合、送信順序管理テーブル１１８０のそのフレームに関するエントリー１１８１の送信可能ビット１１８２−４をセットし、さらに、送信順序管理キュー１１８５にそのフレームのフレーム識別子を入力して、処理を終了する（ステップ３９０、４６０、５００）。
【００６２】
（10）ステップ４００で、下り処理用バッファ１１４０にバッファリングしたＡＴＭセルによって構成されるフレームがストリーミングモードのフレームであると判断した場合、または、ステップ３６５の処理の終了後、テーブル１１８０を参照して送信ビットが“１”にセットされているか否かを判断し、送信ビットがセットされている場合、処理を終了する（ステップ４０５、５００）。
【００６３】
（11）ステップ４００で、送信ビットがセットされていないと判断した場合、そのフレームを構成するＡＴＭセルのうち、下り処理用バッファ１１４０にバッファリングされているＡＴＭセル数ｋをカウントし、バッファリングされているＡＴＭセル数ｋとテーブル１１８２−５に設定された遅延ゆらぎ吸収ＡＴＭセル数ｍとを比較する（ステップ４３０、４４０）。
【００６４】
（12）ステップ４４０の比較で、ｋとｍとが等しかった場合、送信順序管理テーブル１１８０のそのフレームに関するエントリー１１８１の送信可能ビット１１８２−４をセットし、送信順序管理キュー１１８５にそのフレームのフレーム識別子を入力して処理を終了し、ｋとｍとが等しくなかった場合、何もしないで処理を終了する（ステップ４５０、４６０、５００）。
【００６５】
前述した処理において、ステップ３６５で設定した遅延ゆらぎを吸収するＡＴＭセル数ｍは、全てのフレーム、全てのコネクションに対して、同じ値を設定してもよく、また異なるフレーム、異なるコネクションに対して、個別の値を設定してもよい。また、ステップ３６５で、遅延ゆらぎを吸収するＡＴＭセル数を設定する代わりに、遅延ゆらぎ吸収する時間を設定してもよい。そして、ステップ３６５で遅延ゆらぎを吸収する時間を設定する場合には、ステップ４３０、４４０において、ＡＴＭセル数をカウントする代わりに、ステップ３６５において遅延ゆらぎを吸収する時間をセットした後の経過時間を測定し、設定した遅延ゆらぎの吸収時間が経過した場合に、ステップ４５０に進み、送信ビットをセットし、設定した遅延ゆらぎの吸収時間が経過していない場合に、ステップ５００に進んで処理を終了すればよい。
【００６６】
図８はＨＤＬＣインタフェース１１００におけるフレームの送信制御の手順を説明するフローチャートであり、次に、このフローを参照して、フレームの送信制御について説明する。
【００６７】
（１）ＤＭＡコントローラ１１９０によって、下り処理用バッファ１１４０からＨＤＬＣコントローラ１１１０へ転送中のフレーム情報が存在するか否か、すなわち、フレーム送信中であるか否かを判断し、送信中のフレームがある場合、該当のフレーム情報の転送を継続する（ステップ７２０、７５０）。
【００６８】
（２）ステップ７２０で、下り処理用バッファ１１４０からＨＤＬＣコントローラ１１１０へ転送中のフレーム情報が存在しないと判断した場合、送信順序管理キュー１１８５にフレームの識別子が入力されているか否か、すなわち、送信可能状態のフレームが存在するか否かを判断し、送信可能状態のフレームが存在しない場合、そのまま処理を終了する（ステップ７３０、８００）。
【００６９】
（３）ステップ７３０で、送信可能状態のフレームが存在すると判断した場合、送信順序キュー１１８５の先頭にあるフレーム識別子が示すフレームを送信して処理を終了する（ステップ７７０、８００）。
【００７０】
次に、ＨＤＬＣインタフェース１１００に入力されるＡＴＭセルと、ＨＤＬＣインタフェースにおいてＡＴＭセルからフレームに変換し、ＨＤＬＣインタフェースから出力するフレームの具体的な例を挙げて、本発明によるＡＴＭセルからフレームに変換する方法の説明を行う。
【００７１】
図１０はＦＩＦＯバッファ１１６０に入力されるＡＴＭセルの流れを説明する図、図１１はＨＤＬＣインタフェース１１００のＨＤＬＣコントローラ１１１０から出力されるフレームの流れを説明する図である。なお、図１０、図１１には、各ＡＴＭセル、フレームに符号が付与されているが、ここでは、ＡＴＭセル名、フレーム名だけで表記して説明する。
【００７２】
図１０に示す例では、ＡＴＭセルＡ１，Ｂ１，Ｃ１，・・・，Ｅ２，Ｄ４の順に、ＡＴＭセルがＨＤＬＣインタフェース１１００のＦＩＦＯバッファ１１６０に入力されている。そして、図１１に示す前述のＡＴＭセルにより構成されるフレームＡ，Ｂ，Ｃ，Ｄは、それぞれ、次のように構成されている。
【００７３】
フレームＡは、ＡＴＭセルＡ１，Ａ２，Ａ３，Ａ４によって構成され、フレームＢは、ＡＴＭセルＢ１，Ｂ２，Ｂ３，Ｂ４によって構成される。また、フレームＣは、ＡＴＭセルＣ１，Ｃ２によって、フレームＤは、ＡＴＭセルＤ１，Ｄ２，Ｄ３，Ｄ４によって構成される。
【００７４】
そして、ＡＴＭセルＥ１、Ｅ２は、フレームＥの一部を構成するものであるが、図１０においては、フレームＥを構成する最終のＡＴＭセルはまだＨＤＬＣインタフェース１１００に到着していないものとする。また、フレームＡ，Ｃ，Ｄ，フレームＥは、ストリーミングモードのフレームであり、フレームＢは、バッファリングモードのフレームであるとする。さらに、フレームＡとフレームＥとは同一コネクションのフレームであるとする。さらに、この例では、全てのストリーミングモードのフレームに対してＡＴＭセルの遅延ゆらぎの吸収を３ＡＴＭセル分行うものとする。すなわち、ストリーミングモードのフレームの場合、フレームを構成するＡＴＭセルが下り処理用バッファに３ＡＴＭセル蓄積されると、送信順序管理テーブル１１８０の送信可能ビット１１８２−４をセットし、送信順序管理キュー１１８５にフレーム識別子を入力するものとする。
【００７５】
図１２、図１４、図１６、図１８、図２０、図２２、図２４は前述した例でフレームを送信する場合の送信順序管理テーブル１１８０の内容の変化を説明する図、図１３、図１５、図１７、図１９、図２１、図２３、図２５はＦＩＦＯバッファ１１６０から出力されたＡＴＭセルからセルヘッダが取り除かれて、ＡＴＭセルの情報フィールドが下り処理用バッファ１１４０にバッファリングされる状態の変化を説明する図である。
【００７６】
なお、送信順序管理テーブルの表記は、次のように行われるものとする。
フレームＦに関するエントリー１１８１に、そのフレームが送信されるコネクションのコネクション識別子がｘであることを示す場合、（Ｆ，１１８２−２）＝ｘと表し、フレームＦがバッファリングモードのフレームであることを示す場合、（Ｆ，１１８２−３）＝１と表す。フレームＦに関するエントリー１１８１に送信可能ビットがセットされている状態を示す場合、（Ｆ，１１８２−４）＝１と表し、ＡＴＭセルの遅延ゆらぎを吸収するＡＴＭセル数がｍであることを示す場合、（Ｆ，１１８２−３）＝ｍと表す。
【００７７】
いま、ＦＩＦＯバッファ１１６０から最初のＡＴＭセルＡ１が出力されると、ＡＴＭセルヘッダが取り除かれて、ＡＴＭセルの情報フィールド１２−Ａ−１が、図１３に示すように、下り処理用バッファ１１４０にバッファリングされる。このとき、送信順序管理テーブル１１８０の１１８２−１にはフレームＡのエントリーがないため、送信順序管理テーブル１１８０に、図１２に示すように、フレームＡのエントリーを登録する。この例では、コネクション識別子（Ａ，１１８２−２）＝２０、ＡＴＭセルの遅延ゆらぎ吸収のＡＴＭセル数（Ａ，１１８２−５）＝３と登録される。
【００７８】
次に、ＦＩＦＯバッファ１１６０から次のＡＴＭセルＢ１が出力されると、ＡＴＭセルヘッダが取り除かれて、ＡＴＭセルの情報フィールド１２−Ｂ−１が、図１５に示すように、下り処理用バッファ１１４０にバッファリングされる。このとき、送信順序管理テーブル１１８０の１１８２−１にはフレームＡのエントリーがないため、送信順序管理テーブル１１８０に、図１４に示すように、フレームＢのエントリーを登録する。この例では、フレームＢは、コネクション識別子（Ｂ，１１８２−２）＝２５であり、また、バッファリングモードのフレームであるため、ｂｕｆビット（Ｂ，１１８２−３）＝１にセットされる。
【００７９】
その後、図１０により説明した順序でＦＩＦＯバッファ１１６０からＡＴＭセルＡ２，Ａ３，Ｂ２，Ｃ１，Ｄ１の７つのＡＴＭセルが出力され、各ＡＴＭセル情報フィールド１２−Ａ−１，１２−Ａ−２，１２−Ａ−３，１２−Ｂ−１，１２−Ｂ−２，１２−Ｃ−１，１２−Ｄ−１が下り処理用バッファ１１４０にバッファリングされている状態を図１７に示している。このときの送信順序管理テーブルの登録状態は、図１６に示すようになる。
【００８０】
図１７に示す例では、フレームＡを構成するＡＴＭセルが３ＡＴＭセル、下り処理用バッファ１１４０にバッファリングされており、また、ＡＴＭセルの遅延ゆらぎ吸収のためのＡＴＭセル数が（Ａ，１１８２−５）＝３であるため、フレームＡは送信可能状態になり、図１６に示すように、送信可能ビット（Ａ，１１８２−４）＝１がセットされ、送信順序管理キュー１１８５にＡが入力されて、フレームＡの送信が開始される。
【００８１】
その後さらに、フレームＣを構成する全てのＡＴＭセルの情報フィールド１２−Ｃ−１，１２−Ｃ−２が下り処理用バッファ１１４０にバッファリングされた状態が図１９に示されている。このとき、図１８に示すように、送信順序管理テーブル１１８０では送信可能ビットが（Ｃ，１１８２−４）＝１にセットされ、また、送信順序管理キュー１１８５にＣが入力される。この時点で、フレームＡは、ＡＴＭセルＡ３までがフレーム情報が送信されて、ＡＴＭセルＡ４がバッファリングされた状態であるので、フレームＣの送信は待たされている。
【００８２】
図２１はフレームＡの送信が完了したため、フレームＡを構成するＡＴＭセルのＡＴＭセル情報フィールドが下り処理用バッファ１１４０には存在しない状態を表している。また、これまでにＦＩＦＯバッファ１１６０から出力されるＡＴＭセルの情報フィールドがバッファリングされる。このとき、図２０に示されるように、送信順序管理テーブル１１８０からフレームＡのエントリー１１８１が削除される。そして、次に送信すべきフレームは、送信順序管理キュー１１８５よりフレームＣとなる。
【００８３】
図２３に示す状態は、フレームＤを構成するＡＴＭセルが３ＡＴＭセル、下り処理用バッファ１１４０にバッファリングされた状態である。このとき、図２２に示すように、フレームＤのＡＴＭセルの遅延ゆらぎ吸収のＡＴＭセル数は（Ｄ，１１８２−５）＝３であるため、フレームＤは送信可能状態になり、送信可能ビットに（Ｄ，１１８２−４）＝１がセットされ、送信順序管理キュー１１８５にＤが入力される。このとき、フレームＣが送信中であるため、フレームＤは送信待ち状態になる。
【００８４】
図２４に示す状態は、フレームＢを構成する最終のＡＴＭセルＢ４の情報フィールド１２−Ｂ−４が下り処理用バッファ１１４０にバッファリングされた状態である。フレームＢは送信可能状態になるため、図２５に示すように、送信順序管理テーブル１１８０の送信可能ビットに（Ｂ，１１８２−４）＝１がセットされ、送信順序管理キュー１１８５にＢが入力される。
【００８５】
前述した本発明の一実施形態によれば、ＡＴＭセルからフレームに変換するために要する時間、及び、ＡＴＭセルからフレームに変換するために要する時間を短縮することが可能となり、エンド−エンドの通信における遅延時間を短縮することが可能となる。
【００８６】
また、本発明の一実施形態によれば、従来技術の場合のように、フレーム全体をバッファに蓄積した後、ＡＴＭセルの組み立てを開始して送信し、あるいは、フレームを構成する全ＡＴＭセルをバッファに蓄積した後、フレームの組み立てを開始して、フレームを送信する方法と併用することが可能となる。このため、通信を行うユーザは、本発明の実施形態による通信方式、前述した従来技術による通信方式を必要に応じて選択することが可能となる。
【００８７】
さらに、本発明の一実施形態によれば、送信順序管理テーブルを用いることによって、複数のＡＴＭセルが多重された状態においてもフレームを構成する全てのＡＴＭセルを受信完了することなく、フレームの組み立てを開始し、フレームの送信を行うことが可能となる。
【００８８】
【発明の効果】
以上説明したように本発明によれば、ＡＴＭセルからフレームに変換するために要する時間、及び、ＡＴＭセルからフレームに変換するために要する時間を短縮することが可能となり、エンド−エンドの通信における遅延時間を短縮することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態によるＡＴＭセルとの相互変換方法を実現するＨＤＬＣインタフェースの構成を示すブロック図である。
【図２】本発明によるＡＴＭ交換機の構成を示すブロック図である。
【図３】本発明が適用されるＡＴＭ網を経由して通信を行うネットワークの構成例（１対１コネクション）を示すブロック図である。
【図４】本発明が適用されるＡＴＭ網を経由して通信を行うネットワークの他の構成例（多対１コネクション）を示すブロック図である。
【図５】フレームとセルとのフォーマットの対応関係とその変換を説明する図である。
【図６】フレームをＡＴＭセルに変換し、そのＡＴＭセルを送信するＨＤＬＣインタフェースにおける処理手順を説明するフローチャートである。
【図７】ＨＤＬＣコントローラに入力されたＡＴＭセルを、下り処理用バッファにバッファリングし、送信順序管理テーブルを設定する手順を説明するフローチャートである。
【図８】ＨＤＬＣインタフェースにおけるフレームの送信制御の手順を説明するフローチャートである。
【図９】送信順序管理テーブルの構成を示す図である。
【図１０】ＦＩＦＯバッファに入力されるＡＴＭセルの流れを説明する図である。
【図１１】ＨＤＬＣインタフェースのＨＤＬＣコントローラから出力されるフレームの流れを説明する図である。
【図１２】フレームを送信する場合の送信順序管理テーブルの内容の変化を説明する図（１）である。
【図１３】ＡＴＭセルの情報フィールドが下り処理用バッファにバッファリングされる状態の変化を説明する図（１）である。
【図１４】フレームを送信する場合の送信順序管理テーブルの内容の変化を説明する図（２）である。
【図１５】ＡＴＭセルの情報フィールドが下り処理用バッファにバッファリングされる状態の変化を説明する図（２）である。
【図１６】フレームを送信する場合の送信順序管理テーブルの内容の変化を説明する図（３）である。
【図１７】ＡＴＭセルの情報フィールドが下り処理用バッファにバッファリングされる状態の変化を説明する図（３）である。
【図１８】フレームを送信する場合の送信順序管理テーブルの内容の変化を説明する図（４）である。
【図１９】ＡＴＭセルの情報フィールドが下り処理用バッファにバッファリングされる状態の変化を説明する図（４）である。
【図２０】フレームを送信する場合の送信順序管理テーブルの内容の変化を説明する図（５）である。
【図２１】ＡＴＭセルの情報フィールドが下り処理用バッファにバッファリングされる状態の変化を説明する図（５）である。
【図２２】フレームを送信する場合の送信順序管理テーブルの内容の変化を説明する図（６）である。
【図２３】ＡＴＭセルの情報フィールドが下り処理用バッファにバッファリングされる状態の変化を説明する図（６）である。
【図２４】フレームを送信する場合の送信順序管理テーブルの内容の変化を説明する図（７）である。
【図２５】ＡＴＭセルの情報フィールドが下り処理用バッファにバッファリングされる状態の変化を説明する図（７）である。
【図２６】ＡＴＭセルのフォーマットを説明する図である。
【符号の説明】
１０００  ＡＴＭ交換機
１１００  ＨＤＬＣインタフェース
１１１０  ＨＤＬＣコントローラ
１１２０  ＣＰＵ
１１３０  上り処理用バッファ
１１４０  下り処理用バッファ
１１５０  メモリ
１１６０  ＦＩＦＯバッファ
１１７０  バス
１１８０  送信順序管理テーブル
１１８５  送信順序管理キュー
１１９０  ＤＭＡコントローラ
１２００  スイッチ部
１３００  回線インタフェース
１４００  スイッチ制御部
【図１】
0003818737.tif 000002
【図２】
0003818737.tif 000003
【図３】
0003818737.tif 000004
【図４】
0003818737.tif 000005
【図５】
0003818737.tif 000006
【図６】
0003818737.tif 000007
【図７】
0003818737.tif 000008
【図８】
0003818737.tif 000009
【図９】
0003818737.tif 000010
【図１０】
0003818737.tif 000011
【図１１】
0003818737.tif 000012
【図１２】
0003818737.tif 000013
【図１３】
0003818737.tif 000014
【図１４】
0003818737.tif 000015
【図１５】
0003818737.tif 000016
【図１６】
0003818737.tif 000017
【図１７】
0003818737.tif 000018
【図１８】
0003818737.tif 000019
【図１９】
0003818737.tif 000020
【図２０】
0003818737.tif 000021
【図２１】
0003818737.tif 000022
【図２２】
0003818737.tif 000023
【図２３】
0003818737.tif 000024
【図２４】
0003818737.tif 000025
【図２５】
0003818737.tif 000026
【図２６】
0003818737.tif 000027