WO2020129680A1 - サーバ選択装置、サーバ選択方法及びプログラム - Google Patents

サーバ選択装置、サーバ選択方法及びプログラム Download PDF

Info

Publication number
WO2020129680A1
WO2020129680A1 PCT/JP2019/047669 JP2019047669W WO2020129680A1 WO 2020129680 A1 WO2020129680 A1 WO 2020129680A1 JP 2019047669 W JP2019047669 W JP 2019047669W WO 2020129680 A1 WO2020129680 A1 WO 2020129680A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
content
servers
quality information
information
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.)
Ceased
Application number
PCT/JP2019/047669
Other languages
English (en)
French (fr)
Inventor
拓人 木村
存史 松本
英朗 金正
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to US17/413,837 priority Critical patent/US11470145B2/en
Publication of WO2020129680A1 publication Critical patent/WO2020129680A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs

Definitions

  • the present invention relates to a server selection device, a server selection method, and a program.
  • a user who browses the Web or movies via the Internet downloads the content from the server installed by the content provider or the CDN (Content Delivery Network) to the terminal.
  • the response speed of the server may decrease, or the server may stop responding completely.
  • Such deterioration of service quality may significantly affect the quality of experience of the user.
  • server here means an on-premises server, the CDN itself, or a combination thereof.
  • the multi-server selection solution has already been commercialized by Conviva and Cedexis.
  • the solution provided by Conviva realizes content distribution with higher communication quality by downloading the content from the CDN with the highest throughput based on the quality information of each CDN provided in real time (Non-Patent Document 1).
  • Non-Patent Document 1 the quality information of each CDN provided in real time
  • Non-Patent Document 2 the user can freely assemble the CDN selection algorithm by combining indicators such as throughput and RTT (Round Trip Time) and describing the selection logic as a program.
  • a method has also been proposed in which a CDN is stochastically selected based on the latest throughput ratio (Non-Patent Document 3).
  • the selection algorithm in the multi-server environment and the environments that can be selected are being prepared.
  • the existing selection algorithm selects the server by considering only the quality, and does not pay attention to the cost.
  • the present invention has been made in view of the above points, and an object thereof is to enable selection of a content server in consideration of not only quality but also cost.
  • the server selection device for each of the plurality of servers having the same content, an acquisition unit that acquires a list of quality information corresponding to the communication environment information of the request source of the content download, It has a selection part which selects any one of the plurality of servers based on a list of the quality information of each of the plurality of servers and a cost related to the download of the content.
  • FIG. 6 is a flowchart for explaining an example of a processing procedure executed by the server selection device 10 according to the first embodiment. It is a figure which shows the structural example of the server list table 111. It is a figure which shows the structural example of the quality information table 112. It is a figure which shows the structural example of the cost table 113. It is a figure which shows the example which stored the parameter of fitting distribution in the quality information table 112.
  • FIG. 1 is a diagram showing an example of a system configuration according to the first embodiment.
  • one or more client terminals 20 are connected to the server selection device 10 and a plurality of servers 30 via a network such as the Internet or a LAN (Local Area Network).
  • a network such as the Internet or a LAN (Local Area Network).
  • the client terminal 20 is a terminal used by a user to download and browse content such as web pages and videos. That is, the client terminal 20 is a request source of content download.
  • a smartphone, a tablet terminal, a mobile phone, a PC (Personal Computer), or the like may be used as the client terminal 20.
  • Each server 30 is one or more computers or CDNs (Content Delivery Network) that have the same content to be downloaded by the client terminal 20 and are candidates for the request destination of the download of the content. That is, in the present embodiment, the same content is arranged in a plurality of servers 30, and a multi-server environment is constructed in which the plurality of servers 30 are candidates for requesting the download of the content.
  • Each server 30 is identified by the server information.
  • the server information is an ID (identification information) including necessary and sufficient information such as a destination IP address, a destination URL, a CDN type, a server name, and the like to identify a location where the content is arranged.
  • the server selection device 10 is one or more computers that select any one of the plurality of candidates (servers 30) for the content to be downloaded.
  • FIG. 2 is a diagram showing a hardware configuration example of the server selection device 10 according to the first embodiment.
  • the server selection device 10 of FIG. 2 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, an interface device 105, etc., which are connected to each other by a bus B.
  • a program that realizes the processing in the server selection device 10 is provided by a recording medium 101 such as a CD-ROM.
  • a recording medium 101 such as a CD-ROM.
  • the program is installed in the auxiliary storage device 102 from the recording medium 101 via the drive device 100.
  • the auxiliary storage device 102 stores the installed program and also stores necessary files and data.
  • the memory device 103 reads the program from the auxiliary storage device 102 and stores it when an instruction to activate the program is given.
  • the CPU 104 executes the function related to the server selection device 10 according to the program stored in the memory device 103.
  • the interface device 105 is used as an interface for connecting to a network.
  • FIG. 3 is a diagram showing a functional configuration example of the server selection device 10 according to the first embodiment.
  • the server selection device 10 includes a server list acquisition unit 11, an optimum server selection unit 12, and an optimum server response unit 13. Each of these units is realized by a process that causes the CPU 104 to execute one or more programs installed in the server selection device 10.
  • the server selection device 10 also uses tables (storage units) such as the server list table 111, the quality information table 112, and the cost table 113. Each of these tables can be realized using, for example, the auxiliary storage device 102 or a storage device that can be connected to the server selection device 10 via a network.
  • the server selection device 10 downloads the content by inputting the communication environment information of the client terminal 20 used by the user to browse the content and the content information of the content to be browsed.
  • the optimum server 30 is selected as the request destination of and the selection result is output.
  • the communication environment information is information indicating the communication environment to which the client terminal 20 belongs or information that affects the communication environment.
  • the communication environment information is represented by a combination of all or part of a time zone, an IP address, an ISP, a carrier name, a base station ID, a cell ID, and GPS information.
  • Content information is information for identifying the content, and is expressed in a format such as URI (Uniform Resource Identifier).
  • FIG. 4 is a flowchart for explaining an example of a processing procedure executed by the server selection device 10 according to the first embodiment.
  • the server list acquisition unit 11 receives the request transmitted from the client terminal 20 regarding the selection of the server that is the request destination of the content download.
  • the client terminal transmits the request to the server selection device 10 when the content needs to be downloaded, such as when the user inputs a content download instruction.
  • the request includes the content information of the content to be downloaded, the communication environment information of the client terminal that is the transmission source of the request, and the like.
  • the server list acquisition unit 11 lists the server information of each server 30 that holds the content identified by the content information included in the received request (hereinafter, referred to as “target request”) (hereinafter, referred to as “server list”) ( Hereinafter, the "server list”) is acquired (S102).
  • the server list may be acquired by referring to the server list table 111.
  • FIG. 5 is a diagram showing a configuration example of the server list table 111.
  • the server list table 111 stores the server information of the server 30 that holds the content related to the content information in association with the content information.
  • FIG. 5 an example is shown in which a URL is used as the content information and a server name is used as the server information.
  • the server list may be included in the request from the client terminal 20.
  • the server list may be designated by the user of the client terminal 20.
  • the server list table 111 may not be referred to.
  • the optimum server selection unit 12 acquires, from the quality information table 112, the quality information corresponding to the communication environment information input by the user for each server information included in the server list (S103).
  • FIG. 6 is a diagram showing a configuration example of the quality information table 112.
  • the quality information table 112 stores a history including communication environment information, server information, and quality information for each download of each content that has been performed in the past.
  • the communication environment information is the communication environment information of the client terminal 20 that is the download request source.
  • the server information is the server information of the download requesting server 30.
  • the quality information is quality information regarding the download.
  • a set of a time zone, a carrier name, and a cell ID is used as communication environment information
  • a server name is used as server information
  • throughput is used as quality information.
  • the throughput list for ServerA (hereinafter, “quality information list”). ”) is obtained as ⁇ 1000, 2000, 500, 900. 1100 ⁇ . That is, a record corresponding to the communication environment information is acquired, the quality information of the acquired record is listed for each server information, and is acquired as a quality information list.
  • FIG. 6 shows an example in which the throughput is used as the quality information
  • the client terminal 20, the measurement-dedicated terminal, or another index that can be acquired from the server 30 may be used as the quality information.
  • the added sum may be used as the quality information. That is, in the present embodiment, the quality information is an index indicating that the higher the value, the higher the quality.
  • the optimum server selection unit 12 acquires the cost corresponding to each server information included in the server list from the cost table 113 (S104).
  • FIG. 7 is a diagram showing a configuration example of the cost table 113. As shown in FIG. 7, costs are stored in the cost table 113 in association with each server information.
  • the cost represents a monetary cost per unit communication amount required to acquire (download) the content from the server 30, and for example, a unit fee such as a usage fee and a transit fee based on the transfer amount of the CDN. It is the cost required per quantity.
  • the optimum server selecting unit 12 determines the server 30 among the group of servers 30 including the server information in the server list based on the quality information list and the cost of each server 30 including the server information in the server list. (Hereinafter, referred to as “optimum server 30”) is selected (S105).
  • the quality information list of the i-th server information i q i the server list ⁇ q 1i, q 2i, ⁇ q ni ⁇ by. That is, q ni indicates the n-th quality information in the quality information list of the server information i.
  • the cost of the server information i is indicated by c i .
  • f(q i ) ⁇ T ⁇ based on the given quality information aggregation function f(q i ) and the threshold value T. And the server i * argmin i ⁇ S c i is selected as the optimum server 30. That is, the optimum server selection unit 12 selects a part of the servers 30 (the server 30 whose output is equal to or more than the threshold T) extracted based on the comparison between the output of the aggregate function f(q i ) and the threshold T. , The server with the lowest cost is selected as the optimum server 30. In this embodiment, the larger the value of the quality information, the higher the quality. Therefore, the quality information equal to or higher than the threshold T corresponds to the quality information indicating that the quality is higher than the threshold T.
  • the aggregate function f (q i), any percentile value at q i, the average value of q i, the mode of q i, weighted average and the standard deviation of the q i mean, or the elements of q i It may be a function that outputs the ratio of quality information that exceeds a threshold value specified in advance.
  • the output of the aggregate functions f (q i) may be obtained based on the empirical distribution of the set of quality information included in q i , or the empirical distribution (the relevant set) may be
  • the distribution function may be fitted and the distribution function may be obtained. In the latter case, the result obtained by fitting the distribution function may be used. In the latter case, a distribution function of any distribution including parameters such as a normal distribution, a lognormal distribution, and a beta distribution may be used.
  • the optimum server response unit 13 transmits a response including the server information of the optimum server 30 to the client terminal 20 which is the transmission source of the request (S106).
  • the client terminal 20 receiving the server information downloads the content from the server 30 related to the server information.
  • the content server 30 it is possible to select the content server 30 in consideration of not only the quality but also the cost. Therefore, it is possible to reduce the cost while maintaining the quality of experience of the user, and it is possible to realize more economical video distribution and Web browsing as compared with the case where the conventional selection method of the server 30 is applied. Become.
  • the quality information table 112 does not directly store quality information for each content download, but the value of the aggregation function f(q i ) or the fitted distribution for each combination of communication environment information and server information. Function parameters and the like may be stored.
  • FIG. 8 is a diagram showing an example in which the parameters of the fitting distribution are stored in the quality information table 112.
  • the lognormal distribution is used as the fitting distribution and the parameters ⁇ and ⁇ are stored.
  • the value of the aggregate function f(q i ) or the fitting to the distribution function for each combination of the communication environment information and the server information may be executed at every predetermined time period, or every time the quality information arrives. May be carried out.
  • the second embodiment will be described.
  • the points different from the first embodiment will be described.
  • the points that are not particularly mentioned in the second embodiment may be the same as those in the first embodiment.
  • the method of selecting the optimum server 30 in step S105 of FIG. 4 is different from that of the first embodiment.
  • a parameter ⁇ ( ⁇ 0) for adjusting the balance between the quality information and the cost is introduced for the aggregate function f(q i ) of the quality information.
  • the server list acquisition unit 11 is an example of an acquisition unit.
  • the optimum server selection unit 12 is an example of a selection unit.
  • server selection device 11 server list acquisition unit 12 optimal server selection unit 13 optimal server response unit 20 client terminal 30 server 100 drive device 101 recording medium 102 auxiliary storage device 103 memory device 104 CPU 105 interface device 111 server list table 112 quality information table 113 cost table B bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

サーバ選択装置は、同一のコンテンツを有する複数のサーバのそれぞれについて、前記コンテンツのダウンロードの要求元の通信環境情報に対応する品質情報のリストを取得する取得部と、前記複数のサーバのそれぞれの前記品質情報のリストと、前記コンテンツのダウンロードに関するコストとに基づいて、前記複数のサーバの中からいずれかのサーバを選択する選択部と、を有することで、コンテンツのダウンロードの要求先について品質だけでなくコストも考慮した選択を可能とする。

Description

サーバ選択装置、サーバ選択方法及びプログラム
 本発明は、サーバ選択装置、サーバ選択方法及びプログラムに関する。
 インターネットを介してWeb閲覧や動画閲覧などを行うユーザは、コンテンツ事業者が設置したサーバ、又はCDN(Content Delivery Network)から端末へコンテンツをダウンロードする。その際、サーバへの集中アクセスやセキュリティアタックにより輻輳が発生すると、サーバの応答速度が落ちたり、又はサーバが完全に応答しなくなってしまったりすることがある。このようなサービス品質の劣化は、ユーザの体感品質に大きな影響を与えてしまう可能性がある。
 そのため、コンテンツを複数のサーバに配置することで、あるサーバの通信品質が劣化している際には、別のサーバからコンテンツをダウンロードすることのできる、マルチサーバ環境の導入が進んでいる。ここでの"サーバ"とは、オンプレミスのサーバ、CDNそのもの、又はそれらの組み合わせをいう。
 マルチサーバ選択ソリューションは、Conviva社及びCedexis社によって既に製品化されている。Conviva社が提供するソリューションは、リアルタイムに提供される各CDNの品質情報に基づき、最もスループットの高いCDNからコンテンツをダウンロードすることで、より通信品質の高いコンテンツ配信を実現する(非特許文献1)。Cedexis社の提供するOpenmixでは、スループット、RTT(Round Trip Time)といった指標を組み合わせ、選択ロジックをプログラムとして記述することで、CDN選択アルゴリズムをユーザが自由に組み立てることができる(非特許文献2)。更に、直近のスループットの比で確率的にCDNを選択する方式も提案されている(非特許文献3)。
[online]、インターネット<URL:https://www.cedexis.com/openmix/> Liu, Xi and Dobrian, Florin and Milner, Henry and Jiang, Junchen and Sekar, Vyas and Stoica, Ion and Zhang, Hui, A Case for a Coordinated Internet Video Control Plane, Proceedings of the ACM SIGCOMM 2012 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication, SIGCOMM 2012 Wamser, Florian and Hofner, Steffen and Seufert, Michael and Tran-Gia, Phuoc, Server and Content Selection for MPEG DASH Video Streaming with Client Information, Proceedings of the Workshop on QoE-based Analysis and Management of Data Communication Networks, Internet QoE 2017
 上記に示すように、マルチサーバ環境における選択アルゴリズムや、選択することのできる環境は整いつつある。しかし、既存の選択アルゴリズムは、品質のみを考慮してサーバの選択を行っており、コストの大小に着目していない。
 例えば、2つのサーバA、Bがあり、いずれか一方のサーバをコンテンツのダウンロードの要求先として選択するという状況を考える。ここで、サーバAは品質が高く、コストも高い一方、サーバBは品質は中程度であるものの、コストが低いものとする。この場合、品質のみを考慮して適切なサーバを選択すると、サーバAを選択することが最善な選択となる。しかし、アプリケーションで求められる品質要件が中程度で十分である場合には、サーバBを選択することで、求められる品質要件を満たしたままコストを低減することが可能となる。
 本発明は、上記の点に鑑みてなされたものであって、品質だけでなくコストも考慮したコンテンツのサーバの選択を可能とすることを目的とする。
 そこで上記課題を解決するため、サーバ選択装置は、同一のコンテンツを有する複数のサーバのそれぞれについて、前記コンテンツのダウンロードの要求元の通信環境情報に対応する品質情報のリストを取得する取得部と、前記複数のサーバのそれぞれの前記品質情報のリストと、前記コンテンツのダウンロードに関するコストとに基づいて、前記複数のサーバの中からいずれかのサーバを選択する選択部と、を有する。
 品質だけでなくコストも考慮したコンテンツのサーバの選択を可能とすることができる。
第1の実施の形態におけるシステム構成例を示す図である。 第1の実施の形態におけるサーバ選択装置10のハードウェア構成例を示す図である。 第1の実施の形態におけるサーバ選択装置10の機能構成例を示す図である。 第1の実施の形態のサーバ選択装置10が実行する処理手順の一例を説明するためのフローチャートである。 サーバリストテーブル111の構成例を示す図である。 品質情報テーブル112の構成例を示す図である。 コストテーブル113の構成例を示す図である。 品質情報テーブル112にフィッティング分布のパラメータを格納した例を示す図である。
 以下、図面に基づいて本発明の実施の形態を説明する。図1は、第1の実施の形態におけるシステム構成例を示す図である。図1において、1以上の各クライアント端末20は、インターネット又はLAN(Local Area Network)等のネットワークを介してサーバ選択装置10及び複数のサーバ30と接続される。
 クライアント端末20は、ユーザがWebページや動画等のコンテンツのダウンロード及び閲覧に利用する端末である。すなわち、クライアント端末20は、コンテンツのダウンロードの要求元である。例えば、スマートフォン、タブレット端末、携帯電話、PC(Personal Computer)等がクライアント端末20として利用されてもよい。
 各サーバ30は、クライアント端末20がダウンロード対象とする同一のコンテンツを有し、当該コンテンツのダウンロードの要求先の候補となる1以上のコンピュータ又はCDN(Content Delivery Network)である。すなわち、本実施の形態では、同一のコンテンツが複数のサーバ30に配置され、当該複数のサーバ30が当該コンテンツのダウンロードの要求先の候補となるマルチサーバ環境が構築されている。各サーバ30は、サーバ情報によって識別される。サーバ情報とは、宛先IPアドレス、宛先URL、CDN種別、サーバ名等、コンテンツの配置場所を特定するために必要十分な情報が含まれたID(識別情報)である。
 サーバ選択装置10は、ダウンロード対象のコンテンツについて、複数の候補(サーバ30)の中からいずれかのサーバ30を選択する1以上のコンピュータである。
 図2は、第1の実施の形態におけるサーバ選択装置10のハードウェア構成例を示す図である。図2のサーバ選択装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
 サーバ選択装置10での処理を実現するプログラムは、CD-ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
 メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従ってサーバ選択装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
 図3は、第1の実施の形態におけるサーバ選択装置10の機能構成例を示す図である。図3において、サーバ選択装置10は、サーバリスト取得部11、最適サーバ選択部12及び最適サーバ応答部13を有する。これら各部は、サーバ選択装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。サーバ選択装置10は、また、サーバリストテーブル111、品質情報テーブル112及びコストテーブル113等のテーブル(記憶部)を利用する。これら各テーブルは、例えば、補助記憶装置102、又はサーバ選択装置10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
 サーバ選択装置10は、図3に示される機能構成を有することにより、ユーザがコンテンツの閲覧等に利用するクライアント端末20の通信環境情報、及び閲覧対象のコンテンツのコンテンツ情報を入力として、コンテンツのダウンロードの要求先として最適なサーバ30を選択し、選択結果を出力する。
 通信環境情報とは、クライアント端末20が属する通信環境を表す情報又は通信環境に影響する情報をいう。例えば、通信環境情報は、時間帯、IPアドレス、ISP、キャリア名、基地局ID、セルID、GPS情報の全部又は一部の組み合わせで表現される。
 コンテンツ情報とは、コンテンツを特定するための情報であり、例えば、URI(Uniform Resource Identifier)等の形式で表現される。
 以下、サーバ選択装置10が実行する処理手順について説明する。図4は、第1の実施の形態のサーバ選択装置10が実行する処理手順の一例を説明するためのフローチャートである。
 ステップS101において、サーバリスト取得部11は、クライアント端末20から送信される、コンテンツのダウンロードの要求先のサーバの選択に関するリクエストを受信する。例えば、クライアント端末は、ユーザによってコンテンツのダウンロード指示が入力された場合等、コンテンツをダウンロードする必要が生じた際に、当該リクエストをサーバ選択装置10へ送信する。当該リクエストには、ダウンロード対象のコンテンツのコンテンツ情報、及び当該リクエストの送信元のクライアント端末の通信環境情報等が含まれる。
 続いて、サーバリスト取得部11は、受信されたリクエスト(以下、「対象リクエスト」という。)に含まれているコンテンツ情報によって識別されるコンテンツを保持している各サーバ30のサーバ情報のリスト(以下、「サーバリスト」という。)を取得する(S102)。サーバリストは、サーバリストテーブル111を参照して取得されてもよい。
 図5は、サーバリストテーブル111の構成例を示す図である。図5に示されるように、サーバリストテーブル111には、コンテンツ情報に対応付けて、当該コンテンツ情報に係るコンテンツを保持するサーバ30のサーバ情報が記憶されている。図5では、コンテンツ情報としてURL、サーバ情報としてサーバ名を用いた例が示されている。
 図5によれば、例えば、コンテンツ情報として「http://www.aaa.com/01.ts」が入力された場合は、サーバリストとして{ServerA,ServerB,ServerC}が得られる。
 なお、サーバリストは、クライアント端末20からのリクエストに含まれてもよい。例えば、クライアント端末20のユーザによって、サーバリストが指定されてもよい。この場合、サーバリストテーブル111は参照されなくてもよい。
 続いて、最適サーバ選択部12は、サーバリストに含まれる各サーバ情報について、ユーザから入力された通信環境情報に対応する品質情報を品質情報テーブル112から取得する(S103)。
 図6は、品質情報テーブル112の構成例を示す図である。図6に示されるように、品質情報テーブル112には、過去に行われた各コンテンツのダウンロードごとに、通信環境情報、サーバ情報及び品質情報を含む履歴が記憶されている。通信環境情報は、ダウンロードの要求元のクライアント端末20の通信環境情報である。サーバ情報は、ダウンロードの要求先のサーバ30のサーバ情報である。品質情報は、当該ダウンロードに関する品質情報である。図6の例では、通信環境情報として時間帯、キャリア名及びセルIDの組が用いられ、サーバ情報としてサーバ名が用いられ、品質情報としてスループットを用いられている。
 図6の例によれば、例えば、リクエストに含まれる通信環境情報として時間帯=10、キャリア名=CarrierA、セルID=aaaaaaである場合、ServerAについては、スループットのリスト(以下、「品質情報リスト」という。)として{1000、2000、500、900。1100}が取得される。すなわち、当該通信環境情報に該当するレコード取得され、取得されたレコードの品質情報がサーバ情報ごとにリスト化されて、品質情報リストとして取得される。
 なお、図6では、品質情報としてスループットが用いられる例を示したが、品質情報としては、クライアント端末20、測定専用の端末、又はサーバ30から取得可能な他の指標が用いられてもよい。例えば、RTTの逆数、ジッタの逆数、Webページ表示待ち時間の逆数、映像の平均ビットレート、映像の再生停止時間の逆数、映像のビットレート変動量の逆数、推定体感品質値、又はこれらの重み付き和(加重和)が品質情報として用いられてもよい。すなわち、本実施の形態において品質情報は、値が大きいほど品質が高いことをしめす指標である。
 続いて、最適サーバ選択部12は、サーバリストに含まれる各サーバ情報に対応するコストをコストテーブル113から取得する(S104)。
 図7は、コストテーブル113の構成例を示す図である。図7に示されるように、コストテーブル113には、サーバ情報ごとにコストが対応付けられて記憶されている。コストとは、そのサーバ30からコンテンツを取得(ダウンロード)する際に要する単位通信量あたりの金銭的なコストを表しており、例えば、CDNの転送量に基づいた利用料、トランジット料金等、単位通信量あたりに要するコストである。
 続いて、最適サーバ選択部12は、サーバリストにサーバ情報が含まれる各サーバ30の品質情報リスト及びコストに基づいて、サーバリストにサーバ情報が含まれるサーバ30群の中から一つの)サーバ30(以下、「最適サーバ30」という。)を選択する(S105)。ここで、サーバリストにおいてi番目のサーバ情報iの品質情報リストをq={q1i,q2i,・・・qni}によって示す。すなわち、qniは、サーバ情報iの品質情報リストにおいてn番目の品質情報を示す。また、サーバ情報iのコストをcによって示す。
 第1の実施の形態において、最適サーバ選択部12は、予め与えられている品質情報の集約関数f(q)及び閾値Tに基づいて、S={i|f(q)≧T}を求め、サーバi=argmini∈Sを最適サーバ30として選択する。すなわち、最適サーバ選択部12は、集約関数f(q)の出力と閾値Tとの比較に基づいて抽出される一部のサーバ30(当該出力が閾値T以上であるサーバ30)の中で、コストが最小となるサーバ30を最適サーバ30として選択する。なお、本実施の形態では、品質情報の値が大きいほど品質が高いことを示す。したがあって、閾値T以上の品質情報は、品質が閾値Tより高いことを示す品質情報に相当する。
 集約関数f(q)としては、qにおける任意のパーセンタイル値、qの平均値、qにおける最頻値、qの平均と標準偏差の重み付き平均、又はqの要素のうち予め指定された閾値を上回る品質情報の割合等を出力する関数であってもよい。
 また、集約関数f(q)の出力(例えば、qにおける任意のパーセンタイル値、qの平均値、qにおける最頻値、qの平均と標準偏差の重み付き平均、又はqの要素のうち予め指定された閾値を上回る品質情報の割合等)は、qに含まれる品質情報の集合の経験分布に基づいて求められてもよいし、当該経験分布(当該集合)を何らかの分布関数にフィッティングさせ、当該分布関数に基づいて求められてもよい。後者の場合、分布関数にフィッティングさせた結果を用いてもよい。後者の場合、正規分布、対数正規分布、ベータ分布等、パラメータを含む任意の分布の分布関数が用いられてもよい。
 例えば、サーバリストの内容が{ServerA,ServerB,ServerC}であり、q={1000,2000,3000}、q={100,200,300}、q={10000,20000,30000}、c=0.1、c=0.1、c=1.0、T=1000、f(q)=(1/(|q|))Σjiとする。この場合、f(q)=2000、f(q)=200、f(q)=20000となるため、品質情報のみを考慮するとServerCが最適サーバ30として選択される。一方、第1の実施の形態によれば、S={ServerA,ServerC}となり、argmini∈S=1となるため、ServerAが選択される。
 続いて、最適サーバ応答部13は、最適サーバ30のサーバ情報を含む応答を、リクエストの送信元のクライアント端末20に送信する(S106)。当該サーバ情報を受信したクライアント端末20は、当該サーバ情報に係るサーバ30からコンテンツをダウンロードする。
 上述したように、第1の実施の形態によれば、品質だけでなくコストも考慮したコンテンツのサーバ30の選択を可能とすることができる。したがって、ユーザの体感品質を保ちながらコストを低減することが可能となり、従来のサーバ30の選択方式を適用した場合と比較して、より経済的な映像配信・Web閲覧を実現することが可能となる。
 なお、品質情報テーブル112には、コンテンツのダウンロードごとの品質情報を直接記憶するのではなく、通信環境情報及びサーバ情報の組み合わせごとに、集約関数f(q)の値、又はフィッティングさせた分布関数のパラメータ等を記憶してもよい。
 図8は、品質情報テーブル112にフィッティング分布のパラメータを格納した例を示す図である。ここでは、フィッティング分布として対数正規分布を用い、そのパラメータであるμ、σを格納した例を示した。通信環境情報及びサーバ情報の組み合わせ単位での集約関数f(q)の値、又は分布関数へのフィッティングは、予め指定された時間周期ごとに実行されてもよいし、品質情報が到着するたびに実行されてもよい。
 次に、第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。第2の実施の形態において特に言及されない点については、第1の実施の形態と同様でもよい。
 第2の実施の形態では、図4のステップS105における最適サーバ30の選択方法が第1の実施の形態とは異なる。具体的には、品質情報の集約関数f(q)について品質情報とコストのバランスを調整するパラメータα(α≧0)が導入される。この場合、最適サーバ選択部12は、与えられた時、サーバi=argmax(f(q)-αc)を最適サーバ30として選択する。すなわち、集約関数f(q)の出力と、αによって重み付けされたコストとの和(この例では、重み付け係数が負であるため、負の重み付けコストとの和)が最大となるサーバ30が最適サーバ30として選択される。
 例えば、サーバリストの内容が{ServerA,ServerB,ServerC}であり、q={1000,2000,3000}、q={100,200,300}、q={10000,20000,30000}、c=0.1、c=0.1、c=1.0、α=100000、f(q)=(1/(|q|))Σjiとする。この場合、f(q)-αc=-8000、f(q)-αc=-9800、f(q)-αc=-80000となるため、品質情報のみを考慮するとServerCが最適サーバ30として選択される。一方、第2の実施の形態によれば、argmax(f(q)-αc)=1となるため、ServerAが選択される。
 なお、上記各実施の形態において、サーバリスト取得部11は、取得部の一例である。最適サーバ選択部12は、選択部の一例である。
 以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10     サーバ選択装置
11     サーバリスト取得部
12     最適サーバ選択部
13     最適サーバ応答部
20     クライアント端末
30     サーバ
100    ドライブ装置
101    記録媒体
102    補助記憶装置
103    メモリ装置
104    CPU
105    インタフェース装置
111    サーバリストテーブル
112    品質情報テーブル
113    コストテーブル
B      バス

Claims (7)

  1.  同一のコンテンツを有する複数のサーバのそれぞれについて、前記コンテンツのダウンロードの要求元の通信環境情報に対応する品質情報のリストを取得する取得部と、
     前記複数のサーバのそれぞれの前記品質情報のリストと、前記コンテンツのダウンロードに関するコストとに基づいて、前記複数のサーバの中からいずれかのサーバを選択する選択部と、
    を有することを特徴とするサーバ選択装置。
  2.  前記選択部は、前記複数のサーバのそれぞれの前記品質情報のリストに対する集約関数の出力と前記コストとに基づいて前記いずれかのサーバを選択する、
    ことを特徴とする請求項1記載のサーバ選択装置。
  3.  前記選択部は、前記集約関数の出力と閾値との比較に基づいて前記複数のサーバから抽出される一部のサーバの中で前記コストが最小となるサーバを選択する、
    ことを特徴とする請求項2記載のサーバ選択装置。
  4.  前記選択部は、前記集約関数の出力と重み付けされた前記コストとの和が最大となるサーバを選択する、
    ことを特徴とする請求項2記載のサーバ選択装置。
  5.  前記集約関数の出力は、前記品質情報の経験分布に基づく出力、又は前記品質情報を分布関数にフィッティングさせた結果に基づく出力である、
    ことを特徴とする請求項2乃至4いずれか一項記載のサーバ選択装置。
  6.  同一のコンテンツを有する複数のサーバのそれぞれについて、前記コンテンツのダウンロードの要求元の通信環境情報に対応する品質情報のリストを取得する取得手順と、
     前記複数のサーバのそれぞれの前記品質情報のリストと、前記コンテンツのダウンロードに関するコストとに基づいて、前記複数のサーバの中からいずれかのサーバを選択する選択手順と、
    をコンピュータが実行することを特徴とするサーバ選択方法。
  7.  請求項1乃至5いずれか一項記載のサーバ選択装置としてコンピュータを機能させることを特徴とするプログラム。
PCT/JP2019/047669 2018-12-19 2019-12-05 サーバ選択装置、サーバ選択方法及びプログラム Ceased WO2020129680A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/413,837 US11470145B2 (en) 2018-12-19 2019-12-05 Server selection apparatus, server selection method and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-237466 2018-12-19
JP2018237466A JP7183762B2 (ja) 2018-12-19 2018-12-19 サーバ選択装置、サーバ選択方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2020129680A1 true WO2020129680A1 (ja) 2020-06-25

Family

ID=71101680

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/047669 Ceased WO2020129680A1 (ja) 2018-12-19 2019-12-05 サーバ選択装置、サーバ選択方法及びプログラム

Country Status (3)

Country Link
US (1) US11470145B2 (ja)
JP (1) JP7183762B2 (ja)
WO (1) WO2020129680A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243242A (ja) * 2000-02-25 2001-09-07 Hitachi Ltd 問合せ処理方法およびそれを実施するデータベース管理システムその処理プログラムを格納した記録媒体
JP2003258885A (ja) * 2002-03-01 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> ストリーム配信方法,ストリーム配信装置,ストリーム品質管理装置,ストリーム配信用プログラムおよびストリーム品質管理用プログラム
JP2004048565A (ja) * 2002-07-15 2004-02-12 Nippon Telegr & Teleph Corp <Ntt> ネットワーク品質推定制御方式
JP2005352762A (ja) * 2004-06-10 2005-12-22 Fujitsu Ltd ダウンロード方法
JP2014029694A (ja) * 2007-12-03 2014-02-13 Alcatel-Lucent デジタルデータを配信するための方法および装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266266B2 (en) * 1998-12-08 2012-09-11 Nomadix, Inc. Systems and methods for providing dynamic network authorization, authentication and accounting
US6850984B1 (en) * 2000-09-08 2005-02-01 Intel Corporation System for isolating other clients that experience different connection performance than the client and directing the other clients to another different mirrored server
JP3994057B2 (ja) * 2001-04-18 2007-10-17 インターナショナル・ビジネス・マシーンズ・コーポレーション エッジ・サーバ・コンピュータを選択する方法およびコンピュータ・システム
JP4101251B2 (ja) * 2005-05-24 2008-06-18 富士通株式会社 負荷分散プログラム、負荷分散方法、及び負荷分散装置
US8332375B2 (en) * 2007-08-29 2012-12-11 Nirvanix, Inc. Method and system for moving requested files from one storage location to another
US7908362B2 (en) * 2007-12-03 2011-03-15 Velocix Ltd. Method and apparatus for the delivery of digital data
US8122098B1 (en) * 2008-11-17 2012-02-21 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US20120072604A1 (en) * 2009-05-29 2012-03-22 France Telecom technique for delivering content to a user
US9948708B2 (en) * 2009-06-01 2018-04-17 Google Llc Data retrieval based on bandwidth cost and delay
EP2556450A4 (en) * 2010-04-09 2017-06-07 Nokia Technologies Oy Method and apparatus for coordinating media presentation on devices via an information space
WO2012011450A1 (ja) 2010-07-20 2012-01-26 シャープ株式会社 コンテンツ配信装置、コンテンツ再生装置、コンテンツ配信システム、コンテンツ配信装置の制御方法、制御プログラム、および、記録媒体
US9088577B2 (en) * 2010-11-24 2015-07-21 Microsoft Technology Licensing, Llc Multimedia aware cloud for mobile device computing
US9332051B2 (en) * 2012-10-11 2016-05-03 Verizon Patent And Licensing Inc. Media manifest file generation for adaptive streaming cost management
JP2014096103A (ja) 2012-11-12 2014-05-22 Funai Electric Co Ltd コンテンツ受信装置、及びコンテンツ配信システム
JP2015170125A (ja) 2014-03-06 2015-09-28 富士通株式会社 コンテンツ取得プログラム、装置、及び方法
JP6586638B2 (ja) 2016-01-05 2019-10-09 富士通株式会社 画面共有システム、画面共有プログラム、および画面共有方法
JP6756207B2 (ja) 2016-09-14 2020-09-16 富士ゼロックス株式会社 情報処理装置及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243242A (ja) * 2000-02-25 2001-09-07 Hitachi Ltd 問合せ処理方法およびそれを実施するデータベース管理システムその処理プログラムを格納した記録媒体
JP2003258885A (ja) * 2002-03-01 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> ストリーム配信方法,ストリーム配信装置,ストリーム品質管理装置,ストリーム配信用プログラムおよびストリーム品質管理用プログラム
JP2004048565A (ja) * 2002-07-15 2004-02-12 Nippon Telegr & Teleph Corp <Ntt> ネットワーク品質推定制御方式
JP2005352762A (ja) * 2004-06-10 2005-12-22 Fujitsu Ltd ダウンロード方法
JP2014029694A (ja) * 2007-12-03 2014-02-13 Alcatel-Lucent デジタルデータを配信するための方法および装置

Also Published As

Publication number Publication date
US11470145B2 (en) 2022-10-11
JP7183762B2 (ja) 2022-12-06
US20220060538A1 (en) 2022-02-24
JP2020098554A (ja) 2020-06-25

Similar Documents

Publication Publication Date Title
US11470148B2 (en) Content delivery network
US8943170B2 (en) Content delivery network aggregation with selected content delivery
US10601698B2 (en) Techniques for managing telemetry data for content delivery and/or data transfer networks
CN101637006B (zh) 用于使用uddi来调解web服务的方法和设备
US9727579B2 (en) Systems and methods for storing digital content
US20150333930A1 (en) Dynamic service function chaining
CN110830564A (zh) Cdn调度方法、装置、系统及计算机可读存储介质
CN103503369A (zh) 通过网络分析的内容的预测性布置
JP7770322B2 (ja) 特定ネットワークデバイス並びに特定ローカルエリアネットワークの接続、コンテンツ発見、データ転送、及び制御方法
US10812484B2 (en) Leak-proof classification for an application session
KR20110039513A (ko) 컨텐트 배포관리 시스템 및 방법
CN105554046A (zh) 内容分发系统对终端请求的调度方法、装置及设备
JP6383009B2 (ja) 通信速度推定装置、通信速度推定方法及びプログラム
Zhao et al. Locality-aware streaming in hybrid p2p-cloud cdn systems
CN108270835B (zh) 一种业务内容的调度方法、装置、策略服务器及系统
EP3089427B1 (en) Controlling data exchange between a mobile communication network and a data provider
JP7183762B2 (ja) サーバ選択装置、サーバ選択方法及びプログラム
JP7003705B2 (ja) サーバ選択装置、サーバ選択方法及びプログラム
Hu et al. Downloading trace study for BitTorrent P2P performance measurement and analysis
US20140150039A1 (en) Managing video-on-demand
CN105847401A (zh) 一种请求信息处理方法及设备
Abraham et al. An Effective Wireless Media Access Controls Architecture for Content Delivery Networks
EP2827557A1 (en) Automated application metric selection for multi-cost ALTO queries
Misra et al. Architecture for Content Delivery Networks
Mangili Efficient in-network content distribution: wireless resource sharing, network planning, and security

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

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

Country of ref document: EP

Kind code of ref document: A1