JP2012016042A - データ送信装置 - Google Patents

データ送信装置 Download PDF

Info

Publication number
JP2012016042A
JP2012016042A JP2011181404A JP2011181404A JP2012016042A JP 2012016042 A JP2012016042 A JP 2012016042A JP 2011181404 A JP2011181404 A JP 2011181404A JP 2011181404 A JP2011181404 A JP 2011181404A JP 2012016042 A JP2012016042 A JP 2012016042A
Authority
JP
Japan
Prior art keywords
data
transmission
buffer
network
retransmission
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.)
Pending
Application number
JP2011181404A
Other languages
English (en)
Inventor
Mitsuru Sato
充 佐藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011181404A priority Critical patent/JP2012016042A/ja
Publication of JP2012016042A publication Critical patent/JP2012016042A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】ハードウェアを用いてネットワーク通信における再送処理を行う。
【解決手段】第1のバッファ11は、送信データを一時的に記憶する。第2のバッファ12は、第1のバッファ11から送出された送信データを一時的に記憶する。データ送出回路13は、第1のバッファ11もしくは第2のバッファ12に記憶されている送信データを選択的にネットワーク30へ送出する。送出制御回路14は、ネットワーク30経由でポーズフレームを検出すると、第2のバッファ12に記憶されている送信データをネットワーク30へ送出するようにデータ送出回路13を制御する。
【選択図】図1

Description

本発明は、ネットワークを介してデータを送信するデータ送信装置に関する。
近年、ネットワーク環境の急速な発展とコンピュータ普及に伴って、情報通信ネットワークでは、多種多様なサービスが提供されている。情報通信ネットワークでは、コンピュータ間の通信データを確実に相手側に届ける必要があり、届いていないデータがある場合には送信側からデータを再送することによって届いていないデータを補完している。最近になって規格化されたネットワークは、ハードウェアによってこの再送制御を行い、データを確実に到達させる仕組みを実現しているものが多い。
しかし、情報通信ネットワークの中には、旧来の考え方に基づいて規格が作成されたネットワークが存在している。このようなネットワークにおいては、相手側のハードウェアに再送制御機能が用意されているかわからないため、ホストコンピュータのソフトウェア処理によって再送制御を行わなくてはならない。ソフトウェアによる再送処理の最も簡単なものの例としては、データを1つずつ送り、データをどこまで送れたか確認を取りながらデータ通信を行うものが挙げられる。
このようなソフトウェアを用いた再送処理を行うときに広く用いられている通信規格としてTCP/IP(Transmission Control Protocol/Internet Protocol)がある。その他に、再送処理が規定されていないUDP/IP(User Datagram Protocol/Internet Protocol)上に専用のプロトコルを組み立てて、そのプロトコル上で再送処理を行う仕組みをソフトウェアで作り上げたデータ送信装置が提案されている(特許文献1参照)。また、上記データ送信装置を拡張し、UDP/IPを用いずに同様の再送処理を行う仕組みをソフトウェアで作り上げたデータ送信装置が提案されている(特許文献2参照)。
特開2000−134263号公報 特開2002−135302号公報
しかし、近年の情報通信ネットワークの広帯域化によってネットワーク通信の通信データは急速に増大しており、ソフトウェアを用いた再送処理によるコンピュータの処理の負荷が大きくなってきている。したがって、ソフトウェアを用いて再送処理を行うと、通信処理などの再送処理以外の処理に用いるリソースが減少してしまい、システム全体における性能が低下してしまうという問題があった。さらに再送処理のためにハードウェアとソフトウェアの間で何度もデータのやり取りを行うため、再送処理そのものが遅くなってしまうという問題もある。
本発明はこのような点に鑑みてなされたものであり、ハードウェアを用いてネットワーク通信における再送処理を行うデータ送信装置を提供することを目的とする。
ネットワークにデータを送信するデータ送信装置であって、前記ネットワークに送信されるデータを記憶する第1のバッファと、前記第1のバッファから前記ネットワークに送信されたデータのコピーを記憶する第2のバッファと、前記ネットワークを介して、データの送信先からポーズフレームを受信したか否かを検出する検出部と、前記検出部による検出の結果、前記ポーズフレームを受信していない場合には前記第1のバッファに記憶されたデータを前記ネットワークに送信し、前記ポーズフレームを受信した場合には前記第2のバッファに記憶されたデータを前記ネットワークに送信するデータ送出部と、を有することを特徴とするデータ送信装置が提供される。
本発明のデータ送信装置によれば、ネットワークへ送出した送信データが通信相手に受信されなかった可能性をネットワーク経由でやり取りされる通信情報を元に独自に判断し、送信データが通信相手に受信されなかった可能性があると判断すると、第2のバッファに記憶されている送信データをネットワークへ送出するようにデータ送出回路を制御することによって、ハードウェアを用いてネットワーク通信における再送処理を行うことができる。そのため、ハードウェアで再送制御を行うように構成されていない旧来の考え方に基づいて作られたネットワーク装置を通信相手としていても、コンピュータに処理負荷をかけずにネットワーク通信の信頼性を向上させることが可能となる。
本実施の形態に適用される発明の概念図である。 本実施の形態に係るシステム構成例を示す図である。 データ送受信装置の処理機能を示す図である。 データ送受信装置によるデータ送信制御処理の手順を示すフローチャートである。
以下、本発明の実施の形態を図面を参照して詳細に説明する。
図1は、本実施の形態に適用される発明の概念図である。図1に示すように、データ送信装置10は、コンピュータ20がネットワーク30を介したデータの送信を行うためのネットワークインタフェイスである。データ送信装置10は、第1のバッファ11、第2のバッファ12、データ送出回路13、および送出制御回路14を備えている。
コンピュータ20は、データ送信装置10とネットワーク30を介してデータ通信を行う。詳しくは、コンピュータ20によって生成され、通信相手に対して送信されるデータが、第1のバッファ11に一時的に記憶される。
第2のバッファ12は、第1のバッファ11からデータ送出回路13に出力され、ネットワーク30へ送出される送信データを、データ送出回路13からネットワーク30へ送出されると同時に第1のバッファ11から受け取り一時的に記憶する。また、第2のバッファ12は、FIFO(First In First Out)バッファであり、第1のバッファ11から受け取ったデータによって記憶領域がデータで満たされると、先に記憶したデータから消去し、新たに受け取ったデータを最後尾に記憶する。
データ送出回路13は、制御信号に基づいて、第1のバッファ11に記憶されている送信データと第2のバッファ12に記憶されている送信データのいずれか一方を取得して、取得した送信データをネットワーク30へ送出する。
ネットワーク30は、イーサネット(登録商標)と呼ばれるネットワークである。なおイーサネットは、IEEE(Institute of Electrical and Electronic Engineers)802.3委員会によって標準化されたネットワークの総称である。
送出制御回路14は、第1のバッファ11に送信データが記憶された旨の通知信号を受信すると、第1のバッファ11に記憶されている送信データをネットワーク30へ送出するようにデータ送出回路13に制御信号を出力する。
データ送出回路13は、制御信号に基づいて第1のバッファ11に記憶されている送信データを取得し、ネットワーク30へ送出する。このとき、第2のバッファ12には、ネットワーク30へ送出された送信データが記憶される。
また、送出制御回路14は、ネットワーク30を経由してやり取りする通信情報を常に監視しており、通信情報からネットワーク30へ送出した送信データが通信相手に受信されなかった可能性を検出すると、第2のバッファ12に記憶されている送信データをネットワーク30へ送出するようにデータ送出回路13に対して制御信号を出力する。
データ送出回路13は、制御信号に基づいて第2のバッファ12に記憶されている送信データをネットワーク30に対して送出する。送出制御回路14は、第2のバッファ12に記憶されている送信データがなくなった旨の通知信号を第2のバッファ12から受信すると、改めて第1のバッファ11に記憶されているデータをネットワーク30に対して送出するようにデータ送出回路13を制御する。
このように、ネットワーク30へ送出した送信データが通信相手に受信されなかった可能性をネットワーク30を介してやり取りする通信情報を監視することにより独自に検出し、再送の必要性を検出すると、第2のバッファ12に記憶されている送信データをネットワーク30へ送出するようにデータ送出回路13を制御することによって、ソフトウェアを用いることなく再送処理を実現することができるようになるので、コンピュータのCPU(Central Processing Unit)に負荷をかけずにネットワーク通信の信頼性を向上させることが可能となる。
また、判断信号によってデータ送信装置10が単独で送信データが通信相手に受信されなかった可能性があると判断して第2のバッファ12に記憶されている送信データをネットワーク30へ送出するようにデータ送出回路13を制御するので、ネットワーク通信の通信相手が再送処理の機能を有していない可能性がある場合であっても通信相手の機能によらず再送処理を行うことができるので、ネットワーク通信の信頼性を向上させることが可能となる。
次に、データ送信装置をデータ送受信装置に適用した場合の実施の形態について図面を参照して詳細に説明する。
図2は、本実施の形態に係るシステム構成例を示す図である。図2に示すように、コンピュータ200とコンピュータ201がスイッチ300を介して接続されている。コンピュータ200は、データ送受信装置100aを備えている。コンピュータ201は、データ送受信装置100bを備えている。また、スイッチ300は、たとえば6ポートのスイッチであり、それぞれのポートにデータ送受信装置100c、100d、100e、100f、100g、および100hを備えている。また、どのポートからどのポートへデータを送信するかを制御するセレクタ310を備えている。
たとえば、コンピュータ200からコンピュータ201に対してデータが送信されるとき、コンピュータ200が生成したデータがデータ送受信装置100aを介してスイッチ300に出力される。スイッチ300は、データ送受信装置100aから出力されたデータをデータ送受信装置100cが受け付け、セレクタ310とデータ送受信装置100eを介してコンピュータ201へ出力する。コンピュータ201は、データ送受信装置100eから出力されたデータをデータ送受信装置100bが受け付ける。
つまり、データ送受信装置100a、100b、100c、100d、100e、100f、100g、および100h(以下、総称して「データ送受信装置100」という)は、情報通信ネットワークにおける各ノード間を行き来するデータを送受信する装置である。以下、一例としてデータ送受信装置100をコンピュータ200のネットワークインタフェイスとして適用した場合について詳細に説明する。
図3は、データ送受信装置の処理機能を示す図である。図3に示すように、データ送受信装置100は、コンピュータ200がネットワーク400を介したデータの送受信を行うためのネットワークインタフェイスである。
データ送受信装置100は、送信バッファ110、セレクタ120、再送バッファ130、受信バッファ140、送信バッファ制御回路150、セレクタ制御回路160、およびポーズ検出回路170を備えている。
コンピュータ200は、データ送受信装置100とネットワーク400を介してコンピュータ201とデータ通信を行う。詳しくは、コンピュータ200によって生成され、コンピュータ201に対して送信されるデータが、送信バッファ110に一時的に記憶される。
再送バッファ130は、送信バッファ110からセレクタ120に出力され、ネットワーク400へ送出される送信データを、セレクタ120からネットワーク400へ送出されると同時に送信バッファ110から受け取り一時的に記憶する。また、再送バッファ130は、FIFOバッファであり、送信バッファ110から受け取ったデータによって記憶領域がデータで満たされると、先に記憶したデータから消去し、新たに受け取ったデータを最後尾に記憶する。
セレクタ120は、制御信号に基づいて、送信バッファ110に記憶されている送信データと再送バッファ130に記憶されている送信データのいずれか一方を取得し、ネットワーク400を介してコンピュータ201に送信する。
また、コンピュータ200に対して送信されるデータは、ネットワーク400を介して受信バッファ140に一時的に記憶され、コンピュータ200に送信される。また、受信バッファ140は、ネットワーク400を介して受け取ったデータをコンピュータ200へ出力すると同時にポーズ検出回路170に対しても出力する。
ネットワーク400は、イーサネットと呼ばれるネットワークである。なおイーサネットは、IEEE802.3委員会によって標準化されたネットワークの総称である。
送信バッファ制御回路150は、送信バッファ110に記憶されている送信データのデータ量を検出し、送信バッファ110に送信データが記憶されたことを検出すると、検出した旨の通知信号をセレクタ制御回路160に出力する。
セレクタ制御回路160は、送信バッファ110に送信データが記憶されたことを検出したことを示す通知信号を受信すると、送信バッファ110に記憶されている送信データをネットワーク400へ送出するようにセレクタ120を制御する。
また、送信バッファ制御回路150は、送信バッファ110に記憶されている送信データのデータ量を検出し、コンピュータ200から送信バッファ110に対して出力される送信データのデータ量を制御する。たとえば、送信バッファ110に記憶されている送信データのデータ量が一定量を超えたことが検出されたときは、コンピュータ200に対して送信バッファ110に出力するデータ量を減らすように、もしくは送信データの送信バッファ110に対する出力を停止するように指示を行う。また、送信バッファ110に記憶されている送信データのデータ量が一定量以下になったことが検出されたときは、コンピュータ200に対して送信バッファ110に出力するデータ量を増やすように、もしくは送信データの送信バッファ110に対する出力を開始するように指示を行う。
セレクタ制御回路160は、ポーズ検出回路170が受信バッファ140がネットワーク400を介して受け取ったデータの中から、IEEE802.3xのオプションとして規定されているポーズフレームと呼ばれるデータ送信停止信号を検出し、ポーズ検出回路170からポーズフレームを検出した旨の通知信号を受け取ると、セレクタ120に対してネットワーク400にデータを送出しないように指示信号を出力する。
ポーズ検出回路170は、ポーズフレームを検出した旨の通知信号をセレクタ制御回路160に出力すると、検出したポーズフレームに設定されている、データの送出を中断する中断時間を計時する。そして、中断時間が経過するとその旨をセレクタ制御回路160に対して通知する。
セレクタ制御回路160は、ポーズ検出回路170から中断時間が経過した旨の通知を受けると、再送バッファ130に記憶されているデータをコンピュータ201に対して送信するようにセレクタ120を制御する。そして、再送バッファ130に記憶されているデータのデータ量を検出し、再送バッファ130に記憶されているデータがなくなったとき、改めて送信バッファ110に記憶されているデータをコンピュータ201に対して送信するようにセレクタ120を制御する。
以上のような機能を有しているデータ送受信装置100により、以下の処理が行われる。
図4は、データ送受信装置によるデータ送信制御処理の手順を示すフローチャートである。以下、図4に示す処理をステップ番号に沿って説明する。
〔ステップS11〕ポーズ検出回路170は、送信バッファ110に記憶されている送信データのネットワーク400への送出が開始されると、ポーズフレームを受信したか否かを判断する。ポーズフレームを受信した場合には、処理をステップS12へ進め、ポーズフレームを受信していない場合には、処理をステップS16へ進める。
〔ステップS12〕ポーズ検出回路170は、セレクタ制御回路160に対してデータ送出停止信号を出力する。セレクタ制御回路160は、データ送出停止信号を受け取ると、データがネットワーク400へ送出されないようにセレクタ120を制御する。
〔ステップS13〕ポーズ検出回路170は、ポーズフレームに設定されている中断時間を読み出す。また、ポーズフレームを受け取ってからの経過時間を計時し、ポーズフレームから読み出した中断時間が経過するとセレクタ制御回路160に対してデータ送出再開信号を出力する。
〔ステップS14〕セレクタ制御回路160は、再送バッファ130内に記憶されているデータがネットワーク400へ送出されるようにセレクタ120を制御する。
〔ステップS15〕セレクタ制御回路160は、再送バッファ130に記憶されているデータのデータ量を検出し、再送バッファ130内のデータが送出されたことにより空になったか否かを判断する。再送バッファ130が空になった場合には、送信バッファ制御回路150に対して空になった旨を通知し、処理をステップS16へ進める。また、再送バッファ130が空になっていない場合には、処理をステップS14へ進める。
〔ステップS16〕送信バッファ制御回路150は、送信バッファ110に記憶されているデータのデータ量を検出し、送信バッファ制御回路150内にデータがあるか否かを判断する。送信バッファ110にデータがある場合には、処理をステップS17へ進め、送信バッファ110にデータがない場合には、処理をステップS11へ進める。
〔ステップS17〕送信バッファ制御回路150は、セレクタ制御回路160に対して送信バッファ110に記憶されているデータをネットワーク400へ送出するようにセレクタ120を制御するように指示する。セレクタ制御回路160は、その指示を受けると、送信バッファ110内に記憶されているデータがネットワーク400へ送出されるようにセレクタ120を制御する。
このように、ポーズフレームを受け付けたときに、再送バッファ130に記憶されている送信データを再送することにより、もしポーズフレームが出力された原因が受信側のオーバフローであって、オーバフローしたときに受信側が送信データを受信し損ねていた場合、送信元から再送された送信データによって受信し損ねた送信データを補完することが可能となる。
また、ネットワークの規格に存在するポーズフレームによってデータ送受信装置100が単独で送信データが通信相手に受信されなかった可能性があると判断して再送バッファ130に記憶されている送信データをネットワーク400へ送出するようにセレクタ120を制御するので、ネットワーク通信の通信相手が再送処理の機能を有していない可能性がある場合であっても通信相手の機能によらず再送処理を行うことができるので、安価な装置でネットワーク通信の信頼性を向上させることが可能となる。
また、ハードウェアによって再送処理を行うことにより、高速なネットワークを介して送受信されるデータ通信において、コンピュータの処理負荷を大きくすることなく再送処理を行うことが可能となる。
なお、ポーズ検出回路170が中断時間を計時する旨の説明を行ったが、セレクタ制御回路160にポーズフレームを送り、ポーズフレームを受け取ったら停止、ポーズフレーム内に設定されている中断時間を計時して再送バッファ130のデータを送出するようにしてもよい。
また、ポーズフレームを受信したときに、受信側が送信データを受信し損ねた可能性があると判断する旨の説明を行ったが、受信側が送信データを受信し損ねた可能性を判断する材料は受信側が送信データを受信し損ねた可能性がありさえすればポーズフレームに限らなくてもよい。
10 データ送信装置
11 第1のバッファ
12 第2のバッファ
13 データ送出回路
14 送出制御回路
20 コンピュータ
30 ネットワーク

Claims (2)

  1. ネットワークにデータを送信するデータ送信装置であって、
    前記ネットワークに送信されるデータを記憶する第1のバッファと、
    前記第1のバッファから前記ネットワークに送信されたデータのコピーを記憶する第2のバッファと、
    前記ネットワークを介して、データの送信先からポーズフレームを受信したか否かを検出する検出部と、
    前記検出部による検出の結果、前記ポーズフレームを受信していない場合には前記第1のバッファに記憶されたデータを前記ネットワークに送信し、前記ポーズフレームを受信した場合には前記第2のバッファに記憶されたデータを前記ネットワークに送信するデータ送出部と、
    を有することを特徴とするデータ送信装置。
  2. 前記データ送出部は、前記第2のバッファに記憶された前記データのコピーが全て送出されると、前記第1のバッファに記憶された前記データを前記ネットワークへ送出する、
    ことを特徴とする請求項1記載のデータ送信装置。
JP2011181404A 2011-08-23 2011-08-23 データ送信装置 Pending JP2012016042A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011181404A JP2012016042A (ja) 2011-08-23 2011-08-23 データ送信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011181404A JP2012016042A (ja) 2011-08-23 2011-08-23 データ送信装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2006092042A Division JP2007267249A (ja) 2006-03-29 2006-03-29 データ送信装置、データ送信方法、およびデータ送信プログラム

Publications (1)

Publication Number Publication Date
JP2012016042A true JP2012016042A (ja) 2012-01-19

Family

ID=45601854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011181404A Pending JP2012016042A (ja) 2011-08-23 2011-08-23 データ送信装置

Country Status (1)

Country Link
JP (1) JP2012016042A (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01114141A (ja) * 1987-10-27 1989-05-02 Nec Corp データ転送方式
JPH07121492A (ja) * 1993-10-20 1995-05-12 Hitachi Ltd 分散処理システム
JPH07281975A (ja) * 1994-04-06 1995-10-27 Hitachi Ltd データ送受信バッファビジーリトライ方法
JPH08317463A (ja) * 1995-05-23 1996-11-29 Hitachi Ltd 音声・データ無線通信装置
JPH09163428A (ja) * 1995-12-08 1997-06-20 Kyocera Corp 無線通信システムにおける基地局ビジー状態時の処理方法
JP2000151623A (ja) * 1998-11-05 2000-05-30 Oki Electric Ind Co Ltd パケット通信システム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01114141A (ja) * 1987-10-27 1989-05-02 Nec Corp データ転送方式
JPH07121492A (ja) * 1993-10-20 1995-05-12 Hitachi Ltd 分散処理システム
JPH07281975A (ja) * 1994-04-06 1995-10-27 Hitachi Ltd データ送受信バッファビジーリトライ方法
JPH08317463A (ja) * 1995-05-23 1996-11-29 Hitachi Ltd 音声・データ無線通信装置
JPH09163428A (ja) * 1995-12-08 1997-06-20 Kyocera Corp 無線通信システムにおける基地局ビジー状態時の処理方法
JP2000151623A (ja) * 1998-11-05 2000-05-30 Oki Electric Ind Co Ltd パケット通信システム

Similar Documents

Publication Publication Date Title
CN109936510B (zh) 多路径rdma传输
EP3742690B1 (en) Data transmission method, computing device, network device and data transmission system
US9961585B2 (en) Network-side buffer management
US9577791B2 (en) Notification by network element of packet drops
US20160043955A1 (en) Delivery of protocol data units
US20060203730A1 (en) Method and system for reducing end station latency in response to network congestion
EP1768296A2 (en) Method and apparatus for transmitting signaling data messages in a wireless communications system
JP5696854B2 (ja) パケット再送制御装置とパケット再送制御方法
KR102141389B1 (ko) 다중 무선 접속 기술 기반 통신 시스템에서의 무선 링크 제어 상태 보고 전송 방법 및 장치
WO2014092779A1 (en) Notification by network element of packet drops
KR20130009863A (ko) 프레임 전송의 적어도 부분적인 중단
WO2020119347A1 (zh) 一种消息传输方法、装置、设备及介质
CN109981385B (zh) 一种实现丢包检测的方法、装置和系统
CN110234124B (zh) 信息传输方法及终端设备
JP2015027100A (ja) パケット通信の伝送制御方法及びパケット通信システム
WO2019022418A1 (ko) 무선 통신 시스템에서 단말, 기지국 및 이의 통신 방법
CN114710446A (zh) 数据传输方法、装置、电子设备和存储介质
JP6800375B2 (ja) 通信装置、通信方法及び通信プログラム
JP2007235976A (ja) データ通信装置
JP2007267249A (ja) データ送信装置、データ送信方法、およびデータ送信プログラム
JP2012016042A (ja) データ送信装置
WO2015048999A1 (en) Method and proxy node for source to destination packet transfer
WO2020154872A1 (zh) 一种传输控制协议加速方法和装置
JP2008199431A (ja) 通信装置
JP2016054333A (ja) データ転送制御装置、方法及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130521

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130712

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20131029