JP6064593B2 - プログラム、情報処理装置、及び通信方法 - Google Patents
プログラム、情報処理装置、及び通信方法 Download PDFInfo
- Publication number
- JP6064593B2 JP6064593B2 JP2012285313A JP2012285313A JP6064593B2 JP 6064593 B2 JP6064593 B2 JP 6064593B2 JP 2012285313 A JP2012285313 A JP 2012285313A JP 2012285313 A JP2012285313 A JP 2012285313A JP 6064593 B2 JP6064593 B2 JP 6064593B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- information processing
- amount
- processing apparatus
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1825—Adaptation of specific ARQ protocol parameters according to transmission conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Description
[第1の実施の形態]
第1の実施の形態について説明する。
図1に示すように、第1の実施の形態に係る情報処理装置10は、通信部11及び制御部12を有する。また、情報処理装置10は、ネットワーク5を介して他の情報処理装置7と接続されている。
[第2の実施の形態]
第2の実施の形態について説明する。
まず、図2を参照しながら、第2の実施の形態に係る通信システム100について説明する。図2は、第2の実施の形態に係る通信システムの例を示した図である。
また、情報処理装置110の機能は、図3に示すようなハードウェアにより実現される。図3は、第2の実施の形態に係る情報処理装置のハードウェアの例を示した図である。なお、図3に示したハードウェア要素の組み合わせは一例であり、実施の態様に応じて一部の要素を省略することや、新たな要素を追加することも可能である。
上記のハードウェアを用いることで、情報処理装置110は、図4に示すような機能を実現することができる。図4は、第2の実施の形態に係る送信側の情報処理装置の機能の例を示したブロック図である。
(マッピング表について)
ここで、図5を参照しながら、マッピング表について説明する。図5は、マッピング表の例を示した図である。マッピング表には、処理速度、通信速度、パケットロス率、RTTと、変動量βとの間の関係が記述されている。変動量βは、1つのブロックに含めるデータの量について仮設定値αから増減させるデータの量を示す。例えば、仮設定値αから1増加させる場合、変動量βは+1となる。逆に、仮設定値αから1減少させる場合、変動量βは−1となる。なお、1つ前のブロックと現在のブロックとについて変化がない項目の欄には「−」が表示されている。
(情報処理装置130の機能について)
次に、図6を参照しながら、受信側の情報処理装置130の機能について説明する。図6は、第2の実施の形態に係る受信側の情報処理装置の機能の例を示したブロック図である。なお、受信側の情報処理装置130が有する機能は、送信側の情報処理装置110と同じハードウェアを用いて実現できる。
(RPS+UDPによるデータ送信方法について)
次に、消失訂正符号の一例としてRPS符号を取り上げ、RPS符号化したアプリケーションデータをUDPにより送信するデータ送信方法について説明する。
図10は、第2の実施の形態に係る送信制御方法を説明した第1の図である。
図10の例では、ブロックBL1、BL2、BL3に割り当てられたデータが順番に送信される。まず、ブロックBL1に割り当てられたデータがRPS符号化され、複数のパリティパケットで形成されるRPS符号RPS1が生成される。RPS符号RPS1はUDPに従って送信される。
例えば、ブロックBL1に割り当てられたデータから生成されるRPS符号RPS1の一部が伝送路で失われ、受信側で一部のデータパケットが復元不能となった場合、復元不能となったデータパケットの復元に用いるパリティパケットの再送が要求される。このとき、パケットロス率の計算に用いられる情報が、再送要求に含めて受信側から送信側へと通知される。この要求に応じてパリティパケットが再送され、このパリティパケットを利用して、復元不能となっていたデータパケットが復元される。
図12は、第2の実施の形態に係る送信制御方法を説明した第3の図である。
例えば、ブロックBL1に割り当てられたデータから生成されるRPS符号RPS1の一部が伝送路で失われ、受信側で一部のデータパケットが復元不能となった場合、復元不能となったデータパケットの復元に用いるパリティパケットの再送が要求される。この要求に応じてパリティパケットが再送され、このパリティパケットを利用して、復元不能となっていたデータパケットが復元される。
ここで、図14を参照しながら、RPS符号の送信処理及び送達確認の返信処理について説明を補足する。図14は、第2の実施の形態に係るチェックポイントデータ及びACKの送信処理について説明した図である。
図14の例では、あるブロックに割り当てられたデータ#1がRPS符号RPS1に変換され、受信側へと送信されている。このとき、RPS符号RPS1の後に、チェックポイントデータCP1が送信される。このチェックポイントデータCP1は、RPS符号RPS1で送信したデータのデータ量を示す情報を含んでいる。そのため、受信側でRPS符号RPS1から復元したデータのデータ量と、チェックポイントデータCP1に含まれる情報が示すデータ量とを比較することで、ブロックに割り当てられたデータが全て復元されたか否かを受信側で確認することができる。
ここで、図16を参照しながら、処理時間の計測方法について説明を補足する。図16は、第2の実施の形態に係る処理時間について説明した図である。
例えば、1つのブロックのデータは、データパケットより大きくブロックより細かい単位(セグメント)でRAM902などのメモリ(アプリケーション層のバッファ)上に格納される。あるセグメントSg1内のデータが全て揃った際に、そのセグメントSg1がファイルに書き込まれる。ファイルへの書き込みが終了したタイミングで処理時間の計測が終了する。なお、データが揃っていないセグメントはファイルに書き出されずにメモリ上に残され、再送制御が行われる。処理時間の情報は、送信側で処理速度の計算及び送信設定の決定に利用される。
(送信処理の流れについて)
次に、図17及び図18を参照しながら、第2の実施の形態に係る送信処理の流れについて説明する。なお、図17及び図18に示した処理は、送信側の情報処理装置110により実行される。
(S101)制御部116は、送信するデータのデータ量を示すチェックポイントサイズを設定する。制御部116により設定されたチェックポイントサイズの情報は、ブロック化部112に入力される。
(S107)制御部116は、再送制御を行う前に復元できなかったデータパケットのパケット数、及び送信したデータパケットのパケット数に基づいてパケットロス率を計算する。また、制御部116は、計算したパケットロス率を保持する。
(S109)制御部116は、1つ前のブロックのデータ送信時に計算したパケットロス率が、今回のブロックのデータ送信時に計算したパケットロス率よりも低いか否かを判定する。1つ前のブロックのデータ送信時に計算したパケットロス率の方が低い場合、処理はS110に進む。一方、1つ前のブロックのデータ送信時に計算したパケットロス率の方が低くない場合、処理はS111に進む。
(S111)制御部116は、今回のブロックのチェックポイントサイズを仮設定値αに設定する。S111の処理を終了すると、処理はS112に進む。
(受信処理の流れについて)
次に、図19を参照しながら、第2の実施の形態に係る受信処理の流れについて説明する。なお、図19に示した処理は、受信側の情報処理装置130により実行される。図19は、第2の実施の形態に係る受信処理の流れについて説明した図である。
(S202)消失訂正復号部132は、RPS復号を実施してパリティパケットからデータパケットを復元する。このとき、伝送路でパケットの順序が入れ替わっている場合にはパケットの順序が整列される。また、処理時間計測部133は、1つのブロックについての復元処理が開始されたタイミングで処理時間の計測を開始する。
(S205)消失訂正復号部132は、復元したデータのデータ量を計算する。
以上説明したように、第2の実施の形態に係る技術を適用すれば、受信側の処理負荷が高い場合でも、処理遅延により受信側のアプリケーション層のバッファがオーバーフローするといった困難な事態を回避することが可能になる。また、パケットロス率が高い状況では消失訂正能力を高めるなどの制御が動的に実施されるため、再送要求の頻度が低減される。このように、時々刻々と変化する伝送路の状況や受信側の負荷状況に応じて送信設定を動的に変更することで、安定して高いスループットを維持することが可能になる。
11、115、131 通信部
12、116 制御部
21 データ
22 処理時間情報
111 データ入力部
112 ブロック化部
113 パケット生成部
114 消失訂正符号化部
132 消失訂正復号部
133 処理時間計測部
134 再送制御部
135 データ出力部
136 記憶部
Claims (5)
- 他のコンピュータにデータを送信可能なコンピュータに、
前記他のコンピュータからの応答を待たずに送信できるデータの量の閾値を第1の閾値に設定し、前記第1の閾値以下の量の第1のデータを符号化して前記他のコンピュータに送信し、
前記他のコンピュータが前記第1のデータの復号を開始してから復号されたデータを記憶装置に書き込むまでの時間を含む処理時間情報を前記他のコンピュータから取得し、
前記処理時間情報に基づいて、前記データの量の閾値を前記第1の閾値から第2の閾値に変更し、前記第2の閾値以下の量の第2のデータを前記他のコンピュータに送信する、
処理を実行させるプログラム。 - 前記処理時間情報と前記第1のデータが送信されたときの通信状況を示す通信状況情報との組み合わせに基づいて、前記データの量の閾値を変更する、
請求項1に記載のプログラム。 - 前記第2のデータは符号化されて送信され、
前記第2のデータの送信では、符号化前の前記第2のデータの量を前記第2の閾値に基づいて制限するか、又は、符号化率を変更することで符号化後の前記第2のデータの量を前記第2の閾値に基づいて制限する、
請求項1に記載のプログラム。 - 他の情報処理装置にデータを送信可能な情報処理装置であって、
第1のデータを符号化して前記他の情報処理装置に送信し、前記他の情報処理装置が前記第1のデータの復号を開始してから復号されたデータを記憶装置に書き込むまでの時間を含む処理時間情報を前記他の情報処理装置から受信し、第2のデータを前記他の情報処理装置に送信する通信部と、
前記他の情報処理装置からの応答を待たずに送信できるデータの量の閾値を第1の閾値に設定して、前記第1のデータの量を前記第1の閾値以下に制限し、前記処理時間情報に基づいて前記データの量の閾値を前記第1の閾値から第2の閾値に変更して、前記第2のデータの量を前記第2の閾値以下に制限する制御部と、
を有する情報処理装置。 - 他の情報処理装置にデータを送信可能な情報処理装置が実行する通信方法であって、
前記他の情報処理装置からの応答を待たずに送信できるデータの量の閾値を第1の閾値に設定し、前記第1の閾値以下の量の第1のデータを符号化して前記他の情報処理装置に送信し、
前記他の情報処理装置が前記第1のデータの復号を開始してから復号されたデータを記憶装置に書き込むまでの時間を含む処理時間情報を前記他の情報処理装置から取得し、
前記処理時間情報に基づいて、前記データの量の閾値を前記第1の閾値から第2の閾値に変更し、前記第2の閾値以下の量の第2のデータを前記他の情報処理装置に送信する、
通信方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012285313A JP6064593B2 (ja) | 2012-12-27 | 2012-12-27 | プログラム、情報処理装置、及び通信方法 |
US14/105,978 US9401775B2 (en) | 2012-12-27 | 2013-12-13 | Communication method, information processing apparatus, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012285313A JP6064593B2 (ja) | 2012-12-27 | 2012-12-27 | プログラム、情報処理装置、及び通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014127969A JP2014127969A (ja) | 2014-07-07 |
JP6064593B2 true JP6064593B2 (ja) | 2017-01-25 |
Family
ID=51017074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012285313A Expired - Fee Related JP6064593B2 (ja) | 2012-12-27 | 2012-12-27 | プログラム、情報処理装置、及び通信方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9401775B2 (ja) |
JP (1) | JP6064593B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110495120B (zh) | 2017-04-03 | 2022-04-29 | 瑞典爱立信有限公司 | 用于具有可变处理时间的节点的harq处理 |
CN107147481A (zh) * | 2017-07-19 | 2017-09-08 | 北京数码视讯科技股份有限公司 | 丢包重传方法、装置及电子设备 |
WO2019146098A1 (ja) | 2018-01-29 | 2019-08-01 | 三菱電機株式会社 | 制御システム、制御方法、及び、プログラム |
CN116134391A (zh) * | 2020-02-04 | 2023-05-16 | 发那科株式会社 | 控制系统 |
JPWO2023058078A1 (ja) * | 2021-10-04 | 2023-04-13 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6141324A (en) | 1998-09-01 | 2000-10-31 | Utah State University | System and method for low latency communication |
US6643259B1 (en) * | 1999-11-12 | 2003-11-04 | 3Com Corporation | Method for optimizing data transfer in a data network |
JP2002169738A (ja) | 2000-11-30 | 2002-06-14 | Mitsubishi Electric Corp | ファイル配信方法 |
JP3763812B2 (ja) * | 2002-11-01 | 2006-04-05 | 松下電器産業株式会社 | 通信システム及び方法 |
US8125910B2 (en) * | 2004-06-25 | 2012-02-28 | Nec Corporation | Communication system |
JP2007201702A (ja) * | 2006-01-25 | 2007-08-09 | Mitsubishi Electric Corp | 受信装置、通信装置および通信方法 |
JP4808054B2 (ja) * | 2006-03-17 | 2011-11-02 | 富士通株式会社 | データ転送方法及び,これを適用する通信システム及びプログラム |
JP2009071360A (ja) * | 2007-09-10 | 2009-04-02 | Ricoh Co Ltd | 通信装置および通信方法 |
WO2010038108A1 (en) * | 2008-09-30 | 2010-04-08 | Freescale Semiconductor, Inc. | Data processing |
US8514715B2 (en) * | 2010-04-22 | 2013-08-20 | Akamai Technologies, Inc. | Congestion window control based on queuing delay and packet loss |
EP2695388B1 (en) * | 2011-04-07 | 2017-06-07 | ActiveVideo Networks, Inc. | Reduction of latency in video distribution networks using adaptive bit rates |
-
2012
- 2012-12-27 JP JP2012285313A patent/JP6064593B2/ja not_active Expired - Fee Related
-
2013
- 2013-12-13 US US14/105,978 patent/US9401775B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US9401775B2 (en) | 2016-07-26 |
US20140185444A1 (en) | 2014-07-03 |
JP2014127969A (ja) | 2014-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10009259B2 (en) | Multi-path data transfer using network coding | |
JP6064593B2 (ja) | プログラム、情報処理装置、及び通信方法 | |
JP6023368B1 (ja) | インタラクティブなリアルタイムメディアの転送プロトコル | |
WO2017005055A1 (zh) | 流媒体网络传输的带宽计算方法、服务器端和系统 | |
US20160323062A1 (en) | Packet recovery in interactive real-time media protocol | |
US9007905B2 (en) | System to improve an Ethernet network | |
JP2017508372A (ja) | 輻輳制御ビットレート・アルゴリズム | |
US20170118673A1 (en) | Random Linear Network Encoded Data Transmission | |
EP2719132A1 (en) | System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability | |
KR101607773B1 (ko) | 데이터 송신 장치 및 이를 이용하는 데이터 통신 방법 | |
JPWO2014147774A1 (ja) | 通信方法、通信装置、および、通信プログラム | |
US9130740B2 (en) | Variable acknowledge rate to reduce bus contention in presence of communication errors | |
US7764616B2 (en) | Transmitter device for controlling data transmission | |
CN102664718A (zh) | 无线侧tcp数据重传的方法和设备 | |
US8607114B2 (en) | Communication device and communication method | |
CN104579601A (zh) | 一种重传请求处理方法和装置 | |
CN112995685A (zh) | 数据发送方法及装置、数据接收方法及装置、介质、设备 | |
JP2019106697A (ja) | 相互接続ネットワークでのメッセージ再送遅延を動的に管理するための方法及びデバイス | |
US9509623B2 (en) | Information processing device, information processing system, and method for processing packets from transmitting devices | |
JP5998923B2 (ja) | プログラム、情報処理装置、及び通信方法 | |
JP2007235674A (ja) | 通信装置および通信方法 | |
WO2023078222A1 (zh) | 数据传输方法、装置、设备和介质 | |
CN116318545A (zh) | 视频数据传输方法、装置、设备及存储介质 | |
US9294409B2 (en) | Reducing round-trip times for TCP communications | |
CN110299973B (zh) | 一种数据滚动传输的接收方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150804 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160414 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160426 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160624 |
|
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: 20161122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161205 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6064593 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |