WO2017022365A1 - Data communication apparatus, data communication method, and program - Google Patents

Data communication apparatus, data communication method, and program Download PDF

Info

Publication number
WO2017022365A1
WO2017022365A1 PCT/JP2016/069107 JP2016069107W WO2017022365A1 WO 2017022365 A1 WO2017022365 A1 WO 2017022365A1 JP 2016069107 W JP2016069107 W JP 2016069107W WO 2017022365 A1 WO2017022365 A1 WO 2017022365A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
data
communication status
communication
transmission buffer
Prior art date
Application number
PCT/JP2016/069107
Other languages
French (fr)
Japanese (ja)
Inventor
悟 天野
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Publication of WO2017022365A1 publication Critical patent/WO2017022365A1/en

Links

Images

Definitions

  • the present invention relates to a data communication apparatus, a data communication method, and a program for performing data communication between networks having different latencies.
  • a proxy server is installed at the edge of a mobile network for the purpose of absorbing such a data speed difference between networks and improving TCP (Transmission Control Protocol) throughput (for example, Patent Document 1). That is, the proxy server is provided with a reception buffer that temporarily stores data transferred via the global network and a transmission buffer that temporarily stores data transferred to the mobile network. By controlling the reception buffer and the transmission buffer, the data speed difference between the global network and the mobile network is absorbed.
  • TCP Transmission Control Protocol
  • the bandwidth of the global network may increase when the proxy server receives a disconnection signal from the client while buffering data from the global network in the transmission buffer. That is, in such a situation, the proxy server receives and buffers data from the content server until a disconnection signal is received from the client. When the proxy server receives a disconnection signal from the client, the data remaining in the transmission buffer of the proxy server at this time becomes useless data that is not transmitted to the client. If the transmission buffer capacity is large, the amount of data that is not transmitted to the client increases, and the bandwidth of the global network between the content server and the proxy server increases accordingly.
  • the transmission buffer capacity of the proxy server is increased, it is conceivable that the connection between the proxy server and the content server is disconnected when congestion occurs on the mobile network side. In other words, even when congestion occurs on the mobile network side and data communication between the proxy server and the client is temporarily interrupted, communication on the global network between the proxy server and the content server is performed. . Therefore, when the transmission buffer capacity of the proxy server is large, it is conceivable that the proxy server acquires content data from the content server to the end while congestion occurs on the mobile network side. When the proxy server acquires the content data from the content server to the end, the proxy server and the content server are in a no-communication state. For this reason, a timeout occurs due to no communication on the content server side, and the connection between the proxy server and the content server is disconnected.
  • the transmission buffer capacity of the proxy server when the transmission buffer capacity of the proxy server is increased, the bandwidth of the global network between the content server and the proxy server increases, or the connection between the proxy server and the content server is disconnected when congestion occurs. The problem arises. In addition, if the transmission buffer of the proxy server is reduced, as described above, sufficient throughput cannot be obtained in a high-speed mobile network environment with low latency.
  • Patent Document 1 discloses that a maximum amount of a transmission buffer is determined based on a congestion window (cwnd), and is received by a content server according to the amount of data that the transmission buffer should hold.
  • a technique for notifying the buffer (RWIN) has been proposed.
  • RWIN notifying the buffer
  • the reception buffer is expanded and contracted, Zero Window (reducing the window size on the reception side) occurs due to the reception buffer becoming small even in an environment where the latency is low in a wireless environment. This causes a problem that the reception rate from the content server is deteriorated.
  • Kernel which is a core part of the OS (Operating System).
  • an object of the present invention is to provide a data communication device, a data communication method, and a program that suppress the bandwidth of a global network without reducing the throughput of data transfer to a client.
  • a client communication status storage unit that stores communication status information for each client, and data to be transmitted to the client are temporarily stored.
  • the data communication apparatus is characterized by controlling a data accumulation amount of the transmission buffer.
  • the bandwidth of the global network can be increased without decreasing the throughput of data transfer to the client. Can be suppressed.
  • 1 is a block diagram showing a configuration of a communication system according to a first embodiment of the present invention. It is a block diagram which shows the structure of the proxy server in the communication system which concerns on the 1st Embodiment. It is explanatory drawing of an example of the local congestion database in the communication system which concerns on the 1st Embodiment. It is a flowchart which shows the process of the communication system which concerns on the 1st Embodiment. It is the schematic which shows the structure of the proxy server in the communication system which concerns on the 1st Embodiment.
  • FIG. 1 is a block diagram showing a configuration of a communication system 1 according to the first embodiment of the present invention.
  • the communication system 1 according to the first embodiment of the present invention includes a client 11, a mobile network 12, a content server 13, a global network 14, and a proxy server 15.
  • the client 11 is a wireless terminal such as a mobile terminal or a tablet terminal.
  • the mobile network 12 is a wireless network that communicates with the client 11.
  • the mobile network 12 includes a base station that performs wireless communication with the client 11 and an inter-base station network.
  • WCDMA registered trademark
  • LTE Long Term Evolution
  • the content server 13 is a server that provides content such as music and moving images.
  • the content server 13 is provided on the global network 14.
  • the global network 14 is a network that performs data communication using a TCP / IP (Transmission Control Protocol / Internet Protocol) protocol, for example, the Internet.
  • TCP / IP Transmission Control Protocol / Internet Protocol
  • the proxy server 15 is a server that accesses the content server 13 instead of the client 11 and downloads the content data from the content server 13 in response to the content data request from the client 11.
  • the proxy server 15 is provided between the mobile network 12 and the global network 14.
  • the content data downloaded by the proxy server 15 from the content server 13 via the global network 14 is sent to the client 11 via the mobile network 12.
  • FIG. 5 is a schematic diagram showing the configuration of the proxy server 15.
  • the data communication device 31 (corresponding to the proxy server 15 in FIG. 2) includes a client communication status storage unit 32 (local congestion database 27 in FIG. 2) that stores information on communication status for each client. And a transmission buffer 33 (corresponding to the transmission buffer 26 in FIG. 2) for temporarily storing data to be transmitted to the client.
  • the client communication status storage unit 32 determines the communication status with the client, and controls the amount of data stored in the transmission buffer 33 according to the communication status.
  • FIG. 2 is a block diagram showing the configuration of the proxy server 15.
  • the proxy server 15 includes NICs (Network Interface Cards) 21 and 22, a TCP module 23, and a proxy process 24.
  • NICs Network Interface Cards
  • the NIC 21 is a physical interface for connecting to the client 11 side via the mobile network 12.
  • the NIC 22 is a physical interface for connecting to the content server 13 via the global network 14.
  • the TCP module 23 is a module that executes control of TCP (Transmission Control Protocol).
  • the TCP module 23 is managed by Kernel which is a core part of an OS (Operating System).
  • the TCP module 23 includes a reception buffer 25 and a transmission buffer 26.
  • the reception buffer 25 temporarily stores the content data sent from the content server 13.
  • the transmission buffer 26 temporarily stores content data to be transmitted to the client 11.
  • the capacity of the transmission buffer 26 can be varied. That is, the data accumulation amount of the transmission buffer 26 is normally set to a capacity Q1 sufficient to obtain a high throughput even with high-speed mobile communication latency.
  • a small capacity Q2 is set so as not to suppress the bandwidth of the global network 14.
  • the proxy process 24 controls application programs.
  • the proxy process 24 has a local congestion database 27 (client communication status storage unit), and is a database that indicates a congestion state for each client 11.
  • the congestion state for each client 11 is determined based on the response time in data communication with the client.
  • a congestion determination method for example, a method disclosed in Japanese Patent Application Laid-Open No. 2014-241552 can be used.
  • FIG. 3 is an example of the local congestion database 27.
  • the local congestion database 27 stores RTT (Round Trip Time) measurement values and congestion flag information for each IP address of the client. The congestion flag is used to determine the communication status of the client 11 when transmitting data to the client 11.
  • RTT Red Trip Time
  • RTT is a response time from when the transmitting side transmits a packet to the receiving side, when the receiving side sends an acknowledge packet to the transmitting side, and when the transmitting side receives this acknowledgement.
  • the RTT measurement time becomes long.
  • the proxy process 24 measures the RTT of each client 11. Then, the proxy process 24 describes the measurement result in the RTT measurement value item of the local congestion database 27. Thereby, as shown in FIG. 3, the measured value of RTT is described for each IP address of each client. Based on the measurement result of this RTT, it can be determined whether it is a local congestion state. That is, the proxy process 24 determines whether or not the RTT measurement time is equal to or greater than a predetermined value from the RTT measurement result. The proxy process 24 then describes “1” as the congestion flag item in FIG. 3 when the RTT measurement time is equal to or greater than a predetermined value. The congestion flag “1” means that local congestion has occurred. The congestion flag “0” means that no local congestion has occurred.
  • the local congestion database 27 is provided in the proxy process 24.
  • the local congestion database 27 can determine whether or not local congestion has occurred in the communication of each client 11.
  • the capacity of the transmission buffer 26 is reduced when it is determined that there is local congestion. Thereby, the bandwidth of the global network 14 can be suppressed without reducing the throughput of data transfer to the client 11.
  • FIG. 4 is a flowchart showing processing of the communication system 1 according to the first embodiment of the present invention.
  • the proxy process 24 establishes a TCP connection with the client 11 (step S1).
  • the proxy process 24 makes an inquiry to the local congestion database 27 based on the IP address of the client 11 and performs local congestion determination (step S2).
  • the proxy process 24 determines whether it is a local congestion state as a result of the inquiry (step S3). If the proxy process 24 is determined to be in the local congestion state (step S3: Yes), the capacity of the transmission buffer 26 is reduced (step S4), and the process ends. If it is not a local congestion state at step S3 (step S3: No), the process is terminated without changing the capacity of the transmission buffer 26.
  • the throughput of the data transfer to the client 11 is reduced by reducing the capacity of the transmission buffer 26. Without this, the bandwidth of the global network 14 can be suppressed.
  • the capacity of the transmission buffer 26 by setting the capacity of the transmission buffer 26 to a sufficiently large value during normal operation, it is possible to improve the data throughput for the client in the environment of a mobile network with low latency.
  • the proxy process 24 is provided with a local congestion database 27.
  • the proxy process 24 determines whether the local congestion database 27 is local congestion and controls the capacity of the transmission buffer 26. Yes. For this reason, the capacity of the transmission buffer 26 can be controlled by the application of the proxy process 24 without modifying the kernel that forms the core part of the OS.
  • a program for realizing all or part of the functions of the proxy server 15 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed. You may perform the process of.
  • the “computer system” includes an OS and hardware such as peripheral devices. Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
  • the “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system.
  • the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line.
  • a volatile memory in a computer system serving as a server or a client in that case and a program that holds a program for a certain period of time are also included.
  • the program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
  • the proxy server 15 in the above-described embodiment may be realized as an integrated circuit such as an LSI (Large Scale Integration). Furthermore, each functional block of the proxy server 15 may be individually made into a processor, or a part or all of them may be integrated into a processor. Further, the method of circuit integration is not limited to LSI, and may be realized with a dedicated circuit or a general-purpose processor. In addition, when an integrated circuit technology that replaces LSI appears due to the advancement of semiconductor technology, an integrated circuit based on the technology may be used.
  • LSI Large Scale Integration
  • the bandwidth of the global network can be increased without decreasing the throughput of data transfer to the client. Can be suppressed.

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A data communication apparatus comprises: a client communication status storage unit in which client-by-client communication status information is stored; and a transmission buffer that temporarily stores data to be transmitted to a client, and is characterized in that when the data is transmitted to the client, the communication status with the client is determined from the information stored in the client communication status storage unit, and the amount of data accumulated in the transmission buffer is controlled in accordance with the communication status.

Description

データ通信装置、データ通信方法、およびプログラムData communication apparatus, data communication method, and program
 本発明は、レイテンシの異なるネットワーク間でデータ通信を行うデータ通信装置、データ通信方法、およびプログラムに関する。 The present invention relates to a data communication apparatus, a data communication method, and a program for performing data communication between networks having different latencies.
 モバイルネットワークのようなレイテンシの高い環境と、グローバルネットワークのようなレイテンシの低い環境間では、データの転送に速度差が生じる。このようなネットワーク間のデータの速度差を吸収し、TCP(Transmission Control Protocol)スループット向上を行う目的として、モバイルネットワークのエッジにプロキシサーバが設置される(例えば特許文献1)。
 すなわち、プロキシサーバには、グローバルネットワークを介して転送されてきたデータを一時的に保存する受信バッファと、モバイルネットワークに転送するデータを一時的に保存する送信バッファが設けられる。これらの受信バッファと送信バッファとを制御することで、グローバルネットワークとモバイルネットワークとの間のデータの速度差が吸収される。
There is a speed difference in data transfer between an environment with a high latency such as a mobile network and an environment with a low latency such as a global network. A proxy server is installed at the edge of a mobile network for the purpose of absorbing such a data speed difference between networks and improving TCP (Transmission Control Protocol) throughput (for example, Patent Document 1).
That is, the proxy server is provided with a reception buffer that temporarily stores data transferred via the global network and a transmission buffer that temporarily stores data transferred to the mobile network. By controlling the reception buffer and the transmission buffer, the data speed difference between the global network and the mobile network is absorbed.
 モバイルネットワーク環境では、クライアントの通信エリアによって、異なるレイテンシのエリアが混在する。レイテンシの低いモバイルネットワークの環境下では、送信バッファの容量を大きくすることで、クライアントに対するデータのスループットの向上が期待できる。 In the mobile network environment, different latency areas are mixed depending on the communication area of the client. In a mobile network environment with a low latency, an increase in the transmission buffer capacity can be expected to improve the data throughput for the client.
特開2005-348107号公報JP-A-2005-348107
 しかしながら、プロキシサーバの送信バッファ容量を大きくすると、プロキシサーバがグローバルネットワークからのデータを送信バッファにバッファリング中にクライアントから切断信号を受けた場合に、グローバルネットワークの帯域が増加することが危惧される。つまり、このような状況では、クライアントから切断信号を受けるまで、プロキシサーバはコンテンツサーバからのデータを受信し、バッファリングしている。ここで、プロキシサーバがクライアントから切断信号を受けると、このときプロキシサーバの送信バッファに残っているデータは、クライアントへ送信されることのない無駄なデータとなる。
 送信バッファ容量が大きければ、このクライアントへ送信されることのないデータのデータ量は多くなり、その分、コンテンツサーバとプロキシサーバとの間のグローバルネットワークの帯域が増加する。
However, if the transmission buffer capacity of the proxy server is increased, the bandwidth of the global network may increase when the proxy server receives a disconnection signal from the client while buffering data from the global network in the transmission buffer. That is, in such a situation, the proxy server receives and buffers data from the content server until a disconnection signal is received from the client. When the proxy server receives a disconnection signal from the client, the data remaining in the transmission buffer of the proxy server at this time becomes useless data that is not transmitted to the client.
If the transmission buffer capacity is large, the amount of data that is not transmitted to the client increases, and the bandwidth of the global network between the content server and the proxy server increases accordingly.
 また、プロキシサーバの送信バッファ容量を大きくすると、モバイルネットワーク側で輻輳が発生したとき、プロキシサーバとコンテンツサーバとの間のコネクションが切断されてしまうことが考えられる。
 つまり、モバイルネットワーク側で輻輳が発生し、プロキシサーバとクライアントとの間のデータ通信が一時的に中断した場合にも、プロキシサーバとコンテンツサーバとの間のグローバルネットワークでの通信は行われている。そのため、プロキシサーバの送信バッファ容量が大きい場合、モバイルネットワーク側で輻輳が発生している間に、プロキシサーバがコンテンツサーバからのコンテンツデータを末尾まで取得してしまうことが考えられる。
 プロキシサーバがコンテンツサーバからのコンテンツデータを末尾まで取得してしまうと、プロキシサーバとコンテンツサーバとの間が無通信状態となる。このため、コンテンツサーバ側の無通信によるタイムアウトを引き起こし、プロキシサーバとコンテンツサーバとの間のコネクションが切断されてしまう。
Further, if the transmission buffer capacity of the proxy server is increased, it is conceivable that the connection between the proxy server and the content server is disconnected when congestion occurs on the mobile network side.
In other words, even when congestion occurs on the mobile network side and data communication between the proxy server and the client is temporarily interrupted, communication on the global network between the proxy server and the content server is performed. . Therefore, when the transmission buffer capacity of the proxy server is large, it is conceivable that the proxy server acquires content data from the content server to the end while congestion occurs on the mobile network side.
When the proxy server acquires the content data from the content server to the end, the proxy server and the content server are in a no-communication state. For this reason, a timeout occurs due to no communication on the content server side, and the connection between the proxy server and the content server is disconnected.
 このように、プロキシサーバの送信バッファ容量を大きくすると、コンテンツサーバとプロキシサーバとの間のグローバルネットワークの帯域が増加するという問題や、輻輳発生時にプロキシサーバとコンテンツサーバとの間のコネクションが切断するという問題が生じてくる。
 また、プロキシサーバの送信バッファを小さくすると、前述したように、レイテイシが低い高速通信のモバイルネットワークの環境下で、十分なスループットを得ることができなくなる。
As described above, when the transmission buffer capacity of the proxy server is increased, the bandwidth of the global network between the content server and the proxy server increases, or the connection between the proxy server and the content server is disconnected when congestion occurs. The problem arises.
In addition, if the transmission buffer of the proxy server is reduced, as described above, sufficient throughput cannot be obtained in a high-speed mobile network environment with low latency.
 これを解決するための一手法として、特許文献1には、送信バッファの最大量を輻輳ウィンドウ(cwnd)に基づいて決定し、送信バッファが保持すべきデータ量に応じてコンテンツサーバに対して受信バッファ(RWIN)を通知する手法が提案されている。
 しかしながら、特許文献1の手法では、受信バッファを伸縮しているため、無線環境においてレイテンシが低い環境についても受信バッファが小さくなることでZero Window(受信側のウインドウサイズをゼロにする)が発生し、コンテンツサーバからの受信レートが悪くなる問題が発生する。また、特許文献1に示されるものでは、TCPモジュールの動作を変更する必要があるため、OS(Operating System)の中核部分をなすKernelを改変する必要がある。
As a technique for solving this, Patent Document 1 discloses that a maximum amount of a transmission buffer is determined based on a congestion window (cwnd), and is received by a content server according to the amount of data that the transmission buffer should hold. A technique for notifying the buffer (RWIN) has been proposed.
However, in the method of Patent Document 1, since the reception buffer is expanded and contracted, Zero Window (reducing the window size on the reception side) occurs due to the reception buffer becoming small even in an environment where the latency is low in a wireless environment. This causes a problem that the reception rate from the content server is deteriorated. Further, in the one disclosed in Patent Document 1, since it is necessary to change the operation of the TCP module, it is necessary to modify Kernel which is a core part of the OS (Operating System).
 上述の課題を鑑み、本発明は、クライアントへのデータ転送のスループットを低下させることなく、グローバルネットワークの帯域を抑制するデータ通信装置、データ通信方法、およびプログラムを提供することを目的とする。 In view of the above-described problems, an object of the present invention is to provide a data communication device, a data communication method, and a program that suppress the bandwidth of a global network without reducing the throughput of data transfer to a client.
 本発明は上記の課題を解決するためになされたものであり、本発明の一態様としては、クライアント毎の通信状況の情報が格納されるクライアント通信状況保存部と、クライアントに送信するデータを一時的に保存する送信バッファと、を備え、前記クライアントにデータを送信する際に、前記クライアント通信状況保存部に格納された情報により当該クライアントとの間の通信状況を判定し、前記通信状況に応じて、前記送信バッファのデータ蓄積量を制御する、ことを特徴とするデータ通信装置である。 The present invention has been made to solve the above-described problems. As one aspect of the present invention, a client communication status storage unit that stores communication status information for each client, and data to be transmitted to the client are temporarily stored. A transmission buffer for storing data, and when transmitting data to the client, a communication status with the client is determined based on information stored in the client communication status storage unit, and the communication status is determined according to the communication status The data communication apparatus is characterized by controlling a data accumulation amount of the transmission buffer.
 本発明によれば、クライアントとの間の通信状況を把握して、送信バッファのデータ蓄積量を制御することで、クライアントへのデータ転送のスループットを低下させることなく、グローバルネットワークの帯域の増大を抑制できる。 According to the present invention, by grasping the communication status with the client and controlling the data accumulation amount of the transmission buffer, the bandwidth of the global network can be increased without decreasing the throughput of data transfer to the client. Can be suppressed.
本発明の第1の実施形態に係る通信システムの構成を示すブロック図である。1 is a block diagram showing a configuration of a communication system according to a first embodiment of the present invention. 同第1の実施形態に係る通信システムにおけるプロキシサーバの構成を示すブロック図である。It is a block diagram which shows the structure of the proxy server in the communication system which concerns on the 1st Embodiment. 同第1の実施形態に係る通信システムにおける局所輻輳データベースの一例の説明図である。It is explanatory drawing of an example of the local congestion database in the communication system which concerns on the 1st Embodiment. 同第1の実施形態に係る通信システムの処理を示すフローチャートである。It is a flowchart which shows the process of the communication system which concerns on the 1st Embodiment. 同第1の実施形態に係る通信システムにおけるプロキシサーバの構成を示す概略図である。It is the schematic which shows the structure of the proxy server in the communication system which concerns on the 1st Embodiment.
 以下、本発明の実施の形態について図面を参照しながら説明する。図1は、本発明の第1の実施形態に係る通信システム1の構成を示すブロック図である。
 図1に示すように、本発明の第1の実施形態に係る通信システム1は、クライアント11と、モバイルネットワーク12と、コンテンツサーバ13と、グローバルネットワーク14と、プロキシサーバ15とを備えている。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a communication system 1 according to the first embodiment of the present invention.
As shown in FIG. 1, the communication system 1 according to the first embodiment of the present invention includes a client 11, a mobile network 12, a content server 13, a global network 14, and a proxy server 15.
 クライアント11は、携帯端末やタブレット端末等の無線端末である。
 モバイルネットワーク12は、クライアント11と通信を行う無線ネットワークである。モバイルネットワーク12には、クライアント11と無線通信を行う基地局や基地局間ネットワークが含まれている。モバイルネットワーク12としては、WCDMA(登録商標)(Wideband Code Division Multiple Access)やLTE(Long Term Evolution)等が用いられる。
The client 11 is a wireless terminal such as a mobile terminal or a tablet terminal.
The mobile network 12 is a wireless network that communicates with the client 11. The mobile network 12 includes a base station that performs wireless communication with the client 11 and an inter-base station network. As the mobile network 12, WCDMA (registered trademark) (Wideband Code Division Multiple Access), LTE (Long Term Evolution), or the like is used.
 コンテンツサーバ13は、音楽や動画等のコンテンツを提供するサーバである。コンテンツサーバ13は、グローバルネットワーク14上に設けられている。
 グローバルネットワーク14は、TCP/IP(Transmission Control Protocol/Internet Protocol)のプロトコルを用いてデータ通信を行うネットワーク、例えばインターネットである。
The content server 13 is a server that provides content such as music and moving images. The content server 13 is provided on the global network 14.
The global network 14 is a network that performs data communication using a TCP / IP (Transmission Control Protocol / Internet Protocol) protocol, for example, the Internet.
 プロキシサーバ15は、クライアント11からのコンテンツデータの要求に対して、クライアント11の代わりに、コンテンツサーバ13にアクセスし、コンテンツサーバ13からコンテンツデータをダウンロードするサーバである。
 プロキシサーバ15は、モバイルネットワーク12とグローバルネットワーク14との間に設けられる。コンテンツサーバ13からグローバルネットワーク14を介して、プロキシサーバ15でダウンロードしたコンテンツデータは、モバイルネットワーク12を介して、クライアント11に送られる。
The proxy server 15 is a server that accesses the content server 13 instead of the client 11 and downloads the content data from the content server 13 in response to the content data request from the client 11.
The proxy server 15 is provided between the mobile network 12 and the global network 14. The content data downloaded by the proxy server 15 from the content server 13 via the global network 14 is sent to the client 11 via the mobile network 12.
 次に、プロキシサーバ15の構成の概略について説明する。まず、図5を参照しながら概略を説明し、その後、図2を参照しながら詳細を説明する。
 図5は、プロキシサーバ15の構成を示す概略図である。図5に示すように、データ通信装置31(図2における、プロキシサーバ15に相当)は、クライアント毎の通信状況の情報が格納されるクライアント通信状況保存部32(図2における、局所輻輳データベース27に対応)と、クライアントに送信するデータを一時的に保存する送信バッファ33(図2における、送信バッファ26に対応)と、を備える。
 データ通信装置31は、クライアントにデータを送信する際に、クライアント通信状況保存部32によりクライアントとの間の通信状況を判定し、通信状況に応じて、送信バッファ33のデータ蓄積量を制御する。
Next, an outline of the configuration of the proxy server 15 will be described. First, the outline will be described with reference to FIG. 5, and then the details will be described with reference to FIG.
FIG. 5 is a schematic diagram showing the configuration of the proxy server 15. As shown in FIG. 5, the data communication device 31 (corresponding to the proxy server 15 in FIG. 2) includes a client communication status storage unit 32 (local congestion database 27 in FIG. 2) that stores information on communication status for each client. And a transmission buffer 33 (corresponding to the transmission buffer 26 in FIG. 2) for temporarily storing data to be transmitted to the client.
When the data communication device 31 transmits data to the client, the client communication status storage unit 32 determines the communication status with the client, and controls the amount of data stored in the transmission buffer 33 according to the communication status.
 図2は、プロキシサーバ15の構成を示すブロック図である。図2に示すように、プロキシサーバ15は、NIC(Network Interface Card)21及び22と、TCPモジュール23と、プロキシプロセス24とから構成される。 FIG. 2 is a block diagram showing the configuration of the proxy server 15. As shown in FIG. 2, the proxy server 15 includes NICs (Network Interface Cards) 21 and 22, a TCP module 23, and a proxy process 24.
 NIC21は、モバイルネットワーク12を介してクライアント11側と接続するための物理的なインタフェースである。NIC22は、グローバルネットワーク14を介してコンテンツサーバ13と接続するための物理的なインターフェースである。 The NIC 21 is a physical interface for connecting to the client 11 side via the mobile network 12. The NIC 22 is a physical interface for connecting to the content server 13 via the global network 14.
 TCPモジュール23は、TCP(Transmission Control Protocol)の制御を実行するモジュールである。TCPモジュール23は、OS(Operating System)の中核部分をなすKernelによって管理される。
 また、TCPモジュール23は、受信バッファ25及び送信バッファ26を備えている。
The TCP module 23 is a module that executes control of TCP (Transmission Control Protocol). The TCP module 23 is managed by Kernel which is a core part of an OS (Operating System).
The TCP module 23 includes a reception buffer 25 and a transmission buffer 26.
 受信バッファ25は、コンテンツサーバ13から送られてきたコンテンツデータを一時的に保存する。送信バッファ26は、クライアント11に送信するコンテンツデータを一時的に保存する。
 なお、後に説明するように、本実施形態では、送信バッファ26の容量は可変できる。すなわち、送信バッファ26のデータ蓄積量は、通常時には、高速モバイル通信のレイテンシでも、高いスループットを得るのに十分な容量Q1に設定される。一方、局所輻輳の場合には、グローバルネットワーク14の帯域を抑制することがないように、小さな容量Q2に設定される。
The reception buffer 25 temporarily stores the content data sent from the content server 13. The transmission buffer 26 temporarily stores content data to be transmitted to the client 11.
As will be described later, in this embodiment, the capacity of the transmission buffer 26 can be varied. That is, the data accumulation amount of the transmission buffer 26 is normally set to a capacity Q1 sufficient to obtain a high throughput even with high-speed mobile communication latency. On the other hand, in the case of local congestion, a small capacity Q2 is set so as not to suppress the bandwidth of the global network 14.
 プロキシプロセス24は、アプリケーションプログラムを制御する。本実施形態では、プロキシプロセス24は、局所輻輳データベース27(クライアント通信状況保存部)を有し、クライアント11毎の輻輳状態を示すデータベースである。
 クライアント11毎の輻輳状態は、当該クライアントとのデータ通信における応答時間に基づいて判定される。輻輳判定の方法としては、例えば特開2014-241552号公報で開示されている方法を用いることができる。
The proxy process 24 controls application programs. In the present embodiment, the proxy process 24 has a local congestion database 27 (client communication status storage unit), and is a database that indicates a congestion state for each client 11.
The congestion state for each client 11 is determined based on the response time in data communication with the client. As a congestion determination method, for example, a method disclosed in Japanese Patent Application Laid-Open No. 2014-241552 can be used.
 図3は、局所輻輳データベース27の一例である。図3に示すように、局所輻輳データベース27には、クライアントのIPアドレス毎に、RTT(Round Trip Time;往復レイテンシ)の計測値と、輻輳フラグの情報が格納されている。輻輳フラグは、クライアント11にデータを送信する際に、クライアント11の通信状況を判定するのに用いられる。 FIG. 3 is an example of the local congestion database 27. As shown in FIG. 3, the local congestion database 27 stores RTT (Round Trip Time) measurement values and congestion flag information for each IP address of the client. The congestion flag is used to determine the communication status of the client 11 when transmitting data to the client 11.
 つまり、RTTは、送信側が受信側にパケットを送信し、受信側が送信側にアクノリッジパケットを送り、送信側でこのアクノリッジを受け取るまでの応答時間である。輻輳が発生していると、このRTTの計測時間が長くなる。 That is, RTT is a response time from when the transmitting side transmits a packet to the receiving side, when the receiving side sends an acknowledge packet to the transmitting side, and when the transmitting side receives this acknowledgement. When congestion occurs, the RTT measurement time becomes long.
 プロキシプロセス24は、各クライアント11のRTTを計測する。そして、プロキシプロセス24は、この計測結果を局所輻輳データベース27のRTTの計測値の項目に記述する。これにより、図3に示すように、各クライアントのIPアドレス毎に、RTTの計測値が記述される。
 このRTTの計測結果に基づいて、局所輻輳状態かどうかが判定できる。すなわち、プロキシプロセス24は、RTTの計測結果から、RTTの計測時間が所定値以上かどうかを判定する。そして、プロキシプロセス24は、RTTの計測時間が所定値以上の場合には、図3における輻輳フラグの項目として「1」を記述する。輻輳フラグ「1」は、局所輻輳が発生している状態であることを意味する。輻輳フラグ「0」は、局所輻輳が発生していない状態であることを意味する。
The proxy process 24 measures the RTT of each client 11. Then, the proxy process 24 describes the measurement result in the RTT measurement value item of the local congestion database 27. Thereby, as shown in FIG. 3, the measured value of RTT is described for each IP address of each client.
Based on the measurement result of this RTT, it can be determined whether it is a local congestion state. That is, the proxy process 24 determines whether or not the RTT measurement time is equal to or greater than a predetermined value from the RTT measurement result. The proxy process 24 then describes “1” as the congestion flag item in FIG. 3 when the RTT measurement time is equal to or greater than a predetermined value. The congestion flag “1” means that local congestion has occurred. The congestion flag “0” means that no local congestion has occurred.
 このように、本実施形態では、プロキシプロセス24に局所輻輳データベース27が設けられる。局所輻輳データベース27により、各クライアント11の通信において、局所輻輳が発生しているかどうかが判定できる。そして、本実施形態では、局所輻輳と判定された場合、送信バッファ26の容量が縮小される。これにより、クライアント11へのデータ転送のスループットを低下させることなく、グローバルネットワーク14の帯域を抑制できる。 Thus, in this embodiment, the local congestion database 27 is provided in the proxy process 24. The local congestion database 27 can determine whether or not local congestion has occurred in the communication of each client 11. In this embodiment, the capacity of the transmission buffer 26 is reduced when it is determined that there is local congestion. Thereby, the bandwidth of the global network 14 can be suppressed without reducing the throughput of data transfer to the client 11.
 図4は、本発明の第1の実施形態に係る通信システム1の処理を示すフローチャートである。
 図4において、プロキシプロセス24は、クライアント11とTCPコネクションを確立する(ステップS1)。
 プロキシプロセス24は、クライアント11とTCPコネクションが確立したら、該当クライアント11のIPアドレスを基に、局所輻輳データベース27へ問い合わせを行い、局所輻輳判定を実施する(ステップS2)。
 プロキシプロセス24は、問合せの結果、局所輻輳状態かどうかを判定する(ステップS3)。そして、プロキシプロセス24は、局所輻輳状態と判定されたら(ステップS3:Yes)、送信バッファ26の容量を縮小して(ステップS4)、処理を終了する。
 ステップS3で、局所輻輳状態でなければ(ステップS3:No)、送信バッファ26の容量は変更せずに、処理を終了する。
FIG. 4 is a flowchart showing processing of the communication system 1 according to the first embodiment of the present invention.
In FIG. 4, the proxy process 24 establishes a TCP connection with the client 11 (step S1).
When the TCP connection with the client 11 is established, the proxy process 24 makes an inquiry to the local congestion database 27 based on the IP address of the client 11 and performs local congestion determination (step S2).
The proxy process 24 determines whether it is a local congestion state as a result of the inquiry (step S3). If the proxy process 24 is determined to be in the local congestion state (step S3: Yes), the capacity of the transmission buffer 26 is reduced (step S4), and the process ends.
If it is not a local congestion state at step S3 (step S3: No), the process is terminated without changing the capacity of the transmission buffer 26.
 以上説明したように、本発明の第1の実施形態に係る通信システム1では、局所輻輳と判定された場合、送信バッファ26の容量を縮小することにより、クライアント11へのデータ転送のスループットを低下させることなく、グローバルネットワーク14の帯域を抑制できる。 As described above, in the communication system 1 according to the first embodiment of the present invention, when it is determined that there is local congestion, the throughput of the data transfer to the client 11 is reduced by reducing the capacity of the transmission buffer 26. Without this, the bandwidth of the global network 14 can be suppressed.
 また、本発明の第1の実施形態では、通常時には、送信バッファ26の容量を十分に大きい値に設定することにより、レイテンシの低いモバイルネットワークの環境下で、クライアントに対するデータのスループットの向上が図れる。 Further, in the first embodiment of the present invention, by setting the capacity of the transmission buffer 26 to a sufficiently large value during normal operation, it is possible to improve the data throughput for the client in the environment of a mobile network with low latency. .
 また、本発明の第1の実施形態では、プロキシプロセス24に局所輻輳データベース27が設けられ、プロキシプロセス24が局所輻輳データベース27により局所輻輳かどうかを判定し、送信バッファ26の容量を制御している。このため、OSの中核部分をなすKernelを改変することなく、プロキシプロセス24のアプリケーションで送信バッファ26の容量を制御できる。 In the first embodiment of the present invention, the proxy process 24 is provided with a local congestion database 27. The proxy process 24 determines whether the local congestion database 27 is local congestion and controls the capacity of the transmission buffer 26. Yes. For this reason, the capacity of the transmission buffer 26 can be controlled by the application of the proxy process 24 without modifying the kernel that forms the core part of the OS.
 なお、プロキシサーバ15の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
 また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
 また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
 さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。
 また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
Note that a program for realizing all or part of the functions of the proxy server 15 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed. You may perform the process of. Here, the “computer system” includes an OS and hardware such as peripheral devices.
Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system.
Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory in a computer system serving as a server or a client in that case, and a program that holds a program for a certain period of time are also included.
The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
 また、上述した実施形態におけるプロキシサーバ15、を、LSI(Large Scale Integration)等の集積回路として実現してもよい。更に、プロキシサーバ15の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。
 また、集積回路化の手法はLSIに限らず、専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
Further, the proxy server 15 in the above-described embodiment may be realized as an integrated circuit such as an LSI (Large Scale Integration). Furthermore, each functional block of the proxy server 15 may be individually made into a processor, or a part or all of them may be integrated into a processor.
Further, the method of circuit integration is not limited to LSI, and may be realized with a dedicated circuit or a general-purpose processor. In addition, when an integrated circuit technology that replaces LSI appears due to the advancement of semiconductor technology, an integrated circuit based on the technology may be used.
 以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。 As described above, the embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes design changes and the like without departing from the gist of the present invention.
 この出願は、2015年8月5日に出願された日本出願特願2015-154861号を基礎とする優先権を主張し、その開示の全てをここに取り込む。 This application claims priority based on Japanese Patent Application No. 2015-154861 filed on August 5, 2015, the entire disclosure of which is incorporated herein.
 本発明によれば、クライアントとの間の通信状況を把握して、送信バッファのデータ蓄積量を制御することで、クライアントへのデータ転送のスループットを低下させることなく、グローバルネットワークの帯域の増大を抑制できる。 According to the present invention, by grasping the communication status with the client and controlling the data accumulation amount of the transmission buffer, the bandwidth of the global network can be increased without decreasing the throughput of data transfer to the client. Can be suppressed.
1・・・通信システム
11・・・クライアント
12・・・モバイルネットワーク
13・・・コンテンツサーバ
14・・・グローバルネットワーク
15・・・プロキシサーバ
23・・・TCPモジュール
24・・・プロキシプロセス
25・・・受信バッファ
26・・・送信バッファ
27・・・局所輻輳データベース
31・・・データ通信装置
32・・・クライアント通信状況保存部
33・・・送信バッファ
DESCRIPTION OF SYMBOLS 1 ... Communication system 11 ... Client 12 ... Mobile network 13 ... Content server 14 ... Global network 15 ... Proxy server 23 ... TCP module 24 ... Proxy process 25 ... -Reception buffer 26-Transmission buffer 27-Local congestion database 31-Data communication device 32-Client communication status storage unit 33-Transmission buffer

Claims (5)

  1.  クライアント毎の通信状況の情報が格納されるクライアント通信状況保存部と、
     クライアントに送信するデータを一時的に保存する送信バッファと、
     を備え、
     前記クライアントにデータを送信する際に、前記クライアント通信状況保存部に格納された情報により当該クライアントとの間の通信状況を判定し、前記通信状況に応じて、前記送信バッファのデータ蓄積量を制御する、
     ことを特徴とするデータ通信装置。
    A client communication status storage unit that stores communication status information for each client;
    A transmission buffer that temporarily stores data to be sent to the client;
    With
    When transmitting data to the client, the communication status with the client is determined based on information stored in the client communication status storage unit, and the data storage amount of the transmission buffer is controlled according to the communication status To
    A data communication device.
  2.  前記クライアントとの間の通信状況として、前記クライアントとの間のデータ通信における応答時間に基づいて、輻輳状態を判定する、
     ことを特徴とする請求項1に記載のデータ通信装置。
    As a communication status with the client, a congestion state is determined based on a response time in data communication with the client.
    The data communication apparatus according to claim 1.
  3.  前記送信バッファのデータ蓄積量の制御は、前記通信状況として輻輳状態であることが取得されると、前記送信バッファのデータ蓄積量を縮小する、
     ことを特徴とする請求項1又は2に記載のデータ通信装置。
    The control of the data accumulation amount of the transmission buffer reduces the data accumulation amount of the transmission buffer when it is acquired that the communication state is in a congestion state.
    The data communication apparatus according to claim 1, wherein the data communication apparatus is a data communication apparatus.
  4.  クライアント毎の通信状況の情報が格納されるクライアント通信状況保存ステップと、
     クライアントに送信するデータを一時的に保存する送信バッファステップと、
     前記クライアントにデータを送信する際に、前記クライアント通信状況保存ステップにおいて格納された情報により当該クライアントとの間の通信状況を判定し、前記通信状況に応じて、前記送信バッファステップにおけるデータ蓄積量を制御する制御ステップと、
     を有することを特徴とするデータ通信方法。
    Client communication status storage step for storing communication status information for each client;
    A send buffer step for temporarily storing data to be sent to the client;
    When transmitting data to the client, the communication status with the client is determined based on the information stored in the client communication status storage step, and the data storage amount in the transmission buffer step is determined according to the communication status. Control steps to control;
    A data communication method characterized by comprising:
  5.  コンピュータに、
     クライアント毎の通信状況の情報が格納されるクライアント通信状況保存ステップと、
     クライアントに送信するデータを一時的に保存する送信バッファステップと、
     前記クライアントにデータを送信する際に、前記クライアント通信状況保存ステップにおいて格納された情報により当該クライアントとの間の通信状況を判定し、前記通信状況に応じて、前記送信バッファステップにおけるデータ蓄積量を制御する制御ステップと、
     を実行させるためのプログラム。
    On the computer,
    Client communication status storage step for storing communication status information for each client;
    A send buffer step for temporarily storing data to be sent to the client;
    When transmitting data to the client, the communication status with the client is determined based on the information stored in the client communication status storage step, and the data storage amount in the transmission buffer step is determined according to the communication status. Control steps to control;
    A program for running
PCT/JP2016/069107 2015-08-05 2016-06-28 Data communication apparatus, data communication method, and program WO2017022365A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-154861 2015-08-05
JP2015154861 2015-08-05

Publications (1)

Publication Number Publication Date
WO2017022365A1 true WO2017022365A1 (en) 2017-02-09

Family

ID=57942845

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/069107 WO2017022365A1 (en) 2015-08-05 2016-06-28 Data communication apparatus, data communication method, and program

Country Status (2)

Country Link
TW (1) TW201720122A (en)
WO (1) WO2017022365A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100250701A1 (en) * 2009-03-26 2010-09-30 Limelight Networks, Inc. Conditional protocol control
US20120290727A1 (en) * 2009-12-31 2012-11-15 Bce Inc. Method and system for increasing performance of transmission control protocol sessions in data networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100250701A1 (en) * 2009-03-26 2010-09-30 Limelight Networks, Inc. Conditional protocol control
US20120290727A1 (en) * 2009-12-31 2012-11-15 Bce Inc. Method and system for increasing performance of transmission control protocol sessions in data networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SEMKE, J. ET AL.: "ACM SIGCOMM Computer Communication Review", AUTOMATIC TCP BUFFER TUNING, 28 April 1998 (1998-04-28), pages 315 - 323 *

Also Published As

Publication number Publication date
TW201720122A (en) 2017-06-01

Similar Documents

Publication Publication Date Title
KR102203509B1 (en) Packet transmission method, terminal, network device and communication system
CN105684396B (en) TCP traffic adaptation in wireless systems
JP4921569B2 (en) Data processing for TCP connection using offload unit
US8996718B2 (en) TCP-aware receive side coalescing
EP3160111B1 (en) Caching system and method for migrating tcp connections between cache servers
US8665870B2 (en) Method and apparatus for handling push messages
US10932159B2 (en) Data transmission method, data receiving device, and data sending device
CN112583874A (en) Message forwarding method and device for heterogeneous network
EP2255483B1 (en) Method and apparatus for managing transmission of tcp data segments
US11240712B2 (en) Data migration method and apparatus
WO2016011624A1 (en) Data packet sending and data processing devices and methods
CN111698275B (en) Data processing method, device and equipment
US10530701B2 (en) RUDP apparatus and dynamic adjustment method of sliding window parameter
US20140297791A1 (en) Communication apparatus, method of controlling the same, and storage medium
US20160359950A1 (en) Systems and methods for improved trivial file transfer protocol
US11349934B2 (en) Opportunistic transmission control protocol (TCP) connection establishment
WO2017022365A1 (en) Data communication apparatus, data communication method, and program
US20210105682A1 (en) Methods and service nodes for transferring a service session for a wireless device
US10015288B2 (en) Communication apparatus and control method of communication apparatus
JP6805713B2 (en) Receive traffic speedup device, speedup method, and speedup program
JP2018085642A (en) Communication device, communication control device, communication method, communication control method, and program
JP6800514B2 (en) Communication equipment, its control method, and programs
JP6763369B2 (en) Network system, communication control method, and program
JP6766817B2 (en) Data communication equipment, data communication control methods and programs
JP2013219672A (en) Mobile terminal and communication method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16832644

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16832644

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP