WO2021166251A1 - 制御装置、制御方法及びプログラム - Google Patents

制御装置、制御方法及びプログラム Download PDF

Info

Publication number
WO2021166251A1
WO2021166251A1 PCT/JP2020/007227 JP2020007227W WO2021166251A1 WO 2021166251 A1 WO2021166251 A1 WO 2021166251A1 JP 2020007227 W JP2020007227 W JP 2020007227W WO 2021166251 A1 WO2021166251 A1 WO 2021166251A1
Authority
WO
WIPO (PCT)
Prior art keywords
session
qoe
sessions
bandwidth
allocated bandwidth
Prior art date
Application number
PCT/JP2020/007227
Other languages
English (en)
French (fr)
Inventor
英朗 金正
拓人 木村
太一 河野
和久 山岸
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2020/007227 priority Critical patent/WO2021166251A1/ja
Priority to JP2022501609A priority patent/JP7424465B2/ja
Priority to US17/800,078 priority patent/US11805074B2/en
Priority to PCT/JP2020/032427 priority patent/WO2021166288A1/ja
Publication of WO2021166251A1 publication Critical patent/WO2021166251A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/803Application aware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • 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
    • H04L67/141Setup of application sessions

Definitions

  • the present invention relates to a control device, a control method and a program.
  • QoS Quality of Service
  • QoE quality of service
  • Non-Patent Document 1 which is also used in a real network, controls to make QoS fair, but it is not always possible to obtain the same QoS even with the same QoS depending on the type of application. Is. For example, in a Web session, QoE increases when a large throughput can be obtained instantaneously, but in a video session, QoE does not increase unless a large throughput can be obtained stably.
  • Non-Patent Document 2 a technique for controlling the allocated bandwidth based on QoE is being studied.
  • the existing QoE-based allocated bandwidth control technology has two main problems. The first is that the controlled application is limited to one type of application (either Web or moving image, etc.). Since the existing control technology targets only one type of application, there is a possibility that a user with a low QoE may occur. The second is that we do not assume a network environment in which the number of sessions during communication changes from moment to moment. Existing control technologies do not anticipate the intervention of new sessions or the termination of existing sessions. Therefore, there are cases where the surplus bandwidth cannot be effectively used.
  • the present invention has been made in view of the above points, and an object of the present invention is to reduce sessions with low QoE when a plurality of types of applications are controlled in a network environment that changes with time. ..
  • the control device includes an acquisition unit that acquires application information related to the sessions at a plurality of timings for each of a plurality of sessions related to the plurality of types of applications communicating in the network. Based on the QoE predicted value of each session based on the application information and the condition for the band of the network, the search unit searches for the allocated band of each of the plurality of sessions at the plurality of timings, and the search unit It has a control unit that controls the allocation of the band for each session at the plurality of timings based on the searched allocated band.
  • FIG. 1 is a diagram showing a hardware configuration example of the control device 10 according to the first embodiment.
  • the control device 10 of FIG. 1 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, an interface device 105, and the like, which are connected to each other by a bus B, respectively.
  • the program that realizes the processing in the control 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 program does not necessarily have to be installed from the recording medium 101, and may be downloaded from another computer via the network.
  • the auxiliary storage device 102 stores the installed program and also stores necessary files, data, and the like.
  • the memory device 103 reads and stores the program from the auxiliary storage device 102 when the program is instructed to start.
  • the CPU 104 executes the function related to the control 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. 2 is a diagram showing a functional configuration example of the control device 10 according to the first embodiment.
  • the control device 10 searches for and controls the optimum allocated bandwidth for each session by inputting the information of each session used for communication.
  • the session information is session identification information represented by 5 tuples.
  • the 5-tuple refers to a set represented by a destination IP address, a destination port number, a source IP address, a source port number, and an L4 protocol.
  • the control device 10 includes an application information acquisition unit 11, an optimum allocation band search unit 12, an optimum allocation band control unit 13, and the like. Each of these parts is realized by a process of causing the CPU 104 to execute one or more programs installed in the control device 10.
  • the control device 10 also uses the application information storage unit 14.
  • These application information storage units 14 can be realized by using, for example, a storage device that can be connected to the auxiliary storage device 102 or the control device 10 via a network.
  • FIG. 3 is a flowchart for explaining an example of a processing procedure executed by the control device 10 of the first embodiment.
  • the processing procedure of FIG. 3 is repeatedly executed at a plurality of timings (for example, periodically (for example, a 2-second cycle)).
  • the application information acquisition unit 11 stores the application information corresponding to each session related to one or more input session information (hereinafter, each of the sessions is referred to as a “target session”) in the application information storage unit 14. Get from.
  • the session information of each session currently being communicated is input to the application information acquisition unit 11. For example, such session information may be acquired by monitoring the network.
  • FIG. 4 is a diagram showing a configuration example of the application information storage unit 14.
  • the application information storage unit 14 stores the application information in association with the session information of each session currently being communicated. That is, the stored contents of the application information storage unit 14 are updated every moment according to the communication status of the network. Therefore, it can be said that the information stored in the application information storage unit 14 is almost the current information.
  • the information stored in the application information storage unit 14 may be input by a user or the like, or may be automatically input by a device that monitors the network. Alternatively, the application information acquisition unit 11 may monitor the network and update the application information storage unit 14.
  • the application information includes parameters such as application type, buffer length, playback stop information, bit rate series, and communication time.
  • there is one Web session (session whose application type is "Web") and two video sessions (session whose application type is "video").
  • the communication time is a valid parameter for the Web session (hereinafter referred to as "Web session").
  • the application information of the Web session includes the application type and the communication time.
  • the application type is the type of application corresponding to the session.
  • the type of application is classified into "Web” or "moving image”.
  • the communication time represents the elapsed time from the start of communication to almost the present time.
  • the application information of the video session includes the application type, the buffer length, the playback stop information, and the bit rate series.
  • the buffer length is the time length of the moving image currently buffered in the client of the moving image session (for example, a viewing terminal such as a PC (Personal Computer), a smartphone or a tablet terminal).
  • the playback stop information is an array of a set of a playback stop occurrence time and a playback stop time. For example, [(0,2)] indicates that the playback has stopped once and the playback has stopped until 2 seconds after the start of communication.
  • the bit rate series is an array of average bit rates for any media time.
  • [700,1000] means that the average bit rate from 0 seconds to 10 seconds is 700 kbps and the average bit rate from 10 seconds to 20 seconds is 1000 kbps in the media time.
  • these are examples, and the parameters held may differ depending on the variables required for QoE prediction.
  • frame rate, resolution, and the like can be mentioned as examples of variables required for QoE prediction.
  • the optimal allocated bandwidth search unit 12 searches for the allocated bandwidth (optimal allocated bandwidth) for each target session so that the minimum QoE predicted value among the QoE predicted values for each target session is maximized. (S20).
  • the QoE predicted value is an estimated value of QoE obtained at a time point slightly after allocating a certain band to each session.
  • the time point slightly ahead is, for example, the time when the next chunk reception is completed in the moving image, the time when the 500KB reception is completed on the Web, and the like.
  • the QoE prediction value is not limited to the QoE when h chunk reception is completed in the moving image and the QoE when the nKB reception is completed on the Web, and may be the QoE when t seconds have passed from the start of communication in each session.
  • the optimal allocated bandwidth control unit 13 controls the allocated bandwidth for each session based on the optimal allocated bandwidth searched by the optimal allocated bandwidth search unit 12 (S30). For example, when the router controls the data, the optimal allocated bandwidth control unit 13 controls the amount of data that each session can send per unit time by weighting based on the optimal allocated bandwidth.
  • FIG. 5 is a flowchart for explaining an example of the processing procedure of the search processing of the optimum allocated bandwidth in the first embodiment.
  • step S400 the optimum allocated bandwidth search unit 12 sets initial values for the targetQoE, bw, and bw'variables.
  • targetQoE [1,5]
  • the optimum allocated bandwidth search unit 12 sets QoE init as an initial value for targetQoE.
  • the optimum allocated bandwidth search unit 12 searches for the allocated bandwidth satisfying the quality condition for each target session until the band condition (threshold value) is satisfied.
  • the quality condition represents a condition (threshold value) that the QoE predicted value of each target session should satisfy, and in the present embodiment, the QoE predicted value of each target session is targetQoE or more.
  • step S410 the optimum allocated bandwidth search unit 12 substitutes 1 for the variable i.
  • the variable i is a variable for identifying each of the target sessions.
  • the i-th target session is referred to as "session i".
  • optimum allocation band search unit 12 calculates the respective estimate of a bit playback stop information at the time of the previous and bit rate sequence when assigning the bw i in session i ..
  • the playback stop information and the bit rate series are estimated using the chunk length and bit rate selection algorithm. Therefore, first, the chunk length and the bit rate selection algorithm will be described.
  • the chunk length means the length of the moving image of one block when one moving image content is divided into a plurality of chunks. Moreover, this one mass is called a chunk. For example, when a 60-second video is divided into 30 chunks, the chunk length is 2 seconds.
  • each chunk is encoded at multiple bit rates.
  • a player who requests chunks from a video distribution server watches a video by requesting chunks encoded at an appropriate bit rate.
  • the bit rate selection algorithm is a general term for algorithms used to select an appropriate bit rate. For example, there is an algorithm that selects the maximum bit rate that does not exceed the average throughput when the latest chunk is received. Similar to the chunk length, the bit rate selection algorithm may measure the behavior of the algorithm when downloading the video of the video distributor, or may use a specific algorithm approximately.
  • the playback stop information and the estimated value of the bit rate series are calculated.
  • the bit rate series since the bit rate series only needs to be able to estimate the bit rate of the requested chunk, it can be estimated according to the bit rate selection algorithm. For example, if the bit rate included in the bit rate series is the average bit rate for each chunk length, the bit rate series will be a series in which the bit rate selected according to the selection algorithm is newly added to the current bit rate series. Can be estimated. That is, assuming that the current bit rate series is [700, 1000] and the selected bit rate is 500 kbps, the bit rate series can be estimated to be [700, 1000, 500]. Further, the reproduction stop information can be estimated by estimating the buffer length.
  • the buffer length can be estimated using the bit rate selection algorithm and chunk length and bw i.
  • the chunk length 2 seconds, the bit rate of the chunk to be next requested, follow the bit rate selection algorithm, 500kbps, 1 second current buffer length, consider the case of a 250kbps the bw i. Since it is necessary to receive data of 500 kbps x 2 seconds 1000 kbps in order to receive the requested chunk, it takes 4 seconds to receive the data in the band of 250 kbps.
  • optimal allocation band search unit 12 calculates the estimated value of the communication time at the time of a little earlier when assigned to bw i in session i.
  • the communication time is estimated using the Web content size.
  • the Web content size is multiplied by eight.
  • the content size of a representative website may be investigated in advance and the average value thereof may be used.
  • the optimum allocated bandwidth search unit 12 calculates QoE i by inputting the estimated application information into a known QoE estimation model. For example, when the application type corresponding to session i is moving image, each estimated value of the playback stop information and the bit rate series is a known QoE estimation model (for example, "K. Yamagishi, and T.
  • Hayashi Parametric Quality- It may be calculated by inputting it in "Estimation Model for Adaptive-Bitrate-Streaming Services", IEEE Transactions on Multimedia, vol. 19, no. 7, pp. 1545-1557, Jul. 2017 ").
  • the application type corresponding to session i is Web
  • the estimated value of the communication time is a known QoE estimation model (for example, “T. Tominaga, et al.,” Web-Browsing QoE Estimation Model ", IEICE Transactions on”. It may be calculated by inputting to Communications, vol. E100-B, no. 10, pp. 1837-1845, Oct. 2017).
  • the value obtained by the experiment for each allocated band is stored in advance in the auxiliary storage device 102 or the like, and the value may be used as an estimated value.
  • the optimum allocated bandwidth search unit 12 determines whether or not the QoE i is the targetQoE or more (S430). That is, it is determined whether or not QoE i satisfies the quality condition.
  • the optimum allocated bandwidth search unit 12 increases bwi i by ⁇ and repeats step S420 and subsequent steps. Therefore, until the QoE i is equal to or greater than targetQoE calculation of QoE i is repeated.
  • is a preset parameter.
  • allocated bandwidth of the session i proceeds to subsequent step S450 as bw i at that time.
  • the optimum allocated bandwidth search unit 12 adds 1 to the variable i (S450) and sets the value of the variable i and N (total number of target sessions). Compare (S460). When the value of the variable i is N or less (No in S450), the optimal allocated bandwidth search unit 12 executes step S420 and subsequent steps for session i. If the value of the variable i is larger than N (Yes in S450), the process proceeds to step S470. Accordingly, at the time when the process proceeds to step S470, for all the target session, the quality satisfies bw i is identified.
  • the optimum allocated bandwidth search unit 12 updates bw'to bw (S480), increases targetQoE by ⁇ (S490), and repeats step S410 and subsequent steps. ..
  • the optimum allocation band search unit 12 outputs bw'as the optimum allocation band to the optimum allocation band control unit 13 (S500).
  • step S400 the initial value of each variable is set as follows.
  • step S410 and subsequent (first time) for each session, for example, the quality condition is satisfied allocated bandwidth bw i is searched as follows.
  • the process proceeds to step S470 without any bw i is updated by ⁇ for quality satisfying a state of the initial value.
  • step S470 it is determined as follows whether or not the bandwidth condition is satisfied for the entire target session.
  • each of targetQoE and bw' is updated as follows, and the process returns to step S410.
  • the quality condition is satisfied allocated bandwidth bw i is searched as follows.
  • bw 1 500
  • bw 2 250
  • bw 3 250
  • step S470 it is determined as follows whether or not the bandwidth condition is satisfied for the entire target session.
  • each of targetQoE and bw' is updated as follows, and the process returns to step S410.
  • the allocated bands bw 1 and bb 2 satisfying the quality condition are searched as follows.
  • bb 3 is updated as follows.
  • the allocated band bw 3 satisfying the quality condition is searched for as follows.
  • step S470 it is determined as follows whether or not the bandwidth condition is satisfied for the entire target session.
  • each of targetQoE and bw' is updated as follows, and the process returns to step S410.
  • bw 2 250
  • bw 2 is updated as follows.
  • the allocated band bw 2 satisfying the quality condition is searched for as follows.
  • the allocated bandwidth of each session is searched for at a plurality of timings based on the QoE predicted values of the plurality of sessions corresponding to the plurality of types of applications.
  • the second embodiment will be described which is different from the first embodiment.
  • the points not particularly mentioned in the second embodiment may be the same as those in the first embodiment.
  • step S20 in FIG. 3 the processing procedure of step S20 in FIG. 3 is different from that of the first embodiment.
  • the QoE predicted value of the moving image session is determined without considering the buffer length predicted value. If the predicted buffer length is not taken into consideration, the risk of playback stoppage increases, and the possibility of causing a final decrease in QoE increases. Therefore, in step S20 of the second embodiment, in addition to the quality condition in the first embodiment, the condition that the predicted value of the buffer length of the moving image session should be satisfied is set. In order to search for the optimum allocated bandwidth under such quality conditions, in addition to the relationship between the allocated bandwidth and the QoE predicted value, the relationship between the allocated bandwidth and the buffer length predicted value is required.
  • FIG. 6 is a flowchart for explaining an example of the processing procedure of the search processing of the optimum allocated band in the second embodiment.
  • the same steps as those in FIG. 5 are assigned the same step numbers, and the description thereof will be omitted as appropriate.
  • step S420 is replaced with S420a. Further, steps S441 and S442 are added between steps S440 and S450.
  • step S420a the optimum allocated bandwidth search unit 12 calculates the buffer length predicted value buffer i of the session i in addition to the QoE predicted value.
  • steps S441 and S442 in addition to the QoE i being the targetQoE or more, the condition that the buffer length predicted value buffer i of the moving image session i is the buffer length threshold buffer th or more is added to the quality condition. This is a step to realize.
  • step S441 the optimum allocated bandwidth search unit 12 determines whether or not the application type of session i is "moving image". When the application type of session i is "video" (Yes in S441), the optimum allocated band search unit 12 determines whether or not the buffer length predicted value buffer i of session i is equal to or greater than the buffer length threshold buffer th. (S442). If the predicted buffer length buffer i is less than the buffer length threshold value buffer th (No in S442), the process proceeds to step S430. If the predicted buffer length buffer i is equal to or greater than the buffer length threshold value buffer th (Yes in S442), the process proceeds to step S450.
  • the third embodiment will be described which is different from the first embodiment.
  • the points not particularly mentioned in the third embodiment may be the same as those in the first embodiment.
  • step S20 of the third embodiment the processing procedure of step S20 in FIG. 3 is different from that of the first embodiment.
  • the allocated bandwidth that maximizes the number of sessions in which the QoE predicted value is equal to or greater than the predetermined threshold targetQoE is searched for.
  • FIG. 7 is a flowchart for explaining an example of the processing procedure of the search processing of the optimum allocated band in the third embodiment.
  • the same steps as those in FIG. 5 are assigned the same step numbers, and the description thereof will be omitted as appropriate.
  • step S400 is replaced with S400a. Further, steps S510 and S520 are executed instead of steps S410 to S460. Further, step S530 is executed instead of step S490.
  • the optimal allocated bandwidth search unit 12 calculates (identifies) the session i'with the smallest allocated bandwidth required for the QoE predicted value QoE i to be equal to or greater than the targetQoE among the sessions related to the set U.
  • f i (bw) represents a function outputting a QoE prediction value QoE i the allocated bandwidth bw as input.
  • the optimal allocation band search section 12, 'the QoE i' bw i is the minimum allocated bandwidth equal to or greater than TargetQoE.
  • step S530 the optimal allocation band search unit 12 substitutes the difference set excluding i'from the set U into the set U.
  • the optimum allocated bandwidth search unit 12 repeats the above processing until the bandwidth condition is no longer satisfied (S470).
  • the third embodiment may be combined with the condition regarding the buffer length of the moving image session described in the second embodiment. In this case, a part of the conditions in steps S510 and S520 may be set to "f i (bw) ⁇ targetQoE && buffer i ⁇ buffer th ". However, the condition of "buffer i ⁇ buffer th " is applied only to the session in which the application type is moving image.
  • the fourth embodiment will be described which is different from the first embodiment.
  • the points not particularly mentioned in the fourth embodiment may be the same as those in the first embodiment.
  • step S20 of the fourth embodiment the processing procedure of step S20 in FIG. 3 is different from that of the first embodiment.
  • the allocated bandwidth in which the average of the QoE predicted values is maximized is searched.
  • FIG. 8 is a flowchart for explaining an example of the processing procedure of the search processing of the optimum allocated band in the fourth embodiment.
  • the same steps as those in FIG. 5 are assigned the same step numbers, and the description thereof will be omitted as appropriate.
  • steps S610 and S620 are executed instead of steps S410 to S460. Also, step S490 is not executed.
  • step S610 the optimum allocated bandwidth search unit 12 calculates (identifies) the session i'that maximizes the amount of increase in the QoE predicted value when the allocated bandwidth is increased by ⁇ .
  • f i (bw) represents a function outputting a QoE prediction value QoE i the allocated bandwidth bw as input.
  • the optimal allocation band search unit 12 increases the bw i 'only alpha.
  • the optimum allocated bandwidth search unit 12 repeats the above process until the bandwidth condition is no longer satisfied.
  • the fourth embodiment may be combined with the condition regarding the buffer length of the moving image session described in the second embodiment. In this case, in step S610, for the session in which the application type is moving image, only the session satisfying "buffer i ⁇ buffer th " may be a candidate for session i'.
  • the application information acquisition unit 11 is an example of the acquisition unit.
  • the optimum allocated band search unit 12 is an example of the search unit.
  • the optimum allocated band control unit 13 is an example of the control unit.
  • Control device 11 Application information acquisition unit 12 Optimal allocated bandwidth search unit 13 Optimal allocated bandwidth control unit 14
  • Application information storage unit 100 Drive device 101 Recording medium 102
  • Auxiliary storage device 103
  • Memory device 104
  • CPU 105 Interface device B bus

Abstract

制御装置は、ネットワークにおいて通信中である、複数の種別のアプリケーションに係る複数のセッションのそれぞれについて、当該セッションに係るアプリケーション情報を複数のタイミングで取得する取得部と、前記アプリケーション情報に基づく前記各セッションのQoE予測値と、前記ネットワークの帯域に対する条件とに基づいて、前記複数のセッションのそれぞれの割当帯域を前記複数のタイミングで探索する探索部と、前記探索部により探索された割当帯域に基づいて、前記各セッションに対する帯域の割当を前記複数のタイミングで制御する制御部と、を有することで、時間的に変化するネットワーク環境において複数種類のアプリケーションを制御対象とした場合におけるQoEの低いセッション数を削減可能とする。

Description

制御装置、制御方法及びプログラム
 本発明は、制御装置、制御方法及びプログラムに関する。
 映像配信サービスの高品質化・Webセッションの増加等の影響により、ネットワークを流れるトラヒック量が急激に増加している。現在のネットワークでは、有限のリソースを多くのユーザで共有しているため、こうしたトラヒック量の増加は、スループットの低下、パケットロス率の増加など、ネットワーク品質(QoS:Quality of Service)の低下を引き起こす。さらに、このようなQoSの低下は、ユーザ体感品質(QoE:Quality of Experience)の低下をもたらす可能性がある。
 また、現在のネットワークでは、ネットワーク間の相互接続点など、ボトルネックが一箇所に特定されるケースが多い。そのため、ボトルネック箇所における割当帯域を適切に制御することが重要となる。
 多くのユーザがネットワークを介したサービスを快適に利用するためには、QoEの低いユーザ数(セッション数)を最小化することが重要である。しかし、既存の割当帯域制御技術は、必ずしもQoEの低いセッション数を最小化できているとは限らない。なぜなら、実ネットワークでも利用されているRound Robin(非特許文献1)は、QoSを公平にする制御を行うが、アプリケーションの種別によって、同じQoSであっても同じQoEが得られるとは限らないためである。例えば、Webセッションは瞬間的に大きなスループットを得られるとQoEが上昇するが、動画セッションは安定的に大きなスループットを得られないとQoEは上昇しない。したがって、QoSを公平にする既存の制御技術では、一部のユーザのQoEが高くなる一方で、一部のユーザのQoEが低下してしまう。そこで、QoEに基づいて割当帯域を制御する技術が検討されつつある(非特許文献2)。
Remzi H. Arpaci-Dusseeau and Andrea C. Arpaci-Dusseau, "Operating Systems: Three Easy Pieces", Arpaci-Dusseau Books, 2018. T. Hori and T. Ohtsuki, "QoE and Throughput Aware Radio Resource Allocation Algorithm in LTE Network with Users using Different Applications", in Proc 27th Annual International Symposium on Personal, Indoor, Mobile Radio Communications (PIMRC), pp.1-6, Sep. 2016.
 しかしながら、既存のQoEに基づく割当帯域制御技術には、主に、2つの課題がある。1つ目は、制御対象アプリケーションが1種類(Web又は動画のいずれかのみ等)のアプリケーションに限定されていることである。既存の制御技術では、1種類のアプリケーションのみを制御対象としているため、QoEの低いユーザが発生する可能性がある。2つ目は、通信中のセッション数が時々刻々と変化するネットワーク環境を想定していないことである。既存の制御技術では、新規セッションの介入や既存セッションの終了などを想定していない。したがって、余剰帯域を有効利用できない場合が存在する。
 本発明は、上記の点に鑑みてなされたものであって、時間的に変化するネットワーク環境において複数種類のアプリケーションを制御対象とした場合におけるQoEの低いセッションを削減可能とすることを目的とする。
 そこで上記課題を解決するため、制御装置は、ネットワークにおいて通信中である、複数の種別のアプリケーションに係る複数のセッションのそれぞれについて、当該セッションに係るアプリケーション情報を複数のタイミングで取得する取得部と、前記アプリケーション情報に基づく前記各セッションのQoE予測値と、前記ネットワークの帯域に対する条件とに基づいて、前記複数のセッションのそれぞれの割当帯域を前記複数のタイミングで探索する探索部と、前記探索部により探索された割当帯域に基づいて、前記各セッションに対する帯域の割当を前記複数のタイミングで制御する制御部と、を有する。
 時間的に変化するネットワーク環境において複数種類のアプリケーションを制御対象とした場合におけるQoEの低いセッション数を削減可能とすることができる。
第1の実施の形態における制御装置10のハードウェア構成例を示す図である。 第1の実施の形態における制御装置10の機能構成例を示す図である。 第1の実施の形態の制御装置10が実行する処理手順の一例を説明するためのフローチャートである。 アプリケーション情報記憶部14の構成例を示す図である。 第1の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。 第2の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。 第3の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。 第4の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。
 以下、図面に基づいて本発明の実施の形態を説明する。図1は、第1の実施の形態における制御装置10のハードウェア構成例を示す図である。図1の制御装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
 制御装置10での処理を実現するプログラムは、CD-ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
 メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って制御装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
 図2は、第1の実施の形態における制御装置10の機能構成例を示す図である。制御装置10は、通信に利用されている各セッションの情報を入力として、各セッションに対する最適な割当帯域を探索し、制御する。セッション情報は、5タプルで表される、セッションの識別情報である。5タプルは、宛先IPアドレス、宛先ポート番号、送信元IPアドレス、送信元ポート番号、L4プロトコルで表される組のことをいう。
 図2において、制御装置10は、アプリケーション情報取得部11、最適割当帯域探索部12及び最適割当帯域制御部13等を有する。これら各部は、制御装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。制御装置10は、また、アプリケーション情報記憶部14を利用する。これらアプリケーション情報記憶部14は、例えば、補助記憶装置102、又は制御装置10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
 以下、制御装置10が実行する処理手順について説明する。図3は、第1の実施の形態の制御装置10が実行する処理手順の一例を説明するためのフローチャートである。図3の処理手順は、複数のタイミングで(例えば、定期的(例えば、2秒周期等)に)繰り返し実行される。
 ステップS10において、アプリケーション情報取得部11は、入力された1以上のセッション情報に係る各セッション(以下、当該各セッションのそれぞれを「対象セッション」という。)に対応するアプリケーション情報をアプリケーション情報記憶部14から取得する。なお、アプリケーション情報取得部11には、現在通信中の各セッションのセッション情報が入力される。例えば、ネットワークを監視することで、このようなセッション情報が取得されてもよい。
 図4は、アプリケーション情報記憶部14の構成例を示す図である。図4に示されるように、アプリケーション情報記憶部14には、現在通信中の各セッションのセッション情報に対応付けてアプリケーション情報が記憶されている。すなわち、アプリケーション情報記憶部14の記憶内容は、ネットワークの通信状況に応じて時々刻々と更新される。したがって、アプリケーション情報記憶部14に記憶されている情報は、ほぼ現在の情報であるといえる。なお、アプリケーション情報記憶部14に記憶されている情報は、ユーザ等によって入力されてもよいし、ネットワークを監視する装置によって自動的に入力されてもよい。又はアプリケーション情報取得部11が、ネットワークを監視して、アプリケーション情報記憶部14を更新してもよい。
 図4に示されるように、アプリケーション情報は、アプリケーション種別、バッファ長、再生停止情報、ビットレート系列及び通信時間等のパラメータを含む。図4の例では、Webのセッション(アプリケーション種別が「Web」であるセッション)が1つ有り、動画のセッション(アプリケーション種別が「動画」であるセッション)が2つ有る例が示されている。
 アプリケーション情報を構成するパラメータのうち、Webのセッション(以下、「Webセッション」という。)に関しては通信時間が有効なパラメータである。換言すれば、Webセッションのアプリケーション情報は、アプリケーション種別及び通信時間を含む。アプリケーション種別とは、セッションに対応するアプリケーションの種別である。本実施の形態では、アプリケーションの種別は「Web」又は「動画」に分類される。通信時間とは、セッションが通信を開始してからほぼ現時点までの経過時間を表す。
 一方、動画のセッション(以下、「動画セッション」という。)のアプリケーション情報は、アプリケーション種別、バッファ長、再生停止情報及びビットレート系列を含む。バッファ長とは、動画セッションのクライアント(例えば、PC(Personal Computer)、スマートフォン又はタブレット端末等の視聴端末)において、現在バッファリングされている動画の時間長である。再生停止情報とは、再生停止の発生時刻及び終了時刻の組の配列である。例えば、[(0,2)]は、再生停止が一回発生しており、通信開始から2秒後まで再生が停止していたことを表す。ビットレート系列とは、任意のメディア時間ごとの平均ビットレートの配列である。例えば、[700,1000]は、メディア時間で0秒から10秒までの平均ビットレートが700kbpsであり、10秒から20秒までの平均ビットレートが1000kbpsであることを表す。但し、これらは一例であり、QoE予測時に必要となる変数に応じて保持されるパラメータは異なってよい。QoE予測時に必要となる変数の例として、上記以外にはフレームレートや解像度等が挙げられる。
 続いて、最適割当帯域探索部12は、各対象セッションに対するQoE予測値のうち、最小となるQoE予測値が最大化されるような、各対象セッションへの割当帯域(最適割当帯域)を探索する(S20)。
 QoE予測値とは、各セッションに対して或る帯域を割り当てた後の少し先の時点において得られるQoEの推定値をいう。少し先の時点とは、例えば、動画における次のチャンク受信完了時点やWebにおける500KB受信完了時点等である。但し、QoE予測値は、動画におけるhチャンク受信完了時のQoEや、WebにおけるnKB受信完了時におけるQoEに限ったものではなく、各セッションの通信開始からt秒経過時のQoEとしてもよい。
 続いて、最適割当帯域制御部13は、最適割当帯域探索部12によって探索された最適割当帯域に基づいて各セッションに対する割当帯域の制御を実施する(S30)。例えば、ルータで制御を実施する場合、最適割当帯域制御部13は、各セッションが単位時間当たりに送出することのできるデータ量を、最適割当帯域に基づく重み付けによって制御を実施する。
 続いて、ステップS20の詳細について説明する。図5は、第1の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。
 ステップS400において、最適割当帯域探索部12は、targetQoE、bw及びbw'の各変数に初期値を設定する。ここで、targetQoE∈[1,5]は、対象となる全てのセッションi(i=1,2,…,N)が最低限満たすべきQoE予測値を表し、bw={bw}∈Rは割当帯域候補ベクトル(但し、Rは実数の集合(以降についても同様))を表し、bw'={bw'}∈Rは、最適割当帯域ベクトルを表す。
 具体的には、最適割当帯域探索部12は、targetQoEに対して、初期値としてQoEinitを設定する。また、最適割当帯域探索部12は、bw={bw}∈Rにおける各要素bw(i=1,2,…,N)に対して、初期値としてbwinitを設定する。また、最適割当帯域探索部12は、bw'に対して、初期値としてbwを設定(代入)する。
 続くステップS410~S490において、最適割当帯域探索部12は、帯域条件(閾値)が満たされるまで、各対象セッションについて、品質条件を満たす割当帯域を探索する。品質条件は、各対象セッションのQoE予測値が満たすべき条件(閾値)を表しており、本実施の形態では、各対象セッションのQoE予測値がtargetQoE以上となることである。また、帯域条件は、割当帯域候補ベクトルbwの各要素bwの総和Σi=1 bwが利用可能帯域bwtotal以下となることである。
 ステップS410において、最適割当帯域探索部12は、変数iに1を代入する。変数iは、対象セッションのそれぞれを識別するための変数である。以下、i番目の対象セッションを「セッションi」という。
 ステップS420において、最適割当帯域探索部12は、セッションiのQoE予測値であるQoE(i=1,2,…,N)をセッションiのアプリケーション情報とbwとに基づいて計算する。すなわち、セッションiに対してbwを割り当てた後の少し先の時点におけるQoEがQoEとして計算される。具体的には、まず、最適割当帯域探索部12は、セッションiに対してbwを割り当てた場合の、少し先の時点におけるセッションiに対応するアプリケーション情報の推定値を計算する。セッションiに対応するアプリケーション種別が動画の場合、最適割当帯域探索部12は、bwをセッションiに割り当てた場合の少し先の時点における再生停止情報及びビットレート系列のそれぞれの推定値を計算する。再生停止情報およびビットレート系列は、チャンク長およびビットレート選択アルゴリズムを用いて推定する。そこで、まずはチャンク長とビットレート選択アルゴリズムについて説明する。チャンク長は、1つの動画コンテンツを複数の塊に分割した際の、1つの塊がもつ動画の長さを意味する。また、この1つの塊をチャンクという。例えば、60秒の動画を30個のチャンクに分割した場合、チャンク長は2秒となる。チャンク長は、動画配信サービス事業者の設定ごとに異なるため、各動画配信サービス事業者の動画をダウンロードする際に端末で測定してもよいし、一般的に利用されているチャンク長を代表値として利用してもよい。また、それぞれのチャンクは、複数のビットレートでエンコードされている。動画配信サーバにチャンクを要求するプレイヤは、適切なビットレートでエンコードされたチャンクを要求することで、動画を視聴する。ビットレート選択アルゴリズムは、適切なビットレートを選択するために利用されるアルゴリズムの総称であり、例えば、直近のチャンクを受信した際の平均スループットを超えない最大のビットレートを選択するアルゴリズムがある。ビットレート選択アルゴリズムもチャンク長と同様に、動画配信事業者の動画をダウンロードする際にアルゴリズムの挙動を測定してもよいし、特定のアルゴリズムを近似的に利用してもよい。これらを用いて再生停止情報およびビットレート系列の推定値を計算する。まず、ビットレート系列は、要求したチャンクのビットレートを推定できれば良いため、ビットレート選択アルゴリズムに従って推定することができる。例えば、ビットレート系列に含まれるビットレートをチャンク長ごとの平均ビットレートとする場合、ビットレート系列は、現在のビットレート系列に、選択アルゴリズムに従って選択されたビットレートを新たに加えた系列になると推定できる。つまり、現在のビットレート系列を[700,1000]、選択されたビットレートを500kbpsとすると、ビットレート系列は[700,1000,500]と推定することができる。また、再生停止情報は、バッファ長を推定することにより推定することができる。例えば、バッファ長が実時間で2秒から4秒まで0であった場合、再生停止が1回発生し、再生停止時間が2秒であったと判断できる。そして、バッファ長は、ビットレート選択アルゴリズムとチャンク長およびbwを用いて推定できる。例として、チャンク長を2秒、次に要求するチャンクのビットレートを、ビットレート選択アルゴリズム従い、500kbps、現在のバッファ長を1秒、bwを250kbpsとした場合を考える。要求したチャンクを受信するためには500kbps×2秒=1000kbitsのデータを受信する必要があるため、250kbpsの帯域で受信すると、受信に4秒かかる。つまり、現在のバッファ長は1秒であるため、1秒後にバッファ長は0となり、再生停止状態が3秒経過した後にチャンクの受信が完了しバッファ長が2秒になると計算することができる。現在の再生停止情報が[(0,2)]であり、バッファ長が0になった時刻をセッション開始から実時間で5秒後とすると、再生停止情報は[(0,2),(5,8)]と推定することができる。一方、セッションiに対応するアプリケーション種別がWebの場合、最適割当帯域探索部12は、bwをセッションiに割り当てた場合の少し先の時点における通信時間の推定値を計算する。通信時間は、Webコンテンツサイズを用いて推定する。例えば、Webコンテンツサイズを500kB、bwを1000kbpsとした場合、通信時間は500×8/1000=4秒と計算することができる。ここで、バイトとビットの単位を変換するため、Webコンテンツサイズを8倍した。また、Webコンテンツサイズは、事前に代表的なWebサイトのコンテンツサイズを調査し、それらの平均値を用いてもよい。次に、最適割当帯域探索部12は、推定されたアプリケーション情報を公知のQoE推定モデルに入力することで、QoEを計算する。例えば、セッションiに対応するアプリケーション種別が動画の場合、再生停止情報及びビットレート系列のそれぞれの推定値が、公知のQoE推定モデル(例えば、「K. Yamagishi, and T. Hayashi, "Parametric Quality-Estimation Model for Adaptive-Bitrate-Streaming Services", IEEE Transactions on Multimedia, vol. 19, no. 7, pp. 1545-1557, Jul. 2017」参照)に入力されることで計算されてもよい。一方、セッションiに対応するアプリケーション種別がWebの場合、通信時間の推定値が、公知のQoE推定モデル(例えば、「T. Tominaga, et al., "Web-Browsing QoE Estimation Model", IEICE Transactions on Communications, vol. E100-B, no. 10, pp. 1837-1845, Oct. 2017」参照)に入力されることで計算されてもよい。
 なお、bwをセッションiに割り当てた場合の少し先の時点における再生停止情報及びビットレート系列のそれぞれの推定値や、bwをセッションiに割り当てた場合の少し先の時点における通信時間の推定値については、例えば、或るセッションに関して、割当帯域ごとに実験によって得られた値が予め補助記憶装置102等に記憶されており、当該値が推定値として利用されてもよい。
 続いて、最適割当帯域探索部12は、QoEがtargetQoE以上であるか否かを判定する(S430)。すなわち、QoEが品質条件を満たすか否かが判定される。
 QoEがtargetQoE未満である場合(S440でNo)、最適割当帯域探索部12は、bwをαだけ増加してステップS420以降を繰り返す。したがって、QoEがtargetQoE以上になるまでQoEの計算が繰り返される。なお、αは予め設定されるパラメータである。但し、bw>bwtotalとなった場合、セッションiの割当帯域はその時点におけるbwとしてステップS450以降に進む。
 一方、QoEがtargetQoE以上である場合(S440でNo)、最適割当帯域探索部12は、変数iに1を加算して(S450)、変数iの値とN(対象セッションの総数)とを比較する(S460)。変数iの値がN以下である場合(S450でNo)、最適割当帯域探索部12は、セッションiについてステップS420以降を実行する。変数iの値がNより大きい場合(S450でYes)、ステップS470へ進む。したがって、ステップS470へ進む時点において、全ての対象セッションについて、品質条件を満たすbwが特定される。
 ステップS470において、最適割当帯域探索部12は、bwが帯域条件を満たしているか否かを判定する。すなわち、割当帯域候補ベクトルbwの各要素bwの総和Σi=1 bwが利用可能帯域bwtotal以下であるか否かが判定される。
 bwが帯域条件を満たしている場合(S470でYes)、最適割当帯域探索部12は、bw'をbwに更新し(S480)、targetQoEをβだけ増加させて(S490)、ステップS410以降を繰り返す。一方、bwが帯域条件を満たしていない場合(S470でNo)、最適割当帯域探索部12は、bw'を最適割当帯域として最適割当帯域制御部13に出力する(S500)。
 以下、具体例に基づいて、最適割当帯域の探索処理の処理手順を説明する。当該具体例において、QoEinit=1。0、bwinit=250、α=250、β=1。0、bwtotal=1500、N=3とし、セッション1をWebセッション、セッション2をバッファ長5秒の動画セッション、セッション3をバッファ長3秒の動画セッションとする。
 ステップS400において、各変数の初期値は以下のように設定される。
targetQoE=1。0、bw'=bw=(250,250,250)
 ステップS410以降(1回目)において、各セッションについて、例えば、品質条件を満たす割当帯域bwが次のように探索される。
bw=250の時、QoE=1。0≧targetQoE=1。0
bw=250の時、QoE=3。5≧targetQoE=1。0
bw=250の時、QoE=2。5≧targetQoE=1。0
 この場合、全てのbwが初期値の状態で品質条件を満たすためαによって更新することなくステップS470へ進む。
 ステップS470(1回目)において、対象セッション全体について、帯域条件を満たすか否かが以下のように判定される。
bw+bw+bw=250+250+250=750≦bwtotal=1500
 この場合、帯域条件を満たすため、targetQoE及びbw'のそれぞれが次のように更新されてステップS410に戻る。
targetQoE=targetQoE+β=1。0+1。0=2。0
bw'=bw=(250,250,250)
 ステップS410以降(2回目)において、bw=250の時、QoE=1。0<targetQoE=2。0のため、bwが以下のように更新される。
bw=bw+α=250+250=500
 その後、例えば、各セッションについて、品質条件を満たす割当帯域bwが次のように探索される。
bw=500の時、QoE=2。0≧targetQoE=2。0
bw=250の時、QoE=3。5≧targetQoE=2。0
bw=250の時、QoE=2。5≧targetQoE=2。0
 この状態で全てのbwが品質条件を満たすためステップS470へ進む。
 ステップS470(2回目)において、対象セッション全体について、帯域条件を満たすか否かが以下のように判定される。
bw+bw+bw=500+250+250=1000≦bwtotal=1500
 この場合、帯域条件を満たすため、targetQoE及びbw'のそれぞれが次のように更新されてステップS410に戻る。
targetQoE=targetQoE+β=2。0+1。0=3。0
bw'=bw=(500,250,250)
 ステップS410以降(3回目)において、bw=500の時、QoE=2。0<targetQoE=3。0のため,bwが以下のように更新される。
bw=bw+α=500+250=750
 その後、各セッションについて、例えば、品質条件を満たす割当帯域bw及びbwが次のように探索される。
bw=750の時、QoE=3。0≧targetQoE=3。0
bw=250の時、QoE=3。5≧targetQoE=3。0
 一方、bw=250の時、QoE=2。5<targetQoE=3。0のため、bwが以下のように更新される。
bw=bw+α=250+250=500
 その結果、品質条件を満たす割当帯域bwが次のように探索される。
bw=500の時、QoE=3。0≧targetQoE=3。0
 この状態で全てのbwが品質条件を満たすためステップS470へ進む。
 ステップS470(3回目)において、対象セッション全体について、帯域条件を満たすか否かが以下のように判定される。
bw+bw+bw=750+250+500=1500≦bwtotal=1500
 この場合、帯域条件を満たすため、targetQoE及びbw'のそれぞれが次のように更新されてステップS410に戻る。
targetQoE=targetQoE+β=3。0+1。0=4。0
bw'=bw=(750,250,500)
 ステップS410以降(4回目)において、bw=750の時、QoE=3。0<targetQoE=4。0のため、bwが以下のように更新される。
bw=bw+α=750+250=1000
 bw=1000の時、QoE=4。0≧targetQoE=4。0
 bw=250の時、QoE=3。5<targetQoE=4。0のため、bwが以下のように更新される。
bw=bw+α=250+250=500
 その結果、品質条件を満たす割当帯域bwが次のように探索される。
 bw=500の時、QoE=4。0≧targetQoE=4。0、
 bw=500の時、QoE=3。0<targetQoE=4。0のため、bwが以下のように更新される。
bw=bw+α=500+250=750
 また、bw=750の時、QoE=3。5<targetQoE=4。0のため、bwが以下のように更新される。
bw=bw+α=750+250=1000
 その結果、品質条件を満たす割当帯域bwが次のように探索される。
bw=1000の時、QoE=4。0≧targetQoE=4。0、
 この状態で全てのbwが品質条件を満たすためステップS470へ進む。
 ステップS470(4回目)。において、対象セッション全体について、帯域条件を満たすか否かが以下のように判定される。
bw+bw+bw=1000+500+1000=2500>bwtotal=1500
 この場合、帯域条件が満たされないため、現時点のbw'=(750、250、500)が出力され、探索が終了する。
 上述したように、第1の実施の形態によれば、複数のタイミングにおいて、複数の種別のアプリケーションに対応する複数のセッションのそれぞれQoE予測値に基づいて、各セッションの割当帯域が探索される。
 したがって、時間的に変化するネットワーク環境において複数種類のアプリケーションを制御対象とした場合におけるQoEの低いセッション数を削減可能とすることができる。その結果、既存のネットワーク設備を効率的に利用しつつQoEの低いセッション数をより削減することが可能となる。更に、将来の設備投資やユーザ解約リスクの低減が可能となる。
 次に,第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。第2の実施の形態において特に言及されない点については,第1の実施の形態と同様でもよい。
 第2の実施の形態では、図3のステップS20の処理手順が第1の実施の形態と異なる。第1の実施の形態では、動画セッションのQoE予測値は、バッファ長予測値が考慮されずに決定される。バッファ長予測値を考慮しない場合、再生停止の発生リスクが増加し、最終的なQoEの低下を引き起こす可能性が高まる。そこで、第2の実施の形態のステップS20では、第1の実施の形態における品質条件に加え、動画セッションのバッファ長予測値が満たすべき条件が設定される。このような品質条件下で最適な割当帯域を探索するためには、割当帯域とQoE予測値の関係に加え、割当帯域とバッファ長予測値の関係が必要となる。後者の関係は、例えば、「池上大介, 本多泰理, 山本浩司, 野尻秀樹, 高橋玲, "プログレッシブダウンロード系サービスの停止時間推定法", 信学技報, vol. 111, no. 278, CQ2011-59, pp. 91-96, 2011年11月」に記載された技術を利用すれば予測可能である。
 図6は、第2の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。図6中、図5と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
 図6では、ステップS420がS420aに置換されている。また、ステップS440とS450との間に、ステップS441及びS442が追加されている。
 ステップS420aにおいて、最適割当帯域探索部12は、QoE予測値に加え、セッションiのバッファ長予測値bufferを計算する。
 ステップS441及びS442は、品質条件に対して、QoEがtargetQoE以上であることに加え、動画セッションiのバッファ長予測値bufferがバッファ長閾値bufferth以上であるという条件が追加されることを実現するためのステップである。
 すなわち、ステップS441において、最適割当帯域探索部12は、セッションiのアプリケーション種別が「動画」であるか否かを判定する。セッションiのアプリケーション種別が「動画」である場合(S441でYes)、最適割当帯域探索部12は、セッションiのバッファ長予測値bufferがバッファ長閾値bufferth以上であるか否かを判定する(S442)。バッファ長予測値bufferがバッファ長閾値bufferth未満である場合(S442でNo)、ステップS430に進む。バッファ長予測値bufferがバッファ長閾値bufferth以上である場合(S442でYes)、ステップS450へ進む。
 次に,第3の実施の形態について説明する。第3の実施の形態では第1の実施の形態と異なる点について説明する。第3の実施の形態において特に言及されない点については,第1の実施の形態と同様でもよい。
 第3の実施の形態では、図3のステップS20の処理手順が第1の実施の形態と異なる。第3の実施の形態のステップS20では、QoE予測値があらかじめ与えられた閾値targetQoE以上となるセッション数を最大化する割当帯域が探索される。
 図7は、第3の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。図7中、図5と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
 図7では、ステップS400がS400aに置換されている。また、ステップS410~S460の代わりにステップS510及びS520が実行される。更に、ステップS490の代わりにステップS530が実行される。
 ステップS400aにおいて、最適割当帯域探索部12は、更に、変数Uを初期化(U={1,2,…N})する。U={1,2,…N}は、セッション番号の集合を示す変数である。
 ステップS510において、最適割当帯域探索部12は、集合Uに係るセッションの中で、QoE予測値QoEがtargetQoE以上となるために必要な割当帯域が最も少ないセッションi'を計算(特定)する。なお、ステップS510において、f(bw)は、割当帯域bwを入力としてQoE予測値QoEを出力する関数を表す。
 続くステップS520において、最適割当帯域探索部12は、bwi'をQoEi'がtargetQoE以上となる最小の割当帯域とする。
 また、ステップS530において、最適割当帯域探索部12は、集合Uからi'を除いた差集合を集合Uに代入する。
 最適割当帯域探索部12は、上記の処理を帯域条件が満たされなくなるまで繰り返す(S470)。なお、第3の実施形態は、第2の実施の形態に記載した動画セッションのバッファ長に関する条件と組み合わせてもよい。この場合、ステップS510及びS520における条件の部分を「f(bw)≧ targetQoE && buffer ≧ bufferth」とすればよい。但し、アプリケーション種別が動画であるセッションにのみ「buffer ≧ bufferth」の条件が適用されるようにする。
 次に,第4の実施の形態について説明する。第4の実施の形態では第1の実施の形態と異なる点について説明する。第4の実施の形態において特に言及されない点については,第1の実施の形態と同様でもよい。
 第4の実施の形態では、図3のステップS20の処理手順が第1の実施の形態と異なる。第4の実施の形態のステップS20では、QoE予測値の平均が最大化される割当帯域が探索される。
 図8は、第4の実施の形態における最適割当帯域の探索処理の処理手順の一例を説明するためのフローチャートである。図8中、図5と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
 図8では、ステップS410~S460の代わりにステップS610及びS620が実行される。また、ステップS490は実行されない。
 ステップS610において、最適割当帯域探索部12は、割当帯域をαだけ増加させた場合のQoE予測値増加量が最大となるセッションi'を計算(特定)する。なお、ステップS610において、f(bw)は、割当帯域bwを入力としてQoE予測値QoEを出力する関数を表す。
 続くステップS620において、最適割当帯域探索部12は、bwi'をαだけ増加させる。
 最適割当帯域探索部12は、上記の処理を帯域条件が満たされなくなるまで繰り返す。なお、第4の実施形態は、第2の実施の形態に記載した動画セッションのバッファ長に関する条件と組み合わせてもよい。この場合、ステップS610において、アプリケーション種別が動画であるセッションについては、「buffer ≧ bufferth」を満たすセッションのみが、セッションi'の候補とされるようにすればよい。
 なお、本実施の形態において、アプリケーション情報取得部11は、取得部の一例である。最適割当帯域探索部12は、探索部の一例である。最適割当帯域制御部13は、制御部の一例である。
 以上,本発明の実施の形態について詳述したが,本発明は斯かる特定の実施形態に限定されるものではなく,請求の範囲に記載された本発明の要旨の範囲内において,種々の変形・変更が可能である。
10     制御装置
11     アプリケーション情報取得部
12     最適割当帯域探索部
13     最適割当帯域制御部
14     アプリケーション情報記憶部
100    ドライブ装置
101    記録媒体
102    補助記憶装置
103    メモリ装置
104    CPU
105    インタフェース装置
B      バス

Claims (7)

  1.  ネットワークにおいて通信中である、複数の種別のアプリケーションに係る複数のセッションのそれぞれについて、当該セッションに係るアプリケーション情報を複数のタイミングで取得する取得部と、
     前記アプリケーション情報に基づく前記各セッションのQoE予測値と、前記ネットワークの帯域に対する条件とに基づいて、前記複数のセッションのそれぞれの割当帯域を前記複数のタイミングで探索する探索部と、
     前記探索部により探索された割当帯域に基づいて、前記各セッションに対する帯域の割当を前記複数のタイミングで制御する制御部と、
    を有することを特徴とする制御装置。
  2.  前記探索部は,前記QoE予測値が最小であるセッションのQoE予測値が最大となるように、前記割当帯域を探索する、
    ことを特徴とする請求項1記載の制御装置。
  3.  前記探索部は,前記各セッションのQoE予測値が閾値以上となるセッション数が最大となるように、前記割当帯域を探索する、
    ことを特徴とする請求項1記載の制御装置。
  4.  前記探索部は,前記各セッションのQoE予測値の平均が最大となるように、前記割当帯域を探索する、
    ことを特徴とする請求項1記載の制御装置。
  5.  前記探索部は,動画のセッションに関する端末におけるバッファ長予測値が閾値以上となるように、前記割当帯域を探索する、
    ことを特徴とする請求項1乃至4いずれか一項記載の制御装置。
  6.  ネットワークにおいて通信中である、複数の種別のアプリケーションに係る複数のセッションのそれぞれについて、当該セッションに係るアプリケーション情報を複数のタイミングで取得する取得手順と、
     前記アプリケーション情報に基づく前記各セッションのQoE予測値と、前記ネットワークの帯域に対する条件とに基づいて、前記複数のセッションのそれぞれの割当帯域を前記複数のタイミングで探索する探索手順と、
     前記探索手順において探索された割当帯域に基づいて、前記各セッションに対する帯域の割当を前記複数のタイミングで制御する制御手順と、
    をコンピュータが実行することを特徴とする制御方法。
  7.  ネットワークにおいて通信中である、複数の種別のアプリケーションに係る複数のセッションのそれぞれについて、当該セッションに係るアプリケーション情報を複数のタイミングで取得する取得手順と、
     前記アプリケーション情報に基づく前記各セッションのQoE予測値と、前記ネットワークの帯域に対する条件とに基づいて、前記複数のセッションのそれぞれの割当帯域を前記複数のタイミングで探索する探索手順と、
     前記探索手順において探索された割当帯域に基づいて、前記各セッションに対する帯域の割当を前記複数のタイミングで制御する制御手順と、
    をコンピュータに実行させることを特徴とするプログラム。
PCT/JP2020/007227 2020-02-21 2020-02-21 制御装置、制御方法及びプログラム WO2021166251A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2020/007227 WO2021166251A1 (ja) 2020-02-21 2020-02-21 制御装置、制御方法及びプログラム
JP2022501609A JP7424465B2 (ja) 2020-02-21 2020-08-27 制御装置、制御方法及びプログラム
US17/800,078 US11805074B2 (en) 2020-02-21 2020-08-27 Control apparatus, control method and program
PCT/JP2020/032427 WO2021166288A1 (ja) 2020-02-21 2020-08-27 制御装置、制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/007227 WO2021166251A1 (ja) 2020-02-21 2020-02-21 制御装置、制御方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2021166251A1 true WO2021166251A1 (ja) 2021-08-26

Family

ID=77390554

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2020/007227 WO2021166251A1 (ja) 2020-02-21 2020-02-21 制御装置、制御方法及びプログラム
PCT/JP2020/032427 WO2021166288A1 (ja) 2020-02-21 2020-08-27 制御装置、制御方法及びプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/032427 WO2021166288A1 (ja) 2020-02-21 2020-08-27 制御装置、制御方法及びプログラム

Country Status (3)

Country Link
US (1) US11805074B2 (ja)
JP (1) JP7424465B2 (ja)
WO (2) WO2021166251A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011155600A (ja) * 2010-01-28 2011-08-11 Oki Electric Industry Co Ltd 通信制御装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3639792B2 (ja) * 2000-07-25 2005-04-20 株式会社日立製作所 ネットワークシステムとその通信帯域制御方法
JP5011408B2 (ja) 2010-02-22 2012-08-29 株式会社日立製作所 通信装置および通信システム
KR101192415B1 (ko) * 2011-01-25 2012-10-17 한국과학기술원 M2m 네트워크 제공방법 및 m2m 네트워크 단말
US9722887B2 (en) * 2011-03-15 2017-08-01 Verizon Patent And Licensing Inc. Adaptive quality of service (QoS) based on application latency requirements
CN103632209B (zh) * 2013-11-28 2016-05-11 国家电网公司 一种基于排队论的智能配用电业务数据传输带宽预测方法
US20150281980A1 (en) * 2014-04-01 2015-10-01 Qualcomm Incorporated Edca adjustment for poor performance nodes
US10862771B2 (en) 2016-11-10 2020-12-08 Ciena Corporation Adaptive systems and methods enhancing service quality of experience
US10448283B2 (en) 2017-08-07 2019-10-15 T-Mobile Usa, Inc. Dynamic predictive buffering
JP6919761B2 (ja) 2018-03-14 2021-08-18 日本電気株式会社 トラヒック分析装置、方法及びプログラム
CN110366206A (zh) * 2018-03-26 2019-10-22 华为技术有限公司 一种信息传输方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011155600A (ja) * 2010-01-28 2011-08-11 Oki Electric Industry Co Ltd 通信制御装置

Also Published As

Publication number Publication date
WO2021166288A1 (ja) 2021-08-26
JPWO2021166288A1 (ja) 2021-08-26
JP7424465B2 (ja) 2024-01-30
US11805074B2 (en) 2023-10-31
US20230103218A1 (en) 2023-03-30

Similar Documents

Publication Publication Date Title
JP5674880B2 (ja) 複数のクライアントにマルチメディアデータを送信するための方法、システム及びネットワーク
US8488661B2 (en) Systems and methods for data streaming
US9826016B2 (en) Fair adaptive streaming
Bentaleb et al. Common media client data (cmcd) initial findings
Farahani et al. ES-HAS: an edge-and SDN-assisted framework for HTTP adaptive video streaming
Quinlan et al. Delivery of adaptive bit rate video: balancing fairness, efficiency and quality
Abuteir et al. SDN based architecture to improve video streaming in home networks
Abuteir et al. An SDN approach to adaptive video streaming in wireless home networks
US20140082144A1 (en) Use of a receive-window size advertised by a client to a content server to change a video stream bitrate streamed by the content server
Nguyen et al. An adaptive streaming method of 360 videos over HTTP/2 protocol
WO2021166251A1 (ja) 制御装置、制御方法及びプログラム
Gama et al. Video streaming analysis in multi-tier edge-cloud networks
Dubin et al. A fair server adaptation algorithm for HTTP adaptive streaming using video complexity
Oliveira et al. QoE-based load balancing of OTT video content in SDN networks
Togou et al. An elastic dash-based bitrate adaptation scheme for smooth on-demand video streaming
Hayes et al. Adaptive bitrate video delivery using http/2 over mptcp architecture
Rodrigues et al. QoE-aware scheduling algorithm for adaptive HTTP video delivery in wireless networks
EP3788768B1 (en) Methods and systems for streaming media data over a content delivery network
CN109450815B (zh) 一种基于效用值的对等网络流媒体系统数据调度方法
Vu et al. Bandwidth estimation based on MACD for DASH
Pussep et al. Adaptive server allocation for peer-assisted video-on-demand
Kleinrouweler et al. Improving mobile video quality through predictive channel quality based buffering
Coutinho et al. Just-in-time proactive caching for dash video streaming
Li et al. Pipeline-based chunk scheduling to improve abr performance in DASH system
Phan-Xuan et al. Efficiency of QoE-driven network management in adaptive streaming over HTTP

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

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP