JP2004320392A - パケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラム - Google Patents

パケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラム Download PDF

Info

Publication number
JP2004320392A
JP2004320392A JP2003110959A JP2003110959A JP2004320392A JP 2004320392 A JP2004320392 A JP 2004320392A JP 2003110959 A JP2003110959 A JP 2003110959A JP 2003110959 A JP2003110959 A JP 2003110959A JP 2004320392 A JP2004320392 A JP 2004320392A
Authority
JP
Japan
Prior art keywords
packet
header
transmission
division
payload
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
JP2003110959A
Other languages
English (en)
Other versions
JP4135549B2 (ja
Inventor
Hiroshi Tanaka
大志 田中
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 JP2003110959A priority Critical patent/JP4135549B2/ja
Publication of JP2004320392A publication Critical patent/JP2004320392A/ja
Application granted granted Critical
Publication of JP4135549B2 publication Critical patent/JP4135549B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】パケットデータの処理を高速かつ柔軟に行うことが可能なパケット処理装置を提供する。
【解決手段】パケット分割装置21は受信パケットのヘッダ情報を抽出し、その情報に基づいてルーティング処理を行って送信パケット用にヘッダ情報を編集し、分割処理実施の判定で分割未実施と判定すると、パケット送信装置4に転送し、分割実施と判定すると、送信パケットからヘッダを抽出して分割送信パケット用として生成し、新たなパケットデータ記憶領域321〜32nにヘッダデータを格納し、パケット情報記憶領域311〜31mに送信時に必要となる情報を計算して格納する。パケット送信装置4はパケットデータ記憶領域321〜32nに格納されたデータを、パケット情報記憶領域311〜31mの情報を基に送信パケットとして装置外部へ送信伝送媒体102を介して送信する。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明はパケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラムに関し、特にパケット処理装置におけるパケットデータの管理方法に関する。
【0002】
【従来の技術】
従来、パケットバッファ管理装置や管理方式としては、例えば、パケットデータが長く、多くのメモリバッファを使用しているパケットから優先的に送信することで、メモリバッファの枯渇を防ぎ、効率的なメモリバッファの利用を図る方法がある(例えば、特許文献1参照)。
【0003】
しかしながら、一般的に、ルータ装置内でのベストエフォート転送においては、受信パケットの順序性を保障することが望ましく、上記の方法はルータ装置に必ずしも適しているとはいえない。
【0004】
また、この方法では、固定長のメモリエリアにパケットデータを分割して格納し、ヘッダを格納した固定長のメモリエリアのみをパケット編集装置に転送し、ヘッダを編集している。
【0005】
しかしながら、編集処理によってヘッダが伸張した場合においては、ヘッダを格納した固定長のメモリエリアに予め空きエリアを用意する、もしくは、ヘッダ以降のペイロードを後退させることによって、空きエリアを確保するといったように伸張したヘッダデータを格納するエリアを確保する手段が備えられていない。また、ヘッダの伸張によって、ヘッダのサイズが1つのメモリエリアで収まらない場合の回避手段も備えられていない。
【0006】
上記の方法は、多様なヘッダが多重化されるようなパケットに対して柔軟に対応することができず、またIP(Internet Protocol)パケットのフラグメント処理に対しても対応していない。
【0007】
【特許文献1】
特開2000−316024号公報(第9,10頁、図1)
【0008】
【発明が解決しようとする課題】
上記のように、従来の方法では、ヘッダの伸張等がなく、ヘッダのサイズが固定の場合には効率的にパケットバッファを利用する方法が採られているが、近年、ルータ装置では多種多様なヘッダのパケットを取り扱う場合が増えてきており、パケットバッファを効率的に使用しつつ、ヘッダの伸張にも柔軟に対応することが必要とされている。加えて、ヘッダの挿入、伸張によって発生するパケットのフラグメント処理も高速に処理する方法も必要である。
【0009】
一般的に、分割送信パケットを生成する場合には、分割送信パケットのヘッダを生成し、バッファに格納した後、さらに分割送信パケットのペイロード分を分割前パケットのペイロードからヘッダの格納されているバッファに複製する方法が考えられるが、この方法では複製に時間がかかるため、送信パケットの生成に遅延が発生するという問題がある。
【0010】
そこで、本発明の目的は上記の問題点を解消し、パケットデータの処理を高速かつ柔軟に行うことができるパケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラムを提供することにある。
【0011】
【課題を解決するための手段】
本発明によるパケット処理装置は、受信したパケットを分割して複数の送信パケットを生成し、それらの送信パケットを送信するパケット処理装置であって、分割前の送信パケットのヘッダを基に分割パケット用に新たなヘッダを生成する生成手段と、前記分割前のパケットのペイロードに対して指定した分割開始位置から有効サイズまでを分割パケットのペイロードとして前記生成手段で生成されたヘッダに続けて転送する手段とを備えている。
【0012】
本発明によるパケットデータ管理方法は、受信したパケットを分割して複数の送信パケットを生成し、それらの送信パケットを送信するパケット処理装置のパケットデータ管理方法であって、前記パケット処理装置側に、分割前の送信パケットのヘッダを基に分割パケット用に新たなヘッダを生成するステップと、その生成されたヘッダに続けて前記分割前のパケットのペイロードに対して指定した分割開始位置から有効サイズまでを分割パケットのペイロードとして転送させるためのステップとを備えている。
【0013】
本発明によるパケットデータ管理方法のプログラムは、受信したパケットを分割して複数の送信パケットを生成し、それらの送信パケットを送信するパケット処理装置のパケットデータ管理方法のプログラムであって、コンピュータに、分割前の送信パケットのヘッダを基に分割パケット用に新たなヘッダを生成する処理と、その生成されたヘッダに続けて前記分割前のパケットのペイロードに対して指定した分割開始位置から有効サイズまでを分割パケットのペイロードとして転送させるための処理とを実行させている。
【0014】
すなわち、本発明のパケット処理装置は、受信したパケットを分割して複数の送信パケットを生成し、それらの送信パケットを送信する装置において、分割前のパケットのヘッダを基に分割パケット用に新たなヘッダを生成するだけで、分割前のパケットのペイロードに対して指定した分割開始位置から有効サイズまでを分割パケットのペイロードとし、生成したヘッダに続けて転送することで、分割パケットのペイロードとなるべき分割前のパケットのペイロード内のデータ部分を生成したヘッダの後続に複製する必要なく、分割パケットを高速かつ効率的に処理可能なパケットデータ管理手段を備えることを特徴とする。
【0015】
これによって、本発明のパケット処理装置では、パケットデータ記憶領域各々がポインタで相互に接続可能なリスト構成となっているため、複数のパケットデータ記憶領域に跨るデータを1つのパケットデータ記憶領域に複製して連続データとしなくとも、連続したパケットデータとして処理可能となり、パケットデータの処理を高速かつ柔軟に行うことが可能となる。
【0016】
また、本発明のパケット処理装置では、上記の効果によって、第2番目以降の分割送信パケットにおいて、分割前送信パケットのペイロードの開始位置を指定し、ヘッダに続いて送信することで、ペイロードの複製処理が不必要となり、分割パケットの高速生成が可能となる。
【0017】
さらに、本発明のパケット処理装置では、ヘッダの格納されたパケットデータ記憶領域の先頭に予約エリアを設け、受信パケットのヘッダの編集によって、送信パケットのヘッダが伸張した場合にも、予約エリアに送信ヘッダの伸張、挿入分を格納することで、ペイロードの再書込み処理が不必要となるため、高速なパケット編集処理が実現可能となる。
【0018】
さらにまた、本発明のパケット処理装置では、予約エリアを設けることで、現在の多種多様なヘッダの組合せによる伸張にも柔軟に対応可能となり、装置として扱うヘッダの最大伸張サイズを予約エリアサイズとして設定することによって、メモリサイズを必要最小限に抑え、安価な装置の実現が可能となる。
【0019】
【発明の実施の形態】
次に、本発明の実施例について図面を参照して説明する。図1は本発明の一実施例によるパケット処理装置の構成を示すブロック図である。図1において、本発明の一実施例によるパケット処理装置はパケット受信装置1と、パケット処理装置2と、パケット記憶装置3と、パケット送信装置4とから構成されている。
【0020】
パケット受信装置1はパケットを装置外から受信し、パケット処理装置2はパケットデータを処理し、パケット記憶装置3はパケットを格納し、パケット送信装置4はパケットを装置外へ送信する。
【0021】
パケット受信装置1は受信伝送媒体101を介して装置外部から転送されるパケットを受信し、パケットデータ記憶装置32のパケットデータ記憶領域321〜32nに格納する機能を備えている。
【0022】
パケット記憶装置3はパケットデータ記憶装置32とパケット情報記憶装置31とを備えている。パケットデータ記憶装置32は複数の固定長のパケットデータ記憶領域321〜32nからなり、パケットデータ記憶領域321〜32n各々にパケットデータが格納される。また、パケットデータ記憶領域321〜32n各々は相互にポインタにて接続可能なリスト構成となっている。
【0023】
パケット情報記憶装置31は複数の固定長のパケット情報記憶領域311〜31mからなり、パケット情報記憶領域311〜31m各々にパケットデータ記憶領域321〜32nに格納したパケットに関するパケット制御情報とパケットデータ記憶領域321〜32nの管理情報とが格納される。
【0024】
例えば、1つのパケットデータ記憶領域321に対して1つのパケット情報記憶領域311が用意され、それらは1対1に対応しており、パケットデータ記憶領域321〜32nのアドレスとパケット情報記憶領域311〜31mのアドレスとからは互いのアドレスを一意に求めることが可能であり、パケット情報記憶領域311〜31mのアドレスからパケットデータ記憶領域321〜32nのアドレスを求めることで、パケットデータ記憶領域321〜32n内のデータが参照可能となる。
【0025】
図2は図1のパケット情報記憶領域311〜31mのフォーマットを示す図であり、図3はIP(Internet Protocol)ヘッダのフォーマットを示す図である。
【0026】
図2において、パケット情報記憶領域311〜31mに格納される情報には、「Next Address」、「Reference Count」、「Length」、「Offset」、「Valid Size」、「Next Offset」がある。
【0027】
「Next Address」は他のパケット情報記憶領域へリストする場合、そのアドレスが格納される。リストされない場合には「0」が格納される。
【0028】
「Reference Count」は該当パケットデータ記憶領域をリスト先として指定しているパケットデータ記憶領域の数となる。但し、ヘッダが格納されているリストの先頭のパケットデータ記憶装置の場合には「1」を加算した値となる。初期値は「1」であり、リストされていない場合にも「1」となる。パケット送信装置4にてパケットデータが送信されると、「1」減算され、「0」になると、対応するパケットデータ記憶領域と共に開放される。
【0029】
「Length」はパケットデータ記憶領域に格納されたパケットのデータサイズを示す。複数にリストしている場合には全パケットデータ記憶領域内のデータの合計値を示す。「Offset」はパケットデータ記憶領域の先頭からのパケットデータの開始位置を示す。「Valid Size」はパケットデータ記憶領域の先頭からのパケットデータの有効サイズを示す。「Next Offset」はパケットデータ記憶領域の先頭からの分割送信パケットのペイロードデータ開始位置を示す。
【0030】
複数のパケットデータ記憶領域321〜32nに格納されたデータは各々対応するパケット情報記憶領域311〜31mのアドレスを基にリスト構成とすることによって、連続して参照可能となる。また、アドレスの指定によって、任意のパケット情報記憶領域311〜31mに対してリストの作成が可能となるので、柔軟なリスト構成が可能である。
【0031】
例えば、図10を参照すると、パケットデータ記憶領域321からパケットのサイズが大きく、単一のパケットデータ記憶領域321だけではパケットが納まらない場合には、新たなパケットデータ記憶領域322に余ったデータを格納する。パケットデータ記憶領域321に対応するパケット情報記憶領域311の「Next Address」にパケット情報記憶領域312のアドレスを格納し、リスト構成とすることで、パケットデータ記憶領域321からパケットデータ記憶領域322へと続けてデータを参照することができる。
【0032】
パケットデータ記憶領域321〜32n及びパケット情報記憶領域311〜31mのサイズは装置に適したサイズとすればよい。しかしながら、パケットデータ記憶領域321〜32nのサイズは1600バイト〜2000バイト程度の範囲に設定するのが最も望ましい。
【0033】
近年、伝送媒体としてイーサネット(R)が広く一般に普及しており、装置が取り扱うIPパケットのサイズは最大でもイーサネット(R)のMTU(Maximum Transmission Unit)サイズである1500バイトとなっている。
【0034】
ヘッダの多重化によってパケットが伸張し、1500バイトを超える場合が発生しても、単一のパケットデータ記憶領域321〜32nにパケットデータを格納することができ、パケットデータ記憶領域321〜32nを効率的に利用することができるためである。その結果、メモリの使用サイズを減少させることができ、安価な装置の実現が可能である。
【0035】
分割が発生するのは、ヘッダの多重化によって「1500バイト」のMTUサイズを超えたパケットを2つに分割する場合がほとんどであるが、本実施例では2つ以上に分割する場合にも対応可能である。
【0036】
パケット処理装置2はパケット分割装置21及びパケット分割装置21で実行するプログラム(コンピュータで実行可能なプログラム)を格納する記録媒体22を備えている。パケット分割装置21は受信パケットのヘッダ情報を抽出し、その情報に基づいてルーティング処理を行い、送信パケット用にヘッダ情報を編集する機能を備えている。
【0037】
また、パケット分割装置21はさらに分割処理実施の判定を行い、分割未実施と判定した場合にパケット送信装置4に転送し、分割実施と判定した場合に送信パケットからヘッダを抽出し、分割送信パケット用としてヘッダを生成し、新たなパケットデータ記憶領域321〜32nにヘッダデータを格納する機能と、パケット情報記憶領域311〜31mに送信時に必要となる情報を計算して格納する機能とを備えている。
【0038】
パケット送信装置4はパケットデータ記憶領域321〜32nに格納されたデータを、パケット情報記憶領域311〜31mの情報を基に送信パケットとして装置外部へ送信伝送媒体102を介して送信する機能を備えている。
【0039】
特に、パケット送信装置4は複数のパケットデータ記憶領域321,322に格納されているデータであっても、パケット情報記憶領域311,312のデータを基に一つの連続した送信パケットとなるように整形して送信する機能を備えている。
【0040】
パケットデータ記憶領域321〜32nのデータの送信を完了すると、対応するパケット情報記憶領域311〜31mとともに、それらの領域を開放し、次パケットの受信に使用する。
【0041】
装置の動作順序としては、パケット受信装置1で受信されたパケットはパケット記憶装置3のパケットデータ記憶装置321へ格納される。受信パケットはパケット分割装置21にてパケットデータ記憶装置321に格納されている受信パケットのヘッダ情報を抽出し、その情報に基づいて、ルーティング処理を行い、送信パケット用にヘッダ情報を編集し、分割処理実施の可否を判定する。
【0042】
分割実施と判定した場合、送信パケットからヘッダ情報を抽出し、第1番目の分割送信パケットのヘッダフィールドを書換える。さらに、第2番目以降の分割送信パケット用のヘッダを生成し、新たなパケットデータ記憶領域322〜32nに格納する。さらにまた、パケット送信装置4にて送信時に必要となる情報を計算し、パケット情報記憶領域312〜31mに格納するとともに、パケット情報記憶領域311にリストする。
【0043】
パケット送信装置4は別々のパケットデータ記憶領域321に格納されている第1番目の分割送信パケットを送信した後、パケットデータ記憶領域322〜32nに格納された第2番目以降の分割送信パケットのヘッダとパケットデータ記憶領域321に格納されているペイロードとを、各々のパケット情報記憶領域311〜31mのデータを基に一つの連続した送信パケットとなるように整形し、装置外部へと送信する。
【0044】
図4は図1のパケット分割装置21の動作を示すフローチャートであり、図5は本発明の一実施例におけるIPパケットの分割例を示す図であり、図6(a),(b)は図1のパケットデータ記憶領域321及びパケット情報記憶領域311へのデータの格納状態を示す図であり、図7(a),(b)は図1のパケットデータ記憶領域321,322及びパケット情報記憶領域311,312へのデータの格納状態を示す図である。
【0045】
これら図1〜図7を参照して本発明の一実施例によるパケット処理装置の動作について説明する。尚、図4に示す処理動作はパケット分割装置21が記録媒体22のプログラム(コンピュータで実行可能なプログラム)を実行することで実現される。
【0046】
受信伝送媒体101、送信伝送媒体102のMTUは、伝送媒体によって様々であるが、以下の説明では受信伝送媒体101のMTUを1500バイト、送信伝送媒体102のMTUを1500バイトとする。1500バイトのIPパケットを受信し、IPv4(Internet Protocol Version4)カプセル化による送信パケットの伸張によって、送信伝送媒体102のMTUサイズを超えるため、2分割して送信するものとする。また、本実施例では、パケットデータ記憶領域321〜32n各々のサイズをそれぞれ2000バイトとする。
【0047】
図3において、IPヘッダの識別子(Identification)はIPパケットを分割した際に、他の分割されたパケットと識別するために、各分割送信パケットに同じ値を入れる。
【0048】
IPヘッダのフラグ(Frags)のMF(More Fragments)ビットは後続のフラグメントが存在することを示し、DF(Don’t Fragment)ビットはフラグメントの可否を示す。
【0049】
IPヘッダのフラグメントオフセット(Fragment Offset)は分割送信パケットのペイロードが分割前送信IPパケットのペイロードのどの位置からのデータであるかを8バイト単位で示す。
【0050】
図6及び図7を参照すると、パケット受信装置1は受信伝送媒体101を介して、図5に示す受信パケットを受信すると、パケットデータ記憶装置32内のパケットデータ記憶領域321〜32nのうちのを1つ確保する。ここでは、パケットデータ記憶領域321を確保するものとする。
【0051】
パケットデータ記憶領域321には領域の先頭から250バイトの予約エリアを設けておき、その予約エリア以降からパケットデータを書込む。パケットデータ記憶領域321に対応するパケット情報記憶領域311には「Next Address=0」、「Reference Count=1」、「Length=1514」、「Offset=250」が格納される。
【0052】
予約エリアを設けることで、パケット処理装置2におけるヘッダの編集によって、ヘッダの伸張もしくは挿入が発生した場合、伸張もしくは挿入した分は予約エリアに書込むだけでよく、ペイロードはそのままで、後退させて書込み直す必要がなくなるため、パケット編集処理の高速化を実現することができる。
【0053】
それに比べ、ペイロードも含めて全てのデータをパケットデータ記憶領域321〜32nの先頭から書込んだ場合、伸張もしくは挿入するサイズ分だけ、全てのデータをずらして書込み直さなければならなくなる。
【0054】
予約エリアのサイズは装置に適したサイズとすることができる。例えば、カプセル化、PPPoE[Point to Point Protocol over Ethernet(R)]、VLAN(Virtual Local Area Network)、MPLS(Multi Protocol Label Switching)等によるL3(Layer 3)、L2(Layer 2)ヘッダの伸張もしくは挿入に対して十分大きなサイズを確保しておけば、どのようにヘッダが伸張もしくは挿入されても柔軟に対応することが可能となる。但し、少なくとも装置として最もヘッダサイズが伸張した場合のサイズは確保しておかなくてはならない。
【0055】
また、伸張もしくは挿入されるヘッダ種別を限定しているような場合には、予約エリアのサイズを必要最小限に設定することによって、メモリの使用サイズを減少させることができるため、安価な装置の実現が可能である。
【0056】
パケット分割装置21は受信パケットデータがパケットデータ記憶領域321に格納されると(図4ステップS1)、受信パケットのヘッダを抽出し、そのヘッダ情報の内容に基づいてルーティング処理を行う(図4ステップS2)。
【0057】
パケット分割装置21はその結果にしたがって受信ヘッダを編集し(図4ステップS3)、次の送信先を記入した送信ヘッダとして生成するか、もしくはカプセルIPヘッダのように新たに送信ヘッダが生成する。
【0058】
本実施例ではIPヘッダのカプセル化によって、カプセルIPヘッダが生成され、MAC(Media Access Control)ヘッダと受信パケットのIPヘッダとの間に挿入される。送信パケットのサイズはカプセルIPヘッダ分の「20バイト」を伸張されるので、カプセルIPヘッダのパケット長フィールドは「20」が加算され、「1520バイト」となる。
【0059】
パケット分割装置21は送信ヘッダのパケット長とフラグ(DFビット)とから分割処理の可否を判断する(図4ステップS4)。すなわち、パケット分割装置21はパケット長と送信伝送媒体102のMTUサイズとを比較し、MTUサイズを超えていない、またはフラグ(DFビット)=1の場合、分割未実施と判断し(図4ステップS5)、パケット送信装置4に転送する(図4ステップS6)。
【0060】
パケット分割装置21は上記の場合以外であれば分割実施と判断し(図4ステップS5)、第1番目の分割送信パケット用としてカプセルIPヘッダのパケット長、識別子、フラグ(MFビット)、フラグメントオフセット、チェックサムの各フィールドを書換える(図4ステップS7)。パケット長にはMTUサイズである「1500バイト」、識別子には装置で割り当てられた値、MFビットには「1」、フラグメントオフセットには「0」をそれぞれ格納し、最後に、再計算したチェックサムの値を格納する。
【0061】
パケットデータ記憶領域321に対応するパケット情報記憶領域311の「Length」にはデータリンク層のヘッダサイズも含めた分割送信パケットのサイズである「1514バイト」を格納する(図4ステップS8)。この「Length」で指定されたサイズまでが第1番目の分割送信パケットのデータとなり、これ以降のデータが第2番目の分割送信パケットのペイロードとなる。
【0062】
パケットデータ記憶領域321において、MACヘッダ及び追加となるカプセルIPヘッダは受信パケットのIPヘッダ以前のMACヘッダエリア及び予約エリアに上書きするので、「Offset」は「230バイト」となる。
【0063】
上記のように、本実施例では、ヘッダフィールド及びパケット情報記憶領域311のデータの書換えが完了した時点で(図4ステップS9)、送信パケットがパケット送信装置4に転送される(図4ステップS10)。
【0064】
第2番目の分割送信パケットの生成において、パケット分割装置21はパケットデータ記憶領域321に格納されている第1番目の分割送信パケットデータの先頭からカプセルIPヘッダまでを読出し(図4ステップS11,S12)、パケット長、フラグ(MFビット)、フラグメントオフセット、チェックサムのフィールドを書換えて、新たに確保したパケットデータ記憶領域322の「250バイト」目から格納し、第2番目の分割送信パケット用のヘッダとする(図4ステップS13)。
【0065】
パケット長はルーティング処理後のパケット長から第1番目の分割送信パケットのパケット長を引いたサイズにヘッダサイズを加えた値となる。本実施例では、1520−1500+20=40バイトとなる。MFビットには「0」、フラグメントオフセットには「185」をそれぞれ格納し、最後に、再計算したチェックサムの値を格納する。
【0066】
パケットデータ記憶領域322に対応するパケット情報記憶領域312の「Next Address」には第1番目の分割送信パケットのパケット情報記憶領域311を示すアドレスを格納し、リスト構成とする。本実施例では「Next Address=x」となる。
【0067】
パケット情報記憶領域312のアドレスからパケットデータ記憶領域322のアドレスは一意に定まるので、パケット情報記憶領域311のアドレス「x」から、第2番目の分割送信パケットのペイロードが格納されたパケットデータ記憶領域321のアドレス「X」を得ることができる。
【0068】
「Length」にはデータリンク層のヘッダサイズも含めた分割送信パケットのサイズである「54バイト」を格納する。パケットデータ記憶領域322の有効データの開始位置を「Offset」に格納し、パケットデータ記憶領域322の先頭からの有効サイズを「Valid Size」に格納する。パケットデータ記憶領域321における第2番目の分割送信パケットのペイロード開始位置を「Next Offset」に格納する。
【0069】
本実施例では「Offset=250」、「Valid Size=284」、「Next Offset=1744」となる。さらに、本実施例ではパケット情報記憶領域311の「Reference Count」に「1」を加算し、「2」とする。
【0070】
上記のように、本実施例では、ヘッダフィールド及びパケット情報記憶領域312のデータの書換えが完了した時点で(図4ステップS14,S15)、送信パケットがパケット送信装置4に転送される(図4ステップS6)。尚、上記の説明では分割数が「2」であるので、第2番目の分割送信パケットをパケット送信装置4に転送して処理を終了しているが、分割数が「3」以上の場合には上記の処理が繰返し行われる(図4ステップS12〜S16)。
【0071】
パケット送信装置4は第1番目の分割送信パケットを受信すると、パケット情報記憶領域311の情報を読出し、「Offset」から「Length」で指定されたサイズまで転送し、送信完了となる。このパケットデータ記憶領域321は第2番目の分割送信パケットのペイロードを含んでおり、対応するパケット情報記憶領域311はヘッダを格納しているパケットデータ記憶領域322に対応するパケット情報記憶領域312から参照されているため、送信完了に伴って、「2」となっている「Reference Count」の値から「1」を減算するが、「0」とはならないため、その領域を開放せずにおく。
【0072】
続いて、パケット送信装置4は第2番目の分割送信パケットを受信すると、まずヘッダの格納されたパケットデータ記憶領域322に対応するパケット情報記憶領域312を参照し、パケットデータ記憶領域322の「Offset」の位置から「Valid Size」で指定された位置までヘッダデータを送信する。
【0073】
次に、パケット送信装置4は「Next Address」で指定されている第1番目の分割送信パケットのパケット情報記憶領域311のアドレス「x」から、第2番目の分割送信パケットのペイロードが格納されたパケットデータ記憶領域321のアドレス「X」を得る。得られたパケットデータ記憶領域321の「Next Offset」からペイロード部の送信を開始する。ヘッダとペイロードとの合計送信サイズがパケット情報記憶領域312の「Length」に達した時点で、送信完了となる。
【0074】
最後に、パケット情報記憶領域312,311の「Reference Count」から「1」を減算すると、「0」となるので、パケット情報記憶領域312,311及びパケットデータ記憶領域322,321を開放する。
【0075】
上記のように、本実施例では、分割前送信パケットのペイロードに対して、第2番目の分割送信パケットのペイロードの開始位置を指定し、ヘッダに続いて送信することで、ペイロードの複製処理が不必要となり、高速処理を実現することができる。
【0076】
このように、本実施例では、パケットデータ記憶領域321〜32nのリスト構成が可能なため、複数のパケットデータ記憶領域321〜32nに跨るデータも連続したパケットデータとして処理可能となり、1つのパケットデータ記憶領域に複製して連続データとする必要がないため、パケットデータの処理を高速かつ柔軟に行うことができる。
【0077】
また、本実施例では、この効果によって、第2番目以降の分割送信パケットにおいて、分割前送信パケットのペイロードの開始位置を指定し、ヘッダに続いて送信することで、ペイロードの複製処理が不必要となり、分割パケットを高速に生成することができる。
【0078】
さらに、本実施例では、ヘッダの格納されたパケットデータ記憶領域321〜32n各々の先頭に予約エリアを設け、受信パケットのヘッダの編集によって、送信パケットのヘッダが伸張した場合にも、予約エリアに送信ヘッダの伸張もしくは挿入された分を格納することで、ペイロードの再書込み処理が不必要となるため、高速なパケット編集処理を実現することができる。
【0079】
さらにまた、本実施例では、ヘッダの格納されたパケットデータ記憶領域321〜32n各々の先頭に予約エリアを設けることで、現在の多種多様なヘッダの組合せによる伸張にも柔軟に対応可能となり、装置として扱うヘッダの最大伸張サイズを予約エリアサイズとして設定することによって、メモリサイズを必要最小限に抑えることができ、安価な装置を実現することができる。
【0080】
図8は本発明の一実施例におけるIPパケットの他の分割例を示す図であり、図9(a)〜(c)は図1のパケットデータ記憶領域321〜323及びパケット情報記憶領域311〜313へのデータの格納状態を示す図である。これら図8及び図9を参照して本発明の一実施例によるパケット処理装置の3分割以上の場合の動作について説明する。
【0081】
この分割例では受信伝送媒体101のMTUが「1500バイト」、送信伝送媒体102のMTUが「600バイト」であるとし、図8に示すように、「1500バイト」のIPパケットを受信し、送信伝送媒体102のMTUのサイズである「600バイト」の制限によって3分割して送信するものとする。また、この分割例ではパケットデータ記憶領域321〜32n各々のサイズを「2000バイト」、予約エリアを「250バイト」とする。
【0082】
図9を参照すると、パケット受信装置1はパケットを受信すると、確保したパケットデータ記憶領域321の予約エリア以降からパケットデータを書込み、対応するパケット情報記憶領域311に「Next Address=0」、「Reference Count=1」、「Length=1514」、「Offset=250」をそれぞれ格納する。
【0083】
パケット分割装置21は受信パケットのヘッダを抽出し、そのヘッダ情報の内容に基づいてルーティング処理を行う。また、パケット分割装置21はその結果にしたがって、送信ヘッダとして受信ヘッダを編集し、分割前の送信パケットを生成する。
【0084】
パケット分割装置21は分割前送信パケットのパケット長とフラグ(DFビット)とから分割処理の可否を判定するが、フラグ(DFビット)を「0」とすると、分割前送信パケットのパケット長が「1500バイト」であり、送信伝送媒体102のMTUサイズを超えているので、分割実施と判定する。
【0085】
パケット分割装置21は第1番目の分割送信パケットのIPヘッダとして、分割前送信パケットのIPヘッダのパケット長、識別子、フラグ(MFビット)、フラグメントオフセット、チェックサムの各フィールドを書換える。ペイロードサイズが8の倍数で、IPヘッダを加えたサイズがMTUサイズ以下であるようにすると、ペイロードは「576バイト」となるので、パケット長は「596バイト」となる。識別子は装置で割り当てられた値、MFビットは「1」、フラグメントオフセットは「0」となり、最後に、チェックサムが再計算されて格納される。
【0086】
パケット情報記憶領域311の「Length」にはパケット長にMACヘッダサイズを加えたサイズである「610バイト」を格納する。この「Length」で指定されたサイズまでが第1番目の分割送信パケットのデータとなり、これ以降のデータが第2番目、第3番目の分割送信パケットのペイロードとなる。受信パケットから分割送信パケットへのヘッダ編集において、ヘッダサイズの変更はないため、「Offset」は「250バイト」のままである。
【0087】
パケット分割装置21はヘッダフィールド及びパケット情報記憶領域311のデータの書換えが完了した時点で、その送信パケットをパケット送信装置4に転送する。
【0088】
パケット分割装置21は第2番目の分割送信パケットの生成において、パケットデータ記憶領域321に格納されている第1番目の分割送信パケットのデータの先頭からIPヘッダまでを読出し、IPヘッダのパケット長、識別子、フラグ(MFビット)、フラグメントオフセット、チェックサムの各フィールドを書換えて、新たに確保したパケットデータ記憶領域322の「250バイト」目から格納し、第2番目の分割送信パケットのヘッダとする。
【0089】
パケット長は分割前送信パケットのペイロードから第1番目の分割送信パケットのペイロードを引いたサイズにヘッダサイズを加えた値となるが、まだMTUサイズを超えているため、第1番目の分割送信パケットと同様に、ペイロードのサイズを「576バイト」とすると、パケット長は「596バイト」となる。識別子は第1番目の分割送信パケットと同値、MFビットは「1」、フラグメントオフセットは「72」となり、最後に、チェックサムが再計算されて格納される。
【0090】
パケット分割装置21はパケットデータ記憶領域322に対応するパケット情報記憶領域312の「Next Address」に第1番目の分割送信パケットのパケット情報記憶領域311のアドレス「x」を格納し、リスト構成とする。「Length」にはパケット長にMACヘッダサイズを加えたサイズである「610バイト」が格納される。
【0091】
また、パケット分割装置21はパケット情報記憶領域312の「Offset=250」、「Valid Size=284」、「Next Offset=250(Offset)+14(MACヘッダ)+20(IPヘッダ)+576(第1番目の分割送信パケットのペイロード)=860」を格納する。さらに、パケット分割装置21はパケット情報記憶領域311の「Reference Count」に「1」を加算し、「2」とする。
【0092】
上記のように、本実施例では、ヘッダフィールド及びパケット情報記憶領域312のデータの書換えが完了した時点で、その送信パケットがパケット送信装置4に転送される。
【0093】
第3番目の分割送信パケットの生成においても、パケット分割装置21は上述した第2番目の分割送信パケットと同様に、パケットデータ記憶領域321に格納されている第1番目の分割送信パケットのデータの先頭からIPヘッダまでを読出し、IPヘッダのパケット長、識別子、フラグ(MFビット)、フラグメントオフセット、チェックサムの各フィールドを書換えて、新たに確保したパケットデータ記憶領域323の「250バイト」目から格納し、第3番目の分割送信パケットのヘッダとする。
【0094】
パケット長は分割前送信パケットのペイロードから第1番目、第2番目の分割送信パケットのペイロードを引いたサイズにヘッダサイズを加えた値となり、MTUサイズ以下となるため、ペイロードのサイズは「328バイト」となり、パケット長は「348バイト」となる。識別子は第1番目の分割送信パケットと同値、MFビットは「0」、フラグメントオフセットは「144」となり、最後に、チェックサムが再計算されて格納される。
【0095】
パケット分割装置21はパケットデータ記憶領域323に対応するパケット情報記憶領域313の「Next Address」に第1番目の分割送信パケットのパケット情報記憶領域311のアドレス「x」を格納し、リスト構成とする。パケット分割装置21は「Length」にはパケット長にMACヘッダサイズを加えたサイズである「362バイト」を格納する。
【0096】
また、パケット分割装置21はパケット情報記憶領域313の「Offset=250」、「Valid Size=284」、「Next Offset=860(第2番目の分割送信パケットのNext Offset)+576(第2番目の分割送信パケットのペイロード)=1436」を格納する。さらに、パケット分割装置21はパケット情報記憶領域311の「Reference Count」に「1」を加算し、「3」とする。
【0097】
上記のように、本実施例では、ヘッダフィールド及びパケット情報記憶領域313のデータの書換えが完了した時点で、その送信パケットがパケット送信装置4に転送される。
【0098】
パケット送信装置4は第1番目の分割送信パケットを受信すると、パケット情報記憶領域311の情報を読出し、「Offset」から「Length」で指定されたサイズまで転送し、送信完了となる。このパケットデータ記憶領域321は第2番目、第3番目の分割送信パケットのペイロードを含んでおり、パケット情報記憶領域311はヘッダを格納しているパケットデータ記憶領域322,323に対応するパケット情報記憶領域312,313から参照され、「3」となっている「Reference Count」の値を送信完了に伴い、「1」を減算して「2」となる。この場合には、「0」にならないため、領域を開放せずにおく。
【0099】
続いて、パケット送信装置4は第2番目の分割送信パケットを受信すると、まずヘッダの格納されたパケットデータ記憶領域322に対応するパケット情報記憶領域312の「Next Address」、「Reference Count」、「Length」、「Offset」、「Valid Size」、「Next Offset」を読込む。パケット送信装置4はパケットデータ記憶領域322の「Offset」の位置から「Valid Size」の位置までのヘッダデータを送信する。
【0100】
第2番目の分割送信パケットのペイロードが格納されたパケットデータ記憶領域321のアドレス「X」は「Next Address」で指定されているパケット情報記憶領域311のアドレス「x」から得られる。パケット送信装置4はパケットデータ記憶領域321の「Next Offset」からペイロード部の送信を開始する。ヘッダとペイロードとの合計送信サイズが「Length」に達した時点で、送信完了となる。
【0101】
最後に、パケット情報記憶領域312,311の「Reference Count」からそれぞれ「1」を減算する。パケット情報記憶領域312の「Reference Count」は「0」となるので、対応するパケットデータ記憶領域322とともに開放される。パケット情報記憶領域311の「Reference Count」は「1」となり、ヘッダを格納しているパケット情報記憶領域313からまだ参照されているため、開放せずにおく。
【0102】
続いて、パケット送信装置4は第3番目の分割送信パケットを受信すると、第2番目の分割送信パケットと全く同様に、送信処理を行う。すなわち、パケット送信装置4はまずヘッダの格納されたパケットデータ記憶領域323に対応するパケット情報記憶領域313の「Next Address」、「Reference Count」、「Length」、「Offset」、「Valid Size」、「Next Offset」を読込む。
【0103】
パケット送信装置4はパケットデータ記憶領域323の「Offset」の位置から「Valid Size」の位置までのヘッダデータを送信する。第3番目の分割送信パケットのペイロードが格納されたパケットデータ記憶領域321のアドレス「X」は「Next Address」で指定されているパケット情報記憶領域311のアドレス「x」から得られる。パケット送信装置4はパケットデータ記憶領域321の「Next Offset」からペイロード部の送信を開始する。この送信はヘッダとペイロードとの合計送信サイズが「Length」に達した時点で完了となる。
【0104】
最後に、パケット送信装置4はパケット情報記憶領域313,311の「Reference Count」からそれぞれ「1」を減算する。パケット情報記憶領域313,311の「Reference Count」はともに「0」となるので、パケット送信装置4はそれらに対応するパケットデータ記憶領域323,321とともに開放する。
【0105】
上記のように、本実施例では、3つ以上の複数の分割前送信パケットに分割した場合にも、パケット情報記憶領域311〜31mをリスト構成にし、各々の分割送信パケットのペイロードの送信開始位置(Next Offset)とサイズ(Length)とを指定することで、分割前の送信パケットのペイロードを複数の任意のデータサイズに区切って送信することができる。
【0106】
さらに、上記のように、本実施例ではパケットの分割処理の場合について説明したが、本発明はこれに限定されるものではない。本発明のパケットデータ管理方法を用いることで、その他のパケットデータ処理、例えば、複数のマルチキャストパケットを生成する場合やフラグメントパケットの再構築処理においても、上記と同様に実現することができる。
【0107】
マルチキャストパケット生成の場合、マルチキャストパケットはヘッダ部が異なり、ペイロード部が共通であるので、パケットの分割処理の場合と同様に、パケット処理装置2によって受信パケットから第2番目以降のマルチキャストパケットのヘッダデータを生成し、受信パケットのヘッダ編集によって得られた第1番目のマルチキャストパケットとは別のパケットデータ記憶領域に格納する。対応する第2番目以降のマルチキャストパケットのパケット情報記憶領域を第1番目のマルチキャストパケットのパケット情報記憶領域に対してリスト構成とし、「Next Address」に第1番目のマルチキャストパケットのパケット情報記憶領域のアドレスを格納する。
【0108】
ここで、「Next Offset」に第1番目のマルチキャストパケットのペイロード開始位置を指定することによって、それぞれヘッダ部が異なり、共通のペイロード部を持つ複数のパケットを生成することが可能となる。「Reference Count」には「1」、「Length」にはヘッダとペイロードとの合計サイズ、「Offset」にはヘッダデータ開始位置、「ValidSize」には対応するパケットデータ記憶領域の先頭からのヘッダデータの有効サイズをそれぞれ格納する。第1番目のマルチキャストパケットのパケット情報記憶領域の「Reference Count」にはリストされているパケット情報記憶領域の数だけ加算する。
【0109】
第2番目以降のマルチキャストパケットはパケット送信装置4によって、「Offset」の位置から「Valid Size」で指定された位置までヘッダデータを送信された後、ペイロードの格納されたパケットデータ記憶領域の「Next Offset」で指定された位置からデータを送信され、ヘッダとペイロードとの合計送信サイズが「Length」に達した時点で完了となる。
【0110】
上記のように、マルチキャストパケット生成の場合においても、第2番目以降のマルチキャストパケットはヘッダの生成のみで、ペイロードは共通のパケットデータ記憶領域内のペイロード開始位置からのデータとすることで、ペイロードをヘッダの格納されたパケットデータ記憶領域へ複製する処理が不必要となるため、複数のマルチキャストパケットを高速に生成することができる。
【0111】
【発明の効果】
以上説明したように本発明は、上記のような構成及び動作とすることで、パケットデータの処理を高速かつ柔軟に行うことができるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施例によるパケット処理装置の構成を示すブロック図である。
【図2】図1のパケット情報記憶領域のフォーマットを示す図である。
【図3】IPヘッダのフォーマットを示す図である。
【図4】図1のパケット分割装置の動作を示すフローチャートである。
【図5】本発明の一実施例におけるIPパケットの分割例を示す図である。
【図6】(a),(b)は図1のパケットデータ記憶領域及びパケット情報記憶領域へのデータの格納状態を示す図である。
【図7】(a),(b)は図1のパケットデータ記憶領域及びパケット情報記憶領域へのデータの格納状態を示す図である。
【図8】本発明の一実施例におけるIPパケットの他の分割例を示す図である。
【図9】(a)〜(c)は図1のパケットデータ記憶領域及びパケット情報記憶領域へのデータの格納状態を示す図である。
【図10】(a),(b)は図1のパケットデータ記憶領域及びパケット情報記憶領域へのデータの格納状態を示す図である。
【符号の説明】
1 パケット受信装置
2 パケット処理装置
3 パケット記憶装置
4 パケット送信装置
21 パケット分割装置
22 記録媒体
31 パケット情報記憶装置
32 パケットデータ記憶装置
101 受信伝送媒体
102 送信伝送媒体
311〜31m パケット情報記憶領域
321〜32n パケットデータ記憶領域

Claims (11)

  1. 受信したパケットを分割して複数の送信パケットを生成し、それらの送信パケットを送信するパケット処理装置であって、分割前の送信パケットのヘッダを基に分割パケット用に新たなヘッダを生成する生成手段と、前記分割前のパケットのペイロードに対して指定した分割開始位置から有効サイズまでを分割パケットのペイロードとして前記生成手段で生成されたヘッダに続けて転送する手段とを有することを特徴とするパケット処理装置。
  2. 前記パケットを格納しかつ相互にポインタにて接続可能なリスト構成の複数のパケットデータ記憶領域を含み、前記複数のパケットデータ記憶領域に跨るデータを連続したパケットデータとして処理可能としたことを特徴とする請求項1記載のパケット処理装置。
  3. 第2番目以降の分割送信パケットにおいて、分割前送信パケットのペイロードの開始位置を指定し、分割パケット用に生成したヘッダに続いて送信することを特徴とする請求項1または請求項2記載のパケット処理装置。
  4. 前記複数の分割パケット用に生成したヘッダが格納されたパケットデータ記憶領域各々は、その先頭領域に予め設定された記憶容量の予約エリアを含むことを特徴とする請求項2または請求項3記載のパケット処理装置。
  5. 前記受信したパケットに対して複数のヘッダが多重された場合に前記予約エリアに送信ヘッダの伸張及び挿入のいずれかの部分を格納することを特徴とする請求項4記載のパケット処理装置。
  6. 受信したパケットを分割して複数の送信パケットを生成し、それらの送信パケットを送信するパケット処理装置のパケットデータ管理方法であって、前記パケット処理装置側に、分割前の送信パケットのヘッダを基に分割パケット用に新たなヘッダを生成するステップと、その生成されたヘッダに続けて前記分割前のパケットのペイロードに対して指定した分割開始位置から有効サイズまでを分割パケットのペイロードとして転送させるためのステップとを有することを特徴とするパケットデータ管理方法。
  7. 前記パケットを格納しかつ相互にポインタにて接続可能なリスト構成の複数のパケットデータ記憶領域に跨るデータを連続したパケットデータとして処理可能としたことを特徴とする請求項6記載のパケットデータ管理方法。
  8. 第2番目以降の分割送信パケットにおいて、分割前送信パケットのペイロードの開始位置を指定し、分割パケット用に生成したヘッダに続いて送信することを特徴とする請求項6または請求項7記載のパケットデータ管理方法。
  9. 前記複数の分割パケット用に生成したヘッダが格納されたパケットデータ記憶領域各々は、その先頭領域に予め設定された記憶容量の予約エリアを含むことを特徴とする請求項7または請求項8記載のパケットデータ管理方法。
  10. 前記受信したパケットに対して複数のヘッダが多重された場合に前記予約エリアに送信ヘッダの伸張及び挿入のいずれかの部分を格納することを特徴とする請求項9記載のパケットデータ管理方法。
  11. 受信したパケットを分割して複数の送信パケットを生成し、それらの送信パケットを送信するパケット処理装置のパケットデータ管理方法のプログラムであって、コンピュータに、分割前の送信パケットのヘッダを基に分割パケット用に新たなヘッダを生成する処理と、その生成されたヘッダに続けて前記分割前のパケットのペイロードに対して指定した分割開始位置から有効サイズまでを分割パケットのペイロードとして転送させるための処理とを実行させるためのプログラム。
JP2003110959A 2003-04-16 2003-04-16 パケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラム Expired - Fee Related JP4135549B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003110959A JP4135549B2 (ja) 2003-04-16 2003-04-16 パケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003110959A JP4135549B2 (ja) 2003-04-16 2003-04-16 パケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラム

Publications (2)

Publication Number Publication Date
JP2004320392A true JP2004320392A (ja) 2004-11-11
JP4135549B2 JP4135549B2 (ja) 2008-08-20

Family

ID=33471644

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003110959A Expired - Fee Related JP4135549B2 (ja) 2003-04-16 2003-04-16 パケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラム

Country Status (1)

Country Link
JP (1) JP4135549B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006222864A (ja) * 2005-02-14 2006-08-24 Mitsubishi Electric Corp ネットワーク接続装置
JP2007041696A (ja) * 2005-08-01 2007-02-15 Sony Corp コンテンツ処理装置,コンテンツ処理方法およびコンテンツ転送システム
CN100461770C (zh) * 2007-01-30 2009-02-11 中兴通讯股份有限公司 用于终端无线通信系统分组业务传输链路的数据处理方法
JP2015070434A (ja) * 2013-09-27 2015-04-13 Kddi株式会社 OpenFlowスイッチおよびプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006222864A (ja) * 2005-02-14 2006-08-24 Mitsubishi Electric Corp ネットワーク接続装置
JP4646650B2 (ja) * 2005-02-14 2011-03-09 三菱電機株式会社 ネットワーク接続装置
JP2007041696A (ja) * 2005-08-01 2007-02-15 Sony Corp コンテンツ処理装置,コンテンツ処理方法およびコンテンツ転送システム
CN100461770C (zh) * 2007-01-30 2009-02-11 中兴通讯股份有限公司 用于终端无线通信系统分组业务传输链路的数据处理方法
JP2015070434A (ja) * 2013-09-27 2015-04-13 Kddi株式会社 OpenFlowスイッチおよびプログラム

Also Published As

Publication number Publication date
JP4135549B2 (ja) 2008-08-20

Similar Documents

Publication Publication Date Title
US11882203B2 (en) Providing efficiencies in processing and communicating internet protocol packets in a network using segment routing
US7995586B2 (en) Multi-protocol label switching in a network device
US6128666A (en) Distributed VLAN mechanism for packet field replacement in a multi-layered switched network element using a control field/signal for indicating modification of a packet with a database search engine
US7333484B2 (en) Services processor having a packet editing unit
AU2003217319A8 (en) Services processor having a packet editing unit
US20060268913A1 (en) Streaming buffer system for variable sized data packets
KR20050046642A (ko) 순환적 중복 검사 해시 함수들을 사용하여 네트워크트래픽을 관리하는 방법 및 장치
JP3543952B2 (ja) Mplsパケット転送方法およびパケット交換機
US7991006B2 (en) Filtering redundant packets in computer network equipments
US20090135833A1 (en) Ingress node and egress node with improved packet transfer rate on multi-protocol label switching (MPLS) network, and method of improving packet transfer rate in MPLS network system
WO2013148048A1 (en) Systems and methods for modifying network packets to use unrecognized headers/fields for packet classification and forwarding
US7386699B1 (en) Aligning IP payloads on memory boundaries for improved performance at a switch
WO2014059853A1 (zh) 一种数据通信网络中报文修改与转发的方法及装置
JPH10126412A (ja) Atmリンクを通じてatmセルを伝送する方法及びシステム
WO2001015364A1 (en) Deferrable processing option for fast path forwarding
JP2005012381A (ja) データ転送装置及びその方法並びにそれを用いたデータ通信システム及びプログラム
US7720979B2 (en) Communication apparatus
CN115362661B (zh) 对用于分段路由的具有不同大小的分段进行混合
JP4135549B2 (ja) パケット処理装置及びそれに用いるパケットデータ管理方法並びにそのプログラム
US20070195767A1 (en) Communication device
CN115398869A (zh) 最小化用于分段路由的分段标识符中的差异
KR20150145700A (ko) 패킷의 구조를 식별하기 위해 고유한 패킷 식별자를 사용하는 방법 및 이의 장치
KR20150146422A (ko) 수정을 위해 패킷을 개별 레이어들로 분할하고 수정 후에 레이어들을 지능적으로 다시 연결하는 방법 및 이의 장치
TW200404206A (en) Increasing memory access efficiency for packet applications
WO2004066562A1 (ja) データ転送装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080325

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080421

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080526

R150 Certificate of patent or registration of utility model

Ref document number: 4135549

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees