JP2004282748A - パケット分配装置およびその分配方法 - Google Patents

パケット分配装置およびその分配方法 Download PDF

Info

Publication number
JP2004282748A
JP2004282748A JP2004070183A JP2004070183A JP2004282748A JP 2004282748 A JP2004282748 A JP 2004282748A JP 2004070183 A JP2004070183 A JP 2004070183A JP 2004070183 A JP2004070183 A JP 2004070183A JP 2004282748 A JP2004282748 A JP 2004282748A
Authority
JP
Japan
Prior art keywords
fragment
packet
lookup
received packet
index
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.)
Granted
Application number
JP2004070183A
Other languages
English (en)
Other versions
JP3911273B2 (ja
Inventor
Shunzui Ri
濬瑞 李
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2004282748A publication Critical patent/JP2004282748A/ja
Application granted granted Critical
Publication of JP3911273B2 publication Critical patent/JP3911273B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

【課題】 ネットワークからパケットを受信してリアセンブリせずに迅速に複数のプロトコルプロセッサに分配する装置およびその方法を提供する。
【解決手段】 フラグメントされたパケットが一番目フラグメントであるかを判断する段階、パケットが一番目フラグメントの場合は、パケットのトンネルIDおよびフラグメントをルックアップして、その遂行結果をフラグメントルックアップテーブルの各目録と対照して一致する目録があるかを判断する段階、パケットのトンネルIDと対応するインデックスをトンネルIDルックアップテーブルから探して、フラグメントルックアップ遂行結果と一致する目録がフラグメントルックアップテーブルにある場合は、フラグメントルックアップテーブルの一致する目録にインデックスを書き込む段階、およびインデックスをタグとして付けたパケットをプロトコルプロセッサに転送する段階とを備える。
【選択図】 図3

Description

本発明は、パケット分配装置およびその分配方法に関し、さらに詳しくは、受信されたパケットがフラグメントされたパケットの場合、パケットリアセンブリをしないでパケットを複数のプロトコルプロセッサに分配することができるフォワーディングエンジンを備えるパケット分配装置およびその分配方法に関する。
GTP(GPRS(General packet radio service) Tunneling Protocol)、L2TP(Layer 2 Tunneling Protocol)、Mobile IPは、IP基盤のトンネリングプロトコルである。IP基盤のトンネリングとは、通信ネットワークでデータをIPパケット化する際、各ネットワークの規約によってパケットをカプセル化してセキュリティを高めるための技術である。トンネリングによって、各パケットは、カプセル化され、インターネット上に形成された目に見えない通路(これを"トンネル"と称する)を通して転送される。各トンネルは、他のトンネルとの区別のために固有のIDを有し、これはトンネルIDと呼ばれる。
このようなトンネルの終端では、前述したように転送された数多くのパケットをフォワーディングエンジンを用いて同時に処理する。通常、多数のパケットを同時に処理するため、パケット処理のためのプロトコルプロセッサを複数個採用する方法が適用されている。複数のプロトコルプロセッサを採用した場合、フォワーディングエンジンは、受信された多数のパケットをトンネルIDによって分類し、各プロトコルプロセッサに分配する。
一般に、ネットワーク上のデータ通信において、各データはパケット化されてパケット単位で転送される。ネットワークによってパケットのサイズは規格化されていて、規格化されたパケットよりも大サイズのIPデータグラムの場合、複数のパケット(以下、"フラグメント"と称する)に分けられて転送される。一つのIPデータグラムからフラグメント化されたパケットは、全てがそれぞれIPヘッダを含んでいるが、トンネルIDが含まれているGTPヘッダ、L2TPヘッダまたは内部IPヘッダ(Mobile IPの場合)などは、一番目のフラグメントにだけ含まれている。従って、二番目以降のフラグメントの場合、トンネルIDをルックアップできないと、特別な処理過程がない場合には分配が不可能になる。
従って、従来の技術では、フラグメントされたパケットをリアセンブリし、リアセンブリされたパケットのトンネルIDをルックアップして、これによってパケットを分配する。
図1は、従来のフォワーディングエンジンのパケット分配装置の第1例を示すブロック図である。図1に示すように、フォワーディングエンジンのパケット分配装置100は、トンネルIDルックアップ装置101、トンネルIDルックアップテーブル貯蔵部103、受信部105、送信部107、および従属インタフェース109を含む。トンネルIDルックアップ装置101は、リアセンブリされたパケットのトンネルIDをルックアップし、トンネルIDルックアップテーブル貯蔵部103に保存されたトンネルIDルックアップテーブルからルックアップ遂行結果であるトンネルIDに対応するインデックスを探してパケットにタグとして付けて、複数個のプロトコルプロセッサ1に分配する。このような従来のフォワーディングエンジンのパケット分配装置100は、パケットのリアセンブリのためのハードウェアを有しないため、フラグメントされたパケットの分配のため、上位の呼設定プロセッサ(図示せず)においてパケットをリアセンブリした後、リアセンブリされたパケットについてトンネルIDをルックアップして、プロトコルプロセッサ1にパケットを分配する方法を適用している。
しかし、システムアーキテクチュア上、呼設定プロセッサ(図示せず)の主機能は呼設定および管理である。したがって、呼設定プロセッサ(図示せず)がパケットリアセンブリまで行なうと、呼設定プロセッサ(図示せず)の呼管理性能が低下するおそれがあるため、システム全体の運用が非効率的になる問題がある。
図2は、従来のフォワーディングエンジンのパケット分配装置の第2例を示すブロック図である。図2に示すとおり、フォワーディングエンジンのパケット分配装置200は、第1例のパケット分配装置100が備える構成を全て含み、IPリアセンブリ装置211、フラグメントルックアップテーブル貯蔵部213、およびフラグメントバッファ215をさらに含む。
IPリアセンブリ装置211は、フラグメント化されたパケットを受信すると、フラグメントルックアップテーブル貯蔵部213に保存されたフラグメントルックアップテーブルとフラグメントバッファ215を用いて、各フラグメントを一つのIPパケットにリアセンブリする。次に、リアセンブリされたIPパケットについて、トンネルIDルックアップ装置201がトンネルIDをルックアップし、これによってパケットをプロトコルプロセッサ2に分配する。
このようにハードウェア的にIPパケットをリアセンブリすることは、そのハードウェアを実現することが難しい。また、通常、IPリアセンブリがソフトウェア的に具現されている点を考慮すると、プロセッサのリソースおよびコストの側面においても問題が発生する。
本発明は、前述した問題を解決するために案出されたもので、その目的は、受信されたパケットがフラグメントされたパケットの場合、パケットリアセンブリをしなくてもパケットを複数のプロトコルプロセッサに分配して、パケットリアセンブリのためにシステムに負荷を掛けないでパケットを迅速に経済的に分配することができるパケット分配装置およびその分配方法を提供するところにある。
前述した目的を達成するために、ネットワークからパケットを受信して複数のプロトコルプロセッサに分配するパケット分配方法は、受信された前記パケットがフラグメントされたパケットの場合は、受信された前記パケットが一番目フラグメントであるかを判断する段階、受信された前記パケットが一番目フラグメントの場合は、受信された前記パケットのトンネルIDのルックアップおよびフラグメントのルックアップを行なって、前記フラグメントルックアップ遂行結果を、受信されたパケットに対するフラグメントルックアップを行なった結果が書き込まれるフラグメントルックアップテーブルの各目録と対照して一致する目録があるかを判断する段階と、受信された前記パケットのトンネルIDに対応するインデックスをトンネルIDルックアップテーブルから探して、前記フラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにある場合には、前記フラグメントルックアップテーブルの一致する目録にインデックスを書き込む段階、および前記インデックスを受信された前記パケットにタグとして付けて、受信された前記パケットをプロトコルプロセッサに転送する段階とを含む。
前記フラグメントルックアップテーブルにインデックスを書き込む段階は、前記フラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにない場合は、前記フラグメントルックアップ遂行結果と前記インデックスを前記フラグメントルックアップテーブルに新たに書き込むことが望ましい。
前記パケット分配方法は、受信された前記パケットが一番目フラグメントでない場合には、受信された前記パケットのフラグメントルックアップを行って、フラグメントルックアップ遂行結果をフラグメントルックアップテーブルの各目録と対照して一致する目録があるかを判断する段階、受信された前記パケットのフラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにない場合は、受信された前記パケットのフラグメントルックアップ遂行結果を前記フラグメントルックアップテーブルに新たに書き込む段階、および受信された前記パケットをフラグメントバッファに保存する段階をさらに含む。
前記パケットをプロトコルプロセッサに転送する段階は、受信された前記パケットが一番目フラグメントであり、前記パケットのルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにある場合は、既に受信され前記フラグメントバッファに保存されたパケットに前記インデックスをタグとして付けて前記プロトコルプロセッサに転送することが望ましい。
前記パケット分配方法は、受信された前記パケットのフラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにある場合は、前記一致する目録内にトンネルIDルックアップ遂行結果に対応するインデックスが書き込まれているかを判断する段階、および前記目録内にインデックスがある場合は、受信された前記パケットに前記インデックスをタグとして付けて、受信された前記パケットをプロトコルプロセッサに転送する段階をさらに含む。
前記パケット分配方法は、前記目録内にインデックスがない場合は、受信された前記パケットをフラグメントバッファに保存する段階をさらに含むことが望ましい。
一方、本発明に係る複数のプロトコルプロセッサにパケットを分配するパケット分配装置は、ネットワークからパケットを受信する受信部、受信されたパケットに対するフラグメントルックアップを行なった結果が書き込まれるフラグメントルックアップテーブルを保存するフラグメントルックアップテーブル貯蔵部、受信された前記パケットについてフラグメントルックアップを行なった結果をフラグメントルックアップテーブルの各目録と対照して一致する目録があるかを判断するフラグメントルックアップ装置、受信されたパケットのトンネルIDと対応するインデックスを書き込んだトンネルIDルックアップテーブルを保存するトンネルIDルックアップテーブル貯蔵部、受信された前記パケットが一番目フラグメントの場合、受信された前記パケットのトンネルIDのルックアップを行なった結果と対応するインデックスを前記トンネルIDルックアップテーブルから探して、受信された前記パケットにタグとして付けるトンネルIDルックアップ装置、および前記インデックスをタグとして付けた前記パケットを前記プロトコルプロセッサに転送する従属インタフェースを含む。
前記フラグメントルックアップ装置は、前記フラグメントルックアップテーブルに前記フラグメントルックアップを行なった結果と一致する目録がない場合、受信された前記パケットが一番目フラグメントの場合は前記フラグメントルックアップを行なった結果と前記インデックスを前記フラグメントルックアップテーブルに新たに書き込み、受信された前記パケットが一番目フラグメントでない場合は前記フラグメントルックアップを行なった結果を前記フラグメントルックアップテーブルに新たに書き込むことが望ましい。
前記パケット分配装置は、前記フラグメントルックアップテーブルに前記フラグメントルックアップを行なった結果と一致し前記インデックスを含む目録がない場合、受信された前記パケットが一番目フラグメントでない場合には、受信された前記パケットを保存するフラグメントバッファをさらに含むことが望ましい。
前記フラグメントルックアップ装置は、前記フラグメントルックアップテーブルに前記フラグメントルックアップを行なった結果と一致し前記インデックスを含む目録がある場合は、受信された前記パケットに前記インデックスをタグとして付けて前記プロトコルプロセッサに転送することが望ましい。
前記フラグメントルックアップ装置は、受信された前記パケットが一番目フラグメントの場合、前記フラグメントルックアップを行なった結果と一致する目録が前記フラグメントルックアップテーブルにある場合は、前記フラグメントバッファに保存された二番目以降のフラグメントであるパケットに前記インデックスをタグとして付けて前記従属インタフェースを通してプロトコルプロセッサに転送することが望ましい。
本発明に係るパケット分配装置およびそのパケット分配方法によれば、パケット分配のためにフラグメントされたパケットをリアセンブリする必要がなく、パケットリアセンブリのためのリソースと時間の無駄遣いを無くして、効率よくパケットを分配して複数のプロトコルプロセッサに分配することができる。
以下、添付した図面に基づき本発明を詳述する。
図3は、本発明に係るパケット分配装置300を示すブロック図である。
パケット分配装置300は、フラグメントルックアップ装置311、トンネルIDルックアップ装置301、フラグメントルックアップテーブル貯蔵部313、フラグメントバッファ315、トンネルIDルックアップテーブル貯蔵部303、受信部305、送信部307および従属インタフェース309を含む。
パケット分配装置300は、プロトコルプロセッサ3と従属インタフェース309を通してパケットを送受信する。
受信部305は、ネットワークからパケットを受信する。ここで、ネットワークはUMTS(Universal Mobile Telecommunication System)ネットワークを例として説明したが、これに限られない。
パケット分配装置300は、現在受信されたパケットのIPヘッダを用いて、パケットがフラグメントされたパケットであるかを判断する。受信されたパケットがフラグメントされていないパケットの場合、トンネルIDルックアップ装置301は、受信されたパケットのトンネルIDをルックアップ(Lookup)し、トンネルIDルックアップテーブル貯蔵部303にあるトンネルIDルックアップテーブルを検索して該当するインデックスを探し、受信されたパケットにタグとして付けて従属インタフェース309を通してプロトコルプロセッサ3に転送する。
現在受信されたパケットがフラグメントされたパケットの場合は、フラグメントルックアップ装置311は、現在のパケットが一番目フラグメントであるかを判断する。
受信されたパケットが一番目フラグメントである場合、トンネルIDルックアップ装置301は、受信された現在のパケットのトンネルIDをルックアップし、トンネルIDルックアップテーブル貯蔵部303に保存されたトンネルIDルックアップテーブルを検索して該当するインデックスを探して現在のパケットにタグとして付けて、従属インタフェース309を通して現在のパケットをプロトコルプロセッサ3に分配する。
現在のパケットが一番目フラグメントである場合、フラグメントルックアップ装置311は、パケットのフラグメントIPヘッダをルックアップし(以下、"フラグメントルックアップ"と称する)、フラグメントルックアップの遂行結果、例えば、出発地アドレス(SA)、到着地アドレス(DA)、プロトコルID(PID)、フラグメントID(ID)をフラグメントルックアップテーブルの各目録と対照することによって、一致する目録があるかを判断する。
フラグメントルックアップテーブルに一致する目録がない場合、フラグメントルックアップ装置311は、前記フラグメントルックアップの遂行結果をフラグメントルックアップテーブルに新たな目録として書き込み、また、該当インデックスをフラグメントルックアップテーブル目録の該当位置に書き込む。一方、一致する目録がある場合、フラグメントルックアップテーブルの一致する該当目録に現在のパケットのインデックスを書き込んで、フラグメントルックアップテーブルをアップデートする。
図4は、フラグメントルックアップテーブルの一例を示す。図4において、"IV"はインデックス値が有効であるかを示す。すなわち、"IV"値が"1"なら該当目録のインデックス値が有効であり、一番目フラグメントが既に受信されたことを示す。逆に"IV"値が"0"なら(以下、"待機中"と称する)、一番目フラグメントが受信される前に、二番目かそれ以降のフラグメントが先に受信された場合であって、該当目録内にインデックス値が有効に存在しないことを示す。"IV"値が"0"の時は、フラグメントルックアップ遂行結果であるSA値、DA値、PID値およびID値がフラグメントルックアップテーブルに書き込まれており、既に受信されたフラグメントがフラグメントバッファ315に保存されている。
一方、図4において、"Time Left"は、フラグメントバッファ315がルックアップテーブルの該当目録を有効に維持すべき時間を示す。最大維持時間は、システムによって適切に調節できる。ここでは、例えば、25秒と仮定する。従って、最大維持時間(ここでは、25秒)の間にフラグメントルックアップテーブルの該当目録が前記フラグメントルックアップの遂行結果と一致してアクセスされなければ、該当目録は削除される。図4の一番目の目録を参照すれば、該当目録が最後にアクセスされてから13秒が経過し、それ以降の12秒間に該当目録がアクセスされなければ、該当目録はフラグメントルックアップテーブルから削除される。従って、該当フラグメントの転送が全て完了したり、転送中に一部でも流失した場合、有効でない目録によってフラグメントルックアップテーブル貯蔵部313のリソースが浪費されることを抑えられる。
受信されたパケットのルックアップ遂行結果と一致する目録がフラグメントルックアップテーブルにない場合、受信された現在のパケットが最初に到着した場合に該当する。
一方、受信された現在のパケットが一番目フラグメントでない場合は、前述したようにパケットのトンネルIDルックアップは不可能である。したがって、フラグメントルックアップ装置311は、フラグメントのルックアップを行ない、フラグメントルックアップの遂行結果をフラグメントルックアップテーブルの目録と対照して一致する目録があるのかを判断する。
一致する目録がない場合、フラグメントルックアップ装置311は、フラグメントルックアップ遂行結果をフラグメントルックアップテーブルに新たな目録として書き込み、受信されたパケットをフラグメントバッファ315に保存し、そのアドレス値をフラグメントルックアップテーブルのポインター項目に書き込む。
フラグメントルックアップテーブルに一致する目録がある場合は、フラグメントルックアップ装置311は、目録内に有効な該当インデックスが存在するかを判断する。該当インデックスがある場合、フラグメントルックアップ装置311は、該当インデックスを現在のパケットにタグとして付けて従属インタフェース309を通してプロトコルプロセッサ3に転送する。しかし、該当インデックスがない場合は、フラグメントルックアップ装置311は、現在のパケットをフラグメントバッファ315に保存し、その保存されたアドレス値を目録にあるポインター値にリンクさせる。
パケット受信時、既にフラグメントバッファ315に保存され待機中のパケットがある時は、現在のパケットが一番目フラグメントの場合は、フラグメントルックアップ装置311は、現在のパケットを転送した後、待機中のパケットにも現在のパケットのインデックスをタグとして付けてプロトコルプロセッサ3に転送する。しかし、現在のパケットが一番目パケットでない場合、フラグメントルックアップ装置311は、現在のパケットをフラグメントバッファ315に保存し、その保存されたアドレス値を目録にあるポインター値にリンクさせる。従って、一番目パケットが受信された後、フラグメントバッファ315で待機中の二番目以降の全てのパケットがフォワーディングできる。
図5は、本発明に係るフォワーディングエンジンのパケット分配装置の動作を示すフローチャート図である。以下、図5を参照して、本発明に係るパケット分配装置において、IPリアンブリをしないでIPフラグメントパケットを分配する方法を説明する。
パケット分配装置300は、ネットワークからパケットを受信する(S500)と、現在受信されたパケットがフラグメントされたパケットであるか否かを判断する(S503)。受信されたパケットがフラグメントされていないパケットである場合、パケット分配装置300は、受信されたパケットのトンネルIDをルックアップし(S517)、トンネルIDルックアップテーブルを検索して該当するインデックスを探し、受信されたパケットにタグとして付けてプロトコルプロセッサ3にフォワーディングする(S529)。
一方、現在受信されたパケットがフラグメントされたパケットである場合、パケット分配装置300は、現在のパケットが一番目フラグメントであるかを判断する(S505)。
現在のパケットが一番目パケットである場合、パケット分配装置300は、現在のパケットについてトンネルIDルックアップを行ない(S507)、フラグメントIDルックアップを行なう(S509)。次いで、パケット分配装置300は、フラグメントIDルックアップ遂行結果をフラグメントルックアップテーブルの各目録と対照することによって、一致する目録があるかを判断する(S511)。
受信されたパケットのフラグメントIDルックアップ遂行結果と一致する目録がフラグメントルックアップテーブルにない場合は、パケット分配装置300は、現在のパケットのフラグメントIDルックアップの遂行結果をフラグメントルックアップテーブルに新たな目録として書き込み、トンネルIDテーブルを検索して現在のパケットのトンネルIDに該当するインデックスを探す(S513)。次いで、パケット分配装置300は、検索したインデックスを一番目フラグメントである現在のパケットに付けてパケットをプロットコルプロセッサ3にフォワーディングする(S529)。
受信されたパケットのフラグメントIDルックアップの遂行結果と一致する目録がフラグメントルックアップテーブルにある場合は、パケット分配装置300は、現在のパケットのトンネルIDテーブル検索によってインデックス値を探してフラグメントルックアップテーブルをアップデートし(S515)、インデックスを現在のパケットに付けてパケットをプロトコルプロセッサ3にフォワーディングする(S529)。
一方、現在のパケットが一番目フラグメントでない場合は、パケット分配装置300は、現在のパケットについてフラグメントIDルックアップを行い(S519)、フラグメントルックアップテーブルに一致する目録があるかを判断する(S521)。一致する目録がない場合は、パケット分配装置300は、フラグメントIDルックアップの遂行結果をフラグメントルックアップテーブルに新たな目録として書き込み(S523)、現在のパケットをフラグメントバッファに保存する(S527)。
フラグメントルックアップテーブルに現在のパケットのフラグメントIDルックアップ結果と一致する目録がある場合は、パケット分配装置300は、該当目録のインデックスが有効に存在するのかを判断する(S525)。インデックスが目録にある場合は、パケット分配装置300は、インデックスを現在のパケットにタグとして付けて、パケットをプロトコルプロセッサ3にフォワーディングする(S529)。しかし、インデックスが目録にない場合には、現在のパケットをフラグメントバッファに保存する(S527)。
前述したように、本発明に係るパケット分配装置とそのパケット分配方法によれば、トンネルIDを含まず、インデックスが見つからない二番目以降のフラグメントであるパケットについては、一番目パケットが受信されるまでフラグメントバッファに一時保存し、一番目パケット受信後に該当するトンネルIDをルックアップし、そのトンネルIDに該当するインデックスを探してパケットにタグとして付けた後、プロトコルプロセッサに分配する。従って、パケット分配装置において、フラグメントされたパケットをリアセンブリせずにパケットを複数のプロトコルプロセッサに分配することができる。
以上、本発明の望ましい実施形態について説明したが、本発明は前述した特定の実施形態に限らず、請求の範囲に記載する本発明の要旨を逸脱しない限り、本発明の属する技術分野において通常の知識を持つ者ならばだれでも多様な変形実施が可能なことは勿論、そのような変更は請求の範囲の記載範囲内にある。
本発明に係るパケット分配装置とそのパケット分配方法は、IP基盤トンネリングプロトコルによる通信ネットワークにおいて、パケットを分配するフォワーディングエンジンに採用して円滑な通信を行うのに用いることができる。
従来のパケット分配装置を示すブロック図である。 従来の他のパケット分配装置を示すブロック図である。 本発明に係るパケット分配装置を示すブロック図である。 フラグメントルックアップテーブルの一例を示す図である。 本発明に係るパケット分配装置の動作を示すフローチャート図である。
符号の説明
300 パケット分配装置
311 フラグメントルックアップ装置
301 トンネルIDルックアップ装置
313 フラグメントルックアップテーブル貯蔵部
315 フラグメントバッファ
303 トンネルIDルックアップテーブル貯蔵部
305 受信部
307 送信部
309 従属インタフェース
3 プロトコルプロセッサ

Claims (11)

  1. ネットワークからパケットを受信して複数のプロトコルプロセッサに分配するパケット分配方法において、
    受信された前記パケットがフラグメントされたパケットの場合は、受信された前記パケットが一番目フラグメントであるかを判断する段階と、
    受信された前記パケットが一番目フラグメントの場合は、受信された前記パケットのトンネルIDルックアップおよびフラグメントルックアップを行なって、前記フラグメントルックアップ遂行結果を、受信されたパケットに対するフラグメントルックアップを行なった結果が書き込まれるフラグメントルックアップテーブルの各目録と対照して一致する目録があるかを判断する段階と、
    受信された前記パケットのトンネルIDと対応するインデックスをトンネルIDルックアップテーブルから探して、前記フラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにある場合は、前記フラグメントルックアップテーブルの一致する目録にインデックスを書き込む段階と、
    前記インデックスを受信された前記パケットにタグとして付け、受信された前記パケットを前記プロトコルプロセッサに転送する段階と、を含むことを特徴とするパケット分配方法。
  2. 前記フラグメントルックアップテーブルにインデックスを書き込む段階は、前記フラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにない場合は、前記フラグメントルックアップ遂行結果と前記インデックスを前記フラグメントルックアップテーブルに新たに書き込むことを特徴とする請求項1に記載のパケット分配方法。
  3. 受信された前記パケットが一番目フラグメントでない場合には、
    受信された前記パケットのフラグメントルックアップを行なって、フラグメントルックアップ遂行結果をフラグメントルックアップテーブルの各目録と対照して一致する目録があるかを判断する段階と、
    受信された前記パケットのフラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにない場合は、受信された前記パケットのフラグメントルックアップ遂行結果を前記フラグメントルックアップテーブルに新たに書き込む段階と、
    受信された前記パケットをフラグメントバッファに保存する段階と、をさらに含むことを特徴とする請求項1に記載のパケット分配方法。
  4. 前記パケットをプロトコルプロセッサに転送する段階は、受信された前記パケットが一番目フラグメントであり、前記パケットのフラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにある場合には、既に受信され前記フラグメントバッファに保存されたパケットに前記インデックスをタグとして付けて前記プロトコルプロセッサに転送することを特徴とする請求項3に記載のパケット分配方法。
  5. 受信された前記パケットのフラグメントルックアップ遂行結果と一致する目録が前記フラグメントルックアップテーブルにある場合は、前記一致する目録内にトンネルIDルックアップ遂行結果に対応するインデックスが書き込まれているのかを判断する段階と、
    前記目録内にインデックスがある場合は、受信された前記パケットに前記インデックスをタグとして付けて、受信された前記パケットを前記プロトコルプロセッサに転送する段階と、をさらに含むことを特徴とする請求項3に記載のパケット分配方法。
  6. 前記目録内にインデックスがない場合には、受信された前記パケットをフラグメントバッファに保存する段階をさらに含むことを特徴とする請求項5に記載のパケット分配方法。
  7. 複数のプロトコルプロセッサにパケットを分配するパケット分配装置において、
    ネットワークからパケットを受信する受信部と、
    受信されたパケットに対するフラグメントルックアップを行なった結果が書き込まれるフラグメントルックアップテーブルを保存するフラグメントルックアップテーブル貯蔵部と、
    受信された前記パケットについてフラグメントルックアップを行なった結果を前記フラグメントルックアップテーブルの各目録と対照して、一致する目録があるかを判断するフラグメントルックアップ装置と、
    受信されたパケットのトンネルIDと対応するインデックスを書き込んだトンネルIDルックアップテーブルを保存するトンネルIDルックアップテーブル貯蔵部と、
    受信された前記パケットが一番目フラグメントの場合に、受信された前記パケットのトンネルIDのルックアップを行なった結果と対応するインデックスを前記トンネルIDルックアップテーブルから探して、受信された前記パケットにタグとして付けるトンネルIDルックアップ装置と、
    前記インデックスをタグとして付けた前記パケットを前記プロトコルプロセッサに転送する従属インタフェースと、を含むことを特徴とするパケット分配装置。
  8. 前記フラグメントルックアップ装置は、前記フラグメントルックアップテーブルに前記フラグメントルックアップを行なった結果と一致する目録がない場合、受信された前記パケットが一番目フラグメントの場合は前記フラグメントルックアップを行なった結果と前記インデックスを前記フラグメントルックアップテーブルに新たに書き込み、受信された前記パケットが一番目フラグメントでない場合には前記フラグメントルックアップを行なった結果を前記フラグメントルックアップテーブルに新たに書き込むことを特徴とする請求項7に記載のパケット分配装置。
  9. 前記フラグメントルックアップテーブルに前記フラグメントルックアップを行なった結果と一致し前記インデックスを含む目録がない場合、受信された前記パケットが一番目フラグメントでない場合には、受信された前記パケットを保存するフラグメントバッファをさらに含むことを特徴とする請求項7に記載のパケット分配装置。
  10. 前記フラグメントルックアップ装置は、前記フラグメントルックアップテーブルに前記フラグメントルックアップを行なった結果と一致し前記インデックスを含む目録がある場合は、受信された前記パケットに前記インデックスをタグとして付けて前記プロトコルプロセッサに転送することを特徴とする請求項9に記載のパケット分配装置。
  11. 前記フラグメントルックアップ装置は、受信された前記パケットが一番目フラグメントの場合、前記フラグメントルックアップを行なった結果と一致する目録が前記フラグメントルックアップテーブルにある場合には、前記フラグメントバッファに保存された二番目以降のフラグメントであるパケットに前記インデックスをタグとして付けて前記従属インタフェースを通して前記プロトコルプロセッサに転送することを特徴とする請求項9に記載のパケット分配装置。
JP2004070183A 2003-03-12 2004-03-12 パケット分配装置およびその分配方法 Expired - Fee Related JP3911273B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0015539A KR100524035B1 (ko) 2003-03-12 2003-03-12 프래그먼트된 패킷의 ip 재조합없이, 프래그먼트된 패킷을 프로토콜 프로세서로 분배하는 패킷분배장치 및 그 분배방법

Publications (2)

Publication Number Publication Date
JP2004282748A true JP2004282748A (ja) 2004-10-07
JP3911273B2 JP3911273B2 (ja) 2007-05-09

Family

ID=33157261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004070183A Expired - Fee Related JP3911273B2 (ja) 2003-03-12 2004-03-12 パケット分配装置およびその分配方法

Country Status (4)

Country Link
US (1) US20040210669A1 (ja)
JP (1) JP3911273B2 (ja)
KR (1) KR100524035B1 (ja)
CN (1) CN1271833C (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060262808A1 (en) * 2005-04-21 2006-11-23 Victor Lin Methods and Systems for Fragmentation and Reassembly for IP Tunnels in Hardware Pipelines
CN1863158B (zh) * 2005-10-31 2010-04-21 华为技术有限公司 一种ip报文分片缓存及转发方法
KR100837704B1 (ko) * 2006-09-29 2008-06-13 한국전자통신연구원 진화된 umts 망 시스템에서의 데이터 전송 방법
US8711685B2 (en) * 2007-03-06 2014-04-29 Alphion Corporation System and method for data reconfiguration in an optical communication network
JP4422165B2 (ja) * 2007-03-29 2010-02-24 Necアクセステクニカ株式会社 画像通信システム及び画像通信方法
US7724776B2 (en) * 2007-10-30 2010-05-25 Telefonaktiebolaget L M Ericsson (Publ) Method and ingress node for handling fragmented datagrams in an IP network
US7715362B1 (en) * 2007-11-23 2010-05-11 Juniper Networks, Inc. Identification fragment handling
KR101476813B1 (ko) 2007-11-30 2014-12-29 삼성전자주식회사 패킷 중계 노드의 패킷 재조립 시스템 및 방법
US8243618B2 (en) 2010-04-26 2012-08-14 International Business Machines Corporation Steering fragmented IP packets using 5-tuple based rules
CN101860487A (zh) * 2010-05-28 2010-10-13 中兴通讯股份有限公司 互联网协议ip分片报文的转发方法及接口板
CN102624611B (zh) * 2011-12-31 2015-01-21 华为数字技术(成都)有限公司 报文分流方法、装置、处理器和网络设备
EP3032783A1 (en) 2014-12-11 2016-06-15 Hewlett-Packard Development Company, L.P. Fragmented packet processing resource determination

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453357B1 (en) * 1999-01-07 2002-09-17 Cisco Technology, Inc. Method and system for processing fragments and their out-of-order delivery during address translation
US7760737B2 (en) * 2000-11-30 2010-07-20 Audiocodes, Inc. Method for reordering and reassembling data packets in a network
US7363353B2 (en) * 2001-07-06 2008-04-22 Juniper Networks, Inc. Content service aggregation device for a data center
US7546399B2 (en) * 2002-03-25 2009-06-09 Intel Corporation Store and forward device utilizing cache to store status information for active queues
US20040151197A1 (en) * 2002-10-21 2004-08-05 Hui Ronald Chi-Chun Priority queue architecture for supporting per flow queuing and multiple ports

Also Published As

Publication number Publication date
CN1531281A (zh) 2004-09-22
CN1271833C (zh) 2006-08-23
JP3911273B2 (ja) 2007-05-09
KR100524035B1 (ko) 2005-10-26
US20040210669A1 (en) 2004-10-21
KR20040080662A (ko) 2004-09-20

Similar Documents

Publication Publication Date Title
US7835371B2 (en) Method and apparatus to provide data streaming over a network connection in a wireless MAC processor
CN102427446B (zh) 分组合并
US5541920A (en) Method and apparatus for a delayed replace mechanism for a streaming packet modification engine
US7561573B2 (en) Network adaptor, communication system and communication method
US9154993B1 (en) Mobile-IPv6 encapsulation for wireless networks
US20100118885A1 (en) Predictive packet forwarding for a network switch
US7548532B2 (en) Method and apparatus to provide inline encryption and decryption for a wireless station via data streaming over a fast network
US20030076850A1 (en) Determining packet size in networking
US8170061B2 (en) Communication device
JP3911273B2 (ja) パケット分配装置およびその分配方法
US8194561B2 (en) Packet relay device and method for transferring packet therein
CN101848171A (zh) 一种基于gre隧道的数据传输方法、设备和系统
US7969977B2 (en) Processing apparatus and method for processing IP packets
CN100377550C (zh) 一种路由表下一跳ip地址到mac地址解析方法
US7310337B2 (en) Packet header alignment
WO2004019561A1 (ja) イーサネット(r)におけるフレーム転送方法及びノード
CN101572665B (zh) IPv6 over IPv4隧道切换方法及设备
CN100550858C (zh) 一种ip报文分片重组的方法
TW200410529A (en) Packet-based clock signal
CN101765183B (zh) 用户直接接入核心网的方法及其装置
WO2023124427A1 (zh) 一种数据处理方法、网络节点和计算机可读存储介质
JP2004336427A (ja) 検索回路およびパケット転送装置
JP2003163702A (ja) ネットワーク中継装置
JP2003229899A (ja) パケット中継装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061011

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061211

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070126

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees