JPWO2019244966A1 - 通信装置、通信方法及びプログラム - Google Patents

通信装置、通信方法及びプログラム Download PDF

Info

Publication number
JPWO2019244966A1
JPWO2019244966A1 JP2020525788A JP2020525788A JPWO2019244966A1 JP WO2019244966 A1 JPWO2019244966 A1 JP WO2019244966A1 JP 2020525788 A JP2020525788 A JP 2020525788A JP 2020525788 A JP2020525788 A JP 2020525788A JP WO2019244966 A1 JPWO2019244966 A1 JP WO2019244966A1
Authority
JP
Japan
Prior art keywords
network
communication
session
state
size
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.)
Pending
Application number
JP2020525788A
Other languages
English (en)
Inventor
護 細川
護 細川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JPWO2019244966A1 publication Critical patent/JPWO2019244966A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Abstract

ネットワークの状態に拘わらず、パケットロスを抑止し、かつ、ネットワークの利用効率を向上させる。通信装置は、データ送信先の装置とのTCP通信を終端するTCP終端部と、前記データ送信先の装置との間のネットワークの状態をセッション単位で監視する監視部と、前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更する転送レート制御部と、を備える。

Description

本発明は、通信装置、通信方法及びプログラムに関する。
[関連出願についての記載]
本発明は、日本国特許出願:特願2018−118852号(2018年 6月22日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
TCP(Transmission Control Protocol)における輻輳制御アルゴリズムとして、パケットロスベース方式や遅延ベース方式、これらを組み合わせたハイブリッド方式が知られている。パケットロスベース方式は、パケットのロスを観測し、ロスが増えれば輻輳が発生したと見なして送信量を抑えるものであり、CUBICアルゴリズムなどがある。また、遅延ベース方式は、パケットの遅延を観測し、遅延量が増えたら輻輳状態になったと判断して送信量を減らすものであり、Westwood+等の方式がある。
特許文献1には、送信バッファの空き容量を常時監視し、受信側の装置から通知されたウィンドウサイズを、送信バッファの空き容量に基づいて変更することで、スループットの低下を防止することができるという通信装置が開示されている。
また、特許文献2には、通信速度に応じて、TCP通信に用いる送信用バッファサイズ及び受信用バッファサイズを適切なサイズに変更することができるという端末が開示されている。
特開2015−95780号公報 特開2016−136701号公報
以下の分析は、本発明によって与えられたものである。上記したパケットロスベース方式のものは、スロースタート方式を基本としているため、ネットワークの理論的な最大スループットを超えるトラフィックが流れ込んだ場合、パケットロスと再送とを繰り返すことになる。結果として、通信のみならず、ユーザの体感QoE(Quality of Experience)も悪化してしまうことになる。
図13は、流入トラフィックに対し、伝送路の最大スループットが相対的に小さい、所謂狭帯域通信におけるTCP制御によるスループットの変化を表した図である。図13に示すとおり、スロースタート後、伝送路上のスループットを超えるトラフィックが流入すると、パケットロスが発生し、ウィンドウサイズを小さくした上で、ロスしたパケットの再送が行われる。一方、その後も同程度のトラフィックが流入する場合、図13の下段の網掛け領域に示すように、累積パケットロス量は増大していくことになる。結果として、TATの増大、ユーザの体感QoEの悪化が発生する。また、ネットワークの状態も常に一定ではなく刻々と変化する場合があり、対応が遅れればその分だけ実質的なネットワークリソースの利用効率が落ちてしまうことになる。
本発明は、ネットワークの状態に拘わらず、安定してパケットロスを抑止し、ネットワークの利用効率の向上に貢献できる通信装置、通信方法及びプログラムを提供することを目的とする。
第1の視点によれば、データ送信先の装置とのTCP通信を終端するTCP終端部と、前記データ送信先の装置との間のネットワークの状態をセッション単位で監視する監視部とを備える通信装置が提供される。この通信装置は、さらに、前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更する転送レート制御部を備える。
第2の視点によれば、データ送信先の装置とのTCP通信を終端するTCP終端部を備えた通信装置が、前記データ送信先の装置との間のネットワークの状態をセッション単位で監視するステップと、前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更するステップと、を含む通信方法が提供される。本方法は、データ送信先の装置に対してデータを送信する通信装置という、特定の機械に結びつけられている。
第3の視点によれば、データ送信先の装置とのTCP通信を終端するTCP終端部を備えた通信装置に、前記データ送信先の装置との間のネットワークの状態をセッション単位で監視する処理と、前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な(非トランジトリーな)記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
本発明によれば、ネットワークの状態に拘わらず、パケットロスを抑止し、かつ、ネットワークの利用効率を向上させることが可能となる。即ち、本発明は、背景技術に示したTCPで通信する通信装置を、パケットロスの抑止とネットワークの利用効率の面で、飛躍的に向上させたものへと変換するものとなっている。
本発明の一実施形態の構成を示す図である。 本発明の一実施形態の変形構成を示す図である。 本発明の第1の実施形態の構成を示す図である。 本発明の第1の実施形態のProxyサーバの動作概要を説明するための図である。 本発明の第1の実施形態のProxyサーバの構成を示す図である。 本発明の第1の実施形態のProxyサーバが保持するセッション情報の一例を示す図である。 本発明の第1の実施形態の動作を表したシーケンス図である。 本発明の第1の実施形態の効果を説明するための図である。 比較例の方式による複数のセッション接続時の累積パケットロス量を説明するための図である。 本発明の第1の実施形態による複数のセッション接続時の効果を説明するための図である。 ネットワーク状況が変化した際の効果の違いを説明するための図である。 ネットワーク状況が変化した際の効果の違いを説明するための別の図である。 狭帯域通信におけるTCP制御によるスループットの変化を表した図である。 本発明のProxyサーバを構成するコンピュータの構成を示す図である。
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。また、以降の説明で参照する図面等のブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。プログラムはコンピュータ装置を介して実行され、コンピュータ装置は、例えば、プロセッサ、記憶装置、入力装置、通信インターフェース、及び必要に応じ表示装置を備える。また、コンピュータ装置は、通信インターフェースを介して装置内又は外部の機器(コンピュータを含む)と、有線、無線を問わず、交信可能に構成される。また、図中の各ブロックの入出力の接続点には、ポート乃至インターフェースがあるが図示省略する。また、以下の説明において、「A及び/又はB」は、A及びBの少なくともいずれかという意味で用いる。
本発明は、その一実施形態において、図1に示すように、TCP終端部11と、監視部12と、転送レート制御部13と、を備える通信装置10にて実現できる。このような通信装置10の典型例としてはコンテンツサーバが挙げられる。
より具体的には、TCP終端部11は、データ送信先装置20とのTCP通信を終端する。監視部12は、前記データ送信先装置20との間のネットワーク(回線)の状態をセッション単位で監視する。このネットワーク(回線)の状態を表す指標としては、スループットやRTT(Round−Trip Time)などが挙げられる。
そして、転送レート制御部13は、前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更する。例えば、ネットワークの状態が悪いと判定した場合、転送レート制御部13は、パケットロスの増大や受信装置からのウィンドウサイズの通知の受信有無に拘わらず、送信バッファのサイズを小さくする制御を行う。これにより、パケットロスが増える前に転送レートを落とし、パケットロスの発生を抑えることが可能になる。
逆に、ネットワークの状態が良いと判定した場合、転送レート制御部13は、パケットロスの増大や受信装置からのウィンドウサイズの通知の受信有無に拘わらず、送信バッファのサイズを大きくする制御を行う。これにより、良好な状態になるネットワークリソースを有効に活用することが可能となる。
なお、本発明を適用可能な通信装置は、図1に示す態様の通信装置10に限られない。例えば、図2に示すようにデータ送信元装置30からデータ送信先装置20へとデータを中継する中継装置として機能する通信装置10aにも本発明を適用することができる。この場合の通信装置10aも同様に、ネットワークの状態に応じて、転送レートを動的に制御するため、パケットロスの発生を抑え、ネットワークリソースを有効に利用することが可能となる。
[第1の実施形態]
続いて、本発明を移動体通信網に配置され、データの中継を行うProxyサーバに適用した第1の実施形態について、図面を参照して詳細に説明する。図3は、本発明の第1の実施形態の構成を示す図である。図3を参照すると、通信端末200と、コンテンツサーバ300との間にProxyサーバ100が配置された構成が示されている。なお、図3では省略しているが、Proxyサーバ100と、基地局400との間に、BorderGateWay(BGW)やS−GW(Serving Gateway)、P−GW(PDN Gateway)といった機器が配置されていてもよい。
通信端末200は、基地局400を介して、コンテンツサーバ300にアクセスし、コンテンツの送信を受ける。本実施形態では、通信端末が、データ送信先の装置となる。なお、通信端末200は、スマートフォンなどのほか、車載端末やコンテンツサーバ300から受信したコンテンツを再配布する機器であってもよい。
コンテンツサーバ300は、動画や音楽などの各種コンテンツを提供するサーバである。
Proxyサーバ100は、通信端末200とコンテンツサーバ300との間に配置され、通信端末200とコンテンツサーバ300との間のTCPコネクション1、2を終端する。Proxyサーバ100は、前記各TCPコネクションについて、それぞれウィンドウサイズ等の設定値の適切な設定を行うことで、パケットロスや再送を抑えるために配置される。本実施形態のProxyサーバ100は、図3の無線区間を含むTCPコネクション1の最適化を行うものとして説明する。
Proxyサーバ100は、TCPコネクション1上のセッション毎に、所定の時間間隔でスループット、RTT、パケットロス状況、ACK密度(後述)を測定する。そして、その測定結果に基づいて、通信端末200向けのデータの送信バッファのサイズを調整する。
また、本実施形態では、Proxyサーバ100はトラフィック全体のリソースを収容できるリソースを持ちProxyサーバ自体のリソース枯渇は発生しないものとして説明する。なお、より望ましい形態において、Proxyサーバ100のリソースの不足が予測される場合は、ロードバランサによる複数プロキシサーバへの分散、もしくは別経路への迂回などを行うことが望ましい。
図4は、本実施形態のProxyサーバ100の動作概要を説明するための図である。図4は、TCPコネクション1上で開始された2つのセッション1、2を示している。また、セッション1、2上の破線の楕円は測定タイミングを示している。図4に示すように、Proxyサーバ100は、セッション開始後、所定の時間間隔で、測定を開始し、その結果に基づいて通信端末200向けのデータの送信バッファのサイズを決定する。さらに、本実施形態のProxyサーバ100は、セッション2の開始時に、セッション1の測定結果を用いて送信バッファのサイズを決定する。これにより、セッション2は通信開始当初から望ましい速度で通信できることになる。
続いて、上記機能を実現するためのProxyサーバ100の構成について図面を参照して詳細に説明する。図5を参照すると、RTT計測部111と、スループット計測部112と、ACK密度計測部113と、パケットロス計測部114と、送信バッファ変更部121と、TCP終端部101と、セッション管理部131とを備えた構成が示されている。
RTT計測部111は、通信端末200に対して送信したパケットに対し、通信端末200から送信されたACKパケットの時刻に基づいて、RTTを計測する。
スループット計測部112は、セッションごとのスループットを計測する。スループットは、送信データサイズ/単位時間により計算してもよいが、ウィンドウサイズと上記したRTTを用いて計算することもできる。この場合、スループット(bps)は、ウィンドウサイズ*8/RTTにより計算することができる。
ACK密度計測部113は、単位時間あたりのACK受信パケットの平均値であるACK密度という指標を計測する。上記送信データサイズ/単位時間によりスループットを計算する場合、送信データサイズは通常Mbit(メガビット)単位、単位時刻はミリ秒以下の単位となる。ネットワークの変化をより精密に把握することを目的に、単位時刻を短くしていくと、単位時刻は0に近似していくため、スループットの計算誤差が非常に大きくなる場合がある。このACK密度は、送信データサイズではなく、ACKパケットの変化量である密度を計測するため、測定誤差は小さくなる。従って、上記RTT、スループットと併用してACK密度を測定することで、計測結果の信頼性向上を図ることが可能となる。
パケットロス計測部114は、単位時間あたりのパケットロス量を計測する。以上のRTT計測部111、スループット計測部112、ACK密度計測部113及びパケットロス計測部114が上記した監視部12に相当する。
セッション管理部131は、上記RTT計測部111、スループット計測部112、ACK密度計測部113及びパケットロス計測部114で計測されたセッションごとのデータをセッションごとに管理する。
図6は、セッション管理部131にて管理されるセッション情報の一例を示す図である。図6の例では、セッションごとに直近に計測されたRTT、スループット、ACK密度、パケットロス量と、現在適用中の送信バッファのサイズを管理可能となっている。
送信バッファ変更部121は、セッション管理部131に格納された各計測データに基づいて、送信バッファのサイズの変更の要否を判定する。前記判定の結果、送信バッファのサイズの変更が必要と判定した場合、TCP終端部101に、送信バッファのサイズの変更を指示する。従って、この送信バッファ変更部121が、上記した転送レート制御部13に相当する。また、送信バッファ変更部121は、セッション管理部131に保持されている送信バッファの値を、前記指示した送信バッファのサイズに更新する。
送信バッファのサイズの変更の要否は、例えば、セッション管理部131に格納された各計測データに、有意な変化があったか否かにより判定することができる。また、送信バッファのサイズの増減は、次のように決定することができる。例えば、ネットワークの状況が前回の判定時点よりも悪化している場合、所定値だけ送信バッファのサイズを減らすことができる。また、例えば、ネットワークの状況が前回の判定時点よりも良くなっている場合、所定値だけ送信バッファのサイズを増やすことができる。このように、送信バッファのサイズを増減することで、ネットワークの状況に応じたレートで送信を行うことが可能となり、結果としてパケットロスを減らし、ネットワークの利用効率を向上させることが可能となる。このネットワークの状況は、例えば、上記RTT、スループット、ACK密度、パケットロス量などにそれぞれ重みを与えて計算したスコアにより計算してもよい。
また、前記送信バッファ変更部121による送信バッファのサイズの変更の要否は次のような基準で判断させることもできる。例えば、RTT、スループット、ACK密度、パケットロス量といった計測データのカテゴリ毎に、計測値に応じた適正送信バッファサイズを複数設定しておく。そして、送信バッファ変更部121は、これらを参照して送信バッファサイズを決定する。また、より望ましい形態において、送信バッファ変更部121が、これらの計測データから求めた送信バッファサイズのうち、最も小さい送信バッファサイズを選択させることができる。
もちろん、ネットワークの状況の変化の度合いに応じて、送信バッファのサイズの増減幅を変更することもできる。例えば、ネットワークの状況が前回の判定時点よりも極端に悪化している場合、送信バッファのサイズの減少幅を通常よりも大きい値にすることができる。また、例えば、ネットワークの状況が前回の判定時点よりも極端に良くなっている場合、送信バッファのサイズの増大幅を通常よりも大きい値にすることができる。もちろん、ネットワークの状況を示すスコアと、2つ以上の閾値とを比較することで、送信バッファのサイズの変更幅を段階的に変更してもよい。
TCP終端部101は、コンテンツサーバ300とProxyサーバ100間のTCPコネクション2と、通信端末200とProxyサーバ100間のTCPコネクション1とをそれぞれ終端する。また、TCP終端部101は、通信端末200とProxyサーバ100間のTCPコネクション1上のセッションについて、上記送信バッファ変更部121にて決定された送信バッファのサイズを適用してデータの送信を行う。当然に、通信端末200に通知するウィンドウサイズも、この送信バッファの空き容量に基づいて決定される。
また、TCP終端部101は、新規セッションの開始時に、セッション管理部131に保持されている既存セッションの計測情報を参照して送信バッファサイズの初期値を決定する。これにより、通信当初から適切なスループットを得ることが可能となる。
続いて、本実施形態の動作について図面を参照して詳細に説明する。図7は、本発明の第1の実施形態の動作を表したシーケンス図である。図7を参照すると、まず、通信端末200からコンテンツの送信要求(リクエスト)を受信したProxyサーバ100は、通信端末200との間にTCPコネクションを確立する。
次に、Proxyサーバ100は、コンテンツサーバ300との間にTCPコネクションを確立し、通信端末200からのコンテンツの送信要求(リクエスト)を送信する。
次に、Proxyサーバ100は、既存セッションの計測情報を参照して(S001)、送信バッファサイズの初期値を決定する(S002)。ここで例えば、Proxyサーバ100と通信端末200間に既存のセッションが存在する場合には、その計測値を用いて、送信バッファサイズの初期値を決定することができる。
前記リクエストを受けたコンテンツサーバ300が、コンテンツの送信要求(リクエスト)に対するACK、次いで、コンテンツの送信を行うと(レスポンス)、Proxyサーバ100は、これらを通信端末200に転送する。これにより、通信端末200でコンテンツの再生等が開始される。
以降、Proxyサーバ100は、所定の時間間隔で、ネットワークの状況の計測と(ステップS101、S201「NW計測」)と、送信バッファサイズの変更(ステップS102、S202「送信バッファ制御」)とを繰り返す。
以上により、セッションが終了するまで、Proxyサーバ100によるネットワークの状況に応じた送信バッファサイズの最適化が行われる。
続いて、本実施形態の効果について図面を用いて説明する。図8は、本発明の第1の実施形態の効果を説明するための図である。図8に示すように、既存のセッションがない状態でスロースタートを行って、伝送路上のスループットを超えるトラフィックが流入すると、パケットロスが計測される。また、パケットのロスによりRTTやスループットが低下するので、送信バッファのサイズの減少が実施される。以降は、所定の間隔で、ネットワークの状態が計測され、この計測結果に基づいた送信バッファのサイズのコントロールが行われる(図8の下段「送信バッファ制御実施」参照)。これにより、パケットロスの発生が抑止される。
その後、データの送信が止まった場合であっても、本実施形態のProxyサーバ100は、ネットワークの状態を計測しているため、送信バッファのサイズを維持する。このため、図8の右側に示すように、データの送信が再開された場合に、速やかに伝送路上の最大スループットに近いスループットを出すことが可能となっている。なお、前記送信バッファのサイズを維持する期間は一定期間でよく、その後は所定の初期値に戻しても良い。このようにすることで、Proxyサーバ100のリソースを有効に活用することができる。
また、本実施形態は複数のセッションが発生した場合において、よりその効果を発揮する。図9は、送信バッファのサイズの制御を行わない比較例において、連続して3つのセッションが開始された場合のパケットロスの発生箇所を示している。図9に示されたように、セッション1つであれば、帯域幅(通信路容量)に余裕がある場合であっても、セッションが2以上となると、伝送路上の最大スループットを超えて流入したパケットがロスとなる。
図10は、本実施形態の送信バッファのサイズ制御を実施した場合において、連続して3つのセッションが開始された場合のパケットロスの発生箇所を示している。図10に示されたとおり、セッション#2の開始後、伝送路上の最大スループットを超えて流入したパケットがロスとなるが、直ちに、送信バッファサイズの減少制御が行われるため、以降のセッション#2のパケットのロスは抑止される。そして、セッション#3の開始時は、セッション#2の計測データを用いて送信バッファのサイズ初期値が決定される。このため、初期輻輳ウィンドウとして大きな値が設定されていたとしても、セッション開始時から抑制された転送レートで通信を行うことが可能となっている。
さらに、本実施形態は、ネットワークの状況の変動にも柔軟に対応することが可能となっている。図11は、帯域制限のない状態から帯域制限20Mbpsに変化した際のスループットの変化を測定した図である。図11の破線は帯域が変化したタイミングを表している。上段のグラフは、本実施形態を用いた場合のスループットの変化を表している。また、中段のグラフは、CUBICアルゴリズムかつ広帯域専用設定で運用した際のスループットの変化を表している。また、下段のグラフは、CUBICアルゴリズムかつ狭帯域専用設定で運用した際のスループットの変化を表している。
中段のCUBIC広帯域専用設定では、波形が荒くスループットが不安定になっており、結果として再送継続時間や再送帯域(再送帯域ピーク値)も大きくなっている。一方、本実施形態では、再送継続時間及び再送帯域をそれぞれ小さくすることに成功している。その理由は、ネットワークの計測結果に基づいて、動的に送信バッファのサイズを追従させているためである。なお、下段のCUBIC狭帯域専用設定では、CUBIC広帯域専用設定よりも、再送継続時間や再送帯域(再送帯域ピーク値)が小さくなっているが、本実施形態には及ばない。
図12は、帯域制限20Mbpsが設定されている状態から帯域制限のない状態に変化した際のスループットの変化を測定した図である。図12の破線は帯域が変化したタイミングを表している。図12の上段のグラフは、本実施形態を用いた場合のスループットの変化を表している。また、中段、下段のグラフは、それぞれCUBICアルゴリズムの広帯域専用設定と狭帯域専用設定で運用した際のスループットの変化を表している。
中段のCUBIC広帯域専用設定では、帯域制限が設定されている区間の波形が荒くスループットが不安定になっており、パケットロスが発生している。一方、本実施形態では、帯域の変化の前後において、スループットは安定しており、かつ、CUBIC狭帯域専用設定との比較において、帯域制限がなくなった後のスループットの立ち上がりが早くなっている。
以上の本実施形態の効果は以下のようにまとめることができる。
(1)本実施形態では、計測済みのネットワーク状況に基づいて、新規セッションにも適切な送信バッファサイズを設定することができる(図9、図10参照)。
(2)本実施形態では、ネットワークの状況に応じて送信バッファサイズの調整が行われるため、パケットロスが減り、スループットも安定する(図8、図11、図12参照)。
(3)マルチセッション接続時において上記(1)、(2)の効果は発揮される。
以上、本発明の実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示したネットワーク構成、各要素の構成、メッセージの表現形態は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
例えば、上記した実施形態では、RTT、スループット、ACK密度及びパケットロスを計測するものとして説明したが、これらは、あくまでネットワークの状況を把握するための計測項目の一例である。RTT、スループット、ACK密度及びパケットロスのうち、いずれかの項目を省略し、または他の項目に置換することもできる。また、これらの項目の計測間隔は、Proxyサーバ100やネットワークに与える負荷や、測定精度などに応じて適宜設定することができる。また、これらの項目の計測間隔は、同一である必要はなく、項目毎に測定間隔を変えても良い。
また、上記した実施形態では、Proxyサーバ100に送信バッファサイズの制御を行わせるものとして説明したが、同様の制御をコンテンツサーバ300に行わせてもよい。
上記した実施形態では、Proxyサーバ100から通信端末200に向かう下りデータを制御の対象にするものとして説明したが、通信端末200からコンテンツサーバ300向けの上りデータについてもProxyサーバ100の制御の対象としてもよい。この場合、Proxyサーバ100は、図3のTCPコネクション2の最適化を行うことになる。
また、上記した実施形態に示した手順は、Proxyサーバ100として機能するコンピュータ(図14の9000)に、Proxyサーバ100としての機能を実現させるプログラムにより実現可能である。このようなコンピュータは、図14のCPU(Central Processing Unit)9010、通信インターフェース9020、メモリ9030、補助記憶装置9040を備える構成に例示される。すなわち、図14のCPU9010にて、ネットワーク状況の監視プログラムや送信バッファサイズ変更プログラムを実行し、その補助記憶装置9040等に保持された各計算パラメータの更新処理を実施させればよい。
即ち、上記した実施形態に示したProxyサーバ100の各部(処理手段、機能)は、Proxyサーバ100に搭載されたプロセッサに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することができる。
最後に、本発明の好ましい形態を要約する。
[第1の形態]
(上記第1の視点による通信装置参照)
[第2の形態]
上記した通信装置の監視部は、前記ネットワークの状態として、少なくとも該当セッションのスループット、RTT(Round−Trip Time)、パケットロスの発生割合の少なくとも1以上を監視する構成を採ることができる。
[第3の形態]
上記した通信装置の監視部は、前記ネットワークの状態として、単位時間当たりのACK受信パケットの受信数を監視することもできる。
[第4の形態]
上記した通信装置は、同一のTCPコネクションのネットワーク状態を示す測定済データを参照して、送信バッファのサイズの初期値を決定する構成を採ることもできる。
[第5の形態]
上記した通信装置は、コンテンツサーバと、前記コンテンツサーバに基地局を介してデータの送信を要求する通信端末との間に配置され、前記通信端末との間のTCPコネクションを終端するプロキシサーバとして機能する構成を採ることができる。
[第6の形態]
(上記第2の視点による通信方法参照)
[第7の形態]
(上記第3の視点によるプログラム参照)
なお、上記第6〜第7の形態は、第1の形態と同様に、第2〜第5の形態に展開することが可能である。
なお、上記の特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択(部分的削除を含む)が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
10、10a 通信装置
11 TCP終端部
12 監視部
13 転送レート制御部
20 データ送信先装置
30 データ送信元装置
100 Proxyサーバ
101 TCP終端部
111 RTT計測部
112 スループット計測部
113 ACK密度計測部
114 パケットロス計測部
121 送信バッファ変更部
131 セッション管理部
200 通信端末
300 コンテンツサーバ
400 基地局
9000 コンピュータ
9010 CPU
9020 通信インターフェース
9030 メモリ
9040 補助記憶装置

Claims (10)

  1. データ送信先の装置とのTCP通信を終端するTCP終端部と、
    前記データ送信先の装置との間のネットワークの状態をセッション単位で監視する監視部と、
    前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更する転送レート制御部と、
    を備える通信装置。
  2. 前記監視部は、前記ネットワークの状態として、少なくとも該当セッションのスループット、RTT(Round−Trip Time)、パケットロスの発生割合の少なくとも1以上を監視する請求項1の通信装置。
  3. 前記監視部は、前記ネットワークの状態として、単位時間当たりのACK受信パケットの受信数を監視する請求項1又は2の通信装置。
  4. 同一のTCPコネクションのネットワーク状態を示す測定済データを参照して、送信バッファのサイズの初期値を決定する請求項1から3いずれか一の通信装置。
  5. コンテンツサーバと、前記コンテンツサーバに基地局を介してデータの送信を要求する通信端末との間に配置され、前記通信端末との間のTCPコネクションを終端するプロキシサーバとして機能する請求項1から3いずれか一の通信装置。
  6. データ送信先の装置とのTCP通信を終端するTCP終端部を備えた通信装置が、
    前記データ送信先の装置との間のネットワークの状態をセッション単位で監視するステップと、
    前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更するステップと、
    を含む通信方法。
  7. 前記監視するステップにおいて、前記ネットワークの状態として、少なくとも該当セッションのスループット、RTT(Round−Trip Time)、パケットロスの発生割合の少なくとも1以上を監視する請求項6の通信方法。
  8. 前記監視するステップにおいて、前記ネットワークの状態として、単位時間当たりのACK受信パケットの受信数を監視する請求項6又は7の通信方法。
  9. 同一のTCPコネクションのネットワーク状態を示す測定済データを参照して、送信バッファのサイズの初期値を決定する請求項6から8いずれか一の通信方法。
  10. データ送信先の装置とのTCP通信を終端するTCP終端部を備えた通信装置に、
    前記データ送信先の装置との間のネットワークの状態をセッション単位で監視する処理と、
    前記ネットワークの状態に基づいて、該当セッションに適用する送信バッファのサイズを変更する処理と、
    を実行させるプログラム。
JP2020525788A 2018-06-22 2019-06-20 通信装置、通信方法及びプログラム Pending JPWO2019244966A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018118852 2018-06-22
JP2018118852 2018-06-22
PCT/JP2019/024439 WO2019244966A1 (ja) 2018-06-22 2019-06-20 通信装置、通信方法及びプログラム

Publications (1)

Publication Number Publication Date
JPWO2019244966A1 true JPWO2019244966A1 (ja) 2021-06-24

Family

ID=68983279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020525788A Pending JPWO2019244966A1 (ja) 2018-06-22 2019-06-20 通信装置、通信方法及びプログラム

Country Status (3)

Country Link
US (1) US11588736B2 (ja)
JP (1) JPWO2019244966A1 (ja)
WO (1) WO2019244966A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021241454A1 (ja) * 2020-05-27 2021-12-02 日本電気株式会社 障害検知システム、障害復旧システム、障害検知方法および非一時的なコンピュータ可読媒体
US11683250B2 (en) * 2021-10-22 2023-06-20 Palo Alto Networks, Inc. Managing proxy throughput between paired transport layer connections
WO2023179538A1 (zh) * 2022-03-23 2023-09-28 维沃移动通信有限公司 数据传输方法、装置、电子设备和存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4510524B2 (ja) 2004-06-03 2010-07-28 Kddi株式会社 データ通信装置
JP2007005894A (ja) 2005-06-21 2007-01-11 Canon Inc データ伝送装置及びその制御方法、並びに制御プログラム
WO2011079381A1 (en) * 2009-12-31 2011-07-07 Bce Inc. Method and system for increasing performance of transmission control protocol sessions in data networks
JP6010903B2 (ja) * 2011-12-09 2016-10-19 富士通株式会社 無線通信装置、無線通信方法および無線通信プログラム
EP2819353A4 (en) 2012-02-24 2015-05-20 Hitachi Ltd COMMUNICATION DEVICE
JP6244836B2 (ja) * 2013-11-12 2017-12-13 富士通株式会社 通信装置及びパケット制御方法
JP2016136701A (ja) 2015-01-23 2016-07-28 株式会社Nttドコモ 端末及び通信方法
WO2017119408A1 (ja) 2016-01-07 2017-07-13 日本電気株式会社 送信データ量制御装置、方法および記録媒体
GB2567149B (en) * 2017-09-29 2021-11-03 Bridgeworks Ltd Managing data Compression

Also Published As

Publication number Publication date
WO2019244966A1 (ja) 2019-12-26
US20210266261A1 (en) 2021-08-26
US11588736B2 (en) 2023-02-21

Similar Documents

Publication Publication Date Title
JP4407700B2 (ja) 通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラム
US8867354B2 (en) Transmission control method, transmission control system, communication device and recording medium of transmission control program
JP2019520745A (ja) 同時接続の総スループットを改善するためのシステム及び方法
JP2018508151A (ja) 伝送制御プロトコルtcpデータパケットを送信する方法及び装置、並びにシステム
JP2017509265A (ja) 伝送制御方法、装置およびシステム
KR20090055550A (ko) 통신 장치
US9167473B2 (en) Communication processing method, apparatus and gateway device
WO2017119408A1 (ja) 送信データ量制御装置、方法および記録媒体
JPWO2019244966A1 (ja) 通信装置、通信方法及びプログラム
JP4269176B2 (ja) セッション中継装置及び中継方法
US20130058212A1 (en) Optimization of the transmission control protocol particularly for wireless connections
Wallace et al. Concurrent multipath transfer using SCTP: Modelling and congestion window management
CN104683259A (zh) Tcp拥塞控制方法及装置
JP2013175850A (ja) 通信装置および通信システム
US20160277943A1 (en) Network system, control method of network system, communication device, and program
US9882820B2 (en) Communication apparatus
WO2019124290A1 (ja) 送信データ量制御装置、方法および記録媒体
JP6954460B2 (ja) 中継装置、データ中継方法及びプログラム
JP4915415B2 (ja) 通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラム
JP6897769B2 (ja) データ送信装置、方法およびプログラム
WO2018028638A1 (zh) 一种信息传输方法、装置、系统、相关设备和存储介质
JP6544353B2 (ja) 送信データ量制御装置、制御システム、制御方法および制御プログラム
WO2018056406A1 (ja) プロトコル終端装置、中継方法、プログラム
JP6145190B1 (ja) 中継装置、中継方法及び中継プログラム
JP2011254296A (ja) 情報処理装置および情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230425

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20231017