WO2012046358A1 - 経路構築装置及び経路構築方法 - Google Patents

経路構築装置及び経路構築方法 Download PDF

Info

Publication number
WO2012046358A1
WO2012046358A1 PCT/JP2011/001168 JP2011001168W WO2012046358A1 WO 2012046358 A1 WO2012046358 A1 WO 2012046358A1 JP 2011001168 W JP2011001168 W JP 2011001168W WO 2012046358 A1 WO2012046358 A1 WO 2012046358A1
Authority
WO
WIPO (PCT)
Prior art keywords
alm
resource
node
path
mcu
Prior art date
Application number
PCT/JP2011/001168
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 EP11830299.1A priority Critical patent/EP2627044A1/en
Priority to CN2011800046404A priority patent/CN102668475A/zh
Priority to US13/511,520 priority patent/US20120284409A1/en
Publication of WO2012046358A1 publication Critical patent/WO2012046358A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS

Definitions

  • the present invention is a path construction apparatus and path construction for assigning prioritized and optimized dynamic resources applicable to heterogeneous networks and resource environments, and AV (Audio / Video) conference systems having a plurality of nodes. Regarding the method.
  • ALM Application Layer Multicast
  • ALM removes the need for a multicast transfer function in the IP layer by allowing members to transfer AV packets.
  • AV packet transfer in the application layer becomes flexible.
  • ALM simultaneously exchanges data packets between two or more client entities, such as multi-party applications, as shown in FIG.
  • An ALM session is thus defined as a logical session in which these client entities are connected through a network.
  • the N-Tree algorithm applies a water spreading policy and simultaneously constructs “N sources ALM with fair bandwidth” path.
  • This algorithm operates in three phases.
  • the first phase is a connection establishment phase for collecting network metrics.
  • the second phase is an N-Tree construction phase that executes an N-Tree algorithm that forms an ALM path between ALM nodes.
  • the final phase is an N-Tree optimization phase for optimizing the ALM path that employs link movement and reordering methods.
  • This N-Tree algorithm constructs an ALM path that distributes the bandwidth fairly based only on the available bandwidth and latency at the participating nodes.
  • Bandwidth allocation without considering the end-node specific bandwidth requirements by the N-Tree algorithm results in AV quality that is not optimized at the participating nodes.
  • participants can continuously customize their screen layout, which requires dynamic and differentiated bandwidth and latency. This problem has been solved by the invention of Patent Document 2.
  • the 'differentiated and fair bandwidth allocation of source-specific network path' mechanism in US Pat. No. 6,057,089 allocates bandwidth based on display resolution and content type determined by the receiver side for ALM applications. It is aimed.
  • This mechanism assumes that it has a display resolution according to different screen layouts selected by each participant in the video conference session and different content types such as audio, video and document.
  • the display resolution is, for example, HD720p, HD1080i, 4CIF, CIF, QCIF, or the like.
  • the ALM path is constructed by differentiating these two main components: (i) the recipient's display resolution and (ii) the content type. In this case, different network paths for different participating nodes in a single streaming session can be established. In this case, the ALM path is associated with the bandwidth of the network.
  • the maximum bandwidth available for the ALM path is allocated between the stream transmission node and the stream reception node using the N-Tree algorithm.
  • ALM node groups are formed based on node types (or source specific types), ie, stream transmission nodes, stream relay nodes, and stream reception nodes, together with selection parameters of display resolution and content type.
  • Patent Document 2 uses an N-Tree algorithm, selects a node from different groups based on the node type and selection parameters, and constructs an ALM path.
  • Other parameters are the encoding bit rate, the image resolution and the frame rate.
  • Other parameters are also assumed to be tuned according to the allocated bandwidth in the compression / encoding process to allow resource optimization. Prioritization is performed based on display resolution and content type that can be dynamically changed based on user requirements. In this case, bandwidth is also dynamically allocated without violating the N-Tree algorithm.
  • the two inventions described above are based on the premise that all nodes are the same in terms of AV content processing capability. Also, these inventions do not take into account changes in a conference session of a plurality of conference events and a plurality of participant screen layouts in the same session. This lack of consideration has a serious impact on resource allocation for prioritization and optimization in AV sessions, as described below.
  • each parameter of the main resource is the same device can be illustrated based on the following diagram.
  • Major resources include all node AV mixing (MCU: Multiple Control Unit) capabilities, encoding and decoding capabilities, participant screen layout options, and conference events.
  • MCU Multiple Control Unit
  • N-Tree invention of US Pat.
  • FIGS. 6, 7, 8, and 9 where N-Tree (invention of US Pat. A method for constructing an AV distribution tree is shown.
  • the constructed N-Tree is not optimized in terms of the use of an encoder / decoder. This results in processing delays. As a result, the quality of the video conference you experience decreases (video lagging). Therefore, in this case, resources other than bandwidth or latency are equally important.
  • Patent Document 1 must trigger N-Tree and prioritize and optimize key resources by including changes in screen layout choices and conference events in addition to resolution and content type.
  • I must.
  • Major resources include AV mixing (MCU) capability, encoding and decoding capability (encoding and decoding capability), and the like.
  • An object of the present invention is to provide a path construction apparatus and a path construction allocation method for allocating dynamic resources that are prioritized and optimized in order to construct a delivery path for stream contents transmitted and received between a plurality of communication nodes. That is.
  • the present invention provides a path construction apparatus for constructing a delivery path for the stream content, which constitutes one communication node in a system in which stream contents are transmitted and received between a plurality of communication nodes, for constructing the delivery path.
  • a resource prioritization unit that prioritizes the allocation of resources that can be used
  • a resource optimization unit that optimizes the allocation of resources that can be used to construct the delivery route
  • the resource prioritization unit There is provided a route construction apparatus comprising: a route construction unit that constructs a delivery route for stream contents based on resource allocation that is prioritized and optimized by the resource optimization unit.
  • the present invention is a route construction method for constructing a delivery route for transmitting the stream content, performed by one communication node in a system in which stream content is transmitted and received between a plurality of communication nodes, the delivery route A resource prioritization step for prioritizing the allocation of resources available to construct a resource, a resource optimization step for optimizing the allocation of resources available for constructing the delivery path, and the resource priority
  • a path construction method comprising: a path construction step of constructing a delivery path of stream contents based on the resource allocation prioritized in the ranking step and optimized in the resource optimization step.
  • prioritized and optimized dynamic resources can be allocated in order to construct a delivery route for stream content transmitted and received between a plurality of communication nodes. it can.
  • Figure 3 shows a network with three sub-networks and a plurality of connected nodes.
  • a configuration example of a plurality of networks and connection nodes in one conference session is shown.
  • Fig. 4 shows a detailed step-by-step example of building an N-Tree with fair bandwidth in a given initial resource.
  • Fig. 4 shows a detailed step-by-step example of building an N-Tree with fair bandwidth in a given initial resource.
  • Fig. 4 shows a detailed step-by-step example of building an N-Tree with fair bandwidth in a given initial resource.
  • a configuration example of a plurality of networks and connection nodes in one conference session is shown.
  • FIG. 4 shows a detailed step-by-step example of a fair bandwidth allocation of differentiated bandwidth for a source specific network path based on display resolution and content type determined by the recipient.
  • FIG. 4 shows a detailed step-by-step example of a fair bandwidth allocation of differentiated bandwidth for a source specific network path based on display resolution and content type determined by the recipient.
  • FIG. 4 shows a detailed step-by-step example of a fair bandwidth allocation of differentiated bandwidth for a source specific network path based on display resolution and content type determined by the recipient.
  • FIG. 4 shows a detailed step-by-step example of building a resource prioritization and optimized N-Tree in a heterogeneous environment.
  • Fig. 4 shows a detailed step-by-step example of building a resource prioritization and optimized N-Tree in a heterogeneous environment.
  • Fig. 4 shows a detailed step-by-step example of building a resource prioritization and optimized N-Tree in a heterogeneous environment.
  • Fig. 3 shows a resource prioritization and optimized N-Tree construction device according to an embodiment of the present invention; 3 defines the structure of an ALM-MCU resource status message according to an embodiment of the present invention.
  • FIG. 3 illustrates the structure of an ALM-MCU video input / output (I / O) status message according to an embodiment of the present invention.
  • 5 defines the structure of a conference configuration status message according to an embodiment of the present invention.
  • 2 defines a video stream structure according to an embodiment of the present invention.
  • An estimated bandwidth table is defined for each resolution type according to an embodiment of the present invention.
  • a maximum latency is defined for each priority level according to an embodiment of the present invention.
  • FIG. 6 illustrates a participant priority level table based on a participant's role in a conference event according to an embodiment of the present invention.
  • 4 shows an ALM-MCU resource information table according to an embodiment of the present invention.
  • FIG. 5 shows a flowchart of the main processes of prioritization and optimized resource allocation of an N-Tree construction method according to an embodiment of the present invention.
  • 6 shows a flowchart of ALM conference session formation according to an embodiment of the present invention.
  • 6 shows a flowchart of ALM conference session formation according to an embodiment of the present invention.
  • 6 shows a flowchart of ALM conference session formation according to an embodiment of the present invention.
  • FIG. 4 shows details of step 1408 of building a resource prioritized and optimized intercluster ALM N-Tree according to an embodiment of the present invention.
  • FIG. 4 illustrates steps for estimating the resources required by each of the selected screen layout options from a user according to an embodiment of the present invention.
  • FIG. 4 illustrates steps for estimating the resources required by each of the selected screen layout options from a user according to an embodiment of the present invention.
  • Fig. 3 shows prioritized resources according to an embodiment of the invention.
  • Fig. 3 shows prioritized resources according to an embodiment of the invention.
  • Fig. 4 shows optimized resource allocation according to an embodiment of the present invention;
  • Fig. 4 shows optimized resource allocation according to an embodiment of the present invention;
  • Lecture sessions with layouts viewed on teacher and student sites A question and answer scenario in a lecture session on a teacher site, a student (questioner) site, and a student (viewer) site is shown.
  • the N-Tree construction apparatus of the present invention allocates dynamic resources that are prioritized and optimized based on each parameter in order to construct an AV route (particularly an ALM route) that is a content delivery route.
  • Each parameter includes, in addition to parameters such as bandwidth, latency, display resolution, and content type, AV mixing (MCU) capability, encoding and decoding capability, participant screen layout options, and conference events. .
  • MCU AV mixing
  • encoding and decoding capability participant screen layout options
  • conference events conference events.
  • the heterogeneous nature of CE devices with different hardware capabilities and underlying AV conference dynamics in ongoing sessions requires prioritization and optimized dynamic resource allocation to make optimal use of resources To do.
  • the different hardware capabilities include AV mixing (MCU) capability, encoding and decoding capability, total link bandwidth capacity, display resolution, and the like.
  • the resource in the present invention refers to network bandwidth, latency, MCU encoding / decoding capability, and the like.
  • AV conference dynamics are a change in available bandwidth, a change in content type, a change in screen layout, or a change in conference event.
  • AV content is streamed through different paths between a transmission source node and a reception node. Also, in an ALM session, AV content can be transferred along the ALM streaming path or consumed locally without or with changes before being transferred to the next node. As a result, load distribution among participating nodes becomes possible. Therefore, sufficient resources are required to enable the operation of AV content by each ALM node.
  • ALM session An ALM session is defined as a logical session connected via a network. For example, as shown in FIG. 1, in a multi-party application, multiple ALM nodes (including ALM or ALM-MCU nodes) participate in an ALM session to simultaneously exchange data packets between each node. To do.
  • ALM node A node that participates in an ALM session and has a capability of executing packet routing based on ALM.
  • Non-ALM node (or“ end node ”): a node that does not execute the ALM function. This is usually a node that generates content (source) or consumes content. In other words, a node that participates in an ALM session but does not have the ability to perform packet routing based on ALM.
  • ALM-MCU node an ALM node that performs content mixing of received content and forwards the content to another ALM or ALM MCU node.
  • Frull mixing MCU operation that mixes all content received from the source node.
  • “Local cluster” a cluster representing all of the directly connected ALM-MCU nodes.
  • Inter-MCU channel a network path between ALM-MCU nodes for streaming full-mixed or partially-mixed content.
  • High priority node an important ALM node or ALM-MCU node with the most important node order.
  • AV mixing (MCU) capability ALM-MCU node capability for mixing N AV streams by hardware or software capability.
  • Encoding and decoding capability ALM-MCU node capability to encode and / or decode N AV streams with the support of hardware or software, encoder or decoder.
  • Greatest resource any type of resource that can be quantified and compared in a group of ALM nodes or ALM-MCU nodes with an order of priority starting from the most resource-rich node.
  • “MESH network” AV stream supply link that is completely interconnected between all ALM-MCU nodes in an ALM session.
  • Intercluster means between ALM nodes or clusters of ALM-MCU nodes (for example, the networks 120, 122, and 124 in FIG. 1).
  • “Intracluster” means within the same cluster of ALM nodes or ALM-MCU nodes (eg, nodes 102, 104, and 106 of network 120 in FIG. 1).
  • S (X) ⁇ a, b,..., Z ⁇ : represents the source ALM node of the ALM-MCU node X, which may be az nodes.
  • “ ⁇ Expression A ⁇ ⁇ ⁇ expression B ⁇ ” indicates a change in state from the expression A of the current state to the expression B of the new state.
  • prioritized and optimized resources are dynamically allocated to construct an AV path.
  • FIG. 1 shows that a plurality of ALM nodes (102, 104, 106, 108, 110, 112, 114, 116, 118) are connected to the local network (120, 122, 124), respectively.
  • ALM sessions can connect these local networks (120, 122, 124) via different links (126, 128, 130) to form larger networks.
  • All nodes in the ALM session are connected in one network that allows connections between each node.
  • the ALM-MCU nodes (102, 108, 114) are computer-readable memory devices that can implement the present invention by hardware or software.
  • Multimedia applications such as AV conference applications that run on each client can simultaneously exchange AV streams between them in an ALM session.
  • ALM-MCU nodes In order to realize a distributed dynamic AV mixing operation, at least two or more ALM-MCU nodes must be present in the network.
  • FIG. 1 illustrates this by three ALM-MCU nodes (102, 108, 114), one in each local network (120, 122, 124).
  • the ALM-MCU node can be placed in any part of the network and does not necessarily have to be in the same local network. This is determined by the ALM distribution tree algorithm and the ALM node mixing (MCU) capability.
  • MCU ALM node mixing
  • the ALM-MCU node mixes AV content only for its own local cluster node.
  • the ALM-MCU node X mixes the contents from the nodes A and B with the contents of the node X (102) itself. Then, the ALM node streams the AV content only to one ALM-MCU node in the network based on the configuration of the ALM session.
  • the group membership function can facilitate the formation of an ALM session, but this is not included in the scope of the present invention.
  • FIG. 2 shows a simple example of three ALM-MCU nodes (202, 208 and 214) with respective ALM nodes (204, 206, 210, 212, and 216, 218) in the local cluster.
  • ALM-MCU nodes 202, 208 and 214 are covered in the following description.
  • the main invention of Patent Document 1 is bandwidth fairness by considering upload bandwidth and link latency, and does not involve prioritization and optimization of resources allocated in the construction of an ALM path.
  • the inventors made the following assumptions to easily illustrate the problems of prioritization and unoptimized resource allocation with the example encoder / decoder unit.
  • the ALM-MCU nodes are X (202), Y (208), and Z (214).
  • the ALM nodes are A (204), B (206), C (210), D (212), E (216), and F (218).
  • an ALM-MCU node requires one encoder when transmitting an AV stream and one decoder when receiving an AV stream.
  • the ALM node needs to connect to the ALM-MCU node to participate in the conference session.
  • the N-Tree algorithm builds a “MESH network” for all AV sources.
  • the ALM-MCU node has sufficient download bandwidth and mixing processing power.
  • F is a high priority node (or active node).
  • FIG. 3 shows detailed operation loops of the N-Tree algorithm of the invention of Patent Document 1.
  • FIG. 3 shows detailed operation loops of the N-Tree algorithm of the invention of Patent Document 1.
  • Step S220 Loop 0; -The initial state of the ALM-MCU node and the ALM node, and the available resources of each node are displayed.
  • Step S230 Loops 1 and 2; -ALM-MCU nodes X (202) and Y (208) are connected.
  • the upload bandwidth is reduced by 2 slot size (2 ⁇ 512 Kbps), ie 1 Mbps.
  • One decoder was assigned to each stream of the ALM node A (204) and the ALM node B (206) ALM-MCU node Y (208).
  • These encoders and decoders encode and decode AV streams from ALM node A (204) and ALM node B (206), respectively.
  • -The contents of ALM Node A (204) and Node B (206) are transferred from ALM-MCU Node X (202) to ALM-MCU Node Y (208) via links 226 and 228, respectively, for mixing. Delivered.
  • steps S230, S240, S250, S260, S270, S280, and S290 of the other N-Tree algorithms are shown in FIGS. 3, 4, and 5.
  • Patent Document 2 solves the optimization of bandwidth allocation based on the resolution and content type of the user screen, but does not consider other resources that are very important in a multi-node AV conference system. Other important resources include AV mixing (MCU) capabilities, encoding and decoding capabilities, participant screen layout options, and conference events.
  • MCU AV mixing
  • FIG. 6, FIG. 7, FIG. 8, and FIG. For the example of Patent Document 2, the previous assumption made in Patent Document 1 is used for easy explanation. The only difference is Assumption 8, which in this case is “8.1 slot depends on user screen resolution and content type”.
  • Patent Document 2 The following example illustrates the problem of the invention of Patent Document 2 that optimizes bandwidth allocation based on screen resolution and content type.
  • the present invention does not consider other types of resources such as AV mixing (MCU) capabilities and encoding and decoding capabilities when allocating resources. For this reason, in the invention of Patent Document 2, resources in different dynamic conference events are not optimally used.
  • MCU AV mixing
  • FIG. 6 shows the same configuration as that of FIG. 2, and includes an ALM node 304 (stream ALM node A-1920 ⁇ 1080), an ALM node 306 (stream ALM node B-1920 ⁇ 1080), and an ALM node 310 (stream ALM node).
  • ALM node 304 stream ALM node A-1920 ⁇ 1080
  • ALM node 306 stream ALM node B-1920 ⁇ 1080
  • ALM node 310 stream ALM node.
  • C-1280 ⁇ 720 ALM node 312 (stream ALM node D-704 ⁇ 576), ALM node 316 (stream ALM node E-352 ⁇ 288), and ALM node 318 (stream ALM node F-176 ⁇ 144)
  • FIG. 6 shows the same configuration as that of FIG. 2, and includes an ALM node 304 (stream ALM node A-1920 ⁇ 1080), an ALM node 306 (stream ALM node B-1920 ⁇ 1080),
  • Step S320 Loop 0; -The initial state of the ALM-MCU node and the ALM node, and the available resources of each node are shown.
  • the same N-Tree algorithm procedure is applied to the following loops in steps S340, S350, S360, S370, S380, and S390.
  • unused encoder / decoder resources exist in the ALM-MCU node Y (308) and the ALM-MCU node Z (314).
  • steps S370, S380, and S390 the same problem is encountered thereafter. In this example, the problem associated with not considering ALM-MCU node resources that hinder the overall quality of the AV stream in an AV conference session has been shown.
  • the method of the present invention for solving the above-described problems in FIGS. 2, 3, 4, 5, 6, 7, 8, and 9 in relation to encoder / decoder resources will be described.
  • the method applies to all ALM-MCU or ALM node resource types other than the encoder / decoder unit containing participant screen layout options and conference events.
  • the method can also be used for allocation, prioritization and optimization of other quantifiable resources in ALM path construction.
  • FIG. 11, FIG. 12 and FIG. 13 show each step in the method of the present invention. These figures utilize the same upload bandwidth, delay and encoder / decoder parameter examples used in FIGS. That is, the present invention shows a prioritized and optimized resource allocation mechanism method for various conference events when constructing an ALM path using the N-Tree algorithm. For purposes of illustration, further assumptions or differences made in addition to the assumptions described above are described below.
  • the slot size is not fixed and is based on screen layout resolution / quality (see FIG. 19 for exemplary bandwidth allocation).
  • F is a high priority node, sufficient resources must be allocated for it. All other nodes have the same priority.
  • the high priority node F selects a screen layout in which stream A and stream C (HD 1080 content) each of which requires a bandwidth of 1 Mbps are combined.
  • the bandwidth required for streams other than A and C is only 256 Kbps.
  • the resource to be optimized and prioritized is the number of encoders / decoders in the ALM-MCU.
  • the method of the present invention applies the following rules for prioritization and optimization.
  • Rule 1 Whenever a node must be selected, always select the node that will process the stream or streams requested by the highest priority node.
  • Rule 2 Among nodes with the same highest priority in Rule 1, select the node whose resource type has the maximum resource specified by the user for resource prioritization and optimization.
  • Rule 3 Among nodes having the same maximum resource in rule 2, one node is randomly selected from the set.
  • Rule 4 When selecting a link, always select the path to the node whose resource type is specified by the user for resource prioritization and optimization.
  • Rule 5 In the route to the node having the same maximum resource in Rule 4, one link is randomly selected from the set.
  • Rule 7 In the source requested by the highest priority node in Rule 6, one stream is randomly selected from the set.
  • Rule 8 Instead of relaying one or more streams from another ALM-MCU node, the node always first chooses to transmit its own one or more local cluster streams.
  • Step S420 Loop 0; -In the initial state, prepare available resources including upload bandwidth, delay, source node list, and number of encoder / decoder units.
  • Step S450 loops 3, 4, 5, and 6; ALM-MCU node Z (414) was selected to have the maximum number of encoders / decoders when there are no remaining high priority ALM-MCU nodes.
  • ALM-MCU node Z (414) was selected to have the maximum number of encoders / decoders when there are no remaining high priority ALM-MCU nodes.
  • Step S470 loops 9 and 10; -Since there is no further stream to be relayed at ALM-MCU node Z (414), ALM-MCU node X (402) is selected instead of ALM-MCU node Z (414).
  • Step S480 loops 11 and 12; -ALM-MCU node Y (408) was selected because ALM-MCU node X (402) and ALM-MCU node Z (414) have no further streams to relay. -0.25 Mbps was allocated to the stream from ALM node D (412).
  • FIG. 14 is a block diagram showing an N-Tree constructing apparatus of the present invention including two main processing units, an ALM N-Tree generation unit (546) and a resource prioritization and optimization unit (520). .
  • the ALM N-Tree generation unit (546) is responsible for constructing the N-Tree (554) and generating the final AV content (562).
  • the ALM N-Tree generation unit (546) includes a failure notification unit (548), an ALM path construction unit (552), an AV stream selection unit (556), and an output generation unit (560).
  • the failure notification unit (548) notifies the failure of N-Tree construction.
  • the ALM path construction unit (552) constructs an N-Tree that is resource prioritized and optimized.
  • the AV stream selection unit (556) selects one or a plurality of streams for the mixing operation based on the constructed N-Tree (554).
  • the output generation unit (560) generates final AV content (562) by mixing.
  • the resource prioritization and optimization unit (520) includes a resource prioritization unit (534) and a resource optimization unit (522).
  • the resource prioritizer (534) prioritizes resource allocation based on participant roles (536) and conference events (526).
  • the resource optimization unit (522) optimally allocates various types of resources according to the databases (502), (504), and (506) that store the output results and resource information of the resource prioritization unit (534).
  • the bandwidth metric information database (bandwidth metric information DB) (502) stores bandwidth information of all ALM-MCU nodes and ALM nodes.
  • the encoder / decoder information database (encoder / decoder information DB) (504) stores encoder / decoder related information.
  • the audio / video mixing information database (audio / video mixing information DB) (506) stores AV mixing information.
  • the resource optimization unit (522) individually accesses these three databases via links 510, 512, and 514, respectively.
  • the resource prioritizing unit (534) reads the resource allocation rule from the resource allocation rule table (508) via the link 516.
  • the resource prioritization unit (534) considers (i) a conference event notification (530) arriving at the event handler (528) and (ii) a screen layout option (518).
  • the role state notification unit (538) receives the active / passive state (540) of the participant.
  • Communication between the resource optimization unit (522) and the resource prioritization unit (534) is performed via links 524 and 532, respectively.
  • the resource optimization unit (522) instructs the ALM route construction unit (552) via the link 542.
  • communication in the reverse direction also occurs between the resource optimization unit (522) and the ALM route construction unit (552) via the failure notification unit (548) using the links 550 and 544.
  • the N AV streams that have arrived through the link 564 are selected by the AV stream selection unit (556) and then transmitted to the output generation unit (560) through the link (558).
  • FIG. 15 shows the structure of the MCU resource status message.
  • the MCU resource status message includes the number of encoder units (602), the number of decoder units (604), the encoding rate (606), the decoding rate (608), and the number of channels per unit (610). ) And a channel data rate (612).
  • FIG. 16 shows the structure of an MCU video input / output (I / O) status message.
  • the MCU video input / output (I / O) status message includes a video format (702), a video sampling type (704) indicating a video sampling rate, a video input type (706), and a video resolution.
  • the video output type (708) for notifying the user. Note that the video format (702) notifies whether the video is in NTSC, PAL, 720P, 1080i, or SXGA format.
  • FIG. 17 shows the structure of the conference configuration status message.
  • the conference configuration status message includes a role state (802) for notifying whether the participant is an active or passive participant, and a conference event (804) for notifying the event type of the conference session. Consists of
  • FIG. 18 shows the structure of a video stream.
  • the video stream has a priority number (902), a frame number (904), a first X pixel position (906), and a first Y pixel position for notifying the importance level of the video stream in the conference session. (908), X pixel length (910), Y pixel length (912), encoding method (914), number of pixels (916), and pixel data (918).
  • FIG. 19 defines the estimated bandwidth for each resolution type.
  • Column (1002) represents various types of screen resolutions such as, for example, QCIF, CIF, 4CIF, 720p, and 1080i or 1080p.
  • the column (1004) represents the estimated minimum compressed data rate in units of Kbps.
  • Rows (1006, 1008, 1010, 1012, 1014) indicate each screen resolution (1002) and the respective estimated bandwidth required (1004). These are exemplary bandwidth estimates for illustrative purposes and can vary based on screen resolution or user requirements.
  • FIG. 20 defines the maximum latency delay for each priority level.
  • Column (1102) represents a priority level, for example, whether it is low (1106), medium (1108) or high (1110).
  • Column (1104) represents the maximum latency delay.
  • Rows (1106, 1108, 1110) show the respective priority levels and the respective maximum latency delays. These are for illustrative purposes only and can be changed based on priority settings.
  • FIG. 21 shows a priority level table for participants based on their role in the conference event.
  • a column (1202) represents the roles of participants such as a moderator (1208), a participant (1210), and an observer (1212), for example.
  • Column (1204) represents a conference event, for example, lecture (row 1204 and column 1214), question and answer (row 1204 and column 1216) or tutorial (row 1204 and column 1218).
  • the last column (1206) is middle (row 1206 and column 1214/1224), listener (middle) and respondent (high) (row 1206 and column 1216), high (row 1206 and column 1218/1220), question Representing the priority level of a particular participant's role in a conference event including one (high) and listener (intermediate) (row 1206 and column 1222) and low (row 1206 and column 1226/1228/1230) Yes.
  • FIG. 22 shows an MCU resource information table.
  • the MCU resource information table includes the ALM-MCU IP address (1302), the number of available encoders / decoders (1304), the mixing operation (1306), the available bandwidth (1308), the connection And the selected screen layout option (1310), the stream priority (1312) of the connected child node, and the resource (1314) required by the connected child node. ing. Further, there can be N MCUs (1316, 1318, and 1320) in the MCU resource information table.
  • FIG. 23 is a flowchart showing the main processes of prioritization and optimized resource allocation in the N-Tree construction method according to the present invention.
  • step S1402 of FIG. 23 each and every node attempts to participate in a session to form an ALM conference session in the initial stage.
  • step S1402 the user is prompted to select a preferred screen layout from the available list, as shown in step S1404.
  • the ALM path construction unit (552) performs N- of the fair bandwidth for the intra-cluster network connection (described in Patent Document 1) between the ALM-MCU node and the ALM node. Build a Tree. That is, the ALM path construction unit (552) ensures that the bandwidth is equally shared and used.
  • step S1408 the ALM path construction unit (552) constructs an N-Tree together with the resource prioritization and optimization unit (520). Specifically, the ALM path construction unit (552) constructs an N-Tree that is prioritized and optimized for inter-cluster network connection between different ALM-MCU nodes. Detailed steps of resource prioritization and optimized N-Tree will be described later.
  • step S1410 the AV stream selection unit (556) selects a related AV stream as an input based on the constructed N-Tree (554). The AV stream selection unit (556) instructs the output generation unit (560) to generate the final output (562) by mixing.
  • step S1506 the mixing ability of the participant node is checked. If it is determined that the participant node can perform the mixing operation (step S1506: Yes), the node is classified as a “candidate ALM-MCU node” (one of the ALM-MCU nodes) (step S1504). ). On the other hand, if the participant node cannot execute the mixing operation (step S1506: No), the node is classified as a “candidate end node” (one of ALM nodes) (step S1508).
  • step S1510 the presence of an “ALM-MCU node” in the network is determined. If there is no “ALM-MCU node” in the network (step S1510: NO), the process proceeds to step S1518 in FIG. If the participant node type is “candidate ALM-MCU node” (step S1518), the node is converted to “ALM-MCU node” (step S1530). On the other hand, if the participant node type is “candidate end node” (step S1508), the process proceeds to step S1516. In step S1516, the user waits to join the network. Note that the node in step S1516 is repeated until the waiting time of the participant node reaches a specific timeout value (step S1514).
  • step S1528 If the waiting time of the participant node exceeds the timeout value (step S1514: Yes), an error is triggered (step S1528).
  • step S1510: Yes when there is at least one “ALM-MCU node” in the network (step S1510: Yes), the process proceeds to step S1520 in FIG.
  • the participant node recursively tries to participate in the “ALM-MCU node” in descending order based on each parameter (step S1520) (step S1524).
  • Each parameter includes the number of available encoders / decoders, network bandwidth and latency delay, and mixing capability.
  • step S1532 If the participation is successful (step S1532) and the node is a “candidate ALM-MCU node”, the participant node is converted to a “standby ALM-MCU node” (step S1540) (step S1546). On the other hand, if the node is a “candidate end node”, the node is converted to an “end node” (step S1540) (step S1548).
  • step S1512 A determination is made as to whether there is a “standby ALM-MCU node” in the network (step S1512). If present (step S1512: Yes), the participant node recursively attempts to participate in the “standby ALM-MCU node” in descending order based on each parameter (step S1522) (step S1526). ). Each parameter includes the number of available encoders / decoders, network bandwidth and latency delay, and mixing capability. When the participation is successful (step S1536: Yes), the “standby ALM-MCU node” is converted to “ALM-MCU node” (step S1542), and the process proceeds to step S1540 in FIG.
  • step S1540 The participant node is converted into a “standby ALM-MCU node” or an “end node” based on the type (step S1540) (step S1546) (step S1548).
  • step S1536 the participation in the “standby ALM-MCU node” fails (step S1536: No)
  • step S1538: No) the process proceeds to step S1544. Move to. In step S1544, notification is given that the participant has failed to participate in the conference session.
  • FIG. 28 is a flowchart showing a detailed functional flow of step S1408 in which the inter-cluster ALM N-Tree that has been prioritized and optimized is constructed.
  • step S1602 a trigger for constructing an ALM N-Tree is received.
  • step S1604 the resource prioritization and optimization unit (520) sends the participant's role status (540) via the role status notifier (538) and the current conference event (528) via the event handler (528). 530).
  • the resource prioritization and optimization unit (520) also reads the current resource information through the databases (502) (504) (506) that store the individual resource information.
  • Current resource information includes network bandwidth and latency delay (510), number of available encoders / decoders (512), mixing capability (514), and user selected screen layout options (536), etc. including. These resource information are all stored in the MCU resource information table as shown in FIG. In addition to this, in the resource information reading process, some messages of those shown in FIGS. 15, 16, 17, 18, 19, 20 etc. are sent to the ALM node and the ALM-MCU node. Expected to be exchanged between. The process moves to step S1606, and in step S1606, a process including estimation of resources required for each of the screen layout options selected by the user is performed. Details of this step will be described in the next paragraph.
  • step S1608 step S1610, step S1612, and step S1614, resource prioritized and optimized ALM N-Tree is constructed.
  • the resource prioritization unit (534) includes a resource allocation table read from the defined resource allocation rule table (508), a conference event (526), a screen layout option (536), and a role status (536) as inputs.
  • Responsible for prioritizing resource allocation based on Rules are defined according to the participant's role at a particular conference event. This will affect the order of ALM-MCU nodes selected in the node selection process, resulting in a good way to prioritize resource allocation.
  • An example of the rule table is shown in FIG.
  • the resource optimization unit (522) is responsible for optimizing resource allocation associated with available resources. This link selection process is different from the previous ALM N-Tree algorithm because different types of resources other than bandwidth and latency delay are considered. However, the link selection process results in the construction of an optimized N-Tree, as evidenced by the example of FIG.
  • FIG. 29 and FIG. 30 show a flowchart of a detailed process of estimating a resource required for each screen layout option selected by the user.
  • step S1702 the processes in and after step S1704 are performed for all users whose screen layout is changed.
  • step S1704 all source sources in the screen layout options are determined.
  • the resource prioritization unit (534) requests the screen layout option based on the resource allocation rule table (508) and its role state (536) in the specific conference event (526). Determine node priority.
  • a priority number is set for each of the source stream message (902), and each parent ALM-MCU node is also determined. The process proceeds to step S1714 in FIG.
  • step S1714 the mixing processing amount is estimated by calculating the total number of child nodes and the total number of streams received from the remote ALM-MCU node. Thereafter, in step S1716, estimation of bandwidth slot size and maximum latency delay is performed. Finally, in step S1718, all of the estimated resource information described above is stored in the ALM-MCU resource information table shown in FIG.
  • FIG. 31 and FIG. 32 are flowcharts showing determinations performed by the resource prioritization unit (534) in the resource prioritization assignment (node selection) phase of the intercluster ALM N-Tree construction.
  • the process starts in the node selection process (step S1802).
  • step S1802 first, an ALM-MCU node having a child node that is a transmission source of a stream having a high priority is selected.
  • step S1804 a determination is made as to whether there are multiple ALM-MCU nodes having the same highest priority level. If there is only one ALM-MCU node with the highest priority level (step S1804: No), it is selected for the resource allocation process (step S1806).
  • an ALM-MCU node is selected based on the type of resource to be prioritized (step S1808).
  • a node having the maximum bandwidth can be selected as a resource to be prioritized (step S1810).
  • a node having the maximum number of encoders / decoders can be selected as a resource to be prioritized (step S1812).
  • a node that performs the minimum number of execution target mixing operations can be selected as a resource to be prioritized (step S1814). If a plurality of ALM-MCU nodes having the same priority level and equal resources still exist (step S1816: Yes), in step S1818, the ALM-MCU node is randomly selected.
  • FIGS. 33 and 34 are flowcharts showing the determinations performed by the resource optimization unit (522) in the resource optimization allocation (link selection) phase of the intercluster ALM N-Tree construction.
  • the link to be selected is determined based on the type of resource to be optimized.
  • a link having the minimum latency delay can be selected as the type of resource to be optimized (step S1904).
  • a link to a node having the maximum number of encoders / decoders can be selected as the type of resource to be optimized (step S1906).
  • a link to a node that performs the minimum number of execution target mixing operations can be selected as the type of resource to be optimized (step S1908).
  • step S1910 This process is recursively executed until the link is successfully selected (step S1910) (step S1912). If the link to be selected no longer exists (step S1912: No), the resource allocation information in the rule table is updated to determine the resource allocation for the low priority node (step S1916). ). Further, preparation for reconstructing the intercluster ALM N-Tree is performed (step S1922). On the other hand, if the link has been successfully selected (step S1910: YES), the process proceeds to the source selection process of FIG. 34, where the source stream is selected in descending order of priority (step S1914). If there are a plurality of streams having the highest priority, it is determined to randomly select a stream from the set (step S1920, step S1918).
  • the resource optimization unit (522) reads the resource allocation information from the ALM-MCU resource information table (step S1924) and reserves necessary resources for a specific stream (step S1926). If resource allocation is not successful (step S1928: No), resource allocation is reduced for low priority nodes by updating the resource allocation information in the rule table (step S1916). In addition, for resource allocation, preparation for reconstructing the intercluster ALM N-Tree is performed (step S1922).
  • Reference numerals 1902 and 1908 in FIG. 35 and reference numerals 2002 and 2004 and 2016 in FIG. 36 indicate that a conference event having a role (1202) of different participants such as a teacher, a student (questioner), and a student (viewer) is a lecture. (1204) An example of a session is shown. Some of the conference events and participant roles are illustrated in FIG. Each participant (1202) in the event (1204) is assigned a priority (1206). Resources, including MCU and bandwidth, are allocated based on participant roles (1202) and conference event (1204) priority.
  • resources such as MCU and network bandwidth are prioritized for full mixing of student layout (1908), including teacher (1910) stream and shared content (1912). This is because the layout (1908) of the student is viewed by many students. In this case, the student role is given high priority.
  • the teacher's layout (1902) including the shared content (1904) and the selected students (1906) is viewed only by the teacher, so that partial mixing is performed.
  • the priority (1206) assigned to the role (1202) of the participant may be changed as shown in FIG.
  • student A (2004) asks a question [refer to student layout (2004)], and the teacher refers to specific student A (2006) and unique shared content (2008) [teacher layout (2002). )].
  • Student A views the teacher (2010) and the shared content (2014).
  • other passive viewers view student A (2012), teacher (2016), and shared content (2020) according to the student layout (2016).
  • three different content needs to be streamed to different recipients, either full mixed or partial mixed.
  • the table of FIG. 21 is used to determine content prioritization according to mixing (either full or partial) and different bandwidth capabilities.
  • priority is based on AV mixing (MCU) capability, encoding and decoding capability, participant screen layout options, and conference events for AV path construction. Assigned and optimized dynamic resource allocation is possible. Therefore, the present embodiment can provide a real-time AV conference system capable of optimizing a given AV processing and network resource by reflecting dynamic user needs.
  • MCU AV mixing
  • the path construction apparatus assigns dynamic resources prioritized and optimized based on each parameter to construct an AV path (in particular, an ALM path) that is a content delivery path. It is useful as a construction device.
  • ALM N-Tree generation unit 520 Resource prioritization and optimization unit 548 Failure notification unit 552
  • ALM path construction unit 556 AV stream selection unit 560
  • Output generation unit 534 Resource prioritization unit 522
  • Resource optimization unit 502 Bandwidth metric information Database 504
  • Encoder / decoder information database 506 Audio / video mixing information database 508 Resource allocation rule table

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

 本発明は、一般に、異種ネットワーク及びリソース環境、並びに、複数のノードを有するAV会議システムに適用可能な最適化及び優先順位付けされた動的リソースを割り当てる経路構築装置及び経路構築方法に関する。この新しい技法は、AV経路の構築のために、AVミキシング(MCU)能力、エンコーディング及びデコーディング能力、参加者画面レイアウト選択肢、並びに、会議イベントに基づいて優先順位付け及び最適化された動的なリソース割当を可能にする。この技法は、動的なユーザのニーズを反映させることによって所与のAV処理及びネットワークリソースを最適化可能なリアルタイムAV会議システムに好適である。

Description

経路構築装置及び経路構築方法
 本発明は、異種のネットワーク及びリソース環境、並びに、複数のノードを有するAV(Audio/Video)会議システムに適用可能な、優先順位付け及び最適化された動的リソースを割り当てる経路構築装置及び経路構築方法に関する。
 ALM(Application Layer Multicast)は、メンバー自身によるAVパケットの転送を許容してIPレイヤにおけるマルチキャスト転送機能の必要性を除去する。この結果、アプリケーションレイヤにおけるAVパケットの転送が柔軟になる。ALMは、図1に示すように、マルチパーティアプリケーションなどの2つ以上のクライアントエンティティ間において、データパケットを同時に交換する。ALMセッションは、このために、これらのクライアントエンティティがネットワークを介して接続された論理的なセッションであると定義する。
 特許文献1によれば、N-Treeアルゴリズムは、拡水ポリシー(water spreading policy)を適用し、「帯域幅が公平なN個のソースのALM」経路を同時に構築する。このアルゴリズムは、3つのフェーズで動作する。この3つのフェーズとは、第1のフェーズは、ネットワークメトリックを収集するための接続確立フェーズである。第2のフェーズは、ALMノード間にALM経路を形成するN-Treeアルゴリズムを実行するN-Tree構築フェーズである。最後フェーズは、リンクの移動及び再順序付け方法を採用したALM経路の最適化のためのN-Tree最適化フェーズである。
 このN-Treeアルゴリズムは、参加ノードにおける利用可能な帯域幅及びレイテンシーにのみ基づいて帯域幅を公平に分配したALM経路を構築する。このN-Treeアルゴリズムによるエンドノードの個別の帯域幅に対する要求を考慮しない帯域幅の割当は、参加ノードにおいて最適化されていないAV品質をもたらす。マルチパーティのALMビデオ会議セッションにおいては、参加者たちは、自身の画面レイアウトを連続的にカスタマイズ可能であり、これには、動的で差別化された帯域幅及びレイテンシーが要求される。そして、この問題は、特許文献2の発明によって解決された。
 特許文献2の「ソース固有のネットワーク経路の差別化された公平な帯域幅割当」メカニズムは、ALMアプリケーション用の受信者側により決定される表示解像度及びコンテンツタイプに基づいて、帯域幅を割り当てることを目的としている。このメカニズムは、ビデオ会議セッションにおける各参加者が選択する異なる画面レイアウトに従う表示解像度と、オーディオ、ビデオ及びドキュメント等の異なるコンテンツタイプとを有するものと仮定している。なお、表示解像度は、例えば、HD720p、HD1080i、4CIF、CIF、及び、QCIF等である。ALM経路は、これらの(i)受信者側の表示解像度と、(ii)コンテンツタイプという2つの主要コンポーネントを差別化することによって構築される。この場合、単一のストリーミングセッションにおける異なる参加ノードに対する異なるネットワーク経路が、構築可能になっている。また、この場合、ALM経路は、ネットワークの帯域幅に関連付けられている。
 要求された表示解像度及びコンテンツタイプの優先順位に従って、ストリーム送信ノードとストリーム受信ノードの間は、N-Treeアルゴリズムを利用してALM経路に利用可能な最大帯域幅を割り当てる。これにより、それぞれのALMノードは、最良のAV品質が実現される。表示解像度及びコンテンツタイプという選択パラメータと共に、ノードタイプ(又は、ソース固有のタイプ)、即ち、ストリーム送信ノード、ストリーム中継ノード及びストリーム受信ノードに基づいて、ALMノードグループが形成される。
 特許文献2の方法は、N-Treeアルゴリズムを利用し、ノードタイプ及び選択パラメータに基づいた異なるグループからノードを選択し、ALM経路を構築する。その他のパラメータは、即ち、エンコーディングビットレート、画像解像度及びフレームレートである。また、その他のパラメータは、リソースの最適化を可能にするべく、圧縮/エンコーディングプロセスにおいて、割り当てられた帯域幅に従ってチューニングされるものと仮定されている。優先順位付けは、ユーザ要求に基づいて動的に変化可能である表示解像度及びコンテンツタイプに基づいて実行される。この場合には、N-Treeアルゴリズムを侵害することなく、帯域幅も動的に割り当てられる。
国際公開第2009/098748号パンフレット 国際公開第2009/153945号パンフレット
 前述した2つの発明は、全てのノードがAVコンテンツ処理能力の観点において同一であることを前提としている。また、これらの発明は、同一セッションにおける複数の会議イベント及び複数の参加者画面レイアウトの会議セッションにおける変化を考慮していない。この考慮の欠如は、後述するように、AVセッションにおける優先順位付け及び最適化のためのリソースの割当に対して深刻な影響を及ぼす。
 主要なリソースの各パラメータが、同一の装置であることを前提とした問題点は、次の図に基づいて例示可能である。主要なリソースとは、全てのノードのAVミキシング(MCU:Multiple Control Unit)能力、エンコーディング及びデコーディング能力、参加者画面レイアウト選択肢、並びに、会議イベントを含む。これらの図は、図6、図7、図8、及び図9であり、N-Tree(特許文献1の発明)が、特許文献2に記述された方法のために所与の3つのノードのAV分配ツリーを構築する方法を示す。特許文献1の発明によれば、構築されたN-Treeは、エンコーダ/デコーダの使用といった観点では最適化されていない。これは、処理の遅延を結果的にもたらす。その結果、体験するビデオ会議の品質が低下する(ビデオの遅れ(video lagging))。したがって、この場合には、帯域幅又はレイテンシー以外のリソースが同様に重要である。
 したがって、特許文献1の発明は、解像度及びコンテンツタイプに加えて、画面レイアウト選択肢及び会議イベント等の変化を包含することにより、N-Treeをトリガし、主要なリソースを優先順位付け及び最適化しなければならない。主要なリソースとは、AVミキシング(MCU)能力、並びに、エンコーディング及びデコーディング能力(符号化及び復号化能力)等を含む。
 本発明の目的は、複数の通信ノード間で送受信されるストリームコンテンツの配送経路を構築するために、優先順位付け及び最適化された動的リソースを割り当てる経路構築装置及び経路構築割当方法を提供することである。
 本発明は、複数の通信ノード間でストリームコンテンツが送受信されるシステム内の1つの通信ノードを構成する、前記ストリームコンテンツの配送経路を構築する経路構築装置であって、前記配送経路を構築するために利用可能なリソースの割当てを優先順位付けするリソース優先順位付け部と、前記配送経路を構築するために利用可能なリソースの割当てを最適化するリソース最適化部と、前記リソース優先順位付け部によって優先順位付けされ、前記リソース最適化部によって最適化されたリソースの割当てに基づいて、ストリームコンテンツの配送経路を構築する経路構築部と、を備えた経路構築装置を提供する。
 本発明は、複数の通信ノード間でストリームコンテンツが送受信されるシステム内の1つの通信ノードによって行われる、前記ストリームコンテンツを送信するための配送経路を構築する経路構築方法であって、前記配送経路を構築するために利用可能なリソースの割当てを優先順位付けするリソース優先順位付けステップと、前記配送経路を構築するために利用可能なリソースの割当てを最適化するリソース最適化ステップと、前記リソース優先順位付けステップで優先順位付けされ、前記リソース最適化ステップで最適化されたリソースの割当てに基づいて、ストリームコンテンツの配送経路を構築する経路構築ステップと、を有する経路構築方法を提供する。
 本発明に係る経路構築装置及び経路構築方法によれば、複数の通信ノード間で送受信されるストリームコンテンツの配送経路を構築するために、優先順位付け及び最適化された動的リソースを割り当てることができる。
3つのサブネットワーク及び複数の接続されたノードを有するネットワークを示す。 特許文献1の発明の例を説明するために1つの会議セッションにおける複数のネットワークと接続ノードの構成例を示す。 所与の初期リソースにおける帯域幅が公平なN-Treeを構築する詳細なステップごとの例を示す。 所与の初期リソースにおける帯域幅が公平なN-Treeを構築する詳細なステップごとの例を示す。 所与の初期リソースにおける帯域幅が公平なN-Treeを構築する詳細なステップごとの例を示す。 特許文献2の発明の例を説明するために1つの会議セッションにおける複数のネットワークと接続ノードの構成例を示す。 受信者側によって決定される表示解像度及びコンテンツタイプに基づいたソース固有のネットワーク経路に関する差別化された帯域幅が公平な割当の詳細なステップごとの例を示す。 受信者側によって決定される表示解像度及びコンテンツタイプに基づいたソース固有のネットワーク経路に関する差別化された帯域幅が公平な割当の詳細なステップごとの例を示す。 受信者側によって決定される表示解像度及びコンテンツタイプに基づいたソース固有のネットワーク経路に関する差別化された帯域幅が公平な割当の詳細なステップごとの例を示す。 本発明のアプリケーションの例を説明するために1つの会議セッションにおける複数のネットワークと接続ノードの構成例を示す。 異種環境においてリソース優先順位付け及び最適化されたN-Treeを構築する詳細なステップごとの例を示す。 異種環境においてリソース優先順位付け及び最適化されたN-Treeを構築する詳細なステップごとの例を示す。 異種環境においてリソース優先順位付け及び最適化されたN-Treeを構築する詳細なステップごとの例を示す。 本発明の実施形態によるリソース優先順位付け及び最適化されたN-Tree構築装置を示す。 本発明の実施形態によるALM-MCUリソース状態メッセージの構造を定義している。 本発明の実施形態によるALM-MCUビデオ入出力(I/O)状態メッセージの構造を定義している。 本発明の実施形態による会議構成状態メッセージの構造を定義している。 本発明の実施形態によるビデオストリーム構造を定義している。 本発明の実施形態によるそれぞれの解像度タイプごとの推定帯域幅テーブルを規定している。 本発明の実施形態によるそれぞれの優先順位レベルごとの最大レイテンシーを規定している。 本発明の実施形態による会議イベントにおける参加者の役割に基づいた参加者の優先順位レベルテーブルを示す。 本発明の実施形態によるALM-MCUリソース情報テーブルを示す。 本発明の実施形態によるN-Tree構築方法の優先順位付け及び最適化されたリソース割当の主要なプロセスのフローチャートを示す。 本発明の実施形態によるALM会議セッション形成のフローチャートを示す。 本発明の実施形態によるALM会議セッション形成のフローチャートを示す。 本発明の実施形態によるALM会議セッション形成のフローチャートを示す。 本発明の実施形態によるALM会議セッション形成のフローチャートを示す。 本発明の実施形態に従ってリソース優先順位付け及び最適化されたインタークラスタALM N-Treeを構築するステップ1408の詳細を示す。 本発明の実施形態に従ってユーザからの選択された画面レイアウト選択肢のそれぞれのものが必要とするリソースを推定するステップを示す。 本発明の実施形態に従ってユーザからの選択された画面レイアウト選択肢のそれぞれのものが必要とするリソースを推定するステップを示す。 本発明の実施形態による優先順位付けされたリソースを示す。 本発明の実施形態による優先順位付けされたリソースを示す。 本発明の実施形態による最適化されたリソースの割当を示す。 本発明の実施形態による最適化されたリソースの割当を示す。 教師サイト及び生徒サイトで視聴されるレイアウトでの講義セッションを示す。 教師サイト、生徒(質問者)サイト及び生徒(視聴者)サイトでの講義セッションにおける質疑応答シナリオを示す。
 本発明のN-Tree構築装置は、コンテンツの配送経路であるAV経路(特に、ALM経路)の構築のために、各パラメータに基づいて優先順位付け及び最適化された動的リソースを割り当てる。なお、各パラメータとは、帯域幅、レイテンシー、表示解像度及びコンテンツタイプといった各パラメータ以外に、AVミキシング(MCU)能力、符号化及び復号化能力、参加者画面レイアウト選択肢、並びに、会議イベント等を含む。異なるハードウェア能力、及び進行中のセッションにおいて基礎となるAV会議ダイナミクスを有するCE装置の異種特性は、リソースを最適に利用するために、優先順位付け及び最適化された動的リソースの割当を必要する。なお、異なるハードウェア能力とは、AVミキシング(MCU)能力、エンコーディング及びデコーディング能力、合計リンク帯域幅容量又は表示解像度等である。本発明におけるリソースとは、ネットワークの帯域幅やレイテンシー、MCUのエンコーディング/デコーディング能力等を指す。また、AV会議ダイナミクスとは、利用可能な帯域幅の変動、コンテンツタイプの変化、画面レイアウトの変化又は会議イベントの変化である。
 ALMセッションにおいては、AVコンテンツは、送信元ノードと受信ノードの間において、異なる経路を介してストリーミングされる。また、ALMセッションにおいては、次のノードに転送される前に、変更を伴うことなく又は変更を伴って、AVコンテンツをALMストリーミング経路に沿って転送するか又はローカルに消費可能である。その結果、参加ノード間における負荷分散が可能になる。したがって、それぞれのALMノードによるAVコンテンツの操作を可能にするべく、十分なリソースが必要とされる。
 これを実現するべく、動的なネットワーク状態及び会議セッションイベントを反映したALM経路の構築のために、CEリソースを動的に優先順位付け及び最適化する必要がある。その結果、リソース効率の優れたALM経路の構築が保証される。
 以下、意味の一貫性を確保するべく、本明細書において参照されている特定の用語の定義について記述する。
 「ALMセッション」:ALMセッションとは、ネットワークを介して接続された論理セッションであると定義される。例えば、図1に示されているように、マルチパーティアプリケーションにおいて、複数のALMノード(ALM又はALM-MCUノードを含む)は、それぞれのノード間においてデータパケットを同時に交換するべく、ALMセッションに参加する。
 「ALMノード」:ALMセッションに参加するノードであって、ALMに基づいたパケットルーティングを実行する能力を有する。
 「非ALMノード(又は、「エンドノード」)」:ALM機能を実行しないノードである。これは、通常、コンテンツを生成する(ソース)又はコンテンツを消費するノードである。換言すれば、ALMセッションに参加するが、ALMに基づいたパケットルーティングを実行する能力を有していないノードである。
 「ALM-MCUノード」:受信したコンテンツのコンテンツミキシングを実行し、かつ、コンテンツを別のALM又はALM MCUノードに対して転送するALMノードである。
 「フルミキシング」:ソースノードから受信した全てのコンテンツをミキシングするMCU動作のことである。
 「部分ミキシング」:ALMセッション参加者のコンテンツの一部のみがALM-MCUノードによってミキシングされることである。
 「ローカルクラスタ」:直接的に接続されたALM-MCUノードの全てを表すクラスタである。
 「MCU間チャネル」:フルミキシング又は部分ミキシングされたコンテンツを、ストリーミングするためのALM-MCUノード間におけるネットワーク経路である。
 「高優先順位ノード」:最も重要なノード順位を有する重要なALMノード又はALM-MCUノードである。
 「AVミキシング(MCU)能力」:ハードウェア又はソフトウェア能力によって、N個のAVストリームをミキシングするためのALM-MCUノードの能力である。
 「エンコーディング及びデコーディング能力」:ハードウェア又はソフトウェア、エンコーダ又はデコーダの支援により、N個のAVストリームをエンコード及び/又はデコードするためのALM-MCUノードの能力である。
 「最大リソース(greatest resource)」:最も資源に富むノードから始まる優先順位の序列を有するALMノード、又はALM-MCUノードのグループ中において、定量化及び比較可能である任意のタイプのリソースである。
 「MESHネットワーク」:ALMセッション内の全てのALM-MCUノード間において、完全に相互接続されたAVストリーム供給リンクである。
 「インタークラスタ」:ALMノード又はALM-MCUノードのクラスタ(例えば、図1のネットワーク120、122、及び124)の間を意味する。
 「イントラクラスタ」:ALMノード又はALM-MCUノードの同一のクラスタ内を意味する(例えば、図1のネットワーク120のノード102、104、及び106)。
 「B(X)=n」:ノードXのアップロード帯域幅nを表す。
 「D(X,Y)=m」:XとYという2つのノード間における遅延mを表す(「遅延」及び「レイテンシー」は、同一の意味を有する。これらの用語は、本明細書においては、相互交換可能に使用可能である)。
 「MAX_LATENCY=p」:ALM経路の構築のために、N-TreeアルゴリズムによってALMセッションに設定された最大レイテンシーpを表す。
 「ED(X)=r/s」:ノードXのr個のAVエンコーダ及びs個のデコーダを表す。
 「S(X)={a,b,...,z}」:ALM-MCUノードXのソースALMノードを表し、これらは、a~zノードであってよい。
 「{表現A}→{表現B}」:現在の状態の表現Aから新しい状態の表現Bへの状態の変化を示す。
 以下、AV経路を構築するために優先順位付け及び最適化されたリソースを動的に割り当てる本発明の実施形態について説明する。
 図1は、複数のALMノード(102、104、106、108、110、112、114、116、118)が、ローカルネットワーク(120、122、124)にそれぞれ接続されていることを示す。ALMセッションは、これらのローカルネットワーク(120、122、124)を異なるリンク(126、128、130)を介して接続して、更に大きなネットワークを形成可能である。最終的には、ALMセッション内の全てのノードは、各ノード間の接続を可能にする1つのネットワーク内に接続される。ALM-MCUノード(102、108、114)は、ハードウェア又はソフトウェアによって本発明を実現可能なコンピュータ可読メモリ装置である。
 それぞれのクライアント上で動作するAV会議アプリケーション等のマルチメディアアプリケーションは、ALMセッションにおいて、それぞれの間でAVストリームを同時に交換可能である。分散した動的なAVミキシング動作を実現するべく、少なくとも2つ以上のALM-MCUノードがネットワーク内に存在しなければならない。図1は、それぞれのローカルネットワーク(120、122、124)内に、それぞれ1つずつという3つのALM-MCUノード(102、108、114)により、これを示している。但し、ALM-MCUノードは、ネットワークのいずれの部分にでも配置可能であり、かつ、必ずしも同一のローカルネットワーク内である必要はない。これは、ALM分配ツリーアルゴリズム及びALMノードのミキシング(MCU)能力によって決定される。
 わかりやすくするべく、本明細書では、ALM-MCUノードが、その独自のローカルクラスタノードについてのみ、AVコンテンツをミキシングするものと仮定する。例えば、ALM-MCUノードXは、ノードA及びノードBからのコンテンツと、ノードX(102)自身のコンテンツをミキシングする。そして、ALMノードは、ALMセッションの構成に基づいて、ネットワーク内の1つのALM-MCUノードに対してのみ、そのAVコンテンツをストリーミングする。
 グループメンバーシップ機能により、ALMセッションの形成を促進可能であるが、これは、本発明の範囲に含まれない。
 次に、図2、図3、図4、及び図5を参照し、特許文献1の発明の問題点について説明する。図2は、ローカルクラスタ内のそれぞれのALMノード(204、206、210、212、及び216、218)を有する3つのALM-MCUノード(202、208及び214)の単純な例を示す。特許文献1の発明の動作を説明するべく、以下の説明では、ALM-MCUノード(202、208及び214)のみをカバーする。
 ノード202、208及び214は、それぞれ、B(X)=16Mbps、B(Y)=8Mbps、及びB(Z)=4Mbpsというアップロード帯域幅が割り当てられている。また、ノード202、208及び214は、それぞれ、リンク224のD(X,Y)=10ms、リンク222のD(Y,Z)=50ms、及びリンク220のD(Z,X)=20msという遅延がある。最大リンクレイテンシー(MAX_LATENCY)は250msに設定されている(MAX_LATENCY=250ms)。ALM-MCUノードX(202)、Y(208)、及びZ(214)のエンコーダ及びデコーダユニットの数は、それぞれ、ED(X)=4/4、ED(Y)=4/4、及びED(X)=8/8である。特許文献1の主な発明は、アップロード帯域幅及びリンクレイテンシーを考慮することによる帯域幅の公平性であり、ALM経路の構築において割り当てられたリソースの優先順位付け及び最適化を伴ってはいない。
 この例においては、本発明者らは、エンコーダ/デコーダユニットの例を伴う優先順位付け及び最適化されていないリソース割当の問題点を容易に例証するべく、次のような仮定を行った。
 1.ALM-MCUノードは、X(202)、Y(208)、及びZ(214)である。
 2.ALMノードは、A(204)、B(206)、C(210)、D(212)、E(216)、及びF(218)である。
 3.ALM-MCUノードがその許容された処理能力を上回ってエンコーディング/デコーディングした場合には、AVの処理遅延が増大する。
 4.AVエンコーディング及びデコーディングのために、ALM-MCUノードは、AVストリームを送信する際に、1つのエンコーダを必要とし、かつ、AVストリームを受信する際に、1つのデコーダを必要とする。
 5.ALMノードは、会議セッションに参加するべく、ALM-MCUノードに接続する必要がある。
 6.ALMノードとALM-MCUノードの間には、帯域幅制限又は遅延は存在しない。
 7.N-Treeアルゴリズムは、全てのAVソースについて「MESHネットワーク」を構築する。
 8.1スロットサイズは、512Kbpsである。
 9.ALM-MCUノードは、十分なダウンロード帯域幅及びミキシング処理パワーを有する。
 10.ミキシングは、ローカルクラスタについてのみ実行される。
 11.Fは、高優先順位ノード(又は、能動型ノード)である。
 この例には、アップロード帯域幅及びリンクレイテンシーを考慮した特許文献1の発明の問題点が示される。この問題点は、エンコーダ/デコーダユニット、参加者優先順位、及びミキシング処理パワーの関係において最適化されていないリソースの利用法をもたらす。
 図3、図4、及び図5は、特許文献1の発明のN-Treeアルゴリズムの詳細な動作ループを示す。
 ステップS220:ループ0;
 -ALM-MCUノード及びALMノードの初期状態であり、それぞれのノードの利用可能なリソースが表示されている。
 ステップS230:ループ1及び2;
 -ALM-MCUノードX(202)及びY(208)が接続される。
 -アップロード帯域幅は、2スロットサイズ(2×512Kbps)、即ち1Mbpsだけ低減される。アップロード帯域幅は、B(X)=16Mbps→B(X)=15Mbpsに変化する。
 -ソースノードのリストは、ALMノードA及びALMノードBに伴って、S(Y)={c,d}→S(Y)={a,b,c,d}に変化する。
 -利用可能な最大帯域幅と、ノードY(208)への経路(224)に沿ったD(X,Y)=10msとを実現するため、まず、ノードX(202)が選択された。
 -ALMノードA(204)及びALMノードB(206)のALM-MCUノードX(202)のそれぞれのストリームに対して、1つのエンコーダが割り当てられた。ALMノードA(204)及びALMノードB(206)のALM-MCUノードY(208)のそれぞれのストリームに対して、1つのデコーダが割り当てられた。エンコーダ/デコーダの割り当ては、ED(X)=4/4→ED(X)=2/4に変化し、かつ、ED(Y)=4/4→ED(Y)=4/2に変化する。これらのエンコーダ及びデコーダは、それぞれ、ALMノードA(204)及びALMノードB(206)からのAVストリームをエンコーディング及びデコーディングする。
 -ALMノードA(204)及びノードB(206)のコンテンツは、ミキシングのために、それぞれ、リンク226及び228を介して、ALM-MCUノードX(202)からALM-MCUノードY(208)に配送される。
 同様に、その他のN-TreeアルゴリズムのステップS230、S240、S250、S260、S270、S280、及びS290は、図3、図4及び図5に示されている。これらの全てのステップにおいて、ALM経路の構築のために、帯域幅及びレイテンシーのみが考慮されている。エンコーダ及びデコーダは、ALM経路が構築された後に、割り当てられる。したがって、ステップS250は、ノードXにおいて利用可能な更なるエンコーダは存在しておらず、ED(X)=0/3である。これは、ステップS260においては、エンコーダカウントが-1になって、ED(X)=-1/3となることから、最悪の状態となっている。この結果、特許文献1のN-Treeアルゴリズム方式に準拠して、ALMノードC(210)のストリームをALM-MCUノードZに中継した際には、AVの処理遅延が生じる。しかしながら、同一のステップS260では、ALM-MCUノードY(208)及びALM-MCUノードZ(214)内に、未使用のエンコーダ/デコーダリソースが存在しており、ED(Y)=3/2及びED(Z)=8/5である。この問題は、ステップS280及びステップS290において、ALM-MCUノードX(204)に関して更に深刻な状態になっている。
 上記の例は、リソースの優先順位付け及び最適化が、ALM経路を構築する際に考慮されなかったN-Treeアルゴリズムの問題点をわかりやすく示している。
 特許文献2は、ユーザ画面の解像度及びコンテンツタイプに基づいた帯域幅割当の最適化を解決したが、マルチノードAV会議システムにおいて、非常に重要であるその他のリソースを考慮してはいない。なお、重要であるその他のリソースとは、AVミキシング(MCU)能力、エンコーディング及びデコーディング能力、参加者画面レイアウト選択肢、並びに、会議イベント等を含む。ALM経路の構築において、異なる会議イベントついて最適化及び優先順位付けされていない特許文献2におけるリソース割当の問題点は、図6、図7、図8及び図9によって例証する。特許文献2の例については、容易に説明するために、特許文献1において行った以前の仮定を用いる。唯一の違いは、仮定8であり、この場合には、「8.1スロットは、ユーザ画面の解像度及びコンテンツタイプによって左右される」となる。
 以下の例では、画面解像度及びコンテンツタイプに基づいて帯域幅の割当を最適化する特許文献2の発明の問題点を例証する。この発明では、リソース割当の際に、AVミキシング(MCU)能力、並びに、エンコーディング及びデコーディング能力などのその他のタイプのリソースを考慮していない。このため、特許文献2の発明では、異なる動的会議イベントにおけるリソースが最適に使用されない。
 図6は、図2と同一の構成を示しており、ALMノード304(ストリームALMノードA-1920×1080)、ALMノード306(ストリームALMノードB-1920×1080)、ALMノード310(ストリームALMノードC-1280×720)、ALMノード312(ストリームALMノードD-704×576)、ALMノード316(ストリームALMノードE-352×288)、及びALMノード318(ストリームALMノードF-176×144)の例示用のコンテンツ解像度を示すテーブル301が更に示されている。
 ステップS320:ループ0;
 -ALM-MCUノード及びALMノードの初期状態であり、それぞれのノードの利用可能なリソースが示されている。
 ステップS330:ループ1及び2;
 -ALM-MCUノードX(302)及びY(308)が接続される。
 -高解像度のALMノードA(304)及びB(306)を有するため、大きな帯域幅がALM-MCUノードB(X)に対して割り当てられる。帯域幅は、B(X)=16Mbps→B(X)=12Mbpsに変化する。
 -但し、エンコーダ/デコーダの割当は、それぞれのALMノードA(304)及びB(306)についてそれぞれ1つであって、同一である。エンコーダ/デコーダの割当は、ED(X)=4/4→ED(X)=2/4に変化し、かつ、ED(Y)=4/4→ED(Y)=4/2に変化する。
 -したがって、ソースノードリストは、S(Y)={c,d}→S(Y)={a,b,c,d}に変化する。
 特許文献2によれば、ステップS340、S350、S360、S370、S380及びS390における以下のループについて、同一のN-Treeアルゴリズム手順が適用される。エンコーダリソースは、ステップS360において枯渇状態となって、ED(X)=-1/3であって、ALM-MCUノードX(302)においてリソース競合が発生するため、エンコーディング遅延が発生する。しかし、同一のステップS360においては、ALM-MCUノードY(308)及びALM-MCUノードZ(314)内に、未使用のエンコーダ/デコーダリソースが存在している。その他のステップS370、ステップS380及びステップS390においては、これ以降、同様の問題に直面する。この例では、AV会議セッションにおけるAVストリームの全体的な品質を妨げるALM-MCUノードリソースを、考慮しないことに伴う問題点を示した。
 以下、エンコーダ/デコーダリソースとの関係において、図2、図3、図4、図5、図6、図7、図8及び図9における前述の問題を解決する本発明の方法について説明する。但し、当該方法は、参加者画面レイアウト選択肢及び会議イベントを含むエンコーダ/デコーダユニット以外の、全てのALM-MCU又はALMノードのリソースタイプに適用される。また、当該方法は、ALM経路の構築におけるその他の定量化可能な複数のリソースの割当、優先順位付け及び最適化に使用可能である。
 図10、図11、図12及び図13では、本発明の方法における各ステップを示す。これらの図では、図2から図9で用いた同様のアップロード帯域幅、遅延及びエンコーダ/デコーダパラメータの例を利用する。すなわち、本発明は、N-Treeアルゴリズムを利用したALM経路の構築する際に、様々な会議イベント用の優先順位付け及び最適化されたリソース割当メカニズムの方法であることを示す。例示を目的として、上述した仮定に加えて行われた更なる仮定又は相違点について以下に記述する。
 1.スロットサイズは、固定されておらず、かつ、画面レイアウト解像度/品質に基づいている(例示用の帯域幅割当については、図19を参照されたい)。
 2.Fは、高優先順位ノードであるため、これに対しては、十分なリソースを割り当てなければならない。他の全てのノードの優先順位は等しい。
 3.高優先順位ノードFは、それぞれが1Mbpsの帯域幅を必要とするストリームA及びストリームC(HD1080コンテンツ)が、合成された画面レイアウトを選択する。
 4.A及びC以外のストリームが必要とする帯域幅は、256Kbpsのみである。
 5.最適化及び優先順位付け対象のリソースは、ALM-MCU内のエンコーダ/デコーダの数である。
 この発明の方法は、優先順位付け及び最適化のために、以下の規則を適用している。
 規則1:ノードを選択しなければならない際には、常に、最高優先順位ノードが要求した1つ又は複数のストリームを処理するノードを選択する。
 規則2:規則1において等しい最高優先順位のノードの中においては、リソースタイプがリソース優先順位付け及び最適化のためにユーザによって指定されている最大リソースを有するノードを選択する。
 規則3:規則2において等しい最大リソースを有するノードの中においては、その組の中から1つのノードをランダムに選択する。
 規則4:リンクを選択する際には、常に、リソースのタイプがリソース優先順位付け及び最適化のためにユーザによって、指定されている最大リソースを有するノードへの経路を選択する。
 規則5:規則4において等しい最大リソースを有するノードへの経路の中においては、その組の中から1つのリンクをランダムに選択する。
 規則6:ソースを選択する際には、常に、最高優先順位ノードが要求したストリームを選択する。
 規則7:規則6において最高優先順位ノードによって要求されたソースの中においては、その組の中から1つのストリームをランダムに選択する。
 規則8:ノードは、別のALM-MCUノードからの1つ又は複数のストリームを中継するのではなく、まず、その独自の1つ又は複数のローカルクラスタストリームを送信するべく常に選択する。
 この例においては、リソースの優先順位付け及び最適化のために、上記の8つの規則を適用した。
 ステップS420:ループ0;
 -初期状態では、アップロード帯域幅、遅延、ソースノードリスト、及びエンコーダ/デコーダユニットの数を含む利用可能なリソースを用意する。
 ステップS430:ループ1;
 -ALMノードF(418)によって選択された画面レイアウトに含まれる最高優先順位ストリーム(ストリームA)の送信元であり、ALMノードAをイントラクラスタに持つ、ALM-MCUノードX(402)が、選択された。
 -ALM-MCUノードZ(414)が、最大数のエンコーダ/デコーダを有するため、経路D(X,Z)(420)が選択された。
 -ALMノードA(404)からのストリームAは、HD1080コンテンツ用として1Mbpsが割り当てられているため、B(X)=16Mbps→B(X)=15Mbpsとなる。
 -エンコーダ/デコーダの割当は、ED(X)=4/4→ED(X)=3/4となり、かつ、ED(Z)=8/8→ED(Z)=8/7となる。
 -ソースノードのリストは、S(Z)={e,f}→S(Z)={a,e,f}となる。
 ステップS440:ループ2;
 -ALMノードF(418)によって、選択された画面レイアウトに含まれる最高優先順位ストリーム(ストリームC)の送信元であるALMノードCを、イントラクラスタに持つ、ALM-MCUノードY(408)が選択された。
 -ALM-MCUノードZ(414)が最大数のエンコーダ/デコーダを有するため、D(Y,Z)(422)への経路が選択された。
 -ALMノードC(410)からのストリームCは、HD1080用として1Mbpsが割り当てられているため、B(Y)=8Mbps→B(Y)=7Mbpsとなる。
 -エンコーダ/デコーダの割り当ては、ED(Y)=4/4→ED(Y)=3/4となり、かつ、ED(Z)=8/7→ED(Z)=8/6となる。
 -ソースノードリストは、S(Z)={a,e,f}→S(Z)={a,c,e,f}となる。
 ステップS450:ループ3、4、5、及び6;
 -高優先順位のALM-MCUノードが残っていない際に、最大数のエンコーダ/デコーダを有するため、ALM-MCUノードZ(414)が選択された。
 -規則8に基づいて、まず、ALM-MCUノードZのイントラクラスタであるALMノードE及びFからのストリームが配送対象として選択される。
 -ALMノードE及びFからのそれぞれのストリームに対しては0.25Mbpsが割り当てられているため、ALM-MCUノードZ(414)の帯域幅は、B(Z)=4Mbps→B(Z)=3Mbpsとなる。
 -エンコーダ/デコーダの割当は、ED(X)=3/4→ED(X)=3/2となり、ED(Y)=3/4→ED(X)=3/2となり、そして、ED(Z)=8/6→ED(Z)=4/6となる。
 -ソースリストは、S(X)={a,b}→S(X)={a,b,e,f}となり、かつ、S(Y)={c,d}→S(Y)={c,d,e,f}となる。
 ステップS460:ループ7及び8;
 -この場合にも、高優先順位のALM-MCUノードが残っていない際に、依然として最大数のエンコーダ/デコーダを有するため、ALM-MCUノードZ(414)が選択された。
 -ALMノードA及びCからのそれぞれのストリームには、1Mbpsが割り当てられているため、ALM-MCUノードZ(414)の帯域幅は、B(Z)=3Mbps→B(Z)=1Mbpsとなる。
 -新しいソースリストは、S(X)={a,b,c,e,f}及びS(Y)={a,c,d,e,f}である。
 -新しいエンコーダ/デコーダの割当は、ED(X)=3/1及びED(Y)=3/1及びED(Z)=2/6となる。
 ステップS470:ループ9及び10;
 -ALM-MCUノードZ(414)において中継対象の更なるストリームが存在しないため、ALM-MCUノードZ(414)ではなく、ALM-MCUノードX(402)が選択された。
 -ALMノードB(406)からのストリームには0.25Mbpsが割り当てられている。このため、ALM-MCUノードX(402)の帯域幅は、B(X)=15Mbps→B(X)=14.75Mbpsとなり、かつ、ALM-MCUノードZ(414)の帯域幅は、B(Z)=1Mbps→B(Z)=0.75Mbpsとなる。
 -新しいソースリストは、S(Y)={a,b,c,d,e,f}及びS(Z)={a,b,c,e,f}である。
 -新しいエンコーダ/デコーダ割当は、ED(X)=2/1、ED(Y)=3/0、及びED(Z)=2/5となる。
 ステップS480:ループ11及び12;
 -ALM-MCUノードX(402)及びALM-MCUノードZ(414)が中継対象の更なるストリームを具備していないため、ALM-MCUノードY(408)が選択された。
 -ALMノードD(412)からのストリームに対して0.25Mbpsが割り当てられた。ALM-MCUノードY(408)の帯域幅は、B(Y)=7Mbps→B(Y)=6.75Mbpsとなり、かつ、B(Z)=0.75Mbps→B(Z)=0.5Mbpsとなる。
 -新しいソースリストは、S(X)={a,b,c,d,e,f}及びS(Z)={a,b,c,d,e,f}である。
 -新しいエンコーダ/デコーダの割当は、ED(X)=2/0、ED(Y)=2/0、及びED(Z)=1/4となる。
 図14は、ALM N-Tree生成ユニット(546)と、リソース優先順位付け及び最適化ユニット(520)という2つの主要な処理ユニットを含む、本発明のN-Tree構築装置を示すブロック図である。ALM N-Tree生成ユニット(546)は、N-Tree(554)の構築及び最終的なAVコンテンツ(562)の生成の責任を担っている。ALM N-Tree生成ユニット(546)は、失敗通知部(548)と、ALM経路構築部(552)と、AVストリーム選択部(556)と、出力生成部(560)とを有する。失敗通知部(548)は、N-Tree構築の失敗を通知する。ALM経路構築部(552)は、リソース優先順位付け及び最適化されたN-Treeを構築する。AVストリーム選択部(556)は、構築されたN-Tree(554)に基づいてミキシング動作のために1つ又は複数のストリームを選択する。出力生成部(560)は、ミキシングして最終的なAVコンテンツ(562)を生成する。
 リソース優先順位付け及び最適化ユニット(520)は、リソース優先順位付け部(534)と、リソース最適化部(522)とを有する。リソース優先順位付け部(534)は、参加者の役割(536)及び会議イベント(526)に基づいてリソース割当を優先順位付けする。リソース最適化部(522)は、リソース優先順位付け部(534)の出力結果及びリソース情報を記憶するデータベース(502)、(504)、(506)に従って様々なタイプのリソースを最適に割り当てる。
 帯域幅メトリック情報データベース(帯域幅メトリック情報DB)(502)は、全てのALM-MCUノード及びALMノードの帯域幅情報を記憶する。エンコーダ/デコーダ情報データベース(エンコーダ/デコーダ情報DB)(504)は、エンコーダ/デコーダ関連情報を記憶する。オーディオ/ビデオミキシング情報データベース(オーディオ/ビデオミキシング情報DB)(506)は、AVミキシング情報を記憶する。これらの3つのデータベースに対しては、それぞれ、リンク510、512及び514を介して、リソース最適化部(522)が個別にアクセスする。リソース優先順位付け部(534)は、リンク516を介して、リソース割当規則テーブル(508)からリソース割当規則を読み取る。
 リソース優先順位付け部(534)は、(i)イベントハンドラ(528)に到着する会議イベント通知(530)と、(ii)画面レイアウト選択肢(518)とを考慮する。役割状態通知部(538)は、参加者の能動/受動状態(540)を受信する。
 リソース最適化部(522)とリソース優先順位付け部(534)の間の通信は、それぞれ、リンク524及び532を介して実行される。リソース最適化部(522)は、リンク542を介してALM経路構築部(552)に対して指示する。但し、リソース最適化部(522)とALM経路構築部(552)の間には、リンク550及び544を使用する失敗通知部(548)を介した逆方向の通信も発生する。リンク564を介して到来したN個のAVストリームは、AVストリーム選択部(556)によって選択された後、リンク(558)を介して出力生成部(560)に伝達される。
 図15は、MCUリソース状態メッセージの構造を示す。図15に示すように、MCUリソース状態メッセージは、エンコーダユニットの数(602)、デコーダユニットの数(604)、エンコーディングレート(606)、デコーディングレート(608)、ユニット当たりのチャネルの数(610)、及び、チャネルデータレート(612)とから構成される。
 図16は、MCUビデオ入出力(I/O)状態メッセージの構造を示す。図16に示すように、MCUビデオ入出力(I/O)状態メッセージは、ビデオフォーマット(702)と、ビデオサンプリングレートを示すビデオサンプリングタイプ(704)と、ビデオ入力タイプ(706)と、ビデオ解像度を通知するビデオ出力タイプ(708)とから構成される。なお、ビデオフォーマット(702)は、ビデオがNTSC、PAL、720P、1080i、SXGAフォーマットであるかどうかを通知する。ビデオサンプリングタイプ(704)は、標準精細度用の13.5MHz、4:2:2(Y:B-Y:R-Y)、高精細度用の74.1758MHz(V=59.94Hz)/74.25MHz(V=50Hz)、及びRGB用の65MHz~110MHz、4:4:4(G:B:R)等を含む。
 図17は、会議構成状態メッセージの構造を示す。図17に示すように、会議構成状態メッセージは、参加者が能動的又は受動的参加者であるどうかを通知する役割状態(802)と、会議セッションのイベントタイプを通知する会議イベント(804)とから構成される。
 図18は、ビデオストリームの構造を示す。図18に示すように、ビデオストリームは、会議セッションにおけるビデオストリームの重要性レベルを通知するための優先順位番号(902)、フレーム番号(904)、第1Xピクセル位置(906)、第1Yピクセル位置(908)、Xピクセル長(910)、Yピクセル長(912)、エンコーディング方式(914)、ピクセルの数(916)、及び、ピクセルデータ(918)とから構成される。
 図19は、各解像度タイプの推定帯域幅を規定している。列(1002)は、例えば、QCIF、CIF、4CIF、720p、並びに、1080i又は1080p等の様々なタイプの画面解像度を表す。列(1004)は、Kbpsを単位として、推定最低圧縮データレートを表す。行(1006、1008、1010、1012、1014)は、各画面解像度(1002)と、必要とされるそれぞれの推定帯域幅(1004)とを示す。これらは、説明を目的とした例示用の帯域幅推定値であって、画面解像度又はユーザ要件に基づいて変化可能である。
 図20は、それぞれの優先順位レベルごとの最大レイテンシー遅延を規定している。列(1102)は、例えば、低(1106)、中間(1108)又は高(1110)であるかどうかの優先順位レベルを表している。列(1104)は、最大レイテンシー遅延を表している。行(1106、1108、1110)は、それぞれの優先順位レベルと、それぞれの最大レイテンシー遅延とを示す。これらは、説明を目的とした例示用のものであって、優先順位の設定に基づいて変化可能である。
 図21は、会議イベントにおける自身の役割に基づいた参加者の優先順位レベルテーブルを示す。列(1202)は、例えば、司会者(1208)、参加者(1210)及びオブザーバ(1212)等の参加者の役割を表している。列(1204)は、会議イベントを表し、例えば、講演(行1204及び列1214)、質疑応答(行1204及び列1216)又は個別指導(行1204及び列1218)である。最後の列(1206)は、中間(行1206及び列1214/1224)、聴取者(中間)及び回答者(高)(行1206及び列1216)、高(行1206及び列1218/1220)、質問者(高)及び聴取者(中間)(行1206及び列1222)、並びに、低(行1206及び列1226/1228/1230)を含む会議イベントにおける特定の参加者の役割の優先順位レベルを表している。
 図22は、MCUリソース情報テーブルを示す。図22に示すように、MCUリソース情報テーブルは、ALM-MCU IPアドレス(1302)、利用可能なエンコーダ/デコーダの数(1304)、ミキシング動作(1306)、利用可能な帯域幅(1308)、接続された子ノード及びそれらの選択された画面レイアウト選択肢(1310)、接続された子ノードのストリーム優先順位(1312)、及び接続された子ノードが要求とするリソース(1314)等の情報から構成されている。また、MCUリソース情報テーブルには、N個のMCU(1316、1318及び1320)が存在可能である。
 図23は、本発明に係るN-Tree構築方法の優先順位付け及び最適化されたリソース割当の主要なプロセスを示すフローチャートである。図23のステップS1402に示されているように、各々かつ全てのノードは、初期段階においてALM会議セッション形成のためにセッションに参加するべく試みる。ステップS1402が完了した際に、ユーザは、ステップS1404に示されているように、利用可能なリストから自身が選好する画面レイアウトを選択するように促される。次のステップS1406において、ALM経路構築部(552)は、ALM-MCUノードとALMノードの間のイントラクラスタネットワーク接続のための(特許文献1に記述されている)、公平な帯域幅のN-Treeを構築する。つまり、ALM経路構築部(552)は、帯域幅が等しく共有及び利用されることを保証する。この後に、ステップS1408において、ALM経路構築部(552)は、リソース優先順位付け及び最適化ユニット(520)と共に、N-Treeを構築する。具体的には、ALM経路構築部(552)は、異なるALM-MCUノード間のインタークラスタネットワーク接続のためにリソース優先順位付け及び最適化されたN-Treeを構築する。リソース優先順位付け及び最適化されたN-Treeの詳細なステップについては後述する。最後に、ステップS1410において、AVストリーム選択部(556)は、構築されたN-Tree(554)に基づいて、関連するAVストリームを入力として選択する。かつ、AVストリーム選択部(556)は、出力生成部(560)に対して、ミキシングして最終的な出力(562)を生成するように指示する。
 図24~図27は、会議セッションに参加するべく、ALMノード又はALM-MCUノードが実行する方法のフローチャートである。このプロセスは、ステップS1502において、会議セッションに参加するための参加者要求を受領した際に始まる。処理は、ステップS1506に移行し、ステップS1506では、参加者ノードのミキシング能力がチェックされる。参加者ノードがミキシング動作を実行可能であると判定された場合(ステップS1506:Yes)、そのノードは、「候補ALM-MCUノード」(ALM-MCUノードの1つ)として分類される(ステップS1504)。一方、参加者ノードがミキシング動作を実行不可能である場合(ステップS1506:No)、そのノードは、「候補エンドノード」(ALMノードの1つ)として分類される(ステップS1508)。
 ステップS1510では、ネットワーク内における「ALM-MCUノード」の存在が判定される。ネットワーク内に「ALM-MCUノード」が存在しない場合(ステップS1510:No)は、図25のステップS1518に進む。参加者ノードタイプが「候補ALM-MCUノード」である場合(ステップS1518)、そのノードは、「ALM-MCUノード」に変換される(ステップS1530)。一方、参加者ノードタイプが「候補エンドノード」である場合(ステップS1508)は、ステップS1516に進む。当該ステップS1516では、ネットワークに参加するのを待つことになる。なお、ステップS1516のノードは、参加者ノードの待ち時間が特定のタイムアウト値になるまで繰り返される(ステップS1514)。参加者ノードの待ち時間がタイムアウト値を超過した場合(ステップS1514:Yes)には、エラーがトリガされる(ステップS1528)。一方、ネットワーク内に少なくとも1つの「ALM-MCUノード」が存在する場合(ステップS1510:Yes)は、図26のステップS1520に進む。参加者ノードは、降順に、各パラメータに基づいて、「ALM-MCUノード」に参加するべく再帰的に試みる(ステップS1520)(ステップS1524)。なお、各パラメータは、利用可能なエンコーダ/デコーダの数、ネットワーク帯域幅及びレイテンシー遅延、ミキシング能力を含む。参加に成功し(ステップS1532)、そのノードが「候補ALM-MCUノード」である場合には、参加者ノードは、「スタンバイALM-MCUノード」に変換される(ステップS1540)(ステップS1546)。一方、そのノードが「候補エンドノード」である場合には、そのノードは「エンドノード」に変換される(ステップS1540)(ステップS1548)。
 次いで、フローチャートは、図27のステップS1512に進む。ネットワーク内に「スタンバイALM-MCUノード」が存在するかどうかについての判定が実行される(ステップS1512)。存在する場合(ステップS1512:Yes)には、参加者ノードは、降順において、各パラメータに基づいて、「スタンバイALM-MCUノード」に対して参加するべく再帰的に試みる(ステップS1522)(ステップS1526)。なお、各パラメータは、利用可能なエンコーダ/デコーダの数、ネットワーク帯域幅及びレイテンシー遅延、ミキシング能力を含む。参加に成功した際には(ステップS1536:Yes)、「スタンバイALM-MCUノード」は、「ALM-MCUノード」に変換され(ステップS1542)、図26のステップS1540に進む。参加者ノードは、そのタイプ(ステップS1540)に基づいて、「スタンバイALM-MCUノード」又は「エンドノード」に変換される(ステップS1546)(ステップS1548)。一方、「スタンバイALM-MCUノード」への参加に失敗した場合(ステップS1536:No)、かつ、ネットワーク内に「スタンバイALM-MCUノード」が存在しない場合には(ステップS1538:No)、ステップS1544に移動する。ステップS1544では、参加者が会議セッションへの参加に失敗したことを通知する。
 図28は、リソース優先順位付け及び最適化されたインタークラスタALM N-Treeが、構築されるステップS1408の詳細な機能フローを示すフローチャートである。ステップS1602では、ALM N-Treeを構築するためのトリガを受信する。ステップS1604において、リソース優先順位付け及び最適化ユニット(520)は、役割状態通知部(538)を介して参加者の役割状態(540)と、イベントハンドラ(528)を介して現在の会議イベント(530)とを読み取る。また、リソース優先順位付け及び最適化ユニット(520)は、個々のリソース情報を記憶するデータベース(502)(504)(506)を介して、現在のリソース情報を読み取る。現在のリソース情報とは、ネットワーク帯域幅及びレイテンシー遅延(510)、利用可能なエンコーダ/デコーダの数(512)、ミキシング能力(514)、並びに、ユーザからの選択された画面レイアウト選択肢(536)等を含む。これらのリソース情報は、いずれも、図22に示されているように、MCUリソース情報テーブル内に保存される。これ以外にも、リソース情報読み取りプロセスにおいては、図15、図16、図17、図18、図19及び図20等に示されているもののいくつかのメッセージが、ALMノードとALM-MCUノードの間で交換されるものと予想される。処理はステップS1606に移行し、ステップS1606では、ユーザからの選択された画面レイアウト選択肢のそれぞれのものが必要とするリソースの推定を含む処理を行う。このステップの詳細については、次の段落において説明する。次いで、ステップS1608、ステップS1610、ステップS1612、ステップS1614において、リソース優先順位付け及び最適化されたALM N-Treeが構築される。リソース優先順位付け部(534)は、定義されたリソース割当規則テーブル(508)から読み出したリソース割当テーブルと、入力としての会議イベント(526)、画面レイアウト選択肢(536)及び役割状態(536)とに基づいて、リソース割当を優先順序付けする責任を担っている。規則は、特定の会議イベントにおける参加者の役割に従って規定される。これは、ノード選択プロセスにおいて選択されるALM-MCUノードの順位に影響を及ぼすことになり、リソース割当を優先順位付けする良好な方法を結果的にもたらす。規則テーブルの一例が図21に示されている。一方、リソース最適化部(522)は、利用可能なリソースに伴うリソース割当を最適化する責任を担っている。帯域幅及びレイテンシー遅延以外の異なるタイプのリソースが考慮されているため、このリンク選択プロセスは、以前のALM N-Treeアルゴリズムとは異なっている。しかし、リンク選択プロセスは、図4の例によって証明されているように、結果的に最適化されたN-Treeが構築される。
 図29及び図30は、ユーザからの選択された画面レイアウト選択肢のそれぞれのものが、必要とするリソースの推定の詳細なプロセスのフローチャートを示す。ステップS1702は、ステップS1704以降の処理を画面レイアウトが変更される全てのユーザに対して実施する。ステップS1704では、画面レイアウト選択肢内の全ての発信元ソースを判定している。次のステップS1706において、リソース優先順位付け部(534)は、リソース割当規則テーブル(508)と、特定の会議イベント(526)におけるその役割状態(536)とに基づいて、画面レイアウト選択肢の要求者ノードの優先順位を判定する。以下のステップS1708、S1710、S1712のいくつかにおいて、発信元ソースストリームヘッダメッセージ(902)のそれぞれに優先順位番号が設定されることになり、かつ、それぞれの親ALM-MCUノードも判定される。処理は図30のステップS1714に移行し、ステップS1714では、子ノードの合計数及びリモートALM-MCUノードから受信されたストリームの合計数を算出することにより、ミキシング処理量が推定される。この後に、ステップS1716において、帯域幅スロットサイズ及び最大レイテンシー遅延の推定が実行される。最後に、ステップS1718では、前述の推定されたリソース情報の全てが、図22に示されているALM-MCUリソース情報テーブル内に保存される。
 図31及び図32は、インタークラスタALM N-Tree構築のリソース優先順位付け割当(ノード選択)フェーズにおいて、リソース優先順位付け部(534)によって実行される判定を示すフローチャートである。当該処理は、ノード選択プロセス(ステップS1802)において始まっており、ステップS1802では、まず、優先順位が高いストリームの送信元である子ノードを有するALM-MCUノードが選択される。ステップS1804では、同一の最高優先順位レベルを有する複数のALM-MCUノードが存在するかどうかについての判定が実行される。最高優先順位レベルを有するALM-MCUノードが1つだけ存在する場合(ステップS1804:No)には、リソース割当プロセスのために、それが選択される(ステップS1806)。一方、当該複数のALM-MCUノードが存在する場合(ステップS1804:Yes)には、優先順位付け対象のリソースのタイプに基づいて、ALM-MCUノードが選択される(ステップS1808)。ここでは、優先順位付け対象のリソースとして、最大帯域幅を有するノードを選択可能である(ステップS1810)。または、優先順位付け対象のリソースとして、最大数のエンコーダ/デコーダを有するノードが選択可能である(ステップS1812)。または、優先順位付け対象のリソースとして、最小数の実行対象のミキシング動作を行うノードが選択可能である(ステップS1814)。同一の優先順位レベル及び等しいリソースを有する複数のALM-MCUノードが、依然として存在する場合(ステップS1816:Yes)には、ステップS1818において、ALM-MCUノードがランダムに選択される。
 図33及び図34は、インタークラスタALM N-Tree構築のリソース最適化割当(リンク選択)フェーズにおいて、リソース最適化部(522)によって実行される判定を示すフローチャートである。ステップS1902では、最適化対象のリソースのタイプに基づいて、選択するべきリンクが判定される。ここでは、最適化対象のリソースのタイプとして、最小のレイテンシー遅延を有するリンクが選択可能である(ステップS1904)。または、最適化対象のリソースのタイプとして、最大数のエンコーダ/デコーダを有するノードへのリンクが選択可能である(ステップS1906)。または、最適化対象のリソースのタイプとして、最小数の実行対象のミキシング動作を行うノードへのリンクが選択可能である(ステップS1908)。このプロセスは、リンクの選択に成功する時点まで再帰的に実行される(ステップS1910)(ステップS1912)。選択対象のリンクが、もはや存在しない場合(ステップS1912:No)には、規則テーブル内のリソース割当情報を更新することによって、低優先順位ノード用のリソース割当を低減するべく決定される(ステップS1916)。さらに、インタークラスタALM N-Treeを再構築するための準備が行われる(ステップS1922)。一方、リンクの選択に成功した場合(ステップS1910:Yes)には、図34のソースの選択処理に進み、当該処理では、優先順位の降順において、ソースストリームが選択される(ステップS1914)。最高優先順位を有する複数のストリームが存在する場合には、その組の中からストリームをランダムに選択するべく決定される(ステップS1920、ステップS1918)。最後に、リソース最適化部(522)は、ALM-MCUリソース情報テーブルからリソース割当情報を読み取り(ステップS1924)、かつ、特定のストリーム用の必要なリソースを予約する(ステップS1926)。リソース割当に成功しなかった場合(ステップS1928:No)には、リソース割当は、規則テーブル内のリソース割当情報を更新することによって低優先順位ノードについて低減される(ステップS1916)。かつ、リソース割当は、インタークラスタALM N-Treeを再構築するための準備が行われる(ステップS1922)。
 次に、本実施の形態における画面レイアウトの具体例について、図35及び図36を用いて説明する。図35中の符号1902,1908及び図36中の符号2002,2004,2016は、教師、生徒(質問者)及び生徒(視聴者)といった異なる参加者の役割(1202)を持つ会議イベントが、講義(1204)セッションの一例を示す。会議イベント及び参加者の役割のいくつかは、図21に示されている。イベント(1204)における参加者(1202)の各々には優先順位(1206)が割り当てられる。MCU及び帯域幅を含むリソースは、参加者の役割(1202)及び会議イベント(1204)の優先順位に基づいて割り当てられる。
 図35において、MCU及びネットワークの帯域幅といったリソースは、教師(1910)のストリーム及び共有コンテンツ(1912)を含む、生徒のレイアウト(1908)のフルミキシングのために優先順位付けされる。当該生徒のレイアウト(1908)は、多くの生徒によって視聴されるためである。この場合、生徒の役割には高い優先順位が与えられる。一方、共有コンテンツ(1904)及び選択された生徒達(1906)を含む教師のレイアウト(1902)に対しては、教師のみによって視聴されるため、部分ミキシングが行われる。
 会議イベント(1204)の変更に際して、参加者の役割(1202)に割り当てられる優先順位(1206)は、図21に示されるように、変更される場合がある。図36では、生徒A(2004)は質問を行い[生徒のレイアウト(2004)を参照]、教師は特定の生徒A(2006)及び独自の共有コンテンツ(2008)を参照する[教師のレイアウト(2002)を参照]。生徒Aは、教師(2010)及び共有コンテンツ(2014)を視聴する。一方、他の受動的な視聴者は、生徒のレイアウト(2016)により、生徒A(2012)、教師(2018)及び共有コンテンツ(2020)を視聴する。このシナリオにおいて、3つの異なるコンテンツが、フルミキシング又は部分ミキシングのいずれかが行われて、それぞれ異なる受信者にストリームされる必要がある。この場合、図21のテーブルは、(フル又は部分のいずれかの)ミキシング及び異なる帯域幅の能力に応じたコンテンツの優先順位付けを決定するために用いられる。
 以上説明したように、本実施形態によれば、AV経路の構築のために、AVミキシング(MCU)能力、エンコーディング及びデコーディング能力、参加者の画面レイアウト選択肢、並びに、会議イベントに基づいて優先順位付け及び最適化された動的リソースの割当が可能である。したがって、本実施形態は、動的なユーザのニーズを反映させることによって、所与のAV処理及びネットワークリソースを最適化可能なリアルタイムAV会議システムを提供できる。
 本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
 本出願は、2010年10月7日出願の日本特許出願(特願2010-227993)に基づくものであり、その内容はここに参照として取り込まれる。
 本発明に係る経路構築装置は、コンテンツの配送経路であるAV経路(特に、ALM経路)の構築のために、各パラメータに基づいて優先順位付け及び最適化された動的リソースを割り当てるN-Tree構築装置等として有用である。
546 ALM N-Tree生成ユニット
520 リソース優先順位付け及び最適化ユニット
548 失敗通知部
552 ALM経路構築部
556 AVストリーム選択部
560 出力生成部
534 リソース優先順位付け部
522 リソース最適化部
502 帯域幅メトリック情報データベース
504 エンコーダ/デコーダ情報データベース
506 オーディオ/ビデオミキシング情報データベース
508 リソース割当規則テーブル

Claims (8)

  1.  複数の通信ノード間でストリームコンテンツが送受信されるシステム内の1つの通信ノードを構成する、前記ストリームコンテンツの配送経路を構築する経路構築装置であって、
     前記配送経路を構築するために利用可能なリソースの割当てを優先順位付けするリソース優先順位付け部と、
     前記配送経路を構築するために利用可能なリソースの割当てを最適化するリソース最適化部と、
     前記リソース優先順位付け部によって優先順位付けされ、前記リソース最適化部によって最適化されたリソースの割当てに基づいて、ストリームコンテンツの配送経路を構築する経路構築部と、
    を備えた経路構築装置。
  2.  請求項1に記載の経路構築装置であって、
     前記経路構築部によって構築された配送経路に基づいたミキシング動作のためにストリームデータを選択するストリームデータ選択部と、
     前記ストリーム選択部によって選択されたストリームデータをミキシングしてストリームコンテンツを生成するストリームコンテンツ生成部と、
    を備えた経路構築装置。
  3.  請求項1又は2に記載の経路構築装置であって、
     前記リソース優先順位付け部及び前記リソース最適化部は、複数のリソース情報を取得して、指定された入力の各々が必要とするリソースを推定し、
     前記リソース優先順位付け部は、前記指定された入力に基づいてリソースの割当てを優先順位付けし、
     前記リソース最適化部は、前記指定された入力に基づいてリソースの割当てを最適化する経路構築装置。
  4.  請求項3に記載の経路構築装置であって、
     前記指定された入力は、
     画面レイアウト選択肢、音量の変化、及び利用可能な帯域幅の変化の少なくともいずれか1つの要素から構成される経路構築装置。
  5.  請求項3又は4に記載の経路構築装置であって、
     前記複数のリソース情報は、
     現在のネットワーク帯域幅及びレイテンシー遅延、利用可能なエンコーダ/デコーダユニットの数、複数のストリームデータからストリームコンテンツを生成する能力、前記システムで行われるイベントの内容を示すイベント情報、及び前記システム内におけるエンドノードの役割状態の少なくともいずれか1つを含む経路構築装置。
  6.  請求項1~5のいずれか一項に記載の経路構築装置であって、
     リソースの再割当てのために、経路構築の失敗について前記リソース最適化部に通知する失敗通知部を備えた経路構築装置。
  7.  請求項1~6のいずれか一項に記載の経路構築装置であって、
     前記システムは、帯域幅が可変なネットワーク及び可変数の異種ノードを含む経路構築装置。
  8.  複数の通信ノード間でストリームコンテンツが送受信されるシステム内の1つの通信ノードによって行われる、前記ストリームコンテンツを送信するための配送経路を構築する経路構築方法であって、
     前記配送経路を構築するために利用可能なリソースの割当てを優先順位付けするリソース優先順位付けステップと、
     前記配送経路を構築するために利用可能なリソースの割当てを最適化するリソース最適化ステップと、
     前記リソース優先順位付けステップで優先順位付けされ、前記リソース最適化ステップで最適化されたリソースの割当てに基づいて、ストリームコンテンツの配送経路を構築する経路構築ステップと、
    を有する経路構築方法。
PCT/JP2011/001168 2010-10-07 2011-02-28 経路構築装置及び経路構築方法 WO2012046358A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP11830299.1A EP2627044A1 (en) 2010-10-07 2011-02-28 Path constructing device and path constructing method
CN2011800046404A CN102668475A (zh) 2010-10-07 2011-02-28 路径构建装置及路径构建方法
US13/511,520 US20120284409A1 (en) 2010-10-07 2011-02-28 Path constructing device and path constructing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010227993A JP2012085014A (ja) 2010-10-07 2010-10-07 経路構築装置及び経路構築方法
JP2010-227993 2010-10-07

Publications (1)

Publication Number Publication Date
WO2012046358A1 true WO2012046358A1 (ja) 2012-04-12

Family

ID=45927369

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/001168 WO2012046358A1 (ja) 2010-10-07 2011-02-28 経路構築装置及び経路構築方法

Country Status (5)

Country Link
US (1) US20120284409A1 (ja)
EP (1) EP2627044A1 (ja)
JP (1) JP2012085014A (ja)
CN (1) CN102668475A (ja)
WO (1) WO2012046358A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9398257B2 (en) 2013-03-15 2016-07-19 Blue Jeans Network Methods and systems for sharing a plurality of encoders between a plurality of endpoints
NO341315B1 (no) 2013-04-17 2017-10-09 Pexip AS Dynamisk allokering av enkodere
AU2016245350B2 (en) 2015-04-09 2019-10-24 Dejero Labs Inc. Systems, devices and methods for distributing data with multi-tiered encoding
JP6269609B2 (ja) 2015-07-28 2018-01-31 株式会社リコー 情報処理装置、画像表示方法、通信システム、プログラム
JP7217647B2 (ja) * 2019-02-27 2023-02-03 エヌ・ティ・ティ・コミュニケーションズ株式会社 通信装置、通信方法、及びプログラム
CN115242566B (zh) * 2022-06-28 2023-09-05 深圳乐播科技有限公司 一种云会议加入方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1127262A (ja) * 1997-07-04 1999-01-29 Sharp Corp 多地点会議接続システム
JP2007142903A (ja) * 2005-11-21 2007-06-07 Nec Corp 経路生成システム、経路生成方法、経路管理サーバ、中継装置、端末装置および制御プログラム
JP2007251716A (ja) * 2006-03-17 2007-09-27 Oki Electric Ind Co Ltd 多地点会議予約割当方法
WO2009098748A1 (ja) 2008-02-08 2009-08-13 Panasonic Corporation 端末装置及びn-ツリー構築方法
WO2009153945A1 (ja) 2008-06-19 2009-12-23 パナソニック株式会社 通信経路構築装置及びn-ツリー構築方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6976090B2 (en) * 2000-04-20 2005-12-13 Actona Technologies Ltd. Differentiated content and application delivery via internet
US7349903B2 (en) * 2004-11-17 2008-03-25 International Business Machines Corporation Apparatus, system, and method for an alternate lock facility connection path
CN101499021A (zh) * 2008-01-31 2009-08-05 国际商业机器公司 在多个虚拟机上动态分配资源的方法和装置
JP5200928B2 (ja) * 2008-12-29 2013-06-05 ブラザー工業株式会社 テレビ会議システム、帯域制御方法、会議制御装置、テレビ会議端末装置及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1127262A (ja) * 1997-07-04 1999-01-29 Sharp Corp 多地点会議接続システム
JP2007142903A (ja) * 2005-11-21 2007-06-07 Nec Corp 経路生成システム、経路生成方法、経路管理サーバ、中継装置、端末装置および制御プログラム
JP2007251716A (ja) * 2006-03-17 2007-09-27 Oki Electric Ind Co Ltd 多地点会議予約割当方法
WO2009098748A1 (ja) 2008-02-08 2009-08-13 Panasonic Corporation 端末装置及びn-ツリー構築方法
WO2009153945A1 (ja) 2008-06-19 2009-12-23 パナソニック株式会社 通信経路構築装置及びn-ツリー構築方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TOSHIYUKI KAWASAKI ET AL.: "CDN no Request Routing Gijutsu o Riyo shita Multimedia Kaigi System no Jitsugen", SYMPOSIUM ON MULTIMEDIA, DISTRIBUTED, COOPERATIVE AND MOBILE SYSTEMS (DICOMO) RONBUNSHU, 1997 NEN TO 2006 NENBAN, vol. 2003, no. 9, 31 August 2006 (2006-08-31), pages 357 - 360, XP008167765 *

Also Published As

Publication number Publication date
CN102668475A (zh) 2012-09-12
EP2627044A1 (en) 2013-08-14
US20120284409A1 (en) 2012-11-08
JP2012085014A (ja) 2012-04-26

Similar Documents

Publication Publication Date Title
US8416776B2 (en) Communication channel building device and N-tree building method
Wei et al. Multiple tree video multicast over wireless ad hoc networks
WO2012046358A1 (ja) 経路構築装置及び経路構築方法
US8289365B2 (en) Method and apparatus for the efficient transmission of multimedia streams for teleconferencing
US20110161836A1 (en) System for processing and synchronizing large scale video conferencing and document sharing
US20050080894A1 (en) Method and system for topology adaptation to support communication in a communicative environment
JP6389573B2 (ja) データ送信方法及びシステム並びに関連装置
US20110157298A1 (en) System for processing and synchronizing large scale video conferencing and document sharing
Liang et al. Optimal bandwidth sharing in multiswarm multiparty p2p video-conferencing systems
US20100302346A1 (en) System for processing and synchronizing large scale video conferencing and document sharing
CN101795234B (zh) 一种基于应用层组播算法的流媒体传输方案
Akkuş et al. Peer-to-peer multipoint video conferencing with layered video
KR101248712B1 (ko) 데이터를 복수의 노드간에서 네트워크를 경유하여 수신 및 전송하는 멀티캐스트 통신 방법 및 장치
Erfanian et al. On optimizing resource utilization in AVC-based real-time video streaming
CN101986601B (zh) 一种组播数据的传输方法和设备
Civanlar et al. Peer-to-peer multipoint videoconferencing on the Internet
Luo et al. DigiMetro-an application-level multicast system for multi-party video conferencing
CN102957729B (zh) 一种多媒体会议音视频传输方法及设备
Luo et al. A multiparty videoconferencing system over an application-level multicast protocol
US8976225B2 (en) Method, computer program and device for managing media stream in video conferencing
Liška et al. CoUniverse: Framework for building self-organizing collaborative environments using extreme-bandwidth media applications
Rios et al. Conferencing Services in P2P Networks: Trends and Challenges
Liu et al. Bellini: Ferrying application traffic flows through geo-distributed datacenters in the cloud
Gu et al. Peertalk: a peer-to-peer multiparty voice-over-ip system
Rios et al. Peer-to-Peer Multimedia Conferencing System Based on SIP Signaling

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2011830299

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 13511520

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11830299

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE