JP3584853B2 - パケット交換機、パケット交換方法 - Google Patents

パケット交換機、パケット交換方法 Download PDF

Info

Publication number
JP3584853B2
JP3584853B2 JP2000144300A JP2000144300A JP3584853B2 JP 3584853 B2 JP3584853 B2 JP 3584853B2 JP 2000144300 A JP2000144300 A JP 2000144300A JP 2000144300 A JP2000144300 A JP 2000144300A JP 3584853 B2 JP3584853 B2 JP 3584853B2
Authority
JP
Japan
Prior art keywords
packet
fixed
length
cell
length cell
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
JP2000144300A
Other languages
English (en)
Other versions
JP2001326683A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2000144300A priority Critical patent/JP3584853B2/ja
Publication of JP2001326683A publication Critical patent/JP2001326683A/ja
Application granted granted Critical
Publication of JP3584853B2 publication Critical patent/JP3584853B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、パケット交換方式によるデータ通信に関し、特に、可変長のパケットの交換処理を実行するパケット交換機とその交換方法、パケット交換プログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
パケット交換方式は、通信データを定められた長さのブロックに分割し、各ブロックの分割した順番を示すシーケンス番号や送信先等の通信に必要な情報を示すヘッダを、その各ブロックに付けて送信する方式であり、この分割されたブロックをパケット(packet)と呼ぶ。
【0003】
交換機(回線切替え装置、スイッチ装置)は、通信回線やネットワークのノードにおいて通信路の選択や設定等を行い、高速な中継を行う装置である。
【0004】
パケット交換機は、パケット交換方式の通信の中継を行う交換機であり、通信データであるパケットの入出力(送受信)を行う複数のインタフェースを備え、受信したパケットのヘッダを基にその送信先を判断し、適切な出力インタフェースを選択して、パケットを入力インタフェースから出力インタフェースに送る。
【0005】
パケット交換機が交換する(通信を中継する)パケットの長さは、その全てを一定の長さに限る形態のみではなく、可変長のパケットの交換を行うものがある。また、送信するパケット等の通信データを分割したり連結することにより、その長さの変換を行う交換機もある。
【0006】
例えば、特開平07−202903号公報に開示された従来技術では、可変長のパケットによりデータを送信するフレームリレー方式による送信データを、固定長のATMセルに分割して、ATMの通信回線網に送出を行う交換機が提案されている。また逆に、特開平07−254904号公報に開示された従来技術では、固定長のATMセルによる送信データを、複数のATMセルをまとめて1つのパケットに連結して、フレームリレー方式の回線に送出を行う交換機が提案されている。
【0007】
また、可変長のパケットの交換を行うパケット交換機においては、装置内部において、その通信データを一定の長さに揃えたパケットに分割し、その通信データの交換を処理するものがある。
【0008】
これは、一定長のパケットへの分割及び、分割した各パケットを元の長さに再び連結して戻す処理を、交換機の入出力インタフェースにおいて実行することで、交換機内部で処理する通信路の選択や設定等を、分割した固定長のパケットに対し行うことができるのである。
【0009】
これにより、装置内部における交換の処理等が容易になり、交換処理が高速化され、又装置内で交換処理を実行する部分においては、パケットの様々な長さに対応させるための複雑な構造が不要となる。尚、装置内で処理するこの分割した固定長のパケットを、以下セルと呼ぶこととする。
【0010】
図19は、可変長のパケットを装置内においては固定長のセルに分割する、従来のパケット交換機の構成を示すブロック図である。
【0011】
図19を参照すると、従来のパケット交換機は、通信データの送受信をするための入力インタフェース100cと出力インタフェース200cを複数備え、入力インタフェース100cと出力インタフェース200cとを接続するスイッチ部300と、スイッチ部300の接続を決定するスケジューラ部400を備えている。
【0012】
各入力インタフェース100cは、パケットを取り出すための可変長パケット抽出部10と、パケットのヘッダの宛先情報を基に通信データを送出する出力インタフェース200cを決定するアドレス解決部20と、アドレス解決部20が参照する経路検索テーブル30と、受信したパケットを装置内セルに分割するためのパケット分割部40cと、スケジューラ部400に接続要求を送出しその結果が返されるまでセルを格納するための入力バッファ60と、入力バッファ60を管理するバッファ管理部50を備える。図19の例では、第1から第nまでの“n個”の入力インタフェース100cを備え、又この各入力インタフェース100cは同様の構成である。
【0013】
出力インタフェース200cは、スイッチ部300からセルを受けてセル格納バッファ90に書き込む装置内セル受信部70と、セル格納バッファ90からセルを読み出して、元のパケットに組み立て直すパケット組立部80cを備える。図19の例では、第1から第nまでの“n個”の出力インタフェース200cを備え、又この各出力インタフェース200cは同様の構成である。
【0014】
この従来のパケットスイッチ装置の動作は、以下の通りである。
【0015】
まず、入力インタフェース100cの側においては、可変長パケット抽出部10は、受信したデータ信号からパケットを抽出して、これをアドレス解決部20に渡し、アドレス解決部20は、パケットのヘッダ内の宛先情報を基に経路検索テーブル30を検索して、転送する出力インタフェース200cを決定する。
【0016】
ここでは、以下、第1出力インタフェース200cに転送する場合を例に説明する。
【0017】
パケット分割部40cは、可変長のパケットを固定長に分割し、その分割された各データに所定のヘッダを付加することにより装置内セルを生成する。
【0018】
図20は、従来のパケットスイッチ装置によるパケットの分割を説明するための図である。
【0019】
図20の例では、第1と第2の2つの可変長パケット2000を装置内の固定長のセル2006に分割を行う。
【0020】
第1可変長パケットは、装置内セル長より少し長いため2つに分割され、分割された一方はその長さが装置内セル長より短いため空き領域2005を付加し長さを揃えている。また、第2可変長パケットは、装置内セル長より短いため、分割するのではなく空き領域2005を付加し長さを装置内セル長に揃えている。
【0021】
また、図20では、分割の前に各パケットに装置内ヘッダ2002を付加し、またその分割後のセルに対してもセルヘッダ2004を付加している。これらのヘッダにより、各セル等の情報を示すのである。
【0022】
バッファ管理部50は、この装置内セルを入力バッファ60に書き込み、スケジューラ部400に対し、第1出力インタフェース200cに対する接続要求を送出する。
【0023】
バッファ管理部50は、この接続要求に対する応答であるスケジューリングの結果をスケジューラ部400から受けると、セルを入力バッファ60から読み出して、スイッチ部300を経由して第1出力インタフェース200cに転送する。
【0024】
次に、出力インタフェース200cの側では、装置内セル受信部70cは、スイッチ部300を経由して装置内セルを受け取り、受けたセルをセル格納バッファ90に格納する。
【0025】
そして、装置内セル受信部70cは、分割されたパケットを構成する最終セルを受けると、その旨をパケット組立部70cに通知し、パケット組立部70cは、セル格納バッファ90からセルが読み出して連結し元のパケットを組み立て復元する。
【0026】
これは、図20の例におけるように、各セルに付加されたヘッダや空き領域を取り除き、分割されたデータをその(ヘッダに記録された)順番に従い連結することで復元される。
【0027】
【発明が解決しようとする課題】
しかし、従来の固定長のセルを装置内で用いるパケット交換機では、以下に述べるような問題点があった。
【0028】
こうした従来のパケット交換機では、可変長のパケットを単純に分割することにより、装置内の固定長のセルに変換するため、装置内セルに多くの空き領域が必要となり、こうした不要なデータをインタフェース間等で送受することによる無駄が大きかった。
【0029】
例えば、図20を参照すると、装置内セル長よりパケット長が少しだけ大きい可変長パケット2000を分割する場合、データ領域2007は2つのセルに渡って分割され、パケットを構成するセルの2セル目はデータ領域がわずかであり、空き領域2005が大部分を占めることになる。この例では、装置内を転送されるセルのうち、ほぼ半分近くが空き領域となってしまう。またこれにより、このパケット交換機における転送速度も制限される。
【0030】
本発明の目的は、上記従来技術の欠点を解決し、装置内セルにおける空き領域を可能な限り抑えることで、通信の無駄を解消し、効率的なデータ転送を行うパケット交換機とその交換方法、パケット交換プログラムを記録した記録媒体を提供することである。
【0031】
【課題を解決するための手段】
上記目的を達成するため本発明のパケット交換機は、パケットを受信する入力インタフェースと、受信した前記パケットを送信する出力インタフェースを備え、前記入力インタフェースに受信したパケットを一定の長さの固定長セルに変換して前記出力インタフェースに送るパケット交換機において、各前記入力インタフェースは、受信したパケットを必要に応じて順次連結し、更に一定の長さの固定長に分割することにより前記固定長セルに変換を行う固定長セル変換手段を備え、各前記出力インタフェースは、前記入力インタフェースから送られた前記固定長セルを連結することにより、各前記パケットを連結した状態に戻すパケット組立手段と、この連結した状態の各前記パケットをそれぞれに分離することにより、元の受信した各前記パケットの状態に復元するパケット分離手段を備え、各前記入力インタフェースの前記固定長セル変換手段が、前記固定長セルにおける空き領域の占める割合の設定値を備え、受信したパケットをその送り先の各前記出力インタフェース毎に記録するバッファを備え、各前記出力インタフェースに対する前記バッファに記録したパケットを、もし前記固定長セルに変換した場合に必要とする空き領域の占める割合が前記設定値以下である場合に、記録されたパケットを前記固定長セルに変換し、当該出力インタフェースに送る手段を備えることを特徴とする。
請求項2の本発明のパケット交換機は、前記固定長セル変換手段は、元の受信した各前記パケットの復元に用いるための、各前記固定長セル相互の前後関係や、連結した各前記パケットそれぞれのデータ長の情報を示すヘッダを付加して、前記固定長セルを作成し、前記出力インタフェースは、送られた前記固定長セルからその前記ヘッダが示す情報を参照し、前記パケット組立手段は、各前記固定長セルをその順番に従い連結し、前記パケット分離手段は、連結された各前記パケットのそれぞれのデータ長に従いこれを分割することにより、各前記パケットを復元することを特徴とする。
【0032】
請求項3の本発明のパケット交換機は、各前記入力インタフェースの前記固定長セル変換手段が、パケットの連結を続ける上限のサイズを示す連結パケットサイズの設定を備え、各前記出力インタフェースに対する前記バッファに記録したパケットのデータサイズを前記連結パケットサイズと比較し、もし前記連結パケットサイズを超過した場合で、かつ前記固定長セルに変換した場合に必要とする空き領域の占める割合が前記設定値以下である場合に、記録された前記パケットを前記固定長セルに変換し、当該出力インタフェースに送る手段を備えることを特徴とする。
【0033】
請求項4の本発明のパケット交換機は、各前記入力インタフェースの前記固定長セル変換手段が、パケットを前記固定長セルに変換した場合に必要とする空き領域の占める割合に基づく、当該パケットを前記固定長セルに変換するか否かの判定を、パケットのデータサイズと対応させて記録した送出可否検索テーブルを備え、各前記出力インタフェースに対する前記バッファに記録したパケットの合計サイズを基に、前記送出可否検索テーブルを検索し、前記送出可否検索テーブルに記録された可否の判断に従い前記固定長セルに変換を実行する手段を備えることを特徴とする。
【0034】
請求項5の本発明のパケット交換機は、各前記入力インタフェースの前記固定長セル変換手段が、各前記出力インタフェース毎に、未送のまま前記バッファに記録されているパケットの受信後の経過時間を計測するタイマーと、未送のまま前記バッファにパケットを待機させる上限時間の設定と、前記タイマーが、前記上限時間を超過してパケットが記録されていることを検出した場合に、当該出力インタフェースに送る未送のパケットを、前記固定長セルに変換して送出する手段を備えることを特徴とする。
【0035】
請求項6の本発明のパケット交換方法は、パケットを受信する入力インタフェースから受信した前記パケットを送信する出力インタフェースへの通信データの交換を、受信したパケットを一定の長さの固定長セルに変換して送るパケット交換方法において、各前記入力インタフェースが受信したパケットを、必要に応じて順次連結し、更に一定の長さの固定長に分割することにより前記固定長セルに変換を行う固定長セル変換ステップと、各前記出力インタフェースにおいて、前記入力インタフェースから送られた前記固定長セルを連結することにより、各前記パケットを連結した状態に戻すパケット組立ステップと、この連結した状態の各前記パケットをそれぞれに分離することにより、元の受信した各前記パケットの状態に復元するパケット分離ステップを有し、前記固定長セル変換ステップが、受信したパケットをその送り先の各前記出力インタフェース毎にバッファに記録するステップと、各前記出力インタフェースに対する前記バッファに記録したパケットを、もし前記固定長セルに変換した場合に必要とする空き領域の占める割合が、空き領域の占める割合の設定値以下を成す場合には、前記記録されたパケットを前記固定長セルに変換し、当該出力インタフェースに送るステップを含むことを特徴とする。
【0036】
請求項7の本発明のパケット交換方法は、元の受信した各前記パケットの復元に用いるための、各前記固定長セル相互の前後関係や、連結した各前記パケットそれぞれのデータ長の情報を示すヘッダを付加して前記固定長セルを作成するステップを備え、前記出力インタフェースにおいて、前記入力インタフェースから送られた各前記固定長セルにおける前記ヘッダが示す情報を参照するステップを備え、前記パケット組立ステップは、各前記固定長セルをその順番に従い連結するステップを備え、前記パケット分離ステップは、連結された各前記パケットのそれぞれのデータ長に従いこれを分割することにより、各前記パケットを復元するステップを備えることを特徴とする。
【0037】
請求項8の本発明のパケット交換方法は、前記固定長セル変換ステップが、各前記出力インタフェースに対する前記バッファに記録したパケットのデータサイズを、パケットの連結を続ける上限のサイズを示す連結パケットサイズと比較し、前記連結パケットサイズを超過した場合で、かつ前記固定長セルに変換した場合に必要とする空き領域の占める割合が前記設定値以下である場合に、記録された前記パケットを前記固定長セルに変換し、当該出力インタフェースに送るステップを含むことを特徴とする。
【0038】
請求項9の本発明のパケット交換方法は、前記固定長セル変換ステップが、パケットを前記固定長セルに変換した場合に必要とする空き領域の占める割合に基づく、当該パケットを前記固定長セルに変換するか否かの判定を、パケットのデータサイズと対応させて記録した送出可否検索テーブルを、参照するステップと、各前記出力インタフェースに対する前記バッファに記録したパケットの合計サイズを基に、前記送出可否検索テーブルを検索し、前記送出可否検索テーブルに記録された可否の判断に従い前記固定長セルに変換を実行するステップを含むことを特徴とする。
【0039】
請求項10の本発明のパケット交換方法は、前記固定長セル変換ステップが、各前記出力インタフェース毎の、未送のまま前記バッファに記録されているパケットの受信後の経過時間が、未送のまま前記バッファにパケットを待機させる設定された上限時間を超過していることを検出した場合に、当該出力インタフェースを送り先とする未送のパケットを、前記固定長セルに変換して送出するステップを含むことを特徴とする。
【0040】
請求項11の本発明のパケット交換機は、パケットを受信する入力インタフェースと、受信した前記パケットを送信する出力インタフェースを備え、前記入力インタフェースに受信したパケットを一定の長さの固定長セルに変換して前記出力インタフェースに送るパケット交換機において、各前記入力インタフェースは、受信したパケットを有効か無効を示す情報とパケットサイズを情報を含む装置内ヘッダを付加してその送り先の各前記出力インタフェース毎にバッファに記録する手段と、前記バッファに記憶されたパケットからなるデータを、一定の長さの固定長毎に読み出し、セルヘッダを付加して固定長セルに変換する固定長セル変換手段を備え、各前記出力インタフェースは、前記入力インタフェースから送られた前記固定長セル内の前記装置内ヘッダを検出することにより、前記固定長セル内のパケットを抽出するパケット抽出手段を備えることを特徴とする。
【0041】
請求項12の本発明のパケット交換機は、前記パケット抽出手段は、前記固定長セルの前記装置内ヘッダに格納される次の装置内ヘッダへのポインタを参照して、前記固定長セル内に前記ポインタで示される次の装置内ヘッダが存在するかどうかを判定し、存在しない場合、前記次の装置内ヘッダへのポインタを、パケット検出メモリに格納し、存在する場合、前記固定長セル内に次の前記装置内ヘッダが存在しなくなるまで、前記パケットの抽出を繰り返すことを特徴とする。
【0042】
請求項13の本発明のパケット交換機は、前記パケット抽出手段は、前記固定長セルが先頭のセルでない場合、前記パケット検出メモリに格納された前記次の装置内ヘッダへのポインタを参照して、前記固定長セル内の前記装置内ヘッダを取り出すことを特徴とする。
【0043】
請求項14の本発明のパケット交換機は、前記固定長セル内の前記装置内ヘッダを正常に検出できない場合、当該固定長セルに対する装置内ヘッダの検出を行う装置内ヘッダ検出手段を備え、前記装置内ヘッダ検出手段は、当該固定長セル内に前記装置内ヘッダが存在しない場合、当該固定長セルに対する処理を終了し、存在する場合、前記装置内ヘッダに含まれる次の装置内ヘッダへのポインタで示される次の装置内ヘッダが存在するかを判定し、次の装置内ヘッダが存在する場合、先の装置内ヘッダに対応するパケットの読出を要求し、次の装置内ヘッダが存在しない場合、前記次の装置内ヘッダへのポインタを前記パケット検出メモリに格納することを特徴とする。
【0044】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【0045】
図1は、本発明の第1の実施の形態によるパケット交換機1の構成を示すブロック図である。
【0046】
図1を参照すると、本実施の形態のパケット交換機1は、入力インタフェース100と出力インタフェース200を複数(それぞれをn個)備え、各入力インタフェース100と各出力インタフェース200に対応するポート(入力ポートと出力ポート)を接続して固定長のセルを転送するスイッチ部300と、スイッチ部300の入力ポートと出力ポートの接続を決定するスケジューラ部400を備える。
【0047】
本実施の形態のパケット交換機1は、各入力インタフェース100から入力される可変長パケットを、送り先である出力インタフェース200に転送するパケット交換機において、装置内においてはこの可変長パケットを固定長のセルに変換してその処理を行うものであり、特に、複数の可変長パケットを連結してより大きな1つのパケットにまとめた後に、これを固定長に分割することで、可変長パケットを装置内セルに変換することを特徴とする。
【0048】
このため、固定長セルへの分割により発生する空き領域が大きく削減され、効率のよい交換転送が実現される。
【0049】
また、本実施の形態ではこの複数の可変長パケットを連結する処理は、入力インタフェース内において、同じ出力インタフェース200から出力するパケットに対し行う。また、連結後のパケット長の規定サイズ(連結パケットサイズ)を予め設定し、入力インタフェースが受信する(同じ出力インタフェースから出力するパケット毎に)パケットを順次連結し、その連結パケットが規定サイズに達した時点で分割を実行し当該出力インタフェースに送出する。これにより、(パケットを一定個数毎にまとめて連結する方式よりも)分割後に空き領域の占める割合を効率よく削減することができる。
【0050】
図2は、本実施の形態の入力インタフェース100の構成を示すブロック図である。また、本実施の形態のパケット交換機1が備える各入力インタフェース100の構成は同様である。
【0051】
図2を参照すると、本実施の形態の入力インタフェース100は、受信する電気信号からパケットを取り出す可変長パケット抽出部10と、パケットのヘッダ部分から宛先情報を取り出してアドレス解決を行うアドレス解決部20と、アドレス解決に必要な情報を格納する経路検索テーブル30と、可変長のパケットを装置内の固定長のセルに分割する装置内セル変換部40と、スケジューラ部400がスイッチ部300の接続を決定するまでセルを格納する入力バッファ60と、入力バッファの管理を行うバッファ管理部50を備えている。
【0052】
バッファ管理部50は、スケジューラ部400に対し、スイッチ部300における接続要求17を送出する。そして、そのスケジューリング結果18が返ってくるまで、セルを入力バッファ60内に、出力先である出力インタフェース200毎に格納しておく。
【0053】
バッファ管理部50は、スケジューラ部400からのスケジューリング結果18を受けると、対応する装置内セルを入力バッファ60から読み出してスイッチ部300に送出する。スイッチ部300においても、このスケジューラ部400からのスケジューリング結果18を受信し、入力インタフェース100から送られた装置内セルを、その出力先の出力インタフェース200に送る。
【0054】
図3は、本発明の第1の実施の形態の出力インタフェースの構成を示すブロック図である。また、本実施の形態のパケット交換機1が備える各出力インタフェース200の構成は同様である。
【0055】
出力インタフェース200は、スイッチ部300から送られる装置内セルを受信し、分割前のパケットの状態に組み立てて(つまり、その順番に従い連結して)戻す装置内セル受信部70と、このパケットが複数の可変長パケットを連結して構成される場合に、これをそれぞれのパケットに分離して復元するパケット分離部80を備えている。
【0056】
図4は、本実施の形態の装置内セル変換部40の構成を示すブロック図である。各入力インタフェース100における装置内セル変換部40の構成は、これに同様である。
【0057】
図4を参照すると、本実施の形態の装置内セル変換部40は、パケットを宛先毎に格納できる入力バッファ42と、受信したパケットの宛先に従い入力バッファ42内の対応する宛先毎に設けられた入力バッファ42に書き込むためのパケット書込制御部41と、入力バッファ42からパケットを読み出す処理を行うパケット読出部43と、パケットの読出要求を生成するパケット読出制御部44と、連結パケットの生成フラグと蓄積パケットサイズを格納するためのバッファ状態管理メモリ47と、連結パケットの生成を開始してからの経過時間を計測するためのタイマー部45と、入力バッファ42から読み出したパケットを装置内の固定長のセルに分割するためのパケット分割部46を備える。
【0058】
パケット書込制御部41は、受信したパケットを入力バッファ42に書き込むと共に、受信したパケットのサイズをパケット読出制御部44に通知する。
【0059】
パケット読出制御部44は、通知されたパケットのサイズを元に、連結パケットの生成を決定する。つまり、連結後のパケットのサイズが大きすぎたり小さすぎたりしないように、入力バッファ42に格納されているパケットの(合計)サイズを、予め設定された規定サイズと比較を行うことで、適切なサイズにパケットを連結する。
【0060】
パケット読出制御部44は、このため、連結パケットの生成フラグと入力バッファ42に格納されているパケットのサイズを、バッファ状態管理メモリ47に格納し、この入力バッファ42に格納されているパケットのサイズが連結パケットのサイズになると、この連結パケットの読出要求をパケット読出部43に送出する。
【0061】
タイマー部45は、連結パケットの生成を開始してからの時間を計測しており、ある一定時間経過したことをパケット読出制御部44が検出した場合は、パケット読出部43にパケットの読出要求を通知する。
【0062】
これは、連結パケットのサイズが、望ましいサイズに達しないことが原因で、送信すべき各パケットがいつまでも入力バッファ42で待機状態となることを防止するための処理である。
【0063】
パケット分割部46は、パケット読出部43により読み出された(連結)パケットを、固定長の装置内セルに変換する。これは、図10の本実施の形態のパケットの分割の例に示されるように、このパケットを予め定められた長さに分割し、そのそれぞれにセルヘッダを付加することで装置内セルに変換するのである。
【0064】
図5は、本実施の形態の装置内セル受信部70の構成を示すブロック図である。各出力インタフェース200における装置内セル受信部70の構成は、これに同様である。
【0065】
図5を参照すると、本実施の形態の装置内セル受信部70は、装置内セルの送り元の入力インタフェース100毎に設けられた出力バッファ72と、スイッチ部300から受けた装置内セルを出力バッファ72に書き込むためのセル書込制御部71と、出力バッファ72からパケットを構成するセルを読み出すためのセル読出制御部73と、読み出したセルをパケットに組み立て直すためのパケット組立部74を備える。
【0066】
セル書込制御部71は、スイッチ部300から受けた装置内セルをその送り元の入力インタフェース100毎に出力バッファ72に書き込み、またそのセルがパケットを構成する最終のセルである場合、最終セルを受けたこと(当該パケットを構成する全ての装置内セルを無事に受けたこと)をセル読出制御部73に通知する。
【0067】
セル読出制御部73は、最終セルの受けた旨の通知を受けると、その装置内セルの送出元の入力インタフェース100に対応するバッファから、当該パケットを構成する全ての装置内セルの読み出しを行う。
【0068】
パケット組立部74は、このセル読出制御部73が読み出した装置内セルから元のパケットを組み立てる。
【0069】
次に、本実施の形態のパケット交換機1の動作を詳細に説明する。
【0070】
図6は、本実施の形態の装置内セル変換部40の動作を説明するためのフローチャートであり、図7は、本実施の形態の出力インタフェース200の動作を説明するためのフローチャートである。
【0071】
この図6、7のフローチャートを参照して、入力インタフェース100から出力インタフェース200にパケットを転送する動作を説明する。
【0072】
まず、本発明のパケット交換機1が、外部から送信データを受信すると、可変長パケット抽出部10は、この受信したデータから可変長パケットを取り出す処理を行う。
【0073】
例えば、可変長パケットがIPパケットである場合、入力インタフェース100が収容している回線のレイヤ1やレイヤ2を終端して、IPパケットを取り出してアドレス解決部20に転送する処理を行う。
【0074】
アドレス解決部20は、受信したパケットのヘッダの宛先情報をもとに経路検索テーブル30を検索して、出力先のインタフェース200の情報を得る。この出力先のインタフェース200の情報は、装置内セル変換部40に通知し、出力先毎にパケットを格納するために使用する。
【0075】
また、アドレス解決部20は、パケットヘッダから宛先情報を取得すると同時にパケット長を取得して、装置内ヘッダを生成する。例えば、装置内ヘッダには、有効/無効を示すビットとパケットのサイズを示すパケット長のデータ等を記録する。
【0076】
パケット書込制御部41は、アドレス解決部20から通知された出力先のインタフェース情報をもとに、出力先インタフェース200用の入力バッファ42にパケットを書き込む(ステップ600)。
【0077】
そして、パケット書込制御部41は、パケットの装置内ヘッダを参照してパケットのサイズを取得し、このパケットのサイズをパケット読出制御部44に通知する(ステップ601)。
【0078】
パケット読出制御部44は、連結パケットの生成処理の判定とパケット読出要求の生成を行う。まず、パケットのサイズをパケット書込制御部41から通知を受けた時、バッファ状態管理メモリ47からバッファ状態を読み出す。
【0079】
バッファ状態管理メモリ47は、例えば図9に示すように出力先インタフェース毎の(例えば、第1(#1)から第n(#n)までの)、連結パケット生成フラグ900とバッファ格納データサイズ901を記憶しておくメモリである。
【0080】
パケット読出制御部44は、出力先インタフェース情報を基に、連結パケット生成フラグと入力バッファ42に格納されているデータサイズを読み出し、連結パケット生成フラグのチェックを行う(ステップ602)。
【0081】
連結パケット生成フラグ900は、対応する出力インタフェース200毎に設けられた入力バッファ42の状態が、連結パケットを生成中であるか否かを示すフラグである。
【0082】
連結パケットの生成中でない場合、パケット読出制御部44は、受信したパケットのサイズを、予め設定した分割の実行を待機する上限のサイズである連結パケットサイズとの比較を行う(ステップ603)。
【0083】
もし、新たに受信したパケット自体のサイズが、この連結パケットサイズ以上であれば、パケット読出制御部44は、該当パケットをそのまま装置内セルに分割するために、パケットの読出要求を生成する(ステップ604)。パケットの読出要求は、読み出すべきバッファ情報と読出サイズ等を備える。
【0084】
一方、この新たに受信したパケットのサイズが、連結パケットサイズより小さい場合では、バッファ状態管理メモリ47の所定の場所において、その連結パケット生成フラグを“ON”にし(ステップ605)、かつこの受信したパケットのサイズを格納する(ステップ606)。
【0085】
連結パケットの生成中においては(ステップ602でフラグが“ON”の場合)、タイマー部45において、連結パケットの生成を開始してから経過した時間を計測し、パケット読出制御部44は、その経過時間のデータを取得して、予め設定されている規定の時間を超えていないかをチェックする(ステップ607)。
【0086】
規定の時間を既に経過している場合には、パケット読出制御部44は、入力バッファ42に格納されたデータサイズをバッファ状態管理メモリ47から読み出し、このデータサイズを基にパケットの読出要求を生成し、これの連結パケット生成フラグを“OFF”にする(ステップ609)。
【0087】
規定の時間をまだ経過していない場合には、パケット読出制御部44は、入力バッファ42に格納されているデータサイズをバッファ状態管理メモリ47から読み出し、このデータサイズにパケット書込制御部41から通知されたパケットサイズを加算して、予め設定されている連結パケットサイズより大きいかどうかの比較を行う(ステップ608)。
【0088】
連結パケットサイズより大きい場合には、パケット読出制御部44はこの加算後の合計サイズ分のパケット読出要求を生成し(ステップ609)、小さい場合には、パケット読出制御部44はこの合計サイズのデータをバッファ状態管理メモリ47に格納する(ステップ610)。
【0089】
パケット読出制御部44は、以上のステップ607から609の処理により入力バッファ42内に記録済みのパケットに対する読出要求を生成(ステップ609)した場合においては、新たに受信したパケットに対する処理が未処理のままであるため、続いてこの新たに受信したパケットに関して、連結パケットを生成するかどうかの判定処理を行う(ステップ603〜606)。この場合の(ステップ603〜606の)判定処理は、連結パケット生成フラグが“OFF”の場合(ステップ602)の処理と同様であるため省略する。
【0090】
パケット分割部46は、パケット読出部43が読み出したパケットを、固定長のサイズのセルに分割してセルヘッダを付加する。
【0091】
セルヘッダは、図8に示すようにセルの有効/無効を示す情報800と、連結パケットかどうかを示す情報802と、セルがパケットを構成する最終セルかどうかを示す情報801と、送り元の入力インタフェース100を識別するための情報803等を記録する。
【0092】
バッファ管理部50は、装置内セル変換部40から送られる装置内セルを受けて、スケジューラ部400に接続要求17を送出し、スケジューリング結果が返ってくるまでの間、出力インタフェース200毎に設け入力バッファ60に装置内セルを格納する。
【0093】
スケジューラ部400は、各入力インタフェース100からの接続要求を受けて、スイッチ部300の入力ポートと出力ポートの接続決定を行い、スケジューリング結果を各入力インタフェース100に送る。
【0094】
バッファ管理部50は、スケジューラ部400からスケジューリング結果を受けると、対応するセルを入力バッファ60から読み出して、スイッチ部300に送出する。
【0095】
スイッチ部300は、入力インタフェース100から送られた装置内セルを出力先の出力インタフェース200に転送し、出力インタフェース200の装置内セル受信部70がその装置内セルを受ける。
【0096】
図7は、本実施の形態の出力インタフェース200の動作を説明するためのフローチャートである。
【0097】
出力インタフェース200においては、送られた装置内セルを、セル書込制御部71により、セルヘッダ内の送り元インタフェース情報803をもとに、出力バッファ72内の送り元の入力インタフェース100毎に設けられた記録位置に書き込む(ステップ700)。
【0098】
セル書込制御部71は、セルヘッダ内の元のパケット(連結パケット)を構成するセルの最終セルかどうかの情報を監視して(ステップ701)、最終セルを受けた場合にはその旨をセル読出制御部73に通知する。
【0099】
セル読出制御部73は、最終セルを受けた旨の通知を受けると、出力バッファ72から当該パケットを構成する一連のセルを読み出して、パケット組立部74に送る。
【0100】
パケット組立部74は、この一連の各セルからセルヘッダや空き領域を取り除いて連結し、元のパケット(連結パケット)の状態に組み立て直す(ステップ702)。
【0101】
また、セルヘッダのセルタイプ702により連結パケットであると判定された場合には(ステップ703)、この組み立てたパケットをパケット分離部80に送る。
【0102】
パケット分離部80は、連結パケットである場合には、装置内ヘッダにおいて示される各パケットのパケットサイズのデータを基に、その各パケットを分割して取り出し(ステップ704)、次の装置内ヘッダの有効/無効情報を参照し、有効かどうかの判定を行う(ステップ706)。
【0103】
有効である場合は、装置内ヘッダのパケットサイズを基にパケットを取り出し、次の装置内ヘッダが有効であるかどうかを判定する。これらの処理を装置内ヘッダが無効になるまで(つまり、元の全てのパケットを取り出し終えるまで)繰り返す。
【0104】
連結パケットでない場合は(つまり、単一のパケットである場合には)、装置内ヘッダのパケットサイズを基に当該パケットを取り出す(ステップ705)。
【0105】
図10は、本実施の形態によるパケットの分割を説明するための図である。
【0106】
図10においては、様々な長さの(第1から第3までの)3個の可変長パケット1000を、装置内セルに変換する様子を示している。
【0107】
まず、各可変長パケット1000のそれぞれに、装置内ヘッダ1002を付加した後に、順に連結して連結パケット1003を生成する。
【0108】
次に、この連結パケット1003を固定長に分割し、そのそれぞれにセルヘッダ1004を付加することにより装置内セル1006を構成する。
【0109】
固定長の分割の最後において、固定長に満たない場合は、空き領域1005を付加して装置内セル1006を構成する。
【0110】
次に、本発明の第2の実施の形態を詳細に説明する。
【0111】
図11は、本発明の第2の実施の形態の装置内セル変換部40aの構成を示すブロック図であり、図12は、その動作を説明するためのフローチャートである。
【0112】
図11を参照すると、本実施の形態の装置内セル変換部40aは、第1の実施の形態の装置内セル変換部40の構成に加えて、連結パケット生成の過程でパケットの送出の可否を判断するための送出可否検索テーブル48を有する。
【0113】
送出可否検索テーブル48は、入力バッファ42内に格納されているパケットのデータサイズを基に、当該パケットの送出可否を検索するためのテーブルである。
【0114】
ここで、パケットの送出可否の判定は、そのパケットを固定長の装置内セルに分割して変換した場合において、必要とする空き領域が占める比率が、予め設定された一定量以下の場合に送出可と判定する。ここで、空き領域が占める比率を算出するために用いる、全体のサイズは、当該分割により生成された全てのセルのサイズの合計や、又その空き領域を含むセルのみの(固定長の)サイズ等を使用することができ、こうして予め設定された方式を用いて算出する。
【0115】
図13は、本実施の形態の送出可否検索テーブル48に記憶するデータの構成を示す図である。
【0116】
送出可否検索テーブル48は、図13に示すように、格納データサイズに対応して送出可否の指定を示すデータ(可を“1”、不可を“0”により示す等)を記憶するのであり、又このため連結パケットサイズ(つまり、パケットを分割・送信せずに連結を続ける上限サイズ)までの、各サイズに対応する可否を示すのテーブルを備えればよい。
【0117】
本実施の形態の装置内セル変換部40aの動作は、図6のフローチャートに示される第1の実施の形態の動作と、ステップ610以降の動作のみが異なり、他の動作は第1の実施の形態と同様である。このため、パケット読出制御部44における、ステップ602における連結パケット生成フラグが立っているかどうかの判定や、連結パケット生成フラグが立っていない場合の処理等は、第1の実施の形態と同様であるため省略する。
【0118】
ステップ602において連結パケット生成フラグが立っている場合は、まず連結パケットの生成を開始してから経過した時間を計測しているタイマー部45から経過時間を取得して、予め設定されている規定の時間を超えていないかのチェックを行う(ステップ607)。
【0119】
規定の時間経過している場合、バッファ状態管理メモリ47から読み出されたバッファ格納データサイズをもとにパケットの読出要求を生成し、連結パケット生成フラグをOFFにする(ステップ609)。
【0120】
規定の時間経過していない場合、バッファ状態管理メモリ47から読み出したバッファに格納されているデータサイズとパケット書込制御部41から通知されたパケットサイズを加算して合計サイズを算出し、この合計サイズが予め設定されている連結を続ける上限サイズ(連結パケットサイズ)よりも大きいかどうかの比較を行う(ステップ608)。
【0121】
大きい場合は、バッファ状態管理メモリ47から読み出されたバッファ格納データサイズ分のパケット読出要求を生成し、その全パケットの送出を指示する(ステップ609)。
【0122】
小さい場合は加算された合計サイズをバッファ状態管理メモリ47に格納する(ステップ610)。ここで、この合計サイズの値を基に、当該出力先にパケットを送出する場合に(つまり、全パケットを連結した後に固定サイズに分割した場合に)必要とする空き領域が全体に占める割合が決定され、この空き領域の割合が定められた値以下の場合においては、パケットの送出を実行する。
【0123】
このパケットの送出可否の判定は、送出可否検索テーブル48を参照することにより行う。送出可否検索テーブル48においては、パケットの合計サイズの各値に対応して、送出を実行するか否かの判定を記録している。つまり、送出可否検索テーブル48には、各合計サイズの場合における上記空き領域の割合に基づき、空き領域の割合が(定められた割合よりも)少ない場合に送出可と判定した判定結果を、各合計サイズに対応させて予め記録しているのである。
【0124】
これにより、送出可否検索テーブルを参照し、パケットの合計サイズに基づき送出可否の判定結果を検索することにより(ステップ1200)、送出可否の判定を得る。
【0125】
送出可である場合は、前記加算されたサイズのパケット読出要求を生成し、バッファ状態管理メモリ47内の連結パケット生成フラグをOFFにする(ステップ1001)。また、送出不可の場合には、送出を実行せずに終了する。
【0126】
以上説明した本実施の形態により、装置内セルに分割した際の空き領域の割合がある設定値以下になる場合には、規定の連結パケットサイズに満たない状態においても送出を実行するため、装置内セルにおける空き領域の占める割合をより低くすることができ、更にパケットの送信するまでの時間を短縮することができる。
【0127】
また、本実施の形態の上記の例では、各合計サイズに対応する送出可否の判定結果を記録した送出可否検索テーブル48を用いているが、送出可否の判定はこうしたテーブルを参照する方式の他にも、ステップ610におけるパケットの合計サイズをバッファ状態管理メモリに格納する時に、当該合計サイズの値を基に必要とする空き領域の全体に占める割合の算出を実行し、空き領域の割合が定められた値以下の場合において送出する方式も可能である。
【0128】
しかし、送出可否検索テーブル48を参照する方式においては、空き領域の占める割合を算出するための算術演算を実行する必要がなく、直接判定結果をパケットの合計サイズの値に対応して送出可否検索テーブル48から得られるため、高速にかつ常に安定したスピードで送出可否を判定し処理することができる。
【0129】
次に本発明の第3の実施の形態について詳細に説明する。
【0130】
本発明の第3の実施の形態は、入力インタフェース100bの装置内セル変換部40bにおいて、パケットもしくは連結パケット単位に装置内セルに分割することは行わず、受信したパケットを意識することなく装置内セルに分割し、スイッチ部300から装置内セルを受けた出力インタフェース200bにおいて、パケット単位に付加される装置内ヘッダのポインタ情報を参照して、次のパケットの先頭を検出する機構を設けることにより、パケット及び連結パケット単位での装置内セル分割処理を不要とすることを特徴とする。
【0131】
図14は、本実施の形態の装置内セル変換部40bの構成を示すブロック図である。
【0132】
図14を参照すると、本実施の形態の装置内セル変換部40bは、第1の実施の形態におけるパケット読出制御部44とパケット読出部43とバッファ状態管理メモリ47を備える必要がなく、又代わりにバッファの蓄積状態をセル読出部49に通知するためのバッファ状態信号1400の送出を行っている。
【0133】
図15は、本実施の形態の出力インタフェース200bの構成を示すブロック図である。
【0134】
出力インタフェース200bは、第1の実施の形態におけるセル書込制御部71の構成が、各入力インタフェース100から転送される一連のセルがエラーの状態にあるかを判定するエラー状態検出部75と装置内ヘッダをもとにパケットの区切りを検出するパケット抽出部76とセル廃棄やビットエラーなどにより装置内ヘッダを検出できない場合に、当該データから装置内ヘッダを検出する装置内ヘッダ検出部77と、パケットを検出するために必要な情報を格納しておくためのパケット検出メモリ78を新たに備えている。また、第1の実施の形態おけるパケット分離部80を備える必要がない。
【0135】
ここで、本実施の形態のパケット交換機1bにおいて、入力インタフェース100bで受信したパケットを出力インタフェース200bに転送する処理を説明する。また、パケットを受信して装置内セル変換部40bに転送するまでの処理は、第1の実施の形態と同様であるため省略する。
【0136】
パケット書込制御部41は、アドレス解決部20が出力インタフェース200bを決定したパケットを受け、その出力インタフェース200b毎に設けられた入力バッファ42の該当する出力インタフェース200b宛ての入力バッファ42に書き込む。そして、パケット書込制御部41は、その出力インタフェース200b宛てのパケットを受けたことをセル読出部49に通知する。
【0137】
セル読出部49は、入力バッファ42からのバッファ状態信号1400で入力バッファ42内に装置内セルの1個分のサイズのデータが格納されているかを検出して、格納されている場合は装置内セルの1個分のサイズのデータを読み出してセルヘッダを付加する。
【0138】
タイマー部45は、バッファからのデータの読み出しの終了後の経過時間を出力先インタフェース毎に計測しており、ある一定時間経過した場合にはセル読出部49に通知する。
【0139】
通知を受けたセル読出部49は、通知を受けたバッファに格納されているデータを読み出し、装置内セルのサイズに足りない分は空き領域として送出し、最終セルを示すセルヘッダを付加する。
【0140】
バッファ管理部50からスイッチ部300を経由して出力インタフェース200bに転送する動作に関しては、第1の実施の形態と同様であるため省略する。
【0141】
まず、出力インタフェース200bの処理に関して、正常に装置内ヘッダを検出できた場合の処理を説明する。図17は、本実施の形態の出力インタフェース200bの動作を説明するためのフローチャートである。
【0142】
まず、エラー状態検出部75において、スイッチ部300により転送されたセルのセルヘッダ内に格納されている送出元インタフェース情報を検出し、送出元インタフェース情報をもとにパケット検出メモリ78を読み出し、エラー状態にあるかどうかの判定を行う(ステップ1700)。
【0143】
図16は、本実施の形態のパケット検出メモリ78内に記憶するデータの構成の一例を示す図である。
【0144】
図16の例のパケット検出メモリ78は、送出元の入力インタフェース100毎にセルの廃棄やビットエラーにより装置内ヘッダを検出できないエラー状態を示すビット1600と、装置内ヘッダに格納されている次装置内ヘッダへのポインタ情報1601と、これまでに送られたデータサイズ1602を格納している。次装置内ヘッダへのポインタ情報とは、例えばパケットサイズである。
【0145】
装置内セルはパケット抽出部76に渡され、セルヘッダを取り出し先頭セルかどうかの判定を行う(ステップ1701、1702)。先頭セルの判定は、例えば、各入力インタフェースからの最終セルを受けたその次に送られた装置内セルかどうかで判定可能である。
【0146】
先頭セルの場合、セルの先頭部分に装置内ヘッダがあるためそれを取り出す(ステップ1703)。そして、取り出した装置内ヘッダが正しいかどうかの判定を行う(ステップ1704)。
【0147】
装置内ヘッダに格納されている次装置内ヘッダへのポインタを参照して(ステップ1705)、送られた装置内セル内に次装置内ヘッダが存在するかを判定する(ステップ1706)。
【0148】
存在しない場合は、次装置内ヘッダへのポインタ情報とデータサイズをパケット検出メモリ78に格納する(ステップ1709)。
【0149】
存在する場合は、セル内のパケットに対する読出要求を生成して次装置内ヘッダへのポインタを参照して(ステップ1707)、装置内ヘッダを取り出す処理を再び行う(ステップ1703)。
【0150】
これら一連の処理を、装置内セルに装置内ヘッダが存在しなくなるまで繰り返す。
【0151】
先頭セルでない場合、パケット抽出部76はパケット検出メモリ78から次装置内ヘッダへのポインタ情報とデータサイズを読み出す(ステップ1710)。
【0152】
送られた装置内セルが最終セルかどうかの判定を行い(ステップ1711)、最終セルの場合は、パケットの読出要求を生成する(ステップ1716)。
【0153】
最終セルでない場合、パケット検出メモリから読み出したポインタ情報とデータサイズをもとにセル内に装置内ヘッダが存在するかどうかを判定する(ステップ1712)。
【0154】
この判定は、例えば次装置内ヘッダへのポインタ情報がパケットサイズの場合、パケット検出メモリ78から読み出した総データ量と今回送られた装置内セルのサイズを加算して、ポインタ情報と比較することで可能である。
【0155】
次装置内ヘッダが存在しない場合は、次装置内ヘッダへのポインタ情報と、今回送られた装置内セルのサイズをこれまでに記録された装置ないセルのサイズの累計に加算したデータサイズを、パケット検出メモリに格納する(ステップ1709)。
【0156】
装置内ヘッダがセル内に存在する場合、装置内ヘッダを取り出して正しいかどうかを判定する(ステップ1713、1714)。パケットの読出要求を生成して次装置内ヘッダへのポインタを参照し(ステップ1715)、以降の装置内セル内に次装置内ヘッダが存在するかどうかの判定を行う(ステップ1712)。
【0157】
これら一連の処理を、装置内セルに装置内ヘッダが存在しなくなるまで繰り返す。
【0158】
送出元の入力インタフェース100毎に設けられたセル格納出力バッファ72に書き込まれたパケットは、読出制御部73によりパケット読出要求をもとに読み出される。
【0159】
次に、出力インタフェース200bの処理に関して、正常に装置内ヘッダを検出できなかった場合の処理について説明する。図18は、本実施の形態の出力インタフェース200bにおけるエラー処理の動作を説明するためのフローチャートである。
【0160】
正常に装置内ヘッダを検出できたかどうかの判定は、入力インタフェース100bにおいて装置内ヘッダの有効/無効ビット以外に識別するための特定パターンを挿入することにより、出力インタフェース200bの側で比較することで行うことが可能である。
【0161】
エラー状態である場合は、パケット抽出部76での処理は行われず、装置内ヘッダ検出部77で装置内ヘッダを検出する処理が行われる。
【0162】
まず、それまでに受信したパケットをエラーパケットとして読出要求を生成し(ステップ1800)、送られた装置内セルの中に装置内ヘッダが存在するかを判定する(ステップ1801)。
【0163】
エラーパケットに対する読出要求を受けた読出制御部73は、セル格納出力バッファ72からパケットを読み出して廃棄を行う。
【0164】
装置内ヘッダが存在しない場合は、送られた装置内セルをセル格納バッファに書き込むことなく装置内セルに対する処理を終了する。
【0165】
装置内ヘッダが存在する場合は、パケット検出メモリ78に格納されているエラー状態を正常にして(ステップ1802)、装置内ヘッダから次装置内ヘッダへのポインタ情報を取り出す(ステップ1803)。
【0166】
前記ポインタ情報をもとに、以降のセル内に更に次の装置内ヘッダが存在するかどうかを検索する(ステップ1804)。
【0167】
以降のセル内に装置内ヘッダが存在するかどうかの判定は、例えば次装置内ヘッダへのポインタ情報がパケットサイズの場合、ポインタ情報とセルサイズを比較することで可能である。
【0168】
次装置内ヘッダが存在しなければ次パケットへのポインタ情報とデータサイズをパケット検出メモリ78に格納する(ステップ1807)。
【0169】
更に次の装置内セルヘッダが存在する場合、セル内にパケットが含まれていることになるためパケットの読出要求を生成する(ステップ1805)。
【0170】
次装置内ヘッダが正しいかどうかを特定パターンにより判定し(ステップ1806)、正しい場合は次パケットへのポインタ情報の取り出し、間違っている場合は装置内ヘッダの検出を再び行う。
【0171】
以上説明した本実施の形態のパケット交換機1bでは、入力インタフェース100bにおいて、パケットを意識せずにセルに分割し、出力インタフェース200bにおいて装置内ヘッダに埋め込まれた次装置内ヘッダへのポインタ情報をもとにパケットを識別するための機構を設けることにより、装置内セルに分割する場合に付加される空き領域を極力抑え、スイッチ部の転送帯域をより有効に利用することができる。
【0172】
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。
【0173】
【発明の効果】
以上説明したように本発明のパケット交換機によれば、以下のような効果が達成される。
【0174】
第1に、可変長パケット等による通信データを、装置内部において固定長の装置内セルに分割し変換した状態で送受するパケット交換機において、複数の可変長パケットを順次まとめて1つに連結した後に、固定長の装置内セルに分割し変換することにより、装置内セル内の空き領域の占める割合を大幅にかつ効果的に少なくすることが可能となり、効率的な通信が実現する。
【0175】
第2に、本発明の第2の実施の形態によれば、送信待ちのデータに対し、必ずしも一定量(連結パケットサイズ)の蓄積を待機せずに、もしこれを分割して固定長の装置内セルに変換した場合に必要とする空き領域の占める割合が、所定の設定値よりも少ない場合には直ちに装置内セルに変換し送信を行うことにより、空き領域の占める割合の更なる削減と、通信データの送信までの待ち時間の短縮を同時に実現することができる。
【0176】
第3に、本発明の第3の実施の形態によれば、送信待ちのデータおいて、1つの装置内セルへの変換の可能な量のデータか蓄積された場合に、直ちに装置内セルを生成し送信するために、通信データの送信までの待ち時間を最小限に短縮すると共に、かつ装置内セルにおける空き領域の占める割合もより低く抑えることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態によるパケット交換機の構成を示すブロック図である。
【図2】本発明の第1の実施の形態の入力インタフェースの構成を示すブロック図である。
【図3】本発明の第1の実施の形態の出力インタフェースの構成を示すブロック図である。
【図4】本発明の第1の実施の形態の装置内セル変換部の構成を示すブロック図である。
【図5】本発明の第1の実施の形態の装置内セル受信部の構成を示すブロック図である。
【図6】本発明の第1の実施の形態の装置内セル変換部の動作を説明するためのフローチャートである。
【図7】本発明の第1の実施の形態の出力インタフェースの動作を説明するためのフローチャートである。
【図8】本発明の第1の実施の形態のセルヘッダの構成を示す図である。
【図9】本発明の第1の実施の形態のバッファ状態管理メモリ内に記憶するデータの構成を示す図である。
【図10】本発明の第1の実施の形態によるパケットの分割を説明するための図である。
【図11】本発明の第2の実施の形態の装置内セル変換部の構成を示すブロック図である。
【図12】本発明の第2の実施の形態の装置内セル変換部の動作を説明するためのフローチャートである。
【図13】本発明の第2の実施の形態の送出可否検索テーブルに記憶するデータの構成を示す図である。
【図14】本発明の第3の実施の形態の装置内セル変換部の構成を示すブロック図である。
【図15】本発明の第3の実施の形態の出力インタフェースの構成を示すブロック図である。
【図16】本発明の第3の実施の形態のパケット検出メモリ内に記憶するデータの構成を示す図である。
【図17】本発明の第3の実施の形態の出力インタフェースの動作を説明するためのフローチャートである。
【図18】本発明の第3の実施の形態の出力インタフェースにおけるエラー処理の動作を説明するためのフローチャートである。
【図19】従来のパケット交換機の構成を示すブロック図である。
【図20】従来のパケット交換機によるパケットの分割を説明するための図である。
【符号の説明】
1、1a、1b パケット交換機
100 入力インタフェース
10 可変長パケット抽出部
20 アドレス解決部
30 経路探索テーブル
40 装置内セル変換部
41 パケット書込制御部
42 バッファ
43 パケット読出部
44 パケット読出制御部
45 タイマー部
46 パケット分割部
47 バッファ管理メモリ
48 送出可否検索テーブル
49 セル読出部
50 バッファ管理部
60 入力バッファ
200 出力インタフェース
70 装置内セル受信部
71 セル書込制御部
72 バッファ
73 セル読出制御部
74 パケット組立部
75 エラー状態検出部
76 パケット抽出部
77 装置内ヘッダ検出部
78 パケット検出メモリ
79 セル格納バッファ
80 パケット分離部
90 セル格納バッファ
300 スイッチ部
400 スケジューラ部

Claims (14)

  1. パケットを受信する入力インタフェースと、受信した前記パケットを送信する出力インタフェースを備え、前記入力インタフェースに受信したパケットを一定の長さの固定長セルに変換して前記出力インタフェースに送るパケット交換機において、
    各前記入力インタフェースは、
    受信したパケットを必要に応じて順次連結し、更に一定の長さの固定長に分割することにより前記固定長セルに変換を行う固定長セル変換手段を備え、
    各前記出力インタフェースは、
    前記入力インタフェースから送られた前記固定長セルを連結することにより、各前記パケットを連結した状態に戻すパケット組立手段と、
    この連結した状態の各前記パケットをそれぞれに分離することにより、元の受信した各前記パケットの状態に復元するパケット分離手段を備え、
    各前記入力インタフェースの前記固定長セル変換手段が、
    前記固定長セルにおける空き領域の占める割合の設定値を備え、
    受信したパケットをその送り先の各前記出力インタフェース毎に記録するバッファを備え、
    各前記出力インタフェースに対する前記バッファに記録したパケットを、もし前記固定長セルに変換した場合に必要とする空き領域の占める割合が前記設定値以下である場合に、記録されたパケットを前記固定長セルに変換し、当該出力インタフェースに送る手段を備えることを特徴とするパケット交換機
  2. 前記固定長セル変換手段は、
    元の受信した各前記パケットの復元に用いるための、各前記固定長セル相互の前後関係や、連結した各前記パケットそれぞれのデータ長の情報を示すヘッダを付加して、前記固定長セルを作成し、
    前記出力インタフェースは、
    送られた前記固定長セルからその前記ヘッダが示す情報を参照し、
    前記パケット組立手段は、
    各前記固定長セルをその順番に従い連結し、
    前記パケット分離手段は、
    連結された各前記パケットのそれぞれのデータ長に従いこれを分割することにより、各前記パケットを復元することを特徴とする請求項1に記載のパケット交換機
  3. 各前記入力インタフェースの前記固定長セル変換手段が、
    パケットの連結を続ける上限のサイズを示す連結パケットサイズの設定を備え、
    各前記出力インタフェースに対する前記バッファに記録したパケットのデータサイズを前記連結パケットサイズと比較し、もし前記連結パケットサイズを超過した場合で、かつ前記固定長セルに変換した場合に必要とする空き領域の占める割合が前記設定値以下である場合に、記録された前記パケットを前記固定長セルに変換し、当該出力インタフェースに送る手段を備えることを特徴とする請求項1又は請求項2に記載のパケット交換機
  4. 各前記入力インタフェースの前記固定長セル変換手段が、
    パケットを前記固定長セルに変換した場合に必要とする空き領域の占める割合に基づく、当該パケットを前記固定長セルに変換するか否かの判定を、パケットのデータサイズと対応させて記録した送出可否検索テーブルを備え、
    各前記出力インタフェースに対する前記バッファに記録したパケットの合計サイズを基に、前記送出可否検索テーブルを検索し、前記送出可否検索テーブルに記録された可否の判断に従い前記固定長セルに変換を実行する手段を備えることを特徴とする請求項1に記載のパケット交換機
  5. 各前記入力インタフェースの前記固定長セル変換手段が、
    各前記出力インタフェース毎に、未送のまま前記バッファに記録されているパケットの受信後の経過時間を計測するタイマーと、
    未送のまま前記バッファにパケットを待機させる上限時間の設定と、
    前記タイマーが、前記上限時間を超過してパケットが記録されていることを検出した場合に、当該出力インタフェースに送る未送のパケットを、前記固定長セルに変換して送出する手段を備えることを特徴とする請求項1から請求項4のいずれか一つに記載のパケット交換機
  6. パケットを受信する入力インタフェースから受信した前記パケットを送信する出力インタフェースへの通信データの交換を、受信したパケットを一定の長さの固定長セルに変換して送るパケット交換方法において、
    各前記入力インタフェースが受信したパケットを、必要に応じて順次連結し、更に一定の長さの固定長に分割することにより前記固定長セルに変換を行う固定長セル変換ステップと、
    各前記出力インタフェースにおいて、前記入力インタフェースから送られた前記固定長セルを連結することにより、各前記パケットを連結した状態に戻すパケット組立ステップと、
    この連結した状態の各前記パケットをそれぞれに分離することにより、元の受信した各前記パケットの状態に復元するパケット分離ステップを有し、
    前記固定長セル変換ステップが、
    受信したパケットをその送り先の各前記出力インタフェース毎にバッファに記録するステップと、
    各前記出力インタフェースに対する前記バッファに記録したパケットを、もし前記固定長セルに変換した場合に必要とする空き領域の占める割合が、空き領域の占める割合の設定値以下を成す場合には、前記記録されたパケットを前記固定長セルに変換し、当該出力インタフェースに送るステップを含むことを特徴とするパケット交換方法。
  7. 元の受信した各前記パケットの復元に用いるための、各前記固定長セル相互の前後関係や、連結した各前記パケットそれぞれのデータ長の情報を示すヘッダを付加して前記固定長セルを作成するステップを備え、
    前記出力インタフェースにおいて、前記入力インタフェースから送られた各前記固定長セルにおける前記ヘッダが示す情報を参照するステップを備え、
    前記パケット組立ステップは、
    各前記固定長セルをその順番に従い連結するステップを備え、
    前記パケット分離ステップは、
    連結された各前記パケットのそれぞれのデータ長に従いこれを分割することにより、各前記パケットを復元するステップを備えることを特徴とする請求項6に記載のパケット交換方法。
  8. 前記固定長セル変換ステップが、
    各前記出力インタフェースに対する前記バッファに記録したパケットのデータサイズを、パケットの連結を続ける上限のサイズを示す連結パケットサイズと比較し、前記連結パケットサイズを超過した場合で、かつ前記固定長セルに変換した場合に必要とする空き領域の占める割合が前記設定値以下である場合に、記録された前記パケットを前記固定長セルに変換し、当該出力インタフェースに送るステップを含むことを特徴とする請求項6又は請求項7に記載のパケット交換方法。
  9. 前記固定長セル変換ステップが、
    パケットを前記固定長セルに変換した場合に必要とする空き領域の占める割合に基づく、当該パケットを前記固定長セルに変換するか否かの判定を、パケットのデータサイズと対応させて記録した送出可否検索テーブルを、参照するステップと、
    各前記出力インタフェースに対する前記バッファに記録したパケットの合計サイズを基に、前記送出可否検索テーブルを検索し、前記送出可否検索テーブルに記録された可否の判断に従い前記固定長セルに変換を実行するステップを含むことを特徴とする請求項6に記載のパケット交換方法。
  10. 前記固定長セル変換ステップが、
    各前記出力インタフェース毎の、未送のまま前記バッファに記録されているパケットの受信後の経過時間が、未送のまま前記バッファにパケットを待機させる設定された上限時間を超過していることを検出した場合に、当該出力インタフェースを送り先とする未送のパケットを、前記固定長セルに変換して送出するステップを含むことを特徴とする請求項6から請求項9のいずれか一つに記載のパケット交換方法。
  11. パケットを受信する入力インタフェースと、受信した前記パケットを送信する出力インタフェースを備え、前記入力インタフェースに受信したパケットを一定の長さの固定長セルに変換して前記出力インタフェースに送るパケット交換機において、
    各前記入力インタフェースは、
    受信したパケットを有効か無効を示す情報とパケットサイズを情報を含む装置内ヘッダを付加してその送り先の各前記出力インタフェース毎にバッファに記録する手段と、
    前記バッファに記憶されたパケットからなるデータを、一定の長さの固定長毎に読み出し、セルヘッダを付加して固定長セルに変換する固定長セル変換手段を備え、
    各前記出力インタフェースは、
    前記入力インタフェースから送られた前記固定長セル内の前記装置内ヘッダを検出することにより、前記固定長セル内のパケットを抽出するパケット抽出手段を備えることを特徴とするパケット交換機。
  12. 前記パケット抽出手段は、
    前記固定長セルの前記装置内ヘッダに格納される次の装置内ヘッダへのポインタを参照して、前記固定長セル内に前記ポインタで示される次の装置内ヘッダが存在するかどうかを判定し、
    存在しない場合、前記次の装置内ヘッダへのポインタを、パケット検出メモリに格納し、
    存在する場合、前記固定長セル内に次の前記装置内ヘッダが存在しなくなるまで、前記パケットの抽出を繰り返すことを特徴とする請求項11に記載のパケット交換機。
  13. 前記パケット抽出手段は、
    前記固定長セルが先頭のセルでない場合、前記パケット検出メモリに格納された前記次の装置内ヘッダへのポインタを参照して、前記固定長セル内の前記装置内ヘッダを取り出すことを特徴とする請求項12に記載のパケット交換機。
  14. 前記固定長セル内の前記装置内ヘッダを正常に検出できない場合、当該固定長セルに対する装置内ヘッダの検出を行う装置内ヘッダ検出手段を備え、
    前記装置内ヘッダ検出手段は、
    当該固定長セル内に前記装置内ヘッダが存在しない場合、当該固定長セルに対する処理を終了し、
    存在する場合、前記装置内ヘッダに含まれる次の装置内ヘッダへのポインタで示される次の装置内ヘッダが存在するかを判定し、
    次の装置内ヘッダが存在する場合、先の装置内ヘッダに対応するパケットの読出を要求 し、次の装置内ヘッダが存在しない場合、前記次の装置内ヘッダへのポインタを前記パケット検出メモリに格納することを特徴とする請求項12又は請求項13に記載のパケット交換機。
JP2000144300A 2000-05-17 2000-05-17 パケット交換機、パケット交換方法 Expired - Fee Related JP3584853B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000144300A JP3584853B2 (ja) 2000-05-17 2000-05-17 パケット交換機、パケット交換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000144300A JP3584853B2 (ja) 2000-05-17 2000-05-17 パケット交換機、パケット交換方法

Publications (2)

Publication Number Publication Date
JP2001326683A JP2001326683A (ja) 2001-11-22
JP3584853B2 true JP3584853B2 (ja) 2004-11-04

Family

ID=18650977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000144300A Expired - Fee Related JP3584853B2 (ja) 2000-05-17 2000-05-17 パケット交換機、パケット交換方法

Country Status (1)

Country Link
JP (1) JP3584853B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6804692B2 (en) 2001-12-21 2004-10-12 Agere Systems, Inc. Method and apparatus for reassembly of data blocks within a network processor
JP2006295567A (ja) * 2005-04-11 2006-10-26 Toshiba Corp パケットストリーム受信装置
JP2007243446A (ja) * 2006-03-07 2007-09-20 Kddi R & D Laboratories Inc 無線通信システムおよび無線装置
JP5509733B2 (ja) * 2009-08-28 2014-06-04 富士通株式会社 セグメントデータ処理回路、インタフェースユニット、フレーム伝送装置及びセグメントデータの分配方法
JP6514570B2 (ja) * 2015-05-29 2019-05-15 アンリツネットワークス株式会社 パケット転送システム、中継装置、パケット転送方法及びプログラム

Also Published As

Publication number Publication date
JP2001326683A (ja) 2001-11-22

Similar Documents

Publication Publication Date Title
JP3490286B2 (ja) ルータ装置及びフレーム転送方法
JP2848784B2 (ja) パケット交換方式
EP0664629A2 (en) Network bridge
KR100261383B1 (ko) 비동기식 전송모드 셀들을 비동기식 전송 모드 링크를 통하여 전송하기 위한 방법 및 장치
JP3584853B2 (ja) パケット交換機、パケット交換方法
RU2142646C1 (ru) Система для мультиплексирования/демультиплексирования данных межпроцессорного обмена в режиме асинхронной передачи при обмене в режиме асинхронной передачи
JPS61140253A (ja) パケツト転送方式
US7415025B1 (en) Method and apparatus for clearing a large number of connections in an ATM network
JPH05260060A (ja) 通信装置
JPH11234306A (ja) データ転送装置
JPH04100343A (ja) Atmリンクシステム
JP2000083062A (ja) パケット転送方法およびパケット処理装置
JP3103120B2 (ja) セル変換装置
JP3896829B2 (ja) ネットワーク中継装置
JP2765985B2 (ja) Atm網のバースト情報転送方式
JP3663205B2 (ja) コネクションレスデータサービスにおける加入者情報の処理方式
JP2008228069A (ja) 中継補助装置
JPH05130131A (ja) Atm網におけるコネクシヨンレス通信方式
JP4292687B2 (ja) 通信装置及びネットワーク
JP3182292B2 (ja) 通信ネットワークシステム
JP2785147B2 (ja) 経路毎規制方式
JP3568681B2 (ja) セル交換システム及びセルデータ保証方式
JP2950254B2 (ja) Atm通信装置
JPH0758972B2 (ja) 網間接続装置
JPH05207041A (ja) 通信処理装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040408

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040607

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: 20040713

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040726

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: 20070813

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20080813

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080813

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090813

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090813

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100813

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110813

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110813

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120813

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130813

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees