JP2004140745A - Stream relay control method, device, and program - Google Patents
Stream relay control method, device, and program Download PDFInfo
- Publication number
- JP2004140745A JP2004140745A JP2002305707A JP2002305707A JP2004140745A JP 2004140745 A JP2004140745 A JP 2004140745A JP 2002305707 A JP2002305707 A JP 2002305707A JP 2002305707 A JP2002305707 A JP 2002305707A JP 2004140745 A JP2004140745 A JP 2004140745A
- Authority
- JP
- Japan
- Prior art keywords
- stream
- content
- upstream
- server
- stream server
- 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.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、大規模なストリーム配信ネットワークサービスにおいて、上流ストリームサーバ、回線、もしくはネットワークの状態を監視して、上流故障時の配信制御を効率的に実現するためのストリーム中継制御方法および装置に関する。
【0002】
【従来の技術】
従来、インターネット上でのストリーム配信を行う場合、一般的には、ストリームコンテンツの要求および設定を行うストリーム設定プロトコル、設定に基づいて、ストリームコンテンツを配信するストリーム配信プロトコル、および、配信中のストリームコンテンツパケットの配信状況や配信品質の通知、サーバ−クライアント間の接続性状態の通知を行うストリーム制御プロトコルが用いられる。IETF(Internet Engineering Task Force)で規定されるプロトコルとしては、RTSP(Real Time Streaming Protocol:RFC2326)、RTP(Real−time Transport Protocol:RFC1889)、および、RTCP(RTP Control Protocol:RFC1889)があげられる。また、これら以外のプロトコルを用いてストリーム配信を行う際にも、上記機能を持ったプロトコルが利用されている。例として、Microsoft社のMMSプロトコル、Real Network社のRDT,PNAプロトコルなどがあげられる。
【0003】
一般的に、インターネット上のストリーム配信は、汎用のPCサーバ上のサーバアプリケーションにこれらのストリームプロトコルを実装することで実現されている。そのため、長時間配信を続けた際に、サーバアプリケーションがデッドロックを起こして停止してしまったり、当該アプリケーションからのパケットの送信が不安定になってしまい、クライアントユーザでのストリーム視聴が途絶えてしまうことが多かった。また、インターネットでの配信を行うため、ネットワークやネットワーク装置が故障してしまい、上流のストリームサーバからのストリームパケットが途絶えてしまい、同様にクライアントユーザのストリーム視聴が切断されてしまうことも多かった。
【0004】
上記の場合において、ストリーム視聴ユーザに対して、視聴不可時間をできる限り低減するために、これまでは、クラスタリング技術、あるいは、ロードバランス技術により、ストリーム配信可能なストリームサーバに接続する手法が取られていた(例えば非特許文献1参照)。図3に示した従来のストリーム中継網の構成を参照して説明する。
【0005】
ストリーム中継網はクライアント101,102とストリーム中継制御装置200,201と上流ストリームサーバ301,302と接続振り分け装置401,402から構成される。接続振り分け装置401,402は一般にはロードバランサーまたはL4/L7スイッチと呼ばれる。また、複数のサーバを仮想的に一つのサーバとして扱うようにするクラスタ装置も同様の機能を有している。このクラスタ装置をハードウェアでなく、ソフトウェアにて実現する手法もある。
【0006】
通常のストリーム配信では、クライアント101または102から視聴したいコンテンツに対する視聴要求情報が送信され、その情報は接続振り分け装置401にて、いずれかのストリーム中継制御装置200または201に転送される。当該中継制御装置は、該情報を処理し、当該コンテンツを配信している上流ストリームサーバに視聴要求情報を送信する。その情報を接続振り分け装置402にて、いずれかの上流ストリームサーバ301または302に転送する。当該上流ストリームサーバでは、該情報を処理し、ストリーム中継制御装置201または202へストリームパケットを送信し、該ストリーム中継制御装置で、視聴要求を行ったクライアントに該ストリームパケットを送信することで、ストリーム配信が行われる。
【0007】
ストリーム配信中に、当該コンテンツを配信中のストリームサーバアプリケーションが停止した場合、当該コンテンツの視聴が切断される。その後、クライアントから再度視聴要求が送信され、接続振り分け装置401、ストリーム中継制御装置200または201を経由して、接続振り分け装置402へ該要求が到着する。接続振り分け装置402は、ストリームサーバアプリケーションが停止していることを検知し、停止していない上流ストリームサーバへ該要求を転送する。該要求を受信した上流ストリームサーバは、該情報を処理し、ストリームパケットを送信することで、引き続きストリーム視聴が行われる。
【0008】
【非特許文献1】
Tony Bourke 「サーバ負荷分散技術」、オライリージャパン、2001
【0009】
【発明が解決しようとする課題】
上述した従来の技術では、接続振り分け装置にてクライアント、あるいは、ストリーム中継制御装置からの視聴要求情報を振り分ける必要があった。このような処理を行うためには装置で要求情報を解析する機能が必要であり、高価なシステムにより実現する必要があるという問題が生じていた。また、処理負荷が高く、かつ、上流ストリームサーバ等からのストリームパケットを多量に処理する必要もあるため、一つのストリームサーバからのストリーム送信可能能力が1Gbps程度の大規模なものである場合には、接続振り分け装置を適用するのは非常に困難であるという問題も生じていた。
【0010】
また、従来の技術では、接続振り分け装置もしくは振り分けソフトウェアにおいて、通信のためのIPアドレス、ポート番号を書き換えて、ストリーム中継制御装置あるいはストリームサーバに該要求情報を転送する必要があり、その処理負荷が大きいという問題とともに、アドレスを書き換えてしまうことによる通信の不整合が発生する可能性があるという問題も生じていた。
【0011】
さらに、従来の技術では、ストリームサーバのサービス停止、ネットワーク切断等が起きない限り、接続振り分け装置もしくは振り分けソフトウェアでは、当該サービスの故障を検知することがでできないため、該ストリームサーバからのパケット送出間隔が、長時間配信し続けることにより変動してしまい、クライアントでの視聴品質が劣化したとしても、当該技術では対応することができず、視聴品質が劣化したサービスを続けなければならないという問題も生じていた。
【0012】
本発明の目的は、大規模なストリーム配信ネットワークサービスにおいて、上流ストリームサーバ、回線、もしくは、ネットワークの状態を監視して、上流故障時の配信制御を効率的に実現するストリーム中継制御方法、装置、およびプログラムを提供することにある。
【0013】
【課題を解決するための手段】
上記目的を達成するため、本発明のストリーム中継制御方法では、クライアントからストリームコンテンツ視聴要求情報が送出されると、当該コンテンツを配信している上流ストリームサーバにコネクションを接続し、その後、上流ストリームサーバ、もしくは回線、ネットワークの故障を検知すると、当該コンテンツを視聴しているクライアントに対して当該コンテンツが視聴不可であることを通知し、再度、クライアントからコンテンツ視聴要求があった際に、故障が検知された上流ストリームサーバ以外の、当該コンテンツを配信している上流ストリームサーバへコネクションを切り替えて接続することで、当該コンテンツの配信を行う。
【0014】
したがって、ストリーム中継制御装置において、上流ストリームサーバ、回線、もしくは、ネットワークの状態を監視して、上流故障時の配信制御を効率的に実現することが可能となる。
【0015】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して説明する。
[第1の実施の形態]
図1は本発明の一実施形態のストリーム中継網の構成を示す図である。図1に示すように、ストリーム中継網はクライアント101,102とストリーム中継制御装置200と上流ストリームサーバ301,302と回線201a、201b、201cにより構成される。本実施形態では、ストリーム中継制御装置、上流ストリームサーバは1対しかないが、それぞれが多段に接続される場合も同様であることは言うまでもない。
【0016】
図2はストリーム中継制御装置200の構成例を示す図である。図2に示すように、ストリーム中継制御装置200は回線終端部202a、200bとパケット振り分け部203a、203bとリクエストパケット解析部204とコネクション制御処理部205とコネクション管理部206とパケット受信管理部207とコネクション切替処理部208と共通メモリ209から構成される。
【0017】
回線終端部202aはクライアント101または102から送信された、ストリームコンテンツの視聴要求情報を含むパケットを受信する。パケット振り分け部203aは回線終端部202aにて受信されたパケットを解析し、リクエストパケットの場合、視聴要求情報をリクエストパケット解析部204に通知する。リクエストパケット解析部204は視聴要求情報を解析して、視聴したいストリームコンテンツを同定し、コネクション制御処理部205に通知し、またコネクション切替処理部208から通知されたストリームサーバ情報をもとにして当該コンテンツの視聴要求を上流ストリームサーバ301または302に送信する。コネクション制御処理部205はリクエストパケット解析部204から通知されたストリームコンテンツを元に、上流ストリームサーバ301または302へコネクションを接続し、該コンテンツ視聴要求情報を送信し、その際、当該コンテンツを配信する上流ストリームサーバを同定するために、コネクション切替処理部208に問い合せを行う。回線終端部202bは上流ストリームサーバ301または302からパケットを受信する。パケット振分部203bは回線終端部202bで受信されたパケットを解析し、制御コネクション切断情報を含んでいた場合、その旨をコネクション管理部206に通知する。コネクション管理部206はパケット振分部203bからの通知により、コンテンツを配信していた上流ストリームサーバ301または302がコンテンツを配信することができなくなったと判断し、コネクションの切替を行う旨をコネクション切替処理部208に通知する。パケット受信管理部207は共通メモリ209から通知されたパケットが書きこまれた時刻を元にストリームパケットの受信間隔を算出し、該間隔をパケット不到着許容時間と比較し受信間隔の方が大きい場合、ストリーム配信故障と判断し、コネクション切替処理部208にその旨を通知する。コネクション切替処理部208はコネクション管理部206からの情報を元に、接続すべき上流ストリームサーバを決定し、コネクション制御処理部205に通知し、また、コネクション管理部206からの情報を元に、コンテンツを配信する際に接続する上流ストリームサーバの切替先をコネクション制御処理部205に通知する。共通メモリ209はクライアントからのパケットおよび上流ストリームサーバからのストリームパケットを格納する。
【0018】
本実施形態の処理の流れについて以下に説明する。
【0019】
(ストリーム配信処理)
クライアント101からストリームコンテンツの視聴要求情報を含むパケットがストリーム中継制御装置200に到着し、回線終端部202aで受信される。パケット振り分け部203aは回線終端部202aにて受信されたパケットを解析し、該パケットがリクエストパケットであると同定し、視聴要求をリクエストパケット解析部204に通知する。リクエストパケット解析部204は視聴要求情報を解析することにより、視聴したいストリームコンテンツを同定し、コネクション制御処理部205に当該情報を通知する。コネクション制御処理部205は、当該情報を元に、上流ストリームサーバへコネクションを接続し、当該コンテンツの視聴要求情報を送信する。その際、当該コンテンツを配信する上流ストリームサーバを同定するために、コネクション制御処理部205はコネクション切替処理部208に問い合わせを行う。コネクション切替処理部208は、当該情報を元に、接続すべき上流ストリームサーバを決定する。本実施形態では、当該コンテンツを配信する上流ストリームサーバが事前に定められているものとし、当該設定に従い、ストリームサーバ301が接続すべき上流ストリームサーバとして選択され、コネクション切替処理部208からコネクション制御処理部205に当該情報が通知される。コネクション制御処理部205は、当該サーバ情報を元にして、当該コンテンツの視聴要求を上流ストリームサーバ301に送信する。
【0020】
上流ストリームサーバ301は、該要求情報を元に、当該コンテンツのストリーム配信処理を行い、ストリーム配信を行う。具体的には、上流ストリームサーバ301とストリーム中継制御装置200との間にストリーム制御用のコネクションを接続し、その後、ストリームパケットをストリーム中継制御装置200に送信する。ストリーム中継制御装置200では、当該ストリームパケットを回線終端部202bで受信した後、共通メモリ209に格納し、回線終端部202aからクライアント101に対して送信する。
【0021】
(上流故障時の処理)
本説明では、上流ストリームサーバ301が故障したものとする。
【0022】
上流ストリームサーバ301のサーバアプリケーションが何らかの原因で停止し、上流ストリームサーバ301からのストリームパケットの送信がなくなり、上流ストリームサーバ301とストリーム中継制御装置200との制御コネクションも切断処理される。
【0023】
ストリーム中継制御装置200は、上流ストリームサーバ301からの制御コネクション切断情報を、回線201bを介して回線終端部202bにて受信し、パケット振り分け部203bにて、制御コネクションの切断情報であることが解析され、当該情報をコネクション管理部206に通知する。コネクション管理部206は、該情報を元にして、当該コンテンツを配信していた上流ストリームサーバ301が当該コンテンツを配信することができなくなったと判断し、コネクションの切替を行う旨をコネクション切替処理部208に通知する。コネクション切替処理部208は、当該情報を元にして、当該コンテンツを配信する際に接続する上流ストリームサーバを301から302に切り替えるようにコネクション制御処理部205に通知する。コネクション制御処理部205は、当該コンテンツを配信する上流ストリームサーバ301が配信できなくなった旨を当該コンテンツを視聴しているクライアント101に通知する。
【0024】
(クライアントからの再視聴要求時の処理)
クライアント101は、当該コンテンツの再視聴を試みるために、当該コンテンツの視聴要求をストリーム中継制御装置200に送信する。
【0025】
ストリーム中継制御装置200では、当該要求情報を元に、当該コンテンツを配信している上流ストリームサーバに接続を試みる。その際、接続する上流ストリームサーバがストリームサーバ302に切り替わっているため、上流ストリームサーバ302に視聴要求を送信する。
【0026】
上流ストリームサーバ302は、視聴要求を元にして、当該コンテンツのストリーム配信処理を行い、ストリーム配信を行う。
【0027】
このように、本実施形態では、ストリーム中継制御装置200にて上流ストリームサーバの状態を監視して、上流故障時に、新たな視聴要求に対して、故障サーバと異なる上流ストリームサーバに対して接続を切替、当該コンテンツの配信を行う。
【0028】
本実施形態では、ストリームを配信している上流ストリームサーバ301のサービスアプリケーションが停止した場合について説明したが、上流ストリームサーバ301とストリーム中継制御装置200とを接続している回線201bが切断した等の故障が起きた場合でも同様の処理の流れにて、上流ストリームサーバの切替処理を行うことができる。
[第2の実施の形態]
本発明の第2の実施の形態について説明する。第1の実施形態と同じ処理をする部分については、説明を省略する場合がある。
【0029】
(ストリーム配信処理)
第1の実施の形態と同様にストリーム配信処理が行われたものとする。
【0030】
(上流からのストリームパケット間欠受信時の処理)
本実施形態では、ストリームサーバ301でのサービスアプリケーションの停止、ネットワーク切断等はなく、上流ストリームサーバ301からのストリーム配信処理が不安定になり、ストリームパケットの送信が間欠的になった場合の処理について説明する。
【0031】
上流ストリームサーバ301では、長時間ストリーム配信を続けたことなどの理由により、当該ストリームの配信処理が不安定になり、ストリームパケットの送信が間欠的になる。具体的には、数秒間ストリームパケットの配信が停止し、その後、ストリームパケットを送信するという現象を繰り返す。
【0032】
ストリーム中継制御装置200では、間欠的になった当該ストリームパケットを回線201bを介して、回線終端部202bにて受信し、共通メモリ209に格納する。共通メモリ209では、当該パケットが書き込まれた時刻をパケット受信管理部207に対して通知する。
【0033】
パケット受信管理部207は、該情報を元にして、上流ストリームサーバ301から受信した当該ストリームパケットの受信間隔を算出する。さらに、算出結果と、予め定めておいたパケット不到着許容時間とを比較し、算出結果の方が大きい場合、上流ストリームサーバ301からのストリームパケット送出間隔が異常になり、ストリーム配信故障と判断し、その旨をコネクション切替処理部208に通知する。なお、以上では、ストリームパケットの受信間隔と、パケット不到着許容時間との比較を行ったが、共通メモリ209からの書き込み時刻情報から、パケット不到着許容時間経っても、新たな書き込み時刻情報が共通メモリ209から通知されないことをもって、ストリーム配信故障と判断してもかまわない。コネクション切替処理部208では、パケット受信管理部207からのストリーム配信故障の情報を元にして、第1の実施形態と同様に、上流ストリームサーバの切替処理を行う。
【0034】
このように、本実施形態では、ストリーム配信を行っている上流ストリームサーバのサービスが停止していない状態でも、当該上流ストリームサーバからのストリームパケットの配信が不安定になり、一定時間ストリームパケットがストリーム中継制御装置200に到着しない場合に、ストリーム配信故障と判断し、上流ストリームサーバを切り替える。
[第3の実施の形態]
本発明の第3の実施の形態について説明する。なお、第1、第2の実施形態と同じ処理をする部分については、説明を省略する場合がある。
【0035】
(ストリーム配信処理)
第1、第2の実施の形態と同様にストリーム配信処理が行われたものとする。
【0036】
(上流からのストリームパケットバースト受信時の処理)
本実施形態では、上流ストリームサーバ301からのストリームパケットが、長時間配信を続けたなどの理由で不安定になり、パケットの配信は続けているが、バースト的に送信をしている場合について説明する。
【0037】
上流ストリームサーバ301では、当該コンテンツの長時間配信を続けたなどの理由で送信間隔が不安定になり、送出すべきストリームパケットをあるタイミングに一気に送信し、その後瞬間的にパケットの送信を停止するという現象を繰り返す場合がある。この現象は一般的にはバースト送信と呼ばれている。
【0038】
ストリーム中継制御装置200では、当該状態になった上流ストリームサーバ301からのストリームパケットを、回線201bを介して、回線終端部202bにて受信し、共通メモリ209に格納する。共通メモリ209では、当該パケットが書き込まれた時刻をパケット受信管理部207に通知する。パケット受信管理部207は、当該情報を元にして、上流ストリームサーバ301から受信したストリームパケットが単位当たりの時間に到着した数を算出する。算出結果と、予め定められた単位時間当たりのパケット到着許容数とを比較し、算出結果の方が大きい場合、上流ストリームサーバ301からのストリームパケットがバースト送信されたものと判断し、上流ストリームサーバ301が故障と判断したとして、その旨をコネクション切替処理部208に対して通知する。
【0039】
コネクション切替処理部208では、第2の実施形態と同様に、当該上流ストリームサーバ301が故障と判断して、上流ストリームサーバの切替処理を行う。
【0040】
このように、本実施形態では、ストリーム配信を行っている上流ストリームサーバのサービスが停止していない状態でも、当該ストリームサーバからのストリームパケットの配信が不安定になり、許容される単位時間当たりのパケット到着許容数を上回るストリームパケットがストリーム中継制御装置に到着した場合に、ストリーム配信故障と判断し、上流ストリームサーバを切り替える。
[第4の実施の形態]
本実施形態では、ストリーム中継制御装置200のコネクション制御処理部205は上流ストリームサーバ301、302と事前に通信して、これら上流ストリームサーバが配信可能なコンテンツを知り、各コンテンツを配信可能な上流ストリームサーバのリストである候補サーバリストを作成しておく。
【0041】
(ストリーム配信処理)
第1、第2の実施の形態と同様にストリーム配信処理が行なわれたものとする。このとき、候補サーバリストから当該コンテンツを配信可能な上流ストリームサーバを選択し、該上流ストリームサーバにコネクションを接続する。
【0042】
(上流故障時の処理)
コネクションを接続した上流ストリームサーバもしくはネットワークの故障があった場合、コネクション制御処理部205は、該上流ストリームサーバを候補サーバリストから除外する。再度、コンテンツ視聴要求があった際には、新たな候補サーバリストから上流ストリームサーバを選択し、該上流ストリームサーバにコネクションを接続する。
【0043】
なお、ストリーム中継制御装置200内の処理は専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するものであってもよい。コンピュータ読み取り可能な記録媒体とは、フロッピーディスク、光磁気ディスク、CD−ROM等の記録媒体、コンピュータシステムに内蔵されるハードディスク装置等の記憶装置を指す。さらに、コンピュータ読み取り可能な記録媒体は、インターネットを介してプログラムを送信する場合のように、短時間の間、動的にプログラムを保持するもの(伝送媒体もしくは伝送波)、その場合のサーバとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含む。
【0044】
【発明の効果】
以上説明したように、本発明によれば、ストリーム中継制御装置において、上流ストリームサーバ、回線、もしくは、ネットワークの状態を監視して、上流故障時の配信制御を効率的に実現することが可能となる。
【図面の簡単な説明】
【図1】本発明の一実施形態のストリーム中継網の構成図である。
【図2】図1中のストリーム中継制御装置の構成図である。
【図3】従来のストリーム中継網の構成図である。
【符号の説明】
101,102 クライアント
200 ストリーム中継制御装置
201a,201b,201c 回線
301,302 上流ストリームサーバ
202a,202b 回線終端部
203a,203b パケット振分部
204 リクエストパケット解析部
205 コネクション制御処理部
206 コネクション管理部
207 パケット受信管理部
208 コネクション切替処理部
209 共通メモリ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a stream relay control method and apparatus for monitoring the state of an upstream stream server, a line, or a network in a large-scale stream distribution network service and efficiently implementing distribution control at the time of an upstream failure.
[0002]
[Prior art]
Conventionally, when performing stream distribution on the Internet, generally, a stream setting protocol for requesting and setting stream contents, a stream distribution protocol for distributing stream contents based on the settings, and a stream content being distributed. A stream control protocol for notifying the distribution status and distribution quality of a packet and the status of connectivity between a server and a client is used. Protocols defined by the IETF (Internet Engineering Task Force) include RTSP (Real Time Streaming Protocol: RFC2326), RTP (Real-time Transport Protocol: RFC1889), and RTCP (RFC: RTCP, RTCP, and RTCP: RProto). Also, when performing stream distribution using a protocol other than these, a protocol having the above function is used. Examples include the Microsoft MMS protocol and the Real Network RDT and PNA protocols.
[0003]
Generally, stream distribution on the Internet is realized by implementing these stream protocols in a server application on a general-purpose PC server. Therefore, when the distribution is continued for a long time, the server application causes a deadlock and stops, or the packet transmission from the application becomes unstable, and the stream viewing by the client user is interrupted. There were many things. In addition, since distribution is performed on the Internet, a network or a network device breaks down, stream packets from an upstream stream server are interrupted, and the stream viewing of a client user is often disconnected.
[0004]
In the above case, in order to reduce the unviewable time to the stream viewing user as much as possible, a method of connecting to a stream server capable of delivering a stream using a clustering technology or a load balancing technology has been adopted. (For example, see Non-Patent Document 1). This will be described with reference to the configuration of the conventional stream relay network shown in FIG.
[0005]
The stream relay network includes
[0006]
In normal stream distribution, viewing request information for a content to be viewed is transmitted from the
[0007]
If the stream server application that is delivering the content stops during the stream delivery, the viewing of the content is disconnected. After that, a viewing request is transmitted again from the client, and the request arrives at the connection distribution device 402 via the
[0008]
[Non-patent document 1]
Tony Bourke "Server Load Balancing Technology", O'Reilly Japan, 2001
[0009]
[Problems to be solved by the invention]
In the above-described related art, it is necessary to sort the viewing request information from the client or the stream relay control device by the connection sorting device. In order to perform such processing, a function of analyzing required information in a device is required, and there has been a problem that the function needs to be realized by an expensive system. Further, since the processing load is high and it is necessary to process a large amount of stream packets from the upstream stream server or the like, if the stream transmission capability from one stream server is a large scale of about 1 Gbps, However, there is also a problem that it is very difficult to apply the connection sorting device.
[0010]
Further, in the conventional technology, it is necessary to rewrite the IP address and port number for communication in the connection distribution device or the distribution software and transfer the request information to the stream relay control device or the stream server. In addition to the problem that the address is large, a problem has arisen that communication inconsistency may occur due to rewriting of the address.
[0011]
Further, according to the conventional technology, the connection distribution device or the distribution software cannot detect the failure of the service unless the service of the stream server is stopped or the network is disconnected. However, even if the quality is fluctuated due to continuous distribution for a long time and the viewing quality at the client is deteriorated, the technology cannot cope with the problem, and there is a problem that the service with the deteriorated viewing quality must be continued. I was
[0012]
An object of the present invention is to provide a stream relay control method and apparatus for monitoring a state of an upstream stream server, a line, or a network in a large-scale stream distribution network service and efficiently implementing distribution control at the time of an upstream failure. And to provide programs.
[0013]
[Means for Solving the Problems]
In order to achieve the above object, in the stream relay control method of the present invention, when stream content viewing request information is sent from a client, a connection is made to an upstream stream server that distributes the content, and then the upstream stream server Or, when a failure in the line or network is detected, the client that is viewing the content is notified that the content cannot be viewed, and the failure is detected when the client requests the content to be viewed again. The content is distributed by switching the connection to an upstream stream server that distributes the content other than the upstream stream server that has been provided.
[0014]
Therefore, in the stream relay control device, it is possible to monitor the state of the upstream stream server, the line, or the network and efficiently realize the distribution control at the time of the upstream failure.
[0015]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a diagram showing a configuration of a stream relay network according to an embodiment of the present invention. As shown in FIG. 1, the stream relay network includes
[0016]
FIG. 2 is a diagram illustrating a configuration example of the stream
[0017]
The
[0018]
The processing flow of the present embodiment will be described below.
[0019]
(Stream distribution processing)
The packet including the viewing request information of the stream content arrives at the stream
[0020]
The upstream stream server 301 performs stream distribution processing of the content based on the request information, and performs stream distribution. Specifically, a connection for stream control is connected between the upstream stream server 301 and the stream
[0021]
(Process at the time of upstream failure)
In this description, it is assumed that the upstream stream server 301 has failed.
[0022]
The server application of the upstream stream server 301 stops for some reason, the transmission of stream packets from the upstream stream server 301 stops, and the control connection between the upstream stream server 301 and the stream
[0023]
The stream
[0024]
(Processing when requesting re-viewing from client)
The
[0025]
The stream
[0026]
The upstream stream server 302 performs stream distribution processing of the content based on the viewing request, and performs stream distribution.
[0027]
As described above, in the present embodiment, the state of the upstream stream server is monitored by the stream
[0028]
In the present embodiment, a case has been described in which the service application of the upstream stream server 301 that is delivering the stream is stopped, but the line 201b connecting the upstream stream server 301 and the stream
[Second embodiment]
A second embodiment of the present invention will be described. A description of a portion that performs the same processing as in the first embodiment may be omitted.
[0029]
(Stream distribution processing)
It is assumed that stream distribution processing has been performed in the same manner as in the first embodiment.
[0030]
(Process when intermittently receiving stream packets from upstream)
In the present embodiment, there is no stop of the service application in the stream server 301, no disconnection of the network, etc., and the stream distribution processing from the upstream stream server 301 becomes unstable and the transmission of stream packets becomes intermittent. explain.
[0031]
In the upstream stream server 301, the distribution processing of the stream becomes unstable due to, for example, continuous distribution of the stream for a long time, and the transmission of stream packets becomes intermittent. Specifically, the phenomenon of stopping the distribution of stream packets for several seconds and then transmitting the stream packets is repeated.
[0032]
In the stream
[0033]
The packet
[0034]
As described above, in the present embodiment, even when the service of the upstream stream server performing the stream delivery is not stopped, the delivery of the stream packet from the upstream stream server becomes unstable, and the stream packet is transmitted for a certain period of time. When it does not arrive at the
[Third Embodiment]
A third embodiment of the present invention will be described. Note that the description of the parts that perform the same processing as in the first and second embodiments may be omitted.
[0035]
(Stream distribution processing)
It is assumed that the stream distribution processing has been performed in the same manner as in the first and second embodiments.
[0036]
(Process when receiving stream packet burst from upstream)
In the present embodiment, a description will be given of a case where the stream packet from the upstream stream server 301 becomes unstable due to continued distribution for a long time, and the packet distribution is continued, but the packet is transmitted in a burst. I do.
[0037]
In the upstream stream server 301, the transmission interval becomes unstable due to, for example, continuing distribution of the content for a long time, and the stream packet to be transmitted is transmitted at a stretch at a certain timing, and then the transmission of the packet is momentarily stopped. Phenomenon may be repeated. This phenomenon is generally called burst transmission.
[0038]
In the stream
[0039]
As in the second embodiment, the connection
[0040]
As described above, in the present embodiment, even when the service of the upstream stream server performing the stream delivery is not stopped, the delivery of the stream packet from the stream server becomes unstable, and the per-unit When a stream packet exceeding the allowable number of packet arrivals reaches the stream relay control device, it is determined that a stream distribution failure has occurred, and the upstream stream server is switched.
[Fourth Embodiment]
In the present embodiment, the connection
[0041]
(Stream distribution processing)
It is assumed that the stream distribution processing has been performed in the same manner as in the first and second embodiments. At this time, an upstream stream server that can deliver the content is selected from the candidate server list, and a connection is made to the upstream stream server.
[0042]
(Process at the time of upstream failure)
If there is a failure in the upstream stream server or network connected to the connection, the connection
[0043]
The processing in the stream
[0044]
【The invention's effect】
As described above, according to the present invention, in a stream relay control device, it is possible to monitor the state of an upstream stream server, a line, or a network, and efficiently realize distribution control at the time of an upstream failure. Become.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a stream relay network according to an embodiment of the present invention.
FIG. 2 is a configuration diagram of a stream relay control device in FIG. 1;
FIG. 3 is a configuration diagram of a conventional stream relay network.
[Explanation of symbols]
101, 102
Claims (9)
クライアントからストリームコンテンツ視聴要求情報が送出されると、当該コンテンツを配信している上流ストリームサーバにコネクションを接続し、その後、上流ストリームサーバ、もしくは回線、ネットワークの故障を検知すると、当該コンテンツを視聴しているクライアントに対して当該コンテンツが視聴不可であることを通知し、再度、該クライアントから当該コンテンツ視聴要求があった際に、故障が検知された上流ストリームサーバ以外の、当該コンテンツを配信している上流ストリームサーバへコネクションを切り替えて接続することで、当該コンテンツの配信を行うストリーム中継制御方法。In a stream distribution network,
When the stream content viewing request information is sent from the client, a connection is made to the upstream stream server that distributes the content, and then, when a failure of the upstream stream server, line, or network is detected, the content is viewed. Notifying the client that the content is not viewable, and distributing the content other than the upstream stream server where the failure was detected when the client requests the content view again. A stream relay control method for distributing the content by switching and connecting to an upstream stream server.
クライアントから送出されたストリームコンテンツ視聴要求情報に応じて、当該コンテンツを配信している上流ストリームサーバに接続後、上流ストリームサーバ、もしくは回線、ネットワークの故障を検知する手段と、該故障が検知されると、当該コンテンツを視聴しているクライアントに対して当該コンテンツが視聴不可であることを通知する手段と、再度、クライアントから当該コンテンツ視聴要求があった際に、故障が検知された上流ストリームサーバ以外の当該コンテンツを配信している上流ストリームサーバへ切り替えてコネクションを接続する手段を有することを特徴とするストリーム中継制御装置。In the stream relay control device,
A means for detecting a failure of the upstream stream server or the line or the network after connecting to the upstream stream server distributing the content in response to the stream content viewing request information sent from the client; and detecting the failure. Means for notifying the client viewing the content that the content cannot be viewed, and a means other than the upstream stream server in which the failure is detected when the content viewing request is again issued from the client. A means for switching to an upstream stream server that distributes the content and connecting the connection.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002305707A JP3872410B2 (en) | 2002-10-21 | 2002-10-21 | Stream relay control method, apparatus, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002305707A JP3872410B2 (en) | 2002-10-21 | 2002-10-21 | Stream relay control method, apparatus, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004140745A true JP2004140745A (en) | 2004-05-13 |
JP3872410B2 JP3872410B2 (en) | 2007-01-24 |
Family
ID=32452741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002305707A Expired - Fee Related JP3872410B2 (en) | 2002-10-21 | 2002-10-21 | Stream relay control method, apparatus, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3872410B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010531618A (en) * | 2007-06-26 | 2010-09-24 | トムソン ライセンシング | Real-time protocol stream migration |
KR101535837B1 (en) * | 2013-05-15 | 2015-07-13 | 경북대학교 산학협력단 | Media server and method for transmitting contents |
-
2002
- 2002-10-21 JP JP2002305707A patent/JP3872410B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010531618A (en) * | 2007-06-26 | 2010-09-24 | トムソン ライセンシング | Real-time protocol stream migration |
KR101535837B1 (en) * | 2013-05-15 | 2015-07-13 | 경북대학교 산학협력단 | Media server and method for transmitting contents |
Also Published As
Publication number | Publication date |
---|---|
JP3872410B2 (en) | 2007-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7546355B2 (en) | Network architecture for data transmission | |
US9332037B2 (en) | Method and apparatus for redundant signaling links | |
US7953883B2 (en) | Failover mechanism for real-time packet streaming sessions | |
US7159234B1 (en) | System and method for streaming media server single frame failover | |
US8671163B2 (en) | Multi-output packet server with independent streams | |
US20100138531A1 (en) | Real time protocol stream migration | |
US20060176804A1 (en) | Data transfer apparatus and multicast system | |
CN101488946A (en) | Packet detection method and system | |
JP5116429B2 (en) | Method and apparatus for reducing retransmission requests in a network | |
US20030023877A1 (en) | System and method of managing data transmission loads | |
JP2007004361A (en) | Load distribution device | |
US7761577B2 (en) | Method and apparatus for detecting stuck calls in a communication session | |
WO2011012004A1 (en) | Method and system for realizing network flow cleaning | |
JP3872410B2 (en) | Stream relay control method, apparatus, and program | |
JP2007324706A (en) | System, apparatus, and method of measuring video distribution quality | |
KR20200072941A (en) | Method and apparatus for handling VRRP(Virtual Router Redundancy Protocol)-based network failure using real-time fault detection | |
JP2004228746A (en) | Stream quality observation apparatus, program, and recording medium | |
JP4233312B2 (en) | Stream distribution monitoring system, stream relay device, stream distribution monitoring server, stream distribution monitoring method, and program | |
JP3557188B2 (en) | Stream relay control method, stream relay control program, medium recording the program, and stream relay control device | |
CN106303617A (en) | Generic video distribution technology based on ZeroMQ and MessagePack | |
JP2006013912A (en) | Stream data distributing method, steam data distributing apparatus, stream data control apparatus, program and recording medium | |
JP2003244228A (en) | Stream distribution device and method, stream distribution program and recording medium having the same program recorded thereon | |
CA2684824C (en) | Failover with redundant multicasts for switched digital video | |
JP2011188437A (en) | Rtp data communication device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050124 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050124 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050124 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060712 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060905 |
|
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: 20061004 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061019 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101027 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101027 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111027 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111027 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121027 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |