Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6506192B2 - 通信制御システムおよび通信制御方法 - Google Patents
[go: Go Back, main page]

JP6506192B2 - 通信制御システムおよび通信制御方法 - Google Patents

通信制御システムおよび通信制御方法 Download PDF

Info

Publication number
JP6506192B2
JP6506192B2 JP2016027399A JP2016027399A JP6506192B2 JP 6506192 B2 JP6506192 B2 JP 6506192B2 JP 2016027399 A JP2016027399 A JP 2016027399A JP 2016027399 A JP2016027399 A JP 2016027399A JP 6506192 B2 JP6506192 B2 JP 6506192B2
Authority
JP
Japan
Prior art keywords
packet
server
buffer
syn
unit
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
Application number
JP2016027399A
Other languages
English (en)
Other versions
JP2017147576A (ja
Inventor
明寛 木村
明寛 木村
太三 山本
太三 山本
亜希 福岡
亜希 福岡
杉園 幸司
幸司 杉園
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016027399A priority Critical patent/JP6506192B2/ja
Publication of JP2017147576A publication Critical patent/JP2017147576A/ja
Application granted granted Critical
Publication of JP6506192B2 publication Critical patent/JP6506192B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

本発明は、通信制御システムおよび通信制御方法に関する。
従来、TCP(Transmission Control Protocol)を用いた情報通信が広く利用されている。TCPを利用して、ユーザ端末とアプリケーション(APL)サーバとの間で通信を実行する際には、通常、スリーウェイハンドシェイクと呼ばれる処理が実行される。スリーウェイハンドシェイクにおいては、まず、一方の情報処理装置が他方の情報処理装置に通信接続(コネクション)の確立を要求するSYN(Synchronization)パケットを送信する。他方の情報処理装置は、SYNパケットに応じて接続を許可するためSYN−ACK(Acknowledgement)パケットを送信する。SYN−ACKパケットを受信した一方の情報処理装置が接続開始を示すACKパケットを送信する。これで、TCPを用いた通信が開始する。また、このようなTCP通信において、SYNパケットのみを選択的にバッファリングし、レートリミットをかける方法が提案されている。
木村明寛、西山聡史、大坂健、工藤伊知郎、"IoTサービス提供のためのサーバ数を削減するNW機能の提案"、[online]、[平成28年2月5日検索]、 インターネット<http://ci.nii.ac.jp/naid/40020429786>
しかしながら、従来の技術では、APLサーバの利用効率を高めるためには、APLサーバでコネクションが解放される速度(コネクション解放レート)を考慮し、パケットバッファ機能部の送信レートを適切な値に設定する必要があり、コネクション解放レートを測定するのに手間がかかるという課題があった。
また、APLサーバの使用率が低下したり、コネクション確率までに時間が掛かったりする場合があった。例えば、コネクション継続時間にばらつきがあり、コネクション解放レートが変動する場合、送信レートを固定値にするとサーバの利用効率低下やコネクション確立までの所要時間増加につながる。
つまり、コネクション継続時間が短い場合には、コネクション解放レートが送信レートを上回ると、APLサーバはコネクションを確立できるにもかかわらずSYNパケットが到着しない状況となり、APLサーバの利用効率が低下する。また、コネクション継続時間が長びく場合には、コネクション解放レートが送信レートを下回ると、APLサーバでSYNパケットが破棄され、ユーザ端末がコネクションを確立できる機会が次回のパケット再送以降になり、コネクション確立までの所要時間が増加する。
上述した課題を解決し、目的を達成するために、本発明の通信制御システムは、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信する受信部と、前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、前記バッファに格納されるSYNパケットを前記サーバに所定の時間間隔で繰り返し送信する送信部と、前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、を備えることを特徴とする。
また、本発明の通信制御システムは、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信する受信部と、前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、前記サーバが確立しているコネクションの状態を監視する監視部と、前記監視部によって監視されたコネクションの状態が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を通知する通知部と、前記通知部によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信部と、前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、を備えることを特徴とする。
また、本発明の通信制御方法は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間の通信を制御する通信制御方法であって、前記ユーザ端末と前記サーバとの間で送受信されるパケットを受信する受信工程と、前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、前記バッファに格納されるSYNパケットを前記サーバに所定の時間間隔で繰り返し送信する送信工程と、前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、を含んだことを特徴とする。
また、本発明の通信制御方法は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間の通信を制御する通信制御方法であって、前記ユーザ端末と前記サーバとの間で送受信されるパケットを受信する受信工程と、前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、前記サーバが確立しているコネクションの状態を監視する監視工程と、前記監視工程によって監視されたコネクションの状態が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を前記バッファに通知する通知工程と、前記通知工程によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信工程と、前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、を含んだことを特徴とする。
本発明によれば、コネクション解放レートを用いることなく、APLサーバの使用率が低下したり、コネクション確率までに時間が掛かったりすることができるという効果を奏する。
図1は、第1の実施形態に係る通信制御システムの構成の一例を示す図である。 図2は、第1の実施形態に係る通信制御装置の構成の一例を示す図である。 図3は、第1の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。 図4は、第1の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。 図5は、第2の実施形態に係る通信制御装置の構成の一例を示す図である。 図6は、第2の実施形態に係るサーバの構成の一例を示す図である。 図7は、第2の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。 図8は、第2の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。 図9は、第3の実施形態に係る通信制御装置の構成の一例を示す図である。 図10は、第3の実施形態に係るサーバの構成の一例を示す図である。 図11は、第3の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。 図12は、第3の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。 図13は、各実施形態に係る通信制御装置の機能を複数の装置上に実装する例を説明するための図である。 図14は、ユーザ端末からAPLサーバにSYNパケットが送信される場合の処理の例を説明するための図である。 図15は、通信制御プログラムを実行するコンピュータを示す図である。
以下に、本願に係る通信制御システムおよび通信制御方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本願に係る通信制御システムおよび通信制御方法が限定されるものではない。
(既存の手法によるSYNパケット送信処理の一例)
まず、図14を参照し、実施形態に係る通信制御システム及び通信制御方法の前提として、従来のTCPを用いたコネクションの確立処理について説明する。図14は、ユーザ端末からAPLサーバにSYNパケットが送信される場合の処理の例を説明するための図である。
図14の例では、ネットワークAを介してユーザ端末1〜4が、APLサーバ5と接続される。また、ユーザ端末1〜4とAPLサーバ5との間には、転送装置6、バッファ7および送信レート制御装置8が接続されている。
ユーザ端末1〜4は、それぞれネットワークAを介してAPLサーバ5と通信を開始するに当たり、まずコネクションを確立するためにSYNパケットを送信する。APLサーバ5は、SYNパケットに対する応答確認としてACKパケットを送り返す。ユーザ端末1〜4は、ACKパケットを受信すると、コネクションが確立したものとみなし、受信したACKパケットに対する応答としてACKパケットをAPLサーバ5に送信する。また、ユーザ端末1〜4は、APLサーバ5に対してAPL層パケットを送信する。図14中、ユーザ端末nが送信するSYNパケットはSYN(n)と表示する。また、ユーザ端末nが送信するACKパケットはACK(n)と表示する。また、ユーザ端末nが送信するAPL層パケットはAPL(n)と表示する。
送信されるSYNパケットには各々、シーケンス番号が付与される。たとえば、ユーザ端末1が送信するSYNパケットにはシーケンス番号「1」が付与される。シーケンス番号「1」のSYNパケットに応答してAPLサーバ5が送信する確認応答であるACKパケットのシーケンス番号も「1」となる。
転送装置6は、ユーザ端末1〜4が送信するパケットを受信し、SYNパケットを抽出してバッファ7に格納する。転送装置6は、SYNパケット以外のパケットたとえばAPL層パケットやACKパケットはバッファ7に格納せずにそのままAPLサーバ5に送信する。
バッファ7は、FIFO(First In First Out)メモリである。バッファ7に格納されたSYNパケットは、送信レート制御装置8によって所定の送信レートでバッファ7からAPLサーバ5に送信される。
ユーザ端末1〜4は、SYNパケットを送信した後、所定時間が経過してもSYNパケットに応答するACKパケットを受信しない場合、SYNパケットを再送する。TCPにおいてSYNパケットを再送する再送間隔の初期値は、各ユーザ端末の実装に依存して決定される。たとえば、Windows(登録商標)系のオペレーションシステム(OS)であれば3秒、Linux(登録商標)系のOSであれば1秒である。2回目以降の再送間隔はRFC(Request for Comments)に規定されるTCPの再送アルゴリズムに従って設定される。2回目以降の再送間隔はたとえば、前の再送間隔の2倍に設定される。転送装置6は、初回のSYNパケットと再送パケットとを区別せず、すべてバッファ7に振り分ける。
APLサーバ5は、SYNパケットを受信すると、確立済みのコネクション数が予め定めた上限に達していない場合、APL層パケット処理用のリソースを確保して、ACKパケットを送信する。APLサーバ5は、確立済みのコネクション数が予め定めた上限に達している場合、SYNパケットを破棄し、ACKパケットは送信しない。
(第1の実施形態)
図1は、第1の実施形態に係る通信制御システムの構成の一例を示す図である。第1の実施形態に係る通信制御システム1Aにおいては、通信制御装置10は、ユーザ端末20A,20B,20C,20DおよびAP(Access Point)30と、ネットワーク40を介して接続される。ユーザ端末20B,20C,20Dは、AP30およびネットワーク40を介して通信制御装置10と接続される。また、通信制御装置10は、サーバ50とネットワーク60を介して接続される。なお、図1に示す構成は一例にすぎず、通信制御装置10が、ユーザ端末20A,20B,20C,20Dとサーバ50とを接続するネットワーク上に配置されればよく、具体的な構成や各装置の数は特に限定されない。
ユーザ端末20A,20B,20C,20Dはネットワーク40,60を介してサーバ50との間で情報の送受信を行う。ユーザ端末20A,20B,20C,20Dはたとえば、IoT(Internet of Things)端末またはM2M(Machine to Machine)端末等である。
AP30は、ユーザ端末20B,20C,20Dからの接続要求を受け付け、ネットワーク40への通信を仲介する機器である。なお、AP30は、IoTゲートウェイやM2Mゲートウェイ等のゲートウェイであってもよい。
ネットワーク40,60はたとえば、インターネット、イントラネット、ローカルエリアネットワーク(LAN(Local Area Network))、ワイドエリアネットワーク(WAN(Wide Area Network))等である。また、ネットワーク40,60は無線ネットワークであっても有線ネットワークであっても両者の組み合わせであってもよい。
サーバ50は、ユーザ端末20A,20B,20C,20Dとの間でコネクションを確立し、情報の送受信を行う。サーバ50はたとえばAPLサーバである。
(通信制御装置の構成の一例)
図2は、第1の実施形態に係る通信制御装置の構成の一例を示す図である。通信制御装置10は、図1に示すように、ユーザ端末20A,20B,20C,20Dとサーバ50との間の通信経路上に配置される。通信制御装置10は、ユーザ端末20A,20B,20C,20Dとサーバ50との間の通信を制御する。たとえば、通信制御装置10は、ユーザ端末20A,20B,20C,20Dから送信されるSYNパケットをサーバ50に転送する。また、通信制御装置10は、ユーザ端末20A,20B,20C,20Dから再送されるSYNパケットによる、サーバ50とユーザ端末20A,20B,20C,20D間の単位時間当たりのコネクション数の減少を抑制するよう通信を制御する。
図2に示すように通信制御装置10は、通信部110と、制御部120と、記憶部130と、を備える。通信部110は、ネットワーク40,60を介して送信される情報を送受信する。
制御部120は、通信制御装置10の各部の処理を制御する。制御部120はたとえば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)や、ASIC(Application Specific Integrated Circuit)等で構成することができる。制御部120は、受信部121、パケット識別部122と、送信部123、およびバッファ管理部124を有する。
受信部121は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末20とサーバ50との間で送受信されるパケットを、通信部110を介して受信する。
パケット識別部122は、受信部121が受信するパケットのうち、ユーザ端末20からサーバ50へ送信されるSYNパケットをバッファ131に振り分ける。具体的には、パケット識別部122は、通信部110を介して受信部121が受信するパケットのうち、ユーザ端末20A,20B,20C,20Dからサーバ50宛に送信されるSYNパケットを識別する。
そして、パケット識別部122は、識別したSYNパケットを後述するバッファ131に格納する。また、パケット識別部122は、SYNパケット以外のパケットを、通信部110を介して宛先に送信する。パケット識別部122は、送信元IPアドレス、送信先IPアドレス等からユーザ端末20A〜20Dおよびサーバ50を識別する。また、パケット識別部122は、パケットのTCPヘッダのSYNフラグに基づきSYNパケットを識別する。
送信部123は、バッファ131に格納されるSYNパケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信する。具体的には、送信部123は、バッファの先頭パケットをサーバ50に所定の時間間隔で繰り返し送信する。また、送信部123は、予め設定されたウィンドウサイズ分のSYNパケットをサーバ50に所定の時間間隔で繰り返し送信するようにしてもよい。
バッファ管理部124は、パケット識別部122が識別したSYNパケットを受信した順番にバッファ131に格納する。また、バッファ管理部124は、受信部121が受信したパケットが所定の条件を満たす場合に、バッファ131に格納されるSYNパケットを破棄する。例えば、送信部123は、サーバ50からユーザ端末20に送信されるSYN/ACK(Acknowledgement)パケットのシーケンス番号が、バッファ131に格納されるSYNパケットのシーケンス番号と同一である場合、バッファ131に格納されるSYNパケットを破棄する。
記憶部130は、通信制御装置10における各部の処理に使用する情報や処理の結果生成される情報を記憶する。記憶部130はたとえば、ハードディスク、光ディスク等の記憶装置でもよい。また、記憶部130は、RAM(Random Access Memory)やフラッシュメモリ等の半導体メモリであってもよい。記憶部130はバッファ131を有する。
バッファ131は、パケット識別部122が識別したSYNパケットを格納する。たとえばバッファ131は、FIFO(First In First Out)メモリである。バッファ131は、パケット識別部122が識別したSYNパケットを受信した順番に格納する。格納されたSYNパケットは、先に格納されたパケットから順に所定の送信レートで通信部110を介してサーバ50に送信される。
(第1の実施形態の通信制御処理の流れの一例)
図3は、第1の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。図3に示すように、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS101〜S104)。バッファ管理部124は、パケット識別部122が識別したSYN#1パケットおよびSYN#2パケットを受け取ると、バッファ131に格納する。
そして、送信部123(図示せず)は、バッファ131に格納されるSYN#1パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信する(ステップS105)。図3の例に示すように、サーバ50側においてコネクション数が上限に到達しており、コネクションに空きがない場合には、SYN#1パケットは破棄されるが、コネクションが解放されてコネクションに空きがある場合には、サーバ50は、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS106)。
パケット識別部122は、SYN/ACKパケット#1を受信すると、SYN/ACKパケット#1をコピーして、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS107)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50宛てに送信して(ステップS108)、コネクションを確立する処理を行う(図示省略)。
また、送信部123が、SYN#1パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信し続けている(ステップS109)。サーバ50は、SYN#1パケットを受け付けると、応答済みSYNパケットとシーケンス番号が重複するため、SYN#1パケットを破棄する。また、パケット識別部122は、SYN/ACKパケット#1をバッファ管理部124に送信する(ステップS110)。
パケット管理部124は、SYN/ACKパケット#1とシーケンス番号が一致するSYN#1パケットをバッファから削除する。その後、送信部123は、SYN#1パケットがバッファから削除されたことにより、バッファの先頭パケットであるSYN#2パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信する(ステップS111)。
また、通信制御装置10は、図4に例示するように、予め設定されたウィンドウサイズ分のSYNパケットをサーバ50に所定の時間間隔で繰り返し送信するようにしてもよい。図4に示すように、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS201〜S204)。
そして、送信部123(図示せず)は、バッファ131からウィンドウサイズ分のSYNパケットをサーバ50に送信する。図4の例では、ウィンドウサイズが「2」であり、バッファ131に格納されるSYN#1パケットおよびSYN#2パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信する(ステップS205)。図4の例に示すように、サーバ50側においてコネクション数が到達しており、コネクションに空きがない場合には、SYN#1パケットおよびSYN#2パケットは破棄されるが、コネクションが解放されてコネクションに空きがある場合には、サーバ50は、SYN#1パケットおよびSYN#2パケットを受信した後(ステップS206、S207)、SYN/ACKパケット#1およびSYN/ACKパケット#2をパケット識別部122に送信する(ステップS208、S209)。
パケット識別部122は、SYN/ACKパケット#1およびSYN/ACKパケット#2を受信すると、SYN/ACKパケット#1およびSYN/ACKパケット#2をコピーして、ユーザ端末#1にSYN/ACKパケット#1を転送し(ステップS210)、ユーザ端末#2にSYN/ACKパケット#2を転送する(ステップS211)。
その後、ユーザ端末#1は、ACK#1パケットをサーバ50宛てに送信し(ステップS212)、ユーザ端末#2は、ACK#2パケットをサーバ50宛てに送信し(ステップS213)、それぞれコネクションを確立する処理を行う(図示省略)。また、バッファ管理部124が、SYN#1パケットおよびSYN#2パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信し続けている(ステップS214、S215)。サーバ50は、SYN#1パケットおよびSYN#2パケットを受け付けると、応答済みSYNパケットとシーケンス番号が重複するため、SYN#1パケットおよびSYN#2パケットを破棄する。
そして、バッファ管理部124が、SYN/ACKパケット#1およびSYN/ACKパケット#2をパケット識別部122から受信すると(ステップS216、S217)、SYN/ACKパケット#1およびSYN/ACKパケット#2とシーケンス番号が一致するSYN#1パケットおよびをSYN#2パケットをバッファ131から削除する。
このように、ウィンドウサイズを設け、ウィンドウサイズ分のSYNパケットを繰り返し送ることで、ACKを待たずに異なる複数のユーザ端末からのSYNパケットを送信できるため、コネクションに複数の空きがある場合にサーバ50の利用効率を向上できる。
(第1の実施形態の効果)
第1の実施形態に係る通信制御システムの通信制御装置10は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信し、受信するパケットのうち、ユーザ端末20からサーバへ送信されるSYNパケットをバッファ131に振り分ける。そして、通信制御装置10は、バッファ131に格納されるSYNパケットをサーバ50に所定の時間間隔で繰り返し送信する。また、通信制御装置10は、受信したパケットが所定の条件を満たす場合に、バッファ131に格納されるSYNパケットを破棄する。このため、通信制御システムでは、コネクション解放レートを用いることなく、APLサーバの使用率が低下したり、コネクション確率までに時間が掛かったりすることができる。
つまり、第1の実施形態に係る通信制御システムの通信制御装置10は、バッファ131のSYNパケットを繰り返し送信する。これにより、コネクション解放後、新たなコネクションをすばやく確立させ、サーバの利用効率を向上できる。
(第2の実施形態)
第1の実施形態においては、通信制御装置10は、バッファ131に格納されるSYNパケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信するものとした。第2の実施形態の通信制御システムは、サーバ50A側でコネクションの空き状況を監視し、コネクションが空き状況を通信制御装置10Aに通知する。以下では、第2の実施形態の通信制御システムについて説明するが、第1の実施形態と同様の構成および処理については説明を省略する。
図5は、第2の実施形態に係る通信制御装置の構成の一例を示す図である。制御部120の送信部123Aは、サーバ50Aによって通知された情報に基づいて、バッファ131に格納されるSYNパケットのサーバ50Aへの送信を制御する。具体的には、送信部123Aは、サーバ50Aから通知された空きがあるコネクション数が1以上である場合には、バッファ131に格納されるSYNパケットをサーバ50Aへ送信する。
図6は、第2の実施形態に係るサーバの構成の一例を示す図である。図6に示すように、サーバ50Aは、通信部510と、制御部520と、記憶部530と、を備える。通信部510は、ネットワーク60を介して送信される情報を送受信する。
制御部520は、サーバ50Aの各部の処理を制御する。制御部520はたとえば、CPU、MPUや、ASIC等で構成することができる。制御部520は、監視部521Aおよび通知部522Aを有する。
監視部521Aは、サーバ50Aが確立しているコネクションの状態を監視する。具体的には、監視部521Aは、一定時間経過するごとに、または、コネクション解放を契機に、サーバ50Aのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する。なお、以下では、一定時間経過するごとに、サーバ50Aのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する場合を例に説明する。
通知部522Aは、監視部521Aによって監視されたコネクションの状態が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を通知する。具体的には、通知部522Aは、監視部521Aによって特定された空きがあるコネクション数を通知する。
記憶部530は、サーバ50Aにおける各部の処理に使用する情報や処理の結果生成される情報を記憶する。記憶部530はたとえば、ハードディスク、光ディスク等の記憶装置でもよい。また、記憶部530は、RAMやフラッシュメモリ等の半導体メモリであってもよい。
(第2の実施形態の通信制御処理の流れの一例)
図7は、第2の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。図7に示すように、サーバ50Aは、コネクション数が上限に到達しているため、空きが0であることをバッファ管理部124に通知する(ステップS301)。また、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#3がSYN#3パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS302〜S307)。バッファ管理部124は、パケット識別部122が識別したSYN#1パケット、SYN#2およびSYN#3パケットを受け取ると、バッファ131に格納する。
その後、サーバ50Aは、コネクションが解放され、空きが1であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS308)。通信制御装置10Aが空きが1であることを受け付けると、送信部123A(図示せず)が、SYN#1パケットを、通信部110を介してサーバ50Aに送信し(ステップS309)、バッファ管理部124が、SYN#1パケットをバッファ131から削除する。
そして、サーバ50Aは、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS310)。パケット識別部122は、SYN/ACKパケット#1を受信すると、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS311)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50A宛てに送信して(ステップS312)、コネクションを確立する処理を行う(図示省略)。
その後、サーバ50Aは、コネクションが一つ解放されると、空きが1であることを通信制御装置10Aのバッファ管理部124に通知し(ステップS313)、さらにもう一つコネクションが解放されると、空きが2であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS314)。
通信制御装置10Aが空きが2であることを受け付けると、送信部123Aが、SYN#2パケットを、通信部110を介してサーバ50Aに送信し(ステップS315)、バッファ管理部124が、SYN#2パケットをバッファ131から削除し、続いて、SYN#3パケットを、サーバ50Aに送信し(ステップS316)、バッファ管理部124が、SYN#3パケットをバッファ131から削除する。
その後、同様に、サーバ50Aは、SYN/ACKパケット#2およびSYN/ACKパケット#3をパケット識別部122に送信し(ステップS317、S318)、コネクションを確立する処理を行う(図示省略)。
図7の例では、通信制御装置10AがSYNパケットを送信後すぐにバッファ131から削除するため、APLにSYNパケットをサーバ50Aに送信したにもかかわらずパケットロスが発生した場合には再送できなくなる。このため、パケットロスが発生すると、ユーザ端末がコネクションを確立できる機会が次回のパケット再送以降となり、ユーザ端末のコネクション確立までの所要時間が増加する場合がある。このため、図8に示すように、SYN/ACKパケットをもとにコネクションを監視し、コネクションを確立できるとSYNパケットをバッファから削除するようにしてもよい。
図8に例示するように、サーバ50Aは、コネクション数が上限に到達しているため、空きが0であることをバッファ管理部124に通知する(ステップS401)。また、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS402〜S405)。バッファ管理部124は、パケット識別部122が識別したSYN#1パケットおよびSYN#2パケットを受け取ると、バッファ131に格納する。
その後、サーバ50Aは、コネクションが解放され、空きが1であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS406)。通信制御装置10Aが空きが1であることを受け付けると、送信部123が、SYN#1パケットを、通信部110を介してサーバ50Aに送信する(ステップS407)。ここで、図8の例では、SYN#1パケットがパケットロスしたものとする。
このため、サーバ50Aは、再度、空きが1であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS408)。通信制御装置10Aが空きが1であることを受け付けると、送信部123が、再びSYN#1パケットを、通信部110を介してサーバ50Aに送信する(ステップS409)。
そして、サーバ50Aは、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS410)。パケット識別部122は、SYN/ACKパケット#1を受信すると、SYN/ACKパケット#1をコピーして、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS411)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50A宛てに送信して(ステップS412)、コネクションを確立する処理を行う(図示省略)。
また、パケット識別部122は、SYN/ACKパケット#1をバッファ管理部124に送信する(ステップS413)。パケット管理部124は、SYN/ACKパケット#1とシーケンス番号が一致するSYN#1パケットをバッファから削除する。
(第2の実施形態の効果)
第2の実施形態に係る通信制御システムでは、サーバ50Aが、サーバのコネクションの空き状況を監視し、該空きがあるコネクション数を特定し、特定された空きがあるコネクション数を通信制御装置10Aに通知し、通知された空きがあるコネクション数が1以上である場合には、バッファ131に格納されるSYNパケットのサーバ50Aへ送信する。このため、コネクションに空きがない間のSYNパケット送信を防ぎつつ、新たなコネクションをすばやく確立できるため、サーバの利用効率を向上できる。
(第3の実施形態)
第2の実施形態においては、サーバ50A側でコネクションの空き状況を監視し、コネクションが空き状況を通信制御装置10Aに通知するものとした。第3の実施形態の通信制御システでムは、サーバ50B側でサーバ50Bが確立したコネクション数を監視し、コネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることがないことを示すバックオフ通知を行う。以下では、第3の実施形態の通信制御システムについて説明するが、第1の実施形態、第2の実施形態と同様の構成および処理については説明を省略する。
図9は、第3の実施形態に係る通信制御装置の構成の一例を示す図である。制御部120の送信部123Bは、通知部からSYNパケットを受け付けることがないことを示す通知を受信すると、サーバ50Bから送信されたバックオフ通知に設定されたタイマ値の時間を経過した後に、バッファ131に格納されるSYNパケットをサーバ50Bへ送信する。
図10は、第3の実施形態に係るサーバの構成の一例を示す図である。サーバ50Bの監視部521Bは、サーバ50Bが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定する。
通知部522Bは、監視部521Bによってコネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることがないことを示す通知であって、タイマ値が設定されたバックオフ通知を通知する。
(第3の実施形態の通信制御処理の流れの一例)
図11は、第3の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。図11に示すように、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#3がSYN#3パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS501〜S506)。バッファ管理部124は、パケット識別部122が識別したSYN#1パケット、SYN#2パケットおよびSYN#3パケットを受け取ると、バッファ131に格納する。
その後、送信部123B(図示せず)が、SYN#1パケットを、通信部110を介してサーバ50Bに送信し(ステップS507)、バッファ管理部124が、SYN#1パケットをバッファ131から削除する。
その後、サーバ50Bは、コネクションが上限に到達し、タイマ値として1ミリ秒が設定されたバックオフ通知を通信制御装置10Bに通知するとともに(ステップS508)、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS509)。パケット識別部122は、SYN/ACKパケット#1を受信すると、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS510)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50B宛てに送信して(ステップ511)、コネクションを確立する処理を行う(図示省略)。
その後、通信制御装置10Bがバックオフ通知に設定されたタイマ値の時間(図11の例では、1ミリ秒)を経過した後、送信部123Bが、SYN#2パケットを、通信部110を介してサーバ50Bに送信し(ステップS512)、バッファ管理部124が、SYN#2パケットをバッファ131から削除し、続いて、SYN#3パケットを、サーバ50Bに送信し(ステップS513)、バッファ管理部124が、SYN#3パケットをバッファ131から削除する。
その後、同様に、サーバ50Bは、SYN/ACKパケット#2およびSYN/ACKパケット#3をパケット識別部122に送信し(ステップS514、S515)、コネクションを確立する処理を行う(図示省略)。
図11の例では、通信制御装置10BがSYNパケットを送信後すぐにバッファ131から削除するため、サーバ50Bのコネクションが上限に到達した後であってバックオフ通知前に送信したSYNパケットは、サーバ50B側で破棄されてしまう。このためユーザ端末のコネクション確立までの所要時間が増加する場合がある。そこで、図12に示すように、SYN/ACKパケットをもとにコネクションを監視し、コネクションを確立できるとSYNパケットをバッファから削除するようにしてもよい。バッファ管理部124は、バックオフ通知を受けた後、バックオフタイマ値時間経過すると、バッファの先頭パケットのから送信を再開する。
図12に例示するように、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#3がSYN#3パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS601〜S606)。バッファ管理部124は、パケット識別部122が識別したSYN#1パケット、SYN#2パケットおよびSYN#3パケットを受け取ると、バッファ131に格納する。
その後、送信部123が、SYN#1パケットおよびSYN#2パケットを、通信部110を介してサーバ50Bに送信し(ステップS607、S608)、バッファ管理部124が、SYN#1パケットをバッファ131から削除する。
その後、サーバ50Bは、コネクションが上限に到達し、タイマ値として1ミリ秒が設定されたバックオフ通知を通信制御装置10Bに通知するとともに(ステップS609)、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS610)。パケット識別部122は、SYN/ACKパケット#1を受信すると、SYN/ACKパケット#1をコピーして、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS611)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50B宛てに送信して(ステップ612)、コネクションを確立する処理を行う(図示省略)。
また、パケット識別部122は、SYN/ACKパケット#1をバッファ管理部124に送信する(ステップS613)。パケット管理部124は、SYN/ACKパケット#1とシーケンス番号が一致するSYN#1パケットをバッファから削除する。
その後、通信制御装置10Bがバックオフ通知に設定されたタイマ値の時間(図12の例では、1ミリ秒)を経過した後、送信部123が、SYN#1パケットおよびSYN#2パケットを、通信部110を介してサーバ50Bに送信する(ステップS614、S615)。その後、同様に、サーバ50Bは、SYN/ACKパケット#2およびSYN/ACKパケット#3をパケット識別部122に送信し(ステップS616、S617)、コネクションを確立する処理を行う(図示省略)。
(第3の実施形態の効果)
第3の実施形態に係る通信制御システムでは、サーバ50Bが、サーバが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定し、コネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることができないことを示す通知であって、タイマ値が設定されたバックオフ通知を通知する。そして、通信制御装置10Bは、SYNパケットを受け付けることがないことを示すバックオフ通知を受信すると、該通知に設定されたタイマ値の時間を経過した後に、バッファ131に格納されるSYNパケットをサーバ50Bへ送信する。このため、第3の実施形態に係る通信制御システムでは、サーバ30Bが、コネクション数が上限に到達したことを契機にバックオフ通知し、通信制御装置10Bが、バックオフ通知に含まれるバックオフタイマ値だけ待機する。これにより、通信制御装置10Bはサーバ50Bからの通知を待たずにパケットを送信できるため、効率低下を抑制できる。
(変形例)
上記実施形態においては、通信制御システムが備える通信制御装置内に、パケット識別部とバッファ管理部とを設けるものとした。しかし、これに限定されず、パケット識別部とバッファ管理部とをそれぞれ独立の装置としてネットワーク上に配置してもよい。また、パケット識別部とバッファ管理部とをサーバに組み入れてもよい。受信部、送信部も同様に、独立の装置としてもよく、また、パケット識別部およびバッファ管理部とともにサーバに組み入れてもよい。すなわち、通信制御システムにおいて、TCPを用いてコネクションを確立する情報処理装置とサーバとの通信経路上に通信制御装置が備える各機能部が配置されればよい。
たとえば、図13は、各実施形態に係る通信制御装置の機能を複数の装置上に実装する例を説明するための図である。図13に示す通信制御システム1Bは、図1に示す通信制御システム1Aと、通信制御装置が備える機能部の配置が相違する。他の点では、図13に示す通信制御システム1Bは、図1に示す通信制御システム1Aと同様である。
第1〜第3の実施形態においては、受信部、パケット識別部、送信部、バッファ管理部をそれぞれ一つの通信制御装置内に配置するものとして説明した。しかし、これに限らず、図13のように各機能部を別の装置上に配置することもできる。
図13の例では、パケット識別装置11がネットワーク40、60を介してユーザ端末20A〜20Dとサーバ50との間に接続される。そして、パケット識別装置11は、バッファ12を備えるパケットバッファ装置13と接続される。
パケット識別装置11は、第1〜第3の実施形態に係る受信部121、パケット識別部122、送信部123、123A、123Bの機能を実行することができる装置である。パケット識別装置11はたとえばルータ等で構成することができる。パケット識別装置11は、SYNパケットを識別してパケットバッファ装置13に送信する。また、パケット識別装置11は、ACKパケットを識別してミラーリングし、ミラーリングしたACKパケットをパケットバッファ装置13に送信する。
バッファ12は、パケット識別装置11から転送されるSYNパケットを受信した順に格納する。そして、バッファ12は、先に受信したSYNパケットから先に所定の送信レートで順次送信する。
パケットバッファ装置13は、第1〜第3の実施形態に係るバッファ管理部124の機能を実行することができる装置である。パケットバッファ装置13はたとえば、サーバ50に組み入れることもできるし、サーバと独立の装置としてもよい。
このように、通信制御装置10〜10Bの各機能は異なる装置上に実装して実現することができる。また、APLサーバ等、既存の装置に通信制御装置10〜10Bの機能の一部を実装してもよい。また、図13の例では、パケットバッファ装置13がバッファ12を備えるものとしたが、バッファ12をパケットバッファ装置13とは別の装置上に設けてパケットバッファ装置13と接続する構成とすることもできる。
(プログラム)
また、上記実施形態において説明した通信制御システムが実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、実施形態に係る通信制御装置が実行する処理をコンピュータが実行可能な言語で記述した通信制御プログラムを作成することもできる。この場合、コンピュータが通信制御プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかる通信制御プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録された通信制御プログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
図15は、通信制御プログラムを実行するコンピュータ1000を示す図である。図15に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
メモリ1010は、図15に例示するように、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、図15に例示するように、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、図15に例示するように、ディスクドライブ1041に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1041に挿入される。シリアルポートインタフェース1050は、図15に例示するように、例えばマウス1051、キーボード1052に接続される。ビデオアダプタ1060は、図15に例示するように、例えばディスプレイ1061に接続される。
ここで、図15に例示するように、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の通信制御プログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ1031に記憶される。
また、上記実施形態で説明した各種データは、プログラムデータとして、例えばメモリ1010やハードディスクドライブ1031に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、各種処理手順を実行する。
なお、通信制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、通信制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN、WAN等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
なお、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
上記の実施形態やその変形は、本願が開示する技術に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
10、10A、10B 通信制御装置
20A、20B、20C、20D ユーザ端末
30 AP
40、60 ネットワーク
50、50A、50B サーバ
110、510 通信部
120、520 制御部
121 受信部
122 パケット識別部
123、123A、123B 送信部
124 バッファ管理部
130、530 記憶部
131 バッファ
521、521A、521B 監視部
522、522A、522B 通知部

Claims (7)

  1. ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信する受信部と、
    前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、
    前記サーバが確立しているコネクションの空き状況、または、前記サーバが確立したコネクション数を監視する監視部と、
    前記監視部によって監視されたコネクションの空き状況、または、前記コネクション数が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を通知する通知部と、
    前記通知部によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信部と、
    前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、
    を備えることを特徴とする通信制御システム。
  2. ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信する受信部と、
    前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、
    前記サーバのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する監視部と、
    前記監視部によって特定された空きがあるコネクション数を通知する通知部と、
    前記通知部から通知された空きがあるコネクション数が1以上である場合には、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信部と、
    前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、
    を備えることを特徴とする通信制御システム。
  3. ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信する受信部と、
    前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、
    前記サーバが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定する監視部と、
    前記監視部によってコネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることができないことを示す通知であって、タイマ値が設定された通知を通知する通知部と、
    前記通知部からSYNパケットを受け付けることがないことを示す通知を受信すると、該通知に設定されたタイマ値の時間を経過した後に、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信部と、
    前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、
    を備えることを特徴とする通信制御システム。
  4. 前記バッファ管理部は、前記受信部が受信したパケットのうち、前記サーバから前記ユーザ端末に送信されるSYN/ACKパケットのシーケンス番号が、前記バッファに格納されるSYNパケットのシーケンス番号と同一である場合、前記バッファに格納されるSYNパケットを破棄することを特徴とする請求項1〜のいずれか一つに記載の通信制御システム。
  5. ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間の通信を制御する通信制御方法であって、
    前記ユーザ端末と前記サーバとの間で送受信されるパケットを受信する受信工程と、
    前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、
    前記サーバが確立しているコネクションの空き状況、または、前記サーバが確立したコネクション数を監視する監視工程と、
    前記監視工程によって監視されたコネクションの空き状況、または、前記コネクション数が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を前記バッファに通知する通知工程と、
    前記通知工程によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信工程と、
    前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、
    を含んだことを特徴とする通信制御方法。
  6. ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間の通信を制御する通信制御方法であって、
    前記ユーザ端末とサーバとの間で送受信されるパケットを受信する受信工程と、
    前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、
    前記サーバのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する監視工程と、
    前記監視工程によって特定された空きがあるコネクション数を通知する通知工程と、
    前記通知工程から通知された空きがあるコネクション数が1以上である場合には、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信工程と、
    前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、
    を含んだことを特徴とする通信制御方法。
  7. ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間の通信を制御する通信制御方法であって、
    前記ユーザ端末とサーバとの間で送受信されるパケットを受信する受信工程と、
    前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、
    前記サーバが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定する監視工程と、
    前記監視工程によってコネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることができないことを示す通知であって、タイマ値が設定された通知を通知する通知工程と、
    前記通知工程からSYNパケットを受け付けることがないことを示す通知を受信すると、該通知に設定されたタイマ値の時間を経過した後に、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信工程と、
    前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、
    を含んだことを特徴とする通信制御方法。
JP2016027399A 2016-02-16 2016-02-16 通信制御システムおよび通信制御方法 Expired - Fee Related JP6506192B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016027399A JP6506192B2 (ja) 2016-02-16 2016-02-16 通信制御システムおよび通信制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016027399A JP6506192B2 (ja) 2016-02-16 2016-02-16 通信制御システムおよび通信制御方法

Publications (2)

Publication Number Publication Date
JP2017147576A JP2017147576A (ja) 2017-08-24
JP6506192B2 true JP6506192B2 (ja) 2019-04-24

Family

ID=59681655

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016027399A Expired - Fee Related JP6506192B2 (ja) 2016-02-16 2016-02-16 通信制御システムおよび通信制御方法

Country Status (1)

Country Link
JP (1) JP6506192B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4666501B2 (ja) * 2005-12-28 2011-04-06 Kddi株式会社 コネクション確立要求の受付方法、装置およびプログラムならびにコネクション確立要求装置
US20070299965A1 (en) * 2006-06-22 2007-12-27 Jason Nieh Management of client perceived page view response time
JP2017034627A (ja) * 2015-08-06 2017-02-09 日本電信電話株式会社 通信制御システムおよび通信制御方法

Also Published As

Publication number Publication date
JP2017147576A (ja) 2017-08-24

Similar Documents

Publication Publication Date Title
CN1784867B (zh) 利用接入点区分接入优先级以及实现简单802.11e混合协调功能的方法
CN1572093B (zh) 通过及时响应于正被建立的连接而传送或丢弃缓冲的输入数据来为休眠移动终端管理输入数据
JP4128198B2 (ja) 帯域制御装置
EP2873269B1 (en) Method and system for handling error indications
JP2005311920A5 (ja)
JP2009544259A (ja) 無線通信システムにおけるポリシー施行のための方法及び装置
US9781626B2 (en) Wireless channel allocation in a base station processor
JP2006511140A (ja) 無線ネットワークにおけるリアルタイムデータの保護
CN106330742B (zh) 一种流量控制的方法及网络控制器
CN116886609A (zh) 拥塞控制方法及装置、通信网络、计算机存储介质
KR20110089009A (ko) 패킷 기반 통신 시스템에서 단말의 절전 모드 제어 방법 및 장치
JP2004128810A (ja) 端末装置、端末装置内の優先処理方法、およびプログラム
CN114390054A (zh) 一种核心网网络加速方法、电子设备及计算机存储介质
JP6963411B2 (ja) 通信装置、通信方法、およびプログラム
JP6506192B2 (ja) 通信制御システムおよび通信制御方法
US10187317B1 (en) Methods for traffic rate control and devices thereof
US20070019550A1 (en) Shaper control method, data communication system, network interface apparatus, and network delay apparatus
JP2017034627A (ja) 通信制御システムおよび通信制御方法
JP6770943B2 (ja) 基地局装置及びプログラム
CN119484423A (zh) 一种tcp代理方法、基站及装置
JP2021129201A (ja) 通信装置、通信方法およびプログラム
KR20070081810A (ko) 이동통신 시스템에서 패킷혼잡 제어 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190328

R150 Certificate of patent or registration of utility model

Ref document number: 6506192

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees