WO2012011378A1 - コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム - Google Patents

コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム Download PDF

Info

Publication number
WO2012011378A1
WO2012011378A1 PCT/JP2011/065177 JP2011065177W WO2012011378A1 WO 2012011378 A1 WO2012011378 A1 WO 2012011378A1 JP 2011065177 W JP2011065177 W JP 2011065177W WO 2012011378 A1 WO2012011378 A1 WO 2012011378A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
content distribution
transmission
receiving
packet
Prior art date
Application number
PCT/JP2011/065177
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 US13/811,598 priority Critical patent/US9307000B2/en
Priority to EP11809552.0A priority patent/EP2597823B1/en
Priority to JP2012525366A priority patent/JP5817724B2/ja
Publication of WO2012011378A1 publication Critical patent/WO2012011378A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities

Definitions

  • the present invention relates to a content distribution system, a content distribution apparatus, a content distribution method, and a program, and more particularly to a content distribution system that can suppress a decrease in the number of streams that can be distributed simultaneously and communication quality.
  • Distribution of content such as video and audio using networks such as the Internet is widespread.
  • the bit rate of the content data sent from the content distribution device (server) to the receiving terminal should be set appropriately according to the changing network conditions. is important.
  • the content distribution device periodically transmits a probe packet to the receiving terminal, estimates the network state from the fluctuation of the round-trip delay time of the probe packet, and estimates Content data is transmitted at a bit rate suitable for the network state.
  • Patent Literature 1 groups terminals with a short distance (small number of hops between terminals) when distributing contents from a distribution server to terminals by multicast, and distributes by predicting the available bandwidth for each group. A technique for determining a bit rate to be performed is described.
  • Patent Document 2 describes a multicast data distribution method in which, prior to transmission of content data, a bandwidth that can be reserved in all communication paths of all receiving terminals is checked, and data is transmitted according to this bandwidth. ing.
  • Patent Document 3 describes stream data distribution and the like in which a possible bandwidth of a communication path is estimated using a test stream.
  • Patent Document 4 describes a technique for refining measurement of IP network performance using probe packets.
  • Non-Patent Document 1 a specified number of probe packets are transmitted to all receiving terminals that receive the content distributed from the content distribution device. There is a need to.
  • the network state between the distribution device and the receiving terminal is mainly determined by the presence of a bottleneck link (link with the smallest available bandwidth) on the communication path.
  • the bottleneck link and the available bandwidth vary with time depending on the traffic of a specific terminal, the communication state of a specific communication path, and the like. For this reason, terminals with the same bottleneck link often tend to have similar temporal variations in bit rate.
  • terminals that do not have the same bottleneck link may be set to the same group. If the rate is controlled, the control is not appropriate. For example, there are cases where the bit rate is suppressed more than necessary even when there is a margin in the bandwidth, and vice versa. Conversely, in this method, terminals with the same bottleneck link may be in different groups, and in this case, the effect of reducing the number of probe packets cannot be obtained.
  • Patent Documents 2 to 4 do not describe a technique for collectively controlling the bit rate for terminals having the same bottleneck link. Therefore, these techniques do not solve the above problem.
  • An object of the present invention is to reduce the number of probe packets transmitted from a distribution device to a receiving terminal while appropriately controlling the bit rate for each receiving terminal, thereby reducing the number of streams and communication quality that can be simultaneously distributed.
  • Content delivery system, content delivery apparatus, content delivery method, and program are examples of content delivery apparatus, content delivery method, and program.
  • a content distribution system comprises a content distribution device and a plurality of receiving terminals connected to each other via a network, and the content distribution device sends content data to the receiving terminal.
  • a content distribution system in which a content distribution device transmits content data to a reception terminal, a probe packet transmission unit that transmits a network state estimation probe packet to the reception terminal, and reception of the probe packet A probe packet receiving unit that receives a reply packet from the terminal, a time required from the transmission of the probe packet to the reception of the reply packet, and a transmission interval of the probe packet and a bit rate of content data to be transmitted from the time required Decide
  • the transmission control unit is a group of receiving terminals having similar temporal variations in bit rate among the receiving terminals, and collectively for receiving terminals belonging to the same small group
  • a probe packet transmission interval and a bit rate of content data to be transmitted are determined.
  • a content distribution apparatus configured such that a plurality of reception terminals are connected to each other via a network, and the content distribution apparatus transmits content data to the reception terminal.
  • a reception unit, and a transmission control unit that specifies a required time from the transmission of the probe packet to the reception of the return packet and determines a transmission interval of the probe packet and a bit rate of the content data to be transmitted from the required time,
  • the transmission control unit in the receiving terminal The receiving terminals having similar temporal variations in the traits are classified into small groups, and the transmission interval of probe packets and the bit rate of the content data to be transmitted are collectively determined for the receiving terminals belonging to the same small group.
  • a content distribution method comprises a content distribution device and a plurality of receiving terminals connected to each other via a network, and the content distribution device sends content data to the receiving terminal.
  • the content packet transmission unit of the content distribution apparatus transmits content data to the receiving terminal
  • the probe packet transmission unit of the content distribution apparatus transmits a probe packet for network state estimation to the receiving terminal.
  • the probe packet receiving unit of the content distribution device receives the reply packet from the receiving terminal for the probe packet, and the transmission control unit of the content distribution device specifies the time required from the transmission of the probe packet to the reception of the reply packet, Sent from the specified time
  • the transmission control unit of the content distribution device determines the bit rate of the content data, and the transmission control unit of the content distribution device defines a receiving terminal that is similar in temporal variation of the bit rate among the receiving terminals as a small group,
  • the transmission control unit of the content distribution apparatus determines a transmission interval of probe packets for receiving terminals belonging to the same small group in a lump.
  • a content distribution program comprises a content distribution device and a plurality of receiving terminals connected to each other via a network, and the content distribution device sends content data to the receiving terminal.
  • a procedure for sending content data to a receiving terminal a procedure for sending a probe packet for network state estimation to the receiving terminal, a reply packet from the receiving terminal to the probe packet.
  • the procedure for receiving the procedure for specifying the required time from the sending of the probe packet to the reception of the reply packet, the procedure for determining the bit rate of the content data transmitted from the specified required time, the time of the bit rate in the receiving terminal
  • the receiving terminals having similar bit rate temporal variations that is, the same bottleneck link
  • transmission is performed to the same small group.
  • the number of probe packets can be reduced.
  • the number of probe packets sent from the distribution apparatus to the reception terminal is reduced while appropriately controlling the bit rate for each reception terminal, thereby suppressing the decrease in the number of streams that can be distributed simultaneously and the communication quality. It is possible to provide a content distribution system, a content distribution device, a content distribution method, and a program that can be used.
  • FIG. 3 It is explanatory drawing explaining the large group and small group which are called in the content delivery system shown in FIG. 3 is a flowchart illustrating an operation of the content distribution apparatus when one of the receiving terminals makes a new content distribution start request to the content distribution apparatus in the content distribution system illustrated in FIG. 1.
  • 3 is a flowchart illustrating an operation of the content distribution apparatus when a response from a receiving terminal to a probe packet is received in the content distribution system illustrated in FIG. 1. It is a flowchart which shows the detail of the process which the packet transmission control function shown as step S24 of FIG. 9 determines the transmission time of a bit rate and a probe packet. It is a flowchart which shows the detail of the process shown as step S104 of FIG.
  • FIG. 10 which determines whether the packet transmission control function adds a receiving terminal to a small group.
  • 3 is a flowchart illustrating an operation of the content distribution apparatus when one of the receiving terminals makes a distribution stop request to the content distribution apparatus in the content distribution system illustrated in FIG. 1.
  • 13 is a flowchart for explaining in more detail the operation of determining whether or not the packet transmission control function should merge small groups, which is described as step S32 in FIG. It is explanatory drawing which shows the content of each table memorize
  • 14A shows a terminal management table
  • FIG. 14B shows a probe management table
  • FIG. 14C shows a group control information management table
  • FIG. 14D shows a terminal control information management table. It is explanatory drawing which shows the content of each table memorize
  • 15A shows a terminal management table
  • FIG. 15B shows a probe management table
  • FIG. 15C shows a group control information management table
  • FIG. 15D shows a terminal control information management table. It is explanatory drawing which shows the content of each table memorize
  • 16A shows a terminal management table
  • FIG. 16B shows a probe management table
  • FIG. 16C shows a group control information management table
  • FIG. 16D shows a terminal control information management table. It is explanatory drawing which shows the content of each table memorize
  • 17A shows a terminal management table
  • FIG. 17B shows a probe management table
  • FIG. 17C shows a group control information management table
  • FIG. 17D shows a terminal control information management table. It is explanatory drawing which shows the content of each table memorize
  • 18A shows a terminal management table
  • FIG. 18B shows a probe management table
  • FIG. 18C shows a group control information management table
  • FIG. 18D shows a terminal control information management table.
  • FIG. 22 is a flowchart illustrating operations of the content transmission device and the distribution control device when one of the reception terminals makes a new content distribution start request to the content transmission device in the content distribution system illustrated in FIG. 21.
  • FIG. 22 is a flowchart illustrating an operation of the distribution control apparatus when a response from the receiving terminal to the probe packet is received in the content distribution system illustrated in FIG. 21.
  • FIG. 22 is a flowchart illustrating operations of the content transmission device and the distribution control device when one of the reception terminals makes a distribution stop request to the content transmission device in the content distribution system illustrated in FIG. 21.
  • a content distribution system 1 is configured such that a content distribution device 10 and a plurality of receiving terminals 20 are connected to each other via a network 30, and the content distribution device transmits content data to the receiving terminals. Distribution system.
  • the content distribution apparatus 10 includes a content packet transmitting unit 103 that transmits content data to the receiving terminal, a probe packet transmitting unit 104 that transmits a probe packet for network state estimation to the receiving terminal, and a reply packet from the receiving terminal to the probe packet.
  • a probe packet receiving unit 105 that receives the packet, and a transmission control that specifies the required time from the transmission of the probe packet to the reception of the return packet and determines the transmission interval of the probe packet and the bit rate of the content data to be transmitted from the required time Part 102. Then, the transmission control unit 102 sets the receiving terminals having similar bit rate temporal variations among the receiving terminals as a small group, and collectively collects the probe packet transmission interval and the receiving terminals belonging to the same small group. The bit rate of the content data to be transmitted is determined.
  • the transmission control unit 102 also has a function of determining temporal variations in the bit rate of each receiving terminal belonging to the small group and reconfiguring the small group based on the determination result.
  • the transmission control unit 102 is similar to the existing small group in time variation of the bit rate with respect to the receiving terminals that do not belong to the small group, and the number of receiving terminals belonging to the small group is given in advance. If it is within the upper limit, the receiving terminal is added to the small group.
  • the transmission control unit 102 performs the determination of the temporal variation of the bit rate of the receiving terminal and the reconfiguration of the small group every time a predetermined number of probe packets are transmitted.
  • the transmission control unit 102 receives the fact that the session control unit has received a distribution stop request from one of the receiving terminals, and the temporal variation of the bit rate is similar among the existing small groups. In addition, if the total number of receiving terminals belonging to the small group is within the upper limit, it has a function of merging those small groups.
  • the content distribution system 1 of the present embodiment reduces the number of probe packets transmitted to the same small group, the number of streams that can be simultaneously distributed, and the communication for each receiving terminal. It becomes possible to suppress deterioration in quality. Hereinafter, this will be described in more detail.
  • FIG. 1 is an explanatory diagram showing a configuration of a content distribution system 1 according to the first embodiment of the present invention.
  • the content distribution system 1 includes a content distribution device 10 and a plurality of receiving terminals 20a, 20b, 20c,.
  • the receiving terminals 20a, 20b, 20c,... are collectively referred to as the receiving terminal 20. In some cases, it is simply a terminal.
  • the content distribution apparatus 10 includes a main arithmetic control unit (CPU) 11 that executes a computer program, a storage unit (main storage unit and an external storage unit such as a hard disk) 12 for storing various data and programs, and a network 30.
  • a computer device server
  • communication means 13 connected to the computer and performing data communication with other computers.
  • a session control unit 101 that receives a distribution start request or a distribution stop request from the receiving terminal 20, and a probe that notifies a later-described transmission control unit 102 of information about a reply to the probe packet received from the receiving terminal 20.
  • the packet receiving unit 105 operates as a computer program.
  • the information about the reply to the probe packet here includes the source terminal of the reply, the probe packet ID, and the reception time.
  • the main arithmetic control means 11 is also based on the control from the transmission control unit 102 and the transmission control unit 102 that control the content packet transmission unit 103 and the probe packet transmission unit 104 described later based on the information received from the probe packet reception unit 105.
  • the content packet transmitting unit 103 that packetizes the content data and transmits it to the receiving terminal 20, and the probe packet transmitting unit 104 that generates the probe packet based on the control from the transmission control unit 102 and transmits the probe packet to the receiving terminal 20
  • the content packet transmitting unit 103 that packetizes the content data and transmits it to the receiving terminal 20
  • the probe packet transmitting unit 104 that generates the probe packet based on the control from the transmission control unit 102 and transmits the probe packet to the receiving terminal 20
  • the content packet transmitting unit 103 that packetizes the content data and transmits it to the receiving terminal 20
  • the probe packet transmitting unit 104 that generates the probe packet based on the control from the transmission control unit 102 and transmits the probe packet
  • a content storage unit 111 which is a storage area for storing various types of content to be distributed in a format that can be distributed at a plurality of types of bit rates, is secured, in which various types of content are stored in advance.
  • the content is H.264. If the data is stored in a hierarchically encoded format such as H.264 / SVC (Scalable Video Coding), the capacity of the content storage unit 111 can be reduced.
  • the content packet transmission unit 103 retrieves content data from the content storage unit 111 and transmits it to the receiving terminal 20 at a bit rate instructed by the transmission control unit 102.
  • a terminal information storage unit 112 described later is also secured.
  • the transmission control unit 102 sends each reception terminal 20 based on the distribution start notification or distribution stop notification received from the session control unit 101 and the transmission source terminal, probe packet ID, and reception time received from the probe packet reception unit 105.
  • the bit rate of the content to be distributed and the transmission time of the probe packet are determined, and the content packet transmission unit 103 and the probe packet transmission unit 104 are instructed.
  • the receiving terminal 20 is connected to the network 30 and distributed from the content distribution device 10, although the type of device is not particularly limited, such as a computer device, a mobile phone terminal, a smart phone, or an IPTV (Internet Protocol Television) set-top box. It has a function of receiving and reproducing content, and a function of receiving a probe packet transmitted from the content distribution apparatus 10 and returning a response packet in response thereto.
  • the type of device is not particularly limited, such as a computer device, a mobile phone terminal, a smart phone, or an IPTV (Internet Protocol Television) set-top box. It has a function of receiving and reproducing content, and a function of receiving a probe packet transmitted from the content distribution apparatus 10 and returning a response packet in response thereto.
  • the probe packet here is, for example, “Echo Request” in ICMP (Internet Control Message Protocol, RFC 792) supported by most network devices compliant with TCP / IP (Transmission Control Protocol / Internet Protocol).
  • the response packet to this is also “Echo Reply” in ICMP.
  • “UDP Echo” of UDP User Datagram Protocol, RFC862 can be used as a probe packet and a response packet.
  • a field called a sequence number is defined. Therefore, for example, when the content distribution apparatus 10 transmits “EchoERequest”, an arbitrary value is set in the sequence number field in the packet. When the receiving terminal 20 that has received this returns “EchoEReply”, it returns using the value set in “Echo Request” as it is in the sequence number field in the packet. Therefore, if a different sequence number field is set for each probe packet transmitted by the content distribution apparatus 10, it is easy to identify to which probe packet the returned response packet is.
  • the network 30 is a packet switching network, and includes a network whose quality (bandwidth) is not guaranteed, such as the Internet, ADSL (Asymmetric Digital Subscriber Line), and a wireless network.
  • a network whose quality (bandwidth) is not guaranteed such as the Internet, ADSL (Asymmetric Digital Subscriber Line), and a wireless network.
  • FIG. 2 is an explanatory diagram showing a more detailed configuration of the transmission control unit 102 shown in FIG.
  • the transmission control unit 102 has a session information reception function 121 for receiving a delivery start notification / delivery stop notification of each terminal from the session control unit 101, a probe packet response source terminal, probe packet ID, and reception time from the probe packet receiving unit.
  • the transmission control unit 102 further stores information received from the session information reception function 121 and the probe packet information reception function 122 in the terminal information storage unit 112 described later, and calculates the bit rate of the content to be distributed and the probe packet transmission time.
  • Terminal information control function 123 for instructing the packet transmission control function 124, the bit rate of the content to be extracted from the terminal information storage unit 112 described below based on the instruction of the terminal information control function 123 and the transmission time of the probe packet
  • a packet transmission control function 124 for instructing the content packet transmission unit 103 and the probe packet transmission unit 104.
  • a terminal information storage unit 112 which is a storage area in which the terminal information control function 123 stores each data described later, is secured.
  • 3 to 6 are explanatory diagrams showing the contents stored in the terminal information storage unit 112 shown in FIG.
  • the terminal information storage unit 112 stores respective tables such as a terminal management table 151, a probe management table 152, a group control information management table 153, and a terminal control information management table 154. An entry in each table includes terminal information.
  • the control function 123 adds and deletes, and the packet transmission control function 124 refers to it.
  • a terminal identifier 151a corresponding to each receiving terminal 20 to be distributed, and a large group ID 151b and a small group ID 151c corresponding to each terminal identifier 151a are registered.
  • the large group ID 151b and the small group ID 151c will be described later.
  • the terminal identifier 151a may be anything as long as each terminal can be uniquely identified.
  • the IP address of each receiving terminal 20 may be used, or a host name based on a domain name system may be used. Good.
  • an IP address is used as the terminal identifier 151a.
  • the probe management table 152 shown in FIG. 4 has one table for each terminal identifier 151a. In each of these tables, the probe packet ID 152a of the probe packet transmitted to each receiving terminal 20 and its A transmission time 152b, a reception time 152c when a reply to the transmission time 152b is received, and a flag 152d to be described later for the packet are registered.
  • the group control information management table 153 shown in FIG. 5 includes the large group ID 151b and the small group ID 151c registered in the terminal management table 151, the execution time 153a of the control performed by the content distribution apparatus 10 for each of the large group ID 151b and the small group ID 151c.
  • the control result 153b is registered.
  • the control result 153b here is specifically the bit rate of each terminal of the group corresponding to the execution time 153a.
  • the terminal control information management table 154 shown in FIG. 6 includes a terminal identifier 151a registered in the terminal management table 151, a control execution time 154a performed by the content distribution apparatus 10 for each of the terminal identifiers 151a, and a control result 154b. Is registered.
  • the control result 154b here is specifically the bit rate of the terminal corresponding to the execution time 154a.
  • FIG. 7 is an explanatory diagram for explaining a large group and a small group in the content distribution system 1 shown in FIG.
  • a plurality of receiving terminals 20 are grouped into one small group, but at that time, they are greatly separated in network topology (connection form) (that is, it is unlikely that they share the same bottleneck link).
  • network topology connection form
  • a plurality of small groups are combined into a larger group. More specifically, a plurality of small groups existing in the same ISP, adjacent areas, or the like are defined as one large group.
  • the receiving terminals 20a to 20d belong to the same large group 60a, and among them, the receiving terminals 20a to 20c having the same bottleneck link 40 are the same small. It belongs to group 50a.
  • the receiving terminal 20e does not belong to any large group and does not belong to any small group.
  • the receiving terminal 20d belongs to the large group 60a, but does not belong to any small group.
  • the small group does not mean that the receiving terminals 20 having the same type of content received from the content distribution apparatus 10 become one small group, but tend to have the same temporal variation in bit rate.
  • the receiving terminal 20 shown becomes one small group. That is, in the content distribution apparatus 10, since the receiving terminals 20 that show the same tendency in temporal variation of the bit rate are considered to have the same bottleneck link 40, they are collectively treated as one small group. Change the bit rate etc. in a group. Details will be described below.
  • FIG. 8 is a flowchart showing the operation of the content distribution apparatus 10 when one of the receiving terminals 20 makes a new content distribution start request to the content distribution apparatus 10 in the content distribution system 1 shown in FIG. is there.
  • the terminal information control function 123 of the transmission control unit 102 determines a large group to which the receiving terminal belongs, An entry related to the new terminal identifier 151a is added to the terminal management table 151 of the terminal information storage unit 112, and a probe management table 152 corresponding to the terminal identifier 151a is newly added (step S12).
  • the packet transmission control function 124 determines the initial value of the bit rate and the transmission time of the probe packet, and instructs the content packet transmission unit 103 to start distribution. Thereby, distribution of the content designated by the receiving terminal 20 is newly started (step S13).
  • the initial value of the bit rate here is the method of selecting the lowest bit rate stored in advance in the content storage unit 111, the method of determining using the data at the time of past distribution, and the available bandwidth before distribution.
  • there is a method of determining based on the measurement result but the determination method of the initial value itself is not within the scope of the present invention, so that any known technique other than these can be used.
  • FIG. 9 is a flowchart showing the operation of the content distribution apparatus 10 when the content distribution system shown in FIG. 1 receives a response from the receiving terminal 20 to the probe packet.
  • the probe packet receiving unit 105 of the content distribution apparatus 10 receives the response packet (step S21)
  • the terminal identifier 151a of the transmission source terminal, the probe packet ID 152a, and the reception time 152c are transmitted to the transmission control unit 102, and the transmission control unit 102 is transmitted.
  • the terminal information control function 123 stores the received information in each field of the probe management table 152 (step S22).
  • the terminal information control function 123 determines whether or not the response of the received probe packet triggers control, that is, whether or not the flag 152d corresponding to the ID 152a of the probe packet is set (step S23). If the response packet is a trigger, the packet transmission control function 124 determines the bit rate and the probe packet transmission time (step S24). Details of the process for determining the bit rate and probe packet transmission time will be described below.
  • FIG. 10 is a flowchart showing details of the process in which the packet transmission control function 124 determines the bit rate and the transmission time of the probe packet, which is shown as step S24 in FIG.
  • the packet transmission control function 124 first determines whether or not the receiving terminal 20 that has transmitted the probe packet response belongs to the small group (step S101). If the packet does not belong to the small group, the processing of steps S102 to S104 is performed. Then, the transmission bit rate is determined by the receiving terminal 20 alone. If it belongs to the small group, the process proceeds to steps S105 to S109.
  • the packet transmission control function 124 acquires the transmission time 152b and the reception time 152c of the probe packet from the probe management table 152 (step S102), and the transmission time 152b and the reception time 152c.
  • the transmission bit rate is determined based on the difference between the two, that is, the round-trip delay time of the probe packet (step S103). More specifically, as described in Non-Patent Document 1, for example, the transmission bit is reduced by a method such as decreasing the round-trip delay time of a specified number of probe packets if there is an increasing tendency, and increasing if there is no increasing tendency. The rate can be determined.
  • step S104 determines whether or not to add the receiving terminal 20 to the small group (step S104), and proceeds to the process of step S109 described later. Details of the processing in step S104 will be described later with reference to FIG.
  • FIG. 11 is a flowchart showing details of the process of determining whether or not the packet transmission control function 124 adds the receiving terminal 20 to the small group, which is shown as step S104 in FIG.
  • the packet transmission control function 124 first selects a candidate for a small group to be added within the large group to which the receiving terminal 20 belongs (step S151).
  • Small group candidates to be added are the control result 153b (bit rate) recorded in the group control information management table 153 of each group and the control result 154b (bit rate) recorded in the terminal control information management table 154 of the receiving terminal 20. ) And a similar temporal variation are selected, and it is determined that there is no candidate when the elapsed time from the start of distribution is short and there is no sufficient control history. If there is no candidate small group, a new small group is generated and set as an input candidate.
  • the packet transmission control function 124 determines whether or not the number of terminals in the small group that is a candidate for input has reached a predetermined upper limit (step S152). In order to transmit the minimum probe packet to each receiving terminal 20, an upper limit is set in advance for the number of terminals in each small group. If the upper limit is not reached, the receiving terminal 20 is added to the small group as it is (step S154), and if the upper limit is reached, the candidate small group is divided into two (step S153).
  • receiving terminal 20 by adding the receiving terminal 20 to a small group based on the history of past control results, receiving terminals whose bit rates are close to each other, that is, receiving terminals that are likely to have the same bottleneck link are connected. Can be in the same small group.
  • the packet transmission control function 124 acquires the transmission / reception times of the probe packets necessary for controlling all the receiving terminals 20 in the small group from the terminal information storage unit 112 (step S105).
  • the transmission bit rate to each receiving terminal 20 is determined by the method described in Non-Patent Document 1 (step S106).
  • the determined transmission bit rate is stored as a control result 154b of the terminal control information management table 154.
  • the packet transmission control function 124 determines the transmission bit rate of the entire small group based on the determination result of each receiving terminal 20 in the small group (step S107).
  • the determined bit rate for each small group is stored as the control result 153b of the group control information management table 153.
  • the majority of the determination results (bit rate increase / maintenance / decrease) for each receiving terminal 20 may be taken, and the control contents of all the receiving terminals 20 may be made to follow the majority. Also, the bit rate increases as +1, maintains as 0, and decreases as -1 point, and the average value of the points is calculated. If the average value is 0.5 or more, all receiving terminals in the small group The bit rate of 20 is increased, and if it is ⁇ 0.5 or less, the bit rates of all receiving terminals 20 in the small group may be decreased, and may be maintained in other cases.
  • the packet transmission control function 124 reconfigures the small group (step S108).
  • the small group reconfiguration is an operation of moving the receiving terminal 20 that has a determination result different from the control result of the entire small group to another small group. For example, when the transmission bit rate is increased for the entire small group Then, the receiving terminal 20 determined to have a rate drop is moved to another small group. Finally, the probe packet transmission time to each receiving terminal 20 is determined (step S109).
  • the transmission bit rate is determined by combining the probing results of the receiving terminals 20 in the small group, transmission is performed per receiving terminal 20 without reducing accuracy.
  • the number of probe packets can be reduced. For example, when 10 probe packets are transmitted to each receiving terminal 20 at intervals of 0.1 seconds, and 5 receiving terminals 20 are included in the small group, the reception included in the small group is received. By transmitting two probe packets per second to the terminal 20, the number of probe packets can be reduced to 1/5. Further, the probe packet to be transmitted last is determined in a predetermined control interval, and the flag 152d of the probe management table 152 is set.
  • FIG. 12 is a flowchart showing the operation of the content distribution apparatus 10 when one of the receiving terminals 20 makes a distribution stop request to the content distribution apparatus 10 in the content distribution system shown in FIG.
  • the packet transmission control function 124 stops the distribution of the corresponding content, and the entry related to the corresponding terminal identifier 151a from the terminal management table 151.
  • the probe management table 152 corresponding to the terminal identifier 151a is deleted (step S31).
  • the packet transmission control function 124 determines whether or not the small groups should be merged (step S32). Details of the operation will be described next.
  • FIG. 13 is a flowchart for explaining in more detail the operation of determining whether or not the packet transmission control function 124 should merge small groups, which has been described as step S32 in FIG. Since there is an upper limit on the number of receiving terminals in each small group, if the number of receiving terminals decreases by one, the small group to which the receiving terminal 20 whose distribution has stopped may be merged with other small groups. obtain.
  • the packet transmission control function 124 first selects a mergeable candidate among the remaining small groups based on the same criteria as in step S151 of FIG. 11 (step S161). More specifically, the temporal variation of the bit rate recorded in the control result 153b recorded in the group control information management table 153 of each group is similar to that of the small group to which the receiving terminal 20 that stopped distribution belongs. The candidate for merger.
  • step S162 it is determined whether or not the total number of terminals after the distribution of the small group to which the receiving terminal 20 whose distribution has stopped belongs and the small group that is a merger candidate exceeds the upper limit (step S162). If not, the small groups are merged and the process is terminated (step S163). If it exceeds, the process ends without merging.
  • the content distribution apparatus 10 creates a terminal management table 151, a group control information management table 153, and a terminal control information management table 154 when activated. These tables have no entry at the start of distribution.
  • the terminal identifier in the terminal management table 151 the IP address of each receiving terminal 20 is used.
  • FIG. 14 is an explanatory diagram showing the contents of each table stored in the terminal information storage unit 112 at the stage when the processing from when the distribution request is received from the first receiving terminal until the probe management table 152 is created is completed.
  • 14A shows the terminal management table 151
  • FIG. 14B shows the probe management table 152
  • FIG. 14C shows the group control information management table 153
  • FIG. 14D shows the terminal control information management table 154.
  • the upper 8 bits of the IP address (the part corresponding to A when the IP address is expressed as ABCD) are made into the same large group, and the upper 8 bits are decimal numbers.
  • the one with the notation 10 is designated as a large group A.
  • ISP Internet Service Provider
  • location may be checked from the IP address, and the information may be used.
  • GPS information or the like can also be used.
  • the packet transmission control function 124 determines the initial value of the bit rate and the transmission time of the probe packet, and instructs the content packet transmission unit 103 to start distribution.
  • content distribution is newly started (step S13 in FIG. 8).
  • distribution is started at the initial bit rate value described in the setting file in advance.
  • FIG. 15 is an explanatory diagram showing the contents of each table stored in the terminal information storage unit 112 at the stage when the process from determining the transmission time of the probe packet to setting the flag is completed.
  • the content packet transmission unit 103 and the probe packet transmission unit 104 start transmission of the content packet and the probe packet based on the above instructions from the transmission control unit 102, respectively.
  • the probe packet receiving unit 105 When the probe packet receiving unit 105 receives a response of the probe packet from the receiving terminal 20 (step S21 in FIG. 9), the probe packet receiving unit 105 notifies the transmission control unit 102 of this, and the terminal information control function 123 of the transmission control unit 102 performs the terminal information storage unit.
  • the reception time of the response packet is stored in the reception time field of the probe management table 152 of 112 (step S22 in FIG. 9).
  • the bit rate is determined based on the difference between the transmission time 152b and the reception time 152c, that is, the round-trip delay time of the probe packet.
  • the control result (changed bit rate) is stored as the control result 154b of the terminal control information management table 154 (steps S23 to S24 in FIG. 9).
  • step S24 of FIG. 9 the determination method of the bit rate in step S24 of FIG. 9 will be described in detail.
  • the terminal information control function 123 executes the processing of steps S102 to S104 in FIG. In this embodiment, if it is less than 10 seconds from the start of distribution, the addition determination to the small group is not performed.
  • step S34 is executed after 10 seconds or more have elapsed from the start of distribution, an addition determination process for a small group in step S104 (or FIG. 11) in FIG. 10 is performed.
  • FIG. 16 is an explanatory diagram showing the contents of each table stored in the terminal information storage unit 112 at the stage when the processing until a small group is newly created and registered is completed.
  • This determination is made by comparing control histories for the past 10 seconds. In this embodiment, it is observed whether the bit rate is increased, maintained, or decreased at each control time, and if it is a small group that completely matches, it is added there, and there is no small group that completely matches. Creates a new small group consisting only of the terminal. If there are a plurality of small groups that completely match and the total number of terminals is equal to or less than the upper limit of the number of terminals in the small group, the groups are merged.
  • the bit rate of the small group 1 is maintained, increased, decreased, and increased.
  • FIG. 18 is an explanatory diagram showing the contents of each table stored in the terminal information storage unit 112 at time 40 [s].
  • a method for determining the probe packet transmission time to each receiving terminal 20 will be described.
  • five probe packets are transmitted per second to terminals not belonging to the small group.
  • the total number of probe packets to terminals belonging to each small group becomes 10 in 2 seconds. Like that.
  • probe packets are transmitted to each terminal in 2 seconds.
  • five probe packets may be transmitted to one terminal in the first second, and five packets may be transmitted to the other terminal in the next one second, or alternately every 0.2 seconds ( (To one terminal at time 0, 0.4, 0.8,..., And to the other terminal at times 0.2, 0.6, 1.0,).
  • the number of probe packets to be transmitted is not necessarily uniform for each receiving terminal.
  • FIG. 19 illustrates an example of the bit rate increase / maintenance / decrease determination result in step S106 of a small group including three receiving terminals, and an example of the increase / decrease tendency of the transmission rate of the entire small group determined in step S107.
  • the increase / decrease in the transmission rate of the entire group is determined by majority decision from the control result of the receiving terminals belonging to the small group. Further, at the time of small group reconfiguration, the control result of the entire group for the past 10 seconds is compared with the determination result of each receiving terminal, and the one with a large difference is deleted from the group.
  • the receiving terminal to be deleted is a terminal whose control result and determination result for the entire group are different from each other by a predetermined number of times.
  • FIG. 19 shows that the bit rate value of each receiving terminal A to C recorded as the control result 154b of the terminal control information management table 154 is “increase” every 2 seconds at the time 200 to 208 of each receiving terminal. Indicates whether it has been “decreased” or “maintained”. In the example shown here, since the receiving terminal 3 shows a tendency different from other terminals, the receiving terminal C is deleted from this small group and added to the other small group. The method for determining the small group to be added is the same as the method for adding a new receiving terminal to the small group.
  • FIG. 20 is an explanatory diagram showing an example of the number of receiving terminals and the control history of the small groups X to Z in the same large group. Three, three, and one receiving terminal 20 belong to these small groups X to Z, respectively. Further, the upper limit of the number of receiving terminals per one small group is five. Under such circumstances, at time 210, one receiving terminal 20 belonging to the small group Y transmits a distribution stop request to the content distribution apparatus 10.
  • the content distribution apparatus 10 Upon receiving this distribution stop request, the content distribution apparatus 10 stops the distribution of the content to the terminal (step S31), and the small group (small group 2 in this example) to which the reception terminal whose distribution has stopped belongs and other small groups. It is determined whether or not the group can be merged (step S32). In this example, whether or not merge is possible is determined by comparing control histories for the past 10 seconds.
  • FIG. 20 shows that the bit rate value of each small group X to Z recorded as the control result 153b of the group control information management table 153 is “increased” every 2 seconds at the time 300 to 308 of each receiving terminal. Indicates whether it has been “decreased” or “maintained”. In the example shown here, since the control history of the small group X coincides with the control history of the small group Y, the small groups X and Y become merger candidates (step S161).
  • the packet transmission control function 124 determines that the small group X and the small group Y can be merged (step S162), and merges them into a new small group. (Step S163).
  • the content distribution method according to the present embodiment is configured such that the content distribution device 10 and a plurality of receiving terminals 20 are connected to each other via a network 30, and the content distribution device receives the request from the receiving terminal.
  • the content packet transmitting unit of the content distributing apparatus transmits the content data to the receiving terminal (steps S12 to S13 in FIG. 8), and the network status to the receiving terminal.
  • the probe packet transmitting unit 104 of the content distribution apparatus transmits an estimation probe packet, and the probe packet receiving unit 105 of the content distribution apparatus receives a reply packet from the receiving terminal in response to the probe packet (step S21 in FIG. 9).
  • Step S107 the receiving terminal whose bit rate temporal variation is similar among the receiving terminals is defined as a small group by the transmission control unit of the content distribution apparatus (FIG. 10, step S108), and the same small group is defined.
  • the transmission control unit of the content distribution apparatus determines the transmission interval of the probe packets for the receiving terminals to which it belongs (FIG. 10, step S109).
  • each of the above-described operation steps may be programmed to be executable by a computer, and may be executed by the content distribution apparatus 10 which is a computer that directly executes each of the steps.
  • this embodiment has the following effects.
  • the receiving terminals that are likely to have similar bit rate temporal variations, that is, share the same bottleneck link are configured as the same small group.
  • Probe packets need not be transmitted at predetermined intervals to all the receiving terminals belonging to. Therefore, the total number of probe packets to be transmitted can be reduced, and the load required for transmission / reception can be reduced, and the number of streams that can be simultaneously distributed can be increased accordingly.
  • the bottleneck link (for example, due to a factor such as a specific terminal starting or ending communication with heavy load) Even if fluctuates, it is possible to form an appropriate small group according to the change, and thus it is possible to distribute contents to each receiving terminal at an appropriate bit rate.
  • the content distribution device in the first embodiment is the same as the content transmission device 310 having a content packet transmission unit and a session control unit, a probe packet transmission unit, a probe packet transmission unit, and transmission control. And a distribution control device 320 having a section.
  • FIG. 21 is an explanatory diagram showing a configuration of a content distribution system 301 according to the second embodiment of the present invention.
  • the content distribution system 301 includes a content transmission device 310, a distribution control device 320, and a reception terminal 20 that collectively refers to a plurality of reception terminals 20 a, 20 b, 20 c.
  • the receiving terminal 20 and the network 30 are the same as those in the first embodiment.
  • the content transmission apparatus 310 stores a main arithmetic control means (CPU) 311 for executing a computer program, and various data and programs.
  • the computer device (server) includes a storage unit 312 and a communication unit 313 that is connected to the network 30 and performs data communication with other computers.
  • a session control unit 411 In the main calculation control unit 311 of the content transmission apparatus 310, a session control unit 411, a content packet transmission unit 412, and a control information communication unit 413, which will be described later, operate as a computer program.
  • a content storage unit 414 is secured in the storage unit 312.
  • the session control unit 411 processes a distribution start request and a distribution stop request from the receiving terminal 20.
  • the control information communication unit 413 receives the distribution start notification / distribution stop notification from the session control unit 411 and transmits it to the distribution control device 320, receives a transmission bit rate instruction from the distribution control device 320, and sends it to the content packet transmission unit 412. Send.
  • the content packet transmission unit 412 takes out content data from the content storage unit 414 based on an instruction from the control information communication unit 413, packetizes it, and transmits it to the receiving terminal 20.
  • the content storage unit 414 stores each content in a format that can be distributed while switching the bit rate.
  • the distribution control device 320 also has a main arithmetic control means (CPU) 321 for executing a computer program, storage means 322 for storing various data and programs, and data communication with other computers connected to the network 30. It is a computer apparatus (server) provided with the communication means 323 which performs.
  • CPU central processing unit
  • server computer apparatus
  • a probe packet transmission unit 421, a probe packet reception unit 422, and a transmission control unit 423 described later operate as a computer program.
  • a content storage unit 414 is secured in the storage unit 312.
  • a terminal information storage unit 424 described later is secured in the storage unit 322.
  • the probe packet receiving unit 422 receives a response packet to the probe packet transmitted to the receiving terminal 20, and notifies the transmission control unit 423 described later of the transmission source terminal, the probe packet ID, and the reception time.
  • the transmission control unit 423 determines the transmission bit rate and the transmission time of the probe packet based on the distribution start notification / distribution stop notification received from the content transmission device 310 and the information from the probe packet reception unit 422, and determines the transmission bit rate and the probe packet transmission time. 310 and the probe packet transmission unit 421 are instructed.
  • the probe packet transmission unit 421 transmits a probe packet to the receiving terminal 20 based on this next child.
  • FIG. 22 is an explanatory diagram showing a more detailed configuration of the transmission control unit 423 shown in FIG.
  • the transmission control unit 423 receives from the probe packet receiving unit 422 a probe packet response transmission source terminal, probe packet ID, and information about the reception time, a probe packet information receiving function 501, a probe packet receiving function 501, and a control information communication described later.
  • Various information received from the function 503 is stored in the terminal information storage unit 424, and necessary information is extracted from the terminal information storage unit 424 and transmitted to the packet transmission time determination function 504.
  • the transmission control unit 423 further includes a control information communication function 503 that performs communication with the control information communication unit 413 of the content transmission apparatus 310, and a transmission bit rate to each receiving terminal 20 based on information from the terminal information storage unit 424. And the packet transmission time determination function 504 that determines the transmission time of the probe packet and instructs the control information communication unit 413 and the probe packet transmission unit 421 of the content transmission apparatus 310 to determine the transmission time.
  • the same name and reference number are used for each table and information recorded therein. Say.
  • FIG. 23 shows operations of the content transmission apparatus 310 and the distribution control apparatus 320 when one of the receiving terminals 20 makes a new content distribution start request to the content transmission apparatus 310 in the content distribution system shown in FIG. It is a flowchart shown about.
  • the terminal information control function 502 of the transmission control unit 423 determines a large group to which the receiving terminal 20 belongs from the ID of the receiving terminal 20 and adds a new group to the terminal management table 151 of the terminal information storage unit 424. An entry related to the terminal identifier 151a is added, and a probe management table 152 corresponding to the terminal identifier 151a is newly added (step S213).
  • the terminal information control function 502 of the transmission control unit 423 determines an initial value of the bit rate, notifies this to the content transmission apparatus 310 via the control information communication function 503 (step S214), and the content transmission apparatus 310. Then, the content packet transmission unit 412 receives this and starts content distribution to the receiving terminal 20 (step S215).
  • FIG. 24 is a flowchart illustrating the operation of the distribution control apparatus 320 when a response from the receiving terminal 20 to the probe packet is received in the content distribution system illustrated in FIG. Since this operation has a small difference from the operation of the first embodiment described in FIG. Only differences from FIG. 9 will be described.
  • the probe packet receiving unit 422 of the distribution control device 320 receives the response packet (step S221), the transmission source terminal, the probe packet ID, and the reception time are transmitted to the transmission control unit 423, and the terminal information control function 502 of the transmission control unit 423 is transmitted.
  • the terminal information control function 502 next determines whether or not the response of the received probe packet triggers the control, that is, whether or not the flag 152d corresponding to the ID 152a of the probe packet is set (step S223). If the response packet is a trigger, the packet transmission time determination function 504 determines the bit rate and probe packet transmission time (step S224). Details of the processing for determining the bit rate and the transmission time of the probe packet are the same as the operations of the first embodiment shown in FIGS.
  • FIG. 25 shows operations of the content transmission apparatus 310 and the distribution control apparatus 320 when one of the receiving terminals 20 makes a distribution stop request to the content transmission apparatus 310 in the content distribution system shown in FIG. It is a flowchart.
  • the content transmission device 310 receives the distribution stop request from the receiving terminal 20 at the session control unit 411, the content packet transmission unit 412 stops the distribution of the corresponding content (step S231), and the control information communication unit The distribution control device 320 is notified via 413.
  • the terminal information control function 502 of the transmission control unit 423 that has received this via the control information communication function 503 deletes the entry related to the corresponding terminal identifier 151a from the terminal management table 151, and the terminal identifier 151a
  • the probe management table 152 corresponding to is deleted (step S232).
  • the transmission control unit 423 determines whether or not the small groups should be merged as in the first embodiment (step S233). The details of this processing are the same as those already described with reference to FIG. 13 in the first embodiment.
  • this embodiment can perform the same operation as that of the first embodiment and obtain the same effect. And this embodiment can be easily implemented only by adding the delivery control apparatus 320 to the environment where the content transmission apparatus 310 is already operating. In addition, a plurality of content transmission apparatuses 310 can be configured to be controlled by a single distribution control apparatus 320. For this reason, the same effect as the first embodiment can be obtained at a lower cost.
  • a packet loss rate can be used as a numerical value representing the network state.
  • the method described as the first and second embodiments can be applied to the control for adjusting the redundant data amount of FEC (Forward Error Correction) according to the packet loss rate.
  • FEC Forward Error Correction
  • a content distribution system in which a content distribution device and a plurality of receiving terminals are connected to each other via a network, and the content distribution device transmits content data to the receiving terminal
  • the content distribution device is A content packet transmitter for transmitting the content data to the receiving terminal;
  • a probe packet transmitter for transmitting a probe packet for network state estimation to the receiving terminal;
  • a probe packet receiver for receiving a reply packet from the receiving terminal in response to the probe packet;
  • a transmission control unit that specifies a required time from transmission of the probe packet to reception of the reply packet and determines a transmission interval of the probe packet and the bit rate of the content data to be transmitted from the required time ,
  • the transmission control unit defines a group of receiving terminals that have similar temporal variations in the bit rate among the receiving terminals as a small group, and collectively collects the probe packets for the receiving terminals that belong to the same small group.
  • a content distribution system for determining a transmission interval and the bit rate of the content data to be transmitted.
  • the transmission control unit Each time a predetermined number of probe packets are transmitted, the bit rate of the existing small group is similar to that of the existing small group, and the small group is not related to the receiving terminal. 3.
  • the content distribution system according to appendix 2 wherein the content distribution system has a function of adding the receiving terminal to the small group if the number of the receiving terminals to which the terminal belongs is within a predetermined upper limit.
  • the transmission control unit In response to the session control unit receiving a delivery stop request from one of the receiving terminals, the temporal variation of the bit rate is similar in the existing small group, and the small 4.
  • the transmission control unit The content distribution system according to appendix 2, wherein determination of temporal variation of the bit rate of the receiving terminal and reconfiguration of the small group are performed each time a predetermined number of probe packets are transmitted.
  • the content distribution apparatus is A content transmission device having the content packet transmission unit and the session control unit;
  • a content distribution device configured to be connected to each other via a network with a plurality of reception terminals, wherein the content distribution device transmits content data to the reception terminal, A content packet transmitter for transmitting the content data to the receiving terminal; A probe packet transmitter for transmitting a probe packet for network state estimation to the receiving terminal; A probe packet receiver for receiving a reply packet from the receiving terminal in response to the probe packet; A transmission control unit that specifies a required time from transmission of the probe packet to reception of the reply packet and determines a transmission interval of the probe packet and the bit rate of the content data to be transmitted from the required time , The transmission control unit defines a group of receiving terminals that have similar temporal variations in the bit rate among the receiving terminals as a small group, and collectively collects the probe packets for the receiving terminals that belong to the same small group.
  • a content distribution apparatus for determining a transmission interval and the bit rate of the content data to be transmitted.
  • the content data that is configured to be connected to each other via a network with a plurality of receiving terminals and a content transmitting apparatus that transmits the content data to the receiving terminal, and the content transmitting apparatus transmits to the receiving terminal
  • a distribution control device for determining the bit rate of A probe packet transmitter for transmitting a probe packet for network state estimation to the receiving terminal;
  • a probe packet receiver for receiving a reply packet from the receiving terminal in response to the probe packet;
  • a transmission control unit that specifies a required time from transmission of the probe packet to reception of the reply packet and determines a transmission interval of the probe packet and the bit rate of the content data to be transmitted from the required time ,
  • the transmission control unit defines a group of receiving terminals that have similar temporal variations in the bit rate among the receiving terminals as a small group, and collectively collects the probe packets for the receiving terminals that belong to the same small group.
  • a distribution control apparatus for determining a transmission interval and the bit rate of the content data to be transmitted.
  • a content distribution system in which a content distribution device and a plurality of receiving terminals are connected to each other via a network, and the content distribution device transmits content data to the receiving terminal,
  • the content data transmission unit of the content distribution device sends the content data to the receiving terminal
  • a probe packet transmitter of the content distribution device transmits a probe packet for network state estimation to the receiving terminal
  • a probe packet receiving unit of the content distribution device receives a reply packet from the receiving terminal with respect to the probe packet
  • the transmission control unit of the content distribution device specifies the time required from the transmission of the probe packet to the reception of the reply packet
  • the transmission control unit of the content distribution device determines the bit rate of the content data transmitted from the specified required time
  • the transmission control unit of the content distribution device defines a reception terminal that is similar in temporal variation of the bit rate among the reception terminals as a small group,
  • the content distribution method wherein the transmission control unit of the content distribution apparatus determines the transmission interval of the probe packet for the receiving terminals belonging to the same small group in a lump.
  • a content distribution system in which a content distribution device and a plurality of receiving terminals are connected to each other via a network, and the content distribution device transmits content data to the receiving terminal
  • the computer provided in the content distribution device, Sending the content data to the receiving terminal; A procedure for transmitting a probe packet for network state estimation to the receiving terminal; A procedure for receiving a reply packet from the receiving terminal in response to the probe packet; A procedure for specifying a time required from transmission of the probe packet to reception of the reply packet; Determining the bit rate of the content data transmitted from the identified required time; Defining a receiving terminal having a similar temporal variation in the bit rate among the receiving terminals as a small group; And a content distribution program for causing a receiving terminal belonging to the same small group to execute a procedure for collectively determining a transmission interval of the probe packet.
  • a procedure for transmitting a probe packet for network state estimation to the receiving terminal A procedure for receiving a reply packet from the receiving terminal in response to the probe packet;
  • a content distribution program for causing a receiving terminal belonging to the same small group to execute a procedure for collectively determining a transmission interval of the probe packet and transmitting the same to the content transmitting apparatus.
  • the present invention can be applied to a content distribution system that distributes media data such as video and audio via the Internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】各受信端末に対するビットレートを適切に制御しつつ、配信装置から受信端末に向けて送出するプローブパケットの数を削減するコンテンツ配信システム等を提供する。 【解決手段】複数台の受信端末20とネットワーク30を介して相互に接続されるコンテンツ配信装置10は、コンテンツデータを送出するコンテンツパケット送信部103と、プローブパケットを送信するプローブパケット送信部104と、受信端末からの返信パケットを受信するプローブパケット受信部105と、プローブパケットの送信間隔およびコンテンツデータのビットレートを決定する送信制御部102とを有する。そして送信制御部102は、ビットレートの時間的変動が類似している受信端末を小グループとして、同一の小グループに属する受信端末に対して一括してプローブパケットの送信間隔を決定する。

Description

コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム
 本発明は、コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラムに関し、特に同時に配信可能なストリーム数や通信品質の低下を抑制しうるコンテンツ配信システム等に関する。
 インターネットなどのネットワークを利用した動画や音声などのコンテンツの配信が普及している。安定した動画や音声で配信を継続するためには、刻々と変動するネットワーク状態に応じて、コンテンツ配信装置(サーバ)が受信端末に向けて送出するコンテンツデータのビットレートなどを適切に設定することが重要である。
 そのため、非特許文献1に記載されているように、コンテンツ配信装置が受信端末に対して定期的にプローブパケットを送信し、このプローブパケットの往復遅延時間の変動からネットワーク状態を推定して、推定されたネットワーク状態に適したビットレートでコンテンツデータを送出するということが行われている。
 また、これに関連する特許文献として、次の各々がある。その中でも特許文献1には、配信サーバから端末へマルチキャストでコンテンツを配信する際に距離の近い(端末間のホップ数の小さい)端末をグループ化し、そのグループごとに利用可能帯域を予測して配信するビットレートを決定するという技術が記載されている。
 特許文献2には、コンテンツデータの送信に先立って、全受信端末の全ての通信経路で予約可能な帯域幅を調べて、この帯域幅に合わせてデータを送信するというマルチキャストデータ配信方法が記載されている。特許文献3には、試験ストリームによって通信経路の可能帯域幅を推定するというストリームデータ配信などが記載されている。特許文献4には、プローブパケットを利用したIPネットワークの性能の測定を精密化するための技術が記載されている。
特開2005-167675号公報 特開2000-286845号公報 特開2008-278207号公報 特表2007-533215号公報
二瓶他「プローブパケットの往復遅延時間に基づくメディアのビットレート制御方式」、電子情報通信学会2010年総合大会公演論文集、B-6-99
 しかしながら、非特許文献1などに記載されたような、プローブパケットによってネットワーク状態を推定する技術では、コンテンツ配信装置から配信されるコンテンツを受信するすべての受信端末に対して規定数のプローブパケットを送信する必要がある。
 そのため、端末数が増大し、それら多数の端末へ同時にコンテンツを配信すると、それに伴って送信されるプローブパケットの送受信にかかる負荷が増大してしまうという問題がある。これは、コンテンツ配信装置、ネットワーク機器および回線にかかる負荷を増大させ、同時に配信可能なストリーム数、および各受信端末ごとの通信品質の低下を招く。
 配信装置と受信端末の間のネットワーク状態は、主に通信経路上のボトルネックリンク(利用可能帯域が最小のリンク)の存在によって決定される。このボトルネックリンクとその利用可能帯域は、特定の端末のトラフィックや特定の通信経路の通信状態などによって、時間とともに変動する。そのため、ボトルネックリンクが同一の端末は、ビットレートの時間的変動がほぼ似通った傾向を示すことが多い。
 従って、ボトルネックリンクが同一の端末を同一グループとすることができれば、これら同一グルーブに属する端末に対しては一括してビットレートを制御することができるので、送出されるプローブパケットの数を削減することが可能であると考えられる。しかしながら、特許文献1に記載の技術は「ホップ数」が規定値以下の端末を同一グループとするものであり、決して「ボトルネックリンク」が同一である端末を同一グループとするものではない。
 そのため、特許文献1に記載の方法でグループを構成すると、ボトルネックリンクが同一ではない端末同士が同一グループとされる場合があり得るので、そのような場合には同一グループに対して一括でビットレートを制御すると適切な制御にならない。たとえば帯域に余裕があるにもかかわらず必要以上にビットレートが抑制される場合や、その逆の場合が発生することになる。逆に、この方法ではボトルネックリンクが同一である端末同士が別のグループとされる場合もあり得るので、この場合にはプローブパケットの数を削減する効果は得られない。
 残る特許文献2~4にも、ボトルネックリンクが同一である端末に対してビットレートなどを一括で制御するという技術は記載されていない。そのため、これらの技術では上記の問題は解決されない。
 本発明の目的は、各受信端末に対するビットレートを適切に制御しつつ、配信装置から受信端末に向けて送出するプローブパケットの数を削減し、これによって同時に配信可能なストリーム数や通信品質の低下を抑制しうるコンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラムを提供することにある。
 上記目的を達成するため、本発明に係るコンテンツ配信システムは、コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、コンテンツ配信装置が受信端末にコンテンツデータを送出するコンテンツ配信システムであって、コンテンツ配信装置が、受信端末にコンテンツデータを送出するコンテンツパケット送信部と、受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部と、プローブパケットに対する受信端末からの返信パケットを受信するプローブパケット受信部と、プローブパケットの送信から返信パケットの受信までの所要時間を特定すると共に当該所要時間からプローブパケットの送信間隔および送出されるコンテンツデータのビットレートを決定する送信制御部とを有し、送信制御部が、受信端末の中でビットレートの時間的変動が類似している受信端末を小グループとして、同一の小グループに属する受信端末に対して一括してプローブパケットの送信間隔および送出されるコンテンツデータのビットレートを決定することを特徴とする。
 上記目的を達成するため、本発明に係るコンテンツ配信装置は、複数台の受信端末とネットワークを介して相互に接続されて構成され、コンテンツ配信装置が受信端末にコンテンツデータを送出するコンテンツ配信装置であって、受信端末にコンテンツデータを送出するコンテンツパケット送信部と、受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部と、プローブパケットに対する受信端末からの返信パケットを受信するプローブパケット受信部と、プローブパケットの送信から返信パケットの受信までの所要時間を特定すると共に当該所要時間からプローブパケットの送信間隔および送出されるコンテンツデータのビットレートを決定する送信制御部とを有し、送信制御部が、受信端末の中でビットレートの時間的変動が類似している受信端末を小グループとして、同一の小グループに属する受信端末に対して一括してプローブパケットの送信間隔および送出されるコンテンツデータのビットレートを決定することを特徴とする。
 上記目的を達成するため、本発明に係るコンテンツ配信方法は、コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、コンテンツ配信装置が受信端末にコンテンツデータを送出するコンテンツ配信システムにあって、受信端末に対してコンテンツデータをコンテンツ配信装置のコンテンツパケット送信部が送出し、受信端末に対してネットワーク状態推定用のプローブパケットをコンテンツ配信装置のプローブパケット送信部が送信し、プローブパケットに対する受信端末からの返信パケットをコンテンツ配信装置のプローブパケット受信部が受信し、プローブパケットの送信から返信パケットの受信までの所要時間をコンテンツ配信装置の送信制御部が特定し、特定された所要時間から送出されるコンテンツデータのビットレートをコンテンツ配信装置の送信制御部が決定し、受信端末の中でビットレートの時間的変動が類似している受信端末をコンテンツ配信装置の送信制御部が小グループとして定義し、同一の小グループに属する受信端末に対して一括してプローブパケットの送信間隔をコンテンツ配信装置の送信制御部が決定することを特徴とする。
 上記目的を達成するため、本発明に係るコンテンツ配信プログラムは、コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、コンテンツ配信装置が受信端末にコンテンツデータを送出するコンテンツ配信システムにあって、コンピュータに、受信端末に対してコンテンツデータを送出する手順、受信端末に対してネットワーク状態推定用のプローブパケットを送信する手順、プローブパケットに対する受信端末からの返信パケットを受信する手順、プローブパケットの送信から返信パケットの受信までの所要時間を特定する手順、特定された所要時間から送出されるコンテンツデータのビットレートを決定する手順、受信端末の中でビットレートの時間的変動が類似している受信端末を小グループとして定義する手順、および同一の小グループに属する受信端末に対して一括してプローブパケットの送信間隔を決定する手順を実行させることを特徴とする。
 本発明は、上述したようにビットレートの時間的変動が類似した(即ち、ボトルネックリンクが同一である)受信端末を小グループとするように構成したので、同一の小グループに対して送信するプローブパケットの数を削減することができる。これによって、各受信端末に対するビットレートを適切に制御しつつ、配信装置から受信端末に向けて送出するプローブパケットの数を削減し、これによって同時に配信可能なストリーム数や通信品質の低下を抑制することが可能であるコンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラムを提供することができる。
本発明の第1の実施形態に係るコンテンツ配信システムの構成を示す説明図である。 図1で示した送信制御部のより詳細な構成について示す説明図である。 図2に示した端末情報記憶部に記憶される端末管理テーブルの内容について示す説明図である。 図2に示した端末情報記憶部に記憶されるプローブ管理テーブルの内容について示す説明図である。 図2に示した端末情報記憶部に記憶されるグループ制御情報管理テーブルの内容について示す説明図である。 図2に示した端末情報記憶部に記憶される端末制御情報管理テーブルの内容について示す説明図である。 図1に示したコンテンツ配信システムでいう大グループと小グループについて説明する説明図である。 図1に示したコンテンツ配信システムで、受信端末のうちの1つがコンテンツ配信装置に対して新しくコンテンツ配信開始要求をした場合の、コンテンツ配信装置の動作について示すフローチャートである。 図1に示したコンテンツ配信システムで、プローブパケットに対する受信端末からの応答を受信した場合の、コンテンツ配信装置の動作について示すフローチャートである。 図9のステップS24として示した、パケット送信制御機能がビットレートとプローブパケットの送信時刻を決定する処理の詳細を示すフローチャートである。 図10のステップS104として示した、パケット送信制御機能が受信端末を小グループへ追加するか否かを判定する処理の詳細を示すフローチャートである。 図1に示したコンテンツ配信システムで、受信端末のうちの1つがコンテンツ配信装置に対して配信停止要求をした場合の、コンテンツ配信装置の動作について示すフローチャートである。 図12のステップS32として説明した、パケット送信制御機能が小グループを合併すべきか否かの判定の動作をより詳しく説明するフローチャートである。 最初の受信端末から配信要求を受信してプローブ管理テーブルを作成するまでの処理が終了した段階で端末情報記憶部に記憶される各テーブルの内容を示す説明図である。図14(A)は端末管理テーブル、図14(B)はプローブ管理テーブル、図14(C)はグループ制御情報管理テーブル、図14(D)は端末制御情報管理テーブルを各々示す。 プローブパケットの送信時刻を決定してフラグを立てるまでの処理が終了した段階で端末情報記憶部に記憶される各テーブルの内容を示す説明図である。図15(A)は端末管理テーブル、図15(B)はプローブ管理テーブル、図15(C)はグループ制御情報管理テーブル、図15(D)は端末制御情報管理テーブルを各々示す。 小グループを新規に作成して登録するまでの処理が終了した段階で端末情報記憶部に記憶される各テーブルの内容を示す説明図である。図16(A)は端末管理テーブル、図16(B)はプローブ管理テーブル、図16(C)はグループ制御情報管理テーブル、図16(D)は端末制御情報管理テーブルを各々示す。 時刻24[s]の時点で端末情報記憶部に記憶される各テーブルの内容を示す説明図である。図17(A)は端末管理テーブル、図17(B)はプローブ管理テーブル、図17(C)はグループ制御情報管理テーブル、図17(D)は端末制御情報管理テーブルを各々示す。 時刻40[s]の時点で端末情報記憶部に記憶される各テーブルの内容を示す説明図である。図18(A)は端末管理テーブル、図18(B)はプローブ管理テーブル、図18(C)はグループ制御情報管理テーブル、図18(D)は端末制御情報管理テーブルを各々示す。 3台の受信端末で構成される小グループのステップS106におけるビットレート上昇・維持・低下の判定結果と、ステップS107で決定した小グループ全体の送信レートの増減傾向の一例について示す説明図である。 同一の大グループ内の小グループX~Zの受信端末数および制御履歴の一例について示す説明図である。 本発明の第2の実施形態に係るコンテンツ配信システムの構成を示す説明図である。 図21で示した送信制御部のより詳細な構成について示す説明図である。 図21に示したコンテンツ配信システムで、受信端末のうちの1つがコンテンツ送信装置に対して新しくコンテンツ配信開始要求をした場合の、コンテンツ送信装置および配信制御装置の動作について示すフローチャートである。 図21に示したコンテンツ配信システムで、プローブパケットに対する受信端末からの応答を受信した場合の、配信制御装置の動作について示すフローチャートである。 図21に示したコンテンツ配信システムで、受信端末のうちの1つがコンテンツ送信装置に対して配信停止要求をした場合の、コンテンツ送信装置および配信制御装置の動作について示すフローチャートである。
(第1の実施形態)
 以下、本発明の第1の実施形態の構成について添付図1~2に基づいて説明する。
 最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
 本実施形態に係るコンテンツ配信システム1は、コンテンツ配信装置10と複数台の受信端末20とがネットワーク30を介して相互に接続されて構成され、コンテンツ配信装置が受信端末にコンテンツデータを送出するコンテンツ配信システムである。コンテンツ配信装置10は、受信端末にコンテンツデータを送出するコンテンツパケット送信部103と、受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部104と、プローブパケットに対する受信端末からの返信パケットを受信するプローブパケット受信部105と、プローブパケットの送信から返信パケットの受信までの所要時間を特定すると共に当該所要時間からプローブパケットの送信間隔および送出されるコンテンツデータのビットレートを決定する送信制御部102とを有する。そして送信制御部102は、受信端末の中でビットレートの時間的変動が類似している受信端末を小グループとして、同一の小グループに属する受信端末に対して一括してプローブパケットの送信間隔および送出されるコンテンツデータのビットレートを決定する。
 送信制御部102はまた、小グループに属する各々の受信端末のビットレートの時間的変動を判定し、その判定結果に基づいて小グループを再構成する機能を有する。
 送信制御部102はさらに、小グループに属していない受信端末に対して、既存の小グループとビットレートの時間的変動が類似しており、かつ該小グループに属する受信端末の台数が予め与えられた上限値以内であれば該受信端末を該小グループに追加する機能を有する。送信制御部102は、前述の受信端末のビットレートの時間的変動の判定と前記小グループの再構成を、プローブパケットを所定の個数送信するごとに行う。
 そして送信制御部102は、受信端末の中の1台からの配信停止要求をセッション制御部が受信したことを受けて、既存の小グループの中でビットレートの時間的変動が類似しており、かつ該小グループに属する受信端末の合計台数が上限値以内であるものがあればそれらの小グループを合併させる機能を有する。
 以上の構成を備えることにより、本実施形態のコンテンツ配信システム1は、同一の小グループに対して送信するプローブパケットの数を削減して、同時に配信可能なストリーム数、および各受信端末ごとの通信品質の低下を抑制することが可能となる。
 以下、これをより詳細に説明する。
 図1は、本発明の第1の実施形態に係るコンテンツ配信システム1の構成を示す説明図である。コンテンツ配信システム1は、コンテンツ配信装置10と、複数台の受信端末20a、20b、20c…がインターネット30を介して相互に接続されて構成される。以後、受信端末20a、20b、20c…を総称して、受信端末20という。また、単に端末とだけいう場合もある。
 コンテンツ配信装置10は、コンピュータプログラムを実行する主演算制御手段(CPU)11と、各種データおよびプログラムを記憶するための記憶手段(主記憶手段、およびハードディスクなどの外部記憶手段)12と、ネットワーク30に接続して他のコンピュータとのデータ通信を行う通信手段13とを備えたコンピュータ装置(サーバ)である。
 主演算制御手段11では、受信端末20から配信開始要求や配信停止要求を受信するセッション制御部101、受信端末20から受信したプローブパケットに対する返信についての情報を後述の送信制御部102に通知するプローブパケット受信部105が、コンピュータプログラムとして動作する。ここでいうプローブパケットに対する返信についての情報とは、それらの返信の送信元端末、プローブパケットID、および受信時刻を含む。
 主演算制御手段11ではまた、プローブパケット受信部105から受信した情報に基づいて後述のコンテンツパケット送信部103およびプローブパケット送信部104を制御する送信制御部102、送信制御部102からの制御に基づいてコンテンツデータをパケット化して受信端末20へ送信するコンテンツパケット送信部103、送信制御部102からの制御に基づいてプローブパケットを生成して受信端末20へ送信するプローブパケット送信部104も、コンピュータプログラムとして動作する。
 また、記憶手段12の中には、配信対象である各種コンテンツが複数種類のビットレートで配信可能な形式で記憶する記憶領域であるコンテンツ記憶部111が確保され、その中に各種コンテンツが予め記憶されている。このとき、コンテンツをH.264/SVC(Scalable Video Coding)のような階層符号化された形式で記憶しておくと、コンテンツ記憶部111の容量を削減できる。コンテンツパケット送信部103は、コンテンツ記憶部111からコンテンツデータを取り出し、これを送信制御部102に指示されたビットレートで受信端末20に対して送出する。また、後述の端末情報記憶部112も確保されている。
 送信制御部102は、セッション制御部101から受信した配信開始通知もしくは配信停止通知と、プローブパケット受信部105から受信した送信元端末、プローブパケットID、および受信時刻をもとに各受信端末20へ配信するコンテンツのビットレートとプローブパケットの送信時刻を決定し、コンテンツパケット送信部103とプローブパケット送信部104に指示する。
 受信端末20は、コンピュータ装置、携帯電話端末、スマートホン、IPTV(Internet Protocol Television)のセットトップボックスなど、機器の種類は特に問わないが、ネットワーク30に接続してコンテンツ配信装置10から配信されるコンテンツを受信して再生する機能、およびコンテンツ配信装置10から送信されるプローブパケットを受信してこれに対する応答パケットを返信する機能を持つものである。
 ここでいうプローブパケットとは、たとえばTCP/IP(Transmission Control Protocol/Internet Protocol)に準拠するほとんどのネットワーク機器でサポートされているICMP(Internet Control Message Protocol、RFC792)でいう「Echo Request」であり、これに対する応答パケットとはやはりICMPでいう「Echo Reply」である。また、UDP(User Datagram Protocol、RFC862)の「UDP Echo」を、プローブパケットおよび応答パケットとして利用することもできる。
 ICMPの規格では、シーケンス番号というフィールドが規定されている。そのため、たとえばコンテンツ配信装置10が「Echo Request」を送信する際に、該パケット中のシーケンス番号フィールドに任意の値を設定する。そしてこれを受信した受信端末20が「Echo Reply」を返信する際に、該パケット中のシーケンス番号フィールドに「Echo Request」に設定された値をそのまま使用して返信する。従って、コンテンツ配信装置10が送信するプローブパケットごとに異なるシーケンス番号フィールドを設定すれば、返って来た応答パケットがどのプローブパケットに対するものであるかを識別することは容易である。
 ネットワーク30とは、パケット交換ネットワークであり、インターネット、ADSL(Asymmetric Digital Subscriber Line)、無線ネットワークなどのような品質(帯域)を保証されていないネットワークを含む。
 図2は、図1で示した送信制御部102のより詳細な構成について示す説明図である。送信制御部102は、セッション制御部101から各端末の配信開始通知・配信停止通知を受信するセッション情報受信機能121、プローブパケット受信部からプローブパケットの応答の送信元端末とプローブパケットIDと受信時刻を受信するプローブパケット情報受信機能122を有する。
 送信制御部102はさらに、セッション情報受信機能121とプローブパケット情報受信機能122から受信した情報を後述の端末情報記憶部112に保存し、配信するコンテンツのビットレートとプローブパケット送信時刻の計算を後述のパケット送信制御機能124に指示する端末情報制御機能123、端末情報制御機能123の指示に基づき後述の端末情報記憶部112から必要な情報を取り出して配信するコンテンツのビットレートとプローブパケットの送信時刻を決定し、コンテンツパケット送信部103とプローブパケット送信部104に指示するパケット送信制御機能124を備える。
 また、記憶手段12の中には、端末情報制御機能123が後述の各データを記憶する記憶領域である端末情報記憶部112が確保されている。図3~6は、図2に示した端末情報記憶部112の記憶内容について示す説明図である。端末情報記憶部112には、端末管理テーブル151、プローブ管理テーブル152、グループ制御情報管理テーブル153、端末制御情報管理テーブル154といった各々のテーブルが記憶されており、これらの各テーブルのエントリは端末情報制御機能123が追加および削除し、またパケット送信制御機能124が参照する。
 図3に示す端末管理テーブル151は、配信対象である受信端末20の各々に対応する端末識別子151aと、各端末識別子151aに対応する大グループID151bと小グループID151cとが登録されている。この大グループID151bと小グループID151cについては後述する。端末識別子151aは、各端末を一意に識別可能なものであれば何でもよく、たとえば各々の受信端末20のIPアドレスを利用してもよいし、またドメインネームシステムに基づくホスト名を利用してもよい。図3に示した例では、端末識別子151aとしてIPアドレスを利用している。
 図4に示すプローブ管理テーブル152は、各端末識別子151aごとに1つのテーブルが存在しており、それら各々のテーブルでは、各々の受信端末20に対して送信されたプローブパケットのプローブパケットID152aとその送信時刻152b、そしてそれに対する返信を受信した受信時刻152c、さらにそのパケットに対する後述のフラグ152dとが登録されている。
 図5に示すグループ制御情報管理テーブル153は、端末管理テーブル151にも登録されている大グループID151bと小グループID151c、その各々に対してコンテンツ配信装置10が行った制御の実行時刻153a、そしてその制御結果153bとが登録されている。ここでいう制御結果153bとは、具体的には実行時刻153aに対応する当該グループの各端末のビットレートである。
 図6に示す端末制御情報管理テーブル154は、端末管理テーブル151にも登録されている端末識別子151a、その各々に対してコンテンツ配信装置10が行った制御の実行時刻154a、そしてその制御結果154bとが登録されている。ここでいう制御結果154bとは、具体的には実行時刻154aに対応する当該端末のビットレートである。
 図7は、図1に示したコンテンツ配信システム1でいう大グループと小グループについて説明する説明図である。コンテンツ配信装置10は、複数の受信端末20を1つの小グループとするが、その際ネットワークトポロジ(接続形態)的に大きく離れた(即ち同一のボトルネックリンクを共有している可能性が低い)受信端末20が同一の小グループに属することを防止し、かつ小グループを形成する時の計算処理の負荷を軽減するため、複数の小グループをまとめてさらに大グループとしている。より具体的には、同一のISPや隣接した地域などに存在する複数の小グループを1つの大グループとしている。
 図7では、複数の受信端末20a~eの中で、受信端末20a~dが同一の大グループ60aに属し、さらにその中でボトルネックリンク40が同一である受信端末20a~cが同一の小グループ50aに属している。受信端末20eは、どの大グループにも属さず、またどの小グループにも属さない。また受信端末20dは、大グループ60aに属するが、どの小グループにも属さない。
 ここでいう小グループとは、コンテンツ配信装置10から配信を受けているコンテンツの種類が同一である受信端末20が1つの小グループとなるのではなく、ビットレートの時間的変動が同一の傾向を示している受信端末20が1つの小グループとなる。即ち、コンテンツ配信装置10は、ビットレートの時間的変動が同一の傾向を示している受信端末20は、ボトルネックリンク40が同一であると考えられるので、それらを1つの小グループとしてまとめて扱い、ビットレートの変更などをグループ単位で一括して行う。その詳細を次から説明する。
 図8は、図1に示したコンテンツ配信システム1で、受信端末20のうちの1つがコンテンツ配信装置10に対して新しくコンテンツ配信開始要求をした場合の、コンテンツ配信装置10の動作について示すフローチャートである。
 コンテンツ配信装置10が、セッション制御部101で受信端末20からの配信開始要求を受信すると(ステップS11)、送信制御部102の端末情報制御機能123で受信端末が所属する大グループを決定して、端末情報記憶部112の端末管理テーブル151に新たな端末識別子151aに関するエントリを追加し、端末識別子151aに対応するプローブ管理テーブル152を新たに追加する(ステップS12)。
 そしてパケット送信制御機能124が、ビットレートの初期値とプローブパケットの送信時刻を決定し、配信開始をコンテンツパケット送信部103に指示する。これによって受信端末20の指定したコンテンツの配信が新たに開始される(ステップS13)。
 ここでいうビットレートの初期値は、コンテンツ記憶部111に予め記憶されている最低ビットレートを選択する方法や、過去の配信時のデータを用いて決定する方法、配信前に利用可能帯域を測定してその測定結果をもとにして決定する方法などがあるが、その初期値の決定方法自体は本発明の範囲ではないので、これら以外にも任意の公知技術を利用することができる。
 図9は、図1に示したコンテンツ配信システムで、プローブパケットに対する受信端末20からの応答を受信した場合の、コンテンツ配信装置10の動作について示すフローチャートである。コンテンツ配信装置10のプローブパケット受信部105が応答パケットを受信すると(ステップS21)、送信元端末の端末識別子151aとプローブパケットID152aと受信時刻152cとを送信制御部102へ送信し、送信制御部102の端末情報制御機能123は、受信したそれらの情報をプローブ管理テーブル152の各フィールドに保存する(ステップS22)。
 端末情報制御機能123は次に、受信したプローブパケットの応答が制御のトリガとなるか否か、即ちそのプローブパケットのID152aに対応するフラグ152dが立っているか否かを判定する(ステップS23)。トリガとなる応答パケットであれば、パケット送信制御機能124でビットレートとプローブパケットの送信時刻を決定する(ステップS24)。そのビットレートとプローブパケットの送信時刻を決定する処理の詳細は、次で解説する。
 図10は、図9のステップS24として示した、パケット送信制御機能124がビットレートとプローブパケットの送信時刻を決定する処理の詳細を示すフローチャートである。パケット送信制御機能124は、まずプローブパケットの応答を送信した受信端末20が小グループに属するか否かを判定し(ステップS101)、小グループに属していない場合には、ステップS102~S104の処理に進んで、によってその受信端末20単独で送信ビットレートを決定する。小グループに属していればステップS105~S109の処理に進む。
 受信端末20が小グループに属していない場合、パケット送信制御機能124は、プローブ管理テーブル152から当該プローブパケットの送信時刻152bおよび受信時刻152cを取得し(ステップS102)、送信時刻152bと受信時刻152cの差、即ちプローブパケットの往復遅延時間をもとに送信ビットレートを決定する(ステップS103)。より具体的には、例えば非特許文献1に記載されているように、規定数のプローブパケットの往復遅延時間に増加傾向があれば低下させ、増加傾向がなければ上昇させるなどの方法で送信ビットレートを決定することができる。
 そしてパケット送信制御機能124は、これに続いて受信端末20を小グループへ追加するか否かを判定して(ステップS104)後述のステップS109の処理に進む。ステップS104の処理の詳細は図11にて後述する。
 図11は、図10のステップS104として示した、パケット送信制御機能124が受信端末20を小グループへ追加するか否かを判定する処理の詳細を示すフローチャートである。パケット送信制御機能124はまず、その受信端末20が所属する大グループ内で、追加する小グループの候補を選定する(ステップS151)。
 追加する小グループの候補は、各グループのグループ制御情報管理テーブル153に記録された制御結果153b(ビットレート)と、受信端末20の端末制御情報管理テーブル154に記録された制御結果154b(ビットレート)とが類似した時間的変動を示すものを選定し、配信開始からの経過時間が短く十分な制御履歴がない場合には候補なしと判定する。候補となる小グループが存在しない場合には、新たな小グループを生成して投入候補とする。
 パケット送信制御機能124は次に、投入候補となる小グループの端末数があらかじめ定められた上限に達しているか否かを判定する(ステップS152)。各々の受信端末20に最低限のプローブパケットを送信するため、各小グループの端末数にはあらかじめ上限が定められている。上限に達していない場合には、その受信端末20をそのまま小グループに追加し(ステップS154)、上限に達している場合には候補とした小グループを2個に分割する(ステップS153)。
 小グループを分割する時には、各端末の過去の判定結果を参照し、類似したもの同士が同一のグループとなるように分割する方法や、ランダムに2個のグループに分割する方法などを用いることができる。以上の処理については、具体的な処理例を後述する。
 このように、受信端末20を過去の制御結果の履歴をもとに小グループに加えることによって、ビットレートの変動の近い受信端末、即ちボトルネックリンクが同一である可能性の高い受信端末同士を同一の小グループにできる。
 図10に戻り、受信端末20が小グループに属している場合の動作を説明する。受信端末20が小グループに属する場合、パケット送信制御機能124は、端末情報記憶部112から小グループ内の全ての受信端末20の制御に必要なプローブパケットの送受信時刻を取得し(ステップS105)、前述した非特許文献1に記載の方法などで、各受信端末20への送信ビットレートを決定する(ステップS106)。決定した送信ビットレートは、端末制御情報管理テーブル154の制御結果154bとして記憶する。
 次にパケット送信制御機能124は、小グループ内の各受信端末20の判定結果をもとに小グループ全体の送信ビットレートを決定する(ステップS107)。決定した小グループごとのビットレートは、グループ制御情報管理テーブル153の制御結果153bとして記憶する。
 小グループ全体のビットレートを決定する方法としては、受信端末20ごとの判定結果(ビットレート上昇・維持・低下)の多数決を採り、全受信端末20の制御内容を多数決に従わせてもよい。また、ビットレートの上昇を+1、維持を0、低下を-1ポイントなどのようにポイント化してそのポイントの平均値を算出し、平均値が0.5以上ならば小グループ内の全受信端末20のビットレートを上昇、-0.5以下ならば小グループ内の全受信端末20のビットレートを低下、その他の場合には維持するようにしてもよい。
 次にパケット送信制御機能124は、小グループの再構成を行う(ステップS108)。小グループの再構成は、小グループ全体の制御結果と異なる判定結果となった受信端末20を他の小グループへ移動する操作であり、例えば、小グループ全体として送信ビットレートを上昇させている場合に、レート低下と判定した受信端末20を他の小グループへ移動する。最後に、各受信端末20へのプローブパケット送信時刻を決定する(ステップS109)。
 小グループに含まれる受信端末20の場合、小グループ内の受信端末20のプロ-ビング結果を総合して送信ビットレートを決定するため、精度を低下させることなく、1受信端末20あたりに送信するプローブパケット数を削減できる。たとえば、各々の受信端末20へ0.1秒間隔で毎秒10個のプローブパケットを送信している場合、小グループに5台の受信端末20が含まれる場合には、その小グループに含まれる受信端末20へ毎秒2個ずつのプローブパケットを送信することにすると、プローブパケット数を1/5に削減できる。また、あらかじめ定めた制御間隔中で最後に送信するプローブパケットを決定し、プローブ管理テーブル152のフラグ152dを立てる。
 図12は、図1に示したコンテンツ配信システムで、受信端末20のうちの1つがコンテンツ配信装置10に対して配信停止要求をした場合の、コンテンツ配信装置10の動作について示すフローチャートである。コンテンツ配信装置10が、セッション制御部101で受信端末20からの配信停止要求を受信すると、パケット送信制御機能124は該当するコンテンツの配信を停止し、端末管理テーブル151から該当する端末識別子151aに関するエントリを削除し、その端末識別子151aに対応するプローブ管理テーブル152を削除する(ステップS31)。
 パケット送信制御機能124はこれに続いて、小グループを合併すべきか否かについて判定を行う(ステップS32)。その動作の詳細を次に説明する。
 図13は、図12のステップS32として説明した、パケット送信制御機能124が小グループを合併すべきか否かの判定の動作をより詳しく説明するフローチャートである。各小グループの受信端末数には上限が定められているため、受信端末数が1つ減少すれば、配信停止した受信端末20が属していた小グループを他の小グループと合併できる場合があり得る。
 このため、パケット送信制御機能124はまず、図11のステップS151と同様の基準で、残る小グループの中で合併可能なものを合併候補として選定する(ステップS161)。より具体的には、各グループのグループ制御情報管理テーブル153に記録された制御結果153bに記録されたビットレートの時間的変動が、配信停止した受信端末20が属していた小グループと類似しているものを合併候補とする。
 そして、配信停止した受信端末20が属していた小グループと、合併候補とされた小グループとの、配信停止後の端末数の合計が上限を超えているか否かを判定し(ステップS162)、超えていなければそれらの小グループを合併させて処理を終了する(ステップS163)。超えていれば合併させずに処理を終了する。
(より具体的な動作例)
 以上で説明した第1の実施形態について、より具体的な動作を例示しつつ説明する。まず、コンテンツ配信装置10は、起動する際に端末管理テーブル151、グループ制御情報管理テーブル153、端末制御情報管理テーブル154を作成する。これらのテーブルは配信開始の時点ではエントリを持たない。端末管理テーブル151における端末識別子として、各々の受信端末20のIPアドレスを利用する。
 次に、最初の受信端末(IPアドレス:10.1.1.1)から配信要求を受信した場合の動作を説明する。コンテンツ配信装置10は、配信要求を受信すると(図8のステップS11)、端末情報制御機能123が受信端末の大グループを決定し、端末管理テーブル151に新たな端末識別子151a=「10.1.1.1」に関するエントリを追加し、この受信端末20に対するプローブ管理テーブル152を作成する(図8のステップS12)。
 図14は、最初の受信端末から配信要求を受信してプローブ管理テーブル152を作成するまでの場合の処理が終了した段階で端末情報記憶部112に記憶される各テーブルの内容を示す説明図である。図14(A)は端末管理テーブル151、図14(B)はプローブ管理テーブル152、図14(C)はグループ制御情報管理テーブル153、図14(D)は端末制御情報管理テーブル154を各々示す。後述する図15~18においても同様である。この実施例では、IPアドレスの上位8ビット(IPアドレスをA.B.C.Dと表記した場合にAに該当する部分)が一致するものを同一の大グループとし、上位8ビットの10進数表記が10のものを大グループAとする。大グループへの分割時には、IPアドレスからISP(Internet Service Provider)や所在地などを調べ、その情報を使用してもよい。また、IPアドレスに加えて、GPS情報などを使用することもできる。
 そしてパケット送信制御機能124が、ビットレートの初期値とプローブパケットの送信時刻を決定し、配信開始をコンテンツパケット送信部103に指示する。これによってコンテンツの配信が新たに開始される(図8のステップS13)。この実施例では、事前に設定ファイルに記載したビットレート初期値で配信を開始することとしている。
 この時、端末情報制御機能123は、端末制御情報管理テーブル154の制御結果154bに、配信開始時のビットレートを記載したエントリを追加する。また、プローブパケットの送信時刻を決定し、プローブ管理テーブル152にプローブパケットID152aとその送信時刻152bとを記録する。ここで、事前に決めておいた1回の制御で使用するプローブパケット数(この実施例では5パケット)をもとに、制御のトリガとなるプローブパケットのIDを計算し(この実施例ではID=5)、プローブ管理テーブル1242の該当するエントリ(この実施例ではプローブパケットID152a=5に該当するエントリ)のフラグ152dを立てる。図15は、プローブパケットの送信時刻を決定してフラグを立てるまでの処理が終了した段階で端末情報記憶部112に記憶される各テーブルの内容を示す説明図である。
 コンテンツパケット送信部103とプローブパケット送信部104は、送信制御部102からの以上の指示に基づいて、各々コンテンツパケットとプローブパケットの送信を開始する。
 プローブパケット受信部105が受信端末20からプローブパケットの応答を受信(図9のステップS21)すると、これを送信制御部102に通知し、送信制御部102の端末情報制御機能123は端末情報記憶部112のプローブ管理テーブル152の受信時刻フィールドへ、応答パケットの受信時刻を記憶する(図9のステップS22)。
 フラグ152dの立っているプローブパケット(プローブパケットID152a=5)に対する応答パケットを受信した場合、送信時刻152bと受信時刻152cの差、即ちプローブパケットの往復遅延時間をもとにビットレートを決定し、制御結果(変更後のビットレート)を端末制御情報管理テーブル154の制御結果154bとして記憶する(図9のステップS23~24)。
 ここで、図9のステップS24でのビットレートの決定方法を詳細に説明する。この時点では端末識別子151a=「10.1.1.1」の受信端末は小グループに属していないため、端末情報制御機能123は、図10のステップS102~104の処理を実行する。また、この実施例では配信開始から10秒未満の場合には小グループへの追加判定を行わないこととする。配信開始から10秒以上が経過した後にステップS34を実行した際には、図10のステップS104(または図11)の小グループへの追加判定処理を行う。
 端末識別子151a=「10.1.1.1」の受信端末は、最初に配信を開始した受信端末であるので、小グループはこの時点では存在していない。そこでパケット送信制御機能124は、端末識別子151a=「10.1.1.1」の受信端末のみからなる小グループを新規に作成して、これを小グループID151c=1として端末管理テーブル151に登録する(図11のステップS151)。図16は、小グループを新規に作成して登録するまでの処理が終了した段階で端末情報記憶部112に記憶される各テーブルの内容を示す説明図である。
 続いて、時刻14[s]で端末識別子151a=「10.1.1.2」の異なる受信端末からの配信要求が、コンテンツ配信装置10に対してあったものとする。この受信端末はIPアドレスが10から始まるため、既に配信中の端末識別子151a=「10.1.1.1」の受信端末と同一の大グループID151b=Aとして、端末情報制御機能123が端末管理テーブル151にこの端末についてのエントリを追加する。
 端末識別子151a=「10.1.1.2」の受信端末は、最初は小グループに属さないが、配信要求から10秒が経過した時刻24[s]で、パケット送信制御機能124がこの端末を同一大グループ内の小グループに追加するか否かを判定する処理を行う(図10のステップS104、および図11)。
 図17は、時刻24[s]の時点で端末情報記憶部112に記憶される各テーブルの内容を示す説明図である。端末情報制御機能123は、この段階でのグループ制御情報管理テーブル153と端末制御情報管理テーブル154に記憶された情報に基づいて、小グループに属していない端末識別子151a=「10.1.1.2」の受信端末を、既存の小グループ(小グループID151c=1)に追加するか否かを判定する。
 この判定は、過去10秒間の制御履歴の比較によって行う。本実施例では、各制御時刻でビットレートを上昇・維持・低下のうちどの変化をさせたかを観測して完全一致した小グループであればそこに追加し、完全一致する小グループがない場合には、当該端末のみからなる小グループを新規作成する。また、完全一致する小グループが複数存在し、それらの端末の合計数が小グループの端末数の上限以下ならばそれらのグループを合併する。
 図17のグループ制御情報管理テーブル153を参照すると、小グループ1のビットレートは、維持、上昇、低下、上昇と推移しているのに対して、端末制御情報管理テーブル1244を参照すると、端末識別子151a=「10.1.1.2」の受信端末は、上昇、上昇、低下、上昇と推移しており、小グループ1と推移の傾向が一致しない。そのため、端末情報制御機能123は、端末識別子151a=「10.1.1.2」の受信端末を小グループ1へ追加することはできないと判定して、端末識別子151a=「10.1.1.2」の受信端末のみからなる新たな小グループ2(小グループID151c=2)を作成する。
 以後同様に、新たな受信端末の各々に対して、既存の小グループに追加するか新たな小グループを作成するかの判断がなされる。時刻30[s]の時点で、端末識別子151a=「10.1.2.3」の新たな受信端末からの配信要求があったものとする。図18は、時刻40[s]の時点で端末情報記憶部112に記憶される各テーブルの内容を示す説明図である。
 ここまでの時点で、図18のグループ制御情報管理テーブル153は、小グループ1(端末識別子151a=「10.1.1.1」の受信端末のみが属する)はビットレートが時刻36[s]で2Mbpsから4Mbpsに上昇して時刻40[s]までそのビットレートを保っているのに対し、小グループ2(端末識別子151a=「10.1.1.2」の受信端末のみが属する)はビットレートが3Mbpsから1Mbpsへと漸減していることを示している。そして端末制御情報管理テーブル154では、小グループに属していない端末識別子151a=「10.1.2.3」の受信端末は、ビットレートが小グループ1と全く同じ推移をしていることを示している。
 かつ、小グループ1および2は各々1台ずつの端末しかないので、台数の上限までにはまだ余裕がある。そこで、端末情報制御機能123は、端末識別子151a=「10.1.2.3」の受信端末を小グループ1へ追加する(図10のステップS104、および図11)。
 各々の受信端末20へのプローブパケット送信時刻の決定方法を説明する。本実施例では、小グループに属さない端末へは1秒間に5個のプローブパケットを送信する。小グループに属する端末には、10個のプロービング結果を用いて2秒に1回の制御を行う場合、各小グループに属している端末へのプローブパケット数の合計が2秒間で10個になるようにする。
 即ち、端末数が2である小グループに対しては、各々の端末に2秒間で5個ずつのプローブパケットを送信する。この場合、最初の1秒間で一方の端末へ5個のプローブパケットを送信し、次の1秒間で他方の端末へ5個送信するようにしてもよいし、0.2秒おきに交互に(時刻0、0.4、0.8、…に一方の端末へ、時刻0.2、0.6、1.0、…に他方の端末へ)送信してもよい。また、送信するプローブパケット数は必ずしも受信端末ごとに均一にする必要はない。次に示す小グループの再構成を行う際に、各々の受信端末ごとのビットレートの変動状態が把握できていることが必要であるので、その状態が維持できる範囲であればプローブパケットの送信頻度や順序などはどのようにも決定できる。
 小グループの再構成について説明する。たとえばボトルネックリンクが基幹網からアクセス網に変化した場合など、ボトルネックリンクを共有しない端末が同一の小グループに入っていると、小グループ内の一部の端末はビットレート上昇不可能、他の端末はビットレートを上昇可能となる。このため、このようにネットワーク状態の異なる端末が1つの小グループになった場合、ネットワーク状態が一致する端末同士が同一の小グループとなるように、図10のステップS108で示した小グループの再構成を行う。
 図19は、3台の受信端末で構成される小グループのステップS106におけるビットレート上昇・維持・低下の判定結果と、ステップS107で決定した小グループ全体の送信レートの増減傾向の一例について示す説明図である。本実施例では、グループ全体の送信レートの増減は、小グループに属する受信端末の制御結果から多数決で決定するものとする。また、小グループ再構成時には、過去10秒間のグループ全体の制御結果と各受信端末の判定結果を比較し、差異が大きいものをグループから削除する。削除する受信端末は、グループ全体の制御結果と判定結果が規定回数以上異なる端末とする。
 図19は、端末制御情報管理テーブル154の制御結果154bとして記録された、各受信端末の時刻200~208の時点で2秒ごとの、各受信端末A~Cのビットレートの値が「上昇」したか「低下」したか「維持」されたかを示している。ここに示した例では、受信端末3が他の端末と異なる傾向を示しているので、この受信端末Cをこの小グループから削除し、他の小グループへ追加する。追加する小グループの決定方法は、新たな受信端末を小グループへ追加する方法と同様である。
 最後に、受信端末からの配信停止要求を受信した場合の動作について説明する。図20は、同一の大グループ内の小グループX~Zの受信端末数および制御履歴の一例について示す説明図である。これらの小グループX~Zには、各々3台、3台、1台の受信端末20が属している。また、1つの小グループあたりの受信端末数の上限は5である。そんな中で、時刻210の時点で、小グループYに属する1台の受信端末20が、配信停止要求をコンテンツ配信装置10に対して送信した。
 この配信停止要求を受けたコンテンツ配信装置10は、当該端末へのコンテンツの配信を停止し(ステップS31)、配信停止した受信端末が属する小グループ(今回の例では小グループ2)と他の小グループとが合併可能であるか否かを判定する(ステップS32)。合併可能であるか否かの判定は、今回の例では過去10秒間の制御履歴の比較によって行う。
 図20は、グループ制御情報管理テーブル153の制御結果153bとして記録された、各受信端末の時刻300~308の時点で2秒ごとの、各小グループX~Zのビットレートの値が「上昇」したか「低下」したか「維持」されたかを示している。ここに示した例では、小グループXの制御履歴が小グループYの制御履歴と一致しているので、これら小グループXおよびYが合併候補となる(ステップS161)。
 かつ、小グループYの端末数が1台減って2台となったことにより、小グループXと小グループYの端末数の合計は5台となる。これは受信端末数の上限以内であるので、パケット送信制御機能124は小グループXと小グループYとは合併可能であると判定して(ステップS162)、これらを合併して新たな小グループとする(ステップS163)。
(第1の実施形態の全体的な動作)
 次に、上記の実施形態の全体的な動作について説明する。本実施形態に係るコンテンツ配信方法は、コンテンツ配信装置10と複数台の受信端末20とがネットワーク30を介して相互に接続されて構成され、受信端末からの要求に応じてコンテンツ配信装置が受信端末にコンテンツデータを送出するコンテンツ配信システム1にあって、受信端末に対してコンテンツデータをコンテンツ配信装置のコンテンツパケット送信部が送出し(図8・ステップS12~13)、受信端末に対してネットワーク状態推定用のプローブパケットをコンテンツ配信装置のプローブパケット送信部104が送信し、プローブパケットに対する受信端末からの返信パケットをコンテンツ配信装置のプローブパケット受信部105が受信し(図9・ステップS21)、プローブパケットの送信から返信パケットの受信までの所要時間を前記コンテンツ配信装置の送信制御部が特定し、特定された所要時間から送出されるコンテンツデータのビットレートをコンテンツ配信装置の送信制御部が決定し(図9・ステップS24、図10・ステップS107)、受信端末の中でビットレートの時間的変動が類似している受信端末をコンテンツ配信装置の送信制御部が小グループとして定義し(図10・ステップS108)、同一の小グループに属する受信端末に対して一括してプローブパケットの送信間隔をコンテンツ配信装置の送信制御部が決定する(図10・ステップS109)。
 ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するコンピュータであるコンテンツ配信装置10に実行させるようにしてもよい。
 この動作により、本実施形態は以下のような効果を奏する。
 本実施形態では、ビットレートの時間的変動が類似している、即ち同一のボトルネックリンクを共有している可能性の高い受信端末を同一の小グループとするように構成したので、その小グループに属する受信端末の全てに対して所定の間隔でプローブパケットを送信しなくてもよい。従って、送信するプローブパケットの総数を少なくすることができ、その送受信にかかる負荷を減少させてその分だけ、同時に配信可能なストリーム数を増加することが可能となる。
 また、本実施形態では、ネットワーク状態の変動履歴に応じて定期的に小グループの再構成を行うので、(たとえば特定の端末が負荷の大きい通信を始める、または終わるなどの要因によって)ボトルネックリンクが変動したとしても、それに応じて適切な小グループの編成とすることが可能となり、これによって各々の受信端末に対して適切なビットレートでコンテンツの配信を行うことが可能となる。
(第2の実施形態)
 本発明の第2の実施形態は、第1の実施形態におけるコンテンツ配信装置を、コンテンツパケット送信部およびセッション制御部を有するコンテンツ送信装置310と、プローブパケット送信部、プローブパケット送信部、および送信制御部を有する配信制御装置320とで構成した。
 これによっても、第1の実施形態と同一の効果を得ることができ、かつ既存のコンテンツ送信装置に配信制御装置を追加するだけでよいので、少ないコストで本発明を実施することが可能となる。
 以下、これをより詳細に説明する。
 図21は、本発明の第2の実施形態に係るコンテンツ配信システム301の構成を示す説明図である。コンテンツ配信システム301は、コンテンツ送信装置310と、配信制御装置320と、複数台の受信端末20a、20b、20c…を総称していう受信端末20とがネットワーク30によって相互に接続されて構成される。受信端末20およびネットワーク30は、第1の実施形態と同一である。
 コンテンツ送信装置310は、図1に示した第1の実施形態でのコンテンツ配信装置10と同様に、コンピュータプログラムを実行する主演算制御手段(CPU)311と、各種データおよびプログラムを記憶するための記憶手段312と、ネットワーク30に接続して他のコンピュータとのデータ通信を行う通信手段313とを備えたコンピュータ装置(サーバ)である。
 コンテンツ送信装置310の主演算制御手段311では、後述のセッション制御部411、コンテンツパケット送信部412、および制御情報通信部413が、コンピュータプログラムとして動作する。そして記憶手段312には、コンテンツ記憶部414が確保されている。
 セッション制御部411は、受信端末20からの配信開始要求や配信停止要求を処理する。制御情報通信部413は、セッション制御部411から配信開始通知・配信停止通知を受信して配信制御装置320へ送信し、配信制御装置320から送信ビットレートの指示を受け、コンテンツパケット送信部412へ送信する。コンテンツパケット送信部412は、制御情報通信部413からの指示に基づいて、コンテンツ記憶部414からコンテンツデータを取り出してパケット化して、受信端末20へ送信する。そしてコンテンツ記憶部414は、各コンテンツをビットレートを切り替えながら配信可能な形式で保存している。
 また、配信制御装置320も、コンピュータプログラムを実行する主演算制御手段(CPU)321と、各種データおよびプログラムを記憶するための記憶手段322と、ネットワーク30に接続して他のコンピュータとのデータ通信を行う通信手段323とを備えたコンピュータ装置(サーバ)である。
 配信制御装置320の主演算制御手段321では、後述のプローブパケット送信部421、プローブパケット受信部422、および送信制御部423が、コンピュータプログラムとして動作する。そして記憶手段312には、コンテンツ記憶部414が確保されている。そして記憶手段322には、後述の端末情報記憶部424が確保されている。
 プローブパケット受信部422は、受信端末20に対して送信したプローブパケットに対する応答パケットを受信し、送信元端末とプローブパケットIDと受信時刻を後述の送信制御部423へ通知する。送信制御部423は、コンテンツ送信装置310から受信した配信開始通知・配信停止通知とプローブパケット受信部422からの情報を元に送信ビットレートとプローブパケットの送信時刻を決定し、これをコンテンツ送信装置310とプローブパケット送信部421に指示する。プローブパケット送信部421は、この次子に基づいてプローブパケットを受信端末20に対して送信する。
 図22は、図21で示した送信制御部423のより詳細な構成について示す説明図である。送信制御部423は、プローブパケット受信部422からプローブパケットの応答の送信元端末とプローブパケットIDと受信時刻についての情報を受け取るプローブパケット情報受信機能501、プローブパケット受信機能501と後述の制御情報通信機能503から受信した各種情報を端末情報記憶部424に保存し、また必要な情報を端末情報記憶部424から取り出してパケット送信時刻決定機能504へ送信する端末情報制御機能502を有する。
 送信制御部423はさらに、コンテンツ送信装置310の制御情報通信部413との通信を行う制御情報通信機能503と、端末情報記憶部424からの情報をもとに各受信端末20への送信ビットレートとプローブパケットの送信時刻を決定し、これをコンテンツ送信装置310の制御情報通信部413とプローブパケット送信部421へ指示するパケット送信時刻決定機能504から構成される。
 端末情報記憶部424が記憶している内容は、第1の実施の形態の端末情報記憶部112と同一であるので、そこに記録されている各テーブルや情報について、同一の名称と参照番号でいう。
 図23は、図21に示したコンテンツ配信システムで、受信端末20のうちの1つがコンテンツ送信装置310に対して新しくコンテンツ配信開始要求をした場合の、コンテンツ送信装置310および配信制御装置320の動作について示すフローチャートである。コンテンツ送信装置310が、セッション制御部411で受信端末20からの配信開始要求を受信すると(ステップS211)、その受信端末20のIDを制御情報通信部413を介して配信制御装置320へ通知する(ステップS212)。
 配信制御装置320では、送信制御部423の端末情報制御機能502が、受信端末20のIDからその受信端末20が属する大グループを決定して、端末情報記憶部424の端末管理テーブル151に新たな端末識別子151aに関するエントリを追加し、端末識別子151aに対応するプローブ管理テーブル152を新たに追加する(ステップS213)。
 そして、送信制御部423の端末情報制御機能502が、ビットレートの初期値を決定して、これを制御情報通信機能503を介してコンテンツ送信装置310に通知し(ステップS214)、コンテンツ送信装置310ではコンテンツパケット送信部412がこれを受けて、受信端末20へのコンテンツ配信を開始する(ステップS215)。
 図24は、図21に示したコンテンツ配信システムで、プローブパケットに対する受信端末20からの応答を受信した場合の、配信制御装置320の動作について示すフローチャートである。この動作は、図9に説明した第1の実施形態の動作との差異が小さいため、
図9との相違点についてのみ説明する。
 配信制御装置320のプローブパケット受信部422が応答パケットを受信すると(ステップS221)、送信元端末とプローブパケットIDと受信時刻を送信制御部423へ送信し、送信制御部423の端末情報制御機能502は、受信したそれらの情報をプローブ管理テーブル152のID152aおよび受信時刻152cとして保存する(ステップS222)。
 端末情報制御機能502は次に、受信したプローブパケットの応答が制御のトリガとなるか否か、即ちそのプローブパケットのID152aに対応するフラグ152dが立っているか否かを判定する(ステップS223)。トリガとなる応答パケットであれば、パケット送信時刻決定機能504でビットレートとプローブパケットの送信時刻を決定する(ステップS224)。そのビットレートとプローブパケットの送信時刻を決定する処理の詳細は、図10~11に示した第1の実施形態の動作と同一である。
 図25は、図21に示したコンテンツ配信システムで、受信端末20のうちの1つがコンテンツ送信装置310に対して配信停止要求をした場合の、コンテンツ送信装置310および配信制御装置320の動作について示すフローチャートである。コンテンツ送信装置310が、セッション制御部411で受信端末20からの配信停止要求を受信すると、コンテンツパケット送信部412は該当するコンテンツの配信を停止する(ステップS231)と共に、この旨を制御情報通信部413を介して配信制御装置320へ通知する。
 配信制御装置320では、制御情報通信機能503を介してこれを受けた送信制御部423の端末情報制御機能502が、端末管理テーブル151から該当する端末識別子151aに関するエントリを削除し、その端末識別子151aに対応するプローブ管理テーブル152を削除する(ステップS232)。
 送信制御部423はこれに続いて、第1の実施形態と同様に小グループを合併すべきか否かについて判定を行う(ステップS233)。この処理の詳細は、第1の実施形態で図13として既に説明した動作と同一である。
 以上で説明したように、本実施形態でも第1の実施形態と同一の動作を行って、同一の効果を得ることができる。かつ本実施形態は、コンテンツ送信装置310が既に稼働している環境に、配信制御装置320を追加するだけで容易に実施することができる。また、複数台のコンテンツ送信装置310を1台の配信制御装置320で制御するように構成することもできる。このため、第1の実施形態と同一の効果を、より小さいコストで得ることができる。
(実施形態の拡張)
 以上で説明した第1および第2の実施形態では、「ビットレート」の「上昇」「維持」「下降」をネットワーク状態の変動として利用しているが、ビットレートの変動をたとえば「上昇(下降)率」や「上昇(下降)量」などまで考慮して捉えることによって、より精密に小グループのグループ分けを行うことが考えられる。
 また、ビットレート以外にも、ネットワーク状態を表す数値としてたとえばパケットロス率を利用することもできる。パケットロス率を利用する場合、パケットロス率に応じてFEC(Forward Error Correction)の冗長データ量を調整する制御に、第1および第2の実施形態として説明した方法を適用することができる。
 これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
 上述した各々の実施形態について、その新規な技術内容の要点をまとめると、以下のようになる。なお、上記実施形態の一部または全部は、新規な技術として以下のようにまとめられるが、本発明は必ずしもこれに限定されるものではない。
(付記1) コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信システムであって、
 前記コンテンツ配信装置が、
 前記受信端末に前記コンテンツデータを送出するコンテンツパケット送信部と、
 前記受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部と、
 前記プローブパケットに対する前記受信端末からの返信パケットを受信するプローブパケット受信部と、
 前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定すると共に当該所要時間から前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定する送信制御部とを有し、
 前記送信制御部が、前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして、同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定することを特徴とするコンテンツ配信システム。
(付記2) 前記送信制御部が、
 前記プローブパケットを所定の個数送信するごとに各々の前記受信端末のビットレートの時間的変動を判定し、その判定結果に基づいて前記小グループを再構成する機能を有することを特徴とする、付記1に記載のコンテンツ配信システム。
(付記3) 前記送信制御部が、
 前記プローブパケットを所定の個数送信するごとに、前記小グループに属していない前記受信端末に対して、既存の前記小グループと前記ビットレートの時間的変動が類似しており、かつ該小グループに属する前記受信端末の台数が予め与えられた上限値以内であれば該受信端末を該小グループに追加する機能を有することを特徴とする、付記2に記載のコンテンツ配信システム。
(付記4) 前記送信制御部が、
 前記受信端末の中の1台からの配信停止要求を前記セッション制御部が受信したことを受けて、既存の前記小グループの中で前記ビットレートの時間的変動が類似しており、かつ該小グループに属する前記受信端末の合計台数が前記上限値以内であるものがあればそれらの小グループを合併させる機能を有することを特徴とする、付記3に記載のコンテンツ配信システム。
(付記5) 前記送信制御部が、
 前記プローブパケットを所定の個数送信するごとに、前記受信端末のビットレートの時間的変動の判定と前記小グループの再構成を行うことを特徴とする、付記2に記載のコンテンツ配信システム。
(付記6) 前記コンテンツ配信装置を、
 前記コンテンツパケット送信部および前記セッション制御部を有するコンテンツ送信装置と、
 前記プローブパケット送信部、前記プローブパケット送信部、および前記送信制御部を有する配信制御装置とで構成したことを特徴とする、付記1に記載のコンテンツ配信システム。
(付記7) 複数台の受信端末とネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信装置であって、
 前記受信端末に前記コンテンツデータを送出するコンテンツパケット送信部と、
 前記受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部と、
 前記プローブパケットに対する前記受信端末からの返信パケットを受信するプローブパケット受信部と、
 前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定すると共に当該所要時間から前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定する送信制御部とを有し、
 前記送信制御部が、前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして、同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定することを特徴とするコンテンツ配信装置。
(付記8) 複数台の受信端末および前記受信端末に前記コンテンツデータを送出するコンテンツ送信装置とネットワークを介して相互に接続されて構成され、前記コンテンツ送信装置が前記受信端末に送出する前記コンテンツデータのビットレートを決定する配信制御装置であって、
 前記受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部と、
 前記プローブパケットに対する前記受信端末からの返信パケットを受信するプローブパケット受信部と、
 前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定すると共に当該所要時間から前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定する送信制御部とを有し、
 前記送信制御部が、前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして、同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定することを特徴とする配信制御装置。
(付記9) コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信システムにあって、
 前記受信端末に対して前記コンテンツデータを前記コンテンツ配信装置のコンテンツパケット送信部が送出し、
 前記受信端末に対してネットワーク状態推定用のプローブパケットを前記コンテンツ配信装置のプローブパケット送信部が送信し、
 前記プローブパケットに対する前記受信端末からの返信パケットを前記コンテンツ配信装置のプローブパケット受信部が受信し、
 前記プローブパケットの送信から前記返信パケットの受信までの所要時間を前記コンテンツ配信装置の送信制御部が特定し、
 特定された前記所要時間から送出される前記コンテンツデータの前記ビットレートを前記コンテンツ配信装置の送信制御部が決定し、
 前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を前記コンテンツ配信装置の前記送信制御部が小グループとして定義し、
 同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔を前記コンテンツ配信装置の前記送信制御部が決定することを特徴とするコンテンツ配信方法。
(付記10) 複数台の受信端末と、前記受信端末に前記コンテンツデータを送出するコンテンツ送信装置と、前記コンテンツ送信装置が前記受信端末に送出する前記コンテンツデータのビットレートを決定する配信制御装置とがネットワークを介して相互に接続されて構成されるコンテンツ配信システムにあって、
 前記受信端末に対して前記コンテンツデータを前記コンテンツ送信装置のコンテンツパケット送信部が送出し、
 前記受信端末に対してネットワーク状態推定用のプローブパケットを前記配信制御装置のプローブパケット送信部が送信し、
 前記プローブパケットに対する前記受信端末からの返信パケットを前記配信制御装置のプローブパケット受信部が受信し、
 前記プローブパケットの送信から前記返信パケットの受信までの所要時間を前記配信制御装置の送信制御部が特定し、
 特定された前記所要時間から送出される前記コンテンツデータの前記ビットレートを前記配信制御装置の送信制御部が決定し、
 前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を前記配信制御装置の前記送信制御部が小グループとして定義し、
 同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔を前記配信制御装置の前記送信制御部が決定して前記コンテンツ送信装置に伝達することを特徴とするコンテンツ配信方法。
(付記11) コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信システムにあって、
 前記コンテンツ配信装置が備えるコンピュータに、
 前記受信端末に対して前記コンテンツデータを送出する手順、
 前記受信端末に対してネットワーク状態推定用のプローブパケットを送信する手順、
 前記プローブパケットに対する前記受信端末からの返信パケットを受信する手順、
 前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定する手順、
 特定された前記所要時間から送出される前記コンテンツデータの前記ビットレートを決定する手順、
 前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして定義する手順、
 および同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔を決定する手順
を実行させることを特徴とするコンテンツ配信プログラム。
(付記12) 複数台の受信端末と、前記受信端末に前記コンテンツデータを送出するコンテンツ送信装置と、前記コンテンツ送信装置が前記受信端末に送出する前記コンテンツデータのビットレートを決定する配信制御装置とがネットワークを介して相互に接続されて構成されるコンテンツ配信システムにあって、
 前記配信制御装置が備えるコンピュータに、
 前記受信端末に対してネットワーク状態推定用のプローブパケットを送信する手順、
 前記プローブパケットに対する前記受信端末からの返信パケットを受信する手順、
 前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定する手順、
 特定された前記所要時間から送出される前記コンテンツデータの前記ビットレートを決定する手順、
 前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして定義する手順、
 および同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔を決定してこれを前記コンテンツ送信装置に伝達する手順
を実行させることを特徴とするコンテンツ配信プログラム。
 この出願は2010年7月22日に出願された日本出願特願2010-164715を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明は、インターネットを介して映像や音声などのメディアデータを配信するコンテンツ配信システムに適用できる。
  1、301 コンテンツ配信システム
  10 コンテンツ配信装置
  11、311、321 主演算制御手段
  12、312、322 記憶手段
  13、313、323 通信手段
  20 受信端末
  30 ネットワーク
  40 ボトルネックリンク
  50a 小グループ
  60a 大グループ
  101、411 セッション制御部
  102、423 送信制御部
  103、412 コンテンツパケット送信部
  104、421 プローブパケット送信部
  105、422 プローブパケット受信部
  111、414 コンテンツ記憶部
  112、424 端末情報記憶部
  121 セッション情報受信機能
  122、501 プローブパケット情報受信機能
  123、502 端末情報制御機能
  124 パケット送信制御機能
  151 端末管理テーブル
  152 プローブ管理テーブル
  153 グループ制御情報管理テーブル
  154 端末制御情報管理テーブル
  310 コンテンツ送信装置
  320 配信制御装置
  413 制御情報通信部
  503 制御情報通信機能
  504 パケット送信時刻決定機能

Claims (9)

  1.  コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信システムであって、
     前記コンテンツ配信装置が、
     前記受信端末に前記コンテンツデータを送出するコンテンツパケット送信部と、
     前記受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部と、
     前記プローブパケットに対する前記受信端末からの返信パケットを受信するプローブパケット受信部と、
     前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定すると共に当該所要時間から前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定する送信制御部とを有し、
     前記送信制御部が、前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして、同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定することを特徴とするコンテンツ配信システム。
  2.  前記送信制御部が、
     前記小グループに属する各々の前記受信端末のビットレートの時間的変動を判定し、その判定結果に基づいて前記小グループを再構成する機能を有することを特徴とする、請求項1に記載のコンテンツ配信システム。
  3.  前記送信制御部が、
     前記小グループに属していない前記受信端末に対して、既存の前記小グループと前記ビットレートの時間的変動が類似しており、かつ該小グループに属する前記受信端末の台数が予め与えられた上限値以内であれば該受信端末を該小グループに追加する機能を有することを特徴とする、請求項2に記載のコンテンツ配信システム。
  4.  前記送信制御部が、
     前記受信端末の中の1台からの配信停止要求を前記セッション制御部が受信したことを受けて、既存の前記小グループの中で前記ビットレートの時間的変動が類似しており、かつ該小グループに属する前記受信端末の合計台数が前記上限値以内であるものがあればそれらの小グループを合併させる機能を有することを特徴とする、請求項3に記載のコンテンツ配信システム。
  5.  前記送信制御部が、
     前記プローブパケットを所定の個数送信するごとに、前記受信端末のビットレートの時間的変動の判定と前記小グループの再構成を行うことを特徴とする、請求項2に記載のコンテンツ配信システム。
  6.  前記コンテンツ配信装置を、
     前記コンテンツパケット送信部および前記セッション制御部を有するコンテンツ送信装置と、
     前記プローブパケット送信部、前記プローブパケット送信部、および前記送信制御部を有する配信制御装置とで構成したことを特徴とする、請求項1に記載のコンテンツ配信システム。
  7.  複数台の受信端末とネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信装置であって、
     前記受信端末に前記コンテンツデータを送出するコンテンツパケット送信部と、
     前記受信端末にネットワーク状態推定用のプローブパケットを送信するプローブパケット送信部と、
     前記プローブパケットに対する前記受信端末からの返信パケットを受信するプローブパケット受信部と、
     前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定すると共に当該所要時間から前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定する送信制御部とを有し、
     前記送信制御部が、前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして、同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔および送出される前記コンテンツデータの前記ビットレートを決定することを特徴とするコンテンツ配信装置。
  8.  コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信システムにあって、
     前記受信端末に対して前記コンテンツデータを前記コンテンツ配信装置のコンテンツパケット送信部が送出し、
     前記受信端末に対してネットワーク状態推定用のプローブパケットを前記コンテンツ配信装置のプローブパケット送信部が送信し、
     前記プローブパケットに対する前記受信端末からの返信パケットを前記コンテンツ配信装置のプローブパケット受信部が受信し、
     前記プローブパケットの送信から前記返信パケットの受信までの所要時間を前記コンテンツ配信装置の送信制御部が特定し、
     特定された前記所要時間から送出される前記コンテンツデータの前記ビットレートを前記コンテンツ配信装置の送信制御部が決定し、
     前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を前記コンテンツ配信装置の前記送信制御部が小グループとして定義し、
     同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔を前記コンテンツ配信装置の前記送信制御部が決定することを特徴とするコンテンツ配信方法。
  9.  コンテンツ配信装置と複数台の受信端末とがネットワークを介して相互に接続されて構成され、前記コンテンツ配信装置が前記受信端末にコンテンツデータを送出するコンテンツ配信システムにあって、
     前記コンテンツ配信装置が備えるコンピュータに、
     前記受信端末に対して前記コンテンツデータを送出する手順、
     前記受信端末に対してネットワーク状態推定用のプローブパケットを送信する手順、
     前記プローブパケットに対する前記受信端末からの返信パケットを受信する手順、
     前記プローブパケットの送信から前記返信パケットの受信までの所要時間を特定する手順、
     特定された前記所要時間から送出される前記コンテンツデータの前記ビットレートを決定する手順、
     前記受信端末の中で前記ビットレートの時間的変動が類似している受信端末を小グループとして定義する手順、
     および同一の前記小グループに属する受信端末に対して一括して前記プローブパケットの送信間隔を決定する手順
    を実行させることを特徴とするコンテンツ配信プログラム。
PCT/JP2011/065177 2010-07-22 2011-07-01 コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム WO2012011378A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/811,598 US9307000B2 (en) 2010-07-22 2011-07-01 Content distribution system, content distribution device, content distribution method and program
EP11809552.0A EP2597823B1 (en) 2010-07-22 2011-07-01 Content distribution system, content distribution device, content distribution method and program
JP2012525366A JP5817724B2 (ja) 2010-07-22 2011-07-01 コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-164715 2010-07-22
JP2010164715 2010-07-22

Publications (1)

Publication Number Publication Date
WO2012011378A1 true WO2012011378A1 (ja) 2012-01-26

Family

ID=45496806

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/065177 WO2012011378A1 (ja) 2010-07-22 2011-07-01 コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム

Country Status (4)

Country Link
US (1) US9307000B2 (ja)
EP (1) EP2597823B1 (ja)
JP (1) JP5817724B2 (ja)
WO (1) WO2012011378A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016219950A (ja) * 2015-05-18 2016-12-22 富士通株式会社 通信装置、通信システム、および、通信方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11289350A (ja) * 1998-04-01 1999-10-19 Matsushita Electric Ind Co Ltd データ伝送装置
JP2000286845A (ja) 1999-04-01 2000-10-13 Nippon Telegr & Teleph Corp <Ntt> マルチキャストデータ配信方法
JP2005167675A (ja) 2003-12-03 2005-06-23 Mitsubishi Electric Corp データ通信装置及び端末装置及びデータ通信システム
JP2007533215A (ja) 2004-04-16 2007-11-15 アパレント ネットワークス、インク. アクティブプロービングによるipネットワーク性能の監視および分析を自動化し、スケーリングするための方法および装置
JP2008278207A (ja) 2007-04-27 2008-11-13 Nec Corp 可用帯域幅推定システム、ストリームデータ配信システム、方法、及び、プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6907023B2 (en) * 2000-08-14 2005-06-14 Vesuvius, Inc. Communique system with dynamic bandwidth allocation in cellular communication networks
US8554615B2 (en) * 2009-02-24 2013-10-08 Board Of Trustees Of Michigan State University Context-induced wireless network transport for content and profile information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11289350A (ja) * 1998-04-01 1999-10-19 Matsushita Electric Ind Co Ltd データ伝送装置
JP2000286845A (ja) 1999-04-01 2000-10-13 Nippon Telegr & Teleph Corp <Ntt> マルチキャストデータ配信方法
JP2005167675A (ja) 2003-12-03 2005-06-23 Mitsubishi Electric Corp データ通信装置及び端末装置及びデータ通信システム
JP2007533215A (ja) 2004-04-16 2007-11-15 アパレント ネットワークス、インク. アクティブプロービングによるipネットワーク性能の監視および分析を自動化し、スケーリングするための方法および装置
JP2008278207A (ja) 2007-04-27 2008-11-13 Nec Corp 可用帯域幅推定システム、ストリームデータ配信システム、方法、及び、プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KOICHI NIHEI ET AL.: "A bit rate control method using round-trip time of probing packets", PROCEEDINGS OF THE 2010 IEICE GENERAL CONFERENCE TSUSHIN, vol. 2, 2 March 2010 (2010-03-02), pages 99 *
See also references of EP2597823A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016219950A (ja) * 2015-05-18 2016-12-22 富士通株式会社 通信装置、通信システム、および、通信方法

Also Published As

Publication number Publication date
EP2597823B1 (en) 2015-02-25
EP2597823A4 (en) 2014-02-26
JP5817724B2 (ja) 2015-11-18
EP2597823A1 (en) 2013-05-29
US20130124622A1 (en) 2013-05-16
US9307000B2 (en) 2016-04-05
JPWO2012011378A1 (ja) 2014-01-20

Similar Documents

Publication Publication Date Title
US10798009B2 (en) Network latency optimization
CN105723680B (zh) 用于音频分配的方法和计算机设备
US10270821B2 (en) Content delivery system and method
EP2754272B1 (en) Method, device and system for providing and selecting candidate nodes for live streaming services
KR102317694B1 (ko) 세션 기반 디바이스 구성
US11431781B1 (en) User-defined quality of experience (QoE) prioritizations
US20180007091A1 (en) Synchronous media rendering over a spatially extended wireless network
EP2979423A1 (en) Content distribution system and method
TWI484792B (zh) 在可多播路由器中有效率的主機管理協定
Al Hasrouty et al. Adaptive multicast streaming for videoconferences on software-defined networks
US10425458B2 (en) Adaptive bit rate streaming with multi-interface reception
JP5817724B2 (ja) コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム
Zhang et al. Treeclimber: A network-driven push-pull hybrid scheme for peer-to-peer video live streaming
JP2012113719A (ja) P2p基盤のストリーミングサービスのサーバ使用量を調整するシステムおよび方法
Erfanian et al. On maximizing QoE in AVC-based HTTP adaptive streaming: An SDN approach
Cui et al. Optimizing P2P streaming throughput under peer churning
Ozcan et al. Multipath transmission aware ABR algorithm for SVC HAS
US12010012B2 (en) Application-aware BGP path selection and forwarding
US20150195361A1 (en) Streaming system and node device used in streaming system
CN117061420A (zh) 路由路径确定方法、装置、设备、介质以及程序产品
Ouali et al. Toward new peering strategies for push-pull based p2p streaming systems
Kandavanam et al. Achieving high robustness and performance in QoS-aware route planning for IPTV networks
KR102088294B1 (ko) 미디어 클라이언트로부터의 수신 상태정보에 기반한 적응적 미디어 전달 방법 및 이를 이용하는 장치
Batalla et al. On developing efficient unmanaged services in Content Aware Networks

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2012525366

Country of ref document: JP

Ref document number: 2011809552

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13811598

Country of ref document: US