JP2006270818A - Server - Google Patents

Server Download PDF

Info

Publication number
JP2006270818A
JP2006270818A JP2005088961A JP2005088961A JP2006270818A JP 2006270818 A JP2006270818 A JP 2006270818A JP 2005088961 A JP2005088961 A JP 2005088961A JP 2005088961 A JP2005088961 A JP 2005088961A JP 2006270818 A JP2006270818 A JP 2006270818A
Authority
JP
Japan
Prior art keywords
stream
server
fec
network
packet
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.)
Withdrawn
Application number
JP2005088961A
Other languages
Japanese (ja)
Inventor
Toshiya Hisada
俊哉 久田
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.)
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Electric Industries 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 Sumitomo Electric Industries Ltd filed Critical Sumitomo Electric Industries Ltd
Priority to JP2005088961A priority Critical patent/JP2006270818A/en
Publication of JP2006270818A publication Critical patent/JP2006270818A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a server with sufficient processing ability for an FEC process of a plurality of streams. <P>SOLUTION: An FEC server 1 includes a plurality of modules 11-1 to 11-n for performing the FEC process of the streams. A distribution module 13 discriminates to which stream received packets belong and distributes the packets to any one of the plurality of the FEC modules 11-1 to 11-n depending on the results discriminated. Consequently, the number of the FEC module can be easily varied, thus making it possible to provide a server with the sufficient processing ability. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、複数のネットワークを接続するサーバに関し、特に、ストリーミングのパケットロスを回復するためのFEC(Forward Error Correction)エンコード機能またはFECデコード機能を有するサーバに関する。   The present invention relates to a server connecting a plurality of networks, and more particularly to a server having an FEC (Forward Error Correction) encoding function or an FEC decoding function for recovering streaming packet loss.

近年、インターネットが広く普及しており、利用者は世界各地で運営されているサイトの様々な情報にアクセスし、その情報を入手することが可能である。このようなネットワークに接続される装置の中で、複数のネットワーク間に接続され、ストリームを中継する装置がある。   In recent years, the Internet has become widespread, and users can access various information on sites operated in various parts of the world and obtain the information. Among devices connected to such a network, there is a device that is connected between a plurality of networks and relays a stream.

たとえば、特開2004−15551号公報に開示された中継装置は、受信したFECデータの冗長度レベルが低下している場合、冗長度レベルを上げるために受信したFECデータを復号化するとともにその復号化データを再符号化して下流側に送信するものである。
特開2004−15551号公報
For example, the relay device disclosed in Japanese Patent Application Laid-Open No. 2004-15551 decodes the received FEC data and increases the decoding level when the redundancy level of the received FEC data is lowered. The encoded data is re-encoded and transmitted to the downstream side.
JP 2004-15551 A

上述した特開2004−15551号公報に開示された中継装置は、冗長度レベルが低下している場合、受信したFECデータを復号化するとともにその復号化データを再符号化して送信する。また、冗長度レベルが低下していない場合、受信したFECデータをそのまま送信する。したがって、下流側のネットワークがパケットロスの少ないネットワークであり、FECエンコードする必要がない場合でも必ずFECエンコードされたストリームが送信されることになり、トラフィックが増加するといった問題点があった。   When the redundancy level is lowered, the relay device disclosed in Japanese Patent Application Laid-Open No. 2004-15551 described above decodes the received FEC data and re-encodes the decoded data for transmission. If the redundancy level is not lowered, the received FEC data is transmitted as it is. Therefore, the downstream network is a network with little packet loss, and even when there is no need to perform FEC encoding, an FEC encoded stream is always transmitted, which causes a problem that traffic increases.

また、中継装置が複数のストリームをエンコードして送信することになるが、FECエンコード処理時間はFECパラメータに大きく依存する。そのため、中継装置がFECパラメータの異なる複数のストリームを処理する場合、処理に必要な時間が大きく変わることになる。中継装置の処理能力は一定であるため、処理時間が長ければ処理しきれなかったり、処理時間が短ければ処理能力が無駄になったりするといった問題点があった。   In addition, the relay apparatus encodes and transmits a plurality of streams, but the FEC encoding processing time greatly depends on the FEC parameters. Therefore, when the relay device processes a plurality of streams having different FEC parameters, the time required for the processing changes greatly. Since the processing capability of the relay device is constant, there is a problem that the processing cannot be completed if the processing time is long, or the processing capability is wasted if the processing time is short.

同様に、中継装置が複数のストリームを受信してデコードすることになるが、FECデコード処理時間はFECパラメータに大きく依存する。そのため、中継装置がFECパラメータの異なる複数のストリームを処理する場合、処理に必要な時間が大きく変わることになる。中継装置の処理能力は一定であるため、処理時間が長ければ処理しきれなかったり、処理時間が短ければ処理能力が無駄になったりするといった問題点があった。   Similarly, the relay apparatus receives and decodes a plurality of streams, but the FEC decoding processing time greatly depends on the FEC parameters. Therefore, when the relay device processes a plurality of streams having different FEC parameters, the time required for the processing changes greatly. Since the processing capability of the relay device is constant, there is a problem that the processing cannot be completed if the processing time is long, or the processing capability is wasted if the processing time is short.

本発明は、上記問題点を解決するためになされたものであり、第1の目的は、FEC処理が必要ないパケットロスの少ないネットワークにおけるトラフィックを減少させることが可能なサーバを提供することである。   The present invention has been made to solve the above problems, and a first object thereof is to provide a server capable of reducing traffic in a network with little packet loss that does not require FEC processing. .

第2の目的は、複数のストリームのFEC処理のための必要十分な処理能力を持ったサーバを提供することである。   The second object is to provide a server having necessary and sufficient processing capability for FEC processing of a plurality of streams.

本発明のある局面に従えば、パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続するサーバであって、パケットロスの少ないネットワークを介してストリームを受信するための受信手段と、受信手段によって受信されたストリームを誤り訂正可能な形式にエンコードするためのエンコード手段と、エンコード手段によってエンコードされたストリームをパケットロスの多いネットワークを介して送信するための送信手段とを含む。   According to one aspect of the present invention, there is provided a server that connects a network with a high packet loss and a network with a low packet loss, the receiving means for receiving a stream via the network with a low packet loss, and a receiving means. Encoding means for encoding the received stream into an error-correctable format, and transmission means for transmitting the stream encoded by the encoding means via a network with many packet losses.

好ましくは、サーバは、エンコード手段を複数含み、サーバはさらに、受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットを複数のエンコード手段のいずれかに振り分けるための振り分け手段を含む。   Preferably, the server includes a plurality of encoding means, and the server further determines to which stream the packet received by the receiving means belongs, and distributes the packet to any of the plurality of encoding means according to the determination result. Including sorting means.

さらに好ましくは、サーバはさらに、新たに登録するストリームの送信元アドレスおよび宛先アドレスに基づいて、新たに登録するストリームが登録済みストリームと一致するか否かを判定し、一致しない場合には複数のエンコード手段の負荷状況に応じて、新たに登録するストリームをいずれのエンコード手段に振り分けるかを決定して振り分け手段に指示するための制御手段を含む。   More preferably, the server further determines whether or not the newly registered stream matches the registered stream based on the transmission source address and the destination address of the newly registered stream. Control means for determining to which encoding means a stream to be newly registered is assigned according to the load status of the encoding means and instructing the distribution means is included.

さらに好ましくは、制御手段は、誤り訂正用パラメータ毎に定めたストリームのレートの総和と、1つのエンコード手段が処理可能な誤り訂正用パラメータ毎のストリームの最大レートとに基づいて、新たに登録するストリームをいずれのエンコード手段に振り分けるかを決定する。   More preferably, the control means newly registers based on the sum of the stream rates determined for each error correction parameter and the maximum stream rate for each error correction parameter that can be processed by one encoding means. Decide which encoding means to distribute the stream to.

本発明の別の局面に従えば、パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続するサーバであって、パケットロスの多いネットワークを介して誤り訂正可能な形式にエンコードされたストリームを受信するための受信手段と、受信手段によって受信されたストリームをデコードするためのデコード手段と、デコード手段によってデコードされたストリームをパケットロスの少ないネットワークを介して送信するための送信手段とを含む。   According to another aspect of the present invention, a server that connects a network with a high packet loss and a network with a low packet loss, and receives a stream encoded in an error-correctable format via the network with a high packet loss. Receiving means for decoding, a decoding means for decoding the stream received by the receiving means, and a transmission means for transmitting the stream decoded by the decoding means via a network with little packet loss.

好ましくは、サーバは、デコード手段を複数含み、サーバはさらに、受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットを複数のデコード手段のいずれかに振り分けるための振り分け手段を含む。   Preferably, the server includes a plurality of decoding means, and the server further determines to which stream the packet received by the receiving means belongs, and distributes the packet to one of the plurality of decoding means according to the determination result. Including sorting means.

さらに好ましくは、サーバはさらに、新たに登録するストリームの送信元アドレスおよび宛先アドレスに基づいて、新たに登録するストリームが登録済みストリームと一致するか否かを判定し、一致しない場合には複数のデコード手段の負荷状況に応じて、新たに登録するストリームをいずれのデコード手段に振り分けるかを決定して振り分け手段に指示するための制御手段を含む。   More preferably, the server further determines whether or not the newly registered stream matches the registered stream based on the transmission source address and the destination address of the newly registered stream. Control means for determining to which decoding means a stream to be newly registered is assigned and instructing the distribution means in accordance with the load status of the decoding means is included.

さらに好ましくは、制御手段は、誤り訂正用パラメータ毎に定めたストリームのレートの総和と、1つのデコード手段が処理可能な誤り訂正用パラメータ毎のストリームの最大レートとに基づいて、新たに登録するストリームをいずれのデコード手段に振り分けるかを決定する。   More preferably, the control means newly registers based on the sum of the stream rates determined for each error correction parameter and the maximum stream rate for each error correction parameter that can be processed by one decoding means. It is determined to which decoding means the stream is distributed.

本発明のさらに別の局面に従えば、パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続し、マスタのサーバとスレーブのサーバとを含んだサーバであって、マスタのサーバは、パケットロスの少ないネットワークまたは隣接するスレーブのサーバを介してストリームを受信するための第1の受信手段と、第1の受信手段によって受信されたストリームを誤り訂正可能な形式にエンコードするための第1の複数のエンコード手段と、第1の受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットをスレーブのサーバまたは第1の複数のエンコード手段のいずれかに振り分けるための第1の振り分け手段と、第1の複数のエンコード手段によってエンコードされたストリームをパケットロスの多いネットワークまたは隣接するスレーブのサーバを介して送信するための第1の送信手段とを含み、スレーブのサーバは、パケットロスの少ないネットワーク、マスタのサーバまたは隣接する他のスレーブのサーバを介してストリームを受信するための第2の受信手段と、第2の受信手段によって受信されたストリームを誤り訂正可能な形式にエンコードするための第2の複数のエンコード手段と、第2の受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットを第2の複数のエンコード手段のいずれかに振り分けるための第2の振り分け手段と、第2の複数のエンコード手段によってエンコードされたストリームをパケットロスの多いネットワーク、マスタのサーバまたは隣接するスレーブのサーバを介して送信するための第2の送信手段とを含む。   According to yet another aspect of the present invention, a server that connects a network with a high packet loss and a network with a low packet loss and includes a master server and a slave server, the master server having a packet loss First receiving means for receiving a stream via a network with a low network or an adjacent slave server, and a first plurality for encoding the stream received by the first receiving means into an error-correctable format To determine which stream the packet received by the encoding means and the first receiving means belongs to, and distribute the packet to either the slave server or the first plurality of encoding means according to the determination result The first encoded means and the first encoded means encoded by the plurality of encoded means. A first transmission means for transmitting a network via a network with a high packet loss or an adjacent slave server, wherein the slave server is a network with a low packet loss, a master server or another adjacent slave. A second receiving means for receiving the stream via the server, a second plurality of encoding means for encoding the stream received by the second receiving means into an error-correctable format, A second distribution unit for determining which stream the packet received by the reception unit belongs to and distributing the packet to one of the second plurality of encoding units according to the determination result; The stream encoded by other encoding means is used for the network and master server where there is a lot of packet loss. Or a second transmission means for transmitting via the adjacent slave servers.

本発明のさらに別の局面に従えば、パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続し、マスタのサーバとスレーブのサーバとを含んだサーバであって、マスタのサーバは、パケットロスの多いネットワークまたは隣接するスレーブのサーバを介して誤り訂正可能な形式にエンコードされたストリームを受信するための第1の受信手段と、第1の受信手段によって受信されたストリームをデコードするための第1の複数のデコード手段と、第1の受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットをスレーブのサーバまたは第1の複数のデコード手段のいずれかに振り分けるための第1の振り分け手段と、第1の複数のデコード手段によってデコードされたストリームをパケットロスの少ないネットワークまたは隣接するスレーブのサーバを介して送信するための第1の送信手段とを含み、スレーブのサーバは、パケットロスの少ないネットワーク、マスタのサーバまたは隣接する他のスレーブのサーバを介して誤り訂正可能な形式にエンコードされたストリームを受信するための第2の受信手段と、第2の受信手段によって受信されたストリームをデコードするための第2の複数のデコード手段と、第2の受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットを第2の複数のデコード手段のいずれかに振り分けるための第2の振り分け手段と、第2の複数のデコード手段によってデコードされたストリームをパケットロスの少ないネットワーク、マスタのサーバまたは隣接するスレーブのサーバを介して送信するための第2の送信手段とを含む。   According to yet another aspect of the present invention, a server that connects a network with a high packet loss and a network with a low packet loss and includes a master server and a slave server, the master server having a packet loss First receiving means for receiving a stream encoded in an error-correctable format via a network with many networks or adjacent slave servers, and a first receiving means for decoding the stream received by the first receiving means A plurality of decoding means and a stream to which the packet received by the first receiving means belongs, and the packet is sent to either the slave server or the first plurality of decoding means according to the determination result Decoded by the first sorting means for sorting and the first plurality of decoding means First transmission means for transmitting the stream via a network with low packet loss or a server of an adjacent slave, wherein the slave server is connected to a network with low packet loss, a master server, or another adjacent slave. Second receiving means for receiving a stream encoded in an error-correctable format via a server, and a plurality of second decoding means for decoding the stream received by the second receiving means; A second distribution unit for determining which stream the packet received by the second reception unit belongs to, and distributing the packet to any one of the second plurality of decoding units according to the determination result; Streams decoded by multiple decoding means in a network with little packet loss And a second transmission means for transmitting through the master server or adjacent slave server.

本発明のある局面によれば、エンコード手段が、受信手段によって受信されたストリームを誤り訂正可能な形式にエンコードし、送信手段が、エンコード手段によってエンコードされたストリームをパケットロスの多いネットワークを介して送信するので、パケットロスの少ないネットワークにおけるトラフィックを減少させることが可能となる。   According to an aspect of the present invention, the encoding unit encodes the stream received by the receiving unit into an error-correctable format, and the transmitting unit transmits the stream encoded by the encoding unit via a network having a large packet loss. Since transmission is performed, it is possible to reduce traffic in a network with little packet loss.

また、振り分け手段が、受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットを複数のエンコード手段のいずれかに振り分けるので、エンコード手段の数を容易に変更することができ、必要十分な処理能力を持ったサーバを提供することが可能となる。   In addition, since the distribution unit determines which stream the packet received by the reception unit belongs to, and distributes the packet to one of a plurality of encoding units according to the determination result, the number of encoding units can be easily changed. Therefore, it is possible to provide a server having necessary and sufficient processing capacity.

また、制御手段が、新たに登録するストリームの送信元アドレスおよび宛先アドレスに基づいて、新たに登録するストリームが登録済みストリームと一致するか否かを判定し、一致しない場合には複数のエンコード手段の負荷状況に応じて、新たに登録するストリームをいずれのエンコード手段に振り分けるかを決定して振り分け手段に指示するので、エンコード処理をしきれなかったり、サーバの処理能力が無駄になったりすることを防止することが可能となる。   Further, the control means determines whether or not the newly registered stream matches the registered stream based on the transmission source address and the destination address of the newly registered stream. Depending on the load status, the encoding method is determined and the distribution unit is instructed to allocate the newly registered stream, so that the encoding process cannot be completed or the processing capacity of the server is wasted. Can be prevented.

また、制御手段が、誤り訂正用パラメータ毎に定めたストリームのレートの総和と、1つのエンコード手段が処理可能な誤り訂正用パラメータ毎のストリームの最大レートとに基づいて、新たに登録するストリームをいずれのエンコード手段に振り分けるかを決定するので、複数のエンコード手段の負荷状況を容易に判定することが可能となる。   In addition, the control unit determines a stream to be newly registered based on the sum of the stream rates determined for each error correction parameter and the maximum stream rate for each error correction parameter that can be processed by one encoding unit. Since it is determined which encoding means to distribute, it becomes possible to easily determine the load status of the plurality of encoding means.

本発明の別の局面によれば、デコード手段が、受信手段によって受信されたストリームをデコードし、送信手段が、デコード手段によってデコードされたストリームをパケットロスの少ないネットワークを介して送信するので、パケットロスの少ないネットワークにおけるトラフィックを減少させることが可能となる。   According to another aspect of the present invention, the decoding unit decodes the stream received by the receiving unit, and the transmitting unit transmits the stream decoded by the decoding unit via a network with little packet loss. It becomes possible to reduce traffic in a network with little loss.

また、振り分け手段が、受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットを複数のデコード手段のいずれかに振り分けるので、デコード手段の数を容易に変更することができ、必要十分な処理能力を持ったサーバを提供することが可能となる。   In addition, since the distribution unit determines which stream the packet received by the reception unit belongs to, and distributes the packet to one of a plurality of decoding units according to the determination result, the number of decoding units can be easily changed. Therefore, it is possible to provide a server having necessary and sufficient processing capacity.

また、制御手段が、新たに登録するストリームの送信元アドレスおよび宛先アドレスに基づいて、新たに登録するストリームが登録済みストリームと一致するか否かを判定し、一致しない場合には複数のデコード手段の負荷状況に応じて、新たに登録するストリームをいずれのデコード手段に振り分けるかを決定して振り分け手段に指示するので、デコード処理をしきれなかったり、サーバの処理能力が無駄になったりすることを防止することが可能となる。   Further, the control means determines whether or not the newly registered stream matches the registered stream based on the transmission source address and the destination address of the newly registered stream. Depending on the load status of the system, the decoding unit to which the newly registered stream is to be allocated is determined and the distribution unit is instructed, so that the decoding process cannot be completed or the processing capacity of the server is wasted. Can be prevented.

また、制御手段が、誤り訂正用パラメータ毎に定めたストリームのレートの総和と、1つのデコード手段が処理可能な誤り訂正用パラメータ毎のストリームの最大レートとに基づいて、新たに登録するストリームをいずれのデコード手段に振り分けるかを決定するので、複数のデコード手段の負荷状況を容易に判定することが可能となる。   In addition, the control means determines the stream to be newly registered based on the sum of the stream rates determined for each error correction parameter and the maximum stream rate for each error correction parameter that can be processed by one decoding means. Since it is determined which of the decoding means is assigned, it is possible to easily determine the load status of the plurality of decoding means.

本発明のさらに別の局面によれば、第1の振り分け手段が、第1の受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットをスレーブのサーバまたは第1の複数のエンコード手段のいずれかに振り分けるので、スレーブのサーバの数や、エンコード手段の数を容易に変更することができ、必要十分な処理能力を持ったサーバを提供することが可能となる。   According to still another aspect of the present invention, the first distribution unit determines to which stream the packet received by the first reception unit belongs, and the packet is sent to the slave server or the second server according to the determination result. Since it is distributed to any one of a plurality of encoding means, the number of slave servers and the number of encoding means can be easily changed, and a server having necessary and sufficient processing capability can be provided. .

本発明のさらに別の局面によれば、第1の振り分け手段が、第1の受信手段によって受信されたパケットがどのストリームに属するかを判別し、判別結果に応じてパケットをスレーブのサーバまたは第1の複数のデコード手段のいずれかに振り分けるので、スレーブのサーバの数や、デコード手段の数を容易に変更することができ、必要十分な処理能力を持ったサーバを提供することが可能となる。   According to still another aspect of the present invention, the first distribution unit determines to which stream the packet received by the first reception unit belongs, and the packet is sent to the slave server or the second server according to the determination result. Since it is distributed to any one of the plurality of decoding means, the number of slave servers and the number of decoding means can be easily changed, and it becomes possible to provide a server having necessary and sufficient processing capability. .

(第1の実施の形態)
図1は、本発明の第1の実施の形態におけるFECサーバを含んだシステムの構成例を示す図である。FECサーバ1は、パケットロスの多いネットワーク、たとえばインターネット2と、パケットロスの少ないネットワーク、たとえばイントラネット3とに接続され、FECエンコード機能およびFECデコード機能を有している。
(First embodiment)
FIG. 1 is a diagram illustrating a configuration example of a system including an FEC server according to the first embodiment of this invention. The FEC server 1 is connected to a network with a large packet loss, such as the Internet 2, and a network with a small packet loss, such as an intranet 3, and has an FEC encoding function and an FEC decoding function.

ここで、パケットロスの多いネットワークとは、10−3〜10−1程度の割合でパケットロスが発生するネットワークを指すものとする。たとえば、4Mbpsのストリームにおいて、1パケットを1000バイトとすると、1秒あたりのパケット数は500パケットとなるが、パケットロス率が10−3であれば2秒に1回パケットロスが発生することになる。 Here, a network with a lot of packet loss refers to a network in which packet loss occurs at a rate of about 10 −3 to 10 −1 . For example, in a 4 Mbps stream, if one packet is 1000 bytes, the number of packets per second is 500, but if the packet loss rate is 10 −3 , packet loss occurs once every 2 seconds. Become.

また、パケットロスの少ないネットワークとは、10−7以下の割合でパケットロスが発生するネットワークを指すものとする。パケットロス率が10−7であれば約5.5時間に1回パケットロスが発生することになる。なお、パケットロスの多いネットワークおよびパケットロスの少ないネットワークの定義は、これらの値に限られるものでないことは言うまでもない。 A network with little packet loss refers to a network in which packet loss occurs at a rate of 10 −7 or less. If the packet loss rate is 10 −7 , a packet loss occurs once every approximately 5.5 hours. Needless to say, the definitions of a network with a large packet loss and a network with a small packet loss are not limited to these values.

FECサーバ1に適用可能なFECの方式としては、Raptor符号、LT(Luby Transform)符号、LDPC(Low Density Parity Check)符号、ハミング符号、BCH(Bose Chaudhuri-Hocquenghem)符号、リードソロモン符号、代数幾何符号などの誤り訂正符号がある。   FEC methods applicable to the FEC server 1 include Raptor code, LT (Luby Transform) code, LDPC (Low Density Parity Check) code, Hamming code, BCH (Bose Chaudhuri-Hocquenghem) code, Reed-Solomon code, algebraic geometry There are error correction codes such as codes.

インターネット2には、監視カメラなどのストリーミングサーバ4と、STB(Set Top Box)などのストリーミングクライアント5とが接続される。ストリーミングサーバ4はFECエンコード機能を有しており、ストリーミングクライアント5はFECデコード機能を有している。   A streaming server 4 such as a monitoring camera and a streaming client 5 such as an STB (Set Top Box) are connected to the Internet 2. The streaming server 4 has an FEC encoding function, and the streaming client 5 has an FEC decoding function.

また、イントラネット3には、FEC機能を有さない蓄積サーバなどのストリーミングクライアント6と、FEC機能を有さない配信サーバなどのストリーミングサーバ7とが接続される。ストリーミングクライアント6およびストリーミングサーバ7は、既存のものが使用可能である。   In addition, a streaming client 6 such as a storage server that does not have an FEC function and a streaming server 7 such as a distribution server that does not have an FEC function are connected to the intranet 3. Existing streaming clients 6 and streaming servers 7 can be used.

インターネット2上のストリーミングサーバ4からイントラネット3上のストリーミングクライアント6にストリームが送信される場合、FECサーバ1はストリーミングサーバ4から受信したFECエンコードされたストリームをFECデコードし、通常のストリーム(FECエンコードされていないストリーム)としてストリーミングクライアント6に送信する。   When a stream is transmitted from the streaming server 4 on the Internet 2 to the streaming client 6 on the intranet 3, the FEC server 1 performs FEC decoding on the FEC-encoded stream received from the streaming server 4, and generates a normal stream (FEC encoded). Stream)) to the streaming client 6.

また、イントラネット3上のストリーミングサーバ7からインターネット2上のストリーミングクライアント5にストリームが送信される場合、FECサーバ1はストリーミングサーバ7から受信した通常のストリーム(FECエンコードされていないストリーム)をFECエンコードし、FECエンコードされたストリームをストリーミングクライアント5に送信する。   When a stream is transmitted from the streaming server 7 on the intranet 3 to the streaming client 5 on the Internet 2, the FEC server 1 performs FEC encoding on a normal stream (non-FEC encoded stream) received from the streaming server 7. The FEC encoded stream is transmitted to the streaming client 5.

図2は、FECサーバ1のハードウェア構成を示す図である。FECサーバ1は、FEC処理を行なう複数のFECモジュール11−1〜11−nと、FECサーバ1の全体的な制御を行なう制御モジュール12と、インターネットポート14およびイントラネットポート15に接続され、ストリームを複数のFECモジュール11−1〜11−nに振り分けるイーサネット(登録商標)スイッチ13とを含む。   FIG. 2 is a diagram illustrating a hardware configuration of the FEC server 1. The FEC server 1 is connected to a plurality of FEC modules 11-1 to 11-n that perform FEC processing, a control module 12 that performs overall control of the FEC server 1, an Internet port 14, and an intranet port 15. And an Ethernet (registered trademark) switch 13 that distributes the plurality of FEC modules 11-1 to 11-n.

FECモジュール11−1〜11−nは着脱可能となっており、使用条件に応じて任意の数のFECモジュールを実装することができる。FECモジュール11−1〜11−nのそれぞれは、CPU(Central Processing Unit)21およびメモリ22を有しており、CPU21がメモリ22に格納されるプログラムを実行することによってFEC処理(FECエンコード、FECデコード)を行なう。複数のFECモジュール11−1〜11−nがそれぞれのプログラムを実行することによって、分散処理が実現される。   The FEC modules 11-1 to 11-n are detachable, and an arbitrary number of FEC modules can be mounted according to use conditions. Each of the FEC modules 11-1 to 11-n includes a CPU (Central Processing Unit) 21 and a memory 22. When the CPU 21 executes a program stored in the memory 22, FEC processing (FEC encoding, FEC) Decode). A plurality of FEC modules 11-1 to 11-n execute their respective programs, thereby realizing distributed processing.

制御モジュール12は、CPU31およびメモリ32を有しており、CPU31がメモリ32に格納されるプログラムを実行することによってFECサーバ1の全体的な制御を行なう。   The control module 12 includes a CPU 31 and a memory 32, and performs overall control of the FEC server 1 when the CPU 31 executes a program stored in the memory 32.

イーサネット(登録商標)スイッチ13は、インターネットポート14、イントラネットポート15、FECモジュール11−1〜11−nおよび制御モジュール12に接続される。イーサネット(登録商標)スイッチ13は、インターネットポート14を介して受信したFECエンコードされたストリームをFECモジュール11−1〜11−nに振り分ける。そして、FECモジュール11−1〜11−nからデコードされた後の通常のストリームを受け、そのストリームをイントラネットポート15を介して送信する。   The Ethernet (registered trademark) switch 13 is connected to the Internet port 14, the intranet port 15, the FEC modules 11-1 to 11-n and the control module 12. The Ethernet (registered trademark) switch 13 distributes the FEC-encoded stream received via the Internet port 14 to the FEC modules 11-1 to 11-n. Then, the normal stream after being decoded from the FEC modules 11-1 to 11-n is received, and the stream is transmitted via the intranet port 15.

また、イーサネット(登録商標)スイッチ13は、イントラネットポート15を介して受信した通常のストリームをFECモジュール11−1〜11−nに振り分ける。そして、FECモジュール11−1〜11−nからFECエンコードされたストリームを受け、インターネットポート14を介して送信する。   Further, the Ethernet (registered trademark) switch 13 distributes the normal stream received via the intranet port 15 to the FEC modules 11-1 to 11-n. Then, FEC encoded streams are received from the FEC modules 11-1 to 11-n and transmitted via the Internet port 14.

インターネットポート14およびイントラネットポート15は、それぞれ1Gbpsイーサネット(登録商標)の性能を有している。また、イーサネット(登録商標)スイッチ13と、FECモジュール11−1〜11−nおよび制御モジュール12との間のインタフェースは、100Mbpsイーサネット(登録商標)の性能を有している。   Each of the Internet port 14 and the intranet port 15 has a performance of 1 Gbps Ethernet (registered trademark). The interface between the Ethernet (registered trademark) switch 13 and the FEC modules 11-1 to 11-n and the control module 12 has a performance of 100 Mbps Ethernet (registered trademark).

図3は、FECサーバ1がイントラネットポート15を介して受信したストリームをFECエンコードして送信するところを模式的に示す図である。振り分けモジュール13は、イントラネットポート15を介して通常のストリームを受信すると、そのストリームを処理すべきFECモジュールに送る。そして、FECエンコードされたストリームは、インターネットポート14を介してストリーミングクライアント5に送信される。   FIG. 3 is a diagram schematically illustrating the FEC server 1 transmitting the stream received through the intranet port 15 after FEC encoding. When the distribution module 13 receives a normal stream via the intranet port 15, the distribution module 13 sends the stream to the FEC module to be processed. Then, the FEC encoded stream is transmitted to the streaming client 5 through the Internet port 14.

図4は、FECサーバ1がインターネットポート14を介して受信したFECエンコードされたストリームをFECデコードして送信するところを模式的に示す図である。振り分けモジュール13は、インターネットポート14を介してFECエンコードされたストリームを受信すると、そのストリームを処理すべきFECモジュールに送る。そして、FECデコードされたストリームは、イントラネットポート15を介してストリーミングクライアント6に送信される。   FIG. 4 is a diagram schematically showing the FEC server 1 transmitting the FEC-encoded stream received via the Internet port 14 by FEC decoding. When the distribution module 13 receives the FEC-encoded stream via the Internet port 14, the distribution module 13 sends the stream to the FEC module to be processed. Then, the FEC decoded stream is transmitted to the streaming client 6 via the intranet port 15.

なお、振り分けモジュール13は、インターネットポート14側とイントラネットポート15側のそれぞれに設けられ、イーサネット(登録商標)スイッチ13がこれらの機能を有しているものとする。   The distribution module 13 is provided on each of the Internet port 14 side and the intranet port 15 side, and the Ethernet (registered trademark) switch 13 has these functions.

制御モジュール12は、図示しない管理装置からの設定や、ストリーミングクライアントとストリーミングサーバとの間のRTSP(Real-Time Streaming Protocol)等のセッション設定プロトコルのスヌーピングなどによって、ストリームのセッション情報とFECパラメータとを取得する。   The control module 12 sets the session information and FEC parameters of the stream by setting from a management device (not shown) or snooping a session setting protocol such as RTSP (Real-Time Streaming Protocol) between the streaming client and the streaming server. get.

制御モジュール12は、後述するように、ストリームのFECパラメータとFECモジュールの負荷状況とに応じて、ストリームをどのFECモジュールに処理させるかを決定する。そして、制御モジュール12は、振り分けモジュール13にそのストリームのセッション情報と処理を行なうFECモジュールとを設定し、処理を行なうFECモジュールにそのストリームのセッション情報とFECパラメータとを設定する。   As will be described later, the control module 12 determines which FEC module to process the stream according to the FEC parameter of the stream and the load status of the FEC module. Then, the control module 12 sets the session information of the stream and the FEC module for processing in the distribution module 13, and sets the session information of the stream and the FEC parameter in the FEC module for processing.

セッション情報は、ストリーミングサーバとストリーミングクライアントとのIP(Internet Protocol)アドレス、ストリーミングクライアントのUDP(User Datagram-Protocol)ポート番号、ストリームのレートなどを含む。   The session information includes an IP (Internet Protocol) address between the streaming server and the streaming client, a UDP (User Datagram-Protocol) port number of the streaming client, a stream rate, and the like.

FECパラメータは、プロトコルバージョン、ソースブロックサイズ、エンコーディングユニットサイズ、目標ロス率、ネットワークロス率、FECエンコードかFECデコードかの指定などを含む。   The FEC parameters include protocol version, source block size, encoding unit size, target loss rate, network loss rate, designation of FEC encoding or FEC decoding, and the like.

振り分けモジュール13は、制御モジュール12から受けたセッション情報に基づいて、インターネットポート14またはイントラネットポート15を介して受信したパケットが、FEC処理を行なうべきストリームに属するか否かを判定する。受信したパケットがFEC処理を行なうべきストリームに属すると判定した場合、そのストリームを処理すべきFECモジュールにパケットを送る。また、受信したパケットがFEC処理を行なうべきストリームに属さないと判定した場合、他方のポートからそのパケットをそのまま送信する。   Based on the session information received from the control module 12, the distribution module 13 determines whether or not a packet received via the Internet port 14 or the intranet port 15 belongs to a stream to be subjected to FEC processing. When it is determined that the received packet belongs to a stream to be subjected to FEC processing, the packet is sent to the FEC module to process the stream. If it is determined that the received packet does not belong to the stream to be subjected to FEC processing, the packet is transmitted as it is from the other port.

振り分けモジュール13は、受信パケットのソースIPアドレスとストリーミングサーバのIPアドレスとが一致し、受信パケットの宛先IPアドレスとストリーミングクライアントのIPアドレスとが一致する場合に、そのパケットがFEC処理を行なうべきストリームに属すると判定する。   If the source IP address of the received packet matches the IP address of the streaming server, and the destination IP address of the received packet matches the IP address of the streaming client, the distribution module 13 is a stream to which the packet is to be subjected to FEC processing. It is determined that it belongs to.

FECモジュール11−1〜11−nは、振り分けモジュール13から受けた受信パケットのうち、受信パケットの宛先UDPポート番号とストリーミングクライアントのUDPポート番号とが一致する場合にのみFEC処理を行ない、その他のパケットにはFEC処理を行なわない。そして、FECモジュール11−1〜11−nは、全ての受信パケットについて、IPのIdentificationフィールドの変更、チェックサムの変更などを行なう。生成されたパケットは他方のポートから送信される。   The FEC modules 11-1 to 11-n perform the FEC process only when the destination UDP port number of the received packet matches the UDP port number of the streaming client among the received packets received from the distribution module 13. The packet is not subjected to FEC processing. Then, the FEC modules 11-1 to 11-n change the IP Identification field, change the checksum, etc. for all received packets. The generated packet is transmitted from the other port.

次に、制御モジュール12がストリームを処理すべきFECモジュールを決定する方法について説明する。1つのFECモジュールが処理可能なストリーム数は、個々のストリームの処理に必要な処理能力の総和が1つのFECモジュールの処理能力以下という条件を満足するストリーム数となる。   Next, a method for the control module 12 to determine the FEC module that should process the stream will be described. The number of streams that can be processed by one FEC module is the number of streams that satisfies the condition that the sum of the processing capacities required for processing individual streams is equal to or less than the processing capability of one FEC module.

個々のストリームの処理に必要な処理能力は、FECパラメータとストリームのレートに依存する。必要な処理能力とFECパラメータとの関係は簡単に表わすことができないが、必要な処理能力はストリームのレートに比例する。したがって、1つのFECモジュールが処理可能なストリーム数を決定するための条件は、次式のように表わすことができる。   The processing power required to process individual streams depends on the FEC parameters and the stream rate. The relationship between required processing power and FEC parameters cannot be expressed simply, but the required processing power is proportional to the stream rate. Therefore, the condition for determining the number of streams that can be processed by one FEC module can be expressed as follows.

Figure 2006270818
Figure 2006270818

ここで、eiはFECパラメータiのストリーム(FECエンコード)のレートの総和、diはFECパラメータiのストリーム(FECデコード)のレートの総和、Eiは1つのFECモジュールが処理可能なFECパラメータiのストリーム(FECエンコード)の最大レート、Diは1つのFECモジュールが処理可能なFECパラメータiのストリーム(FECデコード)の最大レートを示している。   Here, ei is the sum of the rates of the FEC parameter i stream (FEC encoding), di is the sum of the rates of the FEC parameter i stream (FEC decoding), and Ei is the stream of the FEC parameter i that can be processed by one FEC module. The maximum rate of (FEC encoding), Di indicates the maximum rate of a stream of FEC parameter i (FEC decoding) that can be processed by one FEC module.

ストリームのレートは、ストリームのオリジナルのレート、すなわちFECエンコードであればFECエンコード前のレート、FECデコードであればFECデコード後のレートとする。   The stream rate is the original rate of the stream, that is, the rate before FEC encoding in the case of FEC encoding, and the rate after FEC decoding in the case of FEC decoding.

EiやDiを決定する簡単な方法はないが、これらの値は基本的にはCPUの処理能力で決定される。したがって、予めこれらの値を実測しておき、それを用いるものとする。また、制御モジュール12が各ストリームのレートを実測しており、その値に基づいてeiおよびdiが決定される。   There is no simple method for determining Ei and Di, but these values are basically determined by the processing capacity of the CPU. Therefore, these values are measured in advance and used. The control module 12 actually measures the rate of each stream, and ei and di are determined based on the values.

図5は、EiおよびDiの値を格納するテーブルの一例を示す図である。図5に示すように、FECパラメータ毎に、1つのFECモジュールが処理可能な最大レートEiおよびDiを保持する。たとえば、インデックスNで指し示されるテーブルには、1つのFECモジュールが処理可能なFECパラメータnのストリームの最大レートEnおよびDnが保持される。   FIG. 5 is a diagram illustrating an example of a table that stores values of Ei and Di. As shown in FIG. 5, for each FEC parameter, the maximum rates Ei and Di that can be processed by one FEC module are held. For example, the table indicated by the index N holds the maximum rates En and Dn of the stream of the FEC parameter n that can be processed by one FEC module.

また、このテーブルは、EiおよびDiのデフォルト値も保持している。これらのデフォルト値は、FECパラメータが他のテーブルのいずれにも合致しないストリームに対して用いられ、オプションで設定可能である。このデフォルト値が設定されていない場合には、いずれにも合致しないストリームの処理は行なわない。   This table also holds default values for Ei and Di. These default values are used for streams whose FEC parameters do not match any of the other tables and can be optionally set. If this default value is not set, processing of streams that do not match any of them is not performed.

FECモジュールにストリームを追加する場合、制御モジュール12はFECモジュールの負荷が均等となるように、式(1)に示す条件式の右辺の値が最も小さいFECモジュールにそのストリームを追加する。ただし、同一のストリーミングサーバとストリーミングクライアントとの間のストリームが複数ある場合、すなわちIPアドレスがそれぞれ同一のストリームが複数ある場合、それらのストリームは全て1つのFECモジュールで処理する必要がある。したがって、既に同一のストリーミングサーバとストリーミングクライアントとの間のストリームが設定されている場合には、同一のFECモジュールにそのストリームを追加する。   When a stream is added to the FEC module, the control module 12 adds the stream to the FEC module having the smallest value on the right side of the conditional expression shown in Expression (1) so that the load on the FEC module is equalized. However, when there are a plurality of streams between the same streaming server and streaming client, that is, when there are a plurality of streams having the same IP address, these streams all need to be processed by one FEC module. Therefore, when a stream between the same streaming server and streaming client is already set, the stream is added to the same FEC module.

図6は、本発明の第1の実施の形態におけるFECサーバ1のストリーム登録時における制御モジュール12の処理手順を説明するためのフローチャートである。まず、制御モジュール12は、新たに登録するストリームのセッション情報およびFECパラメータを図示しない管理装置などから取得し(S11)、図5に示すテーブルから、そのFECパラメータに対応したインデックスiを取得する(S12)。   FIG. 6 is a flowchart for explaining the processing procedure of the control module 12 at the time of stream registration of the FEC server 1 according to the first embodiment of the present invention. First, the control module 12 acquires session information and FEC parameters of a stream to be newly registered from a management device (not shown) or the like (S11), and acquires an index i corresponding to the FEC parameters from the table shown in FIG. S12).

次に、制御モジュール12は、登録済みのストリームの中に、ストリーミングサーバのIPアドレスが新たに登録するストリームのストリーミングサーバのIPアドレスと同一であり、かつストリーミングクライアントのIPアドレスが新たに登録するストリームのストリーミングクライアントのIPアドレスと同一であるストリームがあるか否かを判定する(S13)。そのようなストリームが既に登録済みであれば(S13,Yes)、そのストリームが登録されているFECモジュールjを、新たなストリームの振り分け先に仮決定し(S14)、ステップS17の処理に進む。   Next, the control module 12 has a stream in which the IP address of the streaming server is the same as the IP address of the streaming server to be newly registered and the IP address of the streaming client is newly registered in the registered stream. It is determined whether there is a stream that is identical to the IP address of the streaming client (S13). If such a stream has already been registered (S13, Yes), the FEC module j to which the stream is registered is provisionally determined as a new stream distribution destination (S14), and the process proceeds to step S17.

また、そのようなストリームが登録されていなければ(S13,No)、制御モジュール12は、各FECモジュールの、FECパラメータiを持つ登録済みストリームに関する上記式(1)の値を算出し(S15)、その計算結果が一番小さいFECモジュールjを、新たなストリームの振り分け先に仮決定し(S16)、ステップS17の処理に進む。   If such a stream is not registered (S13, No), the control module 12 calculates the value of the above formula (1) regarding the registered stream having the FEC parameter i of each FEC module (S15). The FEC module j having the smallest calculation result is provisionally determined as a new stream distribution destination (S16), and the process proceeds to step S17.

ステップS17において、新たに登録するストリームのレートを加え、FECモジュールjのFECパラメータiを持つストリームに関する上記式(1)の値を算出する。   In step S17, the rate of the stream to be newly registered is added, and the value of the above equation (1) regarding the stream having the FEC parameter i of the FEC module j is calculated.

計算結果が1以下の場合には(S18,1以下)、制御モジュール12は、図示しない内部管理テーブルに新たに登録するストリームのセッション情報、FECパラメータおよび振り分け先FECモジュールのインデックスjを登録する(S19)。そして、FECモジュールjに、新たに登録するストリームのセッション情報およびFECパラメータを登録する(S20)。   When the calculation result is 1 or less (S18, 1 or less), the control module 12 registers the session information of the stream to be newly registered in the internal management table (not shown), the FEC parameter, and the index j of the distribution destination FEC module ( S19). Then, session information and FEC parameters of a stream to be newly registered are registered in the FEC module j (S20).

そして、振り分けモジュール13に、新たに登録するストリームのセッション情報および振り分け先FECモジュールのインデックスjを登録し(S21)、処理を終了する。なお、FECエンコードの場合には、これらの情報がイントラネットポート15側の振り分けモジュール13に登録され、FECデコードの場合には、これらの情報がインターネットポート14側の振り分けモジュール13に登録される。   Then, the session information of the stream to be newly registered and the index j of the distribution destination FEC module are registered in the distribution module 13 (S21), and the process ends. In the case of FEC encoding, these pieces of information are registered in the distribution module 13 on the intranet port 15 side, and in the case of FEC decoding, these pieces of information are registered in the distribution module 13 on the Internet port 14 side.

また、計算結果が1より大きい場合には(S18,1より大)、制御モジュール12は、新たなストリームの登録を中止し(S22)、処理を終了する。   If the calculation result is greater than 1 (greater than S18, 1), the control module 12 stops registering a new stream (S22) and ends the process.

図7は、本発明の第1の実施の形態におけるFECサーバ1のストリーム登録時におけるFECモジュール11の処理手順を説明するためのフローチャートである。まず、FECモジュール11は、制御モジュール12から新たに登録するストリームのセッション情報およびFECパラメータを取得する(S31)。そして、図示しない内部管理テーブルに、新たに登録するストリームのセッション情報およびFECパラメータを登録し(S32)、処理を終了する。   FIG. 7 is a flowchart for explaining a processing procedure of the FEC module 11 at the time of stream registration of the FEC server 1 according to the first embodiment of this invention. First, the FEC module 11 acquires session information and FEC parameters of a stream to be newly registered from the control module 12 (S31). Then, session information and FEC parameters of a stream to be newly registered are registered in an internal management table (not shown) (S32), and the process ends.

図8は、本発明の第1の実施の形態におけるFECサーバ1のストリーム登録時における振り分けモジュール13の処理手順を説明するためのフローチャートである。まず、振り分けモジュール13は、制御モジュール12から新たに登録するストリームのセッション情報および振り分け先FECモジュールのインデックスjを取得する(S41)。そして、図示しない内部管理テーブルに、新たに登録するストリームのセッション情報および振り分け先FECモジュールのインデックスjを登録し(S42)、処理を終了する。   FIG. 8 is a flowchart for explaining a processing procedure of the distribution module 13 at the time of stream registration of the FEC server 1 according to the first embodiment of this invention. First, the distribution module 13 acquires the session information of the stream to be newly registered and the index j of the distribution destination FEC module from the control module 12 (S41). Then, the session information of the stream to be newly registered and the index j of the distribution destination FEC module are registered in an internal management table (not shown) (S42), and the process ends.

図9は、本発明の第1の実施の形態におけるFECサーバ1のFEC処理時における振り分けモジュール13の処理手順を説明するためのフローチャートである。まず、振り分けモジュール13は、インターネットポート14またはイントラネットポート15を介してパケットを受信すると(S51)、登録済みのストリームの中に、ストリーミングサーバのIPアドレスが受信パケットのソースIPアドレスと同一であり、かつストリーミングクライアントのIPアドレスが受信パケットの宛先IPアドレスと同一であるストリームがあるか否かを判定する(S52)。   FIG. 9 is a flowchart for explaining the processing procedure of the distribution module 13 during the FEC processing of the FEC server 1 according to the first embodiment of this invention. First, when the distribution module 13 receives a packet via the Internet port 14 or the intranet port 15 (S51), the IP address of the streaming server is the same as the source IP address of the received packet in the registered stream. In addition, it is determined whether there is a stream in which the IP address of the streaming client is the same as the destination IP address of the received packet (S52).

そのようなストリームが既に登録済みであれば(S52,Yes)、登録された振り分け先FECモジュールjに受信パケットを転送し(S53)、処理を終了する。また、そのようなストリームが登録されていなければ(S52,No)、受信側と反対のポート、すなわちFECエンコードの場合にはインターネットポート14、FECデコードの場合にはイントラネットポート15から受信パケットを送信し(S54)、処理を終了する。   If such a stream has already been registered (S52, Yes), the received packet is transferred to the registered distribution destination FEC module j (S53), and the process ends. If such a stream is not registered (S52, No), the received packet is transmitted from the port opposite to the receiving side, that is, the Internet port 14 in the case of FEC encoding and the intranet port 15 in the case of FEC decoding. (S54), and the process ends.

図10は、本発明の第1の実施の形態におけるFECサーバ1のFEC処理時におけるFECモジュール11の処理手順を説明するためのフローチャートである。まず、FECモジュール11は、振り分けモジュール13からパケットを受信すると(S61)、登録済みストリームの中に、ストリーミングクライアントのUDPポート番号が受信パケットの宛先UDPポート番号と同一であるストリームがあるか否かを判定する(S62)。   FIG. 10 is a flowchart for explaining the processing procedure of the FEC module 11 during the FEC processing of the FEC server 1 according to the first embodiment of this invention. First, when the FEC module 11 receives a packet from the distribution module 13 (S61), it is determined whether or not there is a stream in the registered stream in which the UDP port number of the streaming client is the same as the destination UDP port number of the received packet. Is determined (S62).

そのようなストリームが既に登録済みであれば(S62,Yes)、そのストリームのFEC処理を行なう。すなわち、受信パケットがIPフラグメントにより分割されている場合には、データの組立を行ない(S63)、登録されているセッション情報およびFECパラメータに従って、受信パケットにFEC処理を行ない、送信パケットを生成する(S64)。このとき、1つのパケットにデータが収まらない場合には、送信パケットをIPフラグメントにより分割し(S65)、ステップS67に処理が進む。   If such a stream has already been registered (S62, Yes), the FEC process of the stream is performed. That is, when the received packet is divided by the IP fragment, data is assembled (S63), FEC processing is performed on the received packet according to the registered session information and FEC parameters, and a transmitted packet is generated ( S64). At this time, if the data does not fit in one packet, the transmission packet is divided by the IP fragment (S65), and the process proceeds to step S67.

また、そのようなストリームが登録されていない場合には(S62,No)、そのストリームに対する処理を行なわずに、受信パケットをそのまま送信パケットとし(S66)、ステップS67に処理が進む。   If such a stream is not registered (S62, No), the received packet is used as it is as a transmission packet without performing the process on the stream (S66), and the process proceeds to step S67.

ステップS67において、FECモジュール11は、送信パケットのIPヘッダのIdentificationフィールドが、同一のソースIPアドレスおよび宛先IPアドレスを持つパケットとの間でユニークとなるように変更し、IPのヘッダチェックサムの値を再計算し、送信パケットに格納する(S67)。   In step S67, the FEC module 11 changes the Identification field of the IP header of the transmission packet to be unique among packets having the same source IP address and destination IP address, and the value of the IP header checksum. Is recalculated and stored in the transmission packet (S67).

そして、FECモジュール11は、受信側と反対のポート、すなわちFECエンコードの場合にはインターネットポート14、FECデコードの場合にはイントラネットポート15を介して送信パケットを転送する(S68)。   Then, the FEC module 11 transfers the transmission packet via the port opposite to the receiving side, that is, the Internet port 14 in the case of FEC encoding, and the intranet port 15 in the case of FEC decoding (S68).

以上説明したように、本実施の形態におけるFECサーバによれば、インターネット2などのパケットロスの多いネットワークから受信したFECエンコードされたストリームをFECデコードし、通常のストリームとしてイントラネット3などのパケットロスの少ないネットワークに転送するようにしたので、FEC処理が必要ないパケットロスの少ないネットワークにおけるトラフィックを減少させることが可能となった。   As described above, according to the FEC server in the present embodiment, FEC-encoded streams received from a network with a lot of packet loss such as the Internet 2 are FEC-decoded, and the packet loss of the intranet 3 or the like is reduced as a normal stream. Since the data is transferred to a small number of networks, it is possible to reduce traffic in a network with little packet loss that does not require FEC processing.

また、上記式(1)に基づいて複数のFECモジュールにストリームを振り分けるようにしたので、FEC処理をしきれなかったり、サーバの処理能力が無駄になったりすることを防止することが可能となった。   In addition, since the streams are distributed to the plurality of FEC modules based on the above formula (1), it is possible to prevent the FEC processing from being completed or the processing capacity of the server from being wasted. It was.

また、配信サーバの送信能力、蓄積サーバの受信能力、個々のストリームのFECパラメータなどに応じて、FECサーバ1に搭載するFECモジュールの数を変更できるようにしたので、必要十分な処理能力を持ったFECサーバを構築することが可能となった。   In addition, since the number of FEC modules installed in the FEC server 1 can be changed according to the transmission capability of the distribution server, the reception capability of the storage server, the FEC parameters of individual streams, etc., it has necessary and sufficient processing capability. It became possible to build a FEC server.

(第2の実施の形態)
本発明の第2の実施の形態におけるFECサーバは、第1の実施の形態において説明したFECサーバを複数台カスケード接続し、分散処理を行なうようにしたものである。なお、本実施の形態におけるFECサーバのハードウェア構成は、図2に示す第1の実施の形態におけるFECサーバのハードウェア構成と同様であり、制御モジュールに格納されるプログラムのみが異なる。したがって、重複する構成および機能の詳細な説明は繰返さない。
(Second Embodiment)
The FEC server according to the second embodiment of the present invention is configured such that a plurality of FEC servers described in the first embodiment are cascade-connected to perform distributed processing. Note that the hardware configuration of the FEC server in the present embodiment is the same as the hardware configuration of the FEC server in the first embodiment shown in FIG. 2, and only the program stored in the control module is different. Therefore, detailed description of overlapping configurations and functions will not be repeated.

図11は、本発明の第2の実施の形態におけるFECサーバがイントラネットポート15を介して受信したストリームをFECエンコードして送信するところを模式的に示す図である。なお、このFECサーバは、第1の実施の形態において説明したFECサーバが複数個カスケード接続された構成を有しており、1台がマスタのFECサーバとして機能し、それ以外がスレーブのFECサーバとして機能する。マスタのFECサーバ1−mの制御モジュール12−mが、FECサーバ全体の制御を行なう。   FIG. 11 is a diagram schematically illustrating the FEC server transmitting the stream received via the intranet port 15 after FEC encoding according to the second embodiment of the present invention. This FEC server has a configuration in which a plurality of FEC servers described in the first embodiment are cascade-connected, one of which functions as a master FEC server, and the other is a slave FEC server. Function as. The control module 12-m of the master FEC server 1-m controls the entire FEC server.

振り分けモジュール13は、イントラネットポート15を介して通常のストリームを受信すると、自身のFECサーバで処理すべきストリームであれば、そのストリームを処理すべきFECモジュールに送る。そして、FECエンコードされたストリームは、インターネットポート14を介してに送信される。また、他のFECサーバで処理すべきストリームであれば、ストリームをそのFECサーバへ転送する。   When the distribution module 13 receives a normal stream via the intranet port 15, if the stream is to be processed by its own FEC server, the distribution module 13 sends the stream to the FEC module to be processed. The FEC-encoded stream is transmitted via the Internet port 14. If the stream is to be processed by another FEC server, the stream is transferred to the FEC server.

マスタのFECサーバ1−mの制御モジュール12−mは、図示しない管理装置からの設定や、ストリーミングクライアントとストリーミングサーバとの間のRTSP等のセッション設定プロトコルのスヌーピングなどによって、ストリームのセッション情報とFECパラメータとを取得する。   The control module 12-m of the master FEC server 1-m performs stream session information and FEC by setting from a management device (not shown) or snooping of a session setting protocol such as RTSP between the streaming client and the streaming server. Get parameters.

制御モジュール12−mは、ストリームのFECパラメータとFECモジュールの負荷状況とに応じて、ストリームをどのFECサーバのどのFECモジュールに処理させるかを決定する。そして、制御モジュール12−mは、そのFECモジュールが自身のFECサーバ1−mに属していれば、振り分けモジュール13にそのストリームのセッション情報と処理を行なうFECモジュールとを設定し、処理を行なうFECモジュールにそのストリームのセッション情報とFECパラメータとを設定する。   The control module 12-m determines which FEC module of which FEC server should process the stream according to the FEC parameter of the stream and the load status of the FEC module. Then, if the FEC module belongs to its own FEC server 1-m, the control module 12-m sets the session information of the stream and the FEC module for processing in the distribution module 13, and performs the processing. Session information and FEC parameters of the stream are set in the module.

また、制御モジュール12−mは、そのFECモジュールが他のFECサーバに属していれば、そのFECサーバの制御モジュールに、そのストリームのセッション情報、FECパラメータおよび処理を行なうFECモジュールを設定する。スレーブのFECサーバの制御モジュールは、マスタのFECサーバ1−mからそれらの情報を受けると、第1の実施の形態において説明した処理を行なうことにより、そのスレーブのFECサーバ全体の制御を行なう。   In addition, if the FEC module belongs to another FEC server, the control module 12-m sets the session information, FEC parameters, and the FEC module for processing in the control module of the FEC server. When receiving the information from the master FEC server 1-m, the control module of the slave FEC server performs the processing described in the first embodiment, thereby controlling the entire slave FEC server.

図12は、本発明の第2の実施の形態におけるFECサーバがインターネットポート14を介して受信したFECエンコードされたストリームをFECデコードして送信するところを模式的に示す図である。振り分けモジュール13は、インターネットポート14を介してFECエンコードされたストリームを受信すると、自身のFECサーバで処理すべきストリームであれば、そのストリームを処理すべきFECモジュールに送る。そして、FECデコードされたストリームは、イントラネットポート15を介して送信される。また、他のFECサーバで処理すべきストリームであれば、ストリームをそのFECサーバへ転送する。   FIG. 12 is a diagram schematically showing the FEC-encoded stream received by the FEC server via the Internet port 14 after being FEC-decoded and transmitted in the second embodiment of the present invention. When the distribution module 13 receives an FEC-encoded stream via the Internet port 14, if the stream is to be processed by its own FEC server, the distribution module 13 sends the stream to the FEC module to be processed. The FEC decoded stream is transmitted via the intranet port 15. If the stream is to be processed by another FEC server, the stream is transferred to the FEC server.

図13は、本発明の第2の実施の形態におけるマスタのFECサーバ1−mのストリーム登録時における制御モジュール12−mの処理手順を説明するためのフローチャートである。まず、制御モジュール12−mは、新たに登録するストリームのセッション情報およびFECパラメータを図示しない管理装置などから取得し(S71)、図5に示すテーブルから、そのFECパラメータに対応したインデックスiを取得する(S72)。   FIG. 13 is a flowchart for explaining the processing procedure of the control module 12-m at the time of stream registration of the master FEC server 1-m in the second embodiment of the present invention. First, the control module 12-m acquires session information and FEC parameters of a stream to be newly registered from a management device (not shown) or the like (S71), and acquires an index i corresponding to the FEC parameters from the table shown in FIG. (S72).

次に、制御モジュール12−mは、登録済みのストリームの中に、ストリーミングサーバのIPアドレスが新たに登録するストリームのストリーミングサーバのIPアドレスと同一であり、かつストリーミングクライアントのIPアドレスが新たに登録するストリームのストリーミングクライアントのIPアドレスと同一であるストリームがあるか否かを判定する(S73)。そのようなストリームが既に登録済みであれば(S73,Yes)、そのストリームが登録されているFECサーバkのFECモジュールjを、新たなストリームの振り分け先に仮決定し(S74)、ステップS77の処理に進む。   Next, the control module 12-m registers, in the registered stream, the IP address of the streaming server is the same as the IP address of the streaming server of the stream to be newly registered, and the IP address of the streaming client is newly registered. It is determined whether or not there is a stream that is the same as the IP address of the streaming client of the stream to be performed (S73). If such a stream has already been registered (S73, Yes), the FEC module j of the FEC server k in which the stream is registered is provisionally determined as a new stream distribution destination (S74). Proceed to processing.

また、そのようなストリームが登録されていなければ(S73,No)、制御モジュール12−mは、各FECサーバの各FECモジュールの、FECパラメータiを持つ登録済みストリームに関する上記式(1)の値を算出し(S75)、その計算結果が一番小さいFECサーバkのFECモジュールjを、新たなストリームの振り分け先に仮決定し(S76)、ステップS77の処理に進む。   If such a stream is not registered (S73, No), the control module 12-m determines the value of the above formula (1) regarding the registered stream having the FEC parameter i of each FEC module of each FEC server. (S75), the FEC module j of the FEC server k having the smallest calculation result is provisionally determined as a new stream distribution destination (S76), and the process proceeds to step S77.

ステップS77において、新たに登録するストリームのレートを加え、FECサーバkのFECモジュールjのFECパラメータiを持つストリームに関する上記式(1)の値を算出する。   In step S77, the rate of the stream to be newly registered is added, and the value of the above equation (1) regarding the stream having the FEC parameter i of the FEC module j of the FEC server k is calculated.

計算結果が1以下の場合には(S78,1以下)、制御モジュール12−mは、図示しない内部管理テーブルに新たに登録するストリームのセッション情報、FECパラメータ、振り分け先FECサーバのインデックスkおよびFECモジュールのインデックスjを登録する(S79)。そして、制御モジュール12−mは、振り分け先FECサーバが自身のFECサーバであるか否かを判定する(S80)。   If the calculation result is 1 or less (S78, 1 or less), the control module 12-m sends the session information, FEC parameters, index K and FEC of the distribution destination FEC server to be newly registered in the internal management table (not shown). The module index j is registered (S79). Then, the control module 12-m determines whether or not the distribution destination FEC server is its own FEC server (S80).

自身のFECサーバでない場合(S80,No)、FECサーバkの制御モジュール12−kに、新たに登録するストリームのセッション情報、FECパラメータ、振り分け先FECモジュールのインデックスjを登録し(S81)、処理を終了する。   If it is not its own FEC server (S80, No), the session information of the stream to be newly registered, the FEC parameter, and the index j of the distribution destination FEC module are registered in the control module 12-k of the FEC server k (S81). Exit.

また、自身のFECサーバの場合(S80,Yes)、自身のFECサーバ1−m内のFECモジュールjに、新たに登録するストリームのセッション情報およびFECパラメータを登録する(S82)。   In the case of the own FEC server (S80, Yes), the session information and FEC parameters of the stream to be newly registered are registered in the FEC module j in the own FEC server 1-m (S82).

そして、自身のFECサーバ1−m内の振り分けモジュール13に、新たに登録するストリームのセッション情報および振り分け先FECモジュールのインデックスjを登録し(S83)、処理を終了する。なお、FECエンコードの場合には、これらの情報がイントラネットポート15側の振り分けモジュール13に登録され、FECデコードの場合には、これらの情報がインターネットポート14側の振り分けモジュール13に登録される。   Then, the session information of the stream to be newly registered and the index j of the distribution destination FEC module are registered in the distribution module 13 in its own FEC server 1-m (S83), and the process is terminated. In the case of FEC encoding, these pieces of information are registered in the distribution module 13 on the intranet port 15 side, and in the case of FEC decoding, these pieces of information are registered in the distribution module 13 on the Internet port 14 side.

また、計算結果が1より大きい場合には(S78,1より大)、制御モジュール12−mは、新たなストリームの登録を中止し(S84)、処理を終了する。   If the calculation result is greater than 1 (greater than S78, 1), the control module 12-m stops registering a new stream (S84) and ends the process.

図14は、本発明の第2の実施の形態におけるスレーブのFECサーバ1−kのストリーム登録時における制御モジュール12−kの処理手順を説明するためのフローチャートである。まず、制御モジュール12−kは、新たに登録するストリームのセッション情報、FECパラメータおよび振り分け先FECモジュールのインデックスjをマスタのFECサーバ1−mの制御モジュール12−mから取得する(S91)。   FIG. 14 is a flowchart for explaining the processing procedure of the control module 12-k at the time of stream registration of the slave FEC server 1-k according to the second embodiment of the present invention. First, the control module 12-k acquires the session information, the FEC parameter of the stream to be newly registered, and the index j of the distribution destination FEC module from the control module 12-m of the master FEC server 1-m (S91).

次に、制御モジュール12−kは、図示しない内部管理テーブルに新たに登録するストリームのセッション情報、FECパラメータ、振り分け先FECモジュールのインデックスjを登録する(S92)。そして、FECモジュールjに、新たに登録するストリームのセッション情報およびFECパラメータを登録する(S93)。   Next, the control module 12-k registers the session information of the stream to be newly registered in the internal management table (not shown), the FEC parameter, and the index j of the distribution destination FEC module (S92). Then, the session information and FEC parameters of the stream to be newly registered are registered in the FEC module j (S93).

そして、制御モジュール12−kは、振り分けモジュール13に、新たに登録するストリームのセッション情報および振り分け先FECモジュールのインデックスjを登録し(S94)、処理を終了する。なお、FECエンコードの場合には、これらの情報がイントラネットポート15側の振り分けモジュール13に登録され、FECデコードの場合には、これらの情報がインターネットポート14側の振り分けモジュール13に登録される。   Then, the control module 12-k registers the session information of the stream to be newly registered and the index j of the distribution destination FEC module in the distribution module 13 (S94), and ends the process. In the case of FEC encoding, these pieces of information are registered in the distribution module 13 on the intranet port 15 side, and in the case of FEC decoding, these pieces of information are registered in the distribution module 13 on the Internet port 14 side.

以上説明したように、本実施の形態におけるFECサーバによれば、複数のFECサーバをカスケード接続してFEC処理を行なうようにしたので、第1の実施の形態において説明した効果に加えて、必要十分な処理能力を持ったFECサーバの構築をさらに柔軟に行なうことが可能となった。   As described above, according to the FEC server in the present embodiment, a plurality of FEC servers are cascade-connected to perform the FEC processing. Therefore, in addition to the effects described in the first embodiment, it is necessary. It has become possible to more flexibly construct an FEC server with sufficient processing capability.

今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

本発明の第1の実施の形態におけるFECサーバを含んだシステムの構成例を示す図である。It is a figure which shows the structural example of the system containing the FEC server in the 1st Embodiment of this invention. FECサーバ1のハードウェア構成を示す図である。2 is a diagram illustrating a hardware configuration of an FEC server 1. FIG. FECサーバ1がイントラネットポート15を介して受信したストリームをFECエンコードして送信するところを模式的に示す図である。FIG. 3 is a diagram schematically illustrating a place where the FEC server 1 performs FEC encoding on a stream received via an intranet port 15 and transmits the stream. FECサーバ1がインターネットポート14を介して受信したFECエンコードされたストリームをFECデコードして送信するところを模式的に示す図である。FIG. 3 is a diagram schematically showing a state where the FEC server 1 FEC-decodes and transmits an FEC-encoded stream received via the Internet port 14. EiおよびDiの値を格納するテーブルの一例を示す図である。It is a figure which shows an example of the table which stores the value of Ei and Di. 本発明の第1の実施の形態におけるFECサーバ1のストリーム登録時における制御モジュール12の処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of the control module 12 at the time of the stream registration of the FEC server 1 in the 1st Embodiment of this invention. 本発明の第1の実施の形態におけるFECサーバ1のストリーム登録時におけるFECモジュール11の処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of the FEC module 11 at the time of the stream registration of the FEC server 1 in the 1st Embodiment of this invention. 本発明の第1の実施の形態におけるFECサーバ1のストリーム登録時における振り分けモジュール13の処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of the distribution module 13 at the time of the stream registration of the FEC server 1 in the 1st Embodiment of this invention. 本発明の第1の実施の形態におけるFECサーバ1のFEC処理時における振り分けモジュール13の処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of the distribution module 13 at the time of the FEC process of the FEC server 1 in the 1st Embodiment of this invention. 本発明の第1の実施の形態におけるFECサーバ1のFEC処理時におけるFECモジュール11の処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of the FEC module 11 at the time of the FEC process of the FEC server 1 in the 1st Embodiment of this invention. 本発明の第2の実施の形態におけるFECサーバがイントラネットポート15を介して受信したストリームをFECエンコードして送信するところを模式的に示す図である。It is a figure which shows typically the place which the FEC server in the 2nd Embodiment of this invention FEC encodes the stream received via the intranet port 15, and transmits. 本発明の第2の実施の形態におけるFECサーバがインターネットポート14を介して受信したFECエンコードされたストリームをFECデコードして送信するところを模式的に示す図である。It is a figure which shows typically the place which the FEC server in the 2nd Embodiment of this invention FEC-decodes the FEC-encoded stream received via the Internet port 14, and transmits. 本発明の第2の実施の形態におけるマスタのFECサーバ1−mのストリーム登録時における制御モジュール12−mの処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of control module 12-m at the time of the stream registration of the master FEC server 1-m in the 2nd Embodiment of this invention. 本発明の第2の実施の形態におけるスレーブのFECサーバ1−kのストリーム登録時における制御モジュール12−kの処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of control module 12-k at the time of the stream registration of the slave FEC server 1-k in the 2nd Embodiment of this invention.

符号の説明Explanation of symbols

1 FECサーバ、2 インターネット、3 イントラネット、4,7 ストリーミングサーバ、5,6 ストリーミングクライアント、11−1〜11−n FECモジュール、12,12−1〜12−m 制御モジュール、13 イーサネット(登録商標)スイッチ、14 インターネットポート、15 イントラネットポート、21−1〜21−n,31 CPU、22−1〜22−n,32 メモリ。   1 FEC Server, 2 Internet, 3 Intranet, 4,7 Streaming Server, 5,6 Streaming Client, 11-1 to 11-n FEC Module, 12, 12-1 to 12-m Control Module, 13 Ethernet (registered trademark) Switch, 14 Internet port, 15 Intranet port, 21-1 to 21-n, 31 CPU, 22-1 to 22-n, 32 Memory.

Claims (10)

パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続するサーバであって、
前記パケットロスの少ないネットワークを介してストリームを受信するための受信手段と、
前記受信手段によって受信されたストリームを誤り訂正可能な形式にエンコードするためのエンコード手段と、
前記エンコード手段によってエンコードされたストリームを前記パケットロスの多いネットワークを介して送信するための送信手段とを含む、サーバ。
A server that connects a network with high packet loss and a network with low packet loss,
Receiving means for receiving a stream via the network with a low packet loss;
Encoding means for encoding the stream received by the receiving means into an error correctable format;
A transmission unit configured to transmit the stream encoded by the encoding unit via the network with a large packet loss.
前記サーバは、前記エンコード手段を複数含み、
前記サーバはさらに、前記受信手段によって受信されたパケットがどのストリームに属するかを判別し、該判別結果に応じて前記パケットを前記複数のエンコード手段のいずれかに振り分けるための振り分け手段を含む、請求項1記載のサーバ。
The server includes a plurality of the encoding means,
The server further includes a distribution unit for determining which stream the packet received by the reception unit belongs to, and distributing the packet to one of the plurality of encoding units according to the determination result. Item 1. The server according to item 1.
前記サーバはさらに、新たに登録するストリームの送信元アドレスおよび宛先アドレスに基づいて、前記新たに登録するストリームが登録済みストリームと一致するか否かを判定し、一致しない場合には前記複数のエンコード手段の負荷状況に応じて、前記新たに登録するストリームをいずれのエンコード手段に振り分けるかを決定して前記振り分け手段に指示するための制御手段を含む、請求項2記載のサーバ。   The server further determines whether or not the newly registered stream matches the registered stream based on a source address and a destination address of the newly registered stream, and if not, the plurality of encodings 3. The server according to claim 2, further comprising a control unit for determining to which encoding unit the newly registered stream is distributed according to a load state of the unit and instructing the distribution unit. 前記制御手段は、誤り訂正用パラメータ毎に定めたストリームのレートの総和と、1つの前記エンコード手段が処理可能な前記誤り訂正用パラメータ毎のストリームの最大レートとに基づいて、前記新たに登録するストリームをいずれのエンコード手段に振り分けるかを決定する、請求項3記載のサーバ。   The control means newly registers based on the sum of the stream rates determined for each error correction parameter and the maximum stream rate for each error correction parameter that can be processed by one encoding means. 4. The server according to claim 3, wherein the server determines to which encoding means the stream is distributed. パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続するサーバであって、
前記パケットロスの多いネットワークを介して誤り訂正可能な形式にエンコードされたストリームを受信するための受信手段と、
前記受信手段によって受信されたストリームをデコードするためのデコード手段と、
前記デコード手段によってデコードされたストリームを前記パケットロスの少ないネットワークを介して送信するための送信手段とを含む、サーバ。
A server that connects a network with high packet loss and a network with low packet loss,
Receiving means for receiving a stream encoded in an error-correctable format via the packet loss network;
Decoding means for decoding the stream received by the receiving means;
A transmission unit configured to transmit the stream decoded by the decoding unit via the network with less packet loss.
前記サーバは、前記デコード手段を複数含み、
前記サーバはさらに、前記受信手段によって受信されたパケットがどのストリームに属するかを判別し、該判別結果に応じて前記パケットを前記複数のデコード手段のいずれかに振り分けるための振り分け手段を含む、請求項5記載のサーバ。
The server includes a plurality of the decoding means,
The server further includes a distribution unit for determining which stream the packet received by the reception unit belongs to, and distributing the packet to one of the plurality of decoding units according to the determination result. Item 6. The server according to item 5.
前記サーバはさらに、新たに登録するストリームの送信元アドレスおよび宛先アドレスに基づいて、前記新たに登録するストリームが登録済みストリームと一致するか否かを判定し、一致しない場合には前記複数のデコード手段の負荷状況に応じて、前記新たに登録するストリームをいずれのデコード手段に振り分けるかを決定して前記振り分け手段に指示するための制御手段を含む、請求項6記載のサーバ。   The server further determines whether or not the newly registered stream matches the registered stream based on a source address and a destination address of the newly registered stream, and if not matched, the plurality of decodes 7. The server according to claim 6, comprising control means for determining which decoding means to distribute the newly registered stream according to the load status of the means and instructing the distribution means. 前記制御手段は、誤り訂正用パラメータ毎に定めたストリームのレートの総和と、1つの前記デコード手段が処理可能な前記誤り訂正用パラメータ毎のストリームの最大レートとに基づいて、前記新たに登録するストリームをいずれのデコード手段に振り分けるかを決定する、請求項7記載のサーバ。   The control means newly registers based on the sum of the stream rates determined for each error correction parameter and the maximum stream rate for each error correction parameter that can be processed by one decoding means. 8. The server according to claim 7, wherein the server determines to which decoding means the stream is distributed. パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続し、マスタのサーバとスレーブのサーバとを含んだサーバであって、
前記マスタのサーバは、前記パケットロスの少ないネットワークまたは隣接する前記スレーブのサーバを介してストリームを受信するための第1の受信手段と、
前記第1の受信手段によって受信されたストリームを誤り訂正可能な形式にエンコードするための第1の複数のエンコード手段と、
前記第1の受信手段によって受信されたパケットがどのストリームに属するかを判別し、該判別結果に応じて前記パケットを前記スレーブのサーバまたは前記第1の複数のエンコード手段のいずれかに振り分けるための第1の振り分け手段と、
前記第1の複数のエンコード手段によってエンコードされたストリームを前記パケットロスの多いネットワークまたは隣接する前記スレーブのサーバを介して送信するための第1の送信手段とを含み、
前記スレーブのサーバは、前記パケットロスの少ないネットワーク、前記マスタのサーバまたは隣接する他のスレーブのサーバを介してストリームを受信するための第2の受信手段と、
前記第2の受信手段によって受信されたストリームを誤り訂正可能な形式にエンコードするための第2の複数のエンコード手段と、
前記第2の受信手段によって受信されたパケットがどのストリームに属するかを判別し、該判別結果に応じて前記パケットを前記第2の複数のエンコード手段のいずれかに振り分けるための第2の振り分け手段と、
前記第2の複数のエンコード手段によってエンコードされたストリームを前記パケットロスの多いネットワーク、前記マスタのサーバまたは隣接する前記スレーブのサーバを介して送信するための第2の送信手段とを含む、サーバ。
A server that connects a network with a high packet loss and a network with a low packet loss, and includes a master server and a slave server,
The master server has a first receiving means for receiving a stream via the network with little packet loss or the adjacent slave server;
A plurality of first encoding means for encoding the stream received by the first receiving means into a format capable of error correction;
Determining which stream the packet received by the first receiving means belongs to, and allocating the packet to either the slave server or the plurality of first encoding means according to the determination result First distribution means;
First transmitting means for transmitting the stream encoded by the first plurality of encoding means via the network having a large packet loss or the server of the adjacent slave;
The slave server includes a second receiving means for receiving a stream via the network with less packet loss, the master server, or another adjacent slave server;
A second plurality of encoding means for encoding the stream received by the second receiving means into a format capable of error correction;
Second distribution means for determining which stream the packet received by the second reception means belongs to and distributing the packet to any of the plurality of second encoding means according to the determination result When,
And a second transmission means for transmitting the stream encoded by the second plurality of encoding means via the network with many packet losses, the master server or the adjacent slave server.
パケットロスの多いネットワークとパケットロスの少ないネットワークとを接続し、マスタのサーバとスレーブのサーバとを含んだサーバであって、
前記マスタのサーバは、前記パケットロスの多いネットワークまたは隣接する前記スレーブのサーバを介して誤り訂正可能な形式にエンコードされたストリームを受信するための第1の受信手段と、
前記第1の受信手段によって受信されたストリームをデコードするための第1の複数のデコード手段と、
前記第1の受信手段によって受信されたパケットがどのストリームに属するかを判別し、該判別結果に応じて前記パケットを前記スレーブのサーバまたは前記第1の複数のデコード手段のいずれかに振り分けるための第1の振り分け手段と、
前記第1の複数のデコード手段によってデコードされたストリームを前記パケットロスの少ないネットワークまたは隣接する前記スレーブのサーバを介して送信するための第1の送信手段とを含み、
前記スレーブのサーバは、前記パケットロスの少ないネットワーク、前記マスタのサーバまたは隣接する他のスレーブのサーバを介して誤り訂正可能な形式にエンコードされたストリームを受信するための第2の受信手段と、
前記第2の受信手段によって受信されたストリームをデコードするための第2の複数のデコード手段と、
前記第2の受信手段によって受信されたパケットがどのストリームに属するかを判別し、該判別結果に応じて前記パケットを前記第2の複数のデコード手段のいずれかに振り分けるための第2の振り分け手段と、
前記第2の複数のデコード手段によってデコードされたストリームを前記パケットロスの少ないネットワーク、前記マスタのサーバまたは隣接する前記スレーブのサーバを介して送信するための第2の送信手段とを含む、サーバ。
A server that connects a network with a high packet loss and a network with a low packet loss and includes a master server and a slave server,
The master server has a first receiving means for receiving a stream encoded in an error-correctable format via the packet loss network or the adjacent slave server;
A first plurality of decoding means for decoding the stream received by the first receiving means;
Determining which stream the packet received by the first receiving means belongs to, and allocating the packet to either the slave server or the first plurality of decoding means according to the determination result First distribution means;
First transmission means for transmitting the stream decoded by the first plurality of decoding means via the network with little packet loss or the server of the adjacent slave,
The slave server has a second receiving means for receiving a stream encoded in an error-correctable format via the network with low packet loss, the master server, or another adjacent slave server;
A second plurality of decoding means for decoding the stream received by the second receiving means;
Second distribution means for determining which stream the packet received by the second reception means belongs to and distributing the packet to one of the plurality of second decoding means according to the determination result When,
And a second transmission means for transmitting the stream decoded by the second plurality of decoding means via the network with little packet loss, the master server, or the adjacent slave server.
JP2005088961A 2005-03-25 2005-03-25 Server Withdrawn JP2006270818A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005088961A JP2006270818A (en) 2005-03-25 2005-03-25 Server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005088961A JP2006270818A (en) 2005-03-25 2005-03-25 Server

Publications (1)

Publication Number Publication Date
JP2006270818A true JP2006270818A (en) 2006-10-05

Family

ID=37206256

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005088961A Withdrawn JP2006270818A (en) 2005-03-25 2005-03-25 Server

Country Status (1)

Country Link
JP (1) JP2006270818A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011024197A (en) * 2009-06-19 2011-02-03 Mitsubishi Electric Corp Error correction decoding apparatus and method, and error correction coding apparatus and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011024197A (en) * 2009-06-19 2011-02-03 Mitsubishi Electric Corp Error correction decoding apparatus and method, and error correction coding apparatus and method

Similar Documents

Publication Publication Date Title
CN110943800B (en) Data packet sending method, device and system, storage medium and electronic device
KR101610715B1 (en) One-way data transmission and reception system, and one-way data transmission and reception method
US20060253763A1 (en) Method and system for correcting burst errors in communications networks, related network and computer-program product
Kwon et al. MPMTP: Multipath multimedia transport protocol using systematic raptor codes over wireless networks
US7843826B2 (en) Automatic detection and re-configuration of priority status in telecommunications networks
JP2016501464A (en) Method and apparatus for improving the performance of TCP and other network protocols in a communication network using a proxy server
JP6294346B2 (en) Communication apparatus, system, and method
CN104503801B (en) Software upgrade instruction distribution method, the communication server and terminal device
US9413797B2 (en) Data communication system and method
JP6412160B2 (en) COMMUNICATION DEVICE, COMMUNICATION DEVICE SYSTEM, AND COMMUNICATION METHOD
Huang et al. Just FUN: A joint fountain coding and network coding approach to loss-tolerant information spreading
US20180331781A1 (en) Methods and arrangements for performing enhanced network coding
US7756992B1 (en) Reliable delivery of updates for antivirus programs
Jiang et al. LTTP: An LT-code based transport protocol for many-to-one communication in data centers
CN104580441A (en) Data distribution method in local area network, server and terminal device
KR102002939B1 (en) On-demand file recovery methods and systems
Fiandrotti et al. Towards a P2P videoconferencing system based on low-delay network coding
US10834179B2 (en) Load balancing
JP2006270818A (en) Server
KR20100112151A (en) Network card and information processor
JP4459794B2 (en) Data transmission method, reception method, apparatus, system and program for performing code error correction
JP2007013575A (en) System and method for image-communication acounting service
Shan et al. Overlay multi-hop FEC scheme for video streaming over peer-to-peer networks
CN113301387A (en) Data encoding and decoding method, related equipment and system
CN1768509B (en) Method of ensuring the quality of service in a network

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080603