JP7456445B2 - 通信制御方法、通信装置及び通信システム - Google Patents

通信制御方法、通信装置及び通信システム Download PDF

Info

Publication number
JP7456445B2
JP7456445B2 JP2021538648A JP2021538648A JP7456445B2 JP 7456445 B2 JP7456445 B2 JP 7456445B2 JP 2021538648 A JP2021538648 A JP 2021538648A JP 2021538648 A JP2021538648 A JP 2021538648A JP 7456445 B2 JP7456445 B2 JP 7456445B2
Authority
JP
Japan
Prior art keywords
bit rate
resolution
video
distributed
terminal
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.)
Active
Application number
JP2021538648A
Other languages
English (en)
Other versions
JPWO2021024456A1 (ja
JPWO2021024456A5 (ja
Inventor
亜南 沢辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JPWO2021024456A1 publication Critical patent/JPWO2021024456A1/ja
Publication of JPWO2021024456A5 publication Critical patent/JPWO2021024456A5/ja
Application granted granted Critical
Publication of JP7456445B2 publication Critical patent/JP7456445B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop

Description

本発明は、通信制御方法、通信装置及び通信システムに関する。
モバイル通信網の発展に伴い、スマートフォン等の移動体端末にて動画等のコンテンツを視聴する機会が増加している。動画配信サービスでは、端末がネットワーク上のサーバに対して動画配信リクエストを送信する。サーバは、当該リクエストに応じた動画データを端末に配信する。
上記の動画配信リクエストやその応答に関するメッセージ(パケット)は、モバイル通信網を介して転送される。モバイル通信網では、QoS(Quality of Service)やQoE(Quality of Experience)を確保するためのトラフィック制御が行われることがある。
特許文献1には、複数のストリーミングビデオトラフィックに対応する通信ネットワーク内の輻輳制御のための方法が開示されている。
特許文献2には、ネットワーク帯域幅を効率的に利用して、より良い動画データ配信品質をユーザに提供することができる、と記載されている。
特許文献3には、動画配信サーバが複数の配信モードで動画データの配信を行う場合に、動画再生ビットレートの推定精度を向上させる技術が開示されている。
特表2016-508316号公報 特開2017-028700号公報 国際公開第2019/044065号
上述のように、中継装置(プロキシサーバ)にてトラフィック制御が実施されることがある。例えば、動画の解像度とビットレートの関係は固定であるという前提でトラフィック制御が行われることがある。
上記トラフィック制御を実施することで、配信される動画が要求する以上の帯域を確保する必要がなくなりネットワークの輻輳を避けることができるなど一定の効果が期待できる。しかし、上記のようなトラフィック制御では、動画の解像度とビットレートの関係を固定的に扱っており、実情に合致しないという問題がある。
具体的には、動画の内容が異なれば、同じ解像度であっても必要とされるビットレートは異なる。例えば、動きの激しい動画と静止画に近いような動画では、同じ解像度であっても要求されるビットレートが異なる(動きの激しい動画の方がより高いビットレートを要求する)。例えば、風景のように複雑な配色の動画と、単色を用いる動画では、同じ解像度であっても要求されるビットレートが異なる(複雑な配色の動画の方がより高いビットレートを要求する)。
従って、上記予め用意された解像度とビットレートの関係を用いてトラフィック制御を行うと、端末側で目標とする解像度の動画が再生されない可能性がある。例えば、動きの激しい動画の場合には転送レートが足りず、目標とする解像度より低い解像度で動画が再生される可能性がある(端末が目標よりも低い解像度の動画配信をサーバに要求する)。
対して、静止画に近いような動画を再生した場合には中継装置の転送レートは動画が要求するビットレートよりも高く、目標とする解像度よりも高い解像度の動画が再生される可能性がある(端末が目標よりも高い解像度の動画配信をサーバに要求する)。
例えば、風景のように複雑な配色の動画の場合には転送レートが足りず、目標とする解像度よりも低い解像度で動画再生される可能性がある(端末が目標よりも低い解像度の動画配信をサーバに要求する)。
対して、単色を用いる動画を再生した場合には中継装置の転送レートは動画が要求するビットレートよりも高く、目標とする解像度よりも高い解像度の動画が再生される可能性がある(端末が目標よりも高い解像度の動画配信をサーバに要求する)。
さらに、上記トラフィック制御は、端末からサーバに要求されるパケットを解析し、配信される動画の解像度が取得できることを前提としている。しかし、近年、端末とサーバ間の通信が暗号化される傾向が強くなっており、中継装置にて動画の解像度を取得することが困難になってきている。その結果、上記説明したトラフィック制御自体が困難になってきている。
なお、上記問題は特許文献1等に開示された技術を適用しても解決することはできない。具体的には、特許文献1では、パケットが暗号化されていないことを前提としており、暗号化されたトラフィックの制御は考慮されていない。また、特許文献2では、動画ごとに求められている品質について考慮されておらず、上記説明した問題(動画によってペーシングレートの過不足が発生)が生じうる。
このように、動画配信の現状では、配信動画に対してトラフィック制御を実施しつつ、端末にて再生される解像度を変更することが困難である。
本発明は、配信動画の解像度を変更可能とすることに寄与する、通信制御方法、通信装置及び通信システムを提供することを主たる目的とする。
本発明の第1の視点によれば、配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定し、前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出すること、を含む通信制御方法が提供される。
本発明の第2の視点によれば、配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定する、第1の推定部と、前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出する、算出部と、を備える通信装置が提供される。
本発明の第3の視点によれば、端末と、前記端末に動画を配信する、動画配信サーバと、前記端末と前記動画配信サーバの間の通信を中継する、通信装置と、を含み、前記通信装置は、配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定する、第1の推定部と、前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出する、算出部と、を備える、通信システムが提供される。
本発明の各視点によれば、配信動画の解像度を変更可能とすることに寄与する、通信制御方法、通信装置及び通信システムが提供される。なお、本発明により、当該効果の代わりに、又は当該効果と共に、他の効果が奏されてもよい。
一実施形態の概要を説明するための図である。 第1の実施形態に係る通信システムの概略構成の一例を示す図である。 第1の実施形態に係るプロキシサーバの処理構成の一例を示す図である。 第1の実施形態に係るビットレート推定部の動作を説明するための図である。 第1の実施形態に係るビットレート推定部の動作を説明するための図である。 第1の実施形態に係るビットレート推定部の動作を説明するための図である。 解像度ごとの確率密度関数の一例を示す図である。 解像度ごとのビットレートの累積分布関数の一例を示す図である。 ビットレート情報の一例を示す図である。 第1の実施形態に係るビットレート情報生成部の動作の一例を示すフローチャートである。 第1の実施形態に係るプロキシサーバの別の処理構成の一例を示す図である。 第1の実施形態に係る通信制御部の動作の一例を示すフローチャートである。 第1の実施形態に係るプロキシサーバの動作の一例を示すフローチャートである。 解像度対ビットレートの分布の一例を示す図である。 解像度対ビットレート(対数)の分布の一例を示す図である。 第2の実施形態に係るビットレート情報生成部の動作の一例を示すフローチャートである。 第2の実施形態の変形例に係るビットレート情報生成部の動作の一例を示すフローチャートである。 プロキシサーバのハードウェア構成の一例を示す図である。
はじめに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
一実施形態に係る通信装置100は、第1の推定部101と、算出部102と、を含む(図1参照)。第1の推定部101は、配信動画のトラフィックに基づいて配信動画の第1の解像度を推定する。算出部102は、第1の解像度に基づいて配信動画を第2の解像度で配信するための第1のビットレートを算出する。
ここで、ネットワーク上にて端末とサーバ間のパケット転送に関してトラフィック制御が行われることがある。具体的には、ネットワーク上にパケットの中継を行う中継装置(所謂、プロキシサーバ)を設け、当該中継装置がトラフィック制御を行う。
例えば、中継装置は、端末からサーバに送信される動画リクエストを解析し、端末がサーバに要求している動画品質(例えば、解像度)を推定する。中継装置は、当該推定した動画品質(解像度)と、予め用意された「解像度とビットレートの対応関係」を示す情報と、に基づいて配信されている動画のビットレートを推定する。例えば、「解像度が144pの場合は200kbpsのビットレート」、「解像度が240pの場合は400kbpsのビットレート」といったような情報が予め用意され、当該情報に推定した解像度を当て嵌めることで配信されている動画のビットレートが推定される。
中継装置は、当該推定されたビットレートをサーバから端末に送信されるパケットの転送レート(ペーシングレート)に設定する。しかし、上記のようなトラフィック制御では、動画の解像度とビットレートの関係を固定的に扱っており、実情に合致しないという問題がある。
一方、通信装置100は、動画配信サーバから配信中の動画の解像度を推定する。詳細に関しては後述するように、動画の解像度とビットレートの間には所定の関係が認められる(例えば、図7、図8の統計情報を参照)。通信装置100は、当該解像度とビットレートの間の関係を利用し、配信動画の解像度を変更した際のビットレートを算出する。当該算出されたビットレートに基づきトラフィック制御が実施されることで、ユーザは解像度が変更された動画の視聴が可能となる。即ち、通信装置100によって配信動画の解像度が変更可能となる。
以下に具体的な実施形態について、図面を参照してさらに詳しく説明する。
[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
図2は、第1の実施形態に係る通信システムの概略構成の一例を示す図である。図2を参照すると、通信システムには、端末10と、モバイル通信網20と、動画配信サーバ30と、が含まれる。
端末10と動画配信サーバ30は、モバイル通信網20を介して接続されている。
ユーザは、端末10を使用して動画を視聴する。端末10にインストールされた動画再生アプリケーションは、再生動画の品質(解像度、ビットレート)を知ることができる。端末10は、再生動画の品質を液晶ディスプレイ等に表示してもよい。
端末10には、スマートフォン、携帯電話機、ゲーム機、タブレット等の携帯端末装置やコンピュータ(パーソナルコンピュータ、ノートパソコン)等が例示される。
動画配信サーバ30は、端末10からの要求に応じて動画を配信する装置である。
モバイル通信網20には、ルータ21及び22と、ロードバランサ23と、複数のプロキシサーバ24と、が含まれる。さらに、モバイル通信網20には、サービスコントローラ(SC;Service Controller)25と、ポリシ及び課金ルールサーバ(PCRF;Policy and Charging Rules Function)26と、ログ収集サーバ27と、ログ表示サーバ28と、が含まれる。
ロードバランサ23は、ルータ21及び22を介してモバイル通信網20に入力されたパケットを取得する。ロードバランサ23は、複数のプロキシサーバ24の負荷が均一になるように、各プロキシサーバ24に割り振るパケットを決定する。
プロキシサーバ24は、端末10と動画配信サーバ30の間の通信を中継する装置である。例えば、プロキシサーバ24は、端末10と動画配信サーバ30の間のトラフィック制御を行う。プロキシサーバ24の詳細は後述するが、プロキシサーバ24は、ユーザが動画を快適に視聴するための解像度が選択されるようにトラフィック制御を実行する。その際、プロキシサーバ24は、ユーザが動画を快適に視聴するための解像度を選択するポリシを参照する。
プロキシサーバ24は、上述の通信装置100に相当する装置である。プロキシサーバ24は、配信動画のトラフィックに基づいて配信動画の第1の解像度を推定する機能(第1の推定部)と、第1の解像度に基づいて配信動画を第2の解像度で配信するための第1のビットレートを算出する機能(算出部)を備える。さらに、プロキシサーバ24は、第1のビットレートに基づき、配信動画のトラフィック制御を行う機能(制御部)も備える。
サービスコントローラ25は、プロキシサーバ24がトラフィック制御等を実行する際に必要となる情報を制御する装置である。具体的には、サービスコントローラ25は、ポリシ及び課金ルールサーバ26からトラフィック制御に関するポリシや端末10に関する課金ルールをプロキシサーバ24に入力する。
ログ収集サーバ27は、各プロキシサーバ24における通信ログを収集する装置である。ログ収集サーバ27は、収集したログをログ表示サーバ28に送信する。ログ表示サーバ28は、受信したログの解析等を行うことでログ情報を生成する。ログ表示サーバ28は、当該生成されたログ情報を表示する(システム管理者にログ情報を提供する)。
続いて、図2を参照しつつ、第1の実施形態に係る通信システムの動作の概略を説明する。
端末10が、モバイル網を介して、動画配信サーバ30に対して動画リクエストを送信する。
動画配信サーバ30は、当該リクエストに応じて動画(動画データを格納したパケット)を端末10に向けて送信する。なお、動画リクエストは暗号化されており、プロキシサーバ24は、当該リクエストに記載された内容、情報を得ることができない。プロキシサーバ24は、どのような解像度、ビットレートの動画が動画配信サーバ30から配信されてくるか知ることができない。
プロキシサーバ24は、ロードバランサ23を介して取得したパケットに基づいて、動画配信サーバ30が配信している動画のビットレートを推定する。プロキシサーバ24は、端末10から送信される配信動画の再生に関するリクエストに基づき配信中の動画に関するビットレートを推定する。以降の説明において、プロキシサーバ24にて推定される動画のビットレートを「推定ビットレート」と表記する。
プロキシサーバ24は、推定ビットレートを用いて、動画配信サーバ30から配信されている動画の解像度を推定する。その際、プロキシサーバ24は、上記推定されたビットレートと複数の配信動画の解像度に関する統計情報(例えば、確率密度関数や累積分布関数)を用いて、上記解像度を推定する。以降の説明において、プロキシサーバ24にて推定される動画の解像度を「推定解像度」と表記する。
プロキシサーバ24は、動画配信サーバ30から配信されている動画の解像度を変更した場合に、当該変更された解像度の動画をユーザが視聴できるようなビットレートを算出する。プロキシサーバ24は、動画配信サーバ30から配信されている動画の解像度を変更(例えば、動画の解像度を下げる変更)した場合、当該解像度が変更された動画が端末10にて再生されるビットレートを算出する。
当該ビットレートの算出は、動画配信サーバ30から配信される動画が取り得る解像度ごとに実行される。当該動画が取り得る解像度に関する情報は、予めプロキシサーバ24に入力しておく。あるいは、プロキシサーバ24は、動画配信サーバ30に直接アクセスし、動画配信サーバ30が取り扱い可能な解像度に関する情報を取得してもよい。例えば、動画配信サーバ30が、144p、240p、360pの各解像度で動画の配信が可能な場合を考える。この場合、プロキシサーバ24は、144pの解像度で動画が再生されるためのビットレート、240pの解像度で再生されるためのビットレート、360pの解像度で再生されるためのビットレートをそれぞれ算出する。
上記説明したように、プロキシサーバ24は、動画の解像度ごとに当該解像度の動画が端末10にて再生されるためのビットレートを算出する。以降の説明において、動画の解像度と、当該解像度の動画が端末10で再生されるためのビットレートと、を対応付けた情報(解像度とビットレートの対応情報)を「ビットレート情報」と表記する。
プロキシサーバ24は、外部(サービスコントローラ25等)から設定されたポリシを参照し、動画配信サーバ30から配信される動画の解像度に関する目標値を決定する。以降の説明において、プロキシサーバ24が参照するポリシを「解像度選択ポリシ」と表記する。解像度選択ポリシは、端末10で再生される動画の解像度の決定に関するポリシである。プロキシサーバ24が当該解像度選択ポリシを参照して決定する解像度の目標値を「ターゲット解像度」と表記する。
プロキシサーバ24は、解像度選択ポリシに従って決定したターゲット解像度で配信動画が再生されるようにトラフィック制御を行う。例えば、プロキシサーバ24は、ビットレート情報を参照し、ターゲット解像度に対応するビットレートを特定する。プロキシサーバ24は、当該特定したビットレートで動画が端末10にて再生されるように動画配信サーバ30から端末10に向けたパケット転送を制御する。
例えば、動画配信サーバ30が480pの動画を配信しており、当該動画の解像度を360pに下げる場合について考える。この場合、プロキシサーバ24は、端末10における動画再生が360pの解像度となるようにスループット(転送レート、ペーシングレート)を調整する。具体的には、プロキシサーバ24は、端末10が動画配信サーバ30に対して、解像度が360pの動画を配信するように指示するようにスループットを低くする。スループットが低下すると、端末10では480pの動画再生が途切れるなど動画再生に支障が生じる。そのため、端末10は、現状の解像度(480p)よりも低い解像度(360p)の動画配信を動画配信サーバ30に依頼する。
なお、図2に示す構成は例示であって、通信システムの構成を限定する趣旨ではない。例えば、図2には1台の端末10を図示しているが、通信システムには多数の端末10が含まれ得る。また、図2では、モバイル通信網20と動画配信サーバ30が直接接続されているように記載されているが、インターネット等のネットワークを介してモバイル通信網20と動画配信サーバ30が接続されていてもよい。
図3は、第1の実施形態に係るプロキシサーバ24の処理構成(処理モジュール)の一例を示す図である。図3を参照すると、プロキシサーバ24は、通信制御部201と、ビットレート推定部202と、ビットレート情報生成部203と、ターゲット解像度決定部204と、ペーシングレート決定部205と、記憶部206と、を含んで構成される。
通信制御部201は、ロードバランサ23から取得したパケットに関する通信制御を行う手段である。具体的には、通信制御部201は、端末10から取得したパケットを動画配信サーバ30に向けて送信し、動画配信サーバ30から取得したパケットを端末10に向けて送信する。
通信制御部201は、動画配信サーバ30から送信されるパケット(動画配信パケット)に関するトラフィック制御を実施する。例えば、通信制御部201は、動画配信サーバ30から端末10に向けて送信されたパケットの転送をペーシングレート決定部205が決定したペーシングレートにより行う。
通信制御部201は、ペーシングレート決定部205からペーシングレートを取得していない場合には予め定めたペーシングレートによりトラフィック制御を実施してもよいし、トラフィック制御を実施しなくともよい。
通信制御部201は、上記トラフィック制御をユーザごと(端末10ごと)に実施する。
通信制御部201は、ロードバランサ23から取得したパケットの複製をビットレート推定部202に引き渡す。
ビットレート推定部202は、当該取得したパケットに基づいて、動画配信サーバ30から配信されている動画のビットレートを推定する手段である。上述のように、端末10と動画配信サーバ30との間の通信は暗号化されていることが多く、プロキシサーバ24は、端末10が動画配信サーバ30に要求した動画の品質(解像度、ビットレート)を知ることができない。
端末10と動画配信サーバ30の間の通信が暗号化されている場合であっても、ビットレート推定部202は、端末10と動画配信サーバ30間で送受信される暗号化パケット(暗号化トラフィック)を解析し、当該動画のビットレートを推定する。
なお、ビットレート推定部202は、特許文献3に開示された技術を用いて動画のビットレートを推定できるのでその詳細な説明を省略する。ビットレート推定部202は、概略、以下のような動作によりビットレートを推定する。
ビットレート推定部202は、動画配信サーバ30から配信される動画が有する特徴に着目してビットレートを推定する。
具体的には、端末10にインストールされた動画視聴アプリケーションが、動画視聴開始時点から所定の時間経過後にリクエストパケットの送信間隔を変更することで、動画配信サーバからの動画配信パターンが変化する。このときの動画配信モードはThrottlingと称される。なお、Throttlingの前の動画配信モードはInitial Burstと称される。Initial Burstでは、端末10からリクエストを連続的に受け付け、要求された動画データ(チャンク)が連続的に端末10に送信される。連続的に送信された動画データは、端末10にてバッファリングされる。
上記説明したように、端末10にインストールされた動画視聴アプリケーションは、通信開始から所定時間(例えば、5秒程度)経過後に、リクエストパケットの送信間隔を変更する。その結果、配信モードがThrottlingに切り替わる。Throttlingモードの動画配信サーバ30は、単位時間あたりに受け付けるリクエストを制限する。図4に示されるように、Initial BurstとThrottlingの各配信モードでは、通信トラフィックのパターンが異なっている。上述したように、Initial BurstとThrottlingでは、端末10から送信されるリクエストの送信間隔が異なる。ビットレート推定部202は、当該事実に着目し、リクエストの送信間隔に対して閾値処理を実行することで、Initial Burst又はThrottlingを判別する。
なお、端末10と動画配信サーバ30の間の通信が暗号化されている場合には、ビットレート推定部202は、端末10から動画配信サーバ30に送信されるパケットを動画配信リクエストとして取り扱えばよい。
ここで、図5を参照すると、Initial Burstのスループット(平均スループット)と既知の再生ビットレートの間には高い相関関係があることがわかる。対して、図6を参照すると、Throttlingのスループット(平均スループット)と既知の再生ビットレートの間の相関関係は低いことがわかる。
ビットレート推定部202は、このようなInitial BurstとThrottlingの違いに着目し、正解再生レートとの相関が高いInitial Burstのスループットを用いて配信動画のビットレートを推定する。具体的には、ビットレート推定部202は、配信動画のInitial Burstにおけるスループットの平均値を推定ビットレートに設定する。
ビットレート推定部202は、推定したビットレート(推定ビットレート)をビットレート情報生成部203に通知する。
ビットレート情報生成部203は、上述の「ビットレート情報」を生成する手段である。繰り返しとなるが、ビットレート情報は、動画配信サーバ30から配信されている動画の解像度を可変した場合における、動画の解像度と、当該解像度が端末で再生されるためのビットレートと、を対応付けた情報である。
ビットレート情報生成部203は、ビットレート推定部202から取得した推定ビットレートと、記憶部206に予め格納された「解像度ごとの確率密度関数」と、を用いて配信されている動画の解像度を推定する。
解像度ごとの確率密度関数は、多数の動画に関して、その解像度とビットレートの関係を収集することで生成できる。具体的には、動画のビットレートを確率変数に設定し、各確率変数が取り得る確率を求めることで解像度ごとの確率密度関数を得ることができる。
記憶部206に格納された解像度ごとの確率密度関数を図示すると、例えば、図7に示すようなグラフが得られる。図7に示すように、解像度ごとの確率密度関数により、各解像度に対するビットレートの分布を得ることができる。図7を参照すると、解像度が低い動画に関しては要求されるビットレートが低く、解像度が高くなるについて要求されるビットレートが高くなることが理解される。
ビットレート情報生成部203は、ビットレート推定部202から取得した推定ビットレートを解像度ごとの確率密度関数に入力し、解像度ごとに推定ビットレートにおける確率を計算する。ビットレート情報生成部203は、複数の計算結果から最大値を特定する。ビットレート情報生成部203は、当該最大値に対応する解像度を特定する。上記ビットレート情報生成部203の動作は、下記の式(1)として表現できる。ビットレート情報生成部203は、式(1)を用いて配信中の動画の推定解像度Qを算出する。
Figure 0007456445000001
なお、式(1)において、Q(res)は、各解像度に対応した推定ビットレートの確率を示す。また、arg maxは、引数のなかから最大値を選択する関数である。
図7を参照すると、推定ビットレートがB1であれば、解像度360pの確率が最も高いので360pが推定ビットレートに対応する推定解像度として特定される。
ビットレート情報生成部203は、推定ビットレートと、推定解像度と、解像度ごとのビットレートの累積分布関数と、を用いて、ビットレート情報を生成する。解像度ごとのビットレートの累積分布関数CDF(x)は、下記の式(2)に示すように、解像度ごとの確率密度関数PDF(x)を使って算出することができる。
Figure 0007456445000002
なお、解像度ごとのビットレートの累積分布関数は、式(2)に示すように確率密度関数から導出することができるが、予め、累積分布関数を算出して記憶部206に格納しておいてもよい。図8は、解像度ごとのビットレートの累積分布関数の一例を示す図である。
ビットレート情報生成部203は、推定解像度に対応する累積分布関数に推定ビットレートを入力し、推定解像度以下となる確率を計算する。以降の説明において、上記計算された確率を「ビットレート一致確率」と表記する。
ビットレート情報生成部203は、ビットレート一致確率と、推定解像度に対応する累積分布関数以外の関数と、を用いて、各解像度について、ビットレート一致確率となるビットレートを算出する。
例えば、ビットレート情報生成部203は、「推定解像度に対応する累積分布関数以外の関数」について逆関数を算出し、当該逆関数にビットレート一致確率を入力して上記ビットレートを算出してもよい。あるいは、ビットレート情報生成部203は、「推定解像度に対応する累積分布関数以外の関数」において、ビットレートを可変していき累積分布関数の出力がビットレート一致確率となるビットレートを特定してもよい。
例えば、図8を参照すると、推定解像度が360p及び推定ビットレートがB1の場合、ビットレート一致確率は「P1」となる。当該ビットレート一致確率P1となるビットレートとして、144pに関してはb2が、240pに関してはb3が、それぞれ算出される。
ビットレート情報生成部203は、解像度と上記算出されたビットレートを対応付けて「ビットレート情報」を生成する。ビットレート情報生成部203は、例えば、図9に示すような情報を「ビットレート情報」として生成する。
ビットレート情報生成部203は、当該生成したビットレート情報を記憶部206に格納する。
ビットレート情報生成部203の動作をまとめると図10に示すフローチャートのとおりとなる。
ビットレート情報生成部203は、推定ビットレートと、記憶部206に格納された解像度ごとのビットレートの確率密度関数と、を用いて推定ビットレートに対する各解像度の確率Q(res)を算出する(ステップS101)。
ビットレート情報生成部203は、上記解像度の確率Q(res)のうち最大値を取る解像度を特定することで、推定解像度を算出する(ステップS102)。
ビットレート情報生成部203は、推定ビットレート、推定解像度及び解像度ごとのビットレートの累積分布関数を用いてビットレート一致確率を算出する(ステップS103)。
ビットレート情報生成部203は、解像度ごとに、ビットレート一致確率になるビットレートを特定し、解像度と当該ビットレートを対応付けることでビットレート情報を算出する(ステップS104)。
なお、上記ビットレート一致確率を用いたビットレート情報の生成は以下のような知見に基づく。特定の動画における解像度が、例えば、360pとすると、当該360pのビットレートが動画全体の30%程度に位置するならば、同一動画の他の解像度(144p、240pなど)に関しても同様に30%程度の位置にビットレートが存在する。例えば、第2の実施形態にて説明に使用する図14や図15のビットレート対解像度分布を参照すると、ビットレートが低い動画は解像度を変えても全体の動画のなかで低いビットレートを維持する。同様に、ビットレートが高い動画は解像度を変えても全体の動画の中で高いビットレートを維持する。即ち、図14や図15は、動画全体に対して、ある特定の動画の解像度を変えたときのビットレートの位置は維持されることを示す。例えば、動画Aについて、720pで動画全体の上位5%の位置のビットレートを示す場合、当該動画Aの解像度を360pに変えたときのビットレートは、全動画の360pのビットレート分布の上位5%位置のビットレートと等しくなるもしくは類似する。
ターゲット解像度決定部204は、例えば外部から取得した解像度選択ポリシに基づき、ターゲット解像度を決定する手段である。解像度選択ポリシは、記憶部206に格納されている。解像度選択ポリシは、端末10ごとに用意されてもよいし、各端末10に共通のポリシが用意されてもよい。端末10ごとに解像度選択ポリシを用意する場合には、端末10の識別子(例えば、IP(Internet Protocol)アドレス、MAC(Media Access Control)アドレス)と解像度選択ポリシが対応付けられて管理される。
例えば、解像度選択ポリシには「推定解像度(Initial Burst時の推定解像度)に対するN段階下の解像度をターゲット解像度とする」等が記載されている。ターゲット解像度決定部204は、当該記載に基づき推定解像度からN段階下げた解像度をターゲット解像度に選択する。
例えば、配信動画が取り得る解像度が「480p」、「360p」、「240p」、「144p」であって、推定解像度が「480p」、解像度選択ポリシに記載された解像度の下げ幅Nが「3」であれば、「144p」がターゲット解像度に選択される。
なお、上記「推定解像度に対するN段階下の解像度をターゲット解像度とする」は、解像度選択ポリシの一例である。解像度選択ポリシには種々の内容を設定することができる。
例えば、解像度選択ポリシには以下の内容のような内容が含まれていてもよい。
・顧客が指定した解像度
例えば、顧客(端末10のユーザ)が、キャリアに対して動画配信の際の解像度を指定していた場合には、当該指定された解像度が解像度選択ポリシに記載される。
・スループット制限値に対する最大の解像度
例えば、端末10のユーザの料金プランよって当該端末10へのスループットの上限値が決まっている場合には、当該スループットに対応する解像度の最大値が解像度選択ポリシに記載される。
ターゲット解像度決定部204は、ターゲット解像度をペーシングレート決定部205に通知する。
ペーシングレート決定部205は、動画配信サーバ30から配信された動画を端末10に転送する際のペーシングレート(スループット、転送レート)を決定する手段である。その際、ペーシングレート決定部205は、端末10にて再生される動画の解像度がターゲット解像度となるようにペーシングレートを決定する。
例えば、ペーシングレート決定部205は、下記の式(3)に基づきペーシングレートx(t)を決定する。
Figure 0007456445000003
なお、式(3)に記載されたβは、ターゲット解像度から特定されるビットレート(式(3)のbitrate of target resolution)に乗算する定数である。定数βは、機械学習等により予め算出することができる。
具体的には、図11に示すように、プロキシサーバ24に学習部207を設け、当該学習部207がβを算出してもよい。
例えば、学習部207は、強化学習によりβを決定することができる。
学習部207は動画の状態(リクエスト間隔、チャンクサイズ)を観測しつつ、βを変化させる。
βを変化させた結果の動画を観測者が視聴する。
観測者は、視聴した動画がターゲット解像度で再生されていれば、報酬を学習部207に与える。観測者は、視聴した動画がターゲット解像度で再生されていなければ、報酬を学習部207に与えない。
このように、βの強化学習において、状態空間を観測スループット(リクエスト間隔、チャンクサイズ)に設定し、行動空間をβに設定し、報酬空間をターゲット解像度であるか否かに設定することで、学習部207は定数βを決定できる。
上記式(3)に従ったペーシングレートの設定は例示であって、ペーシングレート決定部205は、ターゲット解像度の一段上の解像度に対応するビットレートをペーシングレートとしてもよい。
例えば、図9の例では、ターゲット解像度が「144p」であれば、ペーシングレート決定部205は、解像度144pの一段上のビットレートb3をペーシングレートに選択してもよい。当該ペーシングレートの設定は、ビットレート情報に記載されたターゲット解像度のビットレートをそのままペーシングレートに設定すると、ペーシングレートに十分な余裕がなく、結果的に1段下の解像度にて動画が再生される場合であっても、当初想定したターゲット解像度による動画再生がなされる。
ペーシングレート決定部205は、決定したペーシングレートを通信制御部201に通知する。
通信制御部201は、取得したペーシングレートで動画配信サーバ30から端末10へのパケットが転送されるように制御する。
図12は、第1の実施形態に係る通信制御部201によるトラフィック制御の一例を示すフローチャートである。
通信制御部201は、パケットを受信する(ステップS201)。
通信制御部201は、付加遅延量を算出する(ステップS202)。具体的には、通信制御部201は、受信パケットのサイズをペーシングレート(目標スループット)で除算することで付加遅延量を計算する。
通信制御部201は、受信パケットを端末10に向けて送信する(ステップS203)。
通信制御部201は、付加遅延量に相当する時間待機する(ステップS204)。
通信制御部201は、動画の再生が終了したか否かを判定する(ステップS205)。具体的には、通信制御部201は、直前にパケットを受信してから所定の時間経過しても次のパケットを受信できない場合に「動画の再生が終了」と判断する。通信制御部201は、直前にパケットを受信してから所定の時間以内に次のパケットが受信できた場合に「動画の再生は継続」と判断する。
動画の再生が終了していれば(ステップS205、Yes分岐)、通信制御部201は処理を終了する。動画の再生が終了していなければ(ステップS205、No分岐)、通信制御部201はステップS201に戻り処理を継続する。
第1の実施形態に係るプロキシサーバ24の動作をまとめると図13に示すフローチャートのとおりとなる。
プロキシサーバ24は、Initial Burst時のパケットを受信し、当該受信パケットから動画のビットレートを推定する(ステップS01)。
プロキシサーバ24は、推定ビットレート、解像度ごとの確率密度関数を用いて動画の解像度を推定する(ステップS02)。
プロキシサーバ24は、推定ビットレート、推定解像度及び解像度ごとの累積分布関数を用いてビットレート情報を生成する(ステップS03)。
プロキシサーバ24は、解像度選択ポリシを参照し、ターゲット解像度を決定する(ステップS04)。
プロキシサーバ24は、ターゲット解像度とビットレート情報を用いてペーシングレートを決定する(ステップS05)。
プロキシサーバ24は、決定されたペーシングレートに基づきトラフィック制御を実行する(ステップS06)。プロキシサーバ24は、ターゲット解像度にて動画が再生されるように端末10に転送されるパケットの流量を調整する。
このように、プロキシサーバ24は、ステップS04及びS05の処理を実行することで、現在のビットレートではなく、ユーザが動画を視聴するための解像度(ターゲット解像度)に対応したビットレートを特定する。プロキシサーバ24は、当該特定されたビットレートが実現されるように、動画配信サーバ30から端末10に転送されるフローの流量調整(流量制御)を行う。
以上のように、第1の実施形態に係るプロキシサーバ24は、配信動画のビットレートを推定し、当該推定されたビットレートと事前に用意された解像度ごとの確率密度関数を用いて配信動画の解像度を推定する。プロキシサーバ24は、推定された動画の品質(推定ビットレート、推定解像度)と解像度ごとの累積分布関数を用いて、配信動画の解像度を変化させた場合の対応するビットレートに関する情報(ビットレート情報)を生成する。また、プロキシサーバ24は、サービスコントローラ25等から設定されるポリシ(解像度選択ポリシ)に従い、ターゲット解像度を選択する。プロキシサーバ24は、ビットレート情報を用いてターゲット解像度を実現するためのビットレートを選択し、当該選択されたビットレートに基づきトラフィック制御を行う。
ここで、上記ターゲット解像度は、ユーザが動画を快適に視聴する環境を提供するという観点から決定される。ユーザが動画再生に不満を持つのは、高画質な動画であってもその再生が不安定な場合であると考えられる。例えば、高画質な動画であっても頻繁に再生が途切れるような場合には、ユーザの体感品質は高くない。対して、多少低画質な動画(解像度が低い動画)であっても安定して再生されると、ユーザは動画を快適に視聴できる。即ち、端末10に割り当てられた帯域に対して余裕のないビットレートを持つ動画が再生されると、動画品質の変動を引き起こしユーザの体感品質が低下する。つまり、動画品質の変動は、多少の低画質の安定した動画よりも体感品質が低い。
第1の実施形態に係るプロキシサーバ24は、上記観点に基づき決定されたターゲット解像度にてユーザが動画を視聴できるようにトラフィック制御を行う。そのため、安定した動画の再生環境がユーザに提供される。とりわけ、MVNO(Mobile Virtual Network Operator)のユーザは、時間帯等により通信帯域(可用帯域)が制限されることも少なくない。このようなMVNOのユーザであっても、低速なネットワーク環境に適した解像度にて動画が安定して再生されるため、動画視聴時の満足度が高くなる。その結果、満足度の高い動画視聴者が増えることによりMVNOの事業者はより多くの顧客を獲得できるようになる。このように、第1の実施形態では、端末10の可用帯域の上限まで使用するのではなく、可用帯域に余裕を作ることができるため、端末10における動画品質が安定する。
また、プロキシサーバ24によるトラフィック制御により、モバイル通信網20におけるトラフィック削減効果が得られる。MNO(Mobile Network Operator)と契約しているユーザは、料金プランにより月々のデータ使用量の上限が決まっていることも多い。そのような現状では、MNOのユーザは動画に過度な高品質を要求することが少なくなってきている。第1の実施形態に係るプロキシサーバ24は、このような実情を鑑みて設定されたターゲット解像度の動画再生を可能とするので、データ使用量を気にかけるユーザに対してデータ使用量を節約しつつ安定した動画を視聴できる環境を提供できる。また、MVNOの事業者の観点では、動画再生時のトラフィック量が削減されるので、MNOから借り受ける回線の使用率が低下し、MNOに支払うコストが削減できる。
このように、第1の実施形態に係るプロキシサーバ24は、パケットの中身が暗号化されており動画品質の詳細が知ることができない場合であっても観測可能なビットレートから動画品質(解像度、ビットレート)を判定しトラフィック制御を実施する。その結果、「モバイル通信網20におけるトラフィック削減効果」と「ユーザに対する安定した動画再生環境を提供」を両立できる。
[第2の実施形態]
続いて、第2の実施形態について図面を参照して詳細に説明する。
第1の実施形態では、確率密度関数を用いてビットレート情報を算出する場合について説明した。第2の実施形態では、第1の実施形態とは異なる方法でビットレート情報を算出する場合について説明する。
第2の実施形態において、通信システムの構成やプロキシサーバ24の処理構成は第1の実施形態と同一とすることができるので、図2や図3等に相当する説明を省略する。
図14は、動画の解像度とビットレートの関係をグラフ化した図である。なお、図11に示すような解像度とビットレートの関係は予めプロキシサーバ24に入力されていてもよいし、学習等により生成されてもよい。
図14を確認すると、解像度が上がれば必要とするビットレートも上昇することが分かる。また、動画が異なれば、ビットレートの上昇率も異なることが分かる。例えば、動きの激しい動画では解像度が上がればビットレートが急上昇する(例えば、図14の曲線301)。対して、静止画に近いような動画では解像度を上げてもビットレートの上昇は緩やかである(例えば、図14の曲線302)。
図14に示すグラフのY軸(ビットレート)の常用対数(10を底とする対数)を計算すると図15に示すグラフが得られる。図15を参照すると、解像度とビットレートの対数値の間には、解像度が増加するとビットレート(対数値)が線形増加することが理解される。当該関係を数式にて表現すると、下記の式(4)が得られる。
Figure 0007456445000004
図15を確認すると、各動画の解像度とビットレート(対数)の間には線形な関係が認められ、上記式(4)の関係が成り立つ。さらに、図15に示す各直線の傾きはほぼ同じであることが理解される。従って、上記式(4)において傾きaは、各動画について共通の値とすることもできる。対して、図15を確認すると、切片は動画ごとに異なることも理解される。従って、上記式(4)における切片bは、動画ごとに異なる値となる。
傾きaに関しては図15に示す各直線の傾きに関する最小二乗法により算出することができる。具体的には、図15に示す動画ごとの傾きを最小二乗法により算出され、当該算出された傾きの平均値が上記式(4)の傾きaに設定される。システム管理者等は、図15に示すようなデータから予め傾きaの平均値を算出し、当該平均値を記憶部206に格納しておく。なお、動画ごとの傾きの平均値に代えて、動画ごとの傾きの最頻値や中央値を傾きaとして算出してもよい。
傾きaが算出されると、推定ビットレートを式(4)に示すビットレートに設定し、推定解像度を式(4)に示す解像度に設定すれば、式(4)の切片bを求めることができる。
切片bが求まると、推定ビットレート及び推定解像度を有する動画の解像度とビットレート(対数)の関係を規定する下記の式(5)が得られる。
Figure 0007456445000005
式(5)に示すaaveは、上記最小二乗法により算出した傾きの平均値である。また、式(5)に示す切片bは推定ビットレート及び推定解像度を用いて算出された切片bである。
第2の実施形態に係るプロキシサーバ24のビットレート情報生成部203は、上記式(5)に解像度を入力することで当該解像度に対応したビットレートを算出することができる。例えば、ビットレート情報生成部203は、解像度として144pを式(5)に入力し、対応するビットレートを計算する。同様に、ビットレート情報生成部203は、240pを式(5)に入力し、対応するビットレートを計算する。ビットレート情報生成部203は、上記の計算を繰り返すこと図9に示すようなビットレート情報を生成することができる。
上記ビットレート情報生成部203の動作をまとめると図16に示すフローチャートのとおりとなる。なお、図10と図16に示すフローチャートにおいて同一の処理とすることができる工程(ステップ)には同一の符号を付し説明を省略する。
第2の実施形態においても、確率密度関数を用いて推定解像度を算出する(ステップS101、S102)。その後、ビットレート情報生成部203は、推定ビットレート、推定解像度、動画ごとの解像度対ビットレート分布の片対数から得られる一次関数の傾きの平均値aaveを用いて切片bを算出する(ステップS105)。
ビットレート情報生成部203は、式(5)に解像度を入力し、各解像度に対応したビットレートを算出する。ビットレート情報生成部203は、解像度とビットレートを対応づけてビットレート情報を生成する(ステップS106)。
[第2の実施形態の変形例]
上記説明では、解像度とビットレート(対数)の関係が一次関数により近似できることを利用してビットレート情報を生成することを説明した。しかし、図14に示す解像度とビットレートの関係を直接用いてビットレート情報を生成することもできる。
具体的には、図14に示す解像度とビットレートの関係は二次関数により近似できる。従って、図14に示す各曲線は、下記の式(6)のように表記できる。
Figure 0007456445000006
ビットレート情報生成部203は、上記式(6)に推定ビットレート、推定解像度を入力し、定数cを得る。ビットレート情報生成部203は、得られた定数cによりビットレートと解像度の関係を規定する二次関数を得る。その後、ビットレート情報生成部203は、得られた二次関数に解像度を可変して入力し、対応するビットレートを計算する。ビットレート情報生成部203は、このような計算を繰り返し、図9に示すようなビットレート情報を生成する。
第2の実施形態に係る変形例のビットレート情報生成部203の動作をまとめると図17に示すフローチャートのとおりとなる。なお、図16と図17に示すフローチャートにおいて同一の処理とすることができる工程(ステップ)には同一の符号を付し説明を省略する。
図17に示すように、ビットレート情報生成部203は、推定ビットレート、推定解像度を利用して式(6)に示す二次関数を導出する(ステップS107)。その後、ビットレート情報生成部203は、当該二次関数を利用してビットレート情報を算出する(ステップS108)。
なお、式(5)を用いたビットレート情報の算出であっても、式(6)を用いたビットレートの算出であっても、同程度の精度を持ったビットレートの算出が可能である。式(5)による方法では傾きaを事前に算出するといった準備が必要なのに対し、式(6)による方法ではこのような事前準備は不要である。但し、式(5)による方法は一次関数を用いたビットレートの算出であり、その際の計算量が少ない。対して、式(6)による方法では二次関数を用いたビットレートの算出であり、その際の計算量が多い。どちらの方式にもメリットが存在するため、本願開示の通信システムが運用される環境等に適した方式が選択されればよい。
以上のように、第2の実施形態では、解像度とビットレート(ビットレートの対数値)の関係を一次関数又は二次関数により近似(フィッティング)すると共に、当該一次関数又は二次関数に解像度を可変して入力することでビットレート情報を生成する。第2の実施形態に係るプロキシサーバ24も第1の実施形態に係るプロキシサーバ24と同様の効果を奏することができる。
続いて、通信システムを構成する各装置のハードウェアについて説明する。図18は、プロキシサーバ24のハードウェア構成の一例を示す図である。
プロキシサーバ24は、情報処理装置(所謂、コンピュータ)により構成可能であり、図18に例示する構成を備える。例えば、プロキシサーバ24は、プロセッサ311、メモリ312、入出力インターフェイス313及び通信インターフェイス314等を備える。上記プロセッサ311等の構成要素は内部バス等により接続され、相互に通信可能に構成されている。
但し、図18に示す構成は、プロキシサーバ24のハードウェア構成を限定する趣旨ではない。プロキシサーバ24は、図示しないハードウェアを含んでもよいし、必要に応じて入出力インターフェイス313を備えていなくともよい。また、プロキシサーバ24に含まれるプロセッサ311等の数も図18の例示に限定する趣旨ではなく、例えば、複数のプロセッサ311がプロキシサーバ24に含まれていてもよい。
プロセッサ311は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)等のプログラマブルなデバイスである。あるいは、プロセッサ311は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)等のデバイスであってもよい。プロセッサ311は、オペレーティングシステム(OS;Operating System)を含む各種プログラムを実行する。
メモリ312は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)等である。メモリ312は、OSプログラム、アプリケーションプログラム、各種データを格納する。
入出力インターフェイス313は、図示しない表示装置や入力装置のインターフェイスである。表示装置は、例えば、液晶ディスプレイ等である。入力装置は、例えば、キーボードやマウス等のユーザ操作を受け付ける装置である。
通信インターフェイス314は、他の装置と通信を行う回路、モジュール等である。例えば、通信インターフェイス314は、NIC(Network Interface Card)等を備える。
プロキシサーバ24の機能は、各種処理モジュールにより実現される。当該処理モジュールは、例えば、メモリ312に格納されたプログラムをプロセッサ311が実行することで実現される。また、当該プログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transitory)なものとすることができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。また、上記プログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。さらに、上記処理モジュールは、半導体チップにより実現されてもよい。
なお、動画配信サーバ30等もプロキシサーバ24と同様に情報処理装置により構成可能であり、その基本的なハードウェア構成はプロキシサーバ24と相違する点はないので説明を省略する。
[変形例]
なお、上記実施形態にて説明した通信システムやプロキシサーバ24の構成、動作等は例示であって、システムの構成等を限定する趣旨ではない。また、本願開示は、無線のシステムにも有線のシステムにも適用することができる。
上記実施形態では、動画の品質として解像度とビットレートを例に取り説明したが、動画の品質をこれらの例に限定する趣旨ではない。
上記実施形態では、解像度選択ポリシに従って決定されたターゲット解像度に応じてトラフィック制御(流量調整)が行われる場合を説明した。しかし、例えば、ビットレート情報生成部203が推定した推定解像度のN段階下の解像度相当に流量を調整する制御であってもよい。つまり、現状の解像度から下げる段数を予め定めておいてもよい。このような対応により、ターゲット解像度の決定に要する時間を削減(短縮)することができる。
プロキシサーバ24は、複数の端末10に関する一連のトラフィック制御を同時に(並列に)実行する。その際、プロキシサーバ24は、自装置で扱う複数の動画のうち、推定ビットレートの高い動画を優先してトラフィック制御の対象としてもよい。このような対応により、モバイル通信網20内のトラフィックを効率的に削減できる。例えば、解像度が720p、ビットレートが2Mbpsの動画Aと解像度は同一でビットレートが500kbpsの動画Bがプロキシサーバ24にて処理されていれば、動画Aの解像度を優先し下げることでトラフィックが効率良く削減できる。このことは、図14の曲線301の動画を動画Aに、曲線302の動画を動画Bに設定することで、容易に理解される。図14を参照すると、同じ解像度であっても、曲線301の動画の方が曲線302の動画よりも解像度を下げた場合のビットレートの低下率が大きいためである。
プロキシサーバ24は、複数の動画のうち、解像度変更に伴うビットレートの変化幅が少ない動画を優先してトラフィック制御を行ってもよい。例えば、解像度が720pの場合のビットレートが2Mbps、解像度が480pでビットレートが800kbpsの動画Aと、解像度が720pの場合のビットレートが500kbps、解像度が480pでビットレートが300kbpsの動画Bの場合を考える。この場合、動画Bを優先して解像度を下げる(動画Bのトラフィック制御を実施する)ことで、画質の変化が緩やかになりユーザは画質の劣化を認識するのが難しくなる。
プロキシサーバ24は、内部に目標トラフィック削減量を保持し、当該目標トラフィック削減量に到達するまでトラフィック制御を継続してもよい。換言すれば、プロキシサーバ24は、目標トラフィック削減量に到達すれば、トラフィック制御を停止してもよい。なお、端末10の個別のトラフィック削減量は、推定ビットレートからターゲット解像度に対応するビットレートを減算することで算出可能である。プロキシサーバ24は、各端末10に関するトラフィック削減量の合計と上記目標トラフィック削減量を比較し、トラフィック制御の実施、不実施を決定すればよい。
あるいは、プロキシサーバ24は、ビットレートの高い動画から1段階解像度を低下させ、その状態のトラフィック削減量が目標トラフィック削減量に到達していればトラフィック制御を停止してもよい。換言すれば、プロキシサーバ24は、目標とするトラヒック削減量を達成するまで解像度を落とし続けるような制御を実施してもよい。このような対応により、特定の動画について急激に画質が劣化したとユーザに認識されることを回避できる。
プロキシサーバ24は、解像度の下限を設定し、当該設定された下限を下回らないようにターゲット解像度を選択してもよい。
プロキシサーバ24は、各動画の画質(現解像度、ビットレート)をユーザや管理者が確認可能となるように、上記画質に関する情報を端末10や管理者の制御端末に送信してもよい。端末10や制御端末は、これらの情報を液晶ディスプレイ等に表示してもよい。
上記実施形態では、送信パケット間の間隔を調整することでスループットを制御しているが、他の方法によりスループットが変更されてもよい。例えば、プロキシサーバ24が、動画配信パケットに施された圧縮をデコード可能な場合には、プロキシサーバ24は、圧縮率を変えることでスループットを変更してもよい。
上記実施形態では、式(3)の定数βを決定する際の強化学習において作業者がターゲット解像度で動画が再生されていることを確認している。しかし、端末10にインストールされた動画再生アプリケーション等を変更することで、定数βの決定における作業者の介在を排除できる。具体的には、定数βの強化学習時には、端末10は再生動画の解像度をプロキシサーバ24に通知するようにすればよい。プロキシサーバ24の学習部207は、端末10から通知された解像度により定数βを決定すればよい。
上記実施形態では、通信システムに含まれる各プロキシサーバ24がビットレート情報を生成し、自装置で生成したビットレート情報を使ってペーシングレートを決定している。しかし、各プロキシサーバ24が生成したビットレート情報が共有されてペーシングレートの決定等に使用されても良い。上記説明したように、ロードバランサ23が、プロキシサーバ24の負荷分散を行う。当該負荷分散の結果、あるプロキシサーバ24にて生成したビットレート情報は当該サーバでは不要になり、他のサーバで必要になることがある。このような場合を考慮し、プロキシサーバ24は、他のプロキシサーバ24にビットレート情報を送信してもよい。あるいは、プロキシサーバ24は、生成したビットレート情報をロードバランサ23に送信し、ロードバランサ23にてビットレート情報を集中管理してもよい。
あるいは、ロードバランサ23が、複数のプロキシサーバ24の制御装置として動作し、時間帯や日付等によりプロキシサーバ24の動作を変更してもよい。例えば、モバイル通信網20に流れるデータ量が急増するような時間帯には、プロキシサーバ24に対してターゲット解像度を低く設定するように指示をし、データ量が少ないような時間帯にはトラフィック制御自体を不実施とするような指示をしてもよい。
上記実施形態では、プロキシサーバ24が、受信パケットを送信する際に所定時間待機することでトラフィック制御を実現している。即ち、プロキシサーバ24は、ペーシングレートを超えたパケットをバッファ(メモリ)に格納し、当該バッファに格納されたパケットを所定時間後に送信するシェーピングとも称される流量制御を行っている。しかし、プロキシサーバ24は、他の流量制御を行うことも可能である。例えば、プロキシサーバ24は、ポリシングと称されるトラフィック制御を実行してもよい。この場合、ペーシングレートを超えたパケットは破棄される。
上記実施形態にて説明したプロキシサーバ24には、プロセッサ、メモリ等を備える計算機(情報処理装置)が想定される。あるいは、プロキシサーバ、1つのコンピュータ上に複数のコンピュータをエミュレートする仮想マシンであってもよい。即ち、上記プロキシサーバは、サーバ等の計算機(物理マシン)であってもよいし、仮想マシンであってもよい。
モバイル通信網20は、物理的に複数の装置(ノード)によって構成されていてもよく、物理的に1台の装置によって構成されていてもよい。例えば、後者の場合、通信ネットワーク機能を仮想化し、汎用のサーバで当該機能を実現するNFV(Network Functions Virtualization)を用いてモバイル通信網20が構築されてもよい。
上記実施形態では、プロキシサーバ24にてトラフィック制御を実行する場合について説明したが、他の装置にて上記トラフィック制御が実行されてもよい。具体的には、上記説明した処理モジュールが端末10、ルータ21又は22、ロードバランサ23、動画配信サーバ30に実装されていてもよい。
上記説明したプロキシサーバ24の機能の一部が他の装置により実現されてもよい。例えば、クラウド上のサーバにてペーシングレートを決定する機能が実現されてもよい。
上述の説明で用いた複数のフローチャートでは、複数の工程(処理)が順番に記載されているが、各実施形態で実行される工程の実行順序は、その記載の順番に制限されない。各実施形態では、例えば各処理を並行して実行する等、図示される工程の順番を内容的に支障のない範囲で変更することができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定し、
前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出すること、
を含む通信制御方法。
[付記2]
前記第1のビットレートに基づき、前記配信動画のトラフィック制御を行うことを含む、付記1に記載の通信制御方法。
[付記3]
複数の配信動画の解像度に関する統計情報を用いて、前記第1の解像度を推定する、付記1又は2に記載の通信制御方法。
[付記4]
前記配信動画の再生に関するリクエストに基づき前記配信動画の第2のビットレートを推定し、
前記第2のビットレートと前記統計情報を用いて前記第1の解像度を推定する、付記3に記載の通信制御方法。
[付記5]
前記第2の解像度と前記第1のビットレートの対応情報に基づき前記第1のビットレートを決定することを含む、付記4に記載の通信制御方法。
[付記6]
配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定する、第1の推定部(101)と、
前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出する、算出部(102)と、
を備える通信装置(24、100)。
[付記7]
前記第1のビットレートに基づき、前記配信動画のトラフィック制御を行う、制御部(201)をさらに備える、付記6に記載の通信装置(24、100)。
[付記8]
前記第1の推定部(101)は、複数の配信動画の解像度に関する統計情報を用いて、前記第1の解像度を推定する、付記6又は7に記載の通信装置(24、100)。
[付記9]
前記配信動画の再生に関するリクエストに基づき前記配信動画の第2のビットレートを推定する、第2の推定部(202)をさらに含み、
前記第1の推定部(101)は、前記第2のビットレートと前記統計情報を用いて前記第1の解像度を推定する、付記8に記載の通信装置(24、100)。
[付記10]
前記第2の解像度と前記第1のビットレートの対応情報に基づき前記第1のビットレートを決定する、決定部(205)をさらに備える、付記9に記載の通信装置(24、100)。
[付記11]
端末(10)と、
前記端末(10)に動画を配信する、動画配信サーバ(30)と、
前記端末(10)と前記動画配信サーバ(30)の間の通信を中継する、通信装置(24、100)と、
を含み、
前記通信装置(24、100)は、
配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定する、第1の推定部(101)と、
前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出する、算出部と、
を備える、通信システム。
[付記12]
前記通信装置(24、100)は、
前記第1のビットレートに基づき、前記配信動画のトラフィック制御を行う、制御部をさらに備える、付記11に記載の通信システム。
[付記13]
前記第1の推定部(101)は、複数の配信動画の解像度に関する統計情報を用いて、前記第1の解像度を推定する、付記11又は12に記載の通信システム。
[付記14]
前記通信装置(24、100)は、前記配信動画の再生に関するリクエストに基づき前記配信動画の第2のビットレートを推定する、第2の推定部をさらに含み、
前記第1の推定部(101)は、前記第2のビットレートと前記統計情報を用いて前記第1の解像度を推定する、付記13に記載の通信システム。
[付記15]
前記通信装置(24、100)は、前記第2の解像度と前記第1のビットレートの対応情報に基づき前記第1のビットレートを決定する、決定部をさらに備える、付記14に記載の通信システム。
[付記16]
動画配信サーバ(30)から配信されている配信動画のビットレートを推定する、ビットレート推定部(202)と、
前記配信動画の解像度を可変した場合における、解像度と前記解像度が可変された動画が端末(10)で再生されるためのビットレートを対応付けたビットレート情報を生成する、ビットレート情報生成部(203)と、
前記端末(10)で再生される動画の解像度の決定に関するポリシを定めた、解像度選択ポリシに基づき、ターゲット解像度を決定する、ターゲット解像度決定部(204)と、
少なくとも前記ビットレート情報と前記ターゲット解像度に基づき、前記動画配信サーバ(30)から前記端末(10)に向けて送信されたパケットを転送する際のペーシングレートを決定する、ペーシングレート決定部(205)と、
を備える、通信装置(24、100)。
[付記17]
前記決定されたペーシングレートに基づき、前記動画配信サーバ(30)から前記端末(10)に向けたトラフィックを制御する、通信制御部をさらに備える、付記16に記載の通信装置(24、100)。
[付記18]
前記ビットレート情報生成部(203)は、
前記推定されたビットレートと、ビットレートが確率変数に設定された、解像度ごとの確率密度関数と、を用いて、前記配信動画の解像度を推定し、
前記推定されたビットレート、前記推定された解像度、及び、解像度ごとのビットレートの累積分布関数を用いて、前記ビットレート情報を生成する、付記17に記載の通信装置(24、100)。
[付記19]
前記ビットレート情報生成部(203)は、解像度とビットレートの対数値の関係を一次関数により近似すると共に、前記一次関数に解像度を可変して入力することで対応するビットレートを算出し、前記ビットレート情報を生成する、付記17に記載の通信装置(24、100)。
[付記20]
前記ビットレート情報生成部(203)は、解像度とビットレートの関係を二次関数により近似すると共に、前記二次関数に解像度を可変して入力することで対応するビットレートを算出し、前記ビットレート情報を生成する、付記17に記載の通信装置(24、100)。
[付記21]
前記ペーシングレート決定部(205)は、前記ビットレート情報を参照し、前記ターゲット解像度に対応するビットレートを特定すると共に、前記特定されたビットレートに所定の定数を乗算した結果を前記ペーシングレートとする、付記16乃至20のいずれか一つに記載の通信装置(24、100)。
[付記22]
前記定数は、状態空間が動画の観測スループットに設定され、行動空間が前記定数に設定され、報酬空間が前記ターゲット解像度に設定された、強化学習により算出される、付記21に記載の通信装置(24、100)。
[付記23]
通信装置(24、100)において、
動画配信サーバ(30)から配信されている配信動画のビットレートを推定するステップと、
前記配信動画の解像度を可変した場合における、解像度と前記解像度が可変された動画が端末(10)で再生されるためのビットレートを対応付けたビットレート情報を生成するステップと、
前記端末(10)にて動画を再生する際のポリシを定めた、解像度選択ポリシに基づき、ターゲット解像度を決定するステップと、
少なくとも前記ビットレート情報と前記ターゲット解像度に基づき、前記動画配信サーバ(30)から前記端末(10)に向けて送信されたパケットを転送する際のペーシングレートを決定するステップと、
を含む、通信方法。
[付記24]
通信装置(24、100)に搭載されたコンピュータ(311)に、
動画配信サーバ(30)から配信されている配信動画のビットレートを推定する処理と、
前記配信動画の解像度を可変した場合における、解像度と前記解像度が可変された動画が端末(10)で再生されるためのビットレートを対応付けたビットレート情報を生成する処理と、
前記端末(10)にて動画を再生する際のポリシを定めた、解像度選択ポリシに基づき、ターゲット解像度を決定する処理と、
少なくとも前記ビットレート情報と前記ターゲット解像度に基づき、前記動画配信サーバ(30)から前記端末(10)に向けて送信されたパケットを転送する際のペーシングレートを決定する処理と、
を実行させるプログラム。
なお、付記23の形態及び付記24の形態は、付記16の形態と同様に、付記17の形態~付記22の形態に展開することが可能である。
なお、引用した上記の先行技術文献の各開示は、本書に引用をもって繰り込むものとする。以上、本発明の実施形態を説明したが、本発明はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本発明のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。
10 端末
20 モバイル通信網
21、22 ルータ
23 ロードバランサ
24 プロキシサーバ
25 サービスコントローラ
26 ポリシ及び課金ルールサーバ
27 ログ収集サーバ
28 ログ表示サーバ
30 動画配信サーバ
100 通信装置
101 第1の推定部
102 算出部
201 通信制御部
202 ビットレート推定部
203 ビットレート情報生成部
204 ターゲット解像度決定部
205 ペーシングレート決定部
206 記憶部
207 学習部
301、302 曲線
311 プロセッサ
312 メモリ
313 入出力インターフェイス
314 通信インターフェイス

Claims (12)

  1. 配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定することと、
    前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出することと、
    前記配信動画の再生に関するリクエストに基づき前記配信動画の第2のビットレートを推定することと、
    前記第2のビットレートを、複数の配信動画の解像度に関する確率密度関数に入力することにより、前記第1の解像度を推定することと、
    を含む通信制御方法。
  2. 前記第1のビットレートに基づき、前記配信動画のトラフィック制御を行うことを含む、請求項1に記載の通信制御方法。
  3. 前記第2のビットレートと、前記第1の解像度と、複数の配信動画の解像度に関する累積分布関数とを用いて、動画の解像度と、当該解像度が端末で再生されるためのビットレートとを対応付けた情報であるビットレート情報を生成する、請求項1又は2に記載の通信制御方法。
  4. 前記第2の解像度と前記ビットレート情報とに基づき前記第1のビットレートを決定することを含む、請求項に記載の通信制御方法。
  5. 配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定する、第1の推定手段と、
    前記配信動画の再生に関するリクエストに基づき前記配信動画の第2のビットレートを推定する、第2の推定手段と、
    前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出する、算出手段と、
    を備え
    前記第1の推定手段は、前記第2のビットレートを、複数の配信動画の解像度に関する確率密度関数に入力することにより、前記第1の解像度を推定する、
    通信装置。
  6. 前記第1のビットレートに基づき、前記配信動画のトラフィック制御を行う、制御手段をさらに備える、請求項に記載の通信装置。
  7. 前記第1の推定手段は、前記第2のビットレートと、前記第1の解像度と、複数の配信動画の解像度に関する累積分布関数とを用いて、動画の解像度と、当該解像度が端末で再生されるためのビットレートとを対応付けた情報であるビットレート情報を生成する、請求項5又は6に記載の通信装置。
  8. 前記第2の解像度と前記ビットレート情報とに基づき前記第1のビットレートを決定する、決定手段をさらに備える、請求項に記載の通信装置。
  9. 端末と、
    前記端末に動画を配信する、動画配信サーバと、
    前記端末と前記動画配信サーバの間の通信を中継する、通信装置と、
    を含み、
    前記通信装置は、
    配信動画のトラフィックに基づいて前記配信動画の第1の解像度を推定する、第1の推定手段と、
    前記配信動画の再生に関するリクエストに基づき前記配信動画の第2のビットレートを推定する、第2の推定手段と、
    前記第1の解像度に基づいて前記配信動画を第2の解像度で配信するための第1のビットレートを算出する、算出手段と、
    を備え
    前記第1の推定手段は、前記第2のビットレートを、複数の配信動画の解像度に関する確率密度関数に入力することにより、前記第1の解像度を推定する、
    通信システム。
  10. 前記通信装置は、
    前記第1のビットレートに基づき、前記配信動画のトラフィック制御を行う、制御手段をさらに備える、請求項に記載の通信システム。
  11. 前記第1の推定手段は、前記第2のビットレートと、前記第1の解像度と、複数の配信動画の解像度に関する累積分布関数とを用いて、動画の解像度と、当該解像度が前記端末で再生されるためのビットレートとを対応付けた情報であるビットレート情報を生成する、請求項9又は10に記載の通信システム。
  12. 前記通信装置は、前記第2の解像度と前記ビットレート情報とに基づき前記第1のビットレートを決定する、決定手段をさらに備える、請求項11に記載の通信システム。
JP2021538648A 2019-08-08 2019-08-08 通信制御方法、通信装置及び通信システム Active JP7456445B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/031385 WO2021024456A1 (ja) 2019-08-08 2019-08-08 通信制御方法、通信装置及び通信システム

Publications (3)

Publication Number Publication Date
JPWO2021024456A1 JPWO2021024456A1 (ja) 2021-02-11
JPWO2021024456A5 JPWO2021024456A5 (ja) 2022-04-25
JP7456445B2 true JP7456445B2 (ja) 2024-03-27

Family

ID=74503080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021538648A Active JP7456445B2 (ja) 2019-08-08 2019-08-08 通信制御方法、通信装置及び通信システム

Country Status (3)

Country Link
US (1) US20220256206A1 (ja)
JP (1) JP7456445B2 (ja)
WO (1) WO2021024456A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008524893A (ja) 2004-12-15 2008-07-10 ティーディーエフ 伝送チャネルを解する可変ビットレート送信方法
JP2012070373A (ja) 2010-09-13 2012-04-05 Ntt Docomo Inc ビデオストリームを転送するための方法及び装置
JP2018520560A (ja) 2015-02-07 2018-07-26 ゾウ ワン, 知覚体感品質推定により駆動されるスマート適応型ビデオストリーミングのための方法及びシステム
WO2019044065A1 (ja) 2017-08-30 2019-03-07 日本電気株式会社 動画再生ビットレート推定装置、方法、及びプログラムを格納した非一時的なコンピュータ可読媒体、並びに通信品質測定装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140181266A1 (en) * 2011-09-29 2014-06-26 Avvasi Inc. System, streaming media optimizer and methods for use therewith
US11330333B2 (en) * 2018-10-19 2022-05-10 Telefonaktiebolaget Lm Ericsson (Publ) Methods of and devices for adaptive bit rate, ABR, video resolution shaping of a video stream in a telecommunications system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008524893A (ja) 2004-12-15 2008-07-10 ティーディーエフ 伝送チャネルを解する可変ビットレート送信方法
JP2012070373A (ja) 2010-09-13 2012-04-05 Ntt Docomo Inc ビデオストリームを転送するための方法及び装置
JP2018520560A (ja) 2015-02-07 2018-07-26 ゾウ ワン, 知覚体感品質推定により駆動されるスマート適応型ビデオストリーミングのための方法及びシステム
WO2019044065A1 (ja) 2017-08-30 2019-03-07 日本電気株式会社 動画再生ビットレート推定装置、方法、及びプログラムを格納した非一時的なコンピュータ可読媒体、並びに通信品質測定装置

Also Published As

Publication number Publication date
JPWO2021024456A1 (ja) 2021-02-11
US20220256206A1 (en) 2022-08-11
WO2021024456A1 (ja) 2021-02-11

Similar Documents

Publication Publication Date Title
CN106412628B (zh) 一种带宽调整方法及相关设备
Kleinrouweler et al. Delivering stable high-quality video: An SDN architecture with DASH assisting network elements
US10178037B2 (en) Deadline driven content delivery
EP2992652B1 (en) Managing bandwidth allocation among flows through assignment of drop priority
US20150026309A1 (en) Systems and methods for adaptive streaming control
JP6268090B2 (ja) 帯域幅および対応する装置を制御する方法
Ramakrishnan et al. SDN based QoE optimization for HTTP-based adaptive video streaming
US9609370B2 (en) Video delivery modification based on network availability
US9178929B2 (en) Client-side class-of-service-based bandwidth management in over-the-top video delivery
US9854282B2 (en) System and method for enabling network based rate determination for adaptive video streaming
US20130304934A1 (en) Methods and systems for controlling quality of a media session
WO2017125017A1 (zh) 缓存内容的调整方法、装置及系统
EP2833575A1 (en) Methods and systems for video quota management
US20190182701A1 (en) Client centric service quality control
CN113038187B (zh) 视频体验质量公平的实用网络带宽分配方法、设备及介质
KR20150057557A (ko) 이동 망에서 비디오 트래픽의 사용자 만족도 최적화를 고려한 혼잡 완화 방법 및 그 장치
Li et al. A mobile edge computing-assisted video delivery architecture for wireless heterogeneous networks
Choi et al. SATE: Providing stable and agile adaptation in HTTP-based video streaming
KR101837637B1 (ko) 클라이언트 측 ack 조정 기반 적응 스트리밍 방법 및 장치
JP7456445B2 (ja) 通信制御方法、通信装置及び通信システム
Kim et al. Server side, play buffer based quality control for adaptive media streaming
US20190036787A1 (en) Traffic optimization device and traffic optimization method
US20130311668A1 (en) Methods And Systems For Providing Fairness And Stability To Video Streams
JP6276206B2 (ja) 帯域割り当て制御装置及び帯域割り当て制御方法
EP3930285B1 (en) System and method for managing video streaming congestion

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220203

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231114

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240226

R151 Written notification of patent or utility model registration

Ref document number: 7456445

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151