JP6506192B2 - Communication control system and communication control method - Google Patents
Communication control system and communication control method Download PDFInfo
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Description
本発明は、通信制御システムおよび通信制御方法に関する。 The present invention relates to a communication control system and a communication control method.
従来、TCP(Transmission Control Protocol)を用いた情報通信が広く利用されている。TCPを利用して、ユーザ端末とアプリケーション(APL)サーバとの間で通信を実行する際には、通常、スリーウェイハンドシェイクと呼ばれる処理が実行される。スリーウェイハンドシェイクにおいては、まず、一方の情報処理装置が他方の情報処理装置に通信接続(コネクション)の確立を要求するSYN(Synchronization)パケットを送信する。他方の情報処理装置は、SYNパケットに応じて接続を許可するためSYN−ACK(Acknowledgement)パケットを送信する。SYN−ACKパケットを受信した一方の情報処理装置が接続開始を示すACKパケットを送信する。これで、TCPを用いた通信が開始する。また、このようなTCP通信において、SYNパケットのみを選択的にバッファリングし、レートリミットをかける方法が提案されている。 Conventionally, information communication using TCP (Transmission Control Protocol) is widely used. When communication is performed between a user terminal and an application (APL) server using TCP, a process called three-way handshake is usually performed. In the three-way handshake, first, one information processing apparatus transmits to the other information processing apparatus a SYN (Synchronization) packet requesting establishment of a communication connection (connection). The other information processing apparatus transmits a SYN-ACK (Acknowledgement) packet in order to permit connection according to the SYN packet. One information processing apparatus that has received the SYN-ACK packet transmits an ACK packet indicating the start of connection. This starts communication using TCP. In addition, in such TCP communication, a method has been proposed in which only SYN packets are selectively buffered to apply rate limit.
しかしながら、従来の技術では、APLサーバの利用効率を高めるためには、APLサーバでコネクションが解放される速度(コネクション解放レート)を考慮し、パケットバッファ機能部の送信レートを適切な値に設定する必要があり、コネクション解放レートを測定するのに手間がかかるという課題があった。 However, in the prior art, in order to increase the utilization efficiency of the APL server, the transmission rate of the packet buffer function unit is set to an appropriate value in consideration of the speed at which the connection is released (connection release rate) in the APL server. The problem is that it takes time and effort to measure the connection release rate.
また、APLサーバの使用率が低下したり、コネクション確率までに時間が掛かったりする場合があった。例えば、コネクション継続時間にばらつきがあり、コネクション解放レートが変動する場合、送信レートを固定値にするとサーバの利用効率低下やコネクション確立までの所要時間増加につながる。 In addition, the usage rate of the APL server may decrease, and it may take time until the connection probability. For example, when the connection continuation time varies and the connection release rate fluctuates, setting the transmission rate to a fixed value leads to a decrease in the utilization efficiency of the server and an increase in the time required to establish the connection.
つまり、コネクション継続時間が短い場合には、コネクション解放レートが送信レートを上回ると、APLサーバはコネクションを確立できるにもかかわらずSYNパケットが到着しない状況となり、APLサーバの利用効率が低下する。また、コネクション継続時間が長びく場合には、コネクション解放レートが送信レートを下回ると、APLサーバでSYNパケットが破棄され、ユーザ端末がコネクションを確立できる機会が次回のパケット再送以降になり、コネクション確立までの所要時間が増加する。 That is, when the connection duration time is short, if the connection release rate exceeds the transmission rate, the APL server can establish a connection, but the SYN packet does not arrive, and the utilization efficiency of the APL server decreases. Also, if the connection duration time is long, when the connection release rate falls below the transmission rate, the APL server discards the SYN packet, and the user terminal has an opportunity to establish the connection after the next packet retransmission, until the connection is established. Time required for
上述した課題を解決し、目的を達成するために、本発明の通信制御システムは、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信する受信部と、前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、前記バッファに格納されるSYNパケットを前記サーバに所定の時間間隔で繰り返し送信する送信部と、前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、を備えることを特徴とする。 In order to solve the problems described above and to achieve the object, a communication control system according to the present invention is a receiving unit that receives packets transmitted and received between a user terminal and a server establishing a connection using TCP on a network. And a packet identification unit that distributes a SYN packet transmitted from the user terminal to the server among the packets received by the reception unit to the buffer, and a SYN packet stored in the buffer to the server at predetermined time intervals. The transmission control unit may include: a transmission unit that repeatedly transmits; and a buffer management unit that discards the SYN packet stored in the buffer when the packet received by the reception unit satisfies a predetermined condition.
また、本発明の通信制御システムは、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信する受信部と、前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、前記サーバが確立しているコネクションの状態を監視する監視部と、前記監視部によって監視されたコネクションの状態が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を通知する通知部と、前記通知部によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信部と、前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、を備えることを特徴とする。 Further, according to the communication control system of the present invention, a receiving unit for receiving a packet transmitted / received between a user terminal and a server establishing a connection using TCP on a network, and a packet received by the receiving unit, A packet identification unit that distributes a SYN packet transmitted from the user terminal to the server to a buffer, a monitoring unit that monitors the state of a connection established by the server, and a connection state monitored by the monitoring unit are predetermined And a notification unit for notifying information indicating whether or not the SYN packet can be accepted, and a SYN packet stored in the buffer based on the information notified by the notification unit. And a transmitter configured to control transmission to the server, and a packet received by the receiver satisfying a predetermined condition. And discarding the SYN packet buffer manager stored in the serial buffer, characterized in that it comprises a.
また、本発明の通信制御方法は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間の通信を制御する通信制御方法であって、前記ユーザ端末と前記サーバとの間で送受信されるパケットを受信する受信工程と、前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、前記バッファに格納されるSYNパケットを前記サーバに所定の時間間隔で繰り返し送信する送信工程と、前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、を含んだことを特徴とする。 Further, a communication control method according to the present invention is a communication control method for controlling communication between a user terminal and a server establishing a connection using TCP on a network, which is performed between the user terminal and the server A receiving step of receiving a packet to be transmitted / received, a packet identifying step of distributing a SYN packet transmitted from the user terminal to the server among the packets received by the receiving step to a buffer, an SYN packet stored in the buffer And the buffer management step of discarding the SYN packet stored in the buffer when the packet received by the reception step satisfies a predetermined condition. It is characterized by
また、本発明の通信制御方法は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間の通信を制御する通信制御方法であって、前記ユーザ端末と前記サーバとの間で送受信されるパケットを受信する受信工程と、前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、前記サーバが確立しているコネクションの状態を監視する監視工程と、前記監視工程によって監視されたコネクションの状態が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を前記バッファに通知する通知工程と、前記通知工程によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信工程と、前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、を含んだことを特徴とする。 Further, a communication control method according to the present invention is a communication control method for controlling communication between a user terminal and a server establishing a connection using TCP on a network, which is performed between the user terminal and the server A receiving step of receiving a packet to be transmitted / received, a packet identifying step of distributing a SYN packet transmitted from the user terminal to the server among the packets received by the receiving step to a buffer, a connection established by the server A monitoring step of monitoring the state of the packet, and a notification of notifying the buffer of information indicating whether or not the acceptance of the SYN packet is possible when the state of the connection monitored by the monitoring step satisfies a predetermined condition Of the SYN packet stored in the buffer based on the process and the information notified by the notification process. A transmitting step of controlling transmission to the server, and a buffer managing step of discarding the SYN packet stored in the buffer when the packet received by the receiving step satisfies a predetermined condition. I assume.
本発明によれば、コネクション解放レートを用いることなく、APLサーバの使用率が低下したり、コネクション確率までに時間が掛かったりすることができるという効果を奏する。 According to the present invention, it is possible to reduce the usage rate of the APL server and to take time to the connection probability without using the connection release rate.
以下に、本願に係る通信制御システムおよび通信制御方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本願に係る通信制御システムおよび通信制御方法が限定されるものではない。 Hereinafter, embodiments of a communication control system and a communication control method according to the present application will be described in detail based on the drawings. Note that the communication control system and the communication control method according to the present application are not limited by the embodiment.
(既存の手法によるSYNパケット送信処理の一例)
まず、図14を参照し、実施形態に係る通信制御システム及び通信制御方法の前提として、従来のTCPを用いたコネクションの確立処理について説明する。図14は、ユーザ端末からAPLサーバにSYNパケットが送信される場合の処理の例を説明するための図である。
(An example of SYN packet transmission processing by the existing method)
First, connection establishment processing using conventional TCP will be described as a premise of the communication control system and communication control method according to the embodiment with reference to FIG. FIG. 14 is a diagram for explaining an example of processing when a SYN packet is transmitted from the user terminal to the APL server.
図14の例では、ネットワークAを介してユーザ端末1〜4が、APLサーバ5と接続される。また、ユーザ端末1〜4とAPLサーバ5との間には、転送装置6、バッファ7および送信レート制御装置8が接続されている。
In the example of FIG. 14,
ユーザ端末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)と表示する。
In starting communication with the APL server 5 via the network A, each of the
送信されるSYNパケットには各々、シーケンス番号が付与される。たとえば、ユーザ端末1が送信するSYNパケットにはシーケンス番号「1」が付与される。シーケンス番号「1」のSYNパケットに応答してAPLサーバ5が送信する確認応答であるACKパケットのシーケンス番号も「1」となる。
Each transmitted SYN packet is assigned a sequence number. For example, a sequence number "1" is assigned to the SYN packet transmitted by the
転送装置6は、ユーザ端末1〜4が送信するパケットを受信し、SYNパケットを抽出してバッファ7に格納する。転送装置6は、SYNパケット以外のパケットたとえばAPL層パケットやACKパケットはバッファ7に格納せずにそのままAPLサーバ5に送信する。
The transfer device 6 receives the packets transmitted by the
バッファ7は、FIFO(First In First Out)メモリである。バッファ7に格納されたSYNパケットは、送信レート制御装置8によって所定の送信レートでバッファ7からAPLサーバ5に送信される。
The buffer 7 is a FIFO (First In First Out) memory. The SYN packet stored in the buffer 7 is transmitted from the buffer 7 to the APL server 5 at a predetermined transmission rate by the transmission
ユーザ端末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に振り分ける。
After transmitting the SYN packet, if the
APLサーバ5は、SYNパケットを受信すると、確立済みのコネクション数が予め定めた上限に達していない場合、APL層パケット処理用のリソースを確保して、ACKパケットを送信する。APLサーバ5は、確立済みのコネクション数が予め定めた上限に達している場合、SYNパケットを破棄し、ACKパケットは送信しない。 When the APL server 5 receives the SYN packet, if the number of established connections does not reach a predetermined upper limit, the APL server 5 secures a resource for APL layer packet processing and transmits an ACK packet. When the number of established connections has reached a predetermined upper limit, the APL server 5 discards the SYN packet and does not transmit an ACK packet.
(第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とを接続するネットワーク上に配置されればよく、具体的な構成や各装置の数は特に限定されない。
First Embodiment
FIG. 1 is a diagram showing an example of the configuration of the communication control system according to the first embodiment. In the communication control system 1A according to the first embodiment, the
ユーザ端末20A,20B,20C,20Dはネットワーク40,60を介してサーバ50との間で情報の送受信を行う。ユーザ端末20A,20B,20C,20Dはたとえば、IoT(Internet of Things)端末またはM2M(Machine to Machine)端末等である。
The
AP30は、ユーザ端末20B,20C,20Dからの接続要求を受け付け、ネットワーク40への通信を仲介する機器である。なお、AP30は、IoTゲートウェイやM2Mゲートウェイ等のゲートウェイであってもよい。
The
ネットワーク40,60はたとえば、インターネット、イントラネット、ローカルエリアネットワーク(LAN(Local Area Network))、ワイドエリアネットワーク(WAN(Wide Area Network))等である。また、ネットワーク40,60は無線ネットワークであっても有線ネットワークであっても両者の組み合わせであってもよい。
The
サーバ50は、ユーザ端末20A,20B,20C,20Dとの間でコネクションを確立し、情報の送受信を行う。サーバ50はたとえばAPLサーバである。
The
(通信制御装置の構成の一例)
図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間の単位時間当たりのコネクション数の減少を抑制するよう通信を制御する。
(Example of configuration of communication control device)
FIG. 2 is a diagram showing an example of the configuration of the communication control apparatus according to the first embodiment. The
図2に示すように通信制御装置10は、通信部110と、制御部120と、記憶部130と、を備える。通信部110は、ネットワーク40,60を介して送信される情報を送受信する。
As shown in FIG. 2, the
制御部120は、通信制御装置10の各部の処理を制御する。制御部120はたとえば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)や、ASIC(Application Specific Integrated Circuit)等で構成することができる。制御部120は、受信部121、パケット識別部122と、送信部123、およびバッファ管理部124を有する。
The control unit 120 controls processing of each unit of the
受信部121は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末20とサーバ50との間で送受信されるパケットを、通信部110を介して受信する。
The receiving unit 121 receives, via the
パケット識別部122は、受信部121が受信するパケットのうち、ユーザ端末20からサーバ50へ送信されるSYNパケットをバッファ131に振り分ける。具体的には、パケット識別部122は、通信部110を介して受信部121が受信するパケットのうち、ユーザ端末20A,20B,20C,20Dからサーバ50宛に送信されるSYNパケットを識別する。
The
そして、パケット識別部122は、識別したSYNパケットを後述するバッファ131に格納する。また、パケット識別部122は、SYNパケット以外のパケットを、通信部110を介して宛先に送信する。パケット識別部122は、送信元IPアドレス、送信先IPアドレス等からユーザ端末20A〜20Dおよびサーバ50を識別する。また、パケット識別部122は、パケットのTCPヘッダのSYNフラグに基づきSYNパケットを識別する。
Then, the
送信部123は、バッファ131に格納されるSYNパケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信する。具体的には、送信部123は、バッファの先頭パケットをサーバ50に所定の時間間隔で繰り返し送信する。また、送信部123は、予め設定されたウィンドウサイズ分のSYNパケットをサーバ50に所定の時間間隔で繰り返し送信するようにしてもよい。
The transmission unit 123 repeatedly transmits the SYN packet stored in the buffer 131 to the
バッファ管理部124は、パケット識別部122が識別したSYNパケットを受信した順番にバッファ131に格納する。また、バッファ管理部124は、受信部121が受信したパケットが所定の条件を満たす場合に、バッファ131に格納されるSYNパケットを破棄する。例えば、送信部123は、サーバ50からユーザ端末20に送信されるSYN/ACK(Acknowledgement)パケットのシーケンス番号が、バッファ131に格納されるSYNパケットのシーケンス番号と同一である場合、バッファ131に格納されるSYNパケットを破棄する。
The
記憶部130は、通信制御装置10における各部の処理に使用する情報や処理の結果生成される情報を記憶する。記憶部130はたとえば、ハードディスク、光ディスク等の記憶装置でもよい。また、記憶部130は、RAM(Random Access Memory)やフラッシュメモリ等の半導体メモリであってもよい。記憶部130はバッファ131を有する。
The
バッファ131は、パケット識別部122が識別したSYNパケットを格納する。たとえばバッファ131は、FIFO(First In First Out)メモリである。バッファ131は、パケット識別部122が識別したSYNパケットを受信した順番に格納する。格納されたSYNパケットは、先に格納されたパケットから順に所定の送信レートで通信部110を介してサーバ50に送信される。
The buffer 131 stores the SYN packet identified by the
(第1の実施形態の通信制御処理の流れの一例)
図3は、第1の実施形態に係る通信制御システムにおける処理の流れの一例を示すシーケンス図である。図3に示すように、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS101〜S104)。バッファ管理部124は、パケット識別部122が識別したSYN#1パケットおよびSYN#2パケットを受け取ると、バッファ131に格納する。
(An example of a flow of communication control processing according to the first embodiment)
FIG. 3 is a sequence diagram showing an example of the flow of processing in the communication control system according to the first embodiment. As shown in FIG. 3, the
そして、送信部123(図示せず)は、バッファ131に格納されるSYN#1パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信する(ステップS105)。図3の例に示すように、サーバ50側においてコネクション数が上限に到達しており、コネクションに空きがない場合には、SYN#1パケットは破棄されるが、コネクションが解放されてコネクションに空きがある場合には、サーバ50は、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS106)。
Then, the transmission unit 123 (not shown) repeatedly transmits the
パケット識別部122は、SYN/ACKパケット#1を受信すると、SYN/ACKパケット#1をコピーして、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS107)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50宛てに送信して(ステップS108)、コネクションを確立する処理を行う(図示省略)。
Upon receiving the SYN /
また、送信部123が、SYN#1パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信し続けている(ステップS109)。サーバ50は、SYN#1パケットを受け付けると、応答済みSYNパケットとシーケンス番号が重複するため、SYN#1パケットを破棄する。また、パケット識別部122は、SYN/ACKパケット#1をバッファ管理部124に送信する(ステップS110)。
Also, the transmitting unit 123 continues to repeatedly transmit the
パケット管理部124は、SYN/ACKパケット#1とシーケンス番号が一致するSYN#1パケットをバッファから削除する。その後、送信部123は、SYN#1パケットがバッファから削除されたことにより、バッファの先頭パケットであるSYN#2パケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信する(ステップS111)。
The
また、通信制御装置10は、図4に例示するように、予め設定されたウィンドウサイズ分のSYNパケットをサーバ50に所定の時間間隔で繰り返し送信するようにしてもよい。図4に示すように、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS201〜S204)。
In addition, as illustrated in FIG. 4, the
そして、送信部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)。
Then, the transmitting unit 123 (not shown) transmits the SYN packet for the window size from the buffer 131 to the
パケット識別部122は、SYN/ACKパケット#1およびSYN/ACKパケット#2を受信すると、SYN/ACKパケット#1およびSYN/ACKパケット#2をコピーして、ユーザ端末#1にSYN/ACKパケット#1を転送し(ステップS210)、ユーザ端末#2にSYN/ACKパケット#2を転送する(ステップS211)。
When the
その後、ユーザ端末#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パケットを破棄する。
Thereafter, the
そして、バッファ管理部124が、SYN/ACKパケット#1およびSYN/ACKパケット#2をパケット識別部122から受信すると(ステップS216、S217)、SYN/ACKパケット#1およびSYN/ACKパケット#2とシーケンス番号が一致するSYN#1パケットおよびをSYN#2パケットをバッファ131から削除する。
When
このように、ウィンドウサイズを設け、ウィンドウサイズ分のSYNパケットを繰り返し送ることで、ACKを待たずに異なる複数のユーザ端末からのSYNパケットを送信できるため、コネクションに複数の空きがある場合にサーバ50の利用効率を向上できる。 In this way, by providing the window size and repeatedly sending the SYN packet for the window size, it is possible to send SYN packets from different user terminals without waiting for an ACK, so when there are multiple vacant connections, the server The utilization efficiency of 50 can be improved.
(第1の実施形態の効果)
第1の実施形態に係る通信制御システムの通信制御装置10は、ネットワーク上でTCPを用いてコネクションを確立するユーザ端末とサーバとの間で送受信されるパケットを受信し、受信するパケットのうち、ユーザ端末20からサーバへ送信されるSYNパケットをバッファ131に振り分ける。そして、通信制御装置10は、バッファ131に格納されるSYNパケットをサーバ50に所定の時間間隔で繰り返し送信する。また、通信制御装置10は、受信したパケットが所定の条件を満たす場合に、バッファ131に格納されるSYNパケットを破棄する。このため、通信制御システムでは、コネクション解放レートを用いることなく、APLサーバの使用率が低下したり、コネクション確率までに時間が掛かったりすることができる。
(Effects of the first embodiment)
The
つまり、第1の実施形態に係る通信制御システムの通信制御装置10は、バッファ131のSYNパケットを繰り返し送信する。これにより、コネクション解放後、新たなコネクションをすばやく確立させ、サーバの利用効率を向上できる。
That is, the
(第2の実施形態)
第1の実施形態においては、通信制御装置10は、バッファ131に格納されるSYNパケットを、通信部110を介してサーバ50に所定の時間間隔で繰り返し送信するものとした。第2の実施形態の通信制御システムは、サーバ50A側でコネクションの空き状況を監視し、コネクションが空き状況を通信制御装置10Aに通知する。以下では、第2の実施形態の通信制御システムについて説明するが、第1の実施形態と同様の構成および処理については説明を省略する。
Second Embodiment
In the first embodiment, the
図5は、第2の実施形態に係る通信制御装置の構成の一例を示す図である。制御部120の送信部123Aは、サーバ50Aによって通知された情報に基づいて、バッファ131に格納されるSYNパケットのサーバ50Aへの送信を制御する。具体的には、送信部123Aは、サーバ50Aから通知された空きがあるコネクション数が1以上である場合には、バッファ131に格納されるSYNパケットをサーバ50Aへ送信する。 FIG. 5 is a diagram showing an example of the configuration of the communication control apparatus according to the second embodiment. The transmitting unit 123A of the control unit 120 controls transmission of the SYN packet stored in the buffer 131 to the server 50A based on the information notified by the server 50A. Specifically, when the number of connections with vacancy notified from the server 50A is one or more, the transmitting unit 123A transmits the SYN packet stored in the buffer 131 to the server 50A.
図6は、第2の実施形態に係るサーバの構成の一例を示す図である。図6に示すように、サーバ50Aは、通信部510と、制御部520と、記憶部530と、を備える。通信部510は、ネットワーク60を介して送信される情報を送受信する。
FIG. 6 is a diagram showing an example of the configuration of the server according to the second embodiment. As shown in FIG. 6, the server 50A includes a
制御部520は、サーバ50Aの各部の処理を制御する。制御部520はたとえば、CPU、MPUや、ASIC等で構成することができる。制御部520は、監視部521Aおよび通知部522Aを有する。
The
監視部521Aは、サーバ50Aが確立しているコネクションの状態を監視する。具体的には、監視部521Aは、一定時間経過するごとに、または、コネクション解放を契機に、サーバ50Aのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する。なお、以下では、一定時間経過するごとに、サーバ50Aのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する場合を例に説明する。
The
通知部522Aは、監視部521Aによって監視されたコネクションの状態が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を通知する。具体的には、通知部522Aは、監視部521Aによって特定された空きがあるコネクション数を通知する。
When the state of the connection monitored by the
記憶部530は、サーバ50Aにおける各部の処理に使用する情報や処理の結果生成される情報を記憶する。記憶部530はたとえば、ハードディスク、光ディスク等の記憶装置でもよい。また、記憶部530は、RAMやフラッシュメモリ等の半導体メモリであってもよい。
The
(第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に格納する。
(An example of a flow of communication control processing according to the second embodiment)
FIG. 7 is a sequence diagram showing an example of the flow of processing in the communication control system according to the second embodiment. As shown in FIG. 7, since the number of connections has reached the upper limit, the server 50A notifies the
その後、サーバ50Aは、コネクションが解放され、空きが1であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS308)。通信制御装置10Aが空きが1であることを受け付けると、送信部123A(図示せず)が、SYN#1パケットを、通信部110を介してサーバ50Aに送信し(ステップS309)、バッファ管理部124が、SYN#1パケットをバッファ131から削除する。
Thereafter, the server 50A notifies the
そして、サーバ50Aは、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS310)。パケット識別部122は、SYN/ACKパケット#1を受信すると、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS311)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50A宛てに送信して(ステップS312)、コネクションを確立する処理を行う(図示省略)。
Then, the server 50A transmits the SYN /
その後、サーバ50Aは、コネクションが一つ解放されると、空きが1であることを通信制御装置10Aのバッファ管理部124に通知し(ステップS313)、さらにもう一つコネクションが解放されると、空きが2であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS314)。
Thereafter, when one connection is released, the server 50A notifies the
通信制御装置10Aが空きが2であることを受け付けると、送信部123Aが、SYN#2パケットを、通信部110を介してサーバ50Aに送信し(ステップS315)、バッファ管理部124が、SYN#2パケットをバッファ131から削除し、続いて、SYN#3パケットを、サーバ50Aに送信し(ステップS316)、バッファ管理部124が、SYN#3パケットをバッファ131から削除する。
When the communication control apparatus 10A receives that the vacancy is 2, the transmission unit 123A transmits the
その後、同様に、サーバ50Aは、SYN/ACKパケット#2およびSYN/ACKパケット#3をパケット識別部122に送信し(ステップS317、S318)、コネクションを確立する処理を行う(図示省略)。
Thereafter, similarly, the server 50A transmits the SYN /
図7の例では、通信制御装置10AがSYNパケットを送信後すぐにバッファ131から削除するため、APLにSYNパケットをサーバ50Aに送信したにもかかわらずパケットロスが発生した場合には再送できなくなる。このため、パケットロスが発生すると、ユーザ端末がコネクションを確立できる機会が次回のパケット再送以降となり、ユーザ端末のコネクション確立までの所要時間が増加する場合がある。このため、図8に示すように、SYN/ACKパケットをもとにコネクションを監視し、コネクションを確立できるとSYNパケットをバッファから削除するようにしてもよい。 In the example of FIG. 7, since the communication control apparatus 10A deletes the SYN packet from the buffer 131 immediately after transmitting it, it can not be retransmitted if a packet loss occurs despite transmitting the SYN packet to the APL to the server 50A. . For this reason, when a packet loss occurs, an opportunity for the user terminal to establish a connection may be after the next packet retransmission and the time required for establishing the connection of the user terminal may increase. Therefore, as shown in FIG. 8, the connection may be monitored based on the SYN / ACK packet, and if the connection can be established, the SYN packet may be deleted from the buffer.
図8に例示するように、サーバ50Aは、コネクション数が上限に到達しているため、空きが0であることをバッファ管理部124に通知する(ステップS401)。また、ユーザ端末#1がSYN#1パケットをパケット識別部122を介してバッファ管理部124に通知し、ユーザ端末#2がSYN#2パケットをパケット識別部122を介してバッファ管理部124に通知する(ステップS402〜S405)。バッファ管理部124は、パケット識別部122が識別したSYN#1パケットおよびSYN#2パケットを受け取ると、バッファ131に格納する。
As illustrated in FIG. 8, since the number of connections has reached the upper limit, the server 50A notifies the
その後、サーバ50Aは、コネクションが解放され、空きが1であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS406)。通信制御装置10Aが空きが1であることを受け付けると、送信部123が、SYN#1パケットを、通信部110を介してサーバ50Aに送信する(ステップS407)。ここで、図8の例では、SYN#1パケットがパケットロスしたものとする。
Thereafter, the server 50A notifies the
このため、サーバ50Aは、再度、空きが1であることを通信制御装置10Aのバッファ管理部124に通知する(ステップS408)。通信制御装置10Aが空きが1であることを受け付けると、送信部123が、再びSYN#1パケットを、通信部110を介してサーバ50Aに送信する(ステップS409)。
Therefore, the server 50A again notifies the
そして、サーバ50Aは、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS410)。パケット識別部122は、SYN/ACKパケット#1を受信すると、SYN/ACKパケット#1をコピーして、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS411)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50A宛てに送信して(ステップS412)、コネクションを確立する処理を行う(図示省略)。
Then, the server 50A transmits the SYN /
また、パケット識別部122は、SYN/ACKパケット#1をバッファ管理部124に送信する(ステップS413)。パケット管理部124は、SYN/ACKパケット#1とシーケンス番号が一致するSYN#1パケットをバッファから削除する。
Also, the
(第2の実施形態の効果)
第2の実施形態に係る通信制御システムでは、サーバ50Aが、サーバのコネクションの空き状況を監視し、該空きがあるコネクション数を特定し、特定された空きがあるコネクション数を通信制御装置10Aに通知し、通知された空きがあるコネクション数が1以上である場合には、バッファ131に格納されるSYNパケットのサーバ50Aへ送信する。このため、コネクションに空きがない間のSYNパケット送信を防ぎつつ、新たなコネクションをすばやく確立できるため、サーバの利用効率を向上できる。
(Effect of the second embodiment)
In the communication control system according to the second embodiment, the server 50A monitors the availability of connection of the server, identifies the number of connections with the availability, and specifies the number of connections with the identified availability to the communication control device 10A. When the number of connections with notification and the number of vacant connections notified is one or more, the SYN packet stored in the buffer 131 is transmitted to the server 50A. As a result, new connections can be established quickly while preventing SYN packet transmission while there are no connections available, and server utilization efficiency can be improved.
(第3の実施形態)
第2の実施形態においては、サーバ50A側でコネクションの空き状況を監視し、コネクションが空き状況を通信制御装置10Aに通知するものとした。第3の実施形態の通信制御システでムは、サーバ50B側でサーバ50Bが確立したコネクション数を監視し、コネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることがないことを示すバックオフ通知を行う。以下では、第3の実施形態の通信制御システムについて説明するが、第1の実施形態、第2の実施形態と同様の構成および処理については説明を省略する。
Third Embodiment
In the second embodiment, the server 50A monitors the availability of the connection, and the connection notifies the communication control apparatus 10A of the availability. In the communication control system of the third embodiment, the
図9は、第3の実施形態に係る通信制御装置の構成の一例を示す図である。制御部120の送信部123Bは、通知部からSYNパケットを受け付けることがないことを示す通知を受信すると、サーバ50Bから送信されたバックオフ通知に設定されたタイマ値の時間を経過した後に、バッファ131に格納されるSYNパケットをサーバ50Bへ送信する。
FIG. 9 is a diagram showing an example of the configuration of the communication control apparatus according to the third embodiment. When the transmission unit 123B of the control unit 120 receives the notification indicating that the SYN packet is not received from the notification unit, the transmission unit 123B transmits the buffer after the time of the timer value set in the backoff notification transmitted from the
図10は、第3の実施形態に係るサーバの構成の一例を示す図である。サーバ50Bの監視部521Bは、サーバ50Bが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定する。
FIG. 10 is a diagram showing an example of the configuration of a server according to the third embodiment. The
通知部522Bは、監視部521Bによってコネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることがないことを示す通知であって、タイマ値が設定されたバックオフ通知を通知する。
The
(第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に格納する。
(An example of a flow of communication control processing according to the third embodiment)
FIG. 11 is a sequence diagram showing an example of the flow of processing in the communication control system according to the third embodiment. As shown in FIG. 11, the
その後、送信部123B(図示せず)が、SYN#1パケットを、通信部110を介してサーバ50Bに送信し(ステップS507)、バッファ管理部124が、SYN#1パケットをバッファ131から削除する。
Thereafter, the transmitting unit 123B (not shown) transmits the
その後、サーバ50Bは、コネクションが上限に到達し、タイマ値として1ミリ秒が設定されたバックオフ通知を通信制御装置10Bに通知するとともに(ステップS508)、SYN/ACKパケット#1をパケット識別部122に送信する(ステップS509)。パケット識別部122は、SYN/ACKパケット#1を受信すると、ユーザ端末#1にSYN/ACKパケット#1を転送する(ステップS510)。その後、ユーザ端末#1は、ACK#1パケットをサーバ50B宛てに送信して(ステップ511)、コネクションを確立する処理を行う(図示省略)。
After that, the
その後、通信制御装置10Bがバックオフ通知に設定されたタイマ値の時間(図11の例では、1ミリ秒)を経過した後、送信部123Bが、SYN#2パケットを、通信部110を介してサーバ50Bに送信し(ステップS512)、バッファ管理部124が、SYN#2パケットをバッファ131から削除し、続いて、SYN#3パケットを、サーバ50Bに送信し(ステップS513)、バッファ管理部124が、SYN#3パケットをバッファ131から削除する。
After that, after the time of the timer value set in the backoff notification (1 millisecond in the example of FIG. 11) of the
その後、同様に、サーバ50Bは、SYN/ACKパケット#2およびSYN/ACKパケット#3をパケット識別部122に送信し(ステップS514、S515)、コネクションを確立する処理を行う(図示省略)。
Thereafter, similarly, the
図11の例では、通信制御装置10BがSYNパケットを送信後すぐにバッファ131から削除するため、サーバ50Bのコネクションが上限に到達した後であってバックオフ通知前に送信したSYNパケットは、サーバ50B側で破棄されてしまう。このためユーザ端末のコネクション確立までの所要時間が増加する場合がある。そこで、図12に示すように、SYN/ACKパケットをもとにコネクションを監視し、コネクションを確立できるとSYNパケットをバッファから削除するようにしてもよい。バッファ管理部124は、バックオフ通知を受けた後、バックオフタイマ値時間経過すると、バッファの先頭パケットのから送信を再開する。
In the example of FIG. 11, since the
図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に格納する。
As illustrated in FIG. 12, the
その後、送信部123が、SYN#1パケットおよびSYN#2パケットを、通信部110を介してサーバ50Bに送信し(ステップS607、S608)、バッファ管理部124が、SYN#1パケットをバッファ131から削除する。
Thereafter, the transmitting unit 123 transmits the
その後、サーバ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)、コネクションを確立する処理を行う(図示省略)。
Thereafter, the
また、パケット識別部122は、SYN/ACKパケット#1をバッファ管理部124に送信する(ステップS613)。パケット管理部124は、SYN/ACKパケット#1とシーケンス番号が一致するSYN#1パケットをバッファから削除する。
Also, the
その後、通信制御装置10Bがバックオフ通知に設定されたタイマ値の時間(図12の例では、1ミリ秒)を経過した後、送信部123が、SYN#1パケットおよびSYN#2パケットを、通信部110を介してサーバ50Bに送信する(ステップS614、S615)。その後、同様に、サーバ50Bは、SYN/ACKパケット#2およびSYN/ACKパケット#3をパケット識別部122に送信し(ステップS616、S617)、コネクションを確立する処理を行う(図示省略)。
Thereafter, after the time of the timer value set in the backoff notification (1 millisecond in the example of FIG. 12) has elapsed, the transmission unit 123 transmits the
(第3の実施形態の効果)
第3の実施形態に係る通信制御システムでは、サーバ50Bが、サーバが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定し、コネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることができないことを示す通知であって、タイマ値が設定されたバックオフ通知を通知する。そして、通信制御装置10Bは、SYNパケットを受け付けることがないことを示すバックオフ通知を受信すると、該通知に設定されたタイマ値の時間を経過した後に、バッファ131に格納されるSYNパケットをサーバ50Bへ送信する。このため、第3の実施形態に係る通信制御システムでは、サーバ30Bが、コネクション数が上限に到達したことを契機にバックオフ通知し、通信制御装置10Bが、バックオフ通知に含まれるバックオフタイマ値だけ待機する。これにより、通信制御装置10Bはサーバ50Bからの通知を待たずにパケットを送信できるため、効率低下を抑制できる。
(Effect of the third embodiment)
In the communication control system according to the third embodiment, the
(変形例)
上記実施形態においては、通信制御システムが備える通信制御装置内に、パケット識別部とバッファ管理部とを設けるものとした。しかし、これに限定されず、パケット識別部とバッファ管理部とをそれぞれ独立の装置としてネットワーク上に配置してもよい。また、パケット識別部とバッファ管理部とをサーバに組み入れてもよい。受信部、送信部も同様に、独立の装置としてもよく、また、パケット識別部およびバッファ管理部とともにサーバに組み入れてもよい。すなわち、通信制御システムにおいて、TCPを用いてコネクションを確立する情報処理装置とサーバとの通信経路上に通信制御装置が備える各機能部が配置されればよい。
(Modification)
In the above embodiment, the packet identification unit and the buffer management unit are provided in the communication control device provided in the communication control system. However, the present invention is not limited to this, and the packet identification unit and the buffer management unit may be disposed on the network as independent devices. Also, the packet identification unit and the buffer management unit may be incorporated into the server. Similarly, the reception unit and the transmission unit may be independent devices, or may be incorporated in the server together with the packet identification unit and the buffer management unit. That is, in the communication control system, each functional unit provided in the communication control apparatus may be disposed on the communication path between the server and the information processing apparatus establishing a connection using TCP.
たとえば、図13は、各実施形態に係る通信制御装置の機能を複数の装置上に実装する例を説明するための図である。図13に示す通信制御システム1Bは、図1に示す通信制御システム1Aと、通信制御装置が備える機能部の配置が相違する。他の点では、図13に示す通信制御システム1Bは、図1に示す通信制御システム1Aと同様である。
For example, FIG. 13 is a diagram for explaining an example in which the function of the communication control device according to each embodiment is mounted on a plurality of devices.
第1〜第3の実施形態においては、受信部、パケット識別部、送信部、バッファ管理部をそれぞれ一つの通信制御装置内に配置するものとして説明した。しかし、これに限らず、図13のように各機能部を別の装置上に配置することもできる。 In the first to third embodiments, it has been described that the receiving unit, the packet identifying unit, the transmitting unit, and the buffer managing unit are disposed in one communication control device. However, the present invention is not limited to this, and each functional unit can be arranged on another device as shown in FIG.
図13の例では、パケット識別装置11がネットワーク40、60を介してユーザ端末20A〜20Dとサーバ50との間に接続される。そして、パケット識別装置11は、バッファ12を備えるパケットバッファ装置13と接続される。
In the example of FIG. 13, the
パケット識別装置11は、第1〜第3の実施形態に係る受信部121、パケット識別部122、送信部123、123A、123Bの機能を実行することができる装置である。パケット識別装置11はたとえばルータ等で構成することができる。パケット識別装置11は、SYNパケットを識別してパケットバッファ装置13に送信する。また、パケット識別装置11は、ACKパケットを識別してミラーリングし、ミラーリングしたACKパケットをパケットバッファ装置13に送信する。
The
バッファ12は、パケット識別装置11から転送されるSYNパケットを受信した順に格納する。そして、バッファ12は、先に受信したSYNパケットから先に所定の送信レートで順次送信する。
The buffer 12 stores the SYN packets transferred from the
パケットバッファ装置13は、第1〜第3の実施形態に係るバッファ管理部124の機能を実行することができる装置である。パケットバッファ装置13はたとえば、サーバ50に組み入れることもできるし、サーバと独立の装置としてもよい。
The
このように、通信制御装置10〜10Bの各機能は異なる装置上に実装して実現することができる。また、APLサーバ等、既存の装置に通信制御装置10〜10Bの機能の一部を実装してもよい。また、図13の例では、パケットバッファ装置13がバッファ12を備えるものとしたが、バッファ12をパケットバッファ装置13とは別の装置上に設けてパケットバッファ装置13と接続する構成とすることもできる。
Thus, each function of the
(プログラム)
また、上記実施形態において説明した通信制御システムが実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、実施形態に係る通信制御装置が実行する処理をコンピュータが実行可能な言語で記述した通信制御プログラムを作成することもできる。この場合、コンピュータが通信制御プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかる通信制御プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録された通信制御プログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
(program)
In addition, it is also possible to create a program in which the processing executed by the communication control system described in the above embodiment is described in a computer executable language. For example, it is also possible to create a communication control program in which the processing executed by the communication control device according to the embodiment is described in a language that can be executed by a computer. In this case, when the computer executes the communication control program, the same effect as that of the above embodiment can be obtained. Furthermore, even if the communication control program is recorded in a computer readable recording medium, and the communication control program recorded in the recording medium is read and executed by the computer, the same processing as the above embodiment can be realized. Good.
図15は、通信制御プログラムを実行するコンピュータ1000を示す図である。図15に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
FIG. 15 is a diagram showing a
メモリ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に接続される。
The
ここで、図15に例示するように、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の通信制御プログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ1031に記憶される。
Here, as illustrated in FIG. 15, the hard disk drive 1031 stores, for example, an
また、上記実施形態で説明した各種データは、プログラムデータとして、例えばメモリ1010やハードディスクドライブ1031に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、各種処理手順を実行する。
In addition, various data described in the above embodiment are stored as program data in, for example, the
なお、通信制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、通信制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN、WAN等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
The
なお、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。 Of the processes described in the present embodiment, all or part of the process described as being automatically performed may be manually performed, or the process described as being performed manually. All or part of them can be automatically performed by a known method. In addition to the above, the processing procedures, control procedures, specific names, and information including various data and parameters shown in the above documents and drawings can be arbitrarily changed unless otherwise specified.
上記の実施形態やその変形は、本願が開示する技術に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。 The above embodiments and the modifications thereof are included in the invention described in the claims and the equivalents thereof as well as included in the technology disclosed in the present application.
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 通知部
10, 10A, 10B
40, 60
Claims (7)
前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、
前記サーバが確立しているコネクションの空き状況、または、前記サーバが確立したコネクション数を監視する監視部と、
前記監視部によって監視されたコネクションの空き状況、または、前記コネクション数が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を通知する通知部と、
前記通知部によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信部と、
前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、
を備えることを特徴とする通信制御システム。 A receiver configured to receive a packet transmitted and received between a user terminal and a server establishing a connection using TCP on a network;
Among the packets received by the reception unit, a packet identification unit that distributes, to a buffer, an SYN packet transmitted from the user terminal to the server;
A monitoring unit that monitors the open status of the connection established by the server or the number of connections established by the server ;
A notification unit that notifies of information indicating whether or not a SYN packet can be accepted if the connection availability monitored by the monitoring unit or the number of connections satisfies a predetermined condition;
A transmitting unit configured to control transmission of a SYN packet stored in the buffer to the server based on the information notified by the notifying unit;
A buffer management unit that discards the SYN packet stored in the buffer when the packet received by the reception unit satisfies a predetermined condition;
A communication control system comprising:
前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、
前記サーバのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する監視部と、
前記監視部によって特定された空きがあるコネクション数を通知する通知部と、
前記通知部から通知された空きがあるコネクション数が1以上である場合には、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信部と、
前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、
を備えることを特徴とする通信制御システム。 A receiver configured to receive a packet transmitted and received between a user terminal and a server establishing a connection using TCP on a network;
Among the packets received by the reception unit, a packet identification unit that distributes, to a buffer, an SYN packet transmitted from the user terminal to the server;
A monitoring unit that monitors the availability of connections on the server and identifies the number of connections that have the availability ;
A notification unit for notifying of the number of connections having a vacancy identified by the monitoring unit ;
A transmitter configured to transmit a SYN packet stored in the buffer to the server, when the number of connections with vacancy notified from the notification unit is one or more ;
A buffer management unit that discards the SYN packet stored in the buffer when the packet received by the reception unit satisfies a predetermined condition;
Communication control systems that comprising: a.
前記受信部が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別部と、
前記サーバが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定する監視部と、
前記監視部によってコネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることができないことを示す通知であって、タイマ値が設定された通知を通知する通知部と、
前記通知部からSYNパケットを受け付けることがないことを示す通知を受信すると、該通知に設定されたタイマ値の時間を経過した後に、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信部と、
前記受信部が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理部と、
を備えることを特徴とする通信制御システム。 A receiver configured to receive a packet transmitted and received between a user terminal and a server establishing a connection using TCP on a network;
Among the packets received by the reception unit, a packet identification unit that distributes, to a buffer, an SYN packet transmitted from the user terminal to the server;
Monitoring the number of connections the server is established, a monitoring unit for determining whether the number of connections has reached the upper limit,
A notification unit indicating that the SYN packet can not be received if the monitoring unit determines that the number of connections has reached the upper limit, and a notification unit notifies a notification in which a timer value is set ;
A transmitting unit that transmits a SYN packet stored in the buffer to the server after a lapse of time of a timer value set in the notification when a notification indicating that the SYN packet is not received from the notification unit is received. When,
A buffer management unit that discards the SYN packet stored in the buffer when the packet received by the reception unit satisfies a predetermined condition;
A communication control system comprising:
前記ユーザ端末と前記サーバとの間で送受信されるパケットを受信する受信工程と、
前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、
前記サーバが確立しているコネクションの空き状況、または、前記サーバが確立したコネクション数を監視する監視工程と、
前記監視工程によって監視されたコネクションの空き状況、または、前記コネクション数が所定の条件を満たした場合に、SYNパケットの受付が可能であるか否かを示す情報を前記バッファに通知する通知工程と、
前記通知工程によって通知された情報に基づいて、前記バッファに格納されるSYNパケットの前記サーバへの送信を制御する送信工程と、
前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、
を含んだことを特徴とする通信制御方法。 A communication control method for controlling communication between a user terminal and a server establishing a connection using TCP on a network, comprising:
A receiving step of receiving a packet transmitted and received between the user terminal and the server;
A packet identification step of allocating, to a buffer, an SYN packet transmitted from the user terminal to the server among the packets received by the reception step;
Monitoring the availability of connections established by the server or the number of connections established by the server ;
A notification step of notifying the buffer of information indicating whether or not it is possible to accept a SYN packet when the connection idle status monitored by the monitoring step or the number of connections satisfies a predetermined condition; ,
A transmitting step of controlling transmission of a SYN packet stored in the buffer to the server based on the information notified by the notifying step;
A buffer management step of discarding a SYN packet stored in the buffer when the packet received by the reception step satisfies a predetermined condition;
A communication control method characterized by including:
前記ユーザ端末とサーバとの間で送受信されるパケットを受信する受信工程と、 A receiving step of receiving a packet transmitted and received between the user terminal and the server;
前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、 A packet identification step of allocating, to a buffer, an SYN packet transmitted from the user terminal to the server among the packets received by the reception step;
前記サーバのコネクションの空き状況を監視し、該空きがあるコネクション数を特定する監視工程と、 Monitoring the availability of connections on the server, and monitoring the number of connections with the availability;
前記監視工程によって特定された空きがあるコネクション数を通知する通知工程と、 A notification step of notifying the number of connections having a free space identified by the monitoring step;
前記通知工程から通知された空きがあるコネクション数が1以上である場合には、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信工程と、 A transmitting step of transmitting a SYN packet stored in the buffer to the server, when the number of connections with vacancy notified from the notifying step is one or more;
前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、 A buffer management step of discarding a SYN packet stored in the buffer when the packet received by the reception step satisfies a predetermined condition;
を含んだことを特徴とする通信制御方法。 A communication control method characterized by including:
前記ユーザ端末とサーバとの間で送受信されるパケットを受信する受信工程と、 A receiving step of receiving a packet transmitted and received between the user terminal and the server;
前記受信工程が受信するパケットのうち、前記ユーザ端末から前記サーバへ送信されるSYNパケットをバッファに振り分けるパケット識別工程と、 A packet identification step of allocating, to a buffer, an SYN packet transmitted from the user terminal to the server among the packets received by the reception step;
前記サーバが確立したコネクション数を監視し、該コネクション数が上限に到達しているかを判定する監視工程と、 Monitoring the number of connections established by the server to determine whether the number of connections has reached an upper limit;
前記監視工程によってコネクション数が上限に到達していると判定された場合には、SYNパケットを受け付けることができないことを示す通知であって、タイマ値が設定された通知を通知する通知工程と、 A notification process indicating that the SYN packet can not be received when it is determined by the monitoring process that the number of connections has reached the upper limit, and a notification process for notifying a notification in which a timer value is set;
前記通知工程からSYNパケットを受け付けることがないことを示す通知を受信すると、該通知に設定されたタイマ値の時間を経過した後に、前記バッファに格納されるSYNパケットを前記サーバへ送信する送信工程と、 A transmitting step of transmitting the SYN packet stored in the buffer to the server after a lapse of time of a timer value set in the notification when receiving a notification indicating that the SYN packet is not accepted from the notification step; When,
前記受信工程が受信したパケットが所定の条件を満たす場合に、前記バッファに格納されるSYNパケットを破棄するバッファ管理工程と、 A buffer management step of discarding a SYN packet stored in the buffer when the packet received by the reception step satisfies a predetermined condition;
を含んだことを特徴とする通信制御方法。 A communication control method characterized by including:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016027399A JP6506192B2 (en) | 2016-02-16 | 2016-02-16 | Communication control system and communication control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016027399A JP6506192B2 (en) | 2016-02-16 | 2016-02-16 | Communication control system and communication control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2017147576A JP2017147576A (en) | 2017-08-24 |
| JP6506192B2 true JP6506192B2 (en) | 2019-04-24 |
Family
ID=59681655
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016027399A Expired - Fee Related JP6506192B2 (en) | 2016-02-16 | 2016-02-16 | Communication control system and communication control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6506192B2 (en) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4666501B2 (en) * | 2005-12-28 | 2011-04-06 | Kddi株式会社 | Connection establishment request receiving method, apparatus and program, and connection establishment request apparatus |
| US20070299965A1 (en) * | 2006-06-22 | 2007-12-27 | Jason Nieh | Management of client perceived page view response time |
| JP2017034627A (en) * | 2015-08-06 | 2017-02-09 | 日本電信電話株式会社 | Communication control system and communication control method |
-
2016
- 2016-02-16 JP JP2016027399A patent/JP6506192B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2017147576A (en) | 2017-08-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1784867B (en) | Method for distinguishing access priority by using access point and realizing simple 802.11E hybrid coordination function | |
| CN1572093B (en) | Manages incoming data for dormant mobile terminals by delivering or discarding buffered incoming data in a timely manner in response to connections being established | |
| JP4128198B2 (en) | Bandwidth control device | |
| EP2873269B1 (en) | Method and system for handling error indications | |
| JP2005311920A5 (en) | ||
| JP2009544259A (en) | Method and apparatus for policy enforcement in a wireless communication system | |
| US9781626B2 (en) | Wireless channel allocation in a base station processor | |
| JP2006511140A (en) | Real-time data protection in wireless networks | |
| CN106330742B (en) | Flow control method and network controller | |
| CN116886609A (en) | Congestion control method and device, communication network, computer storage medium | |
| KR20110089009A (en) | Method and apparatus for controlling power saving mode of terminal in packet based communication system | |
| JP2004128810A (en) | Terminal device, priority processing method in terminal device, and program | |
| CN114390054A (en) | Core network acceleration method, electronic equipment and computer storage medium | |
| JP6963411B2 (en) | Communication equipment, communication methods, and programs | |
| JP6506192B2 (en) | Communication control system and communication control method | |
| 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 (en) | Communication control system and communication control method | |
| JP6770943B2 (en) | Base station equipment and programs | |
| CN119484423A (en) | A TCP proxy method, base station and device | |
| JP2021129201A (en) | Communication device, communication method, and program | |
| KR20070081810A (en) | Packet congestion control device and method in mobile communication system |
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 |