JP2002064487A - ストリーム配信装置 - Google Patents
ストリーム配信装置Info
- Publication number
- JP2002064487A JP2002064487A JP2000252288A JP2000252288A JP2002064487A JP 2002064487 A JP2002064487 A JP 2002064487A JP 2000252288 A JP2000252288 A JP 2000252288A JP 2000252288 A JP2000252288 A JP 2000252288A JP 2002064487 A JP2002064487 A JP 2002064487A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- distribution
- copy
- stream
- information
- 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
Abstract
減、チェックサムのフル計算の排除により処理を最小限
とし、高速・大容量なストリーム配信装置を提供する。 【解決手段】 コピー制御部14は、書込処理部12
から通知されたバッファ番地、バッファ長を元にパケッ
トバッファ13へアクセスし、当該パケットのIPアドレ
スとUDPポート番号を取り出すとともに、該情報をキー
としてコンテンツ識別子検索テーブル15にアクセス
し、受信パケットの運ぶストリームのコンテンツ識別子
を求める。コピー処理部19は、コピー配信制御テーブ
ル18を参照して、送信宛先のクライアント毎に定めら
れた配信情報を求め、該配信情報を元に受信パケットの
複製とヘッダ書き換えを行い、チェックサム値と書き換
え後のヘッダ情報部分の差分を元に再計算した結果を新
たなチェックサム値として送信パケットに設定し、当該
クライアントへ送信する。
Description
の送信する1または複数のストリーム放送のパケットを
受信し、該パケットをコピー後、1または複数のクライ
アントへ放送配信するストリーム配信装置に関する。
トリーム配信装置としては、Real Networks社などのス
プリッタ製品が代表的である。これは、汎用パソコンや
汎用ワークステーションなどの汎用プロセッサ上で動作
し、ストリームサーバから受信した1本のストリームデ
ータを1または複数のクライアントに対してコピー配信
するものである。
ーミングプロトコルでは、放送コンテンツ毎に、UDPポ
ート番号に対応させてストリーム配線が行われていた。
UDPポート番号は、クライアント、スプリッタ、サーバ
などの配信機器の接続構成により、下流の機器が受信ポ
ート番号を決定する方式となっているため、サーバ→ス
プリッタ→クライアントという構成でストリーム配信を
行う場合は、スプリッタ側でUDPポート番号を変換する
機能を持っていた。
ッタは、汎用プロセッサの通信機能をベーストした技術
であった。一般的に、ストリームデータはIPパケット上
にUDPパケットのペイロードにストリーム転送プロトコ
ル(例えばIETFRFC1889で規定されたRTPプロトコ
ル)を載せ、その上に音声や映像データをエンコードし
た符号データを載せて転送していた。したがって、汎用
プロセッサのOSが提供する、IPパケットプロトコル解析
機能、UDPパケットプロトコル解析機能を利用して処理
されていた。各プロトコル解析機能は、レイヤ毎に処理
内容が規定されている。よって、レイヤ毎にヘッダ上の
プロトコル情報を読み出し、プロトコルデータ正常性チ
ェック処理、状態変数の遷移処理、加算/減算処理な
ど、全ての規定処理を実行後、次のレイヤに係る処理を
順次進める形で行われていた。このため、レイヤ毎にプ
ロトコル解析処理をするためのメモリオペレーションが
オーバヘッドとなり高速化処理に向いていなかった。
た処理を想定すると、主な処理はサーバからの受信UDP
ポート番号、受信IPアドレスをクライアント宛の送信UD
Pポート番号、送信IPアドレスに書き換え後、UDPパケッ
トとIPヘッダのチェックサム再計算を行っていた。この
場合、IPアドレスやUDPポート番号の読み出し、書き込
み以外に他プロトコルパラメタ分析処理も併せて実行さ
せてしまう分だけオーバヘッドが大きくなった。さら
に、チェックサム計算処理は、UDPペイロードデータ全
体に対して16ビットづつメモリ読出し/演算処理を繰
り返すために、長いパケットほど計算時間が長くなって
しまった。しかしながら、チェックサムの再計算は、受
信時点でのパケットのチェックサム計算値から、IPアド
レス、UDPポート番号を書き換えた部分の差分だけを計
算すればよい。
装置は、汎用プロセッサが提供する通信機能がレイヤ毎
に動作するためのオーバヘッド、処理機能が汎用化され
ているために必要以上の処理を実行しなければならな
い。このため、ストリーム配信を高速・大容量化するた
めには、最適な機能構成とはなっていない。
理オーバヘッド削減、チェックサムのフル計算の排除に
より処理を最小限とし、高速・大容量なストリーム配信
装置を提供することである。
ストリームパケットを受信すると、1つのパケットの先
頭部に位置するヘッダ情報から、ストリーム配信に必要
最低限なヘッダ情報をプロトコルレイヤを区別せずに抽
出する。その情報からコンテンツを識別する。また、コ
ンテンツ毎に配付先の宛先情報(配信情報)をテーブル
(コピー配布表)に登録しておき、受信したパケットの
ヘッダ情報から、送信すべきパケットのヘッダ情報へ変
換する手段を持つ。
宛先のクライアント毎に定められた配信情報を求め、該
配信情報を元に受信パケットの複製とヘッダ書き換えを
行い、一時退避したチェックサム値と書き換え後のヘッ
ダ情報部分の差分を元に再計算した結果を新たなチェッ
クサム値として送信パケットに設定し、当該クライアン
トへ送信する処理をコピー配布表に登録された全クライ
アント分の処理が終了するまで繰り返す。
パケットのIPアドレスおよびUDPポート番号、コピー配
布表のデータ内容はコンテンツに対するコピー数、送信
IPアドレス、送信ポート番号、チェックサム差分値でも
よい。
受信パケットと送信パケットのヘッダ情報が既知である
ため、パケット受信の都度再計算するのではなく、受信
ヘッダ情報と配布すべき送信ヘッダ情報からあらかじめ
計算しておく。
を転送するパケットのプロトコルレイヤ毎に処理を分け
るのではなく、パケットの受信処理、送信処理を実行す
る。また、全プロトコルデータを処理するのではなく、
特定のプロトコルデータに限定した処理(ヘッダ書き換
え)を実行するため、1パケット当たりの処理量を削減
することができる。
再計算は、コピー配布表により変換すべき送り先のアド
レス、ポート番号が既知であるため、事前に差分情報を
計算しておき、パケット受信および送信の際に、その差
分情報により残りの演算のみを実行することにより、さ
らに1パケット当たりの処理量を削減することができ
る。
て図面を参照して説明する。
信装置1はストリームサーバ2から受信回線3を介して
ストリームコンテンツを受信し、またコピー後のストリ
ームコンテンツを送信回線41、42、・・・、4nを介
してクライアント51、52、・・・、5nに配信する。
ドレスはストリームサーバ2、IPデスティネーションア
ドレスはストリーム配信装置1、送信するパケットのIP
ソースアドレスはストリーム配信装置1、IPデスティネ
ーションアドレスはクライアント(51〜5nのうちの一
つ)をそれぞれ指して転送する。また、ソースポート番
号は、デスティネーションポート番号のみをストリーム
配信装置1にて付け替え、ポート番号はそのまま転送す
ることとする。以上により、ストリーム配信装置1がパ
ケットを受け渡す際には、チェックサム以外にIPソース
アドレス、IPデスティネーションアドレス、デスティネ
ーションポート番号の付け替え処理が発生する。
に、受信回路11と書込処理部12とパケットバッファ
13とコピー制御部14とコンテンツ識別子検索テーブ
ル15と要求バッファ16とデータ設定部17とコピー
配信制御テーブル18(コピー配布表)とコピー処理部
19とコピー処理バッファ20と読出処理部21と送信
回路22を有している。
下を終端し、パケット受信を後段の書込処理部12へ通
知する。
受信回路11で受信したパケットをパケットバッファ1
3へ転送するとともに、書き込んだバッファの先頭番地
とバッファ長をコピー制御部14へ通知する。
格納しておくバッファである。
通知されたバッファ番地、バッファ長を元にパケットバ
ッファ13へアクセスし、当該パケットのIPアドレスと
UDPポート番号を取り出すとともに、該情報をキーとし
てコンテンツ識別子検索テーブル15にアクセスし、受
信パケットの運ぶストリームのコンテンツ識別子を求め
る。このコンテンツ識別子とバッファ番地、バッファ長
を要求バッファ16に入力することにより、後段のコピ
ー処理を依頼する。
1に示すように、受信UDPデスティネーションポート番
号、受信IPソースアドレス、コンテンツ識別子を構成要
素に持ち、受信情報からコンテンツ識別子を割り出すた
めに使用される。
ンテンツ識別子、バッファ番地、バッファ長としてエン
トリーし、コピー処理部19により読み出されるバッフ
ァである。
および表2のテーブルを事前に作成、維持、管理する。
コピー配信制御テーブル18(表2)には、コンテンツ
識別子、コピー数、送信デスティネーションポート番
号、送信IPデスティネーションアドレス、チェックサム
差分計算値がそれぞれ設定される。
に配信するクライアントの数を示す。
パケットのIPアドレス、UDPポート番号、配信するパケ
ットのIPアドレス、UDPポート番号から、チェックサム
再計算時の一部の計算値であり、IPヘッダチェックサム
とUDPチェックサムを計算するための差分計算値を持
つ。
計算値は、以下のように求める。計算に用いる変数を以
下のように定義する。
の和を引いて、送信パケットの変数の輪を加えればよ
い。よって、式(1)のようになる。
ムのLength、UDPソースポート番号は変化がないものと
すると、式(1)は式(2)のように簡略化できる。
指すため、両変数は相殺される。したがって、 DA2+DP2−(SA1+ DP1)・・・・・(3) をチェックサム差分計算値として用いる。この計算結果
は、表2に示した。
例により説明したが、ストリームサーバやクライアント
の条件により、UDPソースポート番号や、IPアドレスを
ストリーム配信装置1で書き換える場合もある。その場
合には、式(1)により計算することができる。
検索し、要求が存在する場合に、当該要求を取り出す。
まず、コンテンツ識別子をキーとしてコピー配信制御テ
ーブル18から送信デスティネーションポート番号、送
信デスティネーションIPアドレス、コピー数、チェック
サム差分計算値を引く。また、バッファ番地とバッファ
長により、受信済みのパケットをパケットバッファ13
からコピー処理バッファ20に読み出す。
ックサム値を、IPヘッダのIPアドレス受信値、IPアドレ
ス送信値とIPヘッダのチェックサム差分計算値から演算
する。また、UDPチェックサム値は、IPアドレスの受信
値、送信値、UDPポート番号の送信値、受信値とUDPチェ
ックサム差分計算値から演算する。
ス、UDPポート番号に関し、送信値を設定するととも
に、計算済みのIPヘッダチェックサム値、UDPパケット
チェックサム値を設定する。これにより、送信すべき1
パケット分のIPヘッダおよびUDPヘッダがクライアント
用に設定され、当該パケットは、読出処理部21により
受信回路22へ送られ、最終的にクライアントへ到着す
る。
をクライアント毎に実行し、全クライアント分の処理が
完了した時点で、要求バッファ16を確認することを繰
り返す。
信パケットから送信パケットへの変換処理において、特
定の処理(ヘッダ書き換え)に限定すること、さらには
計算負荷が大きなチェックサム値の再計算においても、
通信前に差分計算値を持っており、これと正味の変更点
により演算するため、計算量を大幅に削減でき、したが
って、汎用プロセッサベースの従来技術に比べ、高速化
・大容量化が図れる。これにより、従来よりも多くのク
ライアントに対して同時にストリーム放送を提供し、さ
らには従来よりもより広帯域のストリーム放送をクライ
アントに対して提供することができる。両方の場合は、
通信プロセッサはハード価格は同じで処理容量を増加
し、映像品質を向上させることが可能なため、経済的で
かつ高品質な映像ストリーム放送サービスを大規模に提
供することが可能となる。
Claims (4)
- 【請求項1】 ストリームサーバの送信する1または複
数のストリーム放送のパケットを受信し、該パケットを
コピー後、1または複数のクライアントへ放送配信する
ストリーム配信装置において、 受信したパケットのヘッダ情報から当該パケットが運ぶ
コンテンツを識別する手段と、 受信したパケットヘッダのチェックサム値およびチェッ
クサム値の計算に必要な当該ヘッダ内のプロトコルデー
タを一時退避させる手段と、 コンテンツ毎に配信すべきクライアント宛の配信情報を
登録したコピー配布表と、 前記コピー配布表を参照して、送信宛先のクライアント
毎に定められた配信情報を求め、該配信情報を元に前記
受信パケットの複製とヘッダ書き換えを行い、一時退避
した前記チェックサム値と書き換え後のヘッダ情報部分
の差分を元に再計算した結果を新たなチェックサム値と
して送信パケットに設定し、当該クライアントへ送信す
る処理を前記コピー配布表に登録された全クライアント
分の処理が終了するまで繰り返す制御手段を有すること
を特徴とするストリーム配信装置。 - 【請求項2】 受信パケットのヘッダ情報と前記コピー
配布表に記載された配信情報からチェックサム値の差分
値を事前に計算しておき、前記制御手段は受信パケット
のチェックサム値と前記差分値の演算により、送信パケ
ットのチェックサム値を計算する、請求項1記載のスト
リーム配信装置。 - 【請求項3】 受信パケットヘッダ情報が、ポート番号
とIPアドレスにより構成される、請求項1または2記載
のストリーム配信装置。 - 【請求項4】 コンテンツ毎に配信すべきクライアント
の配信情報が、コピー数、ポート番号、IPアドレス、チ
ェックサム差分値により構成される、請求項1から3の
いずれか1項記載のストリーム配信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000252288A JP3579335B2 (ja) | 2000-08-23 | 2000-08-23 | ストリーム配信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000252288A JP3579335B2 (ja) | 2000-08-23 | 2000-08-23 | ストリーム配信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002064487A true JP2002064487A (ja) | 2002-02-28 |
JP3579335B2 JP3579335B2 (ja) | 2004-10-20 |
Family
ID=18741552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000252288A Expired - Lifetime JP3579335B2 (ja) | 2000-08-23 | 2000-08-23 | ストリーム配信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3579335B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2009145294A1 (ja) * | 2008-05-30 | 2011-10-13 | 日本電気株式会社 | サーバ装置と通信方法ならびにプログラム |
JP5257448B2 (ja) * | 2008-05-30 | 2013-08-07 | 日本電気株式会社 | サーバ装置と通信方法ならびにプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04288745A (ja) * | 1991-02-22 | 1992-10-13 | Mitsubishi Electric Corp | 通信装置 |
JPH10242962A (ja) * | 1997-02-25 | 1998-09-11 | Nippon Telegr & Teleph Corp <Ntt> | インターネット上のマルチキャストゲートウェイ通信方法及びシステム |
JPH11150566A (ja) * | 1997-11-14 | 1999-06-02 | Hitachi Ltd | インタネットワーク装置 |
JP2000032049A (ja) * | 1998-07-15 | 2000-01-28 | Fuji Xerox Co Ltd | ゲートウェイ装置及びマルチキャストパケット中継プログラムを記録したコンピュータ読み取り可能な記録媒体 |
-
2000
- 2000-08-23 JP JP2000252288A patent/JP3579335B2/ja not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04288745A (ja) * | 1991-02-22 | 1992-10-13 | Mitsubishi Electric Corp | 通信装置 |
JPH10242962A (ja) * | 1997-02-25 | 1998-09-11 | Nippon Telegr & Teleph Corp <Ntt> | インターネット上のマルチキャストゲートウェイ通信方法及びシステム |
JPH11150566A (ja) * | 1997-11-14 | 1999-06-02 | Hitachi Ltd | インタネットワーク装置 |
JP2000032049A (ja) * | 1998-07-15 | 2000-01-28 | Fuji Xerox Co Ltd | ゲートウェイ装置及びマルチキャストパケット中継プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2009145294A1 (ja) * | 2008-05-30 | 2011-10-13 | 日本電気株式会社 | サーバ装置と通信方法ならびにプログラム |
JP5257448B2 (ja) * | 2008-05-30 | 2013-08-07 | 日本電気株式会社 | サーバ装置と通信方法ならびにプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP3579335B2 (ja) | 2004-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7447775B1 (en) | Methods and apparatus for supporting transmission of streaming data | |
US7079501B2 (en) | Method and system for efficiently delivering content to multiple requesters | |
US6629125B2 (en) | Storing a frame header | |
US6956853B1 (en) | Receive processing with network protocol bypass | |
US7577164B2 (en) | Network architecture and methods for transparent on-line cross-sessional encoding and transport of network communications data | |
US8090790B2 (en) | Method and system for splicing remote direct memory access (RDMA) transactions in an RDMA-aware system | |
US7080308B2 (en) | Method and apparatus to perform error control | |
US8225188B2 (en) | Apparatus for blind checksum and correction for network transmissions | |
US7565454B2 (en) | State migration in multiple NIC RDMA enabled devices | |
US20110099243A1 (en) | Apparatus and method for in-line insertion and removal of markers | |
US8271669B2 (en) | Method and system for extended steering tags (STAGS) to minimize memory bandwidth for content delivery servers | |
US7096272B1 (en) | Methods and apparatus for pooling and depooling the transmission of stream data | |
US20040042456A1 (en) | Method and system for processing data packets | |
US10536561B2 (en) | Data stream pipelining and replication at a delivery node of a content delivery network | |
US11979340B2 (en) | Direct data placement | |
US8068515B2 (en) | Faster multimedia synchronization of broadcast streams using router caching of RTCP packets | |
US7539204B2 (en) | Data and context memory sharing | |
JP2002064487A (ja) | ストリーム配信装置 | |
JP3558978B2 (ja) | ストリーム配信装置および方法および記録媒体 | |
CN101064671A (zh) | 一种基于p2p技术的网络视频信号的处理方法 | |
EP1497741A1 (en) | Optimized digital media delivery engine | |
US7532644B1 (en) | Method and system for associating multiple payload buffers with multidata message | |
US6493764B1 (en) | Data communications apparatus, method and computer program product implementing data communications protocol with efficient packing of datagrams | |
CN106534137A (zh) | 媒体流传输方法及装置 | |
JP2002199015A (ja) | ネットワークデータサーバ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040225 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040426 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20040430 |
|
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: 20040713 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040715 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 3579335 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080723 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080723 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090723 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090723 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100723 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100723 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110723 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120723 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130723 Year of fee payment: 9 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |