JP7474078B2 - Distribution server and program - Google Patents

Distribution server and program Download PDF

Info

Publication number
JP7474078B2
JP7474078B2 JP2020040821A JP2020040821A JP7474078B2 JP 7474078 B2 JP7474078 B2 JP 7474078B2 JP 2020040821 A JP2020040821 A JP 2020040821A JP 2020040821 A JP2020040821 A JP 2020040821A JP 7474078 B2 JP7474078 B2 JP 7474078B2
Authority
JP
Japan
Prior art keywords
multicast
rate
retransmission
delivery rate
delivery
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020040821A
Other languages
Japanese (ja)
Other versions
JP2021145168A (en
Inventor
大貴 福留
敏 西村
正顕 黒住
彩花 西出
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Japan Broadcasting Corp
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 Japan Broadcasting Corp filed Critical Japan Broadcasting Corp
Priority to JP2020040821A priority Critical patent/JP7474078B2/en
Publication of JP2021145168A publication Critical patent/JP2021145168A/en
Application granted granted Critical
Publication of JP7474078B2 publication Critical patent/JP7474078B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、配信サーバ及びプログラムに関する。 The present invention relates to a distribution server and a program.

IP(Internet Protocol)マルチキャストを利用した配信(IPマルチキャスト配信)では、送信側はデータを一度送信するだけで、経路途上の通信機器が受信者のいる経路にだけデータを複製し送信するため、一対多の大規模配信において効率的であることが一般的に知られている。例えば、特許文献1には、マルチキャストを用いた効率的なコンテンツ配信手法が開示されている。 In distribution using Internet Protocol (IP) multicast (IP multicast distribution), the sender only needs to send the data once, and communication devices along the route replicate and send the data only to routes with receivers, so it is generally known to be efficient for large-scale one-to-many distribution. For example, Patent Document 1 discloses an efficient content distribution method using multicast.

マルチキャスト配信では、 上位のプロトコルとしてUDP(User Datagram Protocol)が利用されるため、パケット到達や到達順序については保証されない。信頼性のある配信を行うためには、誤り訂正や再送制御などをアプリケーションレイヤにて独自に実装する必要がある。そこで、汎用性のある高信頼性マルチキャストの研究が行われている(例えば、非特許文献1参照)。再送制御を用いた高信頼性マルチキャストではフロー制御を工夫することにより、高効率な配信を目的としているが、再送サーバの負荷については考慮されていないものが多い。 Multicast delivery uses UDP (User Datagram Protocol) as the upper protocol, so there is no guarantee that packets will arrive or arrive in what order. To ensure reliable delivery, error correction and retransmission control must be implemented independently at the application layer. For this reason, research is being conducted on versatile, highly reliable multicast (see, for example, Non-Patent Document 1). Highly reliable multicast using retransmission control aims to achieve highly efficient delivery by devising flow control, but most of these do not take into account the load on the retransmission server.

国際公開第2012/011449号International Publication No. 2012/011449

柴田、外2名、「プロトコル選択方式による高信頼性マルチキャスト通信の評価」、情報処理学会論文誌、Vol.42 No.12、pp 3102-3111Shibata, et al., "Evaluation of Reliable Multicast Communication Using Protocol Selection Methods," Transactions of Information Processing Society of Japan, Vol. 42, No. 12, pp. 3102-3111.

マルチキャストを利用した配信では、一般的にFEC(Forward Error Correction)が利用されるが、パケットを回復するためのFECパケットを追加で配信する必要があるため配信効率が低下してしまう。一方、ARQ(Automatic repeat-request)を利用したリライアブルなマルチキャストではロスパケットのみを再送するため、無駄な配信はない。しかし、端末数や伝送路のパケットロス率に応じて配信サーバの負荷が増大するという課題がある。 When using multicast for distribution, FEC (Forward Error Correction) is generally used, but the need to distribute additional FEC packets to recover packets reduces distribution efficiency. On the other hand, reliable multicast using ARQ (Automatic repeat-request) resends only lost packets, so there is no wasteful distribution. However, there is an issue that the load on the distribution server increases depending on the number of terminals and the packet loss rate of the transmission path.

かかる事情に鑑みてなされた本発明の目的は、負荷を軽減させることが可能な配信サーバ及びプログラムを提供することにある。 In view of the above, the objective of the present invention is to provide a distribution server and program that can reduce the load.

一実施形態に係る配信サーバは、複数の受信装置から、ロスパケットの再送要求を受信すると、該再送要求に対応する応答パケットを各受信装置に送信する配信サーバであって、前記再送要求は、マルチキャストグループを識別するためのマルチキャストID、パケットを識別するためのシーケンシャル番号、及びパケットの配信レートを識別するためのレート制御識別IDを含んでおり、前記マルチキャストID及び前記シーケンシャル番号に対応するパケットを応答パケットとして生成する応答パケット生成部と、前記マルチキャストIDごとに定められた許容配信レートに対する再送レートの割合を、前記応答パケットの送信に係る負荷率として算出し、前記負荷率に基づいて、前記マルチキャストID及び前記レート制御識別IDごとに、マルチキャストストリームの配信レートを決定する配信レート決定部と、を備える。 A distribution server according to one embodiment is a distribution server that, upon receiving a retransmission request for a lost packet from a plurality of receiving devices, transmits a response packet corresponding to the retransmission request to each receiving device, wherein the retransmission request includes a multicast ID for identifying a multicast group, a sequential number for identifying a packet, and a rate control identification ID for identifying a delivery rate of the packet, and the distribution server is equipped with a response packet generation unit that generates a packet corresponding to the multicast ID and the sequential number as a response packet , and a delivery rate determination unit that calculates a ratio of a retransmission rate to an allowable delivery rate determined for each multicast ID as a load factor for transmitting the response packet, and determines a delivery rate of a multicast stream for each multicast ID and rate control identification ID based on the load factor.

さらに、一実施形態において、前記配信レート決定部は、前記配信レートを、前記負荷率が大きいほど小さな値に決定してもよい。 Furthermore, in one embodiment, the delivery rate determination unit may determine the delivery rate to be a smaller value as the load factor increases.

さらに、一実施形態において、前記応答パケットを一時的に蓄積する送信バッファと、前記送信バッファの空き容量を監視する送信バッファ管理部と、あらかじめ設定したタイマーがタイムアウトになるまでの第1時間、及び送信バッファの空き容量が閾値以下となるまでの第2時間のうちの早いほうの時間において、前記複数の受信装置から再送要求された再送要求パケット数を、前記レート制御識別ID及び前記マルチキャストIDごとにカウントする要求情報管理部と、を備え、前記配信レート決定部は、前記再送要求パケット数を用いて、前記レート制御識別ID及び前記マルチキャストIDごとに、前記再送レートを算出してもよい。 Furthermore, in one embodiment, the system includes a transmission buffer that temporarily stores the response packets, a transmission buffer management unit that monitors the free space of the transmission buffer, and a request information management unit that counts the number of retransmission request packets requested for retransmission from the multiple receiving devices for each of the rate control identification ID and the multicast ID during the first time until a preset timer times out and a second time until the free space of the transmission buffer falls below a threshold, whichever is earlier, and the delivery rate determination unit may calculate the retransmission rate for each of the rate control identification ID and the multicast ID using the number of retransmission request packets.

また、一実施形態に係るプログラムは、コンピュータを、上記配信サーバとして機能させる。 In addition, the program according to one embodiment causes a computer to function as the distribution server.

本発明によれば、負荷を軽減させることが可能な配信サーバ及びプログラムを提供することができる。 The present invention provides a distribution server and program that can reduce the load.

一実施形態に係る配信システムの概略を示す図である。1 is a diagram illustrating an overview of a distribution system according to an embodiment. 一実施形態に係る配信サーバの構成例を示すブロック図である。FIG. 2 is a block diagram illustrating an example of the configuration of a distribution server according to an embodiment. 一実施形態に係る配信サーバの再送要求受信時の処理例を示すフローチャートである。11 is a flowchart illustrating an example of a process performed by a distribution server according to an embodiment when a retransmission request is received. 一実施形態に係る配信サーバの配信レート決定の処理例を示すフローチャートである。11 is a flowchart illustrating an example of a process for determining a distribution rate of a distribution server according to an embodiment.

以下、本発明の一実施形態について、図面を参照して詳細に説明する。 One embodiment of the present invention will be described in detail below with reference to the drawings.

図1は、一実施形態に係る配信システム1の概略を示す図である。図1に示す配信システム1は、配信サーバ30と、複数の受信装置40と、を備え、それぞれマルチキャストルーティングに対応したネットワーク(マルチキャスト対応網)に接続される。配信サーバ30は、再送サーバ10と、コンテンツ配信サーバ20と、を備える。説明の便宜上、図面では再送サーバ10とコンテンツ配信サーバ20とを区別して示しているが、これらの一部又は全ては、一体のサーバとして構成されてもよい。 Figure 1 is a diagram showing an overview of a distribution system 1 according to one embodiment. The distribution system 1 shown in Figure 1 includes a distribution server 30 and multiple receiving devices 40, each of which is connected to a network that supports multicast routing (multicast-compatible network). The distribution server 30 includes a retransmission server 10 and a content distribution server 20. For ease of explanation, the retransmission server 10 and the content distribution server 20 are shown separately in the drawing, but some or all of these may be configured as an integrated server.

配信システム1は、受信装置40から再送サーバ10へのユニキャストによる再送制御を用いた、高信頼なマルチキャスト配信(例えば、IPマルチキャスト配信)を行うシステムである。 The distribution system 1 is a system that performs highly reliable multicast distribution (e.g., IP multicast distribution) using unicast retransmission control from the receiving device 40 to the retransmission server 10.

コンテンツ配信サーバ20は、コンテンツのマルチキャスト配信を行うサーバであり、複数のマルチキャストストリーム(例えば、IPマルチキャストストリーム)をそれぞれマルチキャストパケット(以下、単に「パケット」と称する。)に分割して配信する。コンテンツ配信サーバ20は、各パケットに対して、マルチキャストグループを識別するためのマルチキャストID(MCID)、パケットを識別するためのシーケンシャル番号(s)、及びパケットの配信レートを識別するためのレート制御識別ID(d)を付加し、受信装置40に配信する。 The content distribution server 20 is a server that performs multicast distribution of content, and divides multiple multicast streams (e.g., IP multicast streams) into multicast packets (hereinafter simply referred to as "packets") for distribution. The content distribution server 20 adds a multicast ID (MCID) for identifying the multicast group, a sequential number (s) for identifying the packet, and a rate control identification ID (d) for identifying the packet distribution rate to each packet, and distributes them to the receiving device 40.

受信装置40は、マルチキャスト受信が可能な端末であり、コンテンツ配信サーバ20からパケットを受信する。受信装置40は、シーケンシャル番号を元に、パケット順及びパケットロスを判定する。受信装置40は、パケットロスを検知すると、検出したロスパケットのマルチキャストID、シーケンシャル番号、及びレート制御識別IDを含む再送要求を再送サーバ10に通知する。 The receiving device 40 is a terminal capable of multicast reception, and receives packets from the content distribution server 20. The receiving device 40 determines the packet order and packet loss based on the sequential number. When the receiving device 40 detects packet loss, it notifies the retransmission server 10 of a retransmission request that includes the multicast ID, sequential number, and rate control identification ID of the detected lost packet.

再送サーバ10は、受信装置40から再送要求を受信すると、該再送要求に対応する応答パケットを生成して受信装置40に送信する。 When the retransmission server 10 receives a retransmission request from the receiving device 40, it generates a response packet corresponding to the retransmission request and transmits it to the receiving device 40.

また、再送サーバ10は、受信装置40からの再送要求によって変動する再送レート(RSBR)から、マルチキャストグループごとに再送サーバ10の負荷率(LR)を計算する。そして、再送サーバ10は、マルチキャストグループごとのコンテンツ配信サーバ20の配信レート(BR)を負荷率に基づいて計算し、配信レート、マルチキャストID、及びレート制御識別IDを含む配信レート情報をコンテンツ配信サーバ20に通知する。再送サーバ10は、レート制御識別IDにより、どの配信レートに対して発生したパケットロスかを知ることができ、配信レートごとに負荷率を正確に計算することが可能となる。また、再送サーバ10は、送信バッファの空き容量を監視することで、送信バッファの破綻を防止する。再送サーバ10の処理の詳細については後述する。 The retransmission server 10 also calculates the load rate (LR) of the retransmission server 10 for each multicast group from the retransmission rate (RSBR) that varies depending on the retransmission request from the receiving device 40. The retransmission server 10 then calculates the delivery rate (BR) of the content distribution server 20 for each multicast group based on the load rate, and notifies the content distribution server 20 of delivery rate information including the delivery rate, multicast ID, and rate control identification ID. The retransmission server 10 can know for which delivery rate packet loss occurred by the rate control identification ID, and can accurately calculate the load rate for each delivery rate. The retransmission server 10 also prevents the transmission buffer from collapsing by monitoring the free space in the transmission buffer. Details of the processing of the retransmission server 10 will be described later.

コンテンツ配信サーバ20は、再送サーバ10から配信レート情報を受け取ると、レート制御識別IDをインクリメントする。そして、コンテンツ配信サーバ20は、配信レート情報に基づいて、指定のマルチキャストグループの配信レートを、指定の配信レートに動的に切り替える。 When the content distribution server 20 receives the distribution rate information from the retransmission server 10, it increments the rate control identification ID. Then, the content distribution server 20 dynamically switches the distribution rate of the specified multicast group to the specified distribution rate based on the distribution rate information.

(再送サーバの構成)
次に、再送サーバ10の構成について説明する。図2は、再送サーバ10の構成例を示すブロック図である。図2に示す再送サーバ10は、再送要求受信部11と、要求情報管理部12と、応答パケット生成部13と、タイマー管理部14と、送信バッファ15と、送信バッファ管理部16と、配信レート決定部17と、応答パケット送信部18と、配信レート送信部19と、を備える。
(Configuration of retransmission server)
Next, a description will be given of the configuration of the retransmission server 10. Fig. 2 is a block diagram showing an example of the configuration of the retransmission server 10. The retransmission server 10 shown in Fig. 2 includes a retransmission request receiving unit 11, a request information managing unit 12, a response packet generating unit 13, a timer managing unit 14, a transmission buffer 15, a transmission buffer managing unit 16, a delivery rate determining unit 17, a response packet transmitting unit 18, and a delivery rate transmitting unit 19.

再送要求受信部11は、受信装置40から再送要求を受信し、要求情報管理部12に出力する。 The retransmission request receiving unit 11 receives a retransmission request from the receiving device 40 and outputs it to the request information management unit 12.

要求情報管理部12は、再送要求からマルチキャストID、シーケンシャル番号、及びレート制御識別IDを取得してこれらを応答パケット生成部13に出力するとともに、レート制御識別IDをタイマー管理部14に出力する。 The request information management unit 12 obtains the multicast ID, sequential number, and rate control identification ID from the retransmission request and outputs them to the response packet generation unit 13, and also outputs the rate control identification ID to the timer management unit 14.

要求情報管理部12は、レート制御識別IDが更新されるとカウンタをリセットし、レート制御識別IDが次に更新されるまでの間、全ての受信装置40から要求された再送要求パケット数(Rnum)をカウントする。要求情報管理部12は、カウントした再送要求パケット数を配信レート決定部17に出力する。後述するように、タイマーがタイムアウトになるまでの時間T1、及び送信バッファ15のバッファ量が閾値を超えるまでの時間T2のうち、早いほうの計測時間tが経過すると、コンテンツ配信サーバ20の配信レートが決定され、コンテンツ配信サーバ20はレート制御識別IDを更新する。 When the rate control identification ID is updated, the request information management unit 12 resets the counter and counts the number of retransmission request packets (Rnum) requested from all receiving devices 40 until the rate control identification ID is next updated. The request information management unit 12 outputs the counted number of retransmission request packets to the delivery rate determination unit 17. As described below, when the earlier of the measured time t between the time T1 until the timer times out and the time T2 until the buffer amount of the transmission buffer 15 exceeds the threshold has elapsed, the delivery rate of the content delivery server 20 is determined and the content delivery server 20 updates the rate control identification ID.

応答パケット生成部13は、マルチキャストID及びシーケンシャル番号に対応するデータを示す対応表をあらかじめ保持しており、受信装置40からの再送要求に含まれるマルチキャストID及び前記シーケンシャル番号に対応するデータを該対応表に基づいて特定する。そして、応答パケット生成部13は、図示しない記憶部から該当するデータを取得してヘッダーとしてシーケンシャル番号を付加して応答パケットを生成し、送信バッファ15に出力する。 The response packet generator 13 holds in advance a correspondence table showing data corresponding to a multicast ID and a sequential number, and identifies the data corresponding to the multicast ID and the sequential number included in the retransmission request from the receiving device 40 based on the correspondence table. The response packet generator 13 then obtains the corresponding data from a storage unit (not shown), adds the sequential number as a header, generates a response packet, and outputs it to the transmission buffer 15.

送信バッファ15は、応答パケット生成部13により生成された応答パケットを一時的に蓄積する。 The transmission buffer 15 temporarily stores the response packets generated by the response packet generator 13.

応答パケット送信部18は、送信バッファ15から応答パケットを取得し、該パケットの再送要求を行った受信装置40に送信する。 The response packet transmission unit 18 retrieves the response packet from the transmission buffer 15 and transmits it to the receiving device 40 that has requested retransmission of the packet.

送信バッファ管理部16は、送信バッファ15の空き容量を監視し、空き容量が閾値以下(利用率が閾値以上)となった場合に、送信バッファ15の利用率が高いことを示すバッファ飽和イベントを配信レート決定部17に通知する。 The transmission buffer management unit 16 monitors the free space in the transmission buffer 15, and when the free space falls below a threshold (the utilization rate is equal to or greater than the threshold), it notifies the delivery rate determination unit 17 of a buffer saturation event, which indicates that the utilization rate of the transmission buffer 15 is high.

タイマー管理部14は、レート制御識別IDに変更があった場合、タイマー時間T1(例えば30秒)を設定する。タイマー管理部14は、タイマー時間T1が経過すると、タイマー時間T1が経過したことを示すタイマー発火イベントを配信レート決定部17に出力する。また、タイマー管理部14は、タイマーを設定した時刻(レート制御識別IDに変更があった時刻)からの経過時間を示す情報を配信レート決定部17に通知する。 When the rate control identification ID is changed, the timer management unit 14 sets the timer time T1 (e.g., 30 seconds). When the timer time T1 has elapsed, the timer management unit 14 outputs a timer firing event indicating that the timer time T1 has elapsed to the delivery rate determination unit 17. In addition, the timer management unit 14 notifies the delivery rate determination unit 17 of information indicating the elapsed time from the time the timer was set (the time the rate control identification ID was changed).

配信レート決定部17は、応答パケットの送信に係る負荷率(応答パケットの送信に必要な再送レートから算出される負荷率)に基づいて、マルチキャストID及びレート制御識別IDごとに、マルチキャストストリームの配信レートを決定する。例えば、配信レート決定部17は、応答パケットの送信に必要な再送レート(RSBR)から、マルチキャストグループごとに再送サーバ10の負荷率(LR)を計算する。そして、配信レート決定部17は、該負荷率に基づいて、コンテンツ配信サーバ20が送信するマルチキャストIDごとのパケットの配信レート(BR)を計算し、配信レート送信部19に出力する。以下に、負荷率及び配信レートの計算の具体例について説明する。ここで用いられる変数を、下記の表に示す。 The delivery rate determination unit 17 determines the delivery rate of the multicast stream for each multicast ID and rate control identification ID based on the load rate related to the transmission of the response packets (the load rate calculated from the retransmission rate required to transmit the response packets). For example, the delivery rate determination unit 17 calculates the load rate (LR) of the retransmission server 10 for each multicast group from the retransmission rate (RSBR) required to transmit the response packets. Then, based on the load rate, the delivery rate determination unit 17 calculates the delivery rate (BR) of packets for each multicast ID transmitted by the content distribution server 20, and outputs it to the delivery rate transmission unit 19. A specific example of the calculation of the load rate and delivery rate is described below. The variables used here are shown in the table below.

Figure 0007474078000001
Figure 0007474078000001

要求情報管理部12は、レート制御識別IDが更新されるまでの計測時間t(つまり、設定したタイマーがタイムアウトになるまでの時間T1、及びタイマーを設定時刻から送信バッファ15の空き容量が閾値以下となるまでの時間T2のうちの早いほうの時間)において、全ての受信装置40から再送要求された再送要求パケット数Rnumを、レート制御識別ID及びマルチキャストIDごとにカウントする。そして、配信レート決定部17は、再送要求パケット数Rnumを用いて、レート制御識別ID及びマルチキャストIDごとに、応答パケットの送信に必要な再送レートRSBRを、次式(1)により算出する。 The request information management unit 12 counts the number of retransmission request packets Rnum requested for retransmission from all receiving devices 40 for each rate control identification ID and multicast ID during the measurement time t until the rate control identification ID is updated (i.e., the earlier of the time T1 until the set timer times out or the time T2 from the time the timer is set until the free space in the transmission buffer 15 falls below the threshold).Then, the delivery rate determination unit 17 uses the number of retransmission request packets Rnum to calculate the retransmission rate RSBR required to transmit a response packet for each rate control identification ID and multicast ID using the following formula (1).

Figure 0007474078000002
Figure 0007474078000002

次に、配信レート決定部17は、次式(2)に示すように、マルチキャストIDごとに定められた許容配信レートMAX_RSBRに対する再送レートRSBRの割合を、再送サーバ10の負荷率LRとして算出する。 Next, the delivery rate determination unit 17 calculates the ratio of the retransmission rate RSBR to the allowable delivery rate MAX_RSBR defined for each multicast ID as the load rate LR of the retransmission server 10, as shown in the following formula (2).

Figure 0007474078000003
Figure 0007474078000003

次に、配信レート決定部17は、配信レートBRを、負荷率LRに基づいて設定する。例えば、次式(3)のように、配信レートBRを、負荷率LRが大きいほど小さな値とする。式(3)は負荷率LRに応じて配信レートBRを線形的に下げる式の一例であるが、負荷率LRに応じて配信レートBRを非線形的に下げてもよいし、表1に示す他の変数を用いて配信レートBRを決定してもよい。なお、配信レートBRは、マルチキャストストリームの配信レートの最大値MAX_BRを超えないものとする。このように、再送サーバ10の負荷率LRが大きい場合には、コンテンツ配信サーバ20の配信レートBRを下げることにより、受信装置40の単位時間あたりの損失パケット数を低下させることが可能となる。 Next, the delivery rate determination unit 17 sets the delivery rate BR based on the load rate LR. For example, as shown in the following formula (3), the delivery rate BR is set to a smaller value as the load rate LR increases. Formula (3) is an example of a formula for linearly lowering the delivery rate BR according to the load rate LR, but the delivery rate BR may be non-linearly lowered according to the load rate LR, or the delivery rate BR may be determined using other variables shown in Table 1. Note that the delivery rate BR does not exceed the maximum value MAX_BR of the delivery rate of the multicast stream. In this way, when the load rate LR of the retransmission server 10 is large, it is possible to reduce the number of lost packets per unit time of the receiving device 40 by lowering the delivery rate BR of the content distribution server 20.

Figure 0007474078000004
Figure 0007474078000004

配信レート送信部19は、配信レート決定部17により決定された配信レート、及びマルチキャストIDを含む配信レート情報を、コンテンツ配信サーバ20に通知する。 The delivery rate transmission unit 19 notifies the content delivery server 20 of the delivery rate determined by the delivery rate determination unit 17 and the delivery rate information including the multicast ID.

コンテンツ配信サーバ20は、再送サーバ10から配信レート情報を受け取ると、レート制御識別IDをインクリメントする。そして、コンテンツ配信サーバ20は、配信レート情報に基づいて、指定のマルチキャストグループの配信レートを、指定の配信レートに動的に切り替える。これにより、再送サーバ10の負荷をマルチキャストグループごとに調整することが可能となる。 When the content distribution server 20 receives the distribution rate information from the retransmission server 10, it increments the rate control identification ID. Then, the content distribution server 20 dynamically switches the distribution rate of the specified multicast group to the specified distribution rate based on the distribution rate information. This makes it possible to adjust the load on the retransmission server 10 for each multicast group.

再送サーバ10の許容配信レートMAX_RSBR(MCID)は、マルチキャストグループごとに設定することが可能である。例えば、MCID=A,Bの2つのマルチキャストグループが存在する場合に、MAX_RSBR(A)>MAX_RSBR(B)と設定することで、再送サーバ10のリソースをMCID=Aのマルチキャストグループに優先的に振り分けることが可能となる。ただし、MAX_RSBR(A)+MAX_RSBR(B)が、再送サーバ10の配信性能を超えないように設定する必要がある。 The allowable delivery rate MAX_RSBR(MCID) of the retransmission server 10 can be set for each multicast group. For example, if there are two multicast groups with MCID=A and B, by setting MAX_RSBR(A) > MAX_RSBR(B), it becomes possible to preferentially allocate the resources of the retransmission server 10 to the multicast group with MCID=A. However, it is necessary to set it so that MAX_RSBR(A) + MAX_RSBR(B) does not exceed the delivery performance of the retransmission server 10.

(再送要求受信時の処理)
次に、再送サーバ10による再送要求受信時の処理を、図3を参照して説明する。図3は、再送サーバ10による要求情報の受信ごとに発生する処理例を示すフローチャートである。
(Processing when a resend request is received)
Next, the process performed by the retransmission server 10 when a retransmission request is received will be described with reference to Fig. 3. Fig. 3 is a flow chart showing an example of the process that occurs each time the retransmission server 10 receives request information.

ステップS101では、再送要求受信部11により、受信装置40から再送要求を受信する。 In step S101, the retransmission request receiving unit 11 receives a retransmission request from the receiving device 40.

ステップS102では、要求情報管理部12により、再送要求を解析し、マルチキャストID(MCID)、シーケンシャル番号(s)、及びレート制御識別ID(d)を検出する。 In step S102, the request information management unit 12 analyzes the retransmission request and detects the multicast ID (MCID), sequential number (s), and rate control identification ID (d).

ステップS103では、応答パケット送信部18により、受信装置40から再送要求されたパケットに対応する応答パケットを、該受信装置40に送信する。 In step S103, the response packet transmitting unit 18 transmits to the receiving device 40 a response packet corresponding to the packet requested for retransmission by the receiving device 40.

ステップS104では、タイマー管理部14により、現在計測中のレート制御識別IDであるLastdと、ステップS102で検出されたレート制御識別IDとを比較する。Lastdの初期値は-1とする。レート制御識別IDがインクリメントされてd>Lastdとなった場合には処理をステップS107に進め、それ以外の場合には処理をステップS105に進める。 In step S104, the timer management unit 14 compares Lastd, which is the rate control identification ID currently being measured, with the rate control identification ID detected in step S102. The initial value of Lastd is set to -1. If the rate control identification ID is incremented so that d>Lastd, the process proceeds to step S107; otherwise, the process proceeds to step S105.

ステップS105では、要求情報管理部12により、現在計測中のレート制御識別IDであるLastdと、ステップS102で検出されたレート制御識別IDとが一致するか否かを判定する。d<Lastdである場合には何も行わず、d=Lastdである場合には処理をステップS106に進める。 In step S105, the request information management unit 12 determines whether the rate control identification ID currently being measured, Lastd, matches the rate control identification ID detected in step S102. If d<Lastd, nothing is done, and if d=Lastd, the process proceeds to step S106.

ステップS106では、要求情報管理部12により、再送要求パケット数Rnumをインクリメントする。 In step S106, the request information management unit 12 increments the number of retransmission request packets Rnum.

ステップS107では、タイマー管理部14により、タイマー時間T1を設定するとともに、タイマーを設定した時刻から現在の時刻までの経過時間の計測を開始する。 In step S107, the timer management unit 14 sets the timer time T1 and starts measuring the elapsed time from the time the timer was set to the current time.

ステップS108では、要求情報管理部12により、Lastdに、これから再送要求パケット数の計測を開始する最新のレート制御識別IDを代入してLastdを更新する。 In step S108, the request information management unit 12 updates Lastd by substituting the latest rate control identification ID that will start measuring the number of retransmission request packets.

(配信レートの決定処理)
次に、再送サーバ10による配信レートの決定処理を、図4を参照して説明する。図4は、再送サーバ10による配信レート決定の処理例を示すフローチャートである。
(Decision process of distribution rate)
Next, the process of determining the delivery rate by the retransmission server 10 will be described with reference to Fig. 4. Fig. 4 is a flow chart showing an example of the process of determining the delivery rate by the retransmission server 10.

ステップS201では、配信レート決定部17により、図3のステップS107で設定されたタイマー時間が経過したことを示すタイマー発火イベント、又は送信バッファ15の利用率が高いことを示すバッファ飽和イベントを検出する。すなわち、配信レート決定部17は、タイマー時間T1が経過するか、又はタイマーを設定した時刻から送信バッファ15の空き容量が閾値以下となるまでの時間T2が経過すると、処理をステップS202に進める。 In step S201, the delivery rate determination unit 17 detects a timer firing event indicating that the timer time set in step S107 in FIG. 3 has elapsed, or a buffer saturation event indicating that the utilization rate of the transmission buffer 15 is high. That is, when the timer time T1 has elapsed, or when the time T2 from the time the timer was set until the free space in the transmission buffer 15 becomes equal to or less than the threshold has elapsed, the delivery rate determination unit 17 advances the process to step S202.

ステップS202では、配信レート決定部17により、上記式(1)(2)を用いて負荷率を計算する。 In step S202, the delivery rate determination unit 17 calculates the load rate using the above formulas (1) and (2).

ステップS203では、配信レート決定部17により、上記式(3)を用いて配信レートを計算する。 In step S203, the delivery rate determination unit 17 calculates the delivery rate using the above formula (3).

ステップS204では、配信レート送信部19により、配信レート及びマルチキャストIDを含む配信レート情報をコンテンツ配信サーバ20に通知する。 In step S204, the delivery rate transmission unit 19 notifies the content delivery server 20 of delivery rate information including the delivery rate and the multicast ID.

以上説明したように、受信装置40はコンテンツ配信サーバ20からパケットを受信し、ロスパケットを検出すると、マルチキャストID、シーケンシャル番号、及びレート制御識別IDを含む再送要求を再送サーバ10に送信する。再送サーバ10は、受信装置40から再送要求を受信すると、応答パケットを生成して送信するとともに、応答パケットの送信に係る負荷率(応答パケットの送信に必要な再送レートから算出される負荷率)に基づいて、マルチキャストID及びレート制御識別IDごとに、マルチキャストストリームの配信レートを決定する。かかる構成により、本発明によれば、オペレーティングシステムのアップデートなど、リアルタイム性の求められないコンテンツについて、限られたリソースの中でデータ到達を保証しながらマルチキャスト配信を実現することが可能となる。そして、ネットワーク状況だけでなく、コンテンツ配信サーバ20の性能によってフロー制御を行うので、受信装置40の増加による再送サーバ10へのアクセス集中による破綻を防止することができる。 As described above, when the receiving device 40 receives a packet from the content distribution server 20 and detects a lost packet, it transmits a retransmission request including a multicast ID, a sequential number, and a rate control identification ID to the retransmission server 10. When the retransmission server 10 receives a retransmission request from the receiving device 40, it generates and transmits a response packet, and determines the delivery rate of the multicast stream for each multicast ID and rate control identification ID based on the load factor related to the transmission of the response packet (the load factor calculated from the retransmission rate required for the transmission of the response packet). With this configuration, according to the present invention, it is possible to realize multicast delivery while guaranteeing data arrival within limited resources for content that does not require real-time performance, such as operating system updates. Furthermore, since flow control is performed not only based on the network status but also on the performance of the content distribution server 20, it is possible to prevent failure due to concentrated access to the retransmission server 10 caused by an increase in the number of receiving devices 40.

また、受信装置40のパケットロスのフィードバックにより、再送サーバ10が破綻しない範囲内でマルチキャストの配信レートを最大化することが可能となる。また、再送サーバ10により決定された配信レートを最大値として、その他の高信頼性マルチキャストのフロー制御を組み合わせることで、再送サーバ10の破綻を防止しながら配信効率を高めることが可能となる。 Furthermore, by feedback of packet loss from the receiving device 40, it becomes possible to maximize the multicast delivery rate within a range in which the retransmission server 10 does not fail. Furthermore, by combining the delivery rate determined by the retransmission server 10 as the maximum value with other highly reliable multicast flow control, it becomes possible to increase delivery efficiency while preventing the retransmission server 10 from failing.

また本発明では、マルチキャストグループを識別するためのマルチキャストIDを導入することにより、マルチキャストストリームごとに許容配信レートを設定することができ、再送サーバ10は、マルチキャストIDごとに定められた許容配信レートに対する再送レートの割合を、負荷率として算出する。そのため、本発明によれば、マルチキャストグループごとに再送サーバ10のリソースを割り当てることができ、例えば優先的に送信したいコンテンツの配信レートを上昇させることが可能となる。 In addition, in the present invention, by introducing a multicast ID for identifying a multicast group, an allowable delivery rate can be set for each multicast stream, and the retransmission server 10 calculates the ratio of the retransmission rate to the allowable delivery rate set for each multicast ID as the load factor. Therefore, according to the present invention, the resources of the retransmission server 10 can be allocated for each multicast group, making it possible to increase the delivery rate of content that is to be preferentially transmitted, for example.

(プログラム)
配信サーバ30(再送サーバ10及びコンテンツ配信サーバ20)は、各機能を実現する処理内容を記述したプログラムを記憶部に格納しておき、CPU(Central Processing Unit)、DSP(Digital Signal Processor)などのプロセッサによってこのプログラムを読み出して実行させるコンピュータであってもよい。また、これらの処理内容の少なくとも一部は、ハードウェアで実現されてもよい。例えば、配信サーバ30として機能させるためのプログラムは、上述した図3及び図4に記載のステップを含む。
(program)
The distribution server 30 (retransmission server 10 and content distribution server 20) may be a computer that stores a program describing the processing contents for realizing each function in a storage unit and reads and executes the program using a processor such as a CPU (Central Processing Unit) or a DSP (Digital Signal Processor). At least a part of the processing contents may be realized by hardware. For example, a program for functioning as the distribution server 30 includes the steps described in Figures 3 and 4 above.

また、このプログラムは、コンピュータが読み取り可能な記録媒体に記録されていてもよい。このような記録媒体を用いれば、プログラムをコンピュータにインストールすることが可能である。ここで、プログラムが記録された記録媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROM、DVD-ROMなどの記録媒体であってもよい。また、このプログラムは、ネットワークを介したダウンロードによって提供することもできる。 The program may also be recorded on a computer-readable recording medium. Using such a recording medium, the program can be installed on a computer. Here, the recording medium on which the program is recorded may be a non-transient recording medium. The non-transient recording medium is not particularly limited, and may be, for example, a CD-ROM, DVD-ROM, or other recording medium. The program may also be provided by downloading via a network.

上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の構成ブロック又は処理ステップについて、複数を1つに組み合わせたり、1つを複数に分割したりすることが可能である。 The above-described embodiments have been described as representative examples, but it will be apparent to those skilled in the art that many modifications and substitutions can be made within the spirit and scope of the present invention. Therefore, the present invention should not be interpreted as being limited by the above-described embodiments, and various modifications and changes are possible without departing from the scope of the claims. For example, it is possible to combine multiple components or processing steps described in the embodiments into one, or to divide one into multiple components.

1 配信システム
10 再送サーバ
11 再送要求受信部
12 要求情報管理部
13 応答パケット生成部
14 タイマー管理部
15 送信バッファ
16 送信バッファ管理部
17 配信レート決定部
18 応答パケット送信部
19 配信レート送信部
20 コンテンツ配信サーバ
30 配信サーバ
40 受信装置
REFERENCE SIGNS LIST 1 distribution system 10 retransmission server 11 retransmission request receiving unit 12 request information management unit 13 response packet generating unit 14 timer management unit 15 transmission buffer 16 transmission buffer management unit 17 distribution rate determining unit 18 response packet transmitting unit 19 distribution rate transmitting unit 20 content distribution server 30 distribution server 40 receiving device

Claims (4)

複数の受信装置から、ロスパケットの再送要求を受信すると、該再送要求に対応する応答パケットを各受信装置に送信する配信サーバであって、
前記再送要求は、マルチキャストグループを識別するためのマルチキャストID、パケットを識別するためのシーケンシャル番号、及びパケットの配信レートを識別するためのレート制御識別IDを含んでおり、
前記マルチキャストID及び前記シーケンシャル番号に対応するパケットを応答パケットとして生成する応答パケット生成部と、
前記マルチキャストIDごとに定められた許容配信レートに対する再送レートの割合を、前記応答パケットの送信に係る負荷率として算出し、前記負荷率に基づいて、前記マルチキャストID及び前記レート制御識別IDごとに、マルチキャストストリームの配信レートを決定する配信レート決定部と、
を備える配信サーバ。
A distribution server that, upon receiving a retransmission request for a lost packet from a plurality of receiving devices, transmits a response packet corresponding to the retransmission request to each of the receiving devices,
the retransmission request includes a multicast ID for identifying a multicast group, a sequential number for identifying a packet, and a rate control ID for identifying a delivery rate of the packet;
a response packet generating unit that generates a packet corresponding to the multicast ID and the sequential number as a response packet;
a delivery rate determination unit that calculates a ratio of a retransmission rate to an allowable delivery rate determined for each of the multicast IDs as a load factor related to the transmission of the response packets, and determines a delivery rate of a multicast stream for each of the multicast IDs and the rate control IDs based on the load factor;
A distribution server comprising:
前記配信レート決定部は、前記配信レートを、前記負荷率が大きいほど小さな値に決定する、請求項1に記載の配信サーバ。 The delivery server according to claim 1, wherein the delivery rate determination unit determines the delivery rate to be a smaller value as the load factor increases. 前記応答パケットを一時的に蓄積する送信バッファと、
前記送信バッファの空き容量を監視する送信バッファ管理部と、
あらかじめ設定したタイマーがタイムアウトになるまでの第1時間、及び送信バッファの空き容量が閾値以下となるまでの第2時間のうちの早いほうの時間において、前記複数の受信装置から再送要求された再送要求パケット数を、前記レート制御識別ID及び前記マルチキャストIDごとにカウントする要求情報管理部と、を備え、
前記配信レート決定部は、前記再送要求パケット数を用いて、前記レート制御識別ID及び前記マルチキャストIDごとに、前記再送レートを算出する、請求項1又は2に記載の配信サーバ。
a transmission buffer for temporarily storing the response packet;
a transmission buffer management unit that monitors the free space of the transmission buffer;
a request information management unit that counts the number of retransmission request packets requested for retransmission from the plurality of receiving devices for each of the rate control identification ID and the multicast ID during an earlier period of a first period until a preset timer times out and a second period until an available capacity of a transmission buffer becomes equal to or less than a threshold,
3. The delivery server according to claim 1, wherein the delivery rate determination unit calculates the retransmission rate for each of the rate control identification IDs and the multicast IDs by using the number of retransmission request packets.
コンピュータを、請求項1からのいずれか一項に記載の配信サーバとして機能させるためのプログラム。 A program for causing a computer to function as the distribution server according to any one of claims 1 to 3 .
JP2020040821A 2020-03-10 2020-03-10 Distribution server and program Active JP7474078B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020040821A JP7474078B2 (en) 2020-03-10 2020-03-10 Distribution server and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020040821A JP7474078B2 (en) 2020-03-10 2020-03-10 Distribution server and program

Publications (2)

Publication Number Publication Date
JP2021145168A JP2021145168A (en) 2021-09-24
JP7474078B2 true JP7474078B2 (en) 2024-04-24

Family

ID=77767212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020040821A Active JP7474078B2 (en) 2020-03-10 2020-03-10 Distribution server and program

Country Status (1)

Country Link
JP (1) JP7474078B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003037625A (en) 2001-07-23 2003-02-07 Matsushita Electric Ind Co Ltd Contents distribution system
JP2004080070A (en) 2002-08-09 2004-03-11 Nippon Telegr & Teleph Corp <Ntt> Data transfer method, data transfer system and content distribution system
JP2010028812A (en) 2008-07-15 2010-02-04 Hitachi Ltd Communication control apparatus and communication control method
JP2017092581A (en) 2015-11-05 2017-05-25 住友電気工業株式会社 Gateway unit, broadcast receiver, broadcast relay method, broadcast reception method, broadcast relay program, and broadcast reception program
WO2019239541A1 (en) 2018-06-14 2019-12-19 三菱電機株式会社 Electric apparatus, communication system, and control method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3614907B2 (en) * 1994-12-28 2005-01-26 株式会社東芝 Data retransmission control method and data retransmission control system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003037625A (en) 2001-07-23 2003-02-07 Matsushita Electric Ind Co Ltd Contents distribution system
JP2004080070A (en) 2002-08-09 2004-03-11 Nippon Telegr & Teleph Corp <Ntt> Data transfer method, data transfer system and content distribution system
JP2010028812A (en) 2008-07-15 2010-02-04 Hitachi Ltd Communication control apparatus and communication control method
JP2017092581A (en) 2015-11-05 2017-05-25 住友電気工業株式会社 Gateway unit, broadcast receiver, broadcast relay method, broadcast reception method, broadcast relay program, and broadcast reception program
WO2019239541A1 (en) 2018-06-14 2019-12-19 三菱電機株式会社 Electric apparatus, communication system, and control method

Also Published As

Publication number Publication date
JP2021145168A (en) 2021-09-24

Similar Documents

Publication Publication Date Title
US7908393B2 (en) Network bandwidth detection, distribution and traffic prioritization
US9270475B2 (en) Network-based service for the repair of IP multicast sessions
Speakman et al. PGM reliable transport protocol specification
JP6284549B2 (en) FEC-based reliable transfer control protocol for multipath streaming
US9660912B2 (en) Control of packet transfer through a multipath session comprising a single congestion window
WO2015150814A1 (en) Data flow control method
WO2003098884A1 (en) Protocol, information processing system and method, information processing device and method, recording medium, and program
CN107979449A (en) A kind of data transmission method and device
JP6206465B2 (en) Communication apparatus and communication method
CN109450606B (en) Data transmission control method and device
US8811180B2 (en) Communication apparatus and communication method
JP4252596B2 (en) Packet transfer device
Dong et al. Qualitative communication via network coding and New IP
US20100235702A1 (en) Transmitter, file distribution system, file distribution control method and file distribution control program in system
JP4761078B2 (en) Multicast node device, multicast transfer method and program
JP7474078B2 (en) Distribution server and program
JP4798495B2 (en) Video distribution quality measurement system, apparatus and method
US20040049367A1 (en) Communication device and communication method
US7561523B1 (en) Method and apparatus for flow control in a reliable multicast communication system
CN116566920A (en) Data transmission control method and related device
Buskens et al. Reliable multicasting of continuous data streams
Malekpour et al. End-to-end congestion control for content-based networks
French SRP—A Multimedia Network Protocol
Koch et al. A reliable many-to-many multicast protocol for group communication over ATM networks
Dabbous et al. Study of congestion avoidance mechanisms

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231221

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: 20240319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240412

R150 Certificate of patent or registration of utility model

Ref document number: 7474078

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150