JP2005204173A - データ変換装置およびデータ変換方法 - Google Patents

データ変換装置およびデータ変換方法 Download PDF

Info

Publication number
JP2005204173A
JP2005204173A JP2004009685A JP2004009685A JP2005204173A JP 2005204173 A JP2005204173 A JP 2005204173A JP 2004009685 A JP2004009685 A JP 2004009685A JP 2004009685 A JP2004009685 A JP 2004009685A JP 2005204173 A JP2005204173 A JP 2005204173A
Authority
JP
Japan
Prior art keywords
data
unit
header
body part
check code
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.)
Withdrawn
Application number
JP2004009685A
Other languages
English (en)
Inventor
Yukihiro Oda
幸弘 小田
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 Electronics Corp
Original Assignee
NEC Electronics 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 Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2004009685A priority Critical patent/JP2005204173A/ja
Publication of JP2005204173A publication Critical patent/JP2005204173A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】
プロトコル変換に伴うデータ変換に関わる遅延時間を小さくする。
【解決手段】
ATM受信部20は、ATMセルを順次入力し、DMA制御回路22は、ATMセル中のユーザ情報を順次バッファメモリ23に書き込む。同時にATMセルのユーザ情報部分のチェックサムをチェックサム演算回路25で計算し、計算結果を演算結果保持回路26で保持する。ヘッダ合成回路27は、保持された計算結果に基づいてUDPパケットのヘッダ部を作成してUDP送信部30から出力する。それに続いて、DMA制御回路28は、バッファメモリ23に蓄えられているユーザ情報を読み出し、UDPパケットのデータ(ボディ部)として割り当ててUDP送信部30から出力する。
【選択図】
図3

Description

本発明は、データ変換装置およびデータ変換方法に関し、特にボディ部に対する検査符号の演算結果に関連する情報を少なくとも含むヘッダ部と、ヘッダ部に続くボディ部とからなるデータユニットを出力するデータ変換装置およびデータ変換方法に関する。
インターネットに代表されるようなネットワークシステムにおいて、各種のメディアデータが扱われるようになり、種々のプロトコルを介してデータの送受信がなされている。このようなネットワークシステムでは、プロトコルの異なるシステム間を接続するために異種プロトコル間のプロトコル変換などのようなデータ変換が求められる。
また、音声データやビデオデータのようにリアルタイム性が求められるアプリケーションにおいても、その例外ではなく、これらのデータをパケット化して、各種のプロトコルによりパケットの送受信がなされており、異種プロトコル間のデータ変換、より具体的にはプロトコル変換が行われている。このようなプロトコル変換では、主としてデータユニット(パケット)を構成するヘッダ部の変換が行われ、また必要に応じてデータユニットを構成するボディ部(ペイロード)の分割・合成も行われる。
一方、このようなネットワークシステムでは、より大量のデータを扱うようになってきており、データ配送における高速な処理が要求されている。例えば、特許文献1には、データ配送におけるパケット生成時のチェックサムの計算の高速化およびパケットの高速化を可能とするシステムが開示されている。このシステムは、データをパケット化して配送する際に各パケットにそのパケットに対する検査符号を書き込むデータ配送システムである。クライアントからデータ配送要求を受けた際、このデータに対してクライアントに応じて定まるパケット転送単位ごとに計算された検査符号が一時記憶部に記憶されているか否かを調べ、記憶されている場合には、その記憶されている検査符号を利用して各パケットに書き込むべき検査符号を計算するものである。
また、特許文献2には、プロトコルレイヤ毎の処理オーバヘッド削減、チェックサムのフル計算の排除により処理を最小限とし、高速・大容量なストリーム配信装置が開示されている。この装置は、受信したパケットのヘッダ情報からパケットが運ぶコンテンツを識別し、受信したパケットヘッダのチェックサム値の計算に必要なヘッダ内のプロトコルデータを一時退避させ、配信情報を元に受信パケットの複製とヘッダの書き換えを行い、一時退避したチェックサム値と書き換え後のヘッダ情報部分の差分を元に再計算した結果を新たなチェックサム値として送信パケットに設定するものである。
さらに、関連する技術として、セルバッファメモリの故障検出方法が知られている。例えば、特許文献3の故障検出方法は、ATM伝送装置に搭載されているセルバッファメモリの故障を検出するものである。所定の固定バイト長からなる情報セルに対してチェックサムを求めて得た第1チェックサムデータを情報セルに付加したものをセルバッファに書き込む。そして、このセルバッファに書き込まれている情報セルおよび第1チェックサムデータを夫々読出し、読み出された情報セルに対してチェックサムを求めて得た第2チェックサムデータと第1チェックサムデータとが不一致である場合に故障を示す信号を発生させる。
特開2000−253054号公報 (図4) 特開2002−64487号公報 (図2) 特開2001−77816号公報 (図3)
ところで、異種プロトコル間におけるデータ変換(プロトコル変換)では、大量のデータを高速に処理するため、処理に伴う遅延時間を所定の時間よりも小さくすることが必要とされる場合がある。例えば、音声データやビデオデータのようなリアルタイム性が求められるアプリケーションでは、処理遅延時間が問題となる。特に電話などの音声の会話型サービスやこれに付随するビデオデータのように処理遅延が大きいとサービス品質が極端に低下するものでは、プロトコル変換に伴う処理遅延を極力小さくすることが望まれる。さらに、出力されるデータユニットのヘッダ部に、ヘッダ部に続くボディ部のチェックサム等の検査符号に係る情報が含まれるようなプロトコルへの変換では、検査符号の演算が処理遅延に影響し、これを低減する必要がある。
しかしながら、従来の知られたシステムでは、異種プロトコル間のデータ変換における処理時間を小さくするような目的では構成されていない。すなわち、特許文献1では、クライアントからデータ配送要求を受けた際に、計算された検査符号が記憶されているか否かを調べるものであって、受信パケットの検査符号をどの単位で計算するか、どのタイミングで計算するか等は、開示されておらず、処理時間を小さくすること自体が考慮されていない。
一方、特許文献2では、受信パケットから送信パケットへの変換処理において、処理をヘッダの書き換えに限定し、チェックサムの再計算において通信前の差分計算値を用いることで計算量を削減するようにしている。すなわち、受信パケットから送信パケットを生成する過程の処理遅延時間を小さくするための技術については何ら触れられていない。また、処理をヘッダの書き換えに限定しているが、異種プロトコル間においては、受信パケットのヘッダ中にペイロードに対してチェックサム計算結果が含まれているとは限らない。
また、特許文献3の方法は、セルバッファメモリの故障を検出するために、受信する53バイトのATMセルそれ自体のチェックサムを求めてバッファメモリに書込んでおり、チェックサムは、プロトコル変換とは無関係のものである。
したがって、従来の開示された技術では、データ変換(プロトコル変換)に伴う処理遅延を極力小さくすることが難しかった。
本発明の目的は、ボディ部の検査符号に関連する情報を少なくとも含むヘッダ部と、ヘッダ部に続くボディ部とからなるデータユニットを出力するデータ変換において、データ変換に関わる処理時間の小さな装置および方法を提供することにある。
前記目的を達成するために、本発明に係るデータ変換装置は、第1のアスペクトによれば、第2のデータユニットは、ヘッダ部とヘッダ部に続くボディ部とから構成され、ヘッダ部はボディ部に対する検査符号の演算結果に基づく情報を少なくとも含み、第2のデータユニットを出力するデータ変換装置である。このデータ変換装置は、入力される少なくとも1以上の第1のデータユニットからボディ部に対応するボディ部データを取り出してバッファ部に書き込む書込部と、バッファ部と、を備える。また、バッファ部への書き込みと並行して、ボディ部データに対する検査符号を演算する検査符号演算部と、検査符号演算部の演算結果を保持する演算結果保持部と、演算結果保持部に保持された演算結果に基づいてヘッダ部を作成するヘッダ合成部と、を備える。さらに、ヘッダ合成部で作成されるヘッダ部と、バッファ部から読み出されるボディ部データとを、それぞれ第2のデータユニットのヘッダ部とボディ部とに割り当てて出力するデータ出力部と、を備える。
また、本発明に係るデータ変換装置は、第2のアスペクトによれば、入力される少なくとも1以上の第1のデータユニットを順次受信する受信部と、受信した第1のデータユニットから、送信される第2のデータユニットのボディ部に対応するボディ部データを取り出してバッファ部に書き込む書込部と、バッファ部と、バッファ部への書き込みと並行して、ボディ部データに対する検査符号を演算する検査符号演算部と、検査符号演算部の演算結果を保持する演算結果保持部と、を備える。また、第2のデータユニットのヘッダ部を、演算結果保持部に保持された演算結果に基づいて作成するヘッダ合成部と、ボディ部データをバッファ部から読み出す読出部と、ヘッダ合成部で作成されたヘッダ部を送信し、読出部から出力されるボディ部データを第2のデータユニットのヘッダ部に続くボディ部に割り当てて送信するデータ送信部と、を備える。
本発明において、好ましくは、第2のデータユニットのヘッダ部と、バッファ部に格納されているボディ部データと、演算結果保持部に保持されている演算結果とを、関連付けて管理する送信データ管理テーブルを備え、送信データ管理テーブルの内容にしたがって第2のデータユニットを出力するようにしてもよい。
さらに、本発明に係るデータ変換装置は、第3のアスペクトによれば、少なくとも1以上ATMセルを順次受信するATM受信部と、送信の対象となるUDPパケットデータに対応する、受信したATMセル中のペイロードを、順次バッファメモリに書き込む書込み用DMA制御回路と、バッファメモリと、バッファメモリへの書き込みと並行して、ペイロードのチェックサムを演算するチェックサム演算回路と、を備える。また、チェックサムの演算結果を保持する演算結果保持回路と、演算結果保持回路に保持された演算結果に基づいて、送信するUDPパケットのUDPヘッダを作成するヘッダ合成回路と、バッファメモリに書込まれたペイロードを、UDPパケットデータとして読み出す読み出し用DMA制御回路と、を備える。さらに、ヘッダ合成回路で作成されたUDPヘッダを送信し、DMA制御回路から出力されるUDPパケットデータを送信するUDP送信部と、を備える。
また、本発明に係るデータ変換方法は、第4のアスペクトによれば、第2のデータユニットは、ヘッダ部とヘッダ部に続くボディ部とから構成され、ヘッダ部はボディ部に対する検査符号の演算結果に基づく情報を少なくとも含み、第2のデータユニットを出力する方法である。データ変換方法は、(a)少なくとも1以上の第1のデータユニットを順次入力するステップと、(b)第1のデータユニットから第2のデータユニットのボディ部に対応するデータを取り出すステップと、(c)取り出されたデータをバッファに書き込むと並行して、取り出されたデータに対する検査符号を演算するステップと、を第2のデータユニットのボディ部の長さに相当する所定の回数分、繰り返す。また、バッファに書き込まれたデータ(ボディ部データ)を、検査符号の演算結果と関連付けて保持する。さらに、演算結果が保持されたならば、演算結果に基づく情報を第2のデータユニットのヘッダ部の一部に割り当て、ヘッダ部を合成して、出力するステップと、書き込まれているボディ部データをバッファから読み出して第2のデータユニットのボディ部に割り当て、出力するステップと、を含む。
本発明によれば、データをバッファ部に書き込むとほぼ同時に並行してデータに対する検査符号を演算する。したがって、受信時において、検査符号を演算するのに余分な処理遅延を生じない。
また、受信時に検査符号の演算結果を保持し、送信時に、予め保持しておいた演算結果を用いてヘッダ部を作成するように動作する。したがって、ボディ部に先行するヘッダ部を送信するための待ち時間を少なくすることができる。
さらに、送信時において、第2のデータユニットの全体に対するチェックサム計算に要するバッファ部からの読み出し処理時間を削減することができるので、送信処理における処理遅延時間を削減することができる。
次に、本発明の実施形態について図面を参照して説明する。図1は、本発明の実施形態に係るデータ変換装置のブロック図である。図1において、データ変換装置は、データ入力部10、書込部11、バッファ部12、検査符号演算部13、演算結果保持部14、ヘッダ合成部15、読出部16、データ出力部17を備える。
なお、本発明において、データユニットとは、時間順に対応付けがなされたデータの集合を意味し、データユニットの属性(例えば、長さ、データユニットの送り先や送り元、検査符号の情報等)を表すヘッダ部とヘッダ部に続くボディ部とから構成されるものである。データ変換装置において、データ入力部10に入力される第1のデータユニット101には不図示のヘッダが含まれるが、データ出力部17から出力される第2のデータユニット102のヘッダ部114とは異なるものである。
先ず初めに、データ変換装置におけるデータユニットの受信処理に係る部分を説明する。データ入力部10は、第1のデータユニット101を入力する。書込部11は、第1のデータユニット101から第2のデータユニット102のボディ部113に対応するデータ111を取り出し(取り出したデータをボディ部データと称する)、ボディ部データ112としてバッファ部12に書き込む。一方、書き込みと同時に並行して、検査符号演算部13は、ボディ部データ112に対する検査符号を演算する。検査符号には、例えばチェックサム等の誤り検査符号が使われる。演算結果保持部14は、検査符号演算部13の演算結果を、バッファ部12に書き込まれるボディ部データ112との対応関係を保ち保持する。なお、検査符号の演算結果は、第2のデータユニット102のヘッダ部114の作成の際に用いられるものであって、第1のデータユニット101の誤り等の検査に使われるものではない。
続いて、データ変換装置におけるデータユニットの送信処理に係る部分を説明する。ヘッダ合成部15は、演算結果保持部14に保持された演算結果に基づいて求めた、第2のデータユニット102に対する検査符号を、第2のデータユニット102のヘッダ部114の一部に割り当て、不図示の制御回路および制御信号に基づいてヘッダ部114を作成してデータ出力部17に出力する。それに引き続き、読出部16は、不図示の制御回路および制御信号に基づいてバッファ部12に格納されたボディ部データ112をバッファ部12から読み出し、第2のデータユニット102のボディ部113に割り当て、データ出力部17に出力する。データ出力部17は、ヘッダ部114とそれに続くボディ部113とを第2のデータユニット102としてデータ変換装置から出力する。
次に、本発明の実施形態に係るデータ変換装置の動作フローについて説明する。図2は、本発明の実施形態に係るデータ変換装置の動作フローを表すフローチャート図である。図2において、ステップS10で第1のデータユニット101を入力する受信処理がスタートする。まず、検査符号演算部13における検査符号の演算結果を初期化しておく。
ステップS11において、第1のデータユニット101を入力する。この際、第1のデータユニット101を一括して入力するのではなく、所定の単位毎に入力する。
ステップS12において、入力された所定の単位毎の第1のデータユニットの中で、第2のデータユニット102のボディ部に対応するデータのみを取出す。
ステップS13において、取り出されたデータを順次バッファ部12に書き込む。同時に並行して、取り出されたデータと、検査符号演算部13に保持してある途中演算結果とから、検査符号を演算する。演算結果は途中演算結果として検査符号演算部13に保持しておく。すなわち、第2のデータユニットのボディ部113に対応するデータ111を全て受信(入力)するまで、検査符号演算結果を途中演算結果として保持する。なお、途中演算結果の保持は、最終的な演算結果が保持される演算結果保持部14を使用して行ってもよい。
ステップS14において、第2のデータユニットのボディ部113に対応するデータを全て受信(入力)したか否かを判定する。全てを受信していなければ、ステップS11に戻り、全てを受信したならば、ステップS15に進む。なお、ボディ部113に対応するデータは、ボディ部データ112である。
ステップS15において、検査符号の演算結果、すなわちボディ部データ112についての検査符号の演算結果を演算結果保持部14に保持し、ステップS16で一連の受信処理が終了する。受信処理で第2のデータユニットのボディ部113が全て受信されて、そのデータユニットの送信が可能となる。これは、不図示の制御回路および制御信号により送信処理側に通知される。なお、新たなデータユニットが入力される場合には、再びステップS10からスタートする。
一方、ステップS20で第2のデータユニット102を出力する送信処理がスタートする。なお、送信処理において、第2のデータユニット102は、ヘッダ部114を先頭にボディ部113が続く構成であるので、バッファ部12からのボディ部113の読み出しに先行してヘッダ部114の生成の処理が完了して必要がある。
ステップS21において、送信処理は、送信のスケジューリングを行う。すなわち、不図示の制御回路および制御信号に基づいて、演算結果保持部14の検査符号の演算結果を用いてヘッダ部114の作成を開始する。
ステップS22において、ステップS15で得た演算結果を元に第2のデータユニット102のヘッダ部114を作成して出力する。したがって、ヘッダ部114の生成が、ボディ部113の読み出しに先行してなされることとなる。
ステップS23において、ステップS13でバッファ部12に書き込まれ、保存されているボディ部データ112をバッファ部12から読出し、第2のデータユニット102のボディ部113として出力する。その後、ステップS21に戻り、次の送信処理を待合せる。
データ変換装置は、以上のように構成され、入力した第1のデータユニット101からボディ部データ112を取り出してバッファリングすると同時に並行して、ボディ部データ112に対して検査符号を演算して演算結果を保持するように動作する。したがって検査符号の演算のために余分な処理遅延を生じない。また、送信時に、予め保持しておいた演算結果を用いてヘッダ部114を作成するように動作する。したがって、第2のデータユニット102の全体に対するチェックサム計算に要するバッファ部12からの読み出し処理時間を削減することができ、処理遅延時間を小さくできる。
次に、本発明の実施例について図面を参照して説明する。図3は、本発明の実施例に係るデータ変換装置のブロック図である。図3は、図1における第1のデータユニットがATM(Asynchronous Transfer Mode)セルであって、図1における第2のデータユニットがUDP(User Datagram Protocol)パケットである場合についてのデータ変換装置のブロック図である。すなわち、ATMセルを入力して、ATMセル中のユーザ情報を、出力されるUDPパケットのペイロード(ボディ部)に埋めこむようなプロトコル変換を行う装置の例である。
図3において、データ変換装置は、受信IF回路21を内蔵するATM受信部20、DMA制御回路22、28、制御回路23、バッファメモリ24、チェックサム演算回路25、演算結果保持回路26、ヘッダ合成回路27、送信IF回路29を内蔵するUDP送信部30を備える。
ATM受信部20は、入力回線201からATMセル(53バイト)を受信IF回路21を介して順次受信する。受信IF回路21は、ATMセル中のヘッダ(5バイト)を解釈し、ATM受信部20は、ATMセル中のユーザ情報(48バイト)を出力する。DMA制御回路22は、ATM受信部20から出力されるユーザ情報(48バイト)を取り出し、バス202を介してバッファメモリ24に書込む。
一方、チェックサム演算回路25は、DMA制御回路22がバッファメモリ24に書込むと並行して、ATM受信部20から出力されるユーザ情報(48バイト)のチェックサムを演算する。なお、制御回路23は、DMA制御回路22における書き込み動作を起動すると同時に、チェックサムの演算にあたってチェックサム演算回路25を初期化し、チェックサム演算をスタートさせる。チェックサム演算回路25は、16ビット単位に1の補数和の1の補数を計算する。すなわち、16ビットを構成する各ビットの1の捕数を16ビット分加算し、加算結果の1の補数をさらに計算する。(なお、1の補数和は、足し算をした結果の桁上がり分を最下位ビットに加算する方法によって計算してもよい)。このチェックサム演算は、一般的にレジスタ回路を有するような専用のハードウェアで実行されるが、CPU等のスピードが充分速ければ、ソフトウェアによる演算によって実行してもよい。
演算結果保持回路26は、チェックサム演算回路25の演算結果と、バッファメモリ24に格納されたボディ部データ112とを関連付けて保持する。この関連付けの情報は、UDP送信部30から送信されるUDPパケットに対し、どのチェックサム演算結果を用いてヘッダを作成するのか、またどのボディ部データをボディ部(ペイロード)に割り付けるか等の対応関係を示す情報であって、制御回路23内の送信データ管理テーブル31に記録される。なお、図3のブロック図では、演算結果保持回路26を独立したものとして図示しているが、バッファメモリ24内に収容してもよい。
制御回路23は、処理のスケジューリングを行う。すなわち、演算結果保持回路26における演算結果の保持が完了したならば、ヘッダ合成回路27に対しヘッダの作成を指示する。また、DMA制御回路28における読出し動作の起動を行う。
ヘッダ合成回路27は、UDPパケットのヘッダを作成する。作成されたUDPパケットのヘッダは、UDP送信部30に転送され、送信IF回路29を介して出力回線204に出力される。
DMA制御回路28は、バッファメモリ24に格納されたボディ部データを読み出し、バス203を介してUDP送信部30に転送する。転送されるデータは、順次、送信IF回路29を介して出力回線204に出力される。なお、バッファメモリ24のアクセススピードが書込みおよび読出しスピードに比べて充分速い場合には、バス202とバス203とを同一のバスとし、DMA制御回路22とDMA制御回路28とを兼用するように構成することができることは勿論である。
制御回路23は、DMA制御回路22、チェックサム演算回路25、演算結果保持回路26、ヘッダ合成回路27、DMA制御回路28、に対してデータの入出力タイミングを制御し、以下に述べる動作を実行するように各部の制御を行う。また、送信データ管理テーブル31を備え、出力されるデータユニットの管理を行う。
なお、以上の説明において、ATM受信部20は、ATMセルを受信するものとして説明したが、一般にヘッダ部とデータ部とからなるデータフレームを受信するデータフレーム受信部であっても同様に構成することができる。
次にデータの流れについて説明する。図4は、本発明の実施例に係るデータ変換装置のデータの流れを説明する図である。先ず受信処理で、ATM受信部20が入力回線201からATMセルを順次受信し、ヘッダ解釈やパケットの組み立て等の情報、例えばデータがパケットの先頭か最後かなどの情報を把握する(受信プロトコル処理)。受信したATMセル中のユーザ情報(ペイロード)は、DMA制御回路22によりバッファメモリ24に順次転送される。また同時に、ユーザ情報(ペイロード)のチェックサムを計算する。同時にチェックサムを計算することで、チェックサム計算に要する処理遅延が発生しない。
送信データの長さ、すなわちUDPパケットのペイロード(ボディ部)に当る部分の長さまで、ATMセル中のユーザ情報を読込んだならば、ペイロード(ボディ部)は送信可能なデータとなる。送信プロトコル処理では、受信処理において計算されたチェックサムを用いてUDPパケット・ペイロード以外のチェックサム計算対象データについてUDPパケット全体のチェックサムを求め、後に説明するアドレス情報等、ヘッダ部の構成に必要な情報を付加してヘッダ部を作成する。作成されたヘッダ部は、UDP送信部30から出力回線204に出力される。さらに続いて、バッファメモリ24に蓄えられているUDPパケットのペイロード(ボディ部)をDMA制御回路28により、順次読み出して、UDP送信部30から出力回線204に出力する。
本発明の実施例に係るデータ変換装置は、以上のように動作し、UDPパケットのペイロード全体に対するチェックサム計算を送信処理において行う必要がないので、UDPパケットのヘッダの生成処理時間を極めて短くすることができる。したがって、送信処理遅延時間を削減することができる。
次に、データ変換の様子をさらに詳しく説明する。図5は、本発明の実施例に係るデータ変換の様子を模式的に示した図である。受信処理において、順次入力されるATMセル中のヘッダ部が解釈され、ユーザ情報(ペイロード)が一まとめにまとめられてUDPデータ(ボディ部)として、バッファメモリに蓄えられる。すなわち、ペイロードA1、・・AnがUDPデータ(ボディ部)となる。また、同時にATMセル中のペイロードA1、・・Anのチェックサムが計算されてチェックサムBが演算結果として得られる。この例は、ATM(AAL5)と呼ばれる規格に準ずるものである。
一方、UDPパケットのヘッダは、それぞれ2バイトの送信元ポート番号、宛先ポート番号、パケット長、チェックサムCから構成される。送信処理において、チェックサムBに基づいてチェックサムCが計算される。チェックサムCは、UDPデータ(ボディ部)、送信元ポート番号、宛先ポート番号、パケット長、不図示の擬似ヘッダ(仮想ヘッダ)の全てのチェックサム演算の結果が入る。チェックサム演算は、先に述べたように16ビット単位に1の補数和の1の補数を計算する。ただし、計算結果が0になった場合は、チェックサムCには、0xFFFFが設定される。UDPパケットは、UDPヘッダ、UDPデータ(UDPペイロード)の順で出力される。
以上説明したように、本発明の実施例に係るデータ変換では、1個以上のATMセルのペイロードから、UDPパケットのペイロード、すなわちUDPデータ(ボディ部)を作成し、1個以上のATMセルのペイロードに対してチャックサムを計算してUDPパケットのヘッダを作成するように動作する。
次に、入力されるデータが長いデータユニットから構成され、その一部を切り出してUDPペイロードを作成する例について説明する。長いデータユニットの例には、ビデオデータのようなものがある。図6は、本発明の実施例に係るデータ変換の様子を模式的に示した他の図である。受信処理において、順次入力されるデータユニットは、ヘッダとペイロードAから構成される。ヘッダが解釈され、ペイロードAから、UDPデータ(ボディ部)の長さに対応する部分aが読込まれUDPデータ(ボディ部)として、バッファメモリに蓄えられる。また、同時に部分aのチェックサムが計算されてチェックサムBが演算結果として得られる。後は、図5における説明と同様であるので、その説明を省略する。ただし、図3におけるATM受信部20は、入力されるデータユニットに対応した機能(例えばヘッダがある場合のヘッダの解釈やデータの部分の切り出し等)を備える必要がある。
以上説明したように、入力されるデータが長いデータユニットから構成されるものであっても、データの一部を切り出して、順次UDPデータ(ボディ部)として出力することができる。なお、ここで長いデータユニットと表現したが、長いデータユニットにこだわることは無く、入力されるデータが一つのATMセルであって、ペイロード中の数バイトだけをUDPパケットのペイロードとして使用することもありうる。
次に、UDPデータ(ボディ部)の管理について説明する。以上の説明では、入力されたデータユニットから一つのUDPデータ(ボディ部)を作成し、1つのUDPパケットを構成して出力する様子について述べたが、バッファメモリ24内に複数のUDPデータ(ボディ部)を保持し、順次出力するようにすることもできる。また、複数の異なるUDPポートに対してUDPデータ(ボディ部)を振り分けるようにすることもできる。この場合には、入力されるデータユニットのヘッダ情報等に基づいて予めUDPデータ(ボディ部)を複数に振り分け、バッファメモリ24に書き込む。複数のUDPデータ(ボディ部)を管理するために、制御回路23には、送信データ管理テーブル31を備える。
図7は、送信データ管理テーブルの構成を示す図である。送信データ管理テーブル31は、図7(a)示すように構成され、UDPヘッダi(i=1〜n)と、UDPヘッダiに対応するUDPデータDiが書込まれているバッファメモリ24上の位置を表すUDPデータポインタDiと、UDPデータDiのチェックサムの結果(チェックサムBi)が保持されている位置を示すチェックサムポインタBiとが、図7(b)示すように関連付けされて記録されている。
制御回路23は、i番目のUDPパケットを出力する際には、送信データ管理テーブル31のチェックサムポインタBiを参照して、UDPヘッダiに対応するチェックサムBiを元にUDPヘッダiをヘッダ合成部27において作成して出力するように制御する。さらに、続いてUDPデータポインタDiを参照して、UDPヘッダiに対応するUDPデータDiを読み出して出力するようにDMA制御回路28を制御する。
以上述べたように送信データ管理テーブル31を構成して、テーブルの内容を参照して複数のUDPパケットを順次出力するようにすることができる。
処理遅延時間の短いデータ変換が実現され、特に電話などの音声の会話型サービスやこれに付随するビデオデータにおけるデータ変換に好適である。
本発明の実施形態に係るデータ変換装置のブロック図である。 本発明の実施形態に係るデータ変換装置の動作フローを表すフローチャート図である。 本発明の実施例に係るデータ変換装置のブロック図である。 本発明の実施例に係るデータ変換装置のデータの流れを説明する図である。 本発明の実施例に係るデータ変換の様子を模式的に示した図である。 本発明の実施例に係るデータ変換の様子を模式的に示した他の図である。 本発明の実施例に係る送信データ管理テーブルの構成を示す図である。
符号の説明
10 データ入力部
11 書込部
12 バッファ部
13 検査符号演算部
14 演算結果保持部
15 ヘッダ合成部
16 読出部
17 データ出力部
20 ATM受信部
21 受信IF回路
22、28 DMA制御回路
23 制御回路
24 バッファメモリ
25 チェックサム演算回路
26 演算結果保持回路
27 ヘッダ合成回路
29 送信IF回路
30 UDP送信部
31 送信データ管理テーブル
101 第1のデータユニット
102 第2のデータユニット
111 データ
112 ボディ部データ
113 ボディ部
114 ヘッダ部
201 入力回線
202、203 バス
204 出力回線

Claims (19)

  1. 第2のデータユニットは、ヘッダ部と前記ヘッダ部に続くボディ部とから構成され、前記ヘッダ部は前記ボディ部に対する検査符号の演算結果に基づく情報を少なくとも含み、前記第2のデータユニットを出力するデータ変換装置であって、
    入力される少なくとも1以上の第1のデータユニットから前記ボディ部に対応するボディ部データを取り出してバッファ部に書き込む書込部と、
    前記バッファ部と、
    前記バッファ部への書き込みと並行して、前記ボディ部データに対する前記検査符号を演算する検査符号演算部と、
    前記検査符号演算部の演算結果に基づいて前記ヘッダ部を作成するヘッダ合成部と、
    前記ヘッダ合成部で作成される前記ヘッダ部と、前記バッファ部から読み出される前記ボディ部データとを、それぞれ前記第2のデータユニットのヘッダ部とボディ部とに割り当てて出力するデータ出力部と、
    を備えることを特徴とするデータ変換装置。
  2. 入力される少なくとも1以上の第1のデータユニットを順次受信する受信部と、
    受信した前記第1のデータユニットから、送信される第2のデータユニットのボディ部に対応するボディ部データを取り出してバッファ部に書き込む書込部と、
    前記バッファ部と、
    前記バッファ部への書き込みと並行して、前記ボディ部データに対する前記検査符号を演算する検査符号演算部と、
    前記検査符号演算部の演算結果を保持する演算結果保持部と、
    前記第2のデータユニットのヘッダ部を、前記演算結果保持部に保持された前記演算結果に基づいて作成するヘッダ合成部と、
    前記ボディ部データを前記バッファ部から読み出す読出部と、
    前記ヘッダ合成部で作成された前記ヘッダ部を送信し、前記読出部から出力される前記ボディ部データを前記第2のデータユニットの前記ヘッダ部に続くボディ部に割り当てて送信するデータ送信部と、
    を備えることを特徴とするデータ変換装置。
  3. 前記第2のデータユニットのヘッダ部と、前記バッファ部に格納されている前記ボディ部データと、前記演算結果保持部に保持されている前記演算結果とを、関連付けて管理する送信データ管理テーブルを備え、前記送信データ管理テーブルの内容にしたがって前記第2のデータユニットを出力することを特徴とする請求項1または2いずれか一記載のデータ変換装置。
  4. 前記検査符号は、誤り検査符号であることを特徴とする請求項1または2いずれか一記載のデータ変換装置。
  5. 前記誤り検査符号は、チェックサムであることを特徴とする請求項4記載のデータ変換装置。
  6. 前記第1のデータユニットは、データフレームであることを特徴とする請求項1または2いずれか一記載のデータ変換装置。
  7. 前記第1のデータユニットは、ATM(Asynchronous Transfer Mode)セルであることを特徴とする請求項1または2いずれか一記載のデータ変換装置。
  8. 前記第1のデータユニットは、前記ボディ部と同じ長さまたはより長いデータユニットであって、前記データユニットの全部または一部を切り出して、前記ボディ部データとすることを特徴とする請求項1または2いずれか一記載のデータ変換装置。
  9. 前記長いデータユニットは、ビデオストリームデータであることを特徴とする請求項8記載のデータ変換装置。
  10. 前記第2のデータユニットは、UDP(User Datagram Protocol)パケットであることを特徴とする請求項1または2いずれか一記載のデータ変換装置。
  11. 少なくとも1以上ATMセルを順次受信するATM受信部と、
    送信の対象となるUDPパケットデータに対応する、受信した前記ATMセル中のペイロードを、順次バッファメモリに書き込む書込み用DMA制御回路と、
    前記バッファメモリと、
    前記バッファメモリへの書き込みと並行して、前記ペイロードのチェックサムを演算するチェックサム演算回路と、
    前記チェックサムの演算結果を保持する演算結果保持回路と、
    前記演算結果保持回路に保持された演算結果に基づいて、送信するUDPパケットのUDPヘッダを作成するヘッダ合成回路と、
    前記バッファメモリに書込まれた前記ペイロードを、前記UDPパケットデータとして読み出す読み出し用DMA制御回路と、
    前記ヘッダ合成回路で作成された前記UDPヘッダを送信し、前記DMA制御回路から出力される前記UDPパケットデータを送信するUDP送信部と、
    を備えることを特徴とするデータ変換装置。
  12. 第2のデータユニットは、ヘッダ部と前記ヘッダ部に続くボディ部とから構成され、前記ヘッダ部は前記ボディ部に対する検査符号の演算結果に基づく情報を少なくとも含み、前記第2のデータユニットを出力するデータ変換方法であって、
    (a)少なくとも1以上の第1のデータユニットを順次入力するステップと、
    (b)前記第1のデータユニットから前記第2のデータユニットのボディ部に対応するデータを取り出すステップと、
    (c)取り出された前記データをバッファに書き込むと並行して、前記取り出された前記データに対する検査符号を演算するステップと、
    を前記第2のデータユニットのボディ部の長さに相当する所定の回数分、繰り返すステップと、
    前記バッファに書き込まれたデータをボディ部データとし、前記検査符号の演算結果を、前記ボディ部データと関連付けて保持するステップと、
    前記演算結果が保持されたならば、前記演算結果に基づく情報を第2のデータユニットのヘッダ部の一部に割り当て、前記ヘッダ部を合成して、出力するステップと、
    書き込まれている前記ボディ部データを前記バッファから読み出して前記第2のデータユニットのボディ部に割り当て、出力するステップと、
    を含むことを特徴とするデータ変換方法。
  13. 前記検査符号は、誤り検査符号であることを特徴とする請求項12記載のデータ変換方法。
  14. 前記誤り検査符号は、チェックサムであることを特徴とする請求項13記載のデータ変換方法。
  15. 前記第1のデータユニットは、データフレームであることを特徴とする請求項12記載のデータ変換方法。
  16. 前記第1のデータユニットは、ATM(Asynchronous Transfer Mode)セルであることを特徴とする請求項12記載のデータ変換方法。
  17. 前記第1のデータユニットは、前記ボディ部と同じ長さまたはより長いデータユニットであって、前記データユニットの全部または一部を切り出して、前記ボディ部データとすることを特徴とする請求項12記載のデータ変換方法。
  18. 前記長いデータユニットは、ビデオストリームデータであることを特徴とする請求項17記載のデータ変換方法。
  19. 前記第2のデータユニットは、UDP(User Datagram Protocol)パケットであることを特徴とする請求項12記載のデータ変換方法。
JP2004009685A 2004-01-16 2004-01-16 データ変換装置およびデータ変換方法 Withdrawn JP2005204173A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004009685A JP2005204173A (ja) 2004-01-16 2004-01-16 データ変換装置およびデータ変換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004009685A JP2005204173A (ja) 2004-01-16 2004-01-16 データ変換装置およびデータ変換方法

Publications (1)

Publication Number Publication Date
JP2005204173A true JP2005204173A (ja) 2005-07-28

Family

ID=34822647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004009685A Withdrawn JP2005204173A (ja) 2004-01-16 2004-01-16 データ変換装置およびデータ変換方法

Country Status (1)

Country Link
JP (1) JP2005204173A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018026004A (ja) * 2016-08-10 2018-02-15 株式会社ワイ・デー・ケー データ処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018026004A (ja) * 2016-08-10 2018-02-15 株式会社ワイ・デー・ケー データ処理装置

Similar Documents

Publication Publication Date Title
US7773599B1 (en) Packet fragment handling
US7916632B1 (en) Systems and methods for handling packet fragmentation
US9807134B2 (en) Method and device for filtering media packets
US7515610B2 (en) Packet processing using a multi-port memory
US7782857B2 (en) Logical separation and accessing of descriptor memories
US8077711B2 (en) Address converter for gateways interconnecting networks of different address formats
US8085780B1 (en) Optimized buffer loading for packet header processing
US20060268913A1 (en) Streaming buffer system for variable sized data packets
JP4890613B2 (ja) パケットスイッチ装置
CN108462642B (zh) 基于fpga的udp/ip硬件协议栈及实现方法
US20050135395A1 (en) Method and system for pre-pending layer 2 (L2) frame descriptors
EP3136633B1 (en) Network module for sending and/or receiving of data packages from a network arrangement and method
US7239630B1 (en) Dedicated processing resources for packet header generation
US7035250B2 (en) System for organizing voice channel data for network transmission and/or reception
US20010014100A1 (en) Packet buffer equipment
JP4612821B2 (ja) 通信制御装置及び方法
US7245615B1 (en) Multi-link protocol reassembly assist in a parallel 1-D systolic array system
EP2201740B1 (en) High speed packet processing in a wireless network
US20030076822A1 (en) Data and context memory sharing
US7158520B1 (en) Mailbox registers for synchronizing header processing execution
US6976149B1 (en) Mapping technique for computing addresses in a memory of an intermediate network node
US6639915B1 (en) Method and apparatus for transmission of voice data in a network structure
JP2005204173A (ja) データ変換装置およびデータ変換方法
US20090316726A1 (en) Apparatus and method for data transmission
US7532644B1 (en) Method and system for associating multiple payload buffers with multidata message

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070403