JP6369024B2 - 映像配信システム及び映像配信システムにおいて使用されるノード装置 - Google Patents

映像配信システム及び映像配信システムにおいて使用されるノード装置 Download PDF

Info

Publication number
JP6369024B2
JP6369024B2 JP2014002312A JP2014002312A JP6369024B2 JP 6369024 B2 JP6369024 B2 JP 6369024B2 JP 2014002312 A JP2014002312 A JP 2014002312A JP 2014002312 A JP2014002312 A JP 2014002312A JP 6369024 B2 JP6369024 B2 JP 6369024B2
Authority
JP
Japan
Prior art keywords
node device
participation
request
stream
new
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014002312A
Other languages
English (en)
Other versions
JP2015133529A (ja
Inventor
美和 嶋田
美和 嶋田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014002312A priority Critical patent/JP6369024B2/ja
Priority to US14/542,759 priority patent/US20150195360A1/en
Priority to CN201410804514.2A priority patent/CN104780151B/zh
Publication of JP2015133529A publication Critical patent/JP2015133529A/ja
Application granted granted Critical
Publication of JP6369024B2 publication Critical patent/JP6369024B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1046Joining mechanisms
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1089Hierarchical topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • 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

Description

本発明は、映像配信システムおよび映像配信システムにおいて使用されるノード装置に係わる。
映像データを配信する方法の1つとして、ストリーム配信(または、ストリーミング)が普及してきている。ストリーム配信においては、端末装置は、映像データファイルをダウンロードしながらその映像を再生することができる。このため、ストリーム配信は、ライブ配信を実現することができる。また、映像データファイルのサイズが大きい場合であっても、端末装置は、大容量のストレージを用意することなくその映像を再生できる。
ストリーム配信を提供する通信方式の1つとして、P2P(peer to peer)通信が実用化されている。P2P通信においては、通信を行う複数の端末装置は対等である。すなわち、各端末装置は、データを受信する受信装置として動作することができ、また、データを他の端末装置へ送信(または、転送)する送信装置として動作することもできる。したがって、P2P通信は、柔軟なネットワークを提供することができる。
P2Pを利用するストリーム配信を提供する配信システムにおいては、根ノード装置が設けられる。根ノード装置は、配信サービスにより提供されるストリームデータを受信する参加ノード装置を管理する。ここで、新たなノード装置(以下、新規参加ノード装置)が配信サービスを受けようとするときは、その新規参加ノード装置は、根ノード装置に参加要求を送信する。そうすると、根ノード装置は、新規参加ノード装置に対して、親候補ノード情報を提供する。そして、新規参加ノード装置は、その親候補ノード情報を利用して親ノード装置を決定し、その親ノード装置からストリームデータを受信する。
なお、関連技術として、P2Pのリレー方式において安定した通信を可能にするサーバシステムおよびクライアント装置が提案されている。また、大規模なストリーミング配信をP2P方式で確実に行うための方法が提案されている。(例えば、特許文献1、2)
特開2011−151701号公報 WO2010/067457号
上述のように、新規参加ノード装置は、配信サービスを受けるときは、根ノード装置に参加要求を送信する。このため、例えば、新規参加ノード装置が多いときは、根ノード装置のレスポンスが悪くなることがある。そうすると、新規参加ノード装置が配信サービスを受けられるようになるまでの時間が長くなってしまう。すなわち、ユーザの利便性が低下することがある。
1つの側面では、本発明は、P2Pでストリーム配信を行う映像配信システムにおいて、新規参加ノード装置がストリームデータを受信できるようになるまでの時間を短くすることを目的とする。
1つの態様では、ノード装置に対してストリーム配信サービスを提供する映像配信システムにおいて、前記ストリーム配信サービスに新たに参加する新規参加ノード装置は、所定の範囲内のノード装置に対して参加要求を送信し、前記参加要求を受信したノード装置は、前記ストリーム配信サービスを提供できるときは、前記参加要求に対応する参加応答を前記新規参加ノード装置へ返送し、前記新規参加ノード装置は、前記参加要求に対応する参加応答を最初に返送してきたノード装置に対してストリーム配信要求を送信する。
1つの側面として、P2Pでストリーム配信を行う映像配信システムにおいて、新規参加ノード装置がストリームデータを受信できるようになるまでの時間を短くすることができるという効果を有する。
映像配信システムの動作の概要を説明する図(その1)である。 映像配信システムの動作の概要を説明する図(その2)である。 映像配信システムの動作の概要を説明する図(その3)である。 映像配信システムの動作の概要を説明する図(その4)である。 映像配信システムの動作の概要を説明する図(その5)である。 根ノード装置の機能を示すブロック図である。 ノード装置の機能を示すブロック図である。 新規参加ノード装置の動作を示すフローチャートである。 参加ノード装置の動作を示すフローチャートである。 新規参加ノード装置の近くに配信可能な参加ノード装置が存在するときのシーケンスを示す図である。 新規参加ノード装置の近くに配信可能な参加ノード装置が存在しないときのシーケンスを示す図である。 ノード装置の動作状態に基づいて参加要求に応答するか否かを判定する方法を説明する図である。 配信ツリーに基づいて参加要求に応答するか否かを判定する方法を説明する図である。 本発明の実施形態に係わるノード装置のハードウェア構成の一例を示す図である。
図1〜図5は、本発明の1つの実施形態に係る映像配信システム200の動作の概要を説明する図である。映像配信システム200は、ユーザからの要求に応じてストリーム配信サービスを提供することができる。
映像配信システム200は、複数のノード装置を含む。各ノード装置は、映像配信システム200が提供するストリーム配信サービスに参加することができる。この例では、図1に示すように、ノード装置1A、1B、1C、1Dがストリーム配信サービスに参加している。すなわち、ノード装置1A、1B、1C、1Dは、ストリームデータを受信している。なお、以下の説明では、ストリーム配信サービスに参加しているノード装置を「参加ノード装置(または、参加ノード)」と呼ぶことがある。
映像配信システム200は、根ノード装置2を有する。根ノード装置2は、ストリーム配信の状態を管理する。例えば、根ノード装置2は、参加ノード装置の接続状態を表す配信ツリーを管理する。すなわち、根ノード装置2は、各参加ノード装置へストリームデータが配信される経路を管理している。また、根ノード装置2は、この実施例では、ストリーム配信の最上流に位置する。そして、根ノード装置2は、コンテンツサーバから映像データを取得して参加ノード装置へストリーム配信する。或いは、コンテンツサーバが根ノード装置として動作してもよい。
各ノード装置は、P2P通信を実現するための機能を実装している。そして、根ノード装置2から送信されるストリームデータは、1または複数の参加ノード装置を介して各参加ノードに配信される。図1に示す例では、根ノード装置2は、参加ノード装置1Aへストリームデータを送信する。参加ノード装置1Aは、受信したストリームデータを参加ノード装置1Bへ転送する。同様に、参加ノード装置1Bは、受信したストリームデータを参加ノード装置1Cへ転送し、参加ノード装置1Cは、受信したストリームデータを参加ノード装置1Dへ転送する。このストリーミングにより、参加ノード装置1A〜1Dは、根ノード装置2から配信される映像データをほぼ同時に受信することができる。
各ノード装置は、ルータに収容されている。この実施例では、各ルータに収容されている複数のノード装置がそれぞれネットワークを構成する。たとえば、図1に示すように、参加ノード装置1A、1B、根ノード装置2は、ネットワークXに属している。また、参加ノード装置1C、1Dは、ネットワークYに属している。各ネットワークX、Yの中では、ノード装置間の距離は1ホップである。なお、ネットワークXおよびネットワークYは、ゲートウェイ4により互いに接続されている。
上記構成の映像配信システム200において、ネットワークYに属するノード装置3が、新たにストリーム配信サービスに参加するものとする。なお、以下の説明では、新たにストリーム配信サービスに参加するノード装置を「新規参加ノード装置(または、新規参加ノード)」と呼ぶことがある。
新規参加ノード装置3は、まず、新規参加ノード装置3を収容しているルータとの間の往復遅延時間(RTT:Round Trip Time)を測定する。すなわち、新規参加ノード装置3は、図1に示すように、ゲートウェイ4との間のRTTを測定する。RTTは、例えば、新規参加ノード装置3からゲートウェイ4へPingを送信することにより測定される。ただし、RTTは、他の方法で測定してもよい。
続いて、新規参加ノード装置3は、図2に示すように、ネットワークYに属するすべてのノード装置に対してマルチキャスト参加要求を送信する。このマルチキャスト参加要求は、例えば、送信先アドレスとしてネットワークY内で一意なマルチキャストアドレスが付与されたパケットに格納されて送信される。また、このマルチキャスト参加要求には、「生存時間(TTL:Time To Live)=1」が付与される。TTLは、データ転送過程において、そのデータを受信したゲートウェイ(ルータ)により1だけデクリメントされる。そして、データに付与されているTTLがゼロになると、そのデータは、それ以上は転送されない。したがって、TTL=1が設定されたマルチキャスト参加要求は、新規参加ノード装置3から1ホップの範囲内のノード装置により受信される。すなわち、新規参加ノード装置3から送信されるマルチキャスト参加要求は、ネットワークYの中の各ノード装置(図2では、参加ノード装置1C、1D)により受信される。
なお、このマルチキャスト参加要求は、ゲートウェイ4によっても受信される。但し、マルチキャスト参加要求のTTLは、ゲートウェイ4において1からゼロに更新される。したがって、マルチキャスト参加要求は、ネットワークXへ転送されることはない。
新規参加ノード装置3は、上述のマルチキャスト参加要求を送信するときに、タイマを起動する。このタイマは、新規参加ノード装置3とゲートウェイ4との間のRTTを計時する。そして、新規参加ノード装置3は、このタイマがタイムアウトするまで、マルチキャスト参加要求に対応する参加応答を待ち受ける。
マルチキャスト参加要求を受信した参加ノード装置は、それぞれ、その参加要求に対して応答するか否かを判定する。ここで、参加ノード装置は、新規参加ノード装置に対してストリームデータを配信できるときは、受信した参加要求に対して応答する。この場合、参加要求を受信した参加ノード装置は、新規参加ノード装置3へ参加応答を返送する。図3に示す例では、マルチキャスト参加要求を受信した参加ノード装置1C、1Dのうち、参加ノード装置1Dが新規参加ノード装置3へ参加応答を返送している。なお、参加ノード装置は、新規参加ノード装置に対してストリームデータを配信できないときは、受信した参加要求を廃棄する。また、ストリーム配信サービスに参加していないノード装置も、受信した参加要求を廃棄する。
新規参加ノード装置3は、上述のタイマがタイムアウトする前に、参加ノード装置1Dから参加応答を受信するものとする。ここで、このタイマは、上述したように、新規参加ノード装置3とゲートウェイ4との間のRTTを計時する。したがって、タイマがタイムアウトする前に新規参加ノード装置3が参加応答を受信したときは、新規参加ノード装置3は、ストリームデータを配信可能な参加ノード装置がゲートウェイ4よりも近くに存在すると判定する。この場合、新規参加ノード装置3は、参加応答を返送してきた参加ノード装置を特定し、その特定した参加ノード装置に対してストリーム配信要求を送信する。図3に示す例では、新規参加ノード装置3は、参加ノード装置1Dに対してストリーム配信要求を送信している。そして、参加ノード装置1Dは、ストリーム配信要求に応じて新規参加ノード装置3へのストリーム配信を開始する。
なお、新規参加ノード装置3は、タイマがタイムアウトする前に複数の参加応答を受信したときには、参加応答を最初に返送してきた参加ノード装置に対してストリーム配信要求を送信する。この場合、新規参加ノード装置3は、最も近くに存在する参加ノード装置からストリームデータを受信することができる。
このように、新規参加ノード装置3は、根ノード装置2にアクセスすることなく、新規参加ノード装置3の近くに位置する参加ノード装置からストリームデータを受信することができる。したがって、この方法によれば、多数のノード装置が同時にストリーム配信サービスへの参加を要求する場合であっても、根ノード装置の輻輳に起因するレスポンスの劣化は回避または抑制される。
この後、新規参加ノード装置3は、根ノード装置2へ接続情報を送信する。この接続情報は、ストリームデータの送信元ノードを識別する情報を含む。この実施例では、接続情報は、ノード装置1Dを識別する情報を含む。なお、ストリームデータの送信元のノード装置を「親ノード装置(または、親ノード)」と呼ぶことがある。例えば、新規参加ノード装置3の親ノード装置は参加ノード装置1Dであり、参加ノード装置1Dの親ノード装置は参加ノード装置1Cである。
図2〜図3に示す例では、新規参加ノード装置3は、タイマがタイムアウトする前に参加ノード装置から参加応答を受信する。これに対して、図4は、タイマがタイムアウトする前に新規参加ノード装置3が参加応答を受信できなかったときの動作を示している。
タイマがタイムアウトする前に新規参加ノード装置3が参加応答を受信できなかったときは、新規参加ノード装置3は、ストリームデータを配信可能な参加ノード装置が近くに存在していないと判定する。この場合、新規参加ノード装置3は、図4に示すように、根ノード装置2へユニキャスト参加要求を送信する。
根ノード装置2は、参加要求を受信すると、親候補ノード情報を生成して新規参加ノード装置3へ送信する。親候補ノード情報は、新規参加ノード装置3に対して親ノード装置として動作することが可能な参加ノード装置のリストを含む。すなわち、親候補ノード情報は、新規参加ノード装置3に対してストリームデータを配信可能な参加ノード装置のリストを含む。そうすると、新規参加ノード装置3は、親候補ノード情報においてリストアップされている参加ノード装置の中から1つの参加ノード装置を選択し、その選択した参加ノード装置に対してストリーム配信要求を送信する。これにより、新規参加ノード装置3は、その参加ノード装置からストリームデータを受信することができる。
このように、新規参加ノード装置3は、根ノード装置2に参加要求を送信して親候補ノード情報を取得する。ただし、新規参加ノード装置3は、所定時間内に参加応答を受信できなかったときに限って根ノード装置2へ参加要求を送信する。したがって、新規参加ノード装置からの参加要求に起因する根ノード装置2の輻輳は抑制される。
ところで、各参加ノード装置は、上述したように、新規参加ノード装置から受信する参加要求に対して応答するか否かを予め判定しておく。この判定は、新規参加ノード装置に対してストリームデータを配信できるか否かに基づく。
例えば、ノード装置のハードウェア資源(CPU、メモリなど)の能力が十分に高いときは、参加要求に対して応答すると判定される。ただし、ノード装置のハードウェア資源の使用率が高いときは、参加要求に対して応答しないと判定される。
参加ノード装置は、配信ツリーの構成に基づいて判定を行ってもよい。例えば、根ノード装置2から自ノードまでの間に存在する参加ノード装置の数が多いときは、参加要求に対して応答しないと判定される。配信ツリーの構成を表す配信ツリー情報は、図5に示すように、根ノード装置2から各参加ノード装置に通知される。根ノード装置2は、たとえば、配信ツリーの構成が変化したときに、更新された配信ツリー情報を各参加ノード装置に通知する。或いは、根ノード装置2は、定期的に配信ツリー情報を各参加ノード装置に通知してもよい。
また、根ノード装置2から配信されるストリームデータのヘッダには、中継ノード数をカウントするための中継数データが格納されている。ストリームデータが根ノード装置2から送信されるときは、中継数データはゼロである。この中継数データは、ストリームデータが参加ノード装置によって中継されるときに1ずつインクリメントされる。即ち、ストリームデータのヘッダに格納されている中継数データは、参加ノード装置1A、1B、1C、1Dにおいてそれぞれ、1、2、3、4にカウントアップされる。そして、各参加ノード装置は、この中継数データを利用して参加要求に対して応答するか否かを判定してもよい。例えば、参加ノード装置は、中継数が所定の閾値よりも大きいときは、参加要求に対して応答しないと判定する。
このように、各参加ノード装置は、参加要求に対して応答するか否かを予め決定しておく。また、各参加ノード装置は、自装置の動作状態、及び配信ツリーの構成の変化等に応じて、参加要求に対して応答するか否かを表す判定結果を更新する。図5に示す例では、参加ノード装置1A、1B、1Dは、参加要求に対して応答する状態(図5では「OK」と表記)にある。これに対して参加ノード装置1Cは、参加要求に対して応答しない状態(図5では、「NG」と表記)にある。
この場合、参加ノード装置1A、1B、1Dは、新規参加ノード装置から参加要求を受信すると、対応する参加応答を返送する。一方、参加ノード装置1Cは、新規参加ノード装置から参加要求を受信しても参加応答を返送しない。ただし、図2に示す例では、新規参加ノード装置3から送信されるマルチキャスト参加要求は、参加ノード装置1A、1Bには到達しない。よって、この例では、参加ノード装置1Dのみが新規参加ノード装置3に対して参加応答を返送する。
図6は、根ノード装置2の機能を示すブロック図である。根ノード装置2は、図6に示すように、ストリーム受信部11、ストリームバッファ12、ストリーム送信部13、管理パケット受信部14、参加ノード情報管理部15、配信ツリー情報生成部16、管理パケット送信部17を有する。なお、根ノード装置2は、図6に示していない他の機能を有していてもよい。
ストリーム受信部11は、ユーザから要求されたコンテンツに対応するストリームデータをコンテンツサーバから受信または取得する。そして、ストリーム受信部11は、受信または取得したストリームデータをストリームバッファ12に格納する。また、ストリーム送信部13は、ストリームバッファ12からストリームデータを読み出して参加ノード装置へ送信する。ストリーム送信部13は、中継数通知部13aを有する。中継数通知部13aは、ストリームデータのヘッダに格納されている中継数データに初期値(即ち、ゼロ)を設定する。
管理パケット受信部14は、参加ノード装置および新規参加ノード装置から管理パケットを受信する。例えば、図3に示す例では、管理パケット受信部14は、新規参加ノード装置3から接続情報を含む管理パケットを受信する。図4に示す例では、管理パケット受信部14は、新規参加ノード装置3からユニキャスト参加要求を含む管理パケットを受信する。さらに、管理パケット受信部14は、ストリーム配信要求を受信することもある。
参加ノード情報管理部15は、参加ノード装置を管理するために、ストリーム送信先管理部15a、参加ノード管理部15b、親候補情報生成部15cを有する。ストリーム送信先管理部15aは、ストリームデータの送信先ノードを識別する情報を格納する。ストリーム送信先管理部15aは、例えば、新規参加ノード装置から受信する接続情報またはユニキャスト参加要求に従って登録情報を更新する。参加ノード管理部15bは、ストリーム配信サービスに参加している各ノード装置に係わる情報を格納する。ノード装置に係わる情報は、例えば、ノード装置のハードウェア資源の能力を表す情報を含むようにしてもよい。親候補情報生成部15cは、新規参加ノード装置から受信する参加要求に応じて親候補ノード情報を生成する。このとき、親候補情報生成部15cは、ストリーム送信先管理部15aおよび参加ノード管理部15bと連携して親候補ノード情報を生成する。例えば、親候補情報生成部15cは、参加ノード装置の中からハードウェア資源の能力の高いノード装置を選択し、選択したノード装置を親候補ノード情報に登録してもよい。
配信ツリー情報生成部16は、配信ツリー情報を生成する。配信ツリー情報は、ストリーム配信サービスに参加しているノード装置の接続関係を表す。すなわち、配信ツリー情報は、根ノード装置2から各参加ノード装置へのストリームデータの配信経路を表す。ここで、配信ツリー情報生成部16は、参加ノード情報管理部15によって管理されている情報を利用して配信ツリー情報を生成する。なお、配信ツリー情報生成部16は、配信ツリーの構成が変化したときに配信ツリー情報を更新する。
管理パケット送信部17は、参加ノード装置および新規参加ノード装置へ管理パケットを送信する。例えば、図4に示す例では、管理パケット送信部17は、親候補ノード情報を含む管理パケットを新規参加ノード装置3へ送信する。この管理パケットは、親候補ノード通知部17aにより生成される。親候補ノード通知部17aは、親候補情報生成部15cにより生成される親候補ノード情報を含む管理パケットを生成する。また、図5に示す例では、管理パケット送信部17は、配信ツリー情報を含む管理パケットを各参加ノード装置へ送信する。この管理パケットは、配信ツリー通知部17bにより生成される。配信ツリー通知部17bは、配信ツリー情報生成部16により生成される配信ツリー情報を含む管理パケットを生成する。なお、管理パケット送信部17は、他の管理パケットを送信することもできる。
図7は、ノード装置の機能を示すブロック図である。ノード装置20は、図7に示すように、ストリーム受信部21、ストリームバッファ22、ストリーム送信部23、RTT測定部24、管理パケット受信部25、ノードスペック生成部26、応答判定部27、タイマ28、管理パケット送信部29、コントローラ30を有する。なお、ノード装置20は、図7に示していない他の機能を有していてもよい。また、ノード装置20は、参加ノード装置(または、新規参加ノード装置)として動作することができる。
ストリーム受信部21は、根ノード装置2または上流側の参加ノード装置からストリームデータを受信する。ストリーム受信部21は、中継数カウント部21aを有する。中継数カウント部21aは、受信したストリームデータのヘッダに格納されている中継数データを1だけインクリメントする。そして、ストリーム受信部21は、そのストリームデータをストリームバッファ22に格納する。ストリーム送信部23は、ストリームバッファ22からストリームデータを読み出して下流側の参加ノード装置へ送信する。ストリーム送信部23は、中継数通知部23aを有する。中継数通知部23aは、中継数カウント部21aにより更新された中継数データをストリームデータのヘッダに格納する。
なお、ノード装置20には、不図示の表示装置および/またはスピーカが接続されていてもよい。この場合、ストリームバッファ22に書き込まれたストリームデータに基づいて、動画像が表示装置に表示され、音声がスピーカを介して出力される。
RTT測定部24は、ノード装置20を収容するルータまたはゲートウェイとの間のRTTを測定する。図1に示す例では、RTT測定部24は、ゲートウェイ4との間のRTTを測定している。なお、RTT測定部24は、例えば、Pingを用いてRTTを測定してもよい。
管理パケット受信部25は、根ノード装置2または他のノード装置から管理パケットを受信する。管理パケット受信部25は、参加要求受信部25a、参加応答受信部25b、配信ツリー受信部25cを有する。参加要求受信部25aは、新規参加ノード装置から送信されるマルチキャスト参加要求を含む管理パケットを受信する。ただし、参加要求受信部25aは、後述する応答判定部27による判定結果に従って、受信した参加要求を受け入れるか否かを決定する。参加応答受信部25bは、マルチキャスト参加要求に対応する参加応答を含む管理パケットを受信する。ただし、後述するタイマ28がタイムアウトした後は、参加応答受信部25bは、参加応答を含む管理パケットを廃棄する。また、参加応答を含む複数の管理パケットを受信したときは、参加応答受信部25bは、最初の管理パケットを受け入れ、後続の管理パケットを廃棄する。配信ツリー受信部25cは、根ノード装置2から送信される配信ツリー情報を含む管理パケットを受信する。さらに、管理パケット受信部25は、親候補ノード情報を含む管理パケット、ストリーム配信要求を含む管理パケット等を受信する。
ノードスペック生成部26は、ノード装置20(すなわち、自装置)がストリームデータを配信できるか否かを判定するためのノードスペック情報を管理する。ここで、ノードスペック生成部26は、配信ツリー状態判定部26aおよびハードウェア状態判定部26bを含む。配信ツリー状態判定部26aは、根ノード装置2から受信する配信ツリー情報に基づいて、配信ツリーの状態を判定する。ハードウェア状態判定部26bは、ノード装置20のハードウェア資源の動作状態(CPUの負荷、メモリの空き領域など)を判定する。そして、配信ツリー状態判定部26aおよびハードウェア状態判定部26bによる判定結果は、ノードスペック情報として出力される。
応答判定部27は、ノードスペック生成部26により生成されるノードスペック情報に基づいて、新規参加ノード装置から送信されるマルチキャスト参加要求に対して応答するか否かを判定する。そして、応答判定部27の判定結果は、参加要求受信部25aに通知される。なお、応答判定部27による判定の実施例については、後述する。
タイマ28には、RTT測定部24により測定されたRTTが設定される。タイマ28は、管理パケット送信部29がマルチキャスト参加要求を含む管理パケットを送信したときに起動される。そして、タイマ28がタイムアウトすると、参加応答受信部25bおよび参加要求生成部29aにタイムアウト通知が与えられる。
管理パケット送信部29は、根ノード装置2および他のノード装置へ管理パケットを送信する。管理パケット送信部29は、参加要求生成部29a、参加応答生成部29b、ストリーム配信要求生成部29cを含む。参加要求生成部29aは、図2に示すマルチキャスト参加要求を含む管理パケットを所定の範囲内のノード装置へ送信する。すなわち、この管理パケットには、送信先アドレスとして所定の範囲を指定するマルチキャストアドレスが設定される。また、参加要求生成部29aは、この管理パケットに「TTL=1」を付与する。ただし、タイマ28からタイムアウト通知を受信したときは、参加要求生成部29aは、ユニキャスト参加要求を含む管理パケットを根ノード装置2へ送信する。参加応答生成部29bは、参加要求受信部25aが新規参加ノード装置から参加要求を受信して受け入れたときに、その参加要求に対応する参加応答を含む管理パケットを新規参加ノード装置へ送信する。
ストリーム配信要求生成部29cは、ストリーム配信要求を含む管理パケットを生成して親ノード装置へ送信する。たとえば、図2〜図3に示す例では、ストリーム配信要求生成部29cは、最初に参加応答を返送してきた参加ノード装置1Dへストリーム配信要求を含む管理パケットを送信している。また、図4に示す例では、ストリーム配信要求生成部29cは、親候補ノード情報に基づいて決定された親ノード装置に、ストリーム配信要求を含む管理パケットを送信する。なお、管理パケット送信部29は、他の管理パケットを送信してもよい。例えば、管理パケット送信部29は、図3に示す接続情報を含む管理パケットを根ノード装置2へ送信することができる。
コントローラ30は、ノード装置20の動作を制御する。また、コントローラ30は、ストリーム配信に係わる他の機能を提供する。例えば、コントローラ30は、根ノード装置2から受信する親候補ノード情報に基づいて親ノード装置を選択することができる。
図8は、新規参加ノード装置の動作を示すフローチャートである。このフローチャートの処理は、例えば、ユーザによりストリーム配信サービスへの参加が指示されたときに実行される。
S1において、RTT測定部24は、デフォルトゲートウェイのRTTを測定する。デフォルトゲートウェイは、当該ノード装置を収容するルータまたゲートウェイである。S2において、参加要求生成部29aは、所定範囲内のノード装置へマルチキャスト参加要求を送信する。マルチキャスト参加要求を含む管理パケットには「TTL=1」が設定される。よって、このマルチキャスト参加要求は、新規参加ノード装置から1ホップの範囲内のノード装置によって受信される。また、参加要求生成部29aは、マルチキャスト参加要求の送信時に、S3において、タイマ28を起動する。タイマ28は、S1で測定されたRTTが経過したときにタイムアウトする。
S4において、参加応答受信部25bは、S2で送信されたマルチキャスト参加要求に対応する参加応答を待ち受ける。そして、タイマ28がタイムアウトする前に参加応答受信部25bが参加応答を受信したときには、ノード装置の処理はS5に進む。S5において、コントローラ30は、親ノード装置を特定する。この場合、最初の参加応答の送信元ノード装置が親ノード装置として特定される。さらに、S6において、ストリーム配信要求生成部29cは、S5で特定された親ノード装置に対してストリーム配信要求を送信する。なお、参加応答受信部25bが2番目以降の参加応答を受信したときは、S9において、受信した参加応答は破棄される。
S7において、ストリーム受信部21は、ストリーム配信要求に対応するストリームデータを受信しているか否かを判定する。そして、ストリーム受信部21がストリームデータを受信しているときは、S8において、管理パケット送信部29は、接続情報を含む管理パケットを根ノード装置2へ送信する。この場合、接続情報は、ストリームデータの送信元ノード装置(すなわち、親ノード装置)を識別する情報を含む。一方、ストリーム受信部21がストリーム配信要求に対応するストリームデータを受信していないときは、ノード装置の処理はS2に戻る。
参加応答受信部25bが参加応答を受信する前にタイマ28がタイムアウトしたときには、S11〜S13の処理が実行される。S11において、参加要求生成部29aは、根ノード装置2へユニキャスト参加要求を送信する。この場合、根ノード装置2は、このユニキャスト参加要求に応じて親候補ノード情報を返送する。S12において、管理パケット受信部29は、根ノード装置2から送信される親候補ノード情報を受信する。そして、コントローラ30は、受信した親候補ノード情報に基づいて親ノード装置を選択する。この後、ノード装置の処理はS6へ進む。この場合、ストリーム配信要求生成部29cは、S13で選択された親ノード装置に対してストリーム配信要求を送信する。
図9は、参加ノード装置の動作を示すフローチャートである。このフローチャートの処理は、ノード装置がストリームデータを受信しているときに実行される。
S21において、ストリーム受信部21は、ストリームデータを受信する。S22において、中継数カウント部22は、受信したストリームデータのヘッダに格納されている中継数データを1だけインクリメントする。なお、受信したストリームデータは、ストリームバッファ22に書き込まれる。
S23において、配信ツリー受信部25cは、根ノード装置2から送信される配信ツリー情報を受信する。そして、配信ツリー状態判定部26aは、この配信ツリー情報に基づいて配信ツリーの状態を判定する。S24において、ハードウェア状態判定部26bは、当該ノード装置のハードウェア資源の動作状態(CPUの負荷、メモリの空き領域など)を判定する。そして、S25において、ノードスペック生成部26は、S24およびS25の判定結果をノードスペック情報として出力する。
S26において、応答判定部27は、ノードスペック生成部26により生成されるノードスペック情報に基づいて、新規参加ノード装置から送信されるマルチキャスト参加要求に対して応答するか否かを判定する。参加要求に対して応答すると判定したときは、S27において、応答判定部27は、応答フラグをONに設定する。応答フラグがONである状態は、当該ノード装置がストリームデータを配信できる状態を表す。すなわち、応答フラグがONである状態は、当該ノード装置が他のノード装置に対して親ノード装置となることをできる状態を表す。一方、参加要求に対して応答しないと判定したときは、S28において、応答判定部27は、応答フラグをOFFに設定する。なお、応答フラグがONに設定されているときには、参加要求受信部25aは、新規参加ノード装置から受信するマルチキャスト参加要求を待ち受ける。そして、参加要求受信部25aは、マルチキャスト参加要求を受信したときは、その参加要求を受け入れる。一方、応答フラグがOFFに設定されているときは、参加要求受信部25aは、新規参加ノード装置から受信する参加要求を破棄する。
S31において参加要求受信部25aが新規参加ノード装置からマルチキャスト参加要求を受信すると、S32において、参加応答生成部29bは、そのマルチキャスト参加要求に対応する参加応答を生成する。この参加応答は、マルチキャスト参加要求の送信元ノード装置(すなわち、新規参加ノード装置)に返送される。なお、この参加応答は、図8に示すフローチャートのS4において新規参加ノード装置によって受信される。そうすると、新規ノード装置は、S6においてストリーム配信要求を生成する。
S33において、管理パケット受信部25は、新規参加ノード装置により生成されるストリーム配信要求を受信する。そうすると、S34において、ストリーム送信部23は、ストリームバッファ22に格納されているストリームデータを新規参加ノード装置へ送信する。
図10は、新規参加ノード装置の近くにストリームデータを配信可能な参加ノード装置が存在するときの映像配信システムのシーケンスを示す。このシーケンスは、図1〜図3に示す実施例に対応する。
新規参加ノード装置3は、ゲートウェイ4との間のRTTを測定する。続いて、新規参加ノード装置3は、ネットワークYに属するノード装置に対してマルチキャスト参加要求を送信する。このとき、タイマ28が起動される。そして、このマルチキャスト参加要求は、参加ノード装置1C、1Dにより受信される。ここで、この実施例では、参加ノード装置1C、1Dは、参加要求に対して応答する状態に設定されているものとする。そうすると、参加ノード装置1C、1Dは、それぞれ、新規参加ノード装置3に参加応答を返送する。
新規参加ノード装置3は、タイマ28がタイムアウトする前に、参加ノード装置1C、1Dからそれぞれ返送されてくる参加応答を受信する。この例では、新規参加ノード装置3は、参加ノード装置1Dから送信された参加応答を最初に受信し、その後、参加ノード装置1Cから送信された参加応答を受信する。この場合、新規参加ノード装置3は、ストリームデータを配信可能なノード装置のうちで、参加ノード装置1Dが最も新規参加ノード装置3の近くに位置していると判定する。そうすると、新規参加ノード装置3は、参加ノード装置1Dへストリーム配信要求を送信する。そして、参加ノード装置1Dは、新規参加ノード装置3へのストリームデータの配信を開始する。更に、新規参加ノード装置3は、参加ノード装置1Dが親ノード装置であることを表す接続情報を根ノード装置2へ送信する。根ノード装置2は、この接続情報に応じて配信ツリー情報を更新する。
この後、根ノード装置2は、各参加ノード装置(新規参加ノード装置3を含む)へ配信ツリー情報を送信する。そうすると、新規参加ノード装置3は、その配信ツリー情報および新規参加ノード装置3のハードウェア資源の動作状態に基づいて、参加要求に対して応答するか否かを判定する。そして、参加要求に対して応答するときは、新規参加ノード装置3は、他のノード装置から送信されてくるマルチキャスト参加要求を待ち受ける。
図11は、新規参加ノード装置の近くにストリームデータを配信可能な参加ノード装置が存在しないときの映像配信システムのシーケンスを示す。このシーケンスは、図1、図2、図4に示す実施例に対応する。
RTTを測定する動作およびマルチキャスト参加要求を送信する動作は、図10および図11において同じである。ただし、図11に示す例では、新規参加ノード装置3は、タイマ28がタイムアウトするまでに参加応答を受信できていない。この場合、新規参加ノード装置3は、根ノード装置2へユニキャスト参加要求を送信する。そうすると、根ノード装置2は、親候補ノード情報を生成して新規参加ノード装置3へ返送する。
新規参加ノード装置3は、根ノード装置2から受信する親候補ノード情報に基づいて親ノード装置を選択する。この例では、参加ノード装置1Bが親ノード装置として選択されている。そうすると、新規参加ノード装置3は、参加ノード装置1Bへストリーム配信要求を送信する。そして、参加ノード装置1Bは、新規参加ノード装置3へのストリームデータの配信を開始する。この後の動作は、図10および図11において実質的に同じなので、説明を省略する。
次に、参加ノード装置がマルチキャスト参加要求に対して応答するか否かを判定する方法を説明する。この判定は、上述したように、応答判定部27により行われる。
図12に示す例では、ノード装置のスペックに基づいて判定が行われる。ノード装置のスペックは、ノード装置のハードウェアの能力および動作状態などを表す。この例では、下記の6つの項目が考慮される。この場合、項目(2)(3)(4)(6)は、例えば、定期的に検出されるものとする。
(1)CPUの能力
(2)メモリの空き領域
(3)HDDの空き領域
(4)CPUの負荷(使用率)
(5)LANインタフェースの通信速度
(6)パケットロス率
上記6項目のうちの1以上の項目において「低」と判定されるときは、応答判定部27は、応答フラグをOFFに設定する。「低」と判定される項目がないときは、応答判定部27は、応答フラグをONに設定する。この方法によれば、新規参加ノード装置は、ハードウェア資源の余力が大きいノード装置に接続されやすくなる。
また、応答判定部27は、自装置の配信状態に応じて上述の判定を行ってもよい。たとえば、子ノードの数(すなわち、配信先ノードの数)が閾値(例えば、3)に達していれば、応答判定部27は、応答フラグをOFFに設定する。この方法によれば、新規参加ノード装置は、子ノードの数が少ないノード装置に接続されやすくなる。
さらに、応答判定部27は、根ノード装置から受信する配信ツリー情報に基づいて上述の判定を行ってもよい。例えば、図13(a)に示す配信ツリーを表す配信ツリー情報が根ノード装置から各参加ノード装置に送信されるものとする。そして、各ノード装置の応答判定部27は、根ノード装置から自ノードまでの経路の中継数と配信ツリー内の最小中継数との差分が閾値(例えば、5)に達していれば、応答フラグをOFFに設定する。最小中継数は、根ノード装置から各配信経路の最下流ノードまでの間の中継数のうちの最小値を表すものとする。図13(a)に示す例では、最小中継数は、中継ノードAにおいて検出される「1」である。ここで、ノードIにおいて検出される中継数は「6」である。この場合、ノードIの応答判定部27は、応答フラグをOFFに設定する。この方法によれば、新規参加ノード装置は、短い配信経路上のノード装置に接続されやすくなる。
応答判定部27は、配信ツリー情報に基づいて、ルータの配下のネットワーク毎に上述の判定を行ってもよい。例えば、図13(b)に示す配信ツリーを表す配信ツリー情報が根ノード装置から各参加ノード装置に送信されるものとする。そして、各ノード装置の応答判定部27は、自ノードが属するネットワーク内での上流側のノード数が閾値(たとえば、3)に達しており、かつ、自ノードが属するネットワーク内の上流側のノードが子ノードの受け入れが可であれば、応答フラグをOFFに設定する。図13(b)に示す配信ツリーにおいては、ノードE、F、G、Hが同じネットワークに属している。ここで、ノードHの上流側には3個の中継ノードが存在する。さらに、親候補ノード情報にノードE、F、Gのいずれかが登録されている場合、ノードHの応答判定部27は、応答フラグをOFFに設定する。この方法によれば、上流側のノード装置に新規参加ノード装置が接続されやすくなり、配信動作が安定する。
<他の実施例>
上述の実施例では、タイマを用いて新規参加ノード装置3とゲートウェイ4との間のRTTを計時することにより、親ノード装置として、ゲートウェイ4よりも近くに位置する参加ノード装置がサーチされる。しかしながら、本発明は、この方法に限定されるものではない。すなわち、タイマ28は、予め指定された所定時間を計時してもよい。この方法であっても、所定時間を適切に決定すれば、新規参加ノード装置3は、近接する参加ノード装置からストリームデータを受信することができる。
また、新規参加ノード装置は、親ノード装置をサーチする際に、タイマを使用しなくてもよい。例えば、新規参加ノード装置は、マルチキャスト参加要求を送信した後、最初に参加応答を返送してきた参加ノード装置を親ノード装置と決定してもよい。
更に、上述の実施例では、マルチキャスト参加要求に「TTL=1」が付与されるが、本発明は、この方法に限定されるものではない。すなわち、マルチキャスト参加要求にTTLが設定されていなくてもよい。なお、マルチキャスト参加要求にTTLが設定されていない場合、新規参加ノード装置は、新規参加ノード装置から2ホップ以上離れた位置にある参加ノード装置から参加応答を受信し得る。しかしながら、新規参加ノード装置は、複数の参加応答を受信したときは、最初に受信した参加応答に基づいて親ノード装置を決定する。よって、新規参加ノード装置から2ホップ以上離れた位置にある参加ノード装置は、親ノード装置として選択される可能性は低い。
<ノード装置のハードウェア構成>
図14は、本発明の実施形態に係わるノード装置(根ノード装置、参加ノード装置、新規参加ノード装置)のハードウェア構成の一例を示す。ノード装置は、図14に示すコンピュータシステム100を含む。コンピュータシステム100は、CPU101、メモリ102、記憶装置103、読み取り装置104、通信インタフェース106、および入出力装置107を備える。CPU101、メモリ102、記憶装置103、読み取り装置104、通信インタフェース106、入出力装置107は、例えば、バス108を介して互いに接続されている。
CPU101は、メモリ102を利用して、図8または図9に示すフローチャートの処理を記述した配信制御プログラムを実行する。これにより、上述した映像配信方法が実現される。メモリ102は、例えば半導体メモリであり、RAM領域およびROM領域を含んで構成される。記憶装置103は、例えばハードディスク装置であり、上述の配信制御プログラムを格納する。また、記憶装置103は、ストリームデータを格納してもよい。なお、記憶装置103は、フラッシュメモリ等の半導体メモリであってもよい。また、記憶装置103は、外部記録装置であってもよい。
読み取り装置104は、CPU101の指示に従って着脱可能記録媒体105にアクセスする。着脱可能記録媒体105は、例えば、半導体デバイス(USBメモリ等)、磁気的作用により情報が入出力される媒体(磁気ディスク等)、光学的作用により情報が入出力される媒体(CD−ROM、DVD等)などにより実現される。通信インタフェース106は、CPU101の指示に従ってネットワークを介してデータを送信および受信することができる。入出力装置107は、ユーザからの指示を受け付けるデバイス、ストリームデータを出力するデバイスなどを含む。
実施形態の配信制御プログラムは、例えば、下記の形態でコンピュータシステム100に提供される。
(1)記憶装置103に予めインストールされている。
(2)着脱可能記録媒体105により提供される。
(3)プログラムサーバ110から提供される。
1A〜1D 参加ノード装置
2 根ノード装置
3 新規参加ノード装置
4 ゲートウェイ
24 RTT測定部
27 応答判定部
28 タイマ
29a 参加要求生成部
29b 参加応答生成部
29c ストリーム配信要求生成部
200 映像配信システム

Claims (8)

  1. ノード装置に対してストリーム配信サービスを提供する映像配信システムであって、
    前記ストリーム配信サービスに新たに参加する新規参加ノード装置は、所定の範囲内のノード装置に対して第1の参加要求を送信し、
    前記第1の参加要求を受信したノード装置は、前記ストリーム配信サービスを提供できるときは、前記第1の参加要求に対応する参加応答を前記新規参加ノード装置へ返送し、
    前記新規参加ノード装置は、前記第1の参加要求に対応する参加応答を最初に返送してきたノード装置に対してストリーム配信要求を送信し、
    前記新規参加ノード装置は、前記第1の参加要求を送信したときから所定時間内に前記参加応答を受信しないときは、前記ストリーム配信サービスの配信状態を管理する根ノード装置に対して第2の参加要求を送信し、
    前記根ノード装置は、前記第2の参加要求に基づいて、前記ストリーム配信サービスを提供するノード装置を表す候補ノード情報を前記新規参加ノード装置へ返送し、
    前記新規参加ノード装置は、前記候補ノード情報に基づいて親ノード装置を決定し、決定した親ノード装置に対してストリーム配信要求を送信する
    ことを特徴とする映像配信システム。
  2. 前記新規参加ノード装置は、TTL(Time To Live)が1である範囲内のノード装置に対して前記第1の参加要求を送信する
    ことを特徴とする請求項1に記載の映像配信システム。
  3. 前記所定時間は、前記新規参加ノード装置と前記新規参加ノード装置を収容するルータまたはゲートウェイとの間の往復遅延時間である
    ことを特徴とする請求項に記載の映像配信システム。
  4. 前記ストリーム配信サービスのストリームデータを受信するノード装置は、自ノード装置の動作状態に基づいて、前記第1の参加要求を受け付けるか否かを判定する
    ことを特徴とする請求項1に記載の映像配信システム。
  5. 前記ストリーム配信サービスのストリームデータを受信するノード装置は、前記ストリームデータが流れる経路を表す配信ツリーの状態に基づいて、前記第1の参加要求を受け付けるか否かを判定する
    ことを特徴とする請求項1に記載の映像配信システム。
  6. ノード装置に対してストリーム配信サービスを提供する映像配信システムにおいて使用されるノード装置であって、
    所定の範囲内のノード装置に対して第1の参加要求を送信する参加要求生成部と、
    前記ストリーム配信サービスを提供可能なノード装置から前記第1の参加要求に対応する参加応答を受信する参加応答受信部と、
    前記第1の参加要求に対応する参加応答を最初に返送してきたノード装置に対してストリーム配信要求を送信する配信要求生成部と、を備え、
    前記参加要求生成部が前記第1の参加要求を送信したときから所定時間内に前記参加応答受信部が前記参加応答を受信しないときは、前記参加要求生成部は、前記ストリーム配信サービスの配信状態を管理する根ノード装置に対して第2の参加要求を送信し、
    前記新規参加ノード装置は、前記根ノード装置により前記第2の参加要求に応じて送信される、前記ストリーム配信サービスを提供するノード装置を表す候補ノード情報に基づいて親ノード装置を決定し、決定した親ノード装置に対してストリーム配信要求を送信する
    ことを特徴とするノード装置。
  7. ノード装置に対してストリーム配信サービスを提供する配信方法であって、
    前記ストリーム配信サービスに新たに参加する新規参加ノード装置から所定の範囲内のノード装置に対して第1の参加要求を送信し、
    前記第1の参加要求を受信したノード装置が前記ストリーム配信サービスを提供できるときには、前記第1の参加要求を受信したノード装置から前記新規参加ノード装置へ前記第1の参加要求に対応する参加応答を返送し、
    前記新規参加ノード装置から前記第1の参加要求に対応する参加応答を最初に返送してきたノード装置に対してストリーム配信要求を送信し、
    前記新規参加ノード装置は、前記第1の参加要求を送信したときから所定時間内に前記参加応答を受信しないときは、前記ストリーム配信サービスの配信状態を管理する根ノード装置に対して第2の参加要求を送信し、
    前記根ノード装置は、前記第2の参加要求に基づいて、前記ストリーム配信サービスを提供するノード装置を表す候補ノード情報を前記新規参加ノード装置へ返送し、
    前記新規参加ノード装置は、前記候補ノード情報に基づいて親ノード装置を決定し、決定した親ノード装置に対してストリーム配信要求を送信する
    ことを特徴とする配信方法。
  8. ノード装置に対してストリーム配信サービスを提供する映像配信システムにおいて、前記ストリーム配信サービスに新たに参加する新規参加ノード装置に実装されるプロセッサに、
    所定の範囲内のノード装置に対して第1の参加要求を送信し、
    前記ストリーム配信サービスを提供可能なノード装置から前記第1の参加要求に対応する参加応答を受信し、
    前記第1の参加要求に対応する参加応答を最初に返送してきたノード装置に対してストリーム配信要求を送信し、
    前記新規参加ノード装置が前記第1の参加要求を送信したときから所定時間内に前記参加応答を受信しないときに、前記ストリーム配信サービスの配信状態を管理する根ノード装置に対して第2の参加要求を送信し、
    前記根ノード装置により前記第2の参加要求に応じて送信される、前記ストリーム配信サービスを提供するノード装置を表す候補ノード情報に基づいて親ノード装置を決定し、決定した親ノード装置に対してストリーム配信要求を送信する
    処理を実行させる配信制御プログラム。
JP2014002312A 2014-01-09 2014-01-09 映像配信システム及び映像配信システムにおいて使用されるノード装置 Active JP6369024B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014002312A JP6369024B2 (ja) 2014-01-09 2014-01-09 映像配信システム及び映像配信システムにおいて使用されるノード装置
US14/542,759 US20150195360A1 (en) 2014-01-09 2014-11-17 Streaming system and node device used in streaming system
CN201410804514.2A CN104780151B (zh) 2014-01-09 2014-12-19 流传送系统及在流传送系统中使用的节点装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014002312A JP6369024B2 (ja) 2014-01-09 2014-01-09 映像配信システム及び映像配信システムにおいて使用されるノード装置

Publications (2)

Publication Number Publication Date
JP2015133529A JP2015133529A (ja) 2015-07-23
JP6369024B2 true JP6369024B2 (ja) 2018-08-08

Family

ID=53496117

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014002312A Active JP6369024B2 (ja) 2014-01-09 2014-01-09 映像配信システム及び映像配信システムにおいて使用されるノード装置

Country Status (3)

Country Link
US (1) US20150195360A1 (ja)
JP (1) JP6369024B2 (ja)
CN (1) CN104780151B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115174653B (zh) * 2022-07-07 2024-01-30 苏州磐联集成电路科技股份有限公司 节点配对方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233540A1 (en) * 2002-06-13 2003-12-18 International Business Machines Corporation System and method for secured delivery of content stream across multiple channels
JP4181951B2 (ja) * 2002-09-27 2008-11-19 松下電器産業株式会社 コンテンツ配信システム
US7174385B2 (en) * 2004-09-03 2007-02-06 Microsoft Corporation System and method for receiver-driven streaming in a peer-to-peer network
US7664109B2 (en) * 2004-09-03 2010-02-16 Microsoft Corporation System and method for distributed streaming of scalable media
WO2008038280A2 (en) * 2006-09-28 2008-04-03 Rayv Inc. System and methods for peer-to-peer media streaming
US7630370B2 (en) * 2007-02-28 2009-12-08 Sharp Laboratories Of America, Inc. Overlay join latency reduction using preferred peer list
CN101355473B (zh) * 2007-07-27 2010-09-22 华为技术有限公司 移动自组网资源发布与查找方法及移动自组网络节点设备
US20090164576A1 (en) * 2007-12-21 2009-06-25 Jeonghun Noh Methods and systems for peer-to-peer systems
US8422497B2 (en) * 2008-10-16 2013-04-16 Soongsil University Research Consortium Techno-Park Method for configuring and managing multicast data delivery path in mobile ad-hoc network and multicast data delivery system using the same
KR101027500B1 (ko) * 2008-10-30 2011-04-06 주식회사 카뮤즈 세션수에 의해 p2p의 트리구조를 형성하는 p2p방식 인터넷 라이브 방송 서비스 시스템 및 방법
CN101420434B (zh) * 2008-12-03 2011-12-28 深圳市众方信息科技有限公司 一种支持VoIP通信的P2P方法
US8204915B2 (en) * 2009-02-13 2012-06-19 Alcatel Lucent Apparatus and method for generating a database that maps metadata to P2P content
CN102223387A (zh) * 2010-04-16 2011-10-19 中国移动通信集团公司 资源调度方法及系统、接入节点、入口服务器
CN101931656B (zh) * 2010-09-16 2012-11-21 武汉大学 一种isp友好的分布式服务节点选择和更新方法
JP5732919B2 (ja) * 2011-03-04 2015-06-10 富士通株式会社 データ配信システム,ノード,及びデータ配信方法
US20120270576A1 (en) * 2011-04-22 2012-10-25 Intuitive Research And Technology Corporation System and method for partnered media streaming
TWI441541B (zh) * 2011-04-26 2014-06-11 Ind Tech Res Inst 對等網路中回饋式同儕選擇方法與裝置
US8995338B2 (en) * 2011-05-26 2015-03-31 Qualcomm Incorporated Multipath overlay network and its multipath management protocol
CN102970312A (zh) * 2011-09-01 2013-03-13 中兴通讯股份有限公司 基于p2p的无盘设备的网络启动方法及系统
CN102547590B (zh) * 2011-12-23 2014-12-24 北京邮电大学 一种蜂窝网络下基于业务内容相关度的直连通信用户对配对方法
CN102946325B (zh) * 2012-11-14 2015-06-03 中兴通讯股份有限公司 一种基于软件定义网络的网络诊断方法、系统及设备
CN103023826B (zh) * 2012-12-26 2015-06-10 华中科技大学 一种OpenFlow控制器的路由控制方法

Also Published As

Publication number Publication date
JP2015133529A (ja) 2015-07-23
CN104780151A (zh) 2015-07-15
CN104780151B (zh) 2018-09-04
US20150195360A1 (en) 2015-07-09

Similar Documents

Publication Publication Date Title
JP4951717B2 (ja) バックアップリソースを選択する方法、システム
Neumann et al. An evaluation of bmx6 for community wireless networks
KR20140049612A (ko) 하이브리드 네트워크들에서의 통신 경로 정보 제공
JP6540892B2 (ja) 無線ピアツーピアネットワーク内のデバイス、無線通信システム及び制御方法
JP5011433B2 (ja) 他のペアの近傍にあるペアグループを決定する方法、関連するサーバ及び解析装置
TW201729568A (zh) 網路系統及建立資料連線的方法
Ippisch et al. Infrastructure mode based opportunistic networks on android devices
JP6256343B2 (ja) ネットワーク、ネットワークノード、配信方法及びネットワークノード用プログラム
JP6369024B2 (ja) 映像配信システム及び映像配信システムにおいて使用されるノード装置
JP2017017630A (ja) 接続方法、通信装置、通信システム、および、通信プログラム
JP6191466B2 (ja) 映像配信システム及び映像配信システムにおいて使用されるノード装置
JP5662779B2 (ja) 通信システム及びノード装置
JP6178113B2 (ja) 通信システム
JP2011124710A (ja) 接続先選択装置、接続先選択方法
JP5673268B2 (ja) 通信装置、およびプログラム
JP2012186577A (ja) データ配信システム,ノード,及びデータ配信方法
JP6348377B2 (ja) コンテンツ配信ネットワークの通信装置及びプログラム
JP2016046785A (ja) キャッシュサーバ選択装置、分散キャッシュシステム、及びキャッシュサーバ選択方法
JP6062743B2 (ja) 配信ツリー構築方法、端末管理サーバ及びコンテンツ配信システム
CN116723195B (zh) 数据传输方法、装置、电子设备及存储介质
JP5817724B2 (ja) コンテンツ配信システム、コンテンツ配信装置、コンテンツ配信方法およびプログラム
JP2012165236A (ja) コンテンツ配信システム、および、コンテンツ配信方法
KR101131903B1 (ko) 피어투피어 가용대역폭 기반 오버레이 멀티캐스트 트리 구성방법 및 이를 수행하는 노드
JP6081322B2 (ja) 転送したコンテンツを保存する通信装置
JP6310264B2 (ja) コンテンツ配信システム及びアドレス情報通知サーバ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180202

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180625

R150 Certificate of patent or registration of utility model

Ref document number: 6369024

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150