JP3628286B2 - IP header generator - Google Patents
IP header generator Download PDFInfo
- Publication number
- JP3628286B2 JP3628286B2 JP2001232819A JP2001232819A JP3628286B2 JP 3628286 B2 JP3628286 B2 JP 3628286B2 JP 2001232819 A JP2001232819 A JP 2001232819A JP 2001232819 A JP2001232819 A JP 2001232819A JP 3628286 B2 JP3628286 B2 JP 3628286B2
- Authority
- JP
- Japan
- Prior art keywords
- header
- checksum
- field
- primary
- output
- 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
Links
- 238000003780 insertion Methods 0.000 claims description 58
- 230000037431 insertion Effects 0.000 claims description 58
- 230000000295 complement effect Effects 0.000 claims description 30
- 238000013075 data extraction Methods 0.000 claims description 12
- 230000003111 delayed effect Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、アドレスを任意に可変することができるIPヘッダを簡単な構成で発生できるようにするための技術に関する。
【0002】
【従来の技術】
TCP/IPのプロトコルにしたがってデータ伝送を行うネットワークやそれを構成するルータ等の通信機器の評価を行う際に、IPパケットをその測定対象に与えて、そのIPパケットが所望の宛て先に正しく伝送されるか否かを測定する場合がある。
【0003】
このような測定を行う際には、送信元アドレスフィールドと宛て先アドレスフィールドに任意のアドレスが挿入されたIPヘッダを発生する必要がある。
【0004】
現在通信に使用されているIPパケットのIPヘッダは、図6に示しているように、32ビット(4バイト)×N(Nは5以上の整数)の長さを有し、その13バイト目から16バイト目までの送信元アドレスフィールドFsaには送信元のIPアドレスSAが挿入され、17バイト目から20バイト目までの宛て先アドレスフィールドFdaには、宛て先のIPアドレスDAが挿入される。
【0005】
また、11バイト目から12バイト目までのチェックサムフィールドFcsには、誤り検出のためにIPヘッダ全体のチェックサム値CSが挿入される。
【0006】
このチェックサム値CSは、IPヘッダのチェックサムフィールドFcsを除く全てのデータに対して、16ビット毎の1の補数和を求め、その補数和の最終結果の1の補数をとることで求められる。
【0007】
なお、16ビットの2つの値A、Bの「1の補数和」は、値A、Bを加算して桁上がりしない場合にはその加算結果(16ビット)を示し、桁上がりした場合には、16ビットまでの加算結果に「1」を加えた値を示す。また、値Cの「1の補数」は、値Cの各ビットを反転させた値を示す。
【0008】
また、21バイト目以降のオプションフィールドFopは、テスト用のデータ等を挿入する部分でその長さは可変長(0バイトでもよい)であり、このオプションフィールドFopに続くパティングフィールドFpdは、オプションフィールドFopの長さが0あるいは32ビット(4バイト)の整数倍でないときでも、IPヘッダ全体の長さが32ビットの整数倍となるように穴埋めするためのフィールドである。
【0009】
このパティングフィールドFpdには、チェックサムの演算結果に影響を与えないように全ビット0のデータが挿入される。また、IPヘッダ全体の長さを示す値Lは、先頭から5ビット目から8ビット目までのヘッダ長フィールドFhに挿入される。
【0010】
また、IPヘッダの3バイト目から4バイト目のフィールドには、IPヘッダの長さと、IPヘッダに続くデータフィールド(図示せず)の長さを加えたIPパケット全体の長さを示すパケット長が挿入される。
【0011】
このようなフォーマットでIPアドレスDA、SAを任意に可変できるIPヘッダを発生させるために、従来では、図7に示すIPヘッダ発生装置10が用いられている。
【0012】
このIPヘッダ発生装置10は、一次ヘッダ発生部11、アドレス挿入手段12、ヘッダ長抽出手段13、演算手段14、可変遅延手段15およびチェックサム挿入手段16によって構成されている。
【0013】
一次ヘッダ発生部11は、例えば図8の(a)〜(c)に示すように長さが異なる一次ヘッダH1a〜H1cを必要に応じて選択的に出力する。
【0014】
これらの一次ヘッダH1a〜H1cは、チェックサムフィールドFcsに全ビット0のデータが挿入され、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaにダミーデータ(例えば全ビット0)が挿入されている点で共通している。
【0015】
また、一次ヘッダH1aはオプションフィールドFopを含まない最短(20バイト長)のものであり、一次ヘッダH1bはオプションフィールドFopとパティングフィールドFpdとを合わせた長さが4バイト(ヘッダ全体で24バイト長)のものであり、一次ヘッダH1cはオプションフィールドFopとパティングフィールドFpdとを合わせた長さが8バイト(ヘッダ全体で28バイト長)のものである。
【0016】
なお、この一次ヘッダ発生部11は、上記一次ヘッダH1a〜H1cを図示しない所定周波数のクロック信号に同期して所定幅(例えば1バイト幅)で順番に出力する。
【0017】
アドレス挿入手段12は、一次ヘッダ発生部11から出力される一次ヘッダH1の送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaに、所望のIPアドレスSA、DAをそれぞれ挿入して、この所望のIPアドレスSA、DAが挿入されたヘッダを2次ヘッダH2として出力する。
【0018】
ヘッダ長抽出手段13は、アドレス挿入手段12から出力される二次ヘッダH2のヘッダ長フィールドFhに挿入されているヘッダ長Lを抽出して、演算手段14および可変遅延手段15に出力する。
【0019】
演算手段14は、アドレス挿入手段12から出力される二次ヘッダH2の先頭からヘッダ長L分のデータに対するチェックサム演算を行う。
【0020】
可変遅延手段15は、アドレス挿入手段12から出力される二次ヘッダH2を、ヘッダ長Lに対して(L−10)バイトに相当する時間Tdだけ遅延させ、チェックサム挿入手段16において、演算手段14によって算出されたチェックサム値CSが、二次ヘッダH2のチェックサムフィールドFcsに正しく挿入されるようにする。
【0021】
なお、一次ヘッダ発生手段11が一次ヘッダH1を1バイト出力するのに必要な時間をTrとすれば、可変遅延手段15の遅延時間Tdは(L−10)Trで表すことができる。
【0022】
ここで、例えば一次ヘッダ発生部11から前記したオプションフィールドFopを含まない一次ヘッダH1aが出力された場合、図9の(a)のように、その一次ヘッダH1aにIPアドレスSA、DAが挿入された2次ヘッダH2a全体に対して演算手段14によるチェックサム演算が行われ、その演算によって得られたチェックサム値CSaが図9の(b)のようにチェックサム挿入手段16に出力される。
【0023】
一方、アドレス挿入手段12から出力された二次ヘッダH2aは、可変遅延手段15によって、図9の(c)のように(La−10)バイトに相当する時間Td=(La−10)Trだけ遅延してチェックサム挿入手段16に出力される。なお、この場合、ヘッダ長Laは20バイトであるので、遅延時間Tdは10・Trとなる。
【0024】
このように、ヘッダ長Laに応じた時間Tdだけ遅延された二次ヘッダH2aのチェックサムフィールドFcsは、演算手段14によってチェックサム値CSaが算出されたタイミングにチェックサム挿入手段16に入力されることになり、チェックサム挿入手段16からは、図9の(d)のように、チェックサムフィールドFcsにチェックサム値CSaが挿入されたIPヘッダHipが出力される。
【0025】
また、一次ヘッダ発生部11からオプションフィールドFopを含む一次ヘッダH1bが出力された場合、図10の(a)のように、その一次ヘッダH1bに送信元アドレスSAおよび宛て先アドレスDAが挿入された二次ヘッダH2b全体に対するチェックサム演算が行われて、図10の(b)のようにそのチェックサム値CSbが求められてチェックサム挿入手段16へ出力される。
【0026】
また、この二次ヘッダH2bは可変遅延手段15によって、図10の(c)のようにTd=(Lb−10)Trだけ遅延してチェックサム挿入手段16に出力される。なお、この場合、ヘッダ長Lbは24バイトであるので、遅延時間Tdは14・Trとなる。
【0027】
このように、ヘッダ長Lbに応じた時間Tdだけ遅延された二次ヘッダH2bのチェックサムフィールドFcsは、演算手段14によってチェックサム値CSbが算出されたタイミングにチェックサム挿入手段16に入力されることになり、チェックサム挿入手段16からは、図10の(d)のように、チェックサムフィールドFcsにチェックサム値CSbが挿入されたIPヘッダHipが出力される。
【0028】
また、一次ヘッダ発生部11からオプションフィールドFopを含む一次ヘッダH1cが出力された場合、図11の(a)のように、その一次ヘッダH1cに送信元アドレスSAおよび宛て先アドレスDAが挿入された2次ヘッダH2c全体に対するチェックサム演算が行われて、図11の(b)のようにそのチェックサム値CScが求められてチェックサム挿入手段16へ出力される。
【0029】
また、この二次ヘッダH2cは可変遅延手段15によって、図11の(c)のようにTd=(Lc−10)Trだけ遅延してチェックサム挿入手段16に出力される。なお、この場合、ヘッダ長Lcは28バイトであるので、遅延時間Tdは18・Trとなる。
【0030】
このように、ヘッダ長Lcに応じた時間Tdだけ遅延された二次ヘッダH2cのチェックサムフィールドFcsは、演算手段14によってチェックサム値CScが算出されたタイミングにチェックサム挿入手段16に入力されることになり、チェックサム挿入手段16からは、図11の(d)のように、チェックサムフィールドFcsにチェックサム値CScが挿入されたIPヘッダHipが出力される。
【0031】
【発明が解決しようとする課題】
しかしながら、上記した従来のIPヘッダ発生装置10では、一次ヘッダH1の長さに応じて、演算手段14の演算対象範囲や、その演算結果を挿入するための遅延時間Tdを可変しなければならず、ハードウエア構成が複雑になるという問題があった。
【0032】
本発明は、この問題を解決し、一次ヘッダの長さが変化しても、演算対象範囲や遅延時間を変化させる必要がなく同一の処理でIPパケットを生成することができ、ハードウエア構成が簡単なIPヘッダ発生装置を提供することを目的としている。
【0033】
【課題を解決するための手段】
前記課題を達成するために、本発明のIPヘッダ発生装置は、
送信元アドレスフィールドおよび宛て先アドレスフィールドを除くヘッダ全体の16ビット毎の1の補数和をとった値がチェックサムフィールドに予め挿入された長さの異なる複数種類のIPヘッダを一次ヘッダとして予め記憶し、該一次ヘッダのいずれかを先頭から順に出力する一次ヘッダ発生部と、
前記一次ヘッダ発生部から出力される一次ヘッダの送信元アドレスフィールドおよび宛て先アドレスフィールドに所望のIPアドレスを挿入し、該IPアドレスを挿入したヘッダを二次ヘッダとして先頭から順に出力するアドレス挿入手段と、
前記アドレス挿入手段から出力される二次ヘッダのチェックサムフィールド、送信元アドレスフィールドおよび宛て先アドレスフィールドに挿入されている各値を抽出するデータ抽出手段と、
前記データ抽出手段によって二次ヘッダから抽出された各値に対して16ビット毎の1の補数和を算出し、該算出値の1の補数を前記二次ヘッダのチェックサム値としてリアルタイムに算出する演算手段と、
前記アドレス挿入手段から出力される二次ヘッダを受けて、その先頭からチェックサムフィールドの直前までの長さにほぼ相当する時間だけ遅延して出力する固定遅延手段と、
前記演算手段によって算出されたチェックサム値を前記固定遅延手段から出力される二次ヘッダのチェックサムフィールドに挿入して最終的なIPヘッダとして先頭から順に出力するチェックサム挿入手段とを備えている。
【0034】
【発明の実施の形態】
以下、図面に基づいて本発明の実施の形態を説明する。
図1は、本発明を適用したIPヘッダ発生装置20の構成を示している。
【0035】
図1において、一次ヘッダ発生部21は、例えば図2の(a)〜(c)に示すように、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaを除くヘッダ全体の16ビット毎の1の補数和をとった値Kd〜KfがそれぞれのチェックサムフィールドFcsに予め挿入されている一次ヘッダH1d〜H1fを記憶しており、これらの一次ヘッダH1d〜H1fのいずれかを必要に応じて順次出力する。
【0036】
これらの一次ヘッダH1d〜H1fの送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaには例えば0のダミーデータが挿入されている。
【0037】
また、一次ヘッダH1dは、オプションフィールドFopを含まない最短(20バイト長)のものであり、一次ヘッダH1eは、オプションフィールドFopを含む24バイト長のものであり、一次ヘッダH1fは、オプションフィールドFopを含む28バイト長のものである。
【0038】
なお、この一次ヘッダ発生部21は、上記一次ヘッダH1d〜H1fを図示しない所定周波数のクロック信号に同期して所定幅(例えば1バイト幅)で、左上隅を先頭に右下隅まで順番に出力する。
【0039】
アドレス挿入手段22は、一次ヘッダ発生部21から出力される一次ヘッダH1の送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaに所望のIPアドレスSA、DAを挿入し、このIPアドレスを挿入したヘッダを二次ヘッダH2として出力する。
【0040】
なお、このIPアドレスSA、DAは、図示しないアドレス設定手段から設定されるか、あるいはアドレス挿入手段22の内部で発生させたものを用いることができる。
【0041】
データ抽出手段23は、アドレス挿入手段22から出力される二次ヘッダH2のチェックサムフィールドFcs、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaに挿入されている各値K、SA、DAを抽出して演算手段24に出力する。
【0042】
演算手段24は、データ抽出手段23によって二次ヘッダH2から抽出された値K、SA、DAに対して16ビット毎の1の補数和を算出し、その算出値の1の補数を二次ヘッダH2のチェックサム値CSとして算出する。
【0043】
固定遅延手段25は、アドレス挿入手段22から出力される二次ヘッダH2を、その先頭からチェックサムフィールドFcsの直前までの長さ(10バイト)に相当する時間Td、即ち、先頭からチェックサムフィールドFcsの直前までの長さ分のデータを出力するのに必要な時間Tdだけ遅延して、チェックサム挿入手段26に出力する。ここで、前記同様に一次ヘッダ発生手段21が一次ヘッダを1バイト出力するのに必要な時間をTrとすれば、遅延時間Tdは10・Trで表すことができる。
【0044】
ただし、厳密に言えば、上記遅延時間Tdに、演算手段24の演算処理の遅延時間ΔTを加える必要があるが、ここではその遅延時間ΔTを無視できるものとする。
【0045】
チェックサム挿入手段26は、演算手段24によって算出されたチェックサム値CSを固定遅延手段25から出力される二次ヘッダH2のチェックサムフィールドFcsに挿入して、最終的なIPヘッダHipとして出力する。
【0046】
このように構成されたIPヘッダ発生装置20では、例えば一次ヘッダ発生部21から図2に示した一次ヘッダH1d〜H1fのうち、オプションフィールドを含まない一次ヘッダH1dが出力された場合、この一次ヘッダH1dの送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaには、アドレス挿入手段22によって、図3の(a)のように、所望のIPアドレスSA、DAが挿入され、そのIPアドレスが挿入されたヘッダが二次ヘッダH2dとしてデータ抽出手段23および固定遅延手段25に出力される。
【0047】
そして、データ抽出手段23によって、この二次ヘッダH2dの3つの連続するフィールド、即ち、チェックサムフィールドFcs、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaに挿入されている各値Kd、SA、DAが、図3の(b)のように抽出されて演算手段24に出力される。
【0048】
演算手段24は、これらの各値Kd、SA、DAに対して、16ビット毎の1の補数和を計算し、その計算結果の1の補数をこの二次ヘッダH2dのチェックサム値CSdとして求める。
【0049】
なお、このチェックサムの計算は、データ抽出手段23によって抽出されたデータ順にリアルタイムに行われる。
【0050】
即ち、始めに抽出された16ビットの値Kdとそれに続くIPアドレスDAの前半の16ビットのデータについて1の補数和を求め、その結果とIPアドレスDAの後半の16ビットのデータについて1の補数和を求め、その結果とIPアドレスSAの前半の16ビットのデータについて1の補数和を求め、その結果とIPアドレスSAの後半の16ビットのデータについて1の補数和を求め、その結果を反転してチェックサム値CSdとする。
【0051】
このようにして算出されたチェックサム値CSdは、図3の(c)に示すように、アドレス挿入手段22から二次ヘッダH2dの宛て先アドレスフィールドFdaの最終のデータが出力された直後にチェックサム挿入手段26に出力される。
【0052】
一方、アドレス挿入手段22から固定遅延手段25に出力された二次ヘッダH2dは、図3の(d)のように10バイト分に相当する時間Td=10・Trだけ遅れて、チェックサム挿入手段26に出力される。
【0053】
このため、演算手段24によって算出されたチェックサム値CSdは、図3の(e)のように二次ヘッダH2dのチェックサムフィールドFcsに挿入されることになり、このチェックサム値CSdが挿入されたヘッダが最終的なIPヘッダHipとして出力される。
【0054】
また、一次ヘッダ発生部21からオプションフィールドFopを含む一次ヘッダH1eが出力された場合、その一次ヘッダH1eの送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaには、アドレス挿入手段22によって、図4の(a)のように、所望のIPアドレスSA、DAが挿入されて二次ヘッダH2eとしてデータ抽出手段23および固定遅延手段25に出力され、前記同様に、データ抽出手段23によって二次ヘッダH2eのチェックサムフィールドFcs、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaに挿入されている各値Ke、SA、DAが図4の(b)のように抽出されて演算手段24に出力される。
【0055】
そして、演算手段24によって各値Ke、SA、DAに対する16ビット毎の1の補数和およびその計算結果の1の補数が計算され、その計算結果がこの二次ヘッダH2eのチェックサム値CSeとして求められ、図4の(c)のようにチェックサム挿入手段26へ出力される。
【0056】
一方、アドレス挿入手段22から固定遅延手段25に出力された二次ヘッダH2eは、図4の(d)のように10バイト分に相当する時間Td=10・Trだけ遅れて、チェックサム挿入手段26に出力される。
【0057】
このため、演算手段24によって算出されたチェックサム値CSeは、図4の(d)のように二次ヘッダH2eのチェックサムフィールドFcsに挿入されることになり、このチェックサム値CSeが挿入されたヘッダが最終的なIPヘッダHipとして出力される。
【0058】
また、一次ヘッダ発生部21からオプションフィールドFopを含む一次ヘッダH1fが出力された場合、その一次ヘッダH1fの送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaには、アドレス挿入手段22によって、図5の(a)のように、所望のIPアドレスSA、DAが挿入されて二次ヘッダH2fとしてデータ抽出手段23および固定遅延手段25に出力され、前記同様に、データ抽出手段23によって二次ヘッダH2fのチェックサムフィールドFcs、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaに挿入されている各値Kf、SA、DAが図5の(b)のように抽出されて演算手段24に出力される。
【0059】
そして、演算手段24によって各値Kf、SA、DAに対する16ビット毎の1の補数和およびその計算結果の1の補数が計算され、その計算結果がこの二次ヘッダH2fのチェックサム値CSfとして求められ、図5の(c)のようにチェックサム挿入手段26へ出力される。
【0060】
一方、アドレス挿入手段22から固定遅延手段25に出力された二次ヘッダH2fは、図5の(d)のように10バイト分に相当する時間Td=10・Trだけ遅れて、チェックサム挿入手段26に出力される。
【0061】
このため、演算手段24によって算出されたチェックサム値CSfは、図5の(d)のように二次ヘッダH2fのチェックサムフィールドFcsに挿入されることになり、このチェックサム値CSfが挿入されたヘッダが最終的なIPヘッダHipとして出力される。
【0062】
このように、実施形態のIPヘッダ発生装置20は、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaを除くヘッダ全体の1の補数和を表す値KがチェックサムフィールドFcsに予め挿入されたIPヘッダを一次ヘッダH1として一次ヘッダ発生部21から出力し、その一次ヘッダH1に対してアドレス挿入手段22により所望のIPアドレスを挿入し、アドレス挿入手段22から出力される二次ヘッダH2のチェックサムフィールドFcs、送信元アドレスフィールドFsaおよび宛て先アドレスフィールドFdaに挿入されている各値K、SA、DAをデータ抽出手段23により抽出し、抽出した各値K、SA、DAについての1の補数和とその結果に対する1の補数を演算手段24で計算してチェックサム値CSを求め、このチェックサム値CSを、固定遅延手段25によって先頭からチェックサムフィールドの直前までの長さにほぼ相当する所定時間Tdだけ遅延された二次ヘッダH2のチェックサムフィールドFcsに挿入して、最終的なIPヘッダHipを生成している。
【0063】
このため、ヘッダ長が可変された場合でも、一次ヘッダH1に対する同一処理を行うことで、チェックサムフィールドにチェックサム値が正しく挿入されたIPヘッダHipを出力することができ、そのハードウエアの構成を簡単化することができる。
【0064】
なお、上記説明では、IPパケットのIPヘッダのみを生成して出力する場合について説明したが、このIPヘッダに付加されるデータフィールドのデータは、IPヘッダのチェックサムの演算対象外である。
【0065】
したがって、例えば一次ヘッダ発生部21が、上記した一次ヘッダH1にデータフィールドのデータを付加してアドレス挿入手段22へ出力してもよく、この場合でも、アドレス挿入手段22以降で前記同様の処理をすることで、IPヘッダを含むIPパケットを生成出力することができる。
【0066】
また、データフィールドのデータの付加を、一次ヘッダ発生部21とアドレス挿入手段22の間、アドレス挿入手段22と固定遅延手段25の間、固定遅延手段25とチェックサム挿入手段26の間あるいはチェックサム挿入手段26の後で行うことで、IPヘッダを含むIPパケットを生成出力することができる。
【0067】
ただし、このようにデータフィールドのデータをIPヘッダに付加する場合には、IPヘッダのパケット長フィールドの値からヘッダ長フィールドの値を差し引いた値と、付加するデータフィールドのデータの長さとを一致させておく。
【0068】
【発明の効果】
以上説明したように、本発明のIPヘッダ発生装置は、
送信元アドレスフィールドおよび宛て先アドレスフィールドを除くヘッダ全体の16ビット毎の1の補数和をとった値がチェックサムフィールドに予め挿入された長さの異なる複数種類のIPヘッダを一次ヘッダとして予め記憶し、該一次ヘッダのいずれかを先頭から順に出力する一次ヘッダ発生部と、
前記一次ヘッダ発生部から出力される一次ヘッダの送信元アドレスフィールドおよび宛て先アドレスフィールドに所望のIPアドレスを挿入し、該IPアドレスを挿入したヘッダを二次ヘッダとして先頭から順に出力するアドレス挿入手段と、
前記アドレス挿入手段から出力される二次ヘッダのチェックサムフィールド、送信元アドレスフィールドおよび宛て先アドレスフィールドに挿入されている各値を抽出するデータ抽出手段と、
前記データ抽出手段によって二次ヘッダから抽出された各値に対して16ビット毎の1の補数和を算出し、該算出値の1の補数を前記二次ヘッダのチェックサム値としてリアルタイムに算出する演算手段と、
前記アドレス挿入手段から出力される二次ヘッダを受けて、その先頭からチェックサムフィールドの直前までの長さにほぼ相当する時間だけ遅延して出力する固定遅延手段と、
前記演算手段によって算出されたチェックサム値を前記固定遅延手段から出力される二次ヘッダのチェックサムフィールドに挿入して最終的なIPヘッダとして先頭から順に出力するチェックサム挿入手段とを備えている。
【0069】
このため、ヘッダ長が可変された場合でも、一次ヘッダに対して同一処理を行うことで、チェックサムフィールドにチェックサム値が正しく挿入されたIPヘッダを出力することができ、そのハードウエアの構成を簡単化することができる。
【図面の簡単な説明】
【図1】本発明の実施形態の構成を示す図
【図2】実施形態の要部が出力する一次ヘッダを示す図
【図3】実施形態の動作を説明するためのタイミング図
【図4】実施形態の動作を説明するためのタイミング図
【図5】実施形態の動作を説明するためのタイミング図
【図6】IPヘッダのフォーマットを示す図
【図7】従来装置の構成を示す図
【図8】従来装置の一次ヘッダを示す図
【図9】従来装置の動作を説明するためのタイミング図
【図10】従来装置の動作を説明するためのタイミング図
【図11】従来装置の動作を説明するためのタイミング図
【符号の説明】
20 IPヘッダ発生装置
21 一次ヘッダ発生部
22 アドレス挿入手段
23 データ抽出手段
24 演算手段
25 固定遅延手段
26 チェックサム挿入手段[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for generating an IP header capable of arbitrarily changing an address with a simple configuration.
[0002]
[Prior art]
When evaluating a network that performs data transmission according to the TCP / IP protocol and a communication device such as a router that constitutes the data, an IP packet is given to the measurement target, and the IP packet is correctly transmitted to a desired destination. It may be measured whether or not it is done.
[0003]
When performing such measurement, it is necessary to generate an IP header in which an arbitrary address is inserted in the source address field and the destination address field.
[0004]
The IP header of the IP packet currently used for communication has a length of 32 bits (4 bytes) × N (N is an integer of 5 or more) as shown in FIG. To the 16th byte of the source address field Fsa is inserted with the source IP address SA, and the destination address field Fda of the 17th to 20th bytes is inserted with the destination IP address DA. .
[0005]
The checksum field CS of the entire IP header is inserted into the checksum field Fcs from the 11th byte to the 12th byte for error detection.
[0006]
This checksum value CS is obtained by obtaining a 1's complement sum for every 16 bits for all data except the checksum field Fcs of the IP header and taking the 1's complement of the final result of the complement sum. .
[0007]
“16's complement sum” of two 16-bit values A and B indicates the addition result (16 bits) when the values A and B are not added and carry, and when the carry is performed , A value obtained by adding “1” to the addition result up to 16 bits. The “1's complement” of the value C indicates a value obtained by inverting each bit of the value C.
[0008]
The option field Fop after the 21st byte is a portion where test data or the like is inserted, and its length is variable (may be 0 bytes). The putting field Fpd following this option field Fop is an option field. This field is used to fill up the IP header so that the entire length of the IP header is an integral multiple of 32 bits even when the Fop length is not 0 or an integral multiple of 32 bits (4 bytes).
[0009]
In this putting field Fpd, data of all 0 bits is inserted so as not to affect the checksum calculation result. A value L indicating the length of the entire IP header is inserted into the header length field Fh from the 5th bit to the 8th bit from the beginning.
[0010]
Further, in the 3rd to 4th byte fields of the IP header, the packet length indicating the length of the entire IP packet including the length of the IP header and the length of the data field (not shown) following the IP header is added. Is inserted.
[0011]
Conventionally, an
[0012]
The
[0013]
The primary header generation unit 11 selectively outputs primary headers H1a to H1c having different lengths as necessary, for example, as illustrated in (a) to (c) of FIG.
[0014]
In these primary headers H1a to H1c, data of all
[0015]
The primary header H1a is the shortest (20 bytes long) that does not include the option field Fop, and the primary header H1b has a total length of 4 bytes (24 bytes in total for the header), including the option field Fop and the putting field Fpd. The primary header H1c has a combined length of the option field Fop and the putting field Fpd of 8 bytes (28 bytes in total for the header).
[0016]
The primary header generator 11 sequentially outputs the primary headers H1a to H1c in a predetermined width (for example, 1 byte width) in synchronization with a clock signal having a predetermined frequency (not shown).
[0017]
The address insertion unit 12 inserts desired IP addresses SA and DA into the source address field Fsa and the destination address field Fda of the primary header H1 output from the primary header generation unit 11, respectively. The header in which SA and DA are inserted is output as the secondary header H2.
[0018]
The header length extraction unit 13 extracts the header length L inserted in the header length field Fh of the secondary header H2 output from the address insertion unit 12, and outputs the header length L to the
[0019]
The calculation means 14 performs a checksum calculation on the data corresponding to the header length L from the head of the secondary header H2 output from the address insertion means 12.
[0020]
The variable delay means 15 delays the secondary header H2 output from the address insertion means 12 by a time Td corresponding to (L-10) bytes with respect to the header length L. In the checksum insertion means 16, the calculation means The checksum value CS calculated by 14 is correctly inserted into the checksum field Fcs of the secondary header H2.
[0021]
If the time required for the primary header generating means 11 to output one byte of the primary header H1 is Tr, the delay time Td of the variable delay means 15 can be expressed as (L-10) Tr.
[0022]
Here, for example, when the primary header H1a not including the option field Fop described above is output from the primary header generator 11, the IP addresses SA and DA are inserted into the primary header H1a as shown in FIG. Further, the checksum calculation is performed on the entire secondary header H2a by the calculation means 14, and the checksum value CSa obtained by the calculation is output to the checksum insertion means 16 as shown in FIG.
[0023]
On the other hand, the secondary header H2a output from the address insertion unit 12 is transmitted by the variable delay unit 15 for a time Td = (La-10) Tr corresponding to (La-10) bytes as shown in FIG. The data is output to the checksum insertion means 16 with a delay. In this case, since the header length La is 20 bytes, the delay time Td is 10 · Tr.
[0024]
Thus, the checksum field Fcs of the secondary header H2a delayed by the time Td according to the header length La is input to the
[0025]
When the primary header H1b including the option field Fop is output from the primary header generator 11, the source address SA and the destination address DA are inserted into the primary header H1b as shown in FIG. A checksum operation is performed on the entire secondary header H2b, and the checksum value CSb is obtained and output to the checksum insertion means 16 as shown in FIG.
[0026]
Further, the secondary header H2b is delayed by Td = (Lb−10) Tr by the variable delay means 15 as shown in FIG. In this case, since the header length Lb is 24 bytes, the delay time Td is 14 · Tr.
[0027]
Thus, the checksum field Fcs of the secondary header H2b delayed by the time Td according to the header length Lb is input to the
[0028]
When the primary header H1c including the option field Fop is output from the primary header generator 11, the source address SA and the destination address DA are inserted into the primary header H1c as shown in FIG. A checksum operation is performed on the entire secondary header H2c, and the checksum value CSc is obtained and output to the checksum insertion means 16 as shown in FIG.
[0029]
The secondary header H2c is output by the variable delay means 15 to the checksum insertion means 16 after being delayed by Td = (Lc−10) Tr as shown in FIG. In this case, since the header length Lc is 28 bytes, the delay time Td is 18 · Tr.
[0030]
Thus, the checksum field Fcs of the secondary header H2c delayed by the time Td according to the header length Lc is input to the
[0031]
[Problems to be solved by the invention]
However, in the conventional
[0032]
The present invention solves this problem, and even if the length of the primary header changes, it is not necessary to change the calculation target range and the delay time, and the IP packet can be generated by the same processing, and the hardware configuration is The object is to provide a simple IP header generator.
[0033]
[Means for Solving the Problems]
In order to achieve the above object, the IP header generator of the present invention provides:
Previously storing a previously inserted plurality of types of IP header of different lengths were the values checksum field took 1's complement sum of every 16 bits of the entire header excluding the source address field and destination address field as the primary header A primary header generator for outputting any of the primary headers in order from the top ;
Address insertion means for inserting a desired IP address into the source address field and the destination address field of the primary header output from the primary header generator, and outputting the header into which the IP address is inserted as a secondary header in order from the top When,
Data extraction means for extracting each value inserted in the checksum field, source address field and destination address field of the secondary header output from the address insertion means;
For each value extracted from the secondary header by the data extraction means, a 1's complement sum is calculated every 16 bits, and the 1's complement of the calculated value is calculated in real time as the checksum value of the secondary header. Computing means;
Fixed delay means for receiving a secondary header output from the address insertion means, and outputting a delay by a time substantially corresponding to the length from the beginning to immediately before the checksum field;
Checksum insertion means for inserting the checksum value calculated by the arithmetic means into the checksum field of the secondary header output from the fixed delay means and outputting the final IP header in order from the top . .
[0034]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 shows the configuration of an
[0035]
In FIG. 1, the primary header generation unit 21, for example, as shown in FIGS. 2A to 2C, 1's complement for every 16 bits of the entire header excluding the source address field Fsa and the destination address field Fda. Summed values Kd to Kf store primary headers H1d to H1f inserted in advance in the respective checksum fields Fcs, and sequentially output any of these primary headers H1d to H1f as necessary. .
[0036]
For example, dummy data of 0 is inserted in the source address field Fsa and the destination address field Fda of these primary headers H1d to H1f.
[0037]
The primary header H1d is the shortest (20 bytes long) not including the option field Fop, the primary header H1e is 24 bytes long including the option field Fop, and the primary header H1f is the option field Fop. Is 28 bytes long.
[0038]
The primary header generator 21 sequentially outputs the primary headers H1d to H1f in a predetermined width (for example, 1 byte width) in synchronization with a clock signal having a predetermined frequency (not shown) from the upper left corner to the lower right corner. .
[0039]
The address insertion means 22 inserts desired IP addresses SA and DA into the source address field Fsa and destination address field Fda of the primary header H1 output from the primary header generator 21, and the header into which the IP address is inserted is inserted. Output as the secondary header H2.
[0040]
The IP addresses SA and DA can be set by address setting means (not shown) or can be generated within the address insertion means 22.
[0041]
The
[0042]
The computing means 24 calculates a 1's complement sum for each 16 bits for the values K, SA, DA extracted from the secondary header H2 by the
[0043]
The fixed delay means 25 applies the time Td corresponding to the length (10 bytes) from the head of the secondary header H2 output from the address insertion means 22 to immediately before the checksum field Fcs, that is, the checksum field from the head. The data is output to the checksum insertion means 26 after being delayed by a time Td necessary to output the data corresponding to the length immediately before Fcs. Here, if the time required for the primary header generating means 21 to output one byte of the primary header is Tr as described above, the delay time Td can be expressed by 10 · Tr.
[0044]
Strictly speaking, it is necessary to add the delay time ΔT of the arithmetic processing of the arithmetic means 24 to the delay time Td. Here, it is assumed that the delay time ΔT can be ignored.
[0045]
The checksum insertion means 26 inserts the checksum value CS calculated by the calculation means 24 into the checksum field Fcs of the secondary header H2 output from the fixed delay means 25, and outputs it as the final IP header Hip. .
[0046]
In the
[0047]
The data extraction means 23 then uses the values Kd, SA, DA inserted in the three consecutive fields of the secondary header H2d, that is, the checksum field Fcs, the source address field Fsa, and the destination address field Fda. Is extracted and output to the computing means 24 as shown in FIG.
[0048]
The computing means 24 calculates a 1's complement sum for each of these values Kd, SA, DA every 16 bits, and obtains the 1's complement of the calculation result as the checksum value CSd of the secondary header H2d. .
[0049]
Note that the checksum is calculated in real time in the order of the data extracted by the data extraction means 23.
[0050]
That is, a 1's complement sum is obtained for the 16-bit value Kd extracted first and the subsequent 16-bit data of the IP address DA, and the result and the 16-bit data of the latter half of the IP address DA are 1's complement. Find the sum, find the one's complement sum for the first 16 bits of the IP address SA and the result, find the one's complement sum for the last 16 bits of the IP address SA, and invert the result And the checksum value CSd.
[0051]
The checksum value CSd calculated in this way is checked immediately after the final data in the destination address field Fda of the secondary header H2d is output from the address insertion means 22, as shown in FIG. It is output to the thumb insertion means 26.
[0052]
On the other hand, the secondary header H2d output from the address insertion means 22 to the fixed delay means 25 is delayed by a time Td = 10 · Tr corresponding to 10 bytes as shown in FIG. 26.
[0053]
For this reason, the checksum value CSd calculated by the calculation means 24 is inserted into the checksum field Fcs of the secondary header H2d as shown in FIG. 3E, and this checksum value CSd is inserted. The header is output as the final IP header Hip.
[0054]
When the primary header H1e including the option field Fop is output from the primary header generating unit 21, the source address field Fsa and the destination address field Fda of the primary header H1e are added to the source address field Fsa by the
[0055]
Then, the arithmetic means 24 calculates the 1's complement sum for each value Ke, SA, DA and the 1's complement of the calculation result, and the calculation result is obtained as the checksum value CSe of the secondary header H2e. And output to the checksum insertion means 26 as shown in FIG.
[0056]
On the other hand, the secondary header H2e output from the address insertion means 22 to the fixed delay means 25 is delayed by a time Td = 10 · Tr corresponding to 10 bytes as shown in FIG. 26.
[0057]
For this reason, the checksum value CSe calculated by the calculation means 24 is inserted into the checksum field Fcs of the secondary header H2e as shown in FIG. 4D, and this checksum value CSe is inserted. The header is output as the final IP header Hip.
[0058]
When the primary header H1f including the option field Fop is output from the primary header generation unit 21, the source address field Fsa and the destination address field Fda of the primary header H1f are added to the
[0059]
Then, the arithmetic means 24 calculates a 1's complement sum for each value Kf, SA, DA and a 1's complement of the calculation result, and the calculation result is obtained as a checksum value CSf of the secondary header H2f. And output to the checksum insertion means 26 as shown in FIG.
[0060]
On the other hand, the secondary header H2f output from the address insertion means 22 to the fixed delay means 25 is delayed by a time Td = 10 · Tr corresponding to 10 bytes as shown in FIG. 26.
[0061]
For this reason, the checksum value CSf calculated by the calculation means 24 is inserted into the checksum field Fcs of the secondary header H2f as shown in FIG. 5D, and this checksum value CSf is inserted. The header is output as the final IP header Hip.
[0062]
As described above, the
[0063]
For this reason, even when the header length is changed, by performing the same processing on the primary header H1, it is possible to output the IP header Hip with the checksum value correctly inserted in the checksum field. Can be simplified.
[0064]
In the above description, the case where only the IP header of the IP packet is generated and output has been described, but the data in the data field added to the IP header is not subject to the checksum calculation of the IP header.
[0065]
Therefore, for example, the primary header generation unit 21 may add the data of the data field to the primary header H1 and output the data to the
[0066]
Further, the data field data is added between the primary header generator 21 and the address insertion means 22, between the address insertion means 22 and the fixed delay means 25, between the fixed delay means 25 and the checksum insertion means 26, or the checksum. By performing the processing after the
[0067]
However, when adding data field data to the IP header in this way, the value obtained by subtracting the header length field value from the packet length field value of the IP header matches the data length of the data field to be added. Let me.
[0068]
【The invention's effect】
As described above, the IP header generator of the present invention is
Previously storing a previously inserted plurality of types of IP header of different lengths were the values checksum field took 1's complement sum of every 16 bits of the entire header excluding the source address field and destination address field as the primary header A primary header generator for outputting any of the primary headers in order from the top ;
Address insertion means for inserting a desired IP address into the source address field and the destination address field of the primary header output from the primary header generator, and outputting the header into which the IP address is inserted as a secondary header in order from the top When,
Data extraction means for extracting each value inserted in the checksum field, source address field and destination address field of the secondary header output from the address insertion means;
For each value extracted from the secondary header by the data extraction means, a 1's complement sum is calculated every 16 bits, and the 1's complement of the calculated value is calculated in real time as the checksum value of the secondary header. Computing means;
Fixed delay means for receiving a secondary header output from the address insertion means, and outputting a delay by a time substantially corresponding to the length from the beginning to immediately before the checksum field;
Checksum insertion means for inserting the checksum value calculated by the arithmetic means into the checksum field of the secondary header output from the fixed delay means and outputting the final IP header in order from the top . .
[0069]
For this reason, even when the header length is variable, the IP header with the checksum value correctly inserted in the checksum field can be output by performing the same processing on the primary header, and the hardware configuration thereof Can be simplified.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of an embodiment of the present invention. FIG. 2 is a diagram showing a primary header output by a main part of the embodiment. FIG. 3 is a timing diagram for explaining an operation of the embodiment. FIG. 5 is a timing diagram for explaining the operation of the embodiment. FIG. 6 is a diagram showing a format of an IP header. FIG. 7 is a diagram showing a configuration of a conventional apparatus. 8 is a diagram showing a primary header of a conventional device. FIG. 9 is a timing diagram for explaining the operation of the conventional device. FIG. 10 is a timing diagram for explaining the operation of the conventional device. Timing chart for explanation [Explanation of symbols]
20 IP header generator 21
Claims (1)
前記一次ヘッダ発生部から出力される一次ヘッダの送信元アドレスフィールドおよび宛て先アドレスフィールドに所望のIPアドレスを挿入し、該IPアドレスを挿入したヘッダを二次ヘッダとして先頭から順に出力するアドレス挿入手段と、
前記アドレス挿入手段から出力される二次ヘッダのチェックサムフィールド、送信元アドレスフィールドおよび宛て先アドレスフィールドに挿入されている各値を抽出するデータ抽出手段と、
前記データ抽出手段によって二次ヘッダから抽出された各値に対して16ビット毎の1の補数和を算出し、該算出値の1の補数を前記二次ヘッダのチェックサム値としてリアルタイムに算出する演算手段と、
前記アドレス挿入手段から出力される二次ヘッダを受けて、その先頭からチェックサムフィールドの直前までの長さにほぼ相当する時間だけ遅延して出力する固定遅延手段と、
前記演算手段によって算出されたチェックサム値を前記固定遅延手段から出力される二次ヘッダのチェックサムフィールドに挿入して最終的なIPヘッダとして先頭から順に出力するチェックサム挿入手段とを備えたIPヘッダ発生装置。 Previously storing a previously inserted plurality of types of IP header of different lengths were the values checksum field took 1's complement sum of every 16 bits of the entire header excluding the source address field and destination address field as the primary header A primary header generator for outputting any of the primary headers in order from the top ;
Address insertion means for inserting a desired IP address into the source address field and the destination address field of the primary header output from the primary header generator, and outputting the header into which the IP address is inserted as a secondary header in order from the top When,
Data extraction means for extracting each value inserted in the checksum field, source address field and destination address field of the secondary header output from the address insertion means;
For each value extracted from the secondary header by the data extraction means, a 1's complement sum is calculated every 16 bits, and the 1's complement of the calculated value is calculated in real time as the checksum value of the secondary header. Computing means;
Fixed delay means for receiving a secondary header output from the address insertion means, and outputting a delay by a time substantially corresponding to the length from the beginning to immediately before the checksum field;
IP having checksum insertion means for inserting the checksum value calculated by the arithmetic means into the checksum field of the secondary header output from the fixed delay means and outputting the final IP header in order from the top Header generator.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001232819A JP3628286B2 (en) | 2001-07-31 | 2001-07-31 | IP header generator |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001232819A JP3628286B2 (en) | 2001-07-31 | 2001-07-31 | IP header generator |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2003046565A JP2003046565A (en) | 2003-02-14 |
| JP3628286B2 true JP3628286B2 (en) | 2005-03-09 |
Family
ID=19064674
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001232819A Expired - Fee Related JP3628286B2 (en) | 2001-07-31 | 2001-07-31 | IP header generator |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3628286B2 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109309605A (en) * | 2018-11-26 | 2019-02-05 | 北京邮电大学 | In-band network telemetry system and method |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU2003217093A1 (en) * | 2003-02-24 | 2004-09-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for performing fast checksum operations in a gprs communication system utilising tunnelling |
| CN105791128B (en) * | 2016-01-28 | 2018-12-14 | 东南大学 | A kind of IP packet receiving handling method and device |
| JP6567476B2 (en) * | 2016-08-10 | 2019-08-28 | 株式会社ワイ・デー・ケー | Data processing device |
-
2001
- 2001-07-31 JP JP2001232819A patent/JP3628286B2/en not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109309605A (en) * | 2018-11-26 | 2019-02-05 | 北京邮电大学 | In-band network telemetry system and method |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2003046565A (en) | 2003-02-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6654823B2 (en) | Packet-data processing apparatus | |
| US6654701B2 (en) | Method and apparatus for measuring protocol performance in a data communication network | |
| US6600759B1 (en) | Apparatus for estimating jitter in RTP encapsulated voice packets received over a data network | |
| US20120275460A1 (en) | Method for processing a plurality of data and switching device for switching communication packets | |
| CN102812670A (en) | Token bucket management device and method for managing token bucket | |
| US6128766A (en) | High speed cyclic redundancy check algorithm | |
| JP3628286B2 (en) | IP header generator | |
| US6871312B2 (en) | Method and apparatus for time stamping data | |
| US20110007754A1 (en) | Flexible Hardware Checksum Generator | |
| US20190306002A1 (en) | Network interface controller | |
| JP2014529245A (en) | System and method for identifying time of reception of data packet | |
| US7035250B2 (en) | System for organizing voice channel data for network transmission and/or reception | |
| CN108460044B (en) | Data processing method and device | |
| Sutter et al. | Fpga-based tcp/ip checksum offloading engine for 100 gbps networks | |
| JP2004120675A (en) | Test packet generating apparatus | |
| CN1846424B (en) | Checksum determination | |
| CN112134750B (en) | Network time protocol stress testing method and device | |
| JP2007282093A (en) | Apparatus and method for clock signal generation | |
| KR100666997B1 (en) | High speed checksum processing apparatus and method | |
| CN116938789A (en) | Address setting method and device, storage medium and electronic device | |
| US7103005B2 (en) | System and method for resolving wraparound ambiguity in a counter | |
| US9509585B1 (en) | Apparatus and method for time stamping packets across several nodes in a network | |
| JP4611826B2 (en) | Transmitter | |
| JP3362715B2 (en) | IP fragment processing apparatus, storage medium storing method and program | |
| JP4324968B2 (en) | Frame generator |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040601 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040608 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040809 |
|
| 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: 20041124 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041207 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071217 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081217 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081217 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091217 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091217 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101217 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101217 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111217 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111217 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121217 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121217 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131217 Year of fee payment: 9 |
|
| LAPS | Cancellation because of no payment of annual fees |