JP2010259113A - 通信処理装置及びその方法 - Google Patents
通信処理装置及びその方法 Download PDFInfo
- Publication number
- JP2010259113A JP2010259113A JP2010180148A JP2010180148A JP2010259113A JP 2010259113 A JP2010259113 A JP 2010259113A JP 2010180148 A JP2010180148 A JP 2010180148A JP 2010180148 A JP2010180148 A JP 2010180148A JP 2010259113 A JP2010259113 A JP 2010259113A
- Authority
- JP
- Japan
- Prior art keywords
- data
- packet
- upper layer
- layer
- communication
- 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
Links
Images
Abstract
【解決手段】送信者と受信者には、TCP層で再送処理を行う装置と、IPSecで暗号化通信を行う装置が設けられる。IPSecで動作する装置は、バッファを備えており、送信者から送信されたデータを暗号化したものをバッファに格納し、受信者から再送要求がきたときは、IP層で動作しているにもかかわらず、TCP層での情報を取得して、バッファ内の暗号化されたデータで対応するデータを受信者に返送する。
【選択図】図2
Description
送信者がdata Kを受信者に送り、受信者によって正常に受信されると、受信者は、data K+1を送信者が送信するように促す受信通知ack K+1を送信者に送信する。送信者がack K+1を受け取ると、送信者はdata K+1を受信者に送信する。ここで、data K+1が通信路の途中で喪失したとする。すると、受信者は、いつまでたってもdata K+1を受信しないので、ackを返送できない。送信者では、受信者からackが帰ってこないので、data K+1の送出直後から計数していた時間がタイムアウトを向かえる。送信者は、タイムアウトになったと判断すると、data K+1が喪失したと判断して、data K+1を再送する。再送されたdata K+1が正常に受信者に受信されると、受信者からack K+2が返送される。
A)TCP及びIPSecを同時に利用する
B)TLS(Transport Layer Security、SSLとも呼ばれている)を利用する
TCP及びIPSecを同時に利用する方式(A)では、TCPが「信頼性のある通信」を実現するので、パケットを喪失した場合、喪失パケットを再送する制御「再送制御」を実現するのはTCPが担当する。通常再送制御を行うためには送信側TCPがデータを送信し、受信側TCPがデータを受信する毎にackパケットを送信側TCPへ返送する。送信側TCPではackパケットを受信することで受信側TCPが受信したデータを認識し、もしデータが欠落していた場合は欠落データを再送する。
方式(A)では、再送パケットをTCPが送信すると、IPSecは以前同じデータを暗号化したにもかかわらず、再度再送パケットの暗号化処理を行い、ネットワークに送信せざるを得ない。これはプロトコルの階層構造により、上位層であるTCPと下位層であるIPSecは全く連携をせずに動作するように定義されているためである。一般に暗号化処理や認証処理などIPSecで行う処理は複雑な演算を必要とするため何度も同じデータを処理するとその負荷や処理時間が余計に増大するという問題がある。
一方、TLS方式(B)は、TCPの上位層で暗号化処理を行う方式である。この場合TCP層では上位層からのデータを暗号化された状態で受け取るため、仮にTCPで再送が行われたとしても暗号処理を再度行う必要は無い。
この表から分かるように、適用分野は、TLS方式が機密httpなど一部のみであるのに対し、TCP+IPSecの方式は、VPNなどの幅広い分野で利用可能であることが分かる。その反面、TCP+IPSec方式では、再送パケットの再暗号処理が必要であり、負荷、処理時間の増大がある。一方、TLS方式の場合、再送パケットの再暗号処理は、不要であり、負荷、処理時間の増大は無く、高速な通信には適している。従って、TCP+IPSecの適用範囲の広さを確保し、且つ、高速な通信を行うには、再送パケットの再暗号処理の問題を解決すればよいことがわかる。
一番上の7階層はアプリケーション層であり、6階層がプレゼンテーション層であり、5階層がセッション層である。4階層がトランスポート層であり、TCPやTLSのプロトコルが実装される部分である。3階層はネットワーク層であり、IPやIPSecのプロトコルが実装される部分である。2階層がリンク層であり、IEEEの803シリーズのプロトコルを実装する部分である。一番下の1階層が物理層である。
まず、本発明の効果がわかりやすい例として、上位層が「信頼性のある通信」を実現し、それよりも下位層が「暗号通信」を担当している場合に、「信頼性のある暗号通信」を効率的に実現する手段を例示する。次に、「信頼性のある通信」を効率的に実現する手段を例示する。本明細書では、説明を具体的にするためにインターネットのプロトコルを用いて記述するが、本発明はインターネットに限定して適用するものではない。また、パケット通信技術を題材として記述するが、本発明は非パケット通信にも適用可能である。
図2は、本発明の第1の実施形態を説明する図である。
本実施形態においては、図3のパケットヘッダのフォーマットにおけるSEQUENCE NUMBER, ACKNOWLEDGEMENT NUMBER, FLAGS, TCP CHECKSUMを使用する。
また、FLAGSにおいては、ACK>Acknowledgement Numberが有効か無効かを示す情報を使用する。
本発明の実施形態の装置は、上位層と下位層の間に位置し、それぞれに対して送信データ(TX)、受信データ(RX)をやり取りする。本発明の実施形態では、TX、RXのそれぞれにあるTX識別処理部10、RX識別処理部16、TX代行処理部11、RX代行処理部17を備えている。セッションテーブル15は、識別処理において処理対象とすべきセッション情報および処理対象としているセッションの情報(最新のシーケンス番号、アクノレッジメント番号)を格納する。バッファ13は送信パケットを再送に備えて保存するために用いる。
まず、TCP層からの送信パケット(TX)をTX識別処理部10によって識別し、処理対象とするTCPセッションを認識する。パケットがデータ送信パケットである場合、シーケンス番号を該当セッション情報として記録し、暗号化部12で暗号化した後、セレクタ14を介してイーサネットに送信すると共にバッファ13に格納する。
これは、予め定められた方法、例えば、上位層からデータを転送するときに本来の通信データのほかに付加データを付け加え、この付加データを解析する等の方法で識別する場合である。識別基準として下位層の通信状況を用いることも可能である。
該当パケットをTCPセッションなど同種のパケットに分類し、分類したパケット毎に全順序化してバッファリングする。TCPにおいてはシーケンス番号によってパケットの順序を決定できる。また、パケット長とシーケンス番号を用いてパケットに欠落がないかどうかを識別可能である。これらの情報をもとにして該当パケットを順序化し、バッファリングする。
図5は、パケットにどのように変更を加えるかを示す表である。
該当パケットに関連する新しいパケットを生成して送信する処理も行う。例えば、TCPのACKパケットを生成して上位層の代わりに送信する。
図6は、送信側の処理である。ステップS10において、TX上位層から入力を受けると、ステップS11において、TX識別処理において代行処理するセッションか否かを判断する。ステップS11の判断がNoのときは,ステップS12において、パケットを暗号化して、ステップS16に進む。ステップS11の判断がYesの場合には、ステップS13において、TX代行処理を行い、ステップS14においてパケット暗号化を行い、ステップS15において、バッファへパケットを蓄積して、ステップS16において出力データセレクトを行う。そして、ステップS17において、ネットワークへデータを出力する。
ステップS20において、ネットワークがデータを受信する。ステップS21において、パケットを復号化する。ステップS22において、RX識別処理で代行処理すべきセッションか否かを判断する。ステップS22において、判断がNoの場合には、ステップS25に進む。ステップS22の判断がYesの場合には、ステップS23において、バッファ管理を行い、ステップS24において、RX代行処理を行い、ステップS25に進む。ステップS25では、TCP層へデータの出力を行う。
図8は、送信側の処理である。
ステップS30において、TCP層から入力を受けると、ステップS31において、代行処理の対象セッションか否かを判断する。ステップS31の判断がNoの時には、ステップS32において、パケットの暗号化を行い、ステップS36に進む。ステップS31の判断がYesの場合には、ステップS33において、シーケンス番号を記録し、ステップS34において、パケットを暗号化し、ステップS35において、バッファへパケットを蓄積し、ステップS36において、イーサネットへ出力する。
ステップS40において、イーサネットからデータを受信すると、ステップS41において、パケットを復号化し、ステップS42において、代行処理の対象セッションか否かを判断する。ステップS42の判断がNoのときはステップS49に進む。ステップS42の判断がYesの場合には、ステップS43において、Ack検査を行い、再送処理が必要か否かを判断する。ステップS43の判断がNoの場合には、ステップS45に進む。ステップS43の判断がYesの場合には、ステップS44において、パケットの再送を行い、ステップS45において、バッファ管理を行い、ステップS46において、パケットはデータを含むか否かを判断する。ステップS46の判断がNoの場合には、ステップS47においてパケットを破棄し、処理を終了する。ステップS46の判断がYesの場合には、ステップS48において、ヘッダのAckビットを除去(0に設定)して、ステップS49において、TCP層へパケットを出力する。
ステップS50において、TCP層からの再送パケットを受信すると、ステップS51において、同一のパケットを過去に送信したことがあるか否かを判断する。ステップS51の判断がNoの場合には、ステップS52において、パケットを暗号化し、ステップS55に進む。ステップS51の判断がYesの場合には、ステップS53において、上位層から転送されたTXパケットを削除し、ステップS54において、バッファ内の該当パケットの送信処理を行い、ステップS55において、イーサネットへパケットを出力する。
上記第1の実施形態においては、IPSecの場合の暗号処理をすることを前提として説明したが、本第1の実施形態の機構は暗号処理を行わない場合(例えばIP処理)に対しても応用可能である。本実施形態においては、IP層からACKパケットを上位層にあげる処理、上位層がACKパケットを解析し、再送パケットを再度生成して下位層に送信する処理を有するが、暗号化処理は存在しない。暗号処理を考慮しない場合であっても上位層の再送処理及び下位層と上位層の間のパケットのやりとりを省略できれば負荷及び処理時間の低減を期待できる。
(付記1)
上位層で行われる再送制御を含む通信を下位層を介して行う通信処理装置であって、
該下位層において、ネットワークを介して受信されたデータの中から、上位層で終端されるデータの通信に関する情報を、上位層における終端に対応する処理をすることなく取得する上位層データ取得手段と、
該下位層において、該得られた情報に基づいて、再送データを送出する再送手段と、
を備えることを特徴とする通信処理装置。
(付記2)
前記再送手段は、
送信者から受信者へ送出されたデータを格納するバッファ手段を更に備え、
該バッファ手段に格納されたデータを送出することによって再送データの送出を行うことを特徴とする付記1に記載の通信処理装置。
(付記3)
更に、上位層から送られてくるデータを暗号化する暗号化手段を前記下位層に備え、
前記バッファ手段に暗号化されたデータを格納することを特徴とする付記2に記載の通信処理装置。
(付記4)
前記下位層は、IPSecをプロトコルとして通信することを特徴とする付記3に記載の通信処理装置。
(付記5)
前記下位層は、IPをプロトコルとして通信することを特徴とする付記1に記載の通信処理装置。
(付記6)
前記上位層は、TCPをプロトコルとして通信することを特徴とする付記1に記載の通信処理装置。
(付記7)
前記上位層データ取得手段は、前記上位層のデータから情報を得た後に、必要に応じてデータの上位層データ使用される情報を書き換えることを特徴とする付記1に記載の通信処理装置。
(付記8)
前記通信は、パケット通信であることを特徴とする付記1に記載の通信処理装置。
(付記9)
上位層で行われる再送制御を含む通信を下位層を介して行う通信処理方法であって、
該下位層において、ネットワークを介して受信されたデータの中から、上位層で終端されるデータの通信に関する情報を、上位層における終端に対応する処理をすることなく取得する上位層データ取得ステップと、
該下位層において、該得られた情報に基づいて、再送データを送出する再送ステップと、
を備えることを特徴とする通信処理方法。
(付記10)
前記再送ステップは、
送信者から受信者に送出されたデータを格納するバッファステップを更に備え、
該バッファステップで格納されたデータを送出することによって再送データの送出を行うことを特徴とする付記9に記載の通信処理方法。
(付記11)
更に、上位層から送られてくるデータを暗号化する暗号化ステップを前記下位層に備え、
前記バッファステップにおいて暗号化されたデータを格納することを特徴とする付記10に記載の通信処理方法。
(付記12)
前記下位層は、IPSecをプロトコルとして通信することを特徴とする付記11に記載の通信処理方法。
(付記13)
前記下位層は、IPをプロトコルとして通信することを特徴とする付記9に記載の通信処理方法。
(付記14)
前記上位層は、TCPをプロトコルとして通信することを特徴とする付記9に記載の通信処理方法。
(付記15)
前記上位層データ取得ステップは、前記上位層のデータから情報を得た後に、必要に応じてデータの上位層データ使用される情報を書き換えることを特徴とする付記9に記載の通信処理方法。
(付記16)
前記通信は、パケット通信であることを特徴とする付記9に記載の通信処理方法。
(付記17)
上位層で行われる再送制御を含む通信を下位層を介して行う通信処理方法であって、
該下位層において、ネットワークを介して受信されたデータの中から、上位層で終端されるデータの通信に関する情報を、上位層における終端に対応する処理をすることなく取得する上位層データ取得ステップと、
該下位層において、該得られた情報に基づいて、再送データを送出する再送ステップと、
を備えることを特徴とする通信処理方法をコンピュータに実現させるプログラム。
(付記18)
前記再送ステップは、
送信者から受信者へ送出されたデータを格納するバッファステップを更に備え、
該バッファステップにおいて格納されたデータを送出することによって再送データの送出を行うことを特徴とする付記17に記載のプログラム。
(付記19)
更に、上位層から送られてくるデータを暗号化する暗号化ステップを前記下位層に備え、
前記バッファステップにおいて暗号化されたデータを格納することを特徴とする付記18に記載のプログラム。
(付記20)
前記下位層は、IPSecをプロトコルとして通信することを特徴とする付記19に記載のプログラム。
(付記21)
前記下位層は、IPをプロトコルとして通信することを特徴とする付記17に記載のプログラム。
(付記22)
前記上位層は、TCPをプロトコルとして通信することを特徴とする付記17に記載のプログラム。
(付記23)
前記上位層データ取得ステップは、前記上位層のデータから情報を得た後に、必要に応じてデータの上位層データ使用される情報を書き換えることを特徴とする付記17に記載のプログラム。
(付記24)
前記通信は、パケット通信であることを特徴とする付記17に記載のプログラム。
11 TX代行処理
12 暗号化部
13 バッファ
14 セレクタ
15 セッションテーブル
16 RX識別処理
17 RX代行処理
18 復号化部
Claims (3)
- 再送制御機能を備える上位層として機能する装置と連携し、下位層として機能する通信処理装置であって、
前記上位層から受け取ったデータを暗号化する暗号化手段と、
前記暗号化されたデータを格納するバッファ手段と、
前記暗号化されたデータをネットワークを介して送信する送信手段と、
ネットワークを介して受信したデータから前記上位層の制御データを前記上位層の終端に対応する処理をすることなく取得するとともに、該上位層の制御データに基づいて前記送信手段が送信したデータの再送の要否を判断する上位層データ取得手段と、
前記上位層データ取得手段が再送が必要と判断した場合、前記暗号化されたデータを前記バッファ手段から読み出して再送する再送手段と、
を備える通信処理装置。 - 前記ネットワークを介して受信したデータが、アクノレッジパケットである場合には、該データを破棄することを特徴とする請求項1に記載の通信処理装置。
- 再送制御機能を備える上位層として機能する装置と連携し、下位層として機能する通信処理装置の制御方法であって、
前記上位層から受け取ったデータを暗号化し、
前記暗号化されたデータを格納し、
前記暗号化されたデータをネットワークを介して送信し、
ネットワークを介して受信したデータから前記上位層の制御データを前記上位層の終端に対応する処理をすることなく取得するとともに、該上位層の制御データに基づいて前記送信ステップで送信したデータの再送の要否を判断し、
再送が必要と判断された場合、前記格納ステップで格納された、前記暗号化されたデータを読み出して再送する、
ことを特徴とする制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010180148A JP4973770B2 (ja) | 2010-08-11 | 2010-08-11 | 通信処理装置及びその方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010180148A JP4973770B2 (ja) | 2010-08-11 | 2010-08-11 | 通信処理装置及びその方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004055368A Division JP4610910B2 (ja) | 2004-02-27 | 2004-02-27 | 通信処理装置及びその方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010259113A true JP2010259113A (ja) | 2010-11-11 |
JP4973770B2 JP4973770B2 (ja) | 2012-07-11 |
Family
ID=43319412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010180148A Expired - Lifetime JP4973770B2 (ja) | 2010-08-11 | 2010-08-11 | 通信処理装置及びその方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4973770B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08307410A (ja) * | 1995-05-09 | 1996-11-22 | Nippon Telegr & Teleph Corp <Ntt> | 秘匿方法 |
JPH11220512A (ja) * | 1998-02-03 | 1999-08-10 | Nippon Telegr & Teleph Corp <Ntt> | 無線通信装置およびプログラム記録媒体 |
JP2001308947A (ja) * | 2000-04-21 | 2001-11-02 | Toshiba Corp | 通信装置、中継装置および通信制御方法 |
JP2001333096A (ja) * | 2000-05-23 | 2001-11-30 | Canon Inc | 通信装置 |
JP4610910B2 (ja) * | 2004-02-27 | 2011-01-12 | 富士通株式会社 | 通信処理装置及びその方法 |
-
2010
- 2010-08-11 JP JP2010180148A patent/JP4973770B2/ja not_active Expired - Lifetime
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08307410A (ja) * | 1995-05-09 | 1996-11-22 | Nippon Telegr & Teleph Corp <Ntt> | 秘匿方法 |
JPH11220512A (ja) * | 1998-02-03 | 1999-08-10 | Nippon Telegr & Teleph Corp <Ntt> | 無線通信装置およびプログラム記録媒体 |
JP2001308947A (ja) * | 2000-04-21 | 2001-11-02 | Toshiba Corp | 通信装置、中継装置および通信制御方法 |
JP2001333096A (ja) * | 2000-05-23 | 2001-11-30 | Canon Inc | 通信装置 |
JP4610910B2 (ja) * | 2004-02-27 | 2011-01-12 | 富士通株式会社 | 通信処理装置及びその方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4973770B2 (ja) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10419406B2 (en) | Efficient forwarding of encrypted TCP retransmissions | |
JP6236933B2 (ja) | 中継装置 | |
US6934257B2 (en) | Transferring transmission control protocol packets | |
Dreibholz et al. | Stream control transmission protocol: Past, current, and future standardization activities | |
US9577791B2 (en) | Notification by network element of packet drops | |
US20070025374A1 (en) | TCP normalization engine | |
WO2014092779A1 (en) | Notification by network element of packet drops | |
US10063444B2 (en) | Network traffic capture analysis | |
US11777915B2 (en) | Adaptive control of secure sockets layer proxy | |
JP4610910B2 (ja) | 通信処理装置及びその方法 | |
US8812926B2 (en) | Wireless communication apparatus, wireless communication control apparatus, wireless communication method, wireless communication program storage medium, wireless communication control method, and wireless communication control program storage medium | |
CN114631297A (zh) | 用于多路径通信的方法和网络设备 | |
US7697441B2 (en) | Computer system with black hole management | |
CN116074401B (zh) | 一种在可编程交换机上的传输层协议实现方法 | |
JP4506430B2 (ja) | アプリケーションモニタ装置 | |
JP4973770B2 (ja) | 通信処理装置及びその方法 | |
JP2007093693A (ja) | 暗号化通信方法および通信装置 | |
JP5626317B2 (ja) | 無線通信装置および無線通信方法 | |
Dreibholz et al. | Network Working Group P. Amer Internet-Draft University of Delaware Intended status: Experimental M. Becke Expires: November 30, 2015 University of Duisburg-Essen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100811 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20111220 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120220 |
|
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: 20120313 |
|
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: 20120326 |
|
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: 20150420 Year of fee payment: 3 |