(57)【要約】イーサネット（登録商標）ベースのIPネットワークで使用可能な着信AAL2/AAL5パケット化データをカプセル化するUMTS無線ネットワークコントローラのネットワークインタフェースである。ハードウェアユニット(５０)は、長さおよび誤り検査値を含むプロトコルオーバーヘッドの付加情報の計算に用いられる。部分的なヘッダ情報は記憶されてセッションごとにカプセル化されたパケットに用いられる。好ましい実施形態では、前記着信パケットは、セッションごとの前記部分的なヘッダ情報に対するポインタと前記着信パケットに対するポインタを含むリンクされたリストを含む、リンクされたデータバッファにバッファされる。
2005506738.tif 000002
【特許請求の範囲】
【請求項１】
記憶された一部のヘッダ情報にアクセスするために、着信パケットからの情報を用いる段階と、
ハードウェア内で、付加情報を計算するために、前記記憶された一部のヘッダ情報および前記着信パケットを用いる段階と
を備え、
前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含み、
前記ハードウェアの出力は、１つ以上のプロトコルによってカプセル化された前記着信パケットであることを特徴とする方法。
【請求項２】
前記１つ以上のプロトコルは、IPプロトコルを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記１つ以上のプロトコルは、UDPプロトコル、IPプロトコルおよびイーサネット（登録商標）プロトコルを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記付加情報は、UDPメッセージ長と、UDP検査合計値と、IPヘッダ検査合計と、IP全長値と、イーサネット（登録商標）フレームペイロード長と、イーサネット（登録商標）CRC値とを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記方法は、ネットワークインタフェース内で実行されることを特徴とする請求項１に記載の方法。
【請求項７】
前記ネットワークインタフェースは、UMTSシステムの無線ネットワークコントローラ内にあることを特徴とする請求項６に記載の方法。
【請求項８】
前記着信パケットは、AALパケットであることを特徴とする請求項１に記載の方法。
【請求項９】
着信パケットからの前記情報は、仮想チャンネル(VC)情報を含むことを特徴とする請求項８に記載の方法。
【請求項１０】
着信パケットからの情報は、仮想チャンネル(VC)情報およびサブチャンネルID(CID)情報を含むことを特徴とする請求項８に記載の方法。
【請求項１１】
ソフトウェアは、一部のヘッダ情報を形成し、かつ、前記一部のヘッダ情報を記憶することを特徴とする請求項１に記載の方法。
【請求項１２】
ソフトウェアは、ヘッダデータに対する第１ポインタと、バッファされた着信パケットに対する第２ポインタとを含むリンクされたリスト内で、着信パケットとともに形成された一部のヘッダ情報を記憶するためにリンクされたデータバッファを用い、前記第１ポインタは、セッションの記憶された各着信パケットと同一であることを特徴とする請求項１に記載の方法。
【請求項１３】
前記ハードウェアユニットは、プロトコルヘッダインサートユニットを含むことを特徴とする請求項１に記載の方法。
【請求項１４】
前記ハードウェアは、イーサネット（登録商標）フレームCRCユニットをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
セッションに対して、一部のヘッダ情報を形成し、かつ、記憶する段階と、
前記記憶された一部のヘッダ情報にアクセスするために、着信パケットからの情報を用いる段階と、
ハードウェア内で、付加情報を計算するために、前記記憶された一部のヘッダ情報および前記着信パケットを用いる段階と
を備え、
前記一部のヘッダ情報は、ソースおよび宛先フィールドを含み、同一の一部のヘッダ情報は、前記セッションの各着信パケットに対して用いられ、前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含み、前記ハードウェアの出力は、１つ以上のプロトコルによってカプセル化された前記着信パケットの１つであることを特徴とする方法。
【請求項１６】
前記ソースおよび宛先フィールドは、アドレスであることを特徴とする請求項１５に記載の方法。
【請求項１７】
前記ソースおよび宛先フィールドは、ソースおよび宛先ポートフィールドであることを特徴とする請求項１５に記載の方法。
【請求項１８】
前記１つ以上のプロトコルは、IPプロトコルを含むことを特徴とする請求項１５に記載の方法。
【請求項１９】
前記１つ以上のプロトコルは、UDPプロトコルと、IPプロトコルと、イーサネット（登録商標）プロトコルとを含むことを特徴とする請求項１８に記載の方法。
【請求項２０】
前記付加情報は、UDPメッセージ長と、UDP検査合計値と、IPヘッダ検査合計と、IP全長値と、イーサネット（登録商標）フレームペイロード長と、イーサネット（登録商標）フレームCRC値とを含むことを特徴とする請求項１５に記載の方法。
【請求項２１】
ユニットは、前記着信パケットに着信パケット長を付加することを特徴とする請求項１５に記載の方法。
【請求項２２】
前記ハードウェアは、前記付加情報を計算するために、前記付加された長さを用いることを特徴とする請求項２１に記載の方法。
【請求項２３】
前記着信パケットは、AAL2/AAL5パケットであることを特徴とする請求項１５に記載の方法。
【請求項２４】
ATMセルからAALパケットを再組立する段階と、
記憶された一部のヘッダ情報にアクセスするために、前記AALパケットからの情報を用いる段階と、
ハードウェア内で、付加情報を計算するために、前記記憶された一部のヘッダ情報および前記AALパケットを用いる段階と
を備え、
前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含み、前記ハードウェアの出力は、１つ以上のプロトコルによってカプセル化されたAALパケットであり、前記１つ以上のプロトコルのうち少なくとも１つはIPプロトコルであることを特徴とする方法。
【請求項２５】
再組立ユニットは、前記AALパケットにAALパケット長を付加することを特徴とする請求項２４に記載の方法。
【請求項２６】
前記AALパケットからの情報は、AAL2パケットに対するCIDおよびVC情報、または、AAL5パケットに対するVC情報を含むことを特徴とする請求項２４に記載の方法。
【請求項２７】
前記１つ以上のプロトコルは、IPプロトコルを含むことを特徴とする請求項２４に記載の方法。
【請求項２８】
前記１つ以上のプロトコルは、IPプロトコルと、UDPプロトコルと、イーサネット（登録商標）プロトコルとを含むことを特徴とする請求項２４に記載の方法。
【請求項２９】
前記少なくとも１つの誤り検査フィールドは、検査合計フィールドであることを特徴とする請求項２４に記載の方法。
【請求項３０】
前記少なくとも１つの誤り検査フィールドは、CRCフィールドであることを特徴とする請求項２４に記載の方法。
【請求項３１】
ソフトウェアは、前記記憶された一部のヘッダ情報に対するポインタをリンクされたデータバッファ内に記憶することを特徴とする請求項２４に記載の方法。
【請求項３２】
前記ソフトウェアは、また、前記バッファされた着信パケットに対するポインタを前記リンクされたデータバッファ内に記憶することを特徴とする請求項３１に記載の方法。
【請求項３３】
前記ハードウェアは、AALパケット長を受信することを特徴とする請求項２４に記載の方法。
【請求項３４】
前記再組立する段階は、前記AALパケットにAALパケット長を付加する段階を含むことを特徴とする請求項２４に記載の方法。
【請求項３５】
ATMセルからAALパケットを再組立する段階と、
記憶された一部のヘッダ情報にアクセスするために、前記AALパケットからの情報を用いる段階と、
ハードウェア内で、付加情報を計算するために、前記記憶された一部のヘッダ情報および前記AALパケットを用いる段階と
を備え、
前記付加情報は、UDPメッセージ長と、UDP検査合計値と、IPヘッダ検査合計と、IP全長値と、イーサネット（登録商標）フレームペイロード長と、イーサネット（登録商標）フレームCRC値とを含み、前記ハードウェアの出力は、UDPプロトコルと、IPプロトコルと、イーサネット（登録商標）プロトコルとによってカプセル化されたAALパケットであることを特徴とする方法。
【請求項３６】
セッションに対する一部のヘッダ情報を記憶するのに適したソフトウェアと、
前記記憶された一部のヘッダ情報および着信パケットを受信するハードウェアと、
を備え、
前記セッションは、着信パケットからの情報を表し、前記記憶された一部のヘッダ情報は、少なくとも１つのプロトコルに対するソースおよび宛先情報を含み、同一の一部のヘッダ情報は、前記セッションの各着信パケットに対して用いられ、
前記ハードウェアは、発信データに対する付加情報の計算に適し、前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含むことを特徴とするネットワークコントローラ。
【請求項３７】
前記ソフトウェアは、前記一部のヘッダ情報および着信パケットをバッファ内に記憶することを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項３８】
リンクされたリストは、前記一部のヘッダ情報およびバッファされた着信パケットに対するポインタを含むことを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項３９】
前記ネットワークコントローラは、UMTSシステム内の無線ネットワークコントローラの一部であることを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項４０】
少なくとも１つの誤り検査フィールドは、検査合計であることを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項４１】
少なくとも１つの誤り検査フィールドは、巡回冗長検査フィールドであることを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項４２】
前記着信パケットは、少なくとも１つの付加的なプロトコルでカプセル化されることを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項４３】
前記着信パケットは、UDPプロトコルと、IPプロトコルと、イーサネット（登録商標）プロトコルとでカプセル化されることを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項４４】
前記着信パケットは、AALパケットであることを特徴とする請求項３６に記載のネットワークコントローラ。
【請求項４５】
前記付加情報は、UDPメッセージ長と、UDP検査合計値と、IPヘッダ検査合計と、IP全長値と、イーサネット（登録商標）フレームペイロード長と、イーサネット（登録商標）フレームCRC値とを含むことを特徴とする請求項３６記載のネットワークコントローラ。
【請求項４６】
セッションに対する一部のヘッダ情報を記憶するのに適したソフトウェアと、
前記記憶された一部のヘッダ情報および着信パケットを受信するハードウェアと
を備え、
前記セッションは、着信パケットからの情報によって表され、前記記憶された一部のヘッダ情報は、UDPプロトコルと、IPプロトコルと、イーサネット（登録商標）プロトコルとに対するソースおよび宛先情報を含み、同一の一部のヘッダ情報は、前記セッションの各着信パケットに対して用いられ、
前記ハードウェアは、発信データに対する付加情報の計算に適し、前記付加情報は、UDPメッセージ長と、UDP検査合計値と、IPヘッダ検査合計と、IP全長値と、イーサネット（登録商標）フレームペイロード長と、イーサネット（登録商標）フレームCRC値とを含み、前記ハードウェアの出力は、UDPプロトコルと、IPプロトコルと、イーサネット（登録商標）プロトコルとによってカプセル化されたAALパケットペイロードであることを特徴とするネットワークコントローラ。
【請求項４７】
ネットワークインタフェースを含む無線ネットワークコントローラと、
記憶された一部のヘッダ情報および着信パケットを受信するハードウェアと
を備え、
前記ネットワークインタフェースは、セッションに対する一部のヘッダ情報を記憶するのに適したソフトウェアを含み、前記セッションは、着信パケットからの情報によって表され、前記記憶された一部のヘッダ情報は、少なくとも１つのプロトコルに対するソースおよび宛先情報を含み、
前記ハードウェアは、発信データに対する付加情報の計算に適し、前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含むことを特徴とするUMTSシステム。
【請求項４８】
セッションに対する一部のヘッダ情報および着信パケットをバッファする段階と、
リンクされたデータバッファを供給するために、セッションに対する前記一部のヘッダ情報およびバッファされた着信パケットに対してポインタのリンクされたリストを生成する段階と、
ハードウェア内で、付加情報を計算するために、前記リンクされたデータバッファから前記記憶された一部のヘッダ情報および前記着信パケットを用いる段階と、
を備え、
前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含み、前記ハードウェアの出力は、１つ以上のプロトコルによってカプセル化された前記着信パケットであることを特徴とする方法。
【請求項４９】
セッションに対する一部のヘッダ情報およびバッファされた着信パケットと、セッションについての前記一部のヘッダ情報に対するポインタのリンクされたリストと、バッファされた着信パケットとを含むリンクされたデータバッファと、
記憶された一部のヘッダ情報および前記着信パケットを前記リンクされたデータバッファから受信するハードウェアと
を備え、
前記ハードウェアは、発信データに対する付加情報の計算に適し、前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含むことを特徴とするネットワークコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、汎用移動体通信システム(UMTS : universal mobile telecommunication systems)無線ネットワークコントローラのネットワークインタフェースに関する。前記UMTS無線ネットワークコントローラのネットワークインタフェースは、非同期転送モード(ATM)適合層２(AAL2)およびATM適合層５(AAL5)のパケット化されたデータを、イーサネット(登録商標)ベースのインターネットプロトコル(IP)ネットワークへ送る。
【背景技術】
【０００２】
典型的には、これらの演算はルックアップテーブルに記憶された引数を用い、かつ、イーサネット(登録商標)フレームにおける前記AAL2／AAL5パケットをカプセル化するために、スクラッチ(scratch)からプロトコルヘッダを生成するソフトウェア内で実行される。イーサネット(登録商標)ヘッダ、IPヘッダ、UDP(User Datagram Protocol)パケットヘッダ、及びイーサネット(登録商標)フレーム巡回冗長検査(CRC)情報が作成される。このことは、作成された各イーサネット(登録商標)フレームに対して大量の計算をしなければならないことを意味する。これらの計算は、システムの演算を著しく遅くさせる可能性がある。
【０００３】
UMTS無線ネットワークコントローラのネットワークインタフェースにおいて、AAL2/AAL5のパケット化されたデータのカプセル化を実行するために、システムが向上された性能(performance)を有することが要望される。
【発明の開示】
【課題を解決するための手段】
【０００４】
本発明において、部分的なヘッダ(partial header)データはセッション(session)ごとにバッファされる。特定のセッションに属する各AAL2/AAL5パケットは、バッファに記憶された同一の予め定義された部分的なヘッダデータと関連付けられる。前記部分的なヘッダデータは、ヘッダのすべてのフィールドを含むわけではない。前記AAL2/AAL5パケットに伴う前記部分的なヘッダデータは、完全なイーサネット(登録商標)フレームを生成するのに必要とされる長さ情報および誤り検査情報(検査合計(checksum)およびCRC)を計算するハードウェアに供給される。
【０００５】
セッションごとにヘッダバッファをセットアップし、かつ、一部の前記ヘッダおよび前記イーサネット(登録商標)フレームCRCを計算するハードウェアを使用することにより、本発明のシステムの速度は著しく向上する。既製の(off-the-shelf)ネットワークプロトコルスタックと比べて、本発明のシステムの一実施形態の性能向上は約８倍である。ユーザが先行技術のプロトコルスタックを最適化したとしても、本発明のシステムの一実施形態の性能向上は４−５倍の範囲にある。
【０００６】
着信AAL2/AAL5パケットの前記ATMヘッダは、前記セッションを表すために用いられており、従って、どの記憶された部分的なヘッダ情報がハードウェアに供給されるかを表している。
【０００７】
好ましい実施形態では、部分的なヘッダ情報はセッション毎に一回計算され、データバッファに記憶される。データバッファのリンクされたリスト(linked list)は、そのセッションに対する部分的なヘッダデータへのポインタ(pointer)およびAAL2/AAL5パケットを記憶するバッファへのポインタを含む。
【０００８】
本発明の一実施形態において、着信パケット(incoming packet)におけるフィールドは、記憶された部分的なヘッダ情報へアクセスするために用いられる。ハードウェアにおいて、記憶された部分的なヘッダ情報および着信パケットは、付加情報を計算するために用いられる。前記付加情報は少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含み、ハードウェアからの出力は、１つ以上のプロトコルによってカプセル化された着信パケットとなる。
【０００９】
本発明の別の実施形態は、各セッションについて、部分的なヘッダ情報を構成し、記憶する方法である。前記部分的なヘッダ情報は、ソースフィールドおよび宛先フィールドを含んでいる。着信パケットにおけるフィールドを記憶された部分的なヘッダ情報にアクセスするために利用することによって、同一の部分的なヘッダ情報がセッションの各着信パケットに対して用いられる。ハードウェアでは、付加情報を計算するために、記憶された部分的なヘッダ情報および着信パケットを用いる。前記付加情報は少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含んでいる。前記ハードウェアからの出力は、１つ以上のプロトコルによってカプセル化された着信パケットの１つである。
【００１０】
一実施形態において、前記プロトコルは、前記UDPプロトコル、前記IPプロトコルおよびイーサネット(登録商標)プロトコルを含む。一実施形態において前記付加情報は、前記UDPメッセージ長、前記UDP検査合計値、IPヘッダ検査合計、IP全長値、イーサネット(登録商標)フレームペイロード長およびイーサネット(登録商標)フレームCRC値を含む。
【００１１】
本発明の一実施形態は、ネットワークインタフェースを有する無線ネットワークコントローラを含むUMTSシステムである。前記ネットワークインタフェースは、セッションに対する部分的なヘッダ情報を記憶するように構成されたソフトウェアを含む。前記セッションは、着信パケットのフィールドによって示される。記憶された前記部分的なヘッダ情報は、少なくとも１つのプロトコルにつき、ソースフィールドおよび宛先フィールドを含んでいる。前記ネットワークインタフェースは、着信パケット内に記憶された前記部分的なヘッダ情報を受信するハードウェアを含んでいる。前記ハードウェアは、発信(outgoing)データのための付加情報を計算するように構成される。前記付加情報は、少なくとも１つの長さフィールドおよび少なくとも１つの誤り検査フィールドを含む。
【００１２】
一実施形態において、本発明によるデータ送信装置は、パイプライン(pileline)された２つのステージで構築される。前記装置の第１の部分は、一連のヘッダおよびデータブロック(block)によって表されるデータパケットを生成する。ヘッダ情報は、それらの最終値に評価されない(not evaluated)幾つかのデータフィールドを含む前記２つのステージの間を移動する。前記データブロックは、多数の予め定義された変数(データフィールド)を含み、これらは前記ヘッダの後にすぐ移動される位置にある前記データブロックに挿入される。第２ステージは、前記ヘッダデータの最終値を計算するため、前記データブロックに転送される変数を用いる。前記第１ステージは、ソフトウェアを伴う従来のインタフェースコンポーネントであってもよく、このソフトウェアは、部分的に評価されたヘッダブロックを供給し、かつ、個々の変数情報を含めてデータブロックを前記データブロックの先頭に関連付ける。第２段階は典型的にハードウェアであり、部分的に評価されたヘッダおよび変数情報から計算された訂正ヘッダを生成し、次いで、データブロック(変数を持たない)を転送する。
【発明を実施するための最良の形態】
【００１３】
図１は、UMTS無線ネットワークの図である。前記ネットワークは、コアネットワーク２２と、無線アクセスネットワーク２４と、無線装置２６および２８とを含む。前記無線アクセスネットワーク２４は、ノードＢ３０および無線ネットワークコントローラ３２を含む。前記無線ネットワークコントローラ３２は、ネットワークインタフェース３４を含む。一実施形態では、前記ネットワークインタフェースはATMセルを受信し、かつ、AAL2/AAL5パケットを再組立し、かつ、付加プロトコルでこれらのパケットをカプセル化する。好ましい実施形態では、前記AAL2/AAL5パケットは、前記UDPプロトコル、前記IPプロトコルおよびイーサネット(登録商標)プロトコルでカプセル化される。
【００１４】
図２は、本発明におけるシステムの一実施形態のネットワークインタフェースを示す。この実施形態では、ATMセルは受信され、再組み立てされた後、AAL2/AAL5パケットのATMセルヘッダに基づいて、イーサネット(登録商標)プロトコルを用いて発送される。一実施形態では、AAL2パケットは、ATM仮想チャンネル(VC)およびサブチャンネル識別子(CID)に基づいて発送され、AAL5パケットは、前記ATM仮想チャンネル(VC)に基づいて発送される。ATM AAL5接続およびATM AAL2サブチャンネルは、IP宛先アドレスおよびUDP宛先ポート番号によって識別される固有UDP/IPセッションにそれぞれマップされる(mapped to)。前記VC(AAL5パケットについて)またはVCおよびCID(AAL2パケットについて)は、前記ヘッダおよびプロトコルと関連付けられた他のオーバーヘッド(overhead)を生成させるルーティングテーブルにアクセスするために用いられる。
【００１５】
ATMセルヘッダは、８ビットの仮想パス識別子と、１２ビットの仮想チャンネル識別子とからなる。それらは共にATM仮想チャンネル(VC)を識別する。AAL5パケットについて、前記ATMセルヘッダ、VCのみが前記セッションを識別するために用いられる。VC情報は、前記AAL5パケット内の付加情報として加えられる。AAL2パケットについて、前記ATMセルヘッダからの前記VCおよび前記AAL2パケットの一部であるサブチャンネルID(CID)が前記セッションを識別するために用いられる。
【００１６】
従来技術のシステムでは、このオーバーヘッド計算は単にソフトウェアで実行される。ネットワークドライバは変数を取得し、要求されるプロトコルヘッダおよびフッタを生成する。これは多数の計算やメモリトランザクション(memory transaction)を必要とするため、非常に時間を費やす。
【００１７】
図３は、本発明の一実施形態のシステムを示す。この実施形態では、前記ATMセルは、ATM再組立ユニット４０で受信される。前記ATM再組立ユニットは、前記ATMセルを取得し、AAL2/5パケットを再構築する。好ましい実施形態では、前記AAL2/AAL5パケットは、それにパケット長値を付加する。前記パケットは、ソフトウェアユニット４２へ送られる。好ましい実施形態では、前記ソフトウェアユニットは、IPセッションごとに部分的なヘッダを作成し、メモリ４６のバッファ４４にそれをバッファする。以下に記載するように、前記バッファは、好ましくはリンクされたデータバッファ４４としてセットアップされる。一実施形態では前記AAL2/AAL5パケットそれぞれは、前記リンクされたデータバッファ４４にバッファされる。前記ソフトウェアユニットは、好ましくはリンクされたデータバッファ４４を点検(maintain)する。
【００１８】
好ましくは、各IPセッションについてセットアップされた前記部分的なヘッダ情報は、用いられたプロトコルごとにソースおよび宛先情報を含む。前記部分的なヘッダ情報および前記AAL2/AAL5パケットは、ハードウェアユニット５０に供給される。ハードウェアユニット５０は、要求される付加情報を計算し、前記ヘッダを更新し、好ましい実施形態では、さらにイーサネット(登録商標)フレームCRCフッタを計算する。従って、前記ハードウェアユニット５０の出力は、IPスイッチ５２に送信されるイーサネット(登録商標)フレームであり、IPスイッチ５２は前記IPプロトコルに基づいて切替えられる。
【００１９】
図４は、本発明の前記システムの一実施形態における構築されたイーサネット(登録商標)フレームに対する、前記ハードウェアユニットおよび前記ソフトウェアユニットからの寄与(contribution)を示す図である。前記AAL2/AAL5パケットは、UDPパケットに対するペイロードとして作用し、前記UDPパケットはUDPヘッダおよび前記ペイロードを含む。前記UDPパケットは、前記IPパケットに対するペイロードであり、前記IPパケットはIPパケットヘッダをさらに含む。前記IPパケットは前記イーサネット(登録商標)フレームに対する前記ペイロードとして作用し、前記イーサネット(登録商標)フレームは前記イーサネット(登録商標)フレームヘッダおよび前記イーサネット(登録商標)フレームCRCフッタを付加する。前記ヘッダは、前記イーサネット(登録商標)フレームヘッダ、前記IPパケットヘッダおよび前記UDPヘッダからなる。これらのプロトコルは好ましい実施形態で使用されるが、他のプロトコルも使用できる。部分的なヘッダ情報はバッファから供給される。この部分的なヘッダ情報は、前記ソースおよび宛先アドレスや、前記ソースおよび宛先ポートのようなソースおよび宛先情報を含む。付加ヘッダ情報はハードウェア内で生成される。また、好ましい実施形態では、イーサネット(登録商標)フレームCRCはハードウェア内で計算される。
【００２０】
図５は、本発明の前記システムの一実施形態における前記ヘッダ情報を示す。前記ヘッダ情報は、イーサネット(登録商標)フレームヘッダ部、IPヘッダ部およびUDPヘッダ部を含む。前記イーサネット(登録商標)フレームヘッダ部は、メディアアクセス制御(MAC)アドレス、ソースMACアドレスおよびイーサネット(登録商標)タイプフィールド(type field)を含む。前記ソースおよび宛先アドレスは、セッションごとに一回、ソフトウェア内で決定される。図３の例では、前記ソースMACアドレスは、ユニット５１の前記MACアドレスとなる。前記宛先MACアドレスは、前記IPスイッチ５２の前記MACアドレスとなる。１５３６またはそれより少ないバイト数のペイロードについての前記イーサネット(登録商標)タイプは、前記イーサネット(登録商標)フレームペイロードの長さを示している。以下に記載するように、この長さは、好ましくはハードウェア内で計算される。
【００２１】
前記IPヘッダ部分は、バージョンフィールド、サービスフィールドのタイプ、識別フィールド、断片化(fragmentation)フィールド、有効期間フィールド、プロトコルIDフィールド、前記ソースIPアドレスおよび宛先IPアドレスを含む。多くのフィールドは、IPセッションごとに固定される。前記ソースおよび宛先IPアドレスと、UDPソースポートおよび宛先ポートとは、ルーティングテーブルにインデックス(index)を提供する前記AAL2/AAL5パケット内のフィールドによって決まる。前記IPヘッダ検査合計および全長は、好ましくはハードウェア内で計算されることに留意する必要がある。前記UDPヘッダ部分は、UDPソースポートと、ソフトウェア内で決定されるUDP宛先部分と、ハードウェア内で計算されるUDPメッセージ長およびUDP検査合計とを含む。
【００２２】
IPセッションが確立され、かつ、前記IPセッションの着信パケットごとに再利用される場合、前記部分的なヘッダ情報は、前記IPセッションごとに一回セットアップされる。従来のネットワークソフトウェアドライバにおいてなされているようなスクラッチから各IPパケットを生成する代わりに、前記データバッファは、単に送信バッファ記述子と互いにリンクされなければならない。部分的なヘッダデータバッファが形成(construct)された後、前記ソフトウェアは、単に前記部分的なヘッダデータバッファをリンクするだけで変更することはしない。
【００２３】
図３を再び参照すると、一実施形態においてルーティングテーブル４５は、前記部分的なヘッダポインタを決定するためのインデックスとして、VCまたはCIDフィールドのような前記AAL2/AAL5着信パケットのフィールドを用いる。新たなセッションがセットアップされる場合、前記部分的なヘッダは、前記部分的なヘッダに対するポインタと同様に形成される必要がある。前記ポインタ情報は、ルーディングテーブル４５に付加される。
【００２４】
図６は、本発明の一実施形態の前記リンクされたデータバッファを示す図である。各パケットが受信されると、部分的なヘッダポインタを決定するためにルーティングテーブル内で前記着信パケットのフィールドが検査される。部分的なヘッダポインタが存在する場合、このポインタは前記パケットに対する第１のバッファ記述子として付加される。部分的なヘッダポインタが存在しない場合、前記VC(AAL5パケットについて)またはVCおよびCID(AAL2パケットについて)は、新たなセッションを示し、かつ、前記ソフトウェアユニットは、前記部分的なヘッダ情報を構築する。前記部分的なヘッダ情報は、異なるプロトコルについてソースおよび宛先を示す。前記部分的なヘッダは、前記バッファ内に記憶される。また、このバッファ位置に対するポインタも生成され、前記VCまたはVCおよびCIDに関連付けられた前記ルーティングテーブル４５に付加される。１つのセッションについて受信される各AAL2/AAL5パケットは、同一の部分的なヘッダデータを指し示すそれの第１のバッファ記述子を有することに留意する必要がある。パケットの他のバッファ記述子は、前記AAL2/AAL5パケットが記憶されたバッファ位置を指し示す。
【００２５】
各AAL2/AAL5パケットに対して、前記リンクされたリストは、前記パケットに対するポインタと同様に、保護された(covered)前記部分的なヘッダ情報に対するポインタを含む。前記ハードウェアは、前記部分的なヘッダ情報および前記パケットに対するポインタを取得するために、ハードウェア読み出しポインタを用いる。前記リンクリストデータバッファ４２は、先入れ先出し方式で前記着信パケットを転送する。
【００２６】
図７は、付加された長さ情報とともに前記AAL2/AAL5パケットを示す。前記付加された長さ情報は、前記AAL ATM再組立処理で決定される。この長さ情報を前記パケットに付加することにより、前記ハードウェアユニット５０の演算を単純化できる。他の実施形態では、前記ソフトウェアユニットまたはハードウェアユニット自体が前記長さを計算するが、前記再組立ユニットで前記長さを付加するのが最も簡単であることに留意する必要がある。
【００２７】
図８は、本発明のシステムの一実施形態のハードウェアユニットの一実施形態を示す図である。前記ハードウェアユニットは、前記着信パケットを、一実施形態では付加されたパケット長さとともに前記AAL2/AAL5パケットを受信する。パケット長さ決定ユニット６２は、前記着信パケットから前記パケット長さを分ける。前記AAL2/AAL5パケット長情報は、前記異なるプロトコルについての前記長さフィールドを計算するために用いられる。この実施形態では、前記UDPプロトコル、IPプロトコルおよびイーサネット(登録商標)プロトコルが用いられる。前記部分的なヘッダは、UDPヘッダハードウェアユニット６４に供給される部分的なUDPヘッダと、IPヘッダハードウェアユニット６６に供給される部分的なIPヘッダと、イーサネット(登録商標)ヘッダハードウェアインサートユニット６８に供給される部分的なイーサネット(登録商標)ヘッダとを含む。前記UDPヘッダハードウェア挿入は、UDPパケット長挿入およびUDPパケット検査合計挿入を含む。前記UDPパケット長は、前記AAL2/AAL5パケット長に一定の前記UDPヘッダ長を付加することにより計算できる。前記UDPパケット検査合計は、前記ヘッダおよび前記ペイロードを含む前記UDPパケットの検査合計であり、この例では前記AAL2/AAL5パケットとなる。前記IPヘッダハードウェアユニット６６はIPパケット長を決定し、この例では、組合されたIPヘッダとUDPヘッダ長さの一定数に付加された前記AAL2/AAL5パケット長となる。前記IPヘッダ検査合計は、前記ペイロードを除く前記IPヘッダ上の検査合計であり、前記ユニット６６が前記ユニット６４の計算に依存せず、並列に演算できることを意味する。前記イーサネット(登録商標)ヘッダハードウェアユニット６８は、前記イーサネット(登録商標)ペイロード長を決定する。上述したように、１５３６バイトまたはそれより少ないペイロードについて、前記イーサネット(登録商標)タイプフィールドは前記イーサネット(登録商標)ペイロード長を含み、この例では、前記IPパケット長と同一となる。前記ユニット６４、６６および６８の出力は、完全(complete)ヘッダを含む。前記AAL2/AAL5パケットとともに前記ヘッダ情報は、前記イーサネット(登録商標)フレーム巡回冗長検査(CRC)ユニット７０に供給される。前記イーサネット(登録商標)フレーム巡回冗長検査ユニット７０の演算は、前記ヘッダ挿入ユニット６４、６６および６８の演算に依存し、前記CRCを計算する前にこれらのユニットがそれを演算するのを待機しなければならないことに留意する必要がある。
【００２８】
ｋビット入力に対する巡回冗長検査は、ｋ＋ｎビットからなる結果フレームが所定数で厳密に割り切れるように、フレーム検査シーケンスとして知られるｎビットのシーケンスを決定する。この数は、除数多項式、P(X)によって表される。一実施形態において、前記CRC論理は、シフトレジスタに入力される排他的ORゲートからなる除算回路として実行される。前記排他的ORゲート配列(arrangement)は、前記除数多項式によって決定される。
【００２９】
図９は、本発明の一実施形態のハードウェアユニット７２の一実施形態の詳細を示す。この実施形態では、前記UDPパケット長は、前記UDPヘッダ長定数に前記着信パケット長を加算する加算器７４によって計算されることに留意する必要がある。UDP検査合計計算ユニット７６は、完全UDPヘッダを生成するために挿入される前記UDP検査合計値を計算するために、前記着信パケットとともに前記更新済みUDPヘッダ情報を用いる。加算器７８は、前記IPパケット長を生成するために、組合された前記IPヘッダおよびUDPヘッダ長の一定数(UDP header length constant)に前記着信パケット長を加算する。また、前記IPパケット長は、前記部分的なイーサネット(登録商標)ヘッダに挿入される前記イーサネット(登録商標)ペイロード長であることに留意する必要がある。IP検査合計ユニット８０は、前記IPパケット長が挿入された後、前記部分的なIPヘッダを用いて前記IPヘッダの検査合計を決定する。上述したように、前記加算器７８の出力は、前記IPヘッダハードウェアインサートユニットおよび前記イーサネット(登録商標)ヘッダハードウェア挿入ユニットの両方で使用される。代わりに、並列(multiple)加算器ユニットを用いることもできる。
【００３０】
図８および図９の実施形態は、単にハードウェアユニットの一例に過ぎず、ハードウェアユニットを実行するためいくつもの配列が使用可能であることに留意する必要がある。好ましい実施形態では、前記ハードウェアユニットは、フィールドプログラマブルゲートアレイ(field programmable gate array)で実施される。代わりに、前記ハードウェアユニットは、特定用途向け集積回路(ASIC : application specific integrated circuit)のような他のあらゆる方法によって実施可能である。
【００３１】
通常の当業者であれば、本発明の精神または特徴から逸脱しない限り、他の特定の形式で本発明を実行可能であることが理解できるであろう。それゆえに、現在開示された実施形態は、すべての点で例示であり限定されるものではないと考慮される。本発明の範囲は、先の記述よりむしろ添付の特許請求の範囲によって説明され、それらと同等の手段および範囲内でのあらゆる変更はここに包含されることが意図される。
【図面の簡単な説明】
【００３２】
【図１】本発明のシステムを用いることができるUMTS無線ネットワークを示す。
【図２】本発明の一実施形態のAAL2／AAL5パケット化データのカプセル化を示す図である。
【図３】ハードウェアユニットおよびソフトウェアユニットを用いる本発明の一実施形態を示す図である。
【図４】本発明の一実施形態のシステムにおけるイーサネット(登録商標)フレームのカプセル化に寄与するハードウェアおよびソフトウェアユニットを示す図である。
【図５】本発明の一実施形態に用いられるヘッダ情報を示す図である。
【図６】本発明の一実施形態に用いられる、リンクされたデータバッファを示す図である。
【図７】本発明のシステムの一実施形態で用いられる付加長さ値とAAL2／AAL5パケットとを示す図である。
【図８】本発明のシステムの一実施形態のハードウェアユニットを示す図である。
【図９】本発明のシステムのハードウェアユニットの一実施形態の詳細を示す図である。
【符号の説明】
【００３３】
２２      コアネットワーク
２４      無線アクセスネットワーク
２６、２８      無線装置
３０      ノードＢ
３２      無線ネットワークコントローラ
３４      ネットワークインタフェース
４０      ATM再組立ユニット
４２      ソフトウェアユニット
４４      リンクされたデータバッファ
４６      メモリ
５０      ハードウェアユニット
５２      ＩＰスイッチ
６２      パケット長さ決定ユニット
６４      ＵＤＰヘッダハードウェアユニット
６６      ＩＰヘッダハードウェアユニット
【図１】
2005506738.tif 000003
【図２】
2005506738.tif 000004
【図３】
2005506738.tif 000005
【図４】
2005506738.tif 000006
【図５】
2005506738.tif 000007
【図６】
2005506738.tif 000008
【図７】
2005506738.tif 000009
【図８】
2005506738.tif 000010
【図９】
2005506738.tif 000011
【国際公開パンフレット】
2005506738.tif 000012
2005506738.tif 000013
2005506738.tif 000014
2005506738.tif 000015
2005506738.tif 000016
2005506738.tif 000017
2005506738.tif 000018
2005506738.tif 000019
2005506738.tif 000020
2005506738.tif 000021
2005506738.tif 000022
2005506738.tif 000023
2005506738.tif 000024
2005506738.tif 000025
2005506738.tif 000026
2005506738.tif 000027
2005506738.tif 000028
2005506738.tif 000029
2005506738.tif 000030
2005506738.tif 000031
2005506738.tif 000032
2005506738.tif 000033
2005506738.tif 000034
2005506738.tif 000035
2005506738.tif 000036
2005506738.tif 000037
2005506738.tif 000038
【国際公開パンフレット（コレクトバージョン）】
2005506738.tif 000039
2005506738.tif 000040
2005506738.tif 000041
2005506738.tif 000042
2005506738.tif 000043
2005506738.tif 000044
2005506738.tif 000045
2005506738.tif 000046
2005506738.tif 000047
2005506738.tif 000048
2005506738.tif 000049
2005506738.tif 000050
2005506738.tif 000051
2005506738.tif 000052
2005506738.tif 000053
2005506738.tif 000054
2005506738.tif 000055
2005506738.tif 000056
2005506738.tif 000057
2005506738.tif 000058
2005506738.tif 000059
2005506738.tif 000060
2005506738.tif 000061
2005506738.tif 000062
2005506738.tif 000063
2005506738.tif 000064
2005506738.tif 000065
【国際調査報告】
2005506738.tif 000066