JP4235506B2 - 送信装置、中継装置およびプログラム - Google Patents

送信装置、中継装置およびプログラム Download PDF

Info

Publication number
JP4235506B2
JP4235506B2 JP2003207600A JP2003207600A JP4235506B2 JP 4235506 B2 JP4235506 B2 JP 4235506B2 JP 2003207600 A JP2003207600 A JP 2003207600A JP 2003207600 A JP2003207600 A JP 2003207600A JP 4235506 B2 JP4235506 B2 JP 4235506B2
Authority
JP
Japan
Prior art keywords
data
request code
transmitted
transmission
relay
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
Application number
JP2003207600A
Other languages
English (en)
Other versions
JP2005064597A (ja
JP2005064597A5 (ja
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2003207600A priority Critical patent/JP4235506B2/ja
Priority to CNB200410055864XA priority patent/CN1322720C/zh
Priority to US10/915,449 priority patent/US7764613B2/en
Publication of JP2005064597A publication Critical patent/JP2005064597A/ja
Publication of JP2005064597A5 publication Critical patent/JP2005064597A5/ja
Application granted granted Critical
Publication of JP4235506B2 publication Critical patent/JP4235506B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/04Terminal devices adapted for relaying to or from another terminal or user

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

【0001】
【発明の属する技術分野】
データ通信を効率良く行うための技術に関する。
【0002】
【従来の技術】
TCP(Transmission Control Protocol)は、OSI(Open Systems Interconnection)参照モデルのトランスポート層に相当する通信プロトコルであり、信頼性の高いデータ通信を実現することができる。具体的には、TCPにしたがって行われる通信では、送信元から送信されるデータは、所定のデータサイズを有する部分データに分割され、部分データ毎に固有のヘッダを付与されたデータブロック(以下、「セグメント」)として送信される。このヘッダには、各セグメントに内包されている部分データを一意に特定するシーケンス番号が書き込まれており、このシーケンス番号は基本的に送信装置から送信されるセグメントの順番に一致している。そして、このセグメントを受信する受信装置は、そのセグメントに内包されているシーケンス番号に基づいて、セグメントの欠落の有無を検出し、欠落したセグメントの再送信をその送信元へ要求することができる。また、TCPにしたがってセグメントを送信する送信装置は、連続して複数のセグメントを送信することができ、このように連続して送信するセグメントの数(以下、「輻輳ウィンドウサイズ」)をスロースタートアルゴリズムと呼ばれる所定のアルゴリズムにしたがって順次増加させるようにしている。これは、最初から大量のセグメントを連続して送信してしまうと、輻輳を引き起こす虞があるからである。
【0003】
しかしながら、上述したスロースタートアルゴリズムでは、輻輳ウィンドウサイズを順次増加させて行くため、通信回線の帯域に充分な余裕がある場合であっても、その帯域を有効に利用するまで時間がかかり、効率的なデータ通信を行えないといった問題点がある。このような問題点を解決するための技術としては、特許文献1に開示された技術が挙げられる。
【0004】
特許文献1に開示されている技術では、以下に述べるようにして、効率良くデータ通信を行うことを可能にしている。すなわち、送信装置に輻輳ウィンドウサイズの初期値と所定の閾値とを記憶させておく。そして、データ送信を開始する場合には、輻輳ウィンドウサイズに上記初期値をセットし、その輻輳ウィンドウサイズで表される数のセグメントを送信装置に送信させる。以降、この送信装置は、送信したセグメントに対する確認応答を受信した場合に、輻輳ウィンドウサイズが既定サイズよりも小さかったならば、輻輳ウィンドウサイズをその既定サイズまで増加させてセグメントを送信する。これにより、信頼性を保証されたデータリンク層を利用している通信において効率良くデータ通信を行うことが可能になる。
【0005】
【特許文献1】
特開2001−298485号公報
【0006】
【発明が解決しようとする課題】
ところで、インターネットなどにおいて行われている通信では、送信装置と受信装置とが同一の通信網に接続され、直接通信することは稀である。一般的には、図7に示すように、受信装置210を接続している通信網230Aと送信装置220を接続している通信網230Bとがルータなどの中継装置240によって接続されており、送信装置220と受信装置210とは、この中継装置240を介して通信を行うようになっている。このように、中継装置240を介して通信が行われる状況下で、特許文献1に開示された技術を適用してしまうと、中継装置240の処理能力を超えた数のセグメントが中継装置に送信されてしまい、輻輳が発生する虞がある。
【0007】
本発明は、上記課題に鑑みて為されたものであり、中継装置における輻輳の発生を回避しつつ、データ通信を効率的に行う技術を提供することを目的としている。
【0008】
【課題を解決するための手段】
本発明は、中継装置を介して受信装置へ送信するべき複数のデータブロックの先頭から、そのデータブロックに付与したシーケンス番号の順に予め決められた数のデータブロックを選択する選択手段と、前記複数のデータブロックのうち、前記選択手段によって選択されたデータブロックを除いた残りのデータブロックのデータ量を算出する算出手段と、前記算出手段によって算出されたデータ量を表す要求コードを複数部分に分割し、前記選択手段によって選択されたデータブロックの各々の所定領域に対して、前記分割された要求コードの各々を書き込んで前記中継装置へ送信する第1の送信手段と、前記第1の送信手段によって送信されたデータブロックに分割されて書き込まれている要求コードで表されるデータ量のデータブロックを連続して送信することを許容する旨の通知を前記中継装置から受信した場合に、前記残りのデータブロックを連続して前記中継装置へ送信する第2の送信手段とを有する送信装置を提供する。
【0009】
このような送信装置によれば、受信装置へ送信するべきデータブロックのうち、上記残りのデータブロックを連続して送信することを要求する旨の要求コードが中継装置へ送信され、その要求を許可する旨の通知が中継装置から送信されてきた場合に、上記残りのデータブロックが連続して送信される。
【0010】
また、本発明は、上記課題を解決するために、コンピュータ装置に、コンピュータ装置に、中継装置を介して受信装置へ送信するべき複数のデータブロックの先頭から、そのデータブロックに付与したシーケンス番号の順に予め決められた数のデータブロックを選択する選択機能と、前記複数のデータブロックのうち、前記選択機能によって選択されたデータブロックを除いた残りのデータブロックのデータ量を算出する算出機能と、前記算出機能によって算出されたデータ量を表す要求コードを複数部分に分割し、前記選択機能によって選択されたデータブロックの各々の所定領域に対して、前記分割された要求コードの各々を書き込んで前記中継装置へ送信する第1の送信機能と、前記第1の送信機能によって送信されたデータブロックに分割されて書き込まれている要求コードで表されるデータ量のデータブロックを連続して送信することを許容する旨の通知を前記中継装置から受信した場合に、前記残りのデータブロックを連続して前記中継装置へ送信する第2の送信機能とを実現させるプログラムと、コンピュータ装置読み取り可能な記録媒体であって、当該プログラムを記録した記録媒体と、を提供する。
【0011】
このようなプログラムおよび記録媒体によれば、コンピュータ装置に、受信装置へ送信するべきデータブロックのうち、上記残りのデータブロックを連続して送信することを要求する旨の要求コードを中継装置へ送信させ、その要求を許可する旨の通知が中継装置から送信されてきた場合に、上記残りのデータブロックが連続して送信させる。
【0012】
また、上記課題を解決するために、本発明は、データブロックに付与したシーケンス番号にしたがって当該データブロックを決められた数づつ連続して送信する送信装置から連続して送信されてくるデータブロックを受信する受信手段と、前記受信手段によって受信されたデータブロックに、該送信装置が送信するべき残りのデータブロックのデータ量を表す要求コードが分割されて書き込まれている場合には、該要求コードで表されるデータ量のデータブロックを連続して中継することが可能であるか否かを判定する判定手段と、前記要求コードで表されるデータ量のデータブロックを連続して中継することが可能であると前記判定手段によって判定された場合に、その旨を示す通知を前記送信装置へ送信する送信手段と、前記受信手段によって受信されたデータブロックをその宛先の受信装置へ中継する中継手段とを有する中継装置を提供する。
【0013】
また、上記課題を解決するために、本発明は、コンピュータ装置に、データブロックに付与したシーケンス番号にしたがって当該データブロックを決められた数づつ連続して送信する送信装置から連続して送信されてくるデータブロックを受信する受信機能と、前記受信機能によって受信されたデータブロックに、該送信装置が送信するべき残りのデータブロックのデータ量を表す要求コードが分割されて書き込まれている場合には、該要求コードで表されるデータ量のデータブロックを連続して中継することが可能であるか否かを判定する判定機能と、前記要求コードで表されるデータ量のデータブロックを連続して中継することが可能であると前記判定機能によって判定された場合に、その旨を示す通知を前記送信装置へ送信する送信機能と、前記受信機能によって受信されたデータブロックをその宛先の受信装置へ中継する中継機能とを実現させるプログラムと、コンピュータ装置読み取り可能な記録媒体であって、当該プログラムを記録した記録媒体とを提供する。
【0014】
このような、中継装置、プログラムおよび記録媒体によれば、上記送信装置から送信されたデータブロックに分割して書き込まれている要求コードで表されるデータ量のデータブロックを中継可能であると判定した場合に、その旨が前記送信装置へ通知される。
【0015】
【発明の実施の形態】
以下、図面を参照しつつ本発明の実施形態について説明する。
【0016】
[A:構成]
(1:システム構成)
図1は、本発明の実施形態に係る通信システムの全体構成の一例を示す図である。受信装置10は、無線通信機能を備えたコンピュータ装置であり、自装置を収容している無線アクセスポイント装置との間で、TCPにしたがった通信を無線で行うことができる。送信装置20は、インターネットなどの通信網30に接続されたコンピュータ装置であり、TCPにしたがってデータを送信する機能を備えている。
【0017】
送信装置20は、受信装置10へデータを送信する際に複数のセグメントに分割し、基本的に、スロースタートアルゴリズムにしたがって送信する。具体的には、送信装置20は、輻輳ウィンドウサイズを、2個、4個、8個と順次増加させてセグメントの送信を行う。加えて、送信装置20は、連続して送信するセグメントに、以下に述べる要求コードを分割して書き込んで送信する。この要求コードは、受信装置10へ送信するべきセグメントのうち、既に送信済みのセグメントと正に送信しようとしているセグメントとを除いたセグメント(以下、「残りのセグメント」)を連続して中継することを後述する中継装置40へ要求することを表すデータである。そして、送信装置20は、このようにして送信した要求コードで表される要求を許容する旨の通知を中継装置40から受信すると、輻輳ウィンドウサイズを上記残りのセグメントのデータ量で書換え、上記残りのセグメントを連続して送信するようにしている。
【0018】
より詳細に説明すると、送信装置20は、図2に示す要求コードテーブルを格納しており、この要求コードテーブルの格納内容と、上記残りのセグメントのデータ量とに基づいて、中継装置40へ送信するべき要求コードを特定する。そして、送信装置20は、特定した要求コードを所定のデータサイズ(本実施形態では、1ビット)に分割し、受信装置10へ送信するセグメントの所定領域へ書き込んで送信する。なお、本実施形態では、上記所定領域としてCEビットに該当する領域を用いる場合について説明する。ここで、CEビットとは、ECN(Explicit Congesition Notification)にしたがって輻輳制御を行う場合に用いられるビットである。しかしながら、係る所定領域はCEビットに該当する領域に限定されるものではなく、例えば、予備領域であっても良い。予備領域とは、TCPの仕様において用途が特に定められていない領域であり、ユーザがその用途を自由に定義し使用することができる。このような予備領域やCEビットに書き込まれているデータを解釈することができない受信装置や中継装置は、それらの領域に書き込まれているデータを無視するので、上記要求コードを上記予備領域やCEビットに該当する領域に書き込んだとしても問題は発生しない。また、送信装置20は、上記要求コードを所定のデータサイズに分割して上記所定領域へ書き込むため、上記要求コードのデータ長が上記所定領域の領域サイズよりも大きい場合であっても、上記要求コードを中継装置40へ送信することができる。
【0019】
図2は、要求コードテーブルの一例を示す図である。図2に例示されている要求コードテーブルには、“01”、“10”および“11”の3種類の要求コードが格納されており、各要求コードには、その要求コードを送信することによって、中継装置40へ通知するべき残りのセグメントのデータ量が対応付けられている。すなわち、図2に示す要求コードテーブルの格納内容は、以下に述べる3つのことを例示している。第1に、上記残りのセグメントのデータ量が10Kバイト(1Kバイト=1024バイト)未満である場合には、要求コード“01”を送信するべきことである。第2に、上記残りのセグメントのデータ量が10Kバイト以上1Mバイト未満(1M=1024Kバイト)である場合には、要求コード“10”を送信するべきことである。そして、第3に、上記残りのセグメントのデータ量が1Mバイト以上である場合には、要求コード“11”を送信するべきことである。
【0020】
中継装置40は、通信網30に接続された無線アクセスポイント装置であり、自装置の形成する無線エリアに在圏している受信装置10と、上記送信装置20との間の通信を中継する機能を備えている。より詳細に説明すると、中継装置40は、受信装置10との間に無線通信コネクションを確立するとともに、送信装置20との間に通信コネクションを確立する。この中継装置40は、所定の記憶容量を有するキューを備えており、上記通信コネクションを介して送信装置20から送信されてくるセグメントをこのキューへ書き込み、このキューに書き込まれたセグメントを上記無線通信コネクションを介して受信装置10へ順次送信する。また、中継装置40は、受信装置10から送信されてくる確認応答を上記無線通信コネクションを介して受信し、受信した確認応答を上記通信コネクションを介して送信装置20へ送信する。このようにして、中継装置40は、受信装置10と送信装置20との間のデータ通信を中継している。
【0021】
加えて、中継装置40は、送信装置20から送信されてくるセグメントに分割して書き込まれている要求コードを取得し、その要求コードで表される要求を許容可能であるか否か判定し、その判定結果を送信装置20へ通知する機能を備えている。より詳細に説明すると、中継装置40も図2に示す要求コードテーブルを格納しており、この要求コードテーブルの格納内容と送信装置20から送信されてきたセグメントに分割して書き込まれている要求コードとに基づいて、その要求コードが表している残りのセグメントのデータ量を特定する。そして、中継装置40は、例えば、上述したキューの空き容量に基づいて、その要求コードで表されるデータ量のセグメントを連続して受信し中継可能であるか否かを判定し、その判定結果を送信装置20へ通知する。
【0022】
このように、図1に示す通信システムにおいては、上記残りのセグメントのデータ量を中継装置40へ通知し、そのデータ量のセグメントを連続して中継可能であることを中継装置40から通知された場合に、残りのセグメントを連続して送信装置20に送信させている。これにより、中継装置40での輻輳の発生を回避しつつ、効率的にデータ通信を行うことが可能になっている。
【0023】
(2:送信装置20の構成)
まず、送信装置20の構成について図3を参照しつつ説明する。図3は送信装置20の構成例を示す図であり、この図に示されているように、送信装置20は、制御部100と、通信インターフェイス(以下、「IF」)部110aと、記憶部120と、これら各構成要素間のデータ授受を仲介するバス130と、を有している。
【0024】
制御部100は、例えばCPU(Central Processing Unit)であり、記憶部120に格納されているソフトウェアを実行することにより、送信装置20の各部を制御するものである。通信IF部110aは、通信網30に接続されており、通信網30を介して送信されてくるデータを受信し、受信したデータを制御部100へ引渡すとともに、制御部100から引渡されたデータを通信網30へ送出する機能を備えている。
【0025】
記憶部120は、図3に示されるように、揮発性記憶部120aと不揮発性記憶部120bとを含んでいる。揮発性記憶部120aは、例えばRAM(Random Access Memory)であり、ソフトウェアを実行中の制御部100によりワークエリアとして利用される。
【0026】
不揮発性記憶部120bは、例えばハードディスクであり、受信装置10からの要求に応じてその受信装置10へ送信するデータと、前述した要求コードテーブル(図2参照)と、各種ソフトウェアとを格納している。不揮発性記憶部120bに格納されているソフトウェアの一例としては、オペレーティングシステム(Operating System:以下、「OS」)を制御部100に実現させるためのOSソフトウェアや、上記データを受信装置10へ送信する動作を制御部100に実行させるための送信ソフトウェアなどが挙げられる。以下では、これらソフトウェアを実行することにより制御部100に付与される機能について説明する。
【0027】
送信装置20の電源(図示省略)が投入されると、制御部100は、まず、OSソフトウェアを不揮発性記憶部120bから読み出し実行する。OSソフトウェアにしたがって作動している制御部100には、送信装置20の各部を制御する機能、他のソフトウェアを不揮発性記憶部120bから読み出し実行する機能が付与される。そして、OSソフトウェアの実行を完了し、OSを実現している状態の制御部100は、受信装置10から上記データの送信を要求されると、上記送信ソフトウェアを不揮発性記憶部120bから読み出し実行する。
【0028】
図4は、上記送信ソフトウェアにしたがって作動している制御部100が実行するセグメント送信動作の流れを示すフローチャートである。図4に示されているように、上記送信ソフトウェアにしたがって作動している制御部100には、以下に述べる5つの機能が付与される。
【0029】
第1に、上記データを複数のセグメントに分割し、これら複数のセグメントのうち連続して送信するべきセグメントをスロースタートアルゴリズムにしたがって選択する選択機能である。つまり、制御部100は、スロースタートアルゴリズムにしたがって、輻輳ウィンドウサイズを2、4、8と順次増加させて行くとともに、上記複数のセグメントのうちで、若いシーケンス番号を内包しているものから順に、その輻輳ウィンドウサイズで表される個数のセグメントを選択する。
【0030】
第2に、上記複数のセグメントのうち、残りのセグメントのデータ量を算出する算出機能である。これら複数のセグメントの各々は、同一のデータ長を有しているため、そのデータ長に残りのセグメントの個数を乗算することにより、残りのセグメントのデータ量を算出することができる。
【0031】
第3に、上記算出機能により算出したデータ量と要求コードテーブルの格納内容とに基づいて、中継装置40へ送信するべき要求コードを特定する特定機能である。
【0032】
第4に、上記特定機能により特定された要求コードを分割して上記選択機能により選択されたセグメントの所定領域へ書き込み、そのセグメントを通信IF部110aを介して中継装置40へ送信する第1の送信機能である。より詳細に説明すると、制御部100は、上記要求コードを1ビット単位で分割し、若いセグメント番号を有しているセグメントほど上記要求コードの先頭に近い部分を書き込み送信する。
【0033】
そして、第5に、上記要求コードで表される数のセグメントを連続して中継することを許容する旨の通知を中継装置40から受信した場合に、上記残りのセグメントを連続して送信する第2の送信機能である。
【0034】
以上に説明したように、送信装置20のハードウェア構成は一般的なコンピュータ装置のハードウェア構成と同一であり、記憶部に格納されている各種ソフトウェアを制御部100に実行させることにより、本発明に係る送信装置に特有な機能が付与される。
【0035】
(3:中継装置40の構成)
次いで、中継装置40の構成について図5を参照しつつ説明する。中継装置40の構成が、上述した送信装置20の構成と異なっている点は、以下に述べる3つの点のみである。第1に、受信装置10と無線通信するための無線通信IF部110bを有している点である。第2に、揮発性記憶部120aが前述したキューとして用いられる点である。そして、第3に、上述した送信ソフトウェアに替えて本発明に係る中継装置に特徴的な機能を制御部100に実現させるための中継ソフトウェアが不揮発性記憶部120bに格納されている点である。以下、不揮発性記憶部120bに格納されているソフトウェアを実行することにより、中継装置40の制御部100に付与される機能について説明する。
【0036】
中継装置40の電源(図示省略)が投入されると、制御部100は、まず、OSソフトウェアを不揮発性記憶部120bから読み出し実行する。OSソフトウェアにしたがって作動している制御部100には、中継装置40の各部を制御する機能、他のソフトウェアを不揮発性記憶部120bから読み出し実行する機能が付与される。そして、OSソフトウェアの実行を完了し、OSを実現している状態の制御部100は、即座に、上記中継ソフトウェアを不揮発性記憶部120bから読み出し実行する。
【0037】
図6は、上記中継ソフトウェアにしたがって作動している制御部100が実行するセグメント中継動作の流れを示すフローチャートである。図6に示されているように、上記中継ソフトウェアにしたがって作動している制御部100には、上述したキューを用いて送信装置20から送信されてくるセグメントを受信装置10へ中継したり、受信装置10から送信されてくる確認応答を送信装置20へ中継するなど一般的な中継装置が有する機能の他に、本発明に係る中継装置に特徴的な2つの機能が付与される。
【0038】
第1に、送信装置20から受信したセグメントに分割されて書き込まれている要求コードを取得し、取得した要求コードと上記要求コードテーブルの格納内容とに基づいて、その要求コードの表すデータ量を特定する機能である。具体的には、制御部100は、受信したセグメントの所定領域に書き込まれているデータをそのセグメントに内包されているシーケンス番号の順に連結して上記要求コードを取得し、この要求コードと上記要求コードテーブルの格納内容とに基づいて、その要求コードの表すデータ量を特定する。
【0039】
第2に、上記キューの空き容量を検出し、その検出結果と上記特定機能により特定したデータ量とに基づいて、そのデータ量で表される数のセグメントを連続して中継可能であるか否かを判定し、その判定結果を送信装置20へ通知する機能である。
【0040】
以上に説明したように、中継装置40のハードウェア構成も一般的なコンピュータ装置のハードウェア構成と同一であり、記憶部に格納されている各種ソフトウェアを制御部に実行させることにより、本発明に係る中継装置に特有な機能が付与される。
【0041】
[B:動作]
次いで、図1に示される通信システムに含まれている送信装置20と中継装置40とが行う動作のうち、本発明に係る送信装置および中継装置の特徴を顕著に示す動作についてのみ、図面を参照しつつ説明する。なお、以下に説明する動作例の前提として、送信装置20は、不揮発性記憶部120bに格納しているデータの送信を要求されると、このデータを500バイトのデータ長を有する15個のセグメントに分割して送信するものとする。そして、これら15個のセグメントの各々には、内包している部分データに応じて500刻みのシーケンス番号が書き込まれているものとする。また、以下では、中継装置40に設けられているキューの記憶容量は2Mバイトであるものとし、本動作例の開始時点ではその100%が空いているものとする。
【0042】
まず、受信装置10からデータの送信を要求された場合に、送信装置20の制御部100が行う動作について図4を参照しつつ説明する。図4に示されているように、制御部100は、まず、受信装置10へ宛てて送信するべき15個のセグメントのうち、連続して送信するセグメントを選択する(ステップSA1)。具体的には、制御部100は、内包しているシーケンス番号が若い順に、輻輳ウィンドウサイズで示される個数のセグメントを選択する。前述したように、本動作の開始時点では、輻輳ウィンドウサイズは2であり、各セグメントには500刻みのシーケンス番号が書き込まれているから、制御部100は、シーケンス番号が500であるセグメントとシーケンス番号が1000であるセグメントとを上記ステップSA1にて選択する。
【0043】
次いで、制御部100は、受信装置10へ送信するべき15個のセグメントのうち、送信済みのセグメントと、ステップSA1にて選択されたセグメントとを除いた残りのセグメントのデータ量を算出する(ステップSA2)。本動作例では、受信装置10へ送信するべき15個のセグメントは何れも未送信であり、2個のセグメントが上記ステップSA1にて選択されているので、制御部100は、残りのセグメントのデータ量を6500バイト(13×500バイト)と算出する。
【0044】
次いで、制御部100は、ステップSA2にて算出したデータ量と要求コードテーブル(図2参照)の格納内容とに基づいて、中継装置40へ送信すべき要求コードを特定する(ステップSA3)。本動作例では、ステップSA2にて算出されたデータ量は6500バイトであり、図2に示す要求コードテーブルの格納内容は、残りのセグメントのデータ量が10Kバイト未満である場合には、要求コード“01”を送信するべきことを表している。よって、制御部100は、中継装置40へ送信するべき要求コードとして“01”を特定する。
【0045】
そして、制御部100は、ステップSA3にて特定した要求コードをステップSA1にて特定した2つのセグメントに分割して書き込み、これらセグメントを通信IF部110aを介して送信する(ステップSA4)。具体的には、制御部100は、シーケンス番号が500であるセグメントの所定領域には“0”を書き込み、シーケンス番号が1000であるセグメントの所定領域には“1”を書き込んで送信する。以降、制御部100は、ステップSA4にて送信したセグメントに対する確認応答が送信されてくることを待ち受けるとともに、これらセグメントに分割して書き込んだ要求コードで表される要求を許容するか否かを示す通知が中継装置40から送信されてくることを待ち受ける。
【0046】
このようにして送信装置20から送信された2つのセグメントは、通信網30を介して中継装置40へ到達する。次いで、このようなセグメントを受信した場合に中継装置40の制御部100が行う動作について図6を参照しつつ説明する。
【0047】
図6に示されているように、中継装置40の制御部100は、送信装置20から送信されてきたセグメントを通信IF部110aを介して受信すると、これらセグメントを揮発性記憶部120aに設けられているキューへ書き込む(ステップSB1)。
【0048】
次いで、制御部100は、ステップSB1にて受信したセグメントに分割されて書き込まれている要求コードを取得し、取得した要求コードと要求コードテーブル(図2参照)の格納内容とに基づいて、残りのセグメントのデータ量を特定する(ステップSB2)。本動作例では、ステップSB1にて受信されたセグメントに書き込まれている要求コードは“01”であるから、制御部100は、残りのセグメントのデータ量が10Kバイト未満であることを特定する。
【0049】
次いで、制御部100は、上記キューの空き容量を検出し、ステップSB2にて特定したデータ量のセグメントを上記キューに格納可能であるか否かを判定し、その判定結果を表す通知を通信IF部110aを介して送信装置20へ送信する(ステップSB3)。本動作例では、上記キューの記憶容量は2Mバイトであり、本動作の開始時点では、上記記憶容量の100%が空いているから、制御部100は、上記残りのセグメントを格納可能であると判定し、その判定結果を通知する。
【0050】
そして、制御部100は、ステップSB1にてキューに書き込んだセグメントを無線通信IF部110bを介して受信装置10へ送信し(ステップSB4)。以降、TCPにしたがってセグメントを中継する一般的な中継装置と同一の動作を行う。具体的には、受信装置10から送信されてくる確認応答を無線通信IF部110bを介して受信し、受信した確認応答を通信IF部110aを介して送信装置20へ送信する。なお、制御部100にステップSB4を先に実行させた後に、上記ステップSB3を制御部100に実行させるとしても良いことは勿論である。
【0051】
このようにして中継装置40から送信された通知は、通信網30を介して送信装置20へ到達する。以下、図4に戻って、この通知を受信した場合に送信装置20の制御部100が行う動作について説明する。
【0052】
図4に示されているように、送信装置20の制御部100は、上記通知を受信(ステップSA5)すると、その通知の内容に基づいて輻輳ウィンドウサイズを書き換える(ステップSA6)。具体的には、制御部100は、ステップSA5にて受信した通知の内容が、前述したステップSA4にて送信した要求コードで表される要求を許容する旨の内容である場合には、輻輳ウィンドウサイズを前述したステップSA2にて算出したデータ量で更新する。逆に、ステップSA5にて受信した通知の内容が、前述したステップSA4にて送信した要求コードで表される要求を許容しない旨の内容である場合には、制御部100は、スロースタートアルゴリズムにしたがって輻輳ウィンドウサイズを更新する。本動作例では、中継装置40から送信されてくる通知は、残りのセグメントを連続して中継するすることを許容する旨の通知であるから、制御部100は、ステップSA2にて算出したデータ量で輻輳ウィンドウサイズを更新する。
【0053】
以降、制御部100は、ステップSA4にて送信したセグメントに対する確認応答を受信(ステップSA7)すると、受信装置10へ送信するべきセグメントのうち、残りのセグメントがあるか否かを判定し(ステップSA8)、その判定結果が“No”になるまで、ステップSA1以降の処理を繰り返し実行する。これにより、残りの13個のセグメントが連続して送信装置20から受信装置10へ送信され、受信装置10へ送信するべきセグメントの送信が完了する。
【0054】
以上に説明したように、本実施形態に係る通信システムにおいては、送信装置20から受信装置10へ送信されるべき15個のセグメントのうち、まず、2個のセグメントが連続して送信され、その後に、残りの13個のセグメントが連続して送信される。つまり、本実施形態に係る通信システムにおいては、2回のセグメント送信動作で、上記15個のセグメントの送信が完了する。これに対して、従来のスロースタートアルゴリズムにしたがって上記15個のセグメントを送信する場合には、2個、4個、8個および1個のセグメントを順次送信することになり、4回のセグメント送信動作が行われる。このように、本実施形態に係る通信システムにおいては、従来のスロースタートアルゴリズムにしたがってセグメントの送信を行う場合に比較して、セグメントの送信効率を向上させることができるといった効果を奏する。
【0055】
[C:変形例]
以上、本発明の実施形態について説明したが、本発明は係る実施形態に限定されるものではなく、例えば、以下のように変形することが考えられる。
【0056】
(1:変形例1)
上述した実施形態では、中継装置40が通信網30に接続されている無線アクセスポイント装置であり、自装置の形成する無線エリアに在圏している受信装置10と通信網30に接続された送信装置20との間の通信を中継する場合について説明した。しかしながら、本発明に係る中継装置は、係る無線アクセスポイント装置に限定されるものではない。例えば、送信装置から無線で送信されてくるセグメントを受信し、このセグメントを無線で受信装置へ送出する中継装置であっても良く、また、第1の通信網と第2の通信網とに有線接続され、第1の通信網を介して送信されてくるセグメントを第2の通信網へ送出する中継装置であっても良い。要は、送信装置と受信装置との間の通信を中継する中継装置であればよく、送信装置或いは受信装置との通信の態様が無線通信であるか有線通信であるかは問わない。
【0057】
(2:変形例2)
上述した実施形態では、要求コードを1ビット単位で分割し、若いシーケンス番号を内包しているセグメントほど、そのECNビット格納領域に分割された要求コードの先頭に近い部分が書き込まれるようにする場合について説明した。これは、セグメントのECNビット格納領域に書き込まれているデータをそのセグメントに内包されているシーケンス番号の順に連結することによって、送信装置20から送信された要求コードを中継装置40に復元させるためである。しかしながら、送信装置20から分割して送信された要求コードを復元することなく、その要求コードの表すデータ量を中継装置40に検出させることが可能である場合には、各セグメントに内包されているシーケンス番号の順とは無関係に分割された要求コードを各セグメントの所定領域に書き込むとしても良い。その一例としては、要求コードを構成するビットのうち、1がセットされているビットの個数により残りのセグメントのデータ量を表す場合が挙げられる。例えば、要求コードを3ビットで構成し、1がセットされているビットの個数が1つである場合には、残りのセグメントのデータ量が10Kバイト未満であることを表すとする。そして、1がセットされているビットの数が2である場合には、残りのセグメントのデータ量が10Kバイト以上1Mバイト未満であることを表すとし、1がセットされているビットの数が3である場合には、残りのセグメントのデータ量が1Mバイト以上であることを表すとする。このような要求コードであれば、各セグメントに内包されているシーケンス番号の順とは無関係に、そのセグメントの所定領域にその要求コードを分割して書き込んだとしても、各セグメントの所定領域に書き込まれているビットのうち、1がセットされているビットの数を集計させることによって、残りのセグメントのデータ量を中継装置に検出させることが可能になる。
【0058】
(3:変形例3)
上述した実施形態では、送信装置、中継装置および受信装置がTCPにしたがって通信を行う場合について説明したが、本発明に係る送信装置と中継装置との間で行われる通信が準拠すべき通信プロトコルは、TCPに限定されるものではないことは言うまでもない。また、上述した実施形態では、中継装置40は、送信装置20と受信装置10との間のデータ通信の中継とは独立に、送信装置20からの要求を許容可能であるか否かの判定結果を送信装置20に通知する場合について説明した。しかしながら、両者を一括して行うことも可能である。具体的には、送信装置20から送信されたセグメントに対して受信装置10から送信されてくる確認応答を中継する際に、その確認応答に上記判定結果を表すデータを中継装置40が書き込むようにすることにより実現される。また、受信装置10が、受信したセグメントの所定領域に書き込まれているデータをそのまま書き込んだ確認応答を返信する機能を有している場合には、送信装置20から送信されたセグメントを中継装置40に中継させる際に、上記判定結果を表すデータをそのセグメントの上記所定領域に書き込んで中継させることによっても実現される。
【0059】
(4:変形例4)
上述した実施形態では、キューの空き容量に基づいて、送信装置から通知された要求コードで表されるデータ量のセグメントを中継可能であるか否かを中継装置に判定させる場合について説明した。しかしながら、このような判定を中継装置に行わせるための指標となるデータは、係るキューの空き容量に限定されるものではない。例えば、図1に示す通信システムにおいて、中継装置40と受信装置10との間で確立される無線通信コネクションを介して行われる無線通信の通信品質を表すデータ(例えば、データ誤り率や電界強度など)や、その無線通信コネクションにおける通信帯域を表すデータなどであっても良いことは勿論である。一般に無線通信の通信品質やその通信帯域は、有線通信の通信品質や通信帯域などと異なり、時々刻々変化し得るものである。このような無線通信を行う中継装置に本発明を適用することにより、その通信品質や通信帯域が時々刻々変化する場合であっても、効率的にデータ通信を行うことが可能になるといった効果を奏する。
【0060】
(5:変形例5)
上述した実施形態では、残りのセグメントのデータ量を表す要求コードを送信装置から中継装置へ送信し、その要求コードで表されるデータ量のセグメントを受信可能であるか否かを中継装置に判定させる場合について説明した。しかしながら、上記データ量に加え、上記セグメントに内包されているデータの種別を表すような要求コードを送信装置に送信させ、その要求コードの表す種別とデータ量に基づいて、残りのセグメントを連続して送信することを中継装置に許容させるようにしても良い。このようにすると、同一のデータ量であっても、例えば、リアルタイム性を要求されるデータ(例えば、ストリーミングデータ)については、残りのセグメントを連続して送信することを許容し、リアルタイム性を要求されないデータ(例えば、メールデータなど)については、同一のデータ量であっても、残りのセグメントを連続して送信することを許容しないようにすることができるといった効果を奏する。
【0061】
(6:変形例6)
上述した実施形態では、固定長の要求コードを用いる場合について説明したが、例えば、ハフマン符号のように可変長の要求コードを用いるとしても勿論良い。具体的には、受信装置へ送信するべき残りのセグメントのデータ量が少ないほど、短いデータ長を有する要求コードを割り当てるとしても良。このようにすると、残りのセグメントのデータ量が少ないほど、セグメントの送信を開始してから早い時点で、そのデータ量を表す要求コードが通知され、残りのセグメントの送信を効率的に完了することができるといった効果を奏する。また、送信装置から受信装置へ送信されるべきセグメントの数は、そのセグメントに内包されているデータ毎に異なり一定ではないが、一般には、あるセグメント数においてピークとなる分布(例えば、正規分布)にしたがう。そこで、その分布における発生頻度が高いセグメント数の場合ほど、データ長が短い要求コードを割り当てるとしても良い。このようにすると、上記送信装置において要求コードをデータブロックへ書き込む際の処理負荷を低減させたり、上記送信装置において要求コードを読み取る際の処理負荷を低減させることができるといった効果を奏する。
【0062】
(7:変形例7)
上述した実施形態では、送信装置20は、中継装置40へ通知するべき要求コードを残りセグメントのデータ量と図2に示す要求コードテーブルの格納内容とに基づいて特定する場合について説明した。しかしながら、係る要求コードテーブルを用いなくとも、通知するべき要求コードを送信装置20に特定させることは可能である。例えば、以下に述べるような処理を送信装置20の制御部100に実行させるプログラムを用いることにより実現される。すなわち、残りのセグメントのデータ量が10Kバイト未満である場合には、要求コードに“01”を設定させる。残りのセグメントのデータ量が10Kバイト以上1Mバイト未満である場合には、要求コードに“10”を設定させる。そして、残りのセグメントのデータ量が1Mバイト以上である場合には、要求コードに“11”を設定させる。
【0063】
(8:変形例8)
上述した実施形態では、前述した送信ソフトウェアを送信装置20に予め記憶させておくとともに、前述した中継ソフトウェアを中継装置40に予め記憶させておく場合について説明した。しかしながら、これらのソフトウェアを、例えばCD−ROM(Compact Disk−Read Only Memory)などのコンピュータ装置読み取り可能な記録媒体に書き込んでおき、このような記録媒体を用いて上記ソフトウェアを一般的なコンピュータ装置にインストールするとしても勿論良い。このようにすると、一般的なコンピュータ装置に本発明に係る送信装置や中継装置と同一の機能を付与することが可能になるといった効果を奏する。
【0064】
【発明の効果】
本発明によれば、中継装置における輻輳の発生を回避しつつ、データ通信を効率的に行うことが可能になるといった効果を奏する。
【図面の簡単な説明】
【図1】 本発明の実施形態に係る通信システムの全体構成の一例を示す図である。
【図2】 同送信装置20および中継装置40に記憶されている要求コードテーブルの一例を示す図である。
【図3】 送信装置20の構成例を示す図である。
【図4】 同送信装置20の制御部100が実行するセグメント送信動作の流れを示すフローチャートである。
【図5】 同中継装置40の構成例を示す図である。
【図6】 同中継装置40の制御部100が実行するセグメント中継動作の流れを示すフローチャートである。
【図7】 一般的な通信システムの構成を示す図である。
【符号の説明】
10、210…受信装置、20、220…送信装置、30、230A、230B…通信網、40、240…中継装置、100…制御部、110a…通信IF部、110b…無線通信IF部、120…記憶部、120a…揮発性記憶部、120b…不揮発性記憶部、130…バス。

Claims (8)

  1. 中継装置を介して受信装置へ送信するべき複数のデータブロックの先頭から、そのデータブロックに付与したシーケンス番号の順に予め決められた数のデータブロックを選択する選択手段と、
    前記複数のデータブロックのうち、前記選択手段によって選択されたデータブロックを除いた残りのデータブロックのデータ量を算出する算出手段と、
    前記算出手段によって算出されたデータ量を表す要求コードを複数部分に分割し、前記選択手段によって選択されたデータブロックの各々の所定領域に対して、前記分割された要求コードの各々を書き込んで前記中継装置へ送信する第1の送信手段と、
    前記第1の送信手段によって送信されたデータブロックに分割されて書き込まれている要求コードで表されるデータ量のデータブロックを連続して送信することを許容する旨の通知を前記中継装置から受信した場合に、前記残りのデータブロックを連続して前記中継装置へ送信する第2の送信手段と
    を有する送信装置。
  2. 前記第1の送信手段は、前記選択手段によって選択されたデータブロックの各々の所定領域へ前記分割された要求コードを書き込んで送信する際に、該データブロックに付与されたシーケンス番号にしたがって前記分割された要求コードをその先頭部分から順番に書き込んで前記中継装置へ送信する
    ことを特徴とする請求項1に記載の送信装置。
  3. 前記要求コードは、前記残りのデータブロックのデータ量を表すとともに、前記残りのデータブロックに内包されているデータの種別を表している
    ことを特徴とする請求項1に記載の送信装置。
  4. 前記要求コードは、前記残りのデータブロックのデータ量に応じて異なるデータ長を有する
    ことを特徴とする請求項1に記載の送信装置。
  5. 前記要求コードは、前記残りのデータブロックのデータ量が少ないほど短いデータ長を有する
    ことを特徴とする請求項4に記載の送信装置。
  6. データブロックに付与したシーケンス番号にしたがって当該データブロックを決められた数づつ連続して送信する送信装置から連続して送信されてくるデータブロックを受信する受信手段と、
    前記受信手段によって受信されたデータブロックに、該送信装置が送信するべき残りのデータブロックのデータ量を表す要求コードが分割されて書き込まれている場合には、該要求コードで表されるデータ量のデータブロックを連続して中継することが可能であるか否かを判定する判定手段と、
    前記要求コードで表されるデータ量のデータブロックを連続して中継することが可能であると前記判定手段によって判定された場合に、その旨を示す通知を前記送信装置へ送信する送信手段と、
    前記受信手段によって受信されたデータブロックをその宛先の受信装置へ中継する中継手段と
    を有する中継装置。
  7. コンピュータ装置に、
    中継装置を介して受信装置へ送信するべき複数のデータブロックの先頭から、そのデータブロックに付与したシーケンス番号の順に予め決められた数のデータブロックを選択する選択機能と、
    前記複数のデータブロックのうち、前記選択機能によって選択されたデータブロックを除いた残りのデータブロックのデータ量を算出する算出機能と、
    前記算出機能によって算出されたデータ量を表す要求コードを複数部分に分割し、前記選択機能によって選択されたデータブロックの各々の所定領域に対して、前記分割された要求コードの各々を書き込んで前記中継装置へ送信する第1の送信機能と、
    前記第1の送信機能によって送信されたデータブロックに分割されて書き込まれている要求コードで表されるデータ量のデータブロックを連続して送信することを許容する旨の通知を前記中継装置から受信した場合に、前記残りのデータブロックを連続して前記中継装置へ送信する第2の送信機能と
    を実現させるプログラム。
  8. コンピュータ装置に、
    データブロックに付与したシーケンス番号にしたがって当該データブロックを決められた数づつ連続して送信する送信装置から連続して送信されてくるデータブロックを受信する受信機能と、
    前記受信機能によって受信されたデータブロックに、該送信装置が送信するべき残りのデータブロックのデータ量を表す要求コードが分割されて書き込まれている場合には、該要求コードで表されるデータ量のデータブロックを連続して中継することが可能であるか否かを判定する判定機能と、
    前記要求コードで表されるデータ量のデータブロックを連続して中継することが可能であると前記判定機能によって判定された場合に、その旨を示す通知を前記送信装置へ送信する送信機能と、
    前記受信機能によって受信されたデータブロックをその宛先の受信装置へ中継する中継機能と
    を実現させるプログラム。
JP2003207600A 2003-08-14 2003-08-14 送信装置、中継装置およびプログラム Expired - Fee Related JP4235506B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2003207600A JP4235506B2 (ja) 2003-08-14 2003-08-14 送信装置、中継装置およびプログラム
CNB200410055864XA CN1322720C (zh) 2003-08-14 2004-08-04 通信控制方法和系统
US10/915,449 US7764613B2 (en) 2003-08-14 2004-08-10 Communication control method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003207600A JP4235506B2 (ja) 2003-08-14 2003-08-14 送信装置、中継装置およびプログラム

Publications (3)

Publication Number Publication Date
JP2005064597A JP2005064597A (ja) 2005-03-10
JP2005064597A5 JP2005064597A5 (ja) 2006-09-14
JP4235506B2 true JP4235506B2 (ja) 2009-03-11

Family

ID=34364007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003207600A Expired - Fee Related JP4235506B2 (ja) 2003-08-14 2003-08-14 送信装置、中継装置およびプログラム

Country Status (3)

Country Link
US (1) US7764613B2 (ja)
JP (1) JP4235506B2 (ja)
CN (1) CN1322720C (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1548972A3 (en) * 2003-12-26 2006-12-27 NTT DoCoMo, Inc. Transmitter device and relay device for performing data transmission control
JP2006129439A (ja) * 2004-09-28 2006-05-18 Kyocera Corp 通信システム、基地局装置、サーバ装置、移動局装置、及び送信データ量決定方法
US8422667B2 (en) 2005-01-27 2013-04-16 The Chamberlain Group, Inc. Method and apparatus to facilitate transmission of an encrypted rolling code
USRE48433E1 (en) 2005-01-27 2021-02-09 The Chamberlain Group, Inc. Method and apparatus to facilitate transmission of an encrypted rolling code
US9148409B2 (en) 2005-06-30 2015-09-29 The Chamberlain Group, Inc. Method and apparatus to facilitate message transmission and reception using different transmission characteristics
CA2624671C (en) * 2005-09-30 2012-01-03 Research In Motion Limited Methods and apparatus for dynamically adjusting a data packet window size for data packet transmission in a wireless communication network
EP1958394A2 (en) * 2005-12-02 2008-08-20 Koninklijke Philips Electronics N.V. Wireless systems and methods including cooperative communication medium access control
JP5146725B2 (ja) * 2007-09-19 2013-02-20 日本電気株式会社 通信装置および通信方法
US8203979B2 (en) * 2008-01-28 2012-06-19 The Hong Kong University Of Science And Technology Resource allocation for OFDMA systems with half-duplex relay(s) and corresponding transmission protocol
US8159939B1 (en) * 2009-05-08 2012-04-17 Adobe Systems Incorporated Dynamic network congestion control
US8605584B2 (en) * 2009-07-02 2013-12-10 Qualcomm Incorporated Transmission of control information across multiple packets
WO2011034468A1 (en) * 2009-09-16 2011-03-24 St.Jude Medical Ab Implantable medical device power saving communication
US9553942B2 (en) * 2011-07-01 2017-01-24 Lenovo (Singapore) Pte. Ltd. Method and apparatus for a keep-alive push agent
US10075498B2 (en) * 2012-12-21 2018-09-11 Vmware, Inc. Systems and methods for transmitting data in real time
KR101746799B1 (ko) * 2015-11-04 2017-06-14 주식회사 쏠리드 분산 안테나 시스템
JP2018064187A (ja) * 2016-10-12 2018-04-19 キヤノン株式会社 通信装置、通信方法およびプログラム
BR102018068874A8 (pt) * 2017-09-19 2019-08-13 Hunter Douglas métodos e aparelhos para controle de coberturas arquitetônicas
US10652743B2 (en) 2017-12-21 2020-05-12 The Chamberlain Group, Inc. Security system for a moveable barrier operator
US11074773B1 (en) 2018-06-27 2021-07-27 The Chamberlain Group, Inc. Network-based control of movable barrier operators for autonomous vehicles
WO2020028502A1 (en) 2018-08-01 2020-02-06 The Chamberlain Group, Inc. Movable barrier operator and transmitter pairing over a network
US11201828B2 (en) * 2018-10-08 2021-12-14 EMC IP Holding Company LLC Stream allocation using stream credits
US11005775B2 (en) 2018-10-08 2021-05-11 EMC IP Holding Company LLC Resource allocation using distributed segment processing credits
US10997810B2 (en) 2019-05-16 2021-05-04 The Chamberlain Group, Inc. In-vehicle transmitter training

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0294943A (ja) 1988-09-30 1990-04-05 Nippon Telegr & Teleph Corp <Ntt> データ転送方式
US6160808A (en) * 1997-12-18 2000-12-12 3Com Corporation Technique for transmitting incoming multi-link point-to-point (PPP) packet traffic over multiple outgoing links in a multi-link bundle
US6438101B1 (en) * 1997-12-23 2002-08-20 At&T Corp. Method and apparatus for managing congestion within an internetwork using window adaptation
JP2000078675A (ja) * 1998-09-02 2000-03-14 Fujitsu Ltd Dma通信及びsd/scn信号による交換機内部装置制御システム
US7142507B1 (en) * 1999-02-25 2006-11-28 Nippon Telegraph And Telephone Corporation Traffic monitoring equipment and system and method for datagram transfer
US6687227B1 (en) * 2000-03-13 2004-02-03 Nortel Networks Limited Systems and methods for requesting packets for transmission over a wirless channel having a dynamically changing capacity due to a highly varibale delay
JP2001298485A (ja) * 2000-04-14 2001-10-26 Fujitsu Ltd トランスポート層におけるデータ転送方法
JP4267803B2 (ja) * 2000-06-08 2009-05-27 株式会社沖コムテック データ伝送装置およびデータ送出制御方法
WO2003021447A1 (en) * 2001-08-31 2003-03-13 Adaptec, Inc. Methods and apparatus for partially reordering data packets
US6744730B2 (en) * 2001-11-30 2004-06-01 Nokia Corporation Throughput enhancement after interruption
CN1172458C (zh) * 2002-11-08 2004-10-20 清华大学 Tp-s卫星信道传输方法
US7675898B2 (en) * 2003-08-20 2010-03-09 Nec Corporation Session relay apparatus for relaying data, and a data relaying method
JP2005167353A (ja) * 2003-11-28 2005-06-23 Ntt Docomo Inc 送信装置およびプログラム

Also Published As

Publication number Publication date
US7764613B2 (en) 2010-07-27
CN1322720C (zh) 2007-06-20
JP2005064597A (ja) 2005-03-10
US20050068911A1 (en) 2005-03-31
CN1581840A (zh) 2005-02-16

Similar Documents

Publication Publication Date Title
JP4235506B2 (ja) 送信装置、中継装置およびプログラム
JP4235507B2 (ja) 中継装置、送信装置、受信装置およびプログラム
US6934251B2 (en) Packet size control technique
JP4283589B2 (ja) 通信装置、通信制御方法及びプログラム
JPH1168873A (ja) データ通信方法及びデータ通信システム
JPH1093632A (ja) 非対称接続上でtcp受信通知(ack)をコラプス(収縮)するための方法および装置
EP1548972A2 (en) Transmitter device and relay device for performing data transmission control
JP4244159B2 (ja) 受信装置、通信システムおよびプログラム
US20060116074A1 (en) Communication repeater, communication repeater program, and communication repeater system
US20050041606A1 (en) Data communication apparatus, data communication method, data communication program and recording medium in which data communication program was recorded
JP2000124950A (ja) 送受信パラメータ設定方法および送受信パラメータ設定装置
CN113297117B (zh) 数据传输方法、设备、网络系统及存储介质
CN115022247A (zh) 流控制传输方法、装置、设备及介质
JP2000295313A (ja) 通信方法および通信装置
JP4071706B2 (ja) 送信装置、中継装置およびプログラム
JP2005109765A (ja) データ受信装置
JP2005051738A (ja) モバイルアドホックネットワークにおけるトランスポート層を用いた効率的なデータの送受信方法及びその方法を用いたネットワーク装置
JPS6335139B2 (ja)
JP4203400B2 (ja) 受信装置、通信システム及びプログラム
JPH11205384A (ja) データ通信システム及びデータ通信装置
JP4216181B2 (ja) 送信装置、中継装置およびプログラム
JP7541494B2 (ja) 通信端末装置、通信方法及びコンピュータプログラム
WO2023112449A1 (ja) 無線通信装置および方法
JP3816835B2 (ja) ネットワーク帯域制御装置
JPWO2009057375A1 (ja) 通信システム、データ送信装置、データ受信装置、通信方法および通信用プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060802

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060802

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081104

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081215

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131219

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees