JP3988475B2 - 送信装置、受信装置およびそれらの方法 - Google Patents
送信装置、受信装置およびそれらの方法 Download PDFInfo
- Publication number
- JP3988475B2 JP3988475B2 JP2002028702A JP2002028702A JP3988475B2 JP 3988475 B2 JP3988475 B2 JP 3988475B2 JP 2002028702 A JP2002028702 A JP 2002028702A JP 2002028702 A JP2002028702 A JP 2002028702A JP 3988475 B2 JP3988475 B2 JP 3988475B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- tcp
- processing
- divided
- header
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/166—IP fragmentation; TCP segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/168—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] specially adapted for link layer protocols, e.g. asynchronous transfer mode [ATM], synchronous optical network [SONET] or point-to-point protocol [PPP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Description
【発明の属する技術分野】
本発明は、TCP/IPなどの通信プロトコルを基に通信を行う送信装置、受信装置およびそれらの方法に関する。
【0002】
【従来の技術】
インタフェース通信を行うためのプロトコルとして、TCP/IP(Transmission Control Protocol/Internet Protocol) がある。
TCP/IPは、元々UNIX(登録商標)においてソフトウェアで実装されていた経緯があり、現在でもソフトウェアによる処理が主を占めている。
近年、データ量の大きなAV(Audio Visual)データが、TCP/IPを用いてネットワーク上を転送されるようになり、TCP/IP処理を高速化したいという要請がある。
従来では、高速処理可能なCPU(Central Processing Unit) を用いることで、このような要請に応えている。
【0003】
【発明が解決しようとする課題】
しかしながら、高速処理可能なCPUは、高価であるという問題がある。
また、現在、NIC(Network Interface Card)へのインタフェースは、汎用性を考慮して、PCI(Peripheral Component Interconnect) バスに接続されている。
PCIバスは、殆どPC(Personal Computer) で採用されている32ビット/33M規格のものであるが、この場合、CPUによるTCP/IPの処理能力が向上しても、転送速度がボトルネックになり、パーフォーマンスを向上することが困難となる。しかしながら、より高速なPCIバス(64ビット/64M規格等)を採用すると、現状では非常に高価なものになる、という問題がある。
同様の問題は、UDP(User Datagram Protocol) などのその他の通信プロトコルを用いる場合にもある。
【0004】
本発明は、上述した従来技術の問題点を解決するために、通信プロトコルを基に通信を行う際の通信処理を簡単かつ安価な構成で高速化できる送信装置、受信装置およびそれらの方法を提供することを目的とする。
【0005】
【課題を解決するための手段】
本発明によれば、TCP/IPによりネットワーク上にコンテンツデータを送信する送信装置において、
TCP/IP処理を行う演算回路に、上記コンテンツデータ自体を含まない、送信処理に必要なデータを出力するインターフェースと、
上記コンテンツデータを分割して複数の分割データを生成するとともに、上記分割データに付与される TCP ヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成するハードウェア回路でなる処理部と
を有し、
上記コンテンツデータ自体を含まない、送信処理に必要なデータが上記インターフェースを介して入力された上記演算回路によるTCP/IP処理によって生成されたTCPヘッダーを基にして、上記複数の分割データにそれぞれ付与されるTCPヘッダーを上記処理部により生成することで、TCP/IP処理を高速化する、
ことを特徴とする送信装置が提供される。
【0007】
また本発明によれば、TCP/IPによりネットワーク上の複数に分割されたコンテンツデータを受信する受信装置において、
TCP/IP処理を行う演算回路に、上記コンテンツデータ自体を含まない、受信処理に必要なデータを出力するインターフェースと、
上記複数に分割されたコンテンツデータを合成して合成データを生成するとともに、上記分割データに付与される TCP ヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成するハードウェア回路でなる処理部と
を有し、
上記処理部は、
上記複数に分割されたコンテンツデータに付与されているTCPヘッダーを基にして合成データ用TCPヘッダーを生成し、
上記合成データ用TCPヘッダーを上記インターフェースを介して上記演算回路に入力し、
上記演算回路は上記合成データ用TCPヘッダーに基づいてTCP/IP処理することによってTCP/IP処理を高速化する、
ことを特徴とする受信装置が提供される。
【0008】
本発明によれば、TCP/IPによりネットワーク上にコンテンツデータを送信する送信方法において、
TCP/IP 処理を行う演算回路に、上記コンテンツデータ自体を含まない、送信処理に必要なデータを出力し、
上記コンテンツデータを分割して複数の分割データを生成するとともに、上記分割データに付与される TCP ヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成し、
上記コンテンツデータ自体を含まない、送信処理に必要なデータが入力された上記演算回路による TCP/IP 処理によって生成された TCP ヘッダーを基にして、上記複数の分割データにそれぞれ付与される TCP ヘッダーを上記処理部により生成し、
TCP/IP処理を高速化する、
ことを特徴とする送信方法が提供される。
【0010】
また本発明によれば、TCP/IPによりネットワーク上の複数に分割されたコンテンツデータを受信する受信方法において、
TCP/IP処理を行う演算回路に、上記コンテンツデータ自体を含まない、受信処理に必要なデータを出力し、
上記複数に分割されたコンテンツデータを合成して合成データを生成するとともに、上記分割データに付与されるTCPヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成し、
上記複数に分割されたコンテンツデータに付与されているTCPヘッダーを基にして合成データ用TCPヘッダーを生成し、
上記合成データ用TCPヘッダーを上記演算回路に入力し、
上記演算回路が上記合成データ用TCPヘッダーに基づいてTCP/IP処理することによってTCP/IP処理を高速化する、
ことを特徴とする受信方法が提供される。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態を添付図面を参照して説明する。
図1は、本実施形態の通信システム1の全体構成図である。
図1に示すように、通信システム1では、ネットワーク3にコンピュータ2が接続されている。
コンピュータ2は、ネットワーク3を介して、他のコンピュータと、AVデータなどのデータをTCP/IPなどの通信プロトコルを基に送受信する。
ここで、コンピュータ2またはその一部が本発明の送信装置および受信装置に対応している。
【0016】
図1に示すように、コンピュータ2は、例えば、コネクタ15、パルストランス16、物理層回路17、AVバッファ回路18、送受信バッファ回路19、PCIバスコントローラ回路20、CPU21およびデータ処理回路22を有する。
ここで、AVバッファ回路18が本発明の入出力用記憶回路、送受信バッファ回路19が本発明の送信用記憶回路および受信用記憶回路、CPU21が本発明の演算回路に対応している。
【0017】
コネクタ15は、例えば、RJ−45型であり、ネットワーク3に接続された通信線に接続されている。
ネットワーク3を介してコンピュータ2が送受信するパケットデータは、パルストランス16を経由してコネクタ15から出力される。
物理層回路17は、例えば、イーサネット(登録商標)規格に基づいて、ネットワーク3を介してコンピュータ2が送受信するパケットデータ(イーサネットパケット)の信号の変調および復調などの処理を行う。
AVバッファ回路18は、コンピュータ2の外部の画像・音声再生装置などの画像・音声処理装置との間で入出力するAVデータを記憶するSD−RAM(Synchronous Dynamic-Random Access Memory) である。
【0018】
送受信バッファ回路19は、物理層回路17からネットワーク3に対して送受信するパケットデータ(イーサネットパケット)を記憶するRAMである。
PCIバスコントローラ回路20は、CPU21とデータ処理回路22との間に配設されたPCIバスを介したデータ伝送を制御する。
【0019】
CPU21は、アプリケーションを実行すると共に、所定の通信プログラムを基に、パケットデータの送受信に係わるTCP/IP処理を行う。
CPU21は、パケットデータに含まれるAVデータ自体の処理は行わず、パケットデータに含まれるヘッダデータ(制御データ)に係わる処理を行う。
具体的には、CPU21は、ネットワーク3を介して通信先のコンピュータにパケットデータを配送するためのIP処理、パケット伝送中に異常が発生した場合に異常を知らせるICMP(Internet Control Message Protocol) 処理、IPアドレスとMAC(Media Access Control)アドレスの変換を行うARP(Address Resolution Protocol) 処理、通信を行っているプログラムを識別してポートを割り当てるコネクション型のTCP処理などを行う。
【0020】
データ処理回路22は、コンピュータ2が送受信するパケットデータの合成および分割処理、並びに、コンピュータ2によるパケットデータの送受信処理のうちCPU21によってプログラムを基に行われる処理以外の処理を行うハードウェアである。
【0021】
図1に示すように、データ処理回路22は、例えば、SD−RAMコントローラ30、MAC回路31、PCIバスインタフェース32、レジスタ33、AVインタフェース34およびパケット処理部35を有する。
ここで、PCIバスインタフェース32が本発明の演算回路入出力用インタフェースに対応し、パケット処理部35が本発明のデータ生成回路、データ分割回路、データ合成分割回路に対応し、MAC回路31、物理層回路17、パルストランス16およびコネクタ15が本発明の送信用インタフェースに対応している。
【0022】
SD−RAMコントローラ30は、AVバッファ回路18および送受信バッファ回路19と、パルストランス31、AVインタフェース34およびパケット処理部との間のデータ転送を制御する。
MAC回路31は、物理層回路17との間で入出力するパケットデータのMAC処理を行う。
PCIバスインタフェース32は、レジスタ33およびパケット処理部35と、PCIバスコントローラ回路20との間で入出力するデータのインタフェースを行う。
【0023】
レジスタ33は、PCIバスインタフェース32を介して入出力するデータ、並びに、MAC回路31およびパケット処理部35による処理対象データおよび処理結果データを記憶する。
AVインタフェース34は、コンピュータ2の外部の画像・音声処理装置との間でAVデータの入出力を行うインタフェースである。
【0024】
パケット処理部35は、送信時に、AVバッファ回路18からAVデータを読み出して、当該AVデータ(本発明の第1のコンテンツデータ)をデータ部に格納した図2(A)に示す例えば32Kバイトのサイズのジャンボパケットデータ(本発明の第1のモジュールデータ)を生成する。
また、パケット処理部35は、送信時に、ジャンボパケットデータJPDの送信処理に必要なデータを、PCIバスインタフェース32からCPU21に出力する。
パケット処理部35は、送信時に、CPU21から入力したヘッダデータHD1(本発明の第1の制御データ)を基に、後述するように生成されたパケットデータPDの送信に用いるヘッダデータHD2(本発明の第2の制御データ)を生成する。
【0025】
このとき、パケット処理部35は、例えば、図3に示すように、ヘッダデータHD1のIPヘッダデータのサービスタイプ、生存時間データ、送信元アドレスおよび宛先アドレスをそのまま用いて(コピーして)ヘッダデータHD2のIPヘッダデータを生成する。
また、パケット処理部35は、例えば、図4に示すように、ヘッダデータHD1のTCPヘッダデータの送信元ポート番号データ、宛先ポート番号データおよび、ウインドウデータをそのまま用いてヘッダデータHD2のTCPヘッダデータを生成する。
また、パケット処理部35は、送信時に、ジャンボパケットデータJPDに含まれるAVデータを分割し、当該分割によって得られたAVデータ(本発明の第2のコンテンツデータ)とヘッダデータHD2とを各々が含む図2(B)に示すパケット長最大1518バイトのパケットデータPD(イーサネットパケットデータ、本発明の第2のモジュールデータ)を生成する。
また、パケット処理部35は、送信時に、ヘッダデータHD1,HD2のIPヘッダのチェックサムデータ、並びにTCPヘッダのチェックサムデータ、シーケンス番号および確認応答番号の生成処理を行う。
【0026】
また、パケット処理部35は、受信時に、送受信バッファ回路19から読み出した受信された複数のパケットデータPDを合成してジャンボパケットデータJPDを生成する。
このとき、パケット処理部35は、例えば、図3に示すように、ヘッダデータHD2のIPヘッダデータのサービスタイプ、生存時間データ、送信元アドレスおよび宛先アドレスをそのまま用いてヘッダデータHD1のIPヘッダデータを生成する。
また、パケット処理部35は、例えば、図4に示すように、ヘッダデータHD2のTCPヘッダデータの送信元ポート番号データ、宛先ポート番号データおよび、ウインドウデータをそのまま用いてヘッダデータHD1のTCPヘッダデータを生成する。
また、パケット処理部35は、受信時に、ヘッダデータHD1のIPヘッダデータのチェックサムデータ、並びにTCPヘッダのチェックサムデータ、シーケンス番号および確認応答番号の生成処理を行う。
また、パケット処理部35は、受信時に、パケットデータPDに含まれるヘッダデータHD2のIPヘッダデータおよびTCPヘッダデータ内のチェックサムデータ、並びにAVデータを用いたチェックサム演算を行う。
【0027】
また、パケット処理部35は、受信時に、ジャンボパケットデータJPDの受信処理に必要なデータ、例えば、パケットデータPDのヘッダデータHD2から取得された送信元アドレス、宛先アドレスおよびサイズデータなどを、PCIバスインタフェース32からPCIバスコントローラ回路20を介してCPU21に出力する。
また、パケット処理部35は、受信時に、CPU21から入力したTCP/IP処理の結果基に、ジャンボパケットデータJPDを分割してパケットデータPDを生成する。
【0028】
以下、図1に示すコンピュータ2の動作例を説明する。
〔第1の動作例〕
当該動作例では、コンピュータ2が、ネットワーク3を介してパケットデータを送信する場合を説明する。
図5は、当該動作例を説明するためのフローチャートである。
以下、図5に示す各ステップについて説明する。
ステップST1:
SD−RAMコントローラ30の制御に基づいて、画像・音声処理装置から出力されたAVデータが、AVインタフェース34を介して、AVバッファ回路18に書き込まれる。
【0029】
ステップST2:
パケット処理部35が、AVバッファ回路18からステップST1で書き込まれたAVデータを読み出して、当該AVデータを格納した図2(A)に示すジャンボパケットデータJPDを生成する。
【0030】
ステップST3:
パケット処理部35が、ステップST2で生成したジャンボパケットデータJPDの送信処理に必要なデータを、PCIバスインタフェース32からPCIバスコントローラ回路20を介してCPU21に出力する。また、必要に応じて、レジスタ33に記憶されたデータも、PCIバスインタフェース32を介してCPU21に出力される。
CPU21は、パケット処理部35から入力したデータを用いて、ジャンボパケットデータJPDを送信するためのTCP/IP処理を行い、ヘッダデータHD1を生成する。
そして、CPU21は、PCIバスコントローラ回路20を介して、ヘッダデータHD1をPCIバスインタフェース32に出力する。
【0031】
ステップST4:
パケット処理部35が、CPU21から入力したヘッダデータHD1を基に、パケットデータPDの送信に用いるヘッダデータHD2を生成する。
そして、パケット処理部35が、ジャンボパケットデータJPDに含まれるAVデータを分割し、当該分割によって得られたAVデータとヘッダデータHD2とを各々が含むパケットデータPDを生成する。
【0032】
ステップST5:
パケット処理部35が、ステップST4で生成したパケットデータPDを、SD−RAMコントローラ30の制御に従って、送受信バッファ回路19に書き込む。
【0033】
ステップST6:
SD−RAMコントローラ30の制御に従って、送受信バッファ回路19から、パケットデータPDが読み出される。
そして、当該パケットデータPDが、MAC回路31によるMAC処理、物理層回路17に物理層処理、並びにパルストランス16を経由して、コネクタ15からネットワーク3に送信される。
【0034】
〔第2の動作例〕
当該動作例では、コンピュータ2が、ネットワーク3を介してパケットデータを受信する場合を説明する。
図6は、当該動作例を説明するためのフローチャートである。
以下、図6に示す各ステップについて説明する。
ステップST11:
ネットワーク3を伝送するパケットデータPDが、コネクタ15で受信され、パルストランス16、並びに物理層回路17による物理層処理を経て、MAC回路31に入力される。
そして、当該パケットデータPDが、MAC回路31によるMAC処理を経て、送受信バッファ回路19に書き込まれる。
【0035】
ステップST12:
SD−RAMコントローラ30の制御に従って、送受信バッファ回路19から、複数のパケットデータPDが読み出されてパケット処理部35に出力される。
【0036】
ステップST13:
パケット処理部35が、ステップST12で読み出された複数のパケットデータPDを合成してジャンボパケットデータJPDを生成する。
そして、パケット処理部35が、ジャンボパケットデータJPDの受信処理に必要なデータ、例えば、パケットデータPDのヘッダデータHD2から取得された送信元アドレス、宛先アドレスおよびサイズデータなどを、PCIバスインタフェース32からPCIバスコントローラ回路20を介してCPU21に出力する。また、必要に応じて、レジスタ33に記憶されたデータも、PCIバスインタフェース32を介してCPU21に出力される。
そして、CPU21が、パケット処理部35から入力したデータを基に、ジャンボパケットデータJPDの受信するためのTCP/IP処理を行い、その結果をPCIバスコントローラ回路20およびPCIバスインタフェース32を介してパケット処理部35に出力する。
【0037】
ステップST14:
パケット処理部35が、ステップST13で入力したCPU21の処理結果を基に、ジャンボパケットデータJPDを分割してパケットデータPDを生成する。
【0038】
ステップST15:
パケット処理部35が、SD−RAMコントローラ30の制御に従って、ステップST14で生成したパケットデータPDをAVバッファ回路18に書き込む。
当該パケットデータPDは、SD−RAMコントローラ30の制御に従って、AVバッファ回路18から読み出され、AVインタフェース34を介して画像・音声処理装置に出力される。
【0039】
以上説明したように、コンピュータ2では、コンピュータ2にデータ処理回路22を組み込み、データ処理回路22において、複数のパケットデータPDからなるジャンボパケットデータJPDの生成を行い、当該ジャンパケットデータJPDの送受信処理(TCP/IP処理)をCPU21に行わせる。そのため、上記複数のパケットデータPDの送受信処理をCPU21で行う場合に比べて、CPU21の処理負担を軽減できる。
また、このとき、CPU21とデータ処理回路22との間ではヘッダデータやレジスタデータなどのデータ量の小さなデータのみを伝送し、データ処理回路22においてハードウェアによりTCP/IP処理の一部を高速に行うことで、従来のPCIバスをそのまま用いると共にCPU21を高速化することなく、TCP/IP処理を高速化できる。
その結果、コンピュータ2の構成を、簡単かつ安価なものにできる。
【0040】
本発明は上述した実施形態には限定されない。
例えば、上述した実施形態では、コンピュータ2が通信プロトコルとしてTCP/IPを用いた場合を例示したが、UDPなどのその他の通信プロトコルを用いた場合にも本発明は適用できる。
【0041】
【発明の効果】
以上説明したように、本発明によれば、通信プロトコルを基に通信を行う際の通信処理を簡単かつ安価な構成で高速化できる送信装置、受信装置およびそれらの方法を提供することができる。
【図面の簡単な説明】
【図1】図1は、本発明の実施形態の通信システムの全体構成図である。
【図2】図2は、図1に示すパケット処理部で生成処理および生成されるジャンボパケットデータおよびイーサネットパケットデータを説明するための図である。
【図3】図3は、図1に示すパケット処理部が行うIPヘッダデータの生成処理を説明するための図である。
【図4】図4は、図1に示すパケット処理部が行うTCPヘッダデータの生成処理を説明するための図である。
【図5】図5は、図1に示すコンピュータが、ネットワークを介してパケットデータを送信する場合の動作例を説明するためのフローチャートである。
【図6】図6は、図1に示すコンピュータが、ネットワークを介してパケットデータを受信する場合の動作例を説明するためのフローチャートである。
【符号の説明】
1…通信システム、2…コンピュータ、3…ネットワーク、15…コネクタ、16…パルストランス、17…物理層回路、18…AVバッファ回路、19…送受信バッファ回路、20…PCIバスコントローラ回路、21…CPU、30…SD−RAMコントローラ、31…MAC回路、32…PCIバスインタフェース、33…レジスタ、34…AVインタフェース、35…パケット処理部
Claims (4)
- TCP/IPによりネットワーク上にコンテンツデータを送信する送信装置において、
TCP/IP処理を行う演算回路に、上記コンテンツデータ自体を含まない、送信処理に必要なデータを出力するインターフェースと、
上記コンテンツデータを分割して複数の分割データを生成するとともに、上記分割データに付与されるTCPヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成するハードウェア回路でなる処理部と
を有し、
上記コンテンツデータ自体を含まない、送信処理に必要なデータが上記インターフェースを介して入力された上記演算回路によるTCP/IP処理によって生成されたTCPヘッダーを基にして、上記複数の分割データにそれぞれ付与されるTCPヘッダーを上記処理部により生成することで、TCP/IP処理を高速化する、
ことを特徴とする送信装置。 - TCP/IPによりネットワーク上の複数に分割されたコンテンツデータを受信する受信装置において、
TCP/IP処理を行う演算回路に、上記コンテンツデータ自体を含まない、受信処理に必要なデータを出力するインターフェースと、
上記複数に分割されたコンテンツデータを合成して合成データを生成するとともに、上記分割データに付与されるTCPヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成するハードウェア回路でなる処理部と
を有し、
上記処理部は、
上記複数に分割されたコンテンツデータに付与されているTCPヘッダーを基にして合成データ用TCPヘッダーを生成し、
上記合成データ用TCPヘッダーを上記インターフェースを介して上記演算回路に入力し、
上記演算回路は上記合成データ用TCPヘッダーに基づいてTCP/IP処理することによってTCP/IP処理を高速化する、
ことを特徴とする受信装置。 - TCP/IPによりネットワーク上にコンテンツデータを送信する送信方法において、
TCP/IP処理を行う演算回路に、上記コンテンツデータ自体を含まない、送信処理に必要なデータを出力し、
上記コンテンツデータを分割して複数の分割データを生成するとともに、上記分割データに付与されるTCPヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成し、
上記コンテンツデータ自体を含まない、送信処理に必要なデータが入力された上記演算回路によるTCP/IP処理によって生成されたTCPヘッダーを基にして、上記複数の分割データにそれぞれ付与されるTCPヘッダーを上記処理部により生成し、
TCP/IP処理を高速化する、
ことを特徴とする送信方法。 - TCP/IPによりネットワーク上の複数に分割されたコンテンツデータを受信する受信方法において、
TCP/IP処理を行う演算回路に、上記コンテンツデータ自体を含まない、受信処理に必要なデータを出力し、
上記複数に分割されたコンテンツデータを合成して合成データを生成するとともに、上記分割データに付与されるTCPヘッダーのフィールドのうち、少なくともチェックサムをハードウェア演算により生成し、
上記複数に分割されたコンテンツデータに付与されているTCPヘッダーを基にして合成データ用TCPヘッダーを生成し、
上記合成データ用TCPヘッダーを上記演算回路に入力し、
上記演算回路が上記合成データ用TCPヘッダーに基づいてTCP/IP処理することによってTCP/IP処理を高速化する、
ことを特徴とする受信方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002028702A JP3988475B2 (ja) | 2002-02-05 | 2002-02-05 | 送信装置、受信装置およびそれらの方法 |
US10/356,973 US7515604B2 (en) | 2002-02-05 | 2003-02-03 | Transmitter, receiver, and methods |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002028702A JP3988475B2 (ja) | 2002-02-05 | 2002-02-05 | 送信装置、受信装置およびそれらの方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006068352A Division JP4519090B2 (ja) | 2006-03-13 | 2006-03-13 | 送信装置、受信装置およびそれらの方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003229905A JP2003229905A (ja) | 2003-08-15 |
JP3988475B2 true JP3988475B2 (ja) | 2007-10-10 |
Family
ID=27654669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002028702A Expired - Fee Related JP3988475B2 (ja) | 2002-02-05 | 2002-02-05 | 送信装置、受信装置およびそれらの方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7515604B2 (ja) |
JP (1) | JP3988475B2 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7039054B2 (en) * | 2002-11-19 | 2006-05-02 | Intel Corporation | Method and apparatus for header splitting/splicing and automating recovery of transmit resources on a per-transmit granularity |
KR100601043B1 (ko) * | 2003-11-13 | 2006-07-14 | 한국전자통신연구원 | 패킷을 스케줄링하는 라우터 및 그 방법 |
JP4363404B2 (ja) | 2006-01-26 | 2009-11-11 | ソニー株式会社 | 受信装置および方法、並びにプログラム |
JP4942375B2 (ja) * | 2006-03-27 | 2012-05-30 | 株式会社ソニー・コンピュータエンタテインメント | ネットワーク処理装置 |
GB2460014B (en) * | 2008-04-28 | 2011-11-23 | Virtensys Ltd | Method of processing data packets |
US8089993B2 (en) * | 2008-09-09 | 2012-01-03 | Nec Laboratories America, Inc. | Sliceable router with packet over optical OFDM transmission |
US8023513B2 (en) * | 2009-02-24 | 2011-09-20 | Fujitsu Limited | System and method for reducing overhead in a wireless network |
WO2017019104A1 (en) * | 2015-07-30 | 2017-02-02 | Hewlett Packard Enterprise Development Lp | Network device emulation |
JP2018196024A (ja) * | 2017-05-18 | 2018-12-06 | キヤノン株式会社 | 通信装置及びその制御方法、並びに、情報処理装置 |
US11627185B1 (en) * | 2020-09-21 | 2023-04-11 | Amazon Technologies, Inc. | Wireless data protocol |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5850526A (en) * | 1996-02-07 | 1998-12-15 | Kingston Technology Co. | LAN station for determining the destination LAN station is capable of decompressing by comparing destination address to block of addresses assigned by a LAN manufacturer |
JP3591753B2 (ja) * | 1997-01-30 | 2004-11-24 | 富士通株式会社 | ファイアウォール方式およびその方法 |
US6366698B1 (en) * | 1997-03-11 | 2002-04-02 | Casio Computer Co., Ltd. | Portable terminal device for transmitting image data via network and image processing device for performing an image processing based on recognition result of received image data |
US6212190B1 (en) * | 1997-06-23 | 2001-04-03 | Sun Microsystems, Inc. | Method and system for generating data packets on a heterogeneous network |
US6226680B1 (en) * | 1997-10-14 | 2001-05-01 | Alacritech, Inc. | Intelligent network interface system method for protocol processing |
US6122670A (en) * | 1997-10-30 | 2000-09-19 | Tsi Telsys, Inc. | Apparatus and method for constructing data for transmission within a reliable communication protocol by performing portions of the protocol suite concurrently |
JPH11243419A (ja) * | 1998-02-26 | 1999-09-07 | Fujitsu Ltd | Tcpレイヤのレート制御方式 |
US6341129B1 (en) * | 1998-04-03 | 2002-01-22 | Alteon Networks, Inc. | TCP resegmentation |
US6157955A (en) * | 1998-06-15 | 2000-12-05 | Intel Corporation | Packet processing system including a policy engine having a classification unit |
JP2000078573A (ja) | 1998-09-03 | 2000-03-14 | Hitachi Ltd | 階層符号化データ配信装置 |
US6279140B1 (en) * | 1999-01-07 | 2001-08-21 | International Business Machines Corporation | Method and apparatus for checksum verification with receive packet processing |
JP3183343B2 (ja) * | 1999-02-26 | 2001-07-09 | 日本電気株式会社 | データ通信方法、端末装置、中継装置、データ通信システム及びその記録媒体 |
JP3362715B2 (ja) | 1999-11-16 | 2003-01-07 | 日本電気株式会社 | Ipフラグメント処理装置、方法及びプログラムを記憶した記憶媒体 |
US6947430B2 (en) | 2000-03-24 | 2005-09-20 | International Business Machines Corporation | Network adapter with embedded deep packet processing |
US7050437B2 (en) | 2000-03-24 | 2006-05-23 | International Business Machines Corporation | Wire speed reassembly of data frames |
JP3618277B2 (ja) | 2000-05-29 | 2005-02-09 | 株式会社東芝 | 通信プロトコル処理方法および通信プロトコル処理装置 |
US6963561B1 (en) * | 2000-12-15 | 2005-11-08 | Atrica Israel Ltd. | Facility for transporting TDM streams over an asynchronous ethernet network using internet protocol |
US6819686B1 (en) * | 2000-12-22 | 2004-11-16 | Turin Networks | Backplane protocol |
US8218555B2 (en) * | 2001-04-24 | 2012-07-10 | Nvidia Corporation | Gigabit ethernet adapter |
US20030108044A1 (en) * | 2001-12-11 | 2003-06-12 | Roland Hendel | Stateless TCP/IP protocol |
US20030147369A1 (en) * | 2001-12-24 | 2003-08-07 | Singh Ram Naresh | Secure wireless transfer of data between different computing devices |
-
2002
- 2002-02-05 JP JP2002028702A patent/JP3988475B2/ja not_active Expired - Fee Related
-
2003
- 2003-02-03 US US10/356,973 patent/US7515604B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20030152162A1 (en) | 2003-08-14 |
JP2003229905A (ja) | 2003-08-15 |
US7515604B2 (en) | 2009-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1791060B1 (en) | Apparatus performing network processing functions | |
US9380134B2 (en) | RoCE packet sequence acceleration | |
US7817634B2 (en) | Network with a constrained usage model supporting remote direct memory access | |
US7937447B1 (en) | Communication between computer systems over an input/output (I/O) bus | |
US7924868B1 (en) | Internet protocol (IP) router residing in a processor chipset | |
TWI374636B (en) | Method, apparatus, host computer system and machine-readable recording medium for distributing traffic across a plurality of trasmitting queues | |
US8949472B2 (en) | Data affinity based scheme for mapping connections to CPUs in I/O adapter | |
US20090168799A1 (en) | Network Acceleration Techniques | |
US20100061377A1 (en) | Flexible and extensible receive side scaling | |
JP2000151664A (ja) | デ―タ伝送方法 | |
JP3988475B2 (ja) | 送信装置、受信装置およびそれらの方法 | |
US7362772B1 (en) | Network processing pipeline chipset for routing and host packet processing | |
US7188250B1 (en) | Method and apparatus for performing network processing functions | |
WO2003069440A2 (en) | Network processor with high-speed transceiver | |
JP5091121B2 (ja) | 埋め込み型システムのための高速データ処理・通信方法及び装置 | |
KR100738339B1 (ko) | 인터넷 프로토콜 오프로드의 패킷 전송 장치 및 방법 | |
JP3618277B2 (ja) | 通信プロトコル処理方法および通信プロトコル処理装置 | |
JP4519090B2 (ja) | 送信装置、受信装置およびそれらの方法 | |
US7213074B2 (en) | Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet | |
JP5906078B2 (ja) | データ転送装置及びデータ転送方法 | |
EP1049292A2 (en) | System and method for network monitoring | |
US20230179545A1 (en) | Packet forwarding apparatus with buffer recycling and associated packet forwarding method | |
JP2012049883A (ja) | 通信装置およびパケット処理方法 | |
JP2013130952A (ja) | データ転送装置及びデータ転送方法 | |
JP2002247039A (ja) | ネットワークインターフェース装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040421 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060110 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060313 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060606 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060807 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061017 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061218 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070402 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20070406 |
|
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: 20070626 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070709 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110727 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120727 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130727 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |