JP4447137B2 - パケット転送処理装置 - Google Patents
パケット転送処理装置 Download PDFInfo
- Publication number
- JP4447137B2 JP4447137B2 JP2000269913A JP2000269913A JP4447137B2 JP 4447137 B2 JP4447137 B2 JP 4447137B2 JP 2000269913 A JP2000269913 A JP 2000269913A JP 2000269913 A JP2000269913 A JP 2000269913A JP 4447137 B2 JP4447137 B2 JP 4447137B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- memory
- mac address
- destination
- buffer memory
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
本発明は、複数の受信側ポートからそれぞれ可変長のパケットを受信し、各パケットの宛先に対応した送信側ポートからパケットを送出するパケット転送処理装置に関する。
【0002】
【従来の技術】
可変長パケットを送受信するネットワークは、パケットを、その宛先アドレスに転送する為のパケット転送処理装置を単一或いは複数備えている。例えば、図8に示すように、パケット転送処理装置51を、加入者ノード装置55を含むローカル網とインターネット網54との間に設け、受信したパケットを宛先アドレスに従って配信するものである。
【0003】
パケット転送処理装置51は、複数の加入者ノード装置55を接続した加入者ノードインタフェース部52と、パケットを宛先アドレスに従って配信処理するパケット配信部53とを含む構成を有し、又加入者ノード装置55は複数のパソコン(パーソナルコンピュータ)56を接続し、インターネット網54からのパケットを宛先アドレスに対応したパソコン56に転送し、又パソコン56からのパケットを宛先アドレスに対応したインターネット網54に含まれるプロバイダー等に転送する。
【0004】
図9は従来例のパケット転送処理装置の説明図であり、61は加入者側終端部、62はインターネット網終端部、63はバッファメモリ、64は配信先ポートテーブル、65は送受信制御部、66は加入者側パケット生成部、67はインターネット網パケット生成部、Pin11〜Pin1n,Pin21〜Pin2nはパケットの受信側ポート、Pout11〜Pout1n,Pout21〜Pout2nは送信側ポートを示す。
【0005】
パケットは、宛先MAC(Media Access Control)アドレスと、送信元MACアドレスと、nバイトのデータと、CRC(Cyclic Redundancy Check)(又はFCS;Frame Check Sequence )を含み、nバイトのデータは可変長のものである。配信先ポートテーブル64は、宛先MACアドレスと送信側ポートPout11〜Pout1n,Pout21〜Pout2nとを対応させたテーブルである。又加入者側終端部61とインターネット網終端部62とは、それぞれ受信したパケットを一時的に蓄積する受信メモリを備え、又加入者側パケット生成部66は、送信するパケットを一時的に蓄積する送信メモリと、ローカル網対応のフォーマットのパケットを生成する機能とを備え、インターネット網パケット生成部67は、送信メモリと、インターネット網対応のフォーマットのパケットを生成する機能を備えている。
【0006】
送受信制御部65は、加入者側終端部61とインターネット網終端部62との受信メモリにパケットを受信完了した時に、受信完了順に従ってパケットをバッファメモリ63に転送すると共に、宛先MACアドレスを基に配信先ポートテーブル64を検索し、その宛先MACアドレスに対応する送信側ポートを読取って、その送信側ポートが属する加入者側パケット生成部66又はインターネット網パケット生成部67の送信メモリに、バッファメモリ63からのパケットを転送する。それによって、加入者側終端部61の受信メモリに受信したパケットを、宛先MACアドレスに従って、加入者側パケット生成部66からローカル網パケットのフォーマットとして転送する。又はインターネット網パケット生成部67からインターネット網パケットのフォーマットとして転送する。
【0007】
【発明が解決しようとする課題】
パケット長は可変であるから、加入者側終端部61又はインターネット側終端部62の受信メモリからバッファメモリ63へパケットを転送する時に、例えば、最大長又はそれに近いパケット長のパケットを転送すると、その間、他の受信メモリにパケットが受信蓄積されても、バッファメモリ63へ転送することができないものである。即ち、パケット長の長いパケットの装置内の転送に於いて、他のパケットの装置内の転送が待ち合わされることになり、パケットの転送遅延が大きくなる問題がある。
【0008】
又配信先ポートテーブル64から順次MACアドレスを読出し、このMACアドレスと、バッファメモリ63に転送するパケットの宛先MACアドレスとを比較し、一致したMACアドレスに対応する送信側ポート番号を送受信制御部65が読出すことにより、バッファメモリ63から宛先MACアドレスに対応した送信側ポートにパケットを転送することができるが、多数のMACアドレスの検索処理に要する時間が長くなる。それにより、パケットの転送遅延が大きくなる問題がある。
本発明は、パケットの装置内の転送を高速化することを目的とする。
【0009】
【課題を解決するための手段】
本発明のパケット転送処理装置は、図1を参照して説明すると、複数の受信側ポート対応のパケット終端部内の受信メモリからパケットをバッファメモリ11に転送し、このバッファメモリ11から宛先対応の送信側ポートのパケット生成部内の送信メモリに転送するパケット転送処理装置であって、MACアドレスに対応した送信側ポート情報(例えば、ポート番号)を格納し、宛先MACアドレスと一致するMACアドレス対応の送信側ポートを読出す内容参照可能メモリ12(CAM)と、受信メモリに受信格納したパケットの宛先MACアドレスにより、内容参照可能メモリ12をアクセスして送信側ポート情報を読出し、この送信側ポート対応の送信メモリにバッファメモリ11からパケットを転送する転送先制御部13や送信制御部15等の手段とを備えている。
【0010】
又総ての送信側ポートについてMACアドレスを読出アドレスとして格納した配信先ポートテーブルと、内容参照可能メモリ12にパケットの宛先MACアドレスと一致するMACアドレスが格納されていない時に、配信先ポートテーブルから読出した送信側ポートと宛先MACアドレスとを書込む学習制御手段とを備えることができる。又受信側ポートからのパケットのパケット長をレングスとして、パケットの先頭に付加して受信メモリに書込む手段と、パケットのパケット長が所定長より長いか否かをレングスにより判定し、所定長より長い場合にブロックに分割して、このブロック単位で受信メモリからバッファメモリ11に転送し、且つバッファメモリ11にレングスに対応した連続領域を確保して、ブロック単位のデータを書込む手段とを備えることができる。
【0011】
又複数の受信メモリからブロック単位でバッファメモリ11に転送する時に、異なるパケットをそれぞれ識別可能とする情報(例えば、モジュロ番号)を各ブロックに付加するモジュロ付加部と、バッファメモリ11のモジュロ番号対応の領域にブロック単位のデータを順次書込む手段とを備えることができる。又受信メモリからバッファメモリ11にブロック単位で転送し、1パケットの先頭ブロックに含まれる宛先MACアドレスにより、内容参照可能メモリをアクセスして送信側ポートを読出し、受信メモリからバッファメモリ11へ1パケットの全ブロックの転送終了により、バッファメモリ11から送信側ポートに対応した送信メモリに1パケットとして転送する手段を備えることができる。
【0012】
【発明の実施の形態】
図1は本発明の実施の形態の説明図であり、1はパケット転送処理装置、2はローカル網、3はインターネット網、11はバッファメモリ、12は内容参照可能メモリ(CAM;Content Addressable Memory ,連想メモリ)、13は転送先制御部、14は受信制御部、15は送信制御部、16,17はパケット終端部、18,19はパケット生成部を示す。
【0013】
ローカル網2と接続したパケット終端部16は、加入者側終端部に相当し、又インターネット網3に接続したパケット終端部17はインターネット側終端部に相当し、それぞれ複数の受信側ポートと受信メモリとを備えている。又ローカル網と接続したパケット生成部18は、加入者側パケット生成部に相当し、又インターネット網3に接続したパケット生成部19は、インターネット網パケット生成部に相当し、それぞれ複数の送信側ポートと送信メモリとを備えている。
【0014】
又内容参照可能メモリ12(CAM)は、MACアドレスと送信側ポート情報とを格納したものであり、パケット終端部17,18で終端処理したパケットの宛先MACアドレスを用いてアクセスすることにより、この宛先MACアドレスと一致するMACアドレスに対応した送信側ポート情報を読出すものである。従って、MACアドレスを読出して宛先MACアドレスと比較する処理を行うことなく、宛先MACアドレスに対応した送信側ポート情報を高速で求めることができる。そして、この送信側ポート情報を用いて転送先制御部13は、送信制御部15を制御して、バッファメモリ11から、送信側ポート対応のパケット生成部18,19の送信メモリにパケットを転送する。
【0015】
又受信制御部14により制御するパケット終端部16,17の図示を省略した受信メモリからバッファメモリ11へのパケットの転送は、所定長のブロック対応で行うものである。即ち、パケット長の長いパケットは、所定長のブロックに分割し、複数のパケットについて、ブロック単位で順次転送する。その場合、転送過程のパケットを識別する為の情報として、モジュロ番号をブロックに付加して転送し、バッファメモリ11には、モジュロ番号を削除し、且つ同一モジュロ番号のブロックを連続領域に順次格納して、1パケットを形成する。
【0016】
例えば、第1〜第3の受信側ポートから受信した第1〜第3のパケットについて、ブロック単位で交互に転送する場合、第1のパケットについての転送ブロックには“01”、第2のパケットの転送ブロックには“10”、第3のパケットの転送ブロックには“11”のモジュロ番号を付加して転送することができる。又転送終了時にモジュロ番号を“00”とする。又ブロック単位の転送過程に於ける新たなパケットについてのブロック単位の転送が開始された時は、転送終了によるモジュロ番号“00”を、使用中でない他のモジュロ番号と異なるモジュロ番号として付加することができる。
【0017】
従って、パケット長の長いパケットの全体の転送終了を待つことなく、或るモジュロ番号のパケットの1ブロックの転送終了により、他のモジュロ番号のパケットの1ブロックを転送することができるから、パケット長の短いパケットの待ち合わせの時間を短縮することができる。即ち、装置内転送の処理時間を短縮することができる。
【0018】
図2及び図3は本発明の実施の形態のパケット転送処理装置の説明図であり、図2に於いて、21は加入者側終端部、22はインターネット網側終端部、23,25は受信メモリ、24,26読出要求管理部、27は読出要求受付部、28は読出順序管理部、29は読出待ち管理部、30はモジュロ付加部、31はレングス取込部、32はブロックサイズ判定部、33はデータ読出制御部、34はデータ先頭指示部、35はDPRAM書込制御部、39は読出終了データ管理部、Pin11〜Pin21,Pin21〜Pin2mは受信側ポートを示す。
【0019】
又図3に於いて、36はバッファメモリ(デュアル・ポート・メモリDPRAM)、37はデータ先頭取込部、38はメモリ(FIFO)、40はCAM検索部、41はCAM学習制御部、42は内容参照可能メモリ(CAM)、43は配信先ポートテーブル、44は配信先判定部、45はDPRAM読出制御部、46,48は送信メモリ、47は加入者側パケット生成部、49はインターネット網パケット生成部、Pout11〜Pout1n,Pout21〜Pout2mは送信側ポートを示す。なお、複数のハイウェイを含むものであるが、簡略化の為に1本のハイウェイとして図示している。
【0020】
バッファメモリ36が図1のバッファメモリ11に対応し、内容参照可能メモリ42が図1の内容参照可能メモリ12に対応し、受信側ポートPin11〜Pin21と送信側ポートPout11〜Pout1nとが図1のローカル網2に接続され、受信側ポートPin21〜Pin2mと送信側ポートPout21〜Pout2mが図1のインターネット網3に接続される。
【0021】
受信側ポートPin11〜Pin21,Pin21〜Pin2mからのパケットを加入者側終端部21及びインターネット網終端部22により終端し、受信メモリ23,25に対して書込みを行う。その時、宛先MACアドレスや送信元MACアドレスを含むパケット長を、書込時のビットをカウントするカウンタ等により求めることができる。それにより求めたパケットのレングス情報を、受信メモリ23,25に書込んだパケットの先頭に付加する。このレングス付加機能は、加入者側終端部21及びインターネット網終端部22に設けることができる。なお、パケットにはレングス情報が付加されている場合があるが、通常はデータ長を示すもので、宛先MACアドレス等のヘッダを含むパケット長を示す情報は付加されていないものである。そして、読出要求管理部24,26は、受信メモリ23,25に1パケットの書込みが終了すると、読出要求受付部27に読出要求を送出する。
【0022】
この読出要求が競合しない場合、読出順序管理部28から読出要求をデータ読出制御部33に通知し、又競合する場合は、読出待ち管理部29の待ち行列(キュー;queue)により管理され、読出順序管理部28の制御に従った順序で待ち行列から読出要求を取り出してデータ読出制御部33に通知する。又レングス取込部31により受信メモリ23,25に格納したパケットのレングス情報を取込み、ブロックサイズ判定部32に於いてパケットを分割するブロックサイズを定めてデータ読出制御部33に通知する。例えば、最小パケット長のパケットをブロックサイズとして、他のパケットをこのブロックサイズに分割する。或いは、予め固定的にブロックサイズを定めることもできる。又ブロックサイズに従って分割したパケットについて最後のブロックが端数的となっても、そのまま1ブロックとして転送処理するものである。この場合のブロックに分割する所定長によりパケット長が長いか否かは、前述のレングス情報により直ちに判定することができる。
【0023】
データ読出制御部33は、ブロックサイズ判定部32からのブロックサイズ情報と、読出順序管理部28からの読出要求とに基づいて、読出要求管理部24,26を制御し、受信メモリ23,25からブロック単位で読出してバッファメモリ36に転送する。その時、モジュロ付加部30に於いて異なるパケットを識別可能とするモジュロ番号を付加してバッファメモリ36に転送する。又データ読出制御部33からの読出制御情報を基にDPRAM書込制御部35による書込手段によって、バッファメモリ36に対するブロック単位の書込みが制御される。その場合、図示を省略したバッファメモリ36に対する書込制御機能によって、ブロック対応に付加されたモジュロ番号を削除し、且つ同一モジュロ番号のブロックを順次同一の連続した領域に書込むものである。その場合、パケット長を示すレングスを判定できるから、連続した領域の確保は簡単に行うことができる。そして、全ブロックの転送が終了すると、バッファメモリ36に1パケット分の転送が終了したことになる。
【0024】
又データ先頭取込部37は、受信メモリ23,25からバッファメモリ36にブロック単位で転送されるパケットの先頭部分、即ち、宛先MACアドレスを含むブロックを取込んで、先入れ先出しのメモリ38(FIFO)に宛先MACアドレスを順次書込み、CAM検索制御部40に順次宛先MACアドレスを読出して転送する。
【0025】
CAM検索制御部40は、宛先MACアドレスを用いて、内容参照可能メモリ42(CAM)に格納されたMACアドレス対応の送信側ポート情報を読出し、配信先判定部44に通知する。この場合、宛先MACアドレスが内容参照可能メモリ42に存在しない時に、CAM学習制御部41を起動し、CAM学習制御部41により配信先ポートテーブル43から宛先MACアドレスに対応する送信側ポート情報を読出し、そのMACアドレスと対応させて送信側ポート情報を、内容参照可能メモリ42に書込む。従って、内容参照可能メモリ42には、実際にパケット転送に使用するMACアドレスと送信側ポート情報とを、CAM学習制御部41等による学習制御手段によって格納することができる。それにより、次回からは、このMACアドレスに対応した送信側ポート情報を内容参照可能メモリ42から直ちに読出すことができる。
【0026】
配信先判定部44は、バッファメモリ36にブロック単位のデータが1パケット分転送された時に、CAM検索制御部40からの送信側ポート番号をDPRAM読出制御部45に通知する。DPRAM読出制御部45は、送信側ポートに対応する送信メモリ46又は送信メモリ48に、バッファメモリ36から1パケット分のデータを読出して転送させる。加入者側パケット生成部47は、ローカル網対応のパケット形式に変換して、指定された送信側ポートPout11〜Pout1nにパケットを送信する。又インターネット網パケット生成部48は、インターネット網対応のパケット形式に変換して、指定された送信側ポートPout21〜Pout2mにパケットを送信する。
【0027】
図4は配信先判定処理の説明図であり、内容参照可能メモリ42(CAM)と配信先ポートテーブル43とについて示し、R/Wはリード/ライト制御信号、CMD/DTはコマンドデータ切替制御信号、DTBはMACアドレスを転送するデータバス、MFはマッチフラグを示す。配信先ポートテーブルは、MACアドレスを読出アドレスとした領域に、配信先ハイウェイ情報HWと配信先ポート情報(送信側ポート情報)Pとを格納した構成を有し、配信先ハイウェイ情報HWと配信先ポート情報Pとは、例えば、上位オペレーティングシステム等によって、パケット転送装置に於ける全配信先ポートについて設定する。
【0028】
又内容参照可能メモリ42は、CAM学習制御部41(図3参照)によりMACアドレスについての学習を行い、MACアドレス対応に、配信先ハイウェイ情報HWと配信先ポート情報Pとを格納する。又内容参照可能メモリ42は、CAM検索制御部40(図3参照)からデータバスDTBを介して加えられた宛先MACアドレスと一致するMACアドレスが格納されている場合に、マッチフラグMFをセットするフラグ領域を有するものである。
【0029】
前述のように、CAM検索制御部40から宛先MACアドレスを用いて内容参照可能メモリ42をアクセスし、リード/ライト制御信号R/Wはリードを示し、宛先MACアドレスと一致するMACアドレスが格納されている時に、配信先ハイウェイ情報HWと配信先ポート情報Pとを読出すことができる構成であり、その時にマッチフラグMFをセットして、読出した配信先ハイウェイ情報HWと配信先ポート情報PとをCAM検索制御部40に転送する。このマッチフラグMFは、再読出しによりリセットされる構成とするか、又は次のMACアドレス検索開始時にリセットされる構成とすることができる。
【0030】
CAM検索制御部40は、マッチフラグMFがセットされた時に、内容参照可能メモリ42から読出した配信先ハイウェイ情報HWと配信先ポート情報Pとを配信先判定部44に転送する。又マッチフラグMFがセットされない場合、内容参照可能メモリ42に宛先MACアドレスと一致するMACアドレスが格納されていないことが判定される。そこで、CAM学習制御部41が起動され、配信先ポートテーブル43から読出した宛先MACアドレス対応の配信先ハイウェイ情報HWと配信先ポート情報Pと、ライトを示すリード/ライト制御信号R/Wとを内容参照可能メモリ42に加えて、MACアドレスとそれに対応する配信先ハイウェイ情報HWと配信先ポート情報Pとを書込むものである。このようにして内容参照可能メモリ42は、実際に使用する配信先ハイウェイHWと配信先ポートとを学習することができる。
【0031】
図5はブロック単位の転送説明図であり、送信元MACアドレスと、宛先MACアドレスと、nバイトのデータと、CRCとを含む可変長のパケットを受信メモリに書込む時に、前述のように、このパケット長を求めてレングスとして先頭に付加する。そして、受信メモリからバッファメモリに転送する時に、分割したブロック単位で読出して転送する。なお、1〜4ブロックをそれぞれmバイトのブロックとして転送し、5ブロック目はmバイト以下のバイト数のブロックとなった場合を示している。
【0032】
図6は複数パケットのブロック単位の転送説明図であり、受信側ポートPa,Pb,Pcから受信したパケットについて、ブロック単位で転送する場合に於いて、例えば、時刻t0に受信側ポートPa,Pb,Pc対応の受信メモリにパケットA1,B1,C1を受信完了し、時刻t1にパケットB2を受信完了したとすると、パケット長の短いパケットB1を1ブロックとして、他のパケットA1,C1を分割し、例えば、時刻t11にパケットA1の全長を転送することなく、パケットA1を分割したブロックA1−1を受信メモリからバッファメモリに転送し、次の時刻t12にパケットB1を転送し、次の時刻t13にパケットC1のブロックC1−1を転送し、次の時刻t14にパケットA1のブロックA1−2を転送するように、ブロック単位でそれぞれ順次転送する。
【0033】
その場合に、パケットA1のブロックA1−1〜A1−6にはそれぞれモジュロ番号の例えば“01”を付加してパケットA1であることを示し、パケットB1は、モジュロ番号を付加した場合、例えば“10”とし、パケットC1のブロックC1−1〜C1−3にはそれぞれモジュロ番号“11”を付加する。そして、バッファメモリに書込む場合に、それぞれのモジュロ番号に対応した連続領域に、モジュロ番号を取り除いてブロック単位で順次書込むものである。従って、パケット長の短いパケットB1は、パケット長の長いパケットA1の転送が終了するまで待つことなく、バッファメモリに転送することができる。即ち、装置内転送の高速化を図ることができる。
【0034】
図7は装置内転送の従来例と本発明との対比説明図であり、(A)は従来例、(B)は本発明の場合を示す。又受信側ポートPa〜PcからのパケットA1,B1,B2,C1の受信完了時刻がそれぞれ相違する場合に於いて、パケットA1,C1についてはブロック単位に分割した状態をA1−1〜A1−6,C1−1〜C1−3として示す。
【0035】
同図の(A)の従来例に於いては、先に受信完了したパケットA1に対して、受信メモリからバッファメモリに転送し、このパケットA1の転送終了後に、パケットB1を受信メモリからバッファメモリに転送し、次にパケットC1を転送し、このパケットC1の転送終了後に、次のパケットB2の転送を行うものである。即ち、パケットA1の受信完了後のパケットB1は、パケット長の長いパケットA1の転送終了まで待ち合わせとなり、パケットB1の装置内転送の遅延が大きいものである。
【0036】
これに対して、本発明は、(B)に示すように、パケット長の長いパケットは例えばmバイトのブロックに分割し、先ず受信完了のパケットA1のブロックA1−1を受信メモリからバッファメモリに転送し、次のブロックA1−2も転送した時に、1ブロック長のmバイトのパケットB1の受信が完了していると、ブロックA1−2の次にこのパケットB1を転送して、次にパケットA1のブロックA1−3を転送する。
【0037】
この時、3ブロック長のパケットC1の受信が完了しているとすると、ブロックA1−3の次にパケットC1のブロックC1−1を転送し、次にパケットA1のブロックA1−4を転送し、次にパケットC1のブロックC1−2を転送し、次にパケットA1のブロックA1−5を転送する。この時、1ブロック長のmバイトのパケットB2の受信が完了しているとすると、ブロックA1−5の次に、パケットB2を転送し、次にパケットC1のブロックC1−3を転送し、次にパケットA1のブロックA1−6を転送する。従って、パケット長の短いパケットが、パケット長の長いパケットの転送終了まで待ち合わされることがなく、全体としての装置内転送の高速化を図ることができる。
【0038】
【発明の効果】
以上説明したように、本発明は、MACアドレスに対応した送信側ポート情報を格納した内容参照可能メモリ(CAM)12,42と、宛先MACアドレスに対応した送信側ポートに、バッファメモリ11,36から送信側ポート対応の送信メモリ46,48に転送する配信先判定部44やDPRAM読出制御部45等の手段を備えており、パケットの宛先MACアドレスに対応した送信側ポート情報の高速読出しが可能であるから、装置内のパケット転送処理の高速化を図ることができる利点がある。又内部参照可能メモリ42に対してCAM学習制御部41等の学習制御手段によって、MACアドレスと送信側ポート情報とについて学習させることができるから、システムの拡張等による対応が簡単となる利点がある。
【0039】
又受信側ポート対応の受信メモリ21,22からバッファメモリ36に対して転送するパケットを、所定長のブロックに分割して、ブロック単位で転送することにより、複数のパケットについて、パケット長の短いパケットも、パケット長の長いパケットの転送終了を待つことなく、ブロック単位の転送終了により、バッファメモリ36に転送することができるから、待ち合わせの時間を短縮して、パケットの装置内転送の高速化を図ることができる利点がある。
【図面の簡単な説明】
【図1】本発明の実施の形態の説明図である。
【図2】本発明の実施の形態のパケット転送処理装置の説明図である。
【図3】本発明の実施の形態のパケット転送処理装置の説明図である。
【図4】配信先判定処理の説明図である。
【図5】ブロック単位の転送説明図である。
【図6】複数パケットのブロック単位の転送説明図である。
【図7】装置内転送の従来例と本発明との対比説明図である。
【図8】ネットワーク構成の説明図である。
【図9】従来例のパケット転送処理装置の説明図である。
【符号の説明】
1 パケット転送処理装置
11 バッファメモリ
12 内容参照可能メモリ(CAM)
13 転送先制御部
14 受信制御部
15 送信制御部
16,17 パケット終端部
18,19 パケット生成部
Claims (3)
- 複数の受信側ポート対応の受信メモリから宛先を示すMACアドレスを含むパケットをバッファメモリに転送し、該バッファメモリから送信側ポート対応の送信メモリに転送するパケット転送処理装置に於いて、
MACアドレスに対応した送信側ポート情報を格納し、宛先を示すMACアドレスと一致するMACアドレス対応の送信側ポート情報を読出す内容参照可能メモリと、
前記受信メモリに受信格納したパケットの宛先を示すMACアドレスにより前記内容参照可能メモリにアクセスして前記送信側ポート情報を読出し、該送信側ポート情報から送信メモリを特定し、特定した送信メモリに前記バッファメモリからパケットを転送する手段と、
前記MACアドレスを読出アドレスとして前記送信側ポート情報を格納した配信先ポートテーブルと、
前記内容参照可能メモリに前記パケットの宛先MACアドレスと一致するMACアドレスが格納されていない時に、前記配信先ポートテーブルから読出した送信側ポート情報と該宛先MACアドレスとを前記内容参照可能メモリに書込む学習制御手段と、
前記受信側ポートからのパケットのパケット長をレングスとして、該パケットの先頭に付加して前記受信メモリに書込む手段と、
前記パケットのパケット長が所定長より長いか否かを前記パケットの先頭に付加したレングスにより判定し、所定長より長い場合に該所定長のブロックに分割して該ブロック単位で前記受信メモリから前記バッファメモリに転送し、且つ該バッファメモリに前記レングスに対応した連続領域を確保して、前記ブロック単位のデータを書込む手段
とを備えたことを特徴とするパケット転送処理装置。 - 複数の前記受信メモリからブロック単位で前記バッファメモリに転送するパケットをそれぞれ識別可能とするモジュロ番号を各ブロックに付加するモジュロ付加部と、前記バッファメモリの該モジュロ番号対応の領域にブロック単位のデータを順次書込む手段とを備えたことを特徴とする請求項1記載のパケット転送処理装置。
- 前記受信メモリから前記バッファメモリにブロック単位で転送し、1パケットの先頭ブロックに含まれる宛先MACアドレスにより前記内容参照可能メモリをアクセスして送信側ポート情報を読出し、前記受信メモリから前記バッファメモリへ前記1パケットの全ブロックの転送終了により、該バッファメモリから前記送信側ポート情報により特定される送信メモリに1パケットとして転送する手段を備えたことを特徴とする請求項1記載のパケット転送処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000269913A JP4447137B2 (ja) | 2000-09-06 | 2000-09-06 | パケット転送処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000269913A JP4447137B2 (ja) | 2000-09-06 | 2000-09-06 | パケット転送処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002084311A JP2002084311A (ja) | 2002-03-22 |
JP4447137B2 true JP4447137B2 (ja) | 2010-04-07 |
Family
ID=18756444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000269913A Expired - Fee Related JP4447137B2 (ja) | 2000-09-06 | 2000-09-06 | パケット転送処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4447137B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4002452B2 (ja) | 2002-02-28 | 2007-10-31 | 松下電器産業株式会社 | 記憶装置および記憶方法 |
US8032659B2 (en) | 2003-01-21 | 2011-10-04 | Nextio Inc. | Method and apparatus for a shared I/O network interface controller |
US7953074B2 (en) | 2003-01-21 | 2011-05-31 | Emulex Design And Manufacturing Corporation | Apparatus and method for port polarity initialization in a shared I/O device |
US7046668B2 (en) | 2003-01-21 | 2006-05-16 | Pettey Christopher J | Method and apparatus for shared I/O in a load/store fabric |
US8102843B2 (en) | 2003-01-21 | 2012-01-24 | Emulex Design And Manufacturing Corporation | Switching apparatus and method for providing shared I/O within a load-store fabric |
US7698483B2 (en) | 2003-01-21 | 2010-04-13 | Nextio, Inc. | Switching apparatus and method for link initialization in a shared I/O environment |
US7664909B2 (en) | 2003-04-18 | 2010-02-16 | Nextio, Inc. | Method and apparatus for a shared I/O serial ATA controller |
US7917658B2 (en) | 2003-01-21 | 2011-03-29 | Emulex Design And Manufacturing Corporation | Switching apparatus and method for link initialization in a shared I/O environment |
US7836211B2 (en) | 2003-01-21 | 2010-11-16 | Emulex Design And Manufacturing Corporation | Shared input/output load-store architecture |
US7103064B2 (en) | 2003-01-21 | 2006-09-05 | Nextio Inc. | Method and apparatus for shared I/O in a load/store fabric |
US8346884B2 (en) | 2003-01-21 | 2013-01-01 | Nextio Inc. | Method and apparatus for a shared I/O network interface controller |
-
2000
- 2000-09-06 JP JP2000269913A patent/JP4447137B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002084311A (ja) | 2002-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7561573B2 (en) | Network adaptor, communication system and communication method | |
EP2019360B1 (en) | Data processing apparatus and data transfer method | |
JP3819484B2 (ja) | Mpegパケットをパケット化およびセグメント化する装置および方法 | |
US5664116A (en) | Buffering of data for transmission in a computer communication system interface | |
US6611883B1 (en) | Method and apparatus for implementing PCI DMA speculative prefetching in a message passing queue oriented bus system | |
JP4447137B2 (ja) | パケット転送処理装置 | |
US8161197B2 (en) | Method and system for efficient buffer management for layer 2 (L2) through layer 5 (L5) network interface controller applications | |
US6633576B1 (en) | Apparatus and method for interleaved packet storage | |
US20060174058A1 (en) | Recirculation buffer for semantic processor | |
JP4541454B2 (ja) | 受信データの関数としてデータの送信の開始を制御するための方法および装置 | |
JPH11261649A (ja) | データ処理装置及びそれを適用したルータ・ブリッジ | |
US6661792B1 (en) | Apparatus for processing data packet of ethernet switch system and method thereof | |
US5940404A (en) | Method and apparatus for enhanced scatter mode allowing user data to be page aligned | |
US6788700B1 (en) | Interfacing between a network interface and a bus | |
CA2307968A1 (en) | A memory management technique for maintaining packet order in a packet processing system | |
US6301259B1 (en) | Switch and switching method | |
US8422396B2 (en) | Rate monitoring apparatus | |
JPH07111507A (ja) | データ受信方式及び通信制御装置 | |
US6603768B1 (en) | Multi-protocol conversion assistance method and system for a network accelerator | |
US20030043833A1 (en) | DMA controller system | |
US20100095339A1 (en) | Method and apparatus for designing a communication mechanism between embedded cable modem and embedded set-top box | |
JP2953362B2 (ja) | Lanのスイッチング装置 | |
JP3670372B2 (ja) | データ転送装置 | |
JP2003289315A (ja) | パケット転送装置およびパケット転送方法 | |
KR100197431B1 (ko) | 에이티엠 가상 채널 교환기의 다중 프로토콜 구현방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070803 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090806 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090818 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091001 |
|
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: 20100119 |
|
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: 20100120 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130129 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130129 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140129 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |