JP4985565B2 - 送受信回路、受信回路及び送受信回路の制御方法 - Google Patents

送受信回路、受信回路及び送受信回路の制御方法 Download PDF

Info

Publication number
JP4985565B2
JP4985565B2 JP2008170487A JP2008170487A JP4985565B2 JP 4985565 B2 JP4985565 B2 JP 4985565B2 JP 2008170487 A JP2008170487 A JP 2008170487A JP 2008170487 A JP2008170487 A JP 2008170487A JP 4985565 B2 JP4985565 B2 JP 4985565B2
Authority
JP
Japan
Prior art keywords
packet
transmission
circuit
data
error detection
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
JP2008170487A
Other languages
English (en)
Other versions
JP2010011296A (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.)
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 JP2008170487A priority Critical patent/JP4985565B2/ja
Priority to US12/485,529 priority patent/US8255560B2/en
Priority to EP20090163526 priority patent/EP2141849A3/en
Priority to CN2009101463993A priority patent/CN101621471B/zh
Priority to KR20090058261A priority patent/KR20100003227A/ko
Publication of JP2010011296A publication Critical patent/JP2010011296A/ja
Application granted granted Critical
Publication of JP4985565B2 publication Critical patent/JP4985565B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0072Error control for data other than payload data, e.g. control data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

本発明は、データとヘッダ情報を有するパケットを送信する送信回路と、パケットを受信する受信回路とを有する送受信回路に関する。
パケットの送受信回路において、パケットは分割されたデータと、当該分割されたデータに付加されたヘッダ情報とを備える。ヘッダ情報は、パケットの宛先情報、シーケンス番号及びヘッダ誤り検出符号等、パケットが宛先に到着するまでに必要な情報を有している。誤り検出符号は、パケットに誤りが発生したことを検出するために付加されている符号である。受信回路は、パケットを受信するとデータから生成した誤り検出符号とデータに付加された誤り検出符号とが一致するか否かを判定することで、パケットの誤りを検出する。
ここで、パケットに誤りがある場合は、受信回路は、パケットの再送を送信回路に要求する。パケットの再送を行う場合、受信回路がどのパケットまで正常に受信できており、送信回路にどのパケットの再送を要求するかについての情報が必要である。送受信回路では、当該情報としてシーケンス番号を用いている。シーケンス番号は、パケットの順番や、パケットの欠落の有無を確認するために、パケット毎に付加される。送信回路が送信するパケットのシーケンス番号と、受信回路が受信すべきパケットのシーケンス番号とは一致するように制御される。送信回路はシーケンス番号をカウントする送信カウンタを有しており、受信回路もシーケンス番号をカウントする受信カウンタを有している。受信回路は、送信回路から送信されるパケットを正常に受信すると、受信カウンタをインクリメントし、送信回路にパケットを正常に受信できた旨を表す信号を送信する。送信回路は、当該信号を受信すると送信カウンタをインクリメントする。送信回路がパケットを送信する際に、送信カウンタの値と受信カウンタの値とは一致している。
パケットの送受信確認とパケット再送制御を実現するためには、誤り検出符号とシーケンス番号が必要である。しかし、上述したように送信回路、受信回路それぞれにおいて、送信すべきパケットのシーケンス番号と、受信すべきシーケンス番号とを管理しているにも関わらず、シーケンス番号を冗長な情報としてヘッダ情報に付加していた。
先行技術文献としては、下記のものがある。
特開2002−026963号公報
本発明の課題は、パケットに冗長な情報を付加することなく、送受信を行うことのできる送受信回路を提供することである。
上記課題を解決するために、データを送受信する対象となる他の送受信回路と接続可能な送受信回路は、送信するデータの送信順序を示す第1の順序情報を管理する第1の管理部と、送信するデータの一部と前記第1の管理部が管理する第1の順序情報とに基づき、送信するデータの誤りを検出する第1の検出情報を生成する第1の生成部と、生成された第1の検出情報をデータに付加して送信する送信部とを備える送信回路と、
前記他の送受信回路の送信部から送信されるデータを受信する受信部と、受信したデータの受信順序を示す第2の順序情報を管理する第2の管理部と、受信したデータの一部前記第2の管理部が管理する第2の順序情報に基づき、受信したデータの誤りを検出する第2の検出情報を生成する第2の生成部と、受信したデータに付加された第1の検出情報と前記第2の生成部が生成した第2の検出情報とを比較して、受信したデータの誤りを検出する検出部とを備える受信回路とを有する。
本実施形態の一側面によれば、パケットにシーケンス番号を含めることなく、送受信を行うことができる。
以下に図面を用いて本実施形態について説明する。
(実施例1)
図1に本実施形態におけるネットワークシステム0の構成図を表す。ネットワーク30と各ノード10の送受信装置20を介して、ノード間でデータを送受信する。本実施形態におけるネットワークシステム0は、パケット順序保障がある。また、本実施形態におけるネットワーク30は、データリンク層レベルで送信確認と、再送制御を行うネットワークである。
送受信装置20は、パケット送信回路200、ネットワークインタフェース回路400及びパケット受信回路300を有する。パケット送信回路200は、パケットをネットワーク30を介して、別のノード10の送受信装置20に送信する。パケット受信回路300は、別のノード10の送受信装置20からネットワーク30を介してパケットを受信する。ネットワークインタフェース回路400はノード10との間でパケットの送受信を行う。
本実施形態では、パケットの転送速度を向上させるために、カットスルー転送が用いられる。カットスルー転送では、パケットをさらに分割したフリットという単位で転送を行う。送受信装置20は、フリットを順次受信する。送受信装置20は、パケットのヘッダを全て取得すると、当該ヘッダを参照し、パケットの転送先に関する情報を取得する。そして、送受信装置20はパケットの転送先へのパケット転送を開始する。
図2にノード10の構成の一例を表す。ノード10は、システム制御部12、Central Processing Unit(CPU、中央処理装置)14、メモリ16及びInput/Output(I/O、入出力)インタフェース18を有する。CPU14は、データ処理を行う。メモリ16は、データを格納する。システム制御部12は、送受信装置20と接続され、パケットの送受信を行う。I/Oインタフェース18は、他の装置との接続に用いられる。
図3は、本実施形態において送受信するパケット500のパケットフォーマットを表す。パケット通信方式では、まず送受信するデータをパケットと呼ぶ小さなデータに分割する。次にパケットを送信元のノードから送信先のノードに転送する。
パケット500は、ヘッダ誤り検出符号502、ヘッダ504、データ506及びパケット誤り検出符号508を有する。ヘッダ誤り検出符号502は、本実施形態の手法で生成するシーケンス番号を畳み込んだ誤り検出符号である。ヘッダ誤り検出符号502はヘッダの誤りを検出するために用いられる。ヘッダ504は、パケットの送信元アドレス、パケットの送信先アドレス、パケットタイプ及びパケット長等の情報を有している。データ506には、任意の情報が含まれる。パケット誤り検出符号508は、データ506の誤りを検出するために用いられる。パケット500の各フィールド長は、例えば次の通りである。ヘッダ誤り検出符号502が2Byte、ヘッダ504が5Byte、データ506が8Byte単位の可変長及びパケット誤り検出符号508が4Byteである。
また、本実施形態におけるパケット500の先頭8Byteには、パケットの先頭であることを表すSTPコードが、パケットの末尾8Byteには、パケットの末尾であることを表すENDコードが付加されている。ENDコードには、正常なパケットであることを表すEND、または、エラーを含んだパケットであることを表すEDBのいずれかの情報が書き込まれている。受信回路302は、ENDコードを参照することで、パケットの末尾を検出し、さらにパケットが正常なパケットであるか否かを判定することができる。
図4は、本実施形態におけるパケット送信回路200の構成を表す。パケット送信回路200は、送信回路202、ヘッダ誤り検出符号生成回路204、パケット誤り検出符号生成回路203及び送信シーケンス番号制御回路207を有する。
パケット送信回路200には、図1において説明したネットワークインタフェース回路400を経由し、ヘッダとデータが入力する。送信シーケンス番号制御回路207は、次に送信するパケットのシーケンス番号を管理する第一送信カウンタ205と受信側で正常受信できたパケットのシーケンス番号を管理する第二送信カウンタ206を有しており、送信するパケットのシーケンス番号を管理している。第一送信カウンタ205は、パケット送信回路200がパケットを送信するとインクリメントされる。第二送信カウンタ206はパケット受信回路300が正常に受信できたパケットのシーケンス番号にインクリメントされる。
ヘッダ誤り検出符号生成回路204は、ネットワークインタフェース回路400からパケット送信回路200に入力するヘッダと、第一送信カウンタ205が示しているシーケンス番号とからヘッダ誤り検出符号を生成する。パケット誤り検出符号生成回路203は、ネットワークインタフェース回路400からパケット送信回路200に入力するデータからパケット誤り検出符号を生成する。なお、ヘッダ誤り検出符号生成回路204及びパケット誤り検出符号生成回路203は、誤り検出符号の生成アルゴリズムとして、例えばCRC(Cyclic Redundancy Check)アルゴリズム等の任意のアルゴリズムを使用すれば良い。送信回路202は、パケットフォーマットに従って、ヘッダ誤り検出符号生成回路204が生成したヘッダ誤り検出符号、ヘッダ、データ及びパケット誤り検出符号生成回路203が生成したパケット誤り検出符号をネットワーク30を経由して宛先のノードに送信する。
以下、図5を用いてパケット送信の処理について説明する。ステップS101において、送信回路202は、ヘッダとデータを受信する。処理はステップS102へ移行する。
ステップS102において、ヘッダ誤り検出符号生成回路204は、第一送信カウンタ205が示すシーケンス番号と、送信回路202が受信したヘッダとからヘッダ誤り検出符号を生成する。処理はステップS103へ移行する。
ステップS103において、パケット誤り検出符号生成回路203は、送信回路202が受信したデータからパケット誤り検出符号を生成する。処理はステップS104へ移行する。
ステップS104において、送信回路202は、パケットフォーマットに従い、ヘッダ誤り検出符号、ヘッダ、データ及びパケット誤り検出符号をネットワーク30に送信する。処理は終了する。
図6は、本実施形態におけるヘッダ誤り検出符号の生成方法を表した概念図である。図6に表すように本実施形態におけるヘッダ誤り検出符号は、シーケンス番号とパケットヘッダ情報を用いて演算することによって生成される。
図7は、本実施形態におけるパケット受信回路300の構成を表す。パケット受信回路300は、受信回路302、バッファ304、ヘッダ誤り検出符号生成回路204、パケット誤り検出符号生成回路203、受信シーケンス番号制御回路308、ヘッダ誤り検出符号比較回路310、パケット誤り検出符号比較回路306、及び再送制御回路312を有する。
パケット受信回路300には、ネットワーク30を経由してパケット送信回路200が送信したパケットが入力する。受信回路302は、パケットを受信する。受信回路302は、受信したパケットをバッファ304に出力する。また、受信回路302は、受信したパケットのヘッダをヘッダ誤り検出符号生成回路204に出力し、受信したパケットの誤り検出符号をヘッダ誤り検出符号比較回路310に出力し、受信したパケットのデータをパケット誤り検出符号比較回路306に出力する。
バッファ304は、受信回路302から入力するパケットを格納する。受信シーケンス番号制御回路308は、受信カウンタ305を有しており、受信するパケットのシーケンス番号を管理している。初期状態では、受信カウンタ305は第一送信カウンタ205と同じ値を示している。
ヘッダ誤り検出符号生成回路204は、受信回路302から入力するヘッダと、受信カウンタ305が示しているシーケンス番号とからヘッダ誤り検出符号を生成する。
パケット誤り検出符号生成回路203は、受信回路302から入力するデータからパケット誤り検出符号を生成する。なお、ヘッダ誤り検出符号生成回路204及びパケット誤り検出符号生成回路203は、誤り検出符号の生成アルゴリズムとして、例えばCRCアルゴリズム等の任意のアルゴリズムを使用すれば良い。
ヘッダ誤り検出符号生成回路204は、生成したヘッダ誤り検出符号をヘッダ誤り検出符号比較回路310に出力する。ヘッダ誤り検出符号比較回路310は、受信回路302から入力するヘッダ誤り検出符号と、ヘッダ誤り検出符号生成回路204から入力するヘッダ誤り検出符号とを比較する。ヘッダ誤り検出符号比較回路310は、比較の結果、受信回路302から入力するヘッダ誤り検出符号と、ヘッダ誤り検出符号生成回路204から入力するヘッダ誤り検出符号とが一致した場合、一致したことを表す信号をバッファ304、受信シーケンス番号制御回路308に出力する。さらに、ヘッダ誤り検出符号が一致した場合、ヘッダ誤り検出符号比較回路310は、正常なパケットを受信したことを表すACKパケットをパケットの送信元のノード10の送受信装置20の送信シーケンス番号制御回路207に送信する。
受信シーケンス番号制御回路308に、ヘッダ誤り検出符号比較回路310から一致したことを表す信号が入力すると、受信カウンタ305はインクリメントされる。また、送信シーケンス番号制御回路207がACKパケットを受信すると、第二送信カウンタ206はACKパケット中のシーケンス番号にインクリメントされる。パケットが正常に送受信されている場合、パケット送信時に第一送信カウンタ205がインクリメントされ、パケット受信時に受信カウンタ305がインクリメントされる。よって第一送信カウンタ205及び受信カウンタ305は同じ値を示す。
一方、ヘッダ誤り検出符号比較回路310は、比較の結果、受信回路302から入力するヘッダ誤り検出符号と、ヘッダ誤り検出符号生成回路204から入力するヘッダ誤り検出符号とが一致しない場合、一致しないことを表す信号を再送制御回路312に出力する。再送制御回路312は、当該信号を受信すると、正常なパケットを受信できなかったことを表すNAKパケットを送信元のノード10の送受信装置20の送信シーケンス番号制御回路207に送信する。送信シーケンス番号制御回路207がNAKパケットを受信すると、第二送信カウンタ206はNAKパケット中の正常に受信できたパケットのシーケンス番号にインクリメントされる。送信回路202は第二送信カウンタ206が示すシーケンス番号+1のパケット以降から第一送信カウンタ205が示すシーケンス番号のパケットの再送処理を行う。
パケットの再送を要求する場合としては以下の場合がある。例えば、パケットのヘッダにビット誤りを検出した場合、パケットのヘッダのシーケンス番号がパケット受信回路300で期待するシーケンス番号と一致しない場合、シーケンス番号にビット誤りはないが、前のパケットが欠落していた場合、シーケンス番号にビット誤りがある場合、パケットのデータ本体にビット誤りがあった場合等である。パケット本体のデータにビット誤りがある場合だけでなく、ヘッダにビット誤りがある場合やシーケンス番号が不連続の場合も、再送の対象になる。
パケット誤り検出符号生成回路203は、生成したパケット誤り検出符号をパケット誤り検出符号比較回路306に出力する。パケット誤り検出符号比較回路306は、受信回路302から入力するパケット誤り検出符号と、パケット誤り検出符号生成回路203から入力するパケット誤り検出符号とを比較する。比較の結果、受信回路302から入力するパケット誤り検出符号と、パケット誤り検出符号生成回路203から入力するパケット誤り検出符号とが一致した場合、一致したことを表す信号をバッファ304に出力する。一方、比較の結果、受信回路302から入力するパケット誤り検出符号と、パケット誤り検出符号生成回路203から入力するパケット誤り検出符号とが一致しない場合、一致しないことを表す信号をバッファ304に出力する。バッファ304に一致しないことを表す信号が入力すると、バッファ304に格納されているパケットが破棄される。
また、パケット誤り検出符号比較回路306は、パケット誤り検出符号生成回路203が生成したパケット誤り検出符号と、受信回路302が受信したパケットのパケット誤り検出符号のビット反転とが一致しない場合、一致しないことを表す信号をパケットの送信先のノード10に接続された送受信装置20のパケット送信回路200に出力する。
パケットの送信先のノード10に接続された送受信装置20の送信回路202は、当該信号を受信すると、パケットのENDコードにパケットがエラーを含んでいることを表すEDBを書き込む。さらに、送信回路202は、当該信号を受信すると、パケット誤り検出符号生成回路203に正常なパケットのパケット誤り検出符号をビット反転したパケット誤り検出符号を生成させる。そして、送信回路202は、ENDコードがEDBであり、かつ、正常なパケットの誤り検出符号をビット反転したパケット誤り検出符号が付加されたパケットをネットワークに送信する。受信回路302は、ENDコードを参照することで、パケットの末尾の検出及びパケットが正常なパケットであるか否かを判定することができる。また、受信回路302は、受信したパケットのパケット誤り検出符号がビット反転したものであるか否かを判定することにより、パケットを無効にすべきか否かを判定することができる。
カットスルー転送では、転送中にエラーを検出しても、転送をキャンセルすることができないため、転送中のパケットがエラーを含むことをパケットの送信先のノード10に通知する必要がある。そのため、エラーを含むパケットのENDコードをEDBに、誤り検出符号をビット反転したものにしている。
以下、図8を用いてパケット受信の処理について説明する。ステップS201において、ヘッダ誤り検出符号生成回路204、パケット誤り検出符号生成回路203はそれぞれ、ヘッダ誤り検出符号、パケット誤り検出符号を生成する。処理はステップS202へ移行する。
ステップS202において、受信回路302は、パケットの末尾がENDであるか否かを判定する。パケットの末尾がENDである場合、処理はステップS203へ移行する。一方、パケットの末尾がENDでない場合、処理はステップS207へ移行する。
ステップS203において、ヘッダ誤り検出符号比較回路310、パケット誤り検出符号比較回路306はそれぞれ、ステップS201において生成した誤り検出符号と、受信したパケットの誤り検出符号とが一致するか否かを判定する。生成した誤り検出符号と、受信したパケットの誤り検出符号とが一致する場合、処理はステップS204へ移行する。一方、生成した誤り検出符号と、受信したパケットの誤り検出符号とが一致しない場合、処理はステップS209へ移行する。ステップS209において、バッファ304に格納されたパケットは破棄される。
ステップS204において、ヘッダ誤り検出符号比較回路310は、シーケンス番号制御回路308に、誤り検出符号が一致したことを表す信号を出力する。受信カウンタ305はインクリメントされる。処理はステップS205へ移行する。
ステップS205において、ヘッダ誤り検出符号比較回路310は、正常なパケットを受信したことを表すACKパケットをパケット送信回路200のシーケンス番号制御回路207に送信する。シーケンス番号制御回路207がACKパケットを受信すると、第二送信カウンタ206はインクリメントされる。処理はステップS206へ移行する。
ステップS206において、バッファ304は、ヘッダとデータを出力する。処理は終了する。
続いて、ステップS202からステップS207に移行した場合の処理について説明する。ステップS207において、パケット誤り検出符号比較回路300は、パケット誤り検出符号生成回路203が生成したパケット誤り検出符号と、受信回路302が受信したパケットのパケット誤り検出符号のビット反転とが一致するか否かを判定する。生成したパケット誤り検出符号と、受信したパケット誤り検出符号のビット反転とが一致する場合、受信回路302が受信したパケットは無効パケットであり、処理はステップS208へ移行する。一方、生成したパケット誤り検出符号と、受信したパケット誤り検出符号のビット反転とが一致しない場合、処理はステップS209へ移行する。
ステップS208において、バッファ304に格納された無効パケットは破棄される。処理はステップS210へ移行する。
ステップS210において、ヘッダ誤り検出符号比較回路310は、再送制御回路312にパケットの再送を指示する。再送制御回路312は、ヘッダ誤り検出符号比較回路310からの指示を受け、正常なパケットを受信できなかったことを表すNAKパケットをパケット送信回路200に送信し、パケット再送をパケット送信回路200に要求する。処理は終了する。
図9は、本実施形態におけるヘッダ誤りとシーケンス番号の検査方法を表した概念図である。受信回路で保持しているシーケンス番号と、受信したパケットのヘッダから本実施形態におけるヘッダ誤り検出符号を生成する。そして、生成したヘッダ誤り検出符号と、受信したヘッダ誤り検出符号とを比較する。シーケンス番号の不一致、パケットのヘッダにエラーがあると2つの誤り検出符号は一致しない。
カットスルー転送ではヘッダを全て取得しなければ、転送開始できないため、ヘッダのデータ量によっては、受信するフリットにヘッダが全て含まれていない場合もある。受信するフリットにヘッダが全て含まれていないと、次のフリットの受信を待って、ヘッダを全て取得しなければならず、次のフリットの受信を待つ時間だけ、パケットの転送開始が遅れてしまう。ゆえに、本実施形態によれば、ヘッダにシーケンス番号を含めないため、ヘッダのデータ量を小さくすることができ、受信するフリットにヘッダを含めることができる確率が向上する。
(実施例2)
図10は、本実施形態において送受信するパケット500のパケットフォーマットを表す。パケット500は、ヘッダ504、データ506及びパケット誤り検出符号508を有する。ヘッダ504は、パケットの送信元アドレス、パケットの送信先アドレス、パケットタイプ及びパケット長等の情報を有している。
図11は、本実施形態におけるパケット送信回路200の構成を表す。パケット送信回路200は、送信回路202、パケット誤り検出符号生成回路314及び送信シーケンス番号制御回路207を有する。送信シーケンス番号制御回路207は、次に送信するパケットのシーケンス番号を管理する第一送信カウンタ205と受信側で正常受信できたパケットのシーケンス番号を管理する第二送信カウンタ206を有する。
以下、図12を用いてパケット送信の処理について説明する。ステップS301において、送信回路202は、ノード10から送信されるヘッダとデータを受信する。処理はステップS302へ移行する。
ステップS302において、パケット誤り検出符号生成回路314は、第一送信カウンタ205が示すシーケンス番号と、送信回路202が受信したヘッダ及びデータとからヘッダ誤り検出符号を生成する。なお、パケット誤り検出符号生成回路314によるパケット誤り検出符号の生成アルゴリズムとしては、CRCアルゴリズム等の任意のアルゴリズムが使用されれば良い。処理はステップS303へ移行する。
ステップS303において、送信回路202は、パケットフォーマットに従い、パケット誤り検出符号、ヘッダ及びデータをネットワーク30に送信する。処理は終了する。
図13は、本実施形態におけるパケット受信回路300の構成を表す。パケット受信回路300は、受信回路302、バッファ304、パケット誤り検出符号生成回路314、シーケンス番号制御回路308、パケット誤り検出符号比較回路316及び再送制御回路312を有する。シーケンス番号制御回路308は、受信カウンタ305を有する。
以下、図14を用いてパケット受信の処理について説明する。ステップS401において、パケット誤り検出符号生成回路314は、パケット誤り検出符号を生成する。処理はステップS402へ移行する。
ステップS402において、受信回路302は、パケットの末尾がENDであるか否かを判定する。パケットの末尾がENDである場合、処理はステップS403へ移行する。一方、パケットの末尾がENDでない場合、処理はステップS407へ移行する。
ステップS403において、パケット誤り検出符号比較回路316は、ステップS401において生成したパケット誤り検出符号と、受信したパケットの誤り検出符号とが一致するか否かを判定する。生成したパケット誤り検出符号と、受信したパケットのパケット誤り検出符号とが一致する場合、処理はステップS404へ移行する。一方、生成したパケット誤り検出符号と、受信したパケットのパケット誤り検出符号とが一致しない場合、処理はステップS409へ移行する。ステップS409において、バッファ304に格納されたパケットは破棄される。
ステップS404において、パケット誤り検出符号比較回路316は、シーケンス番号制御回路308に、誤り検出符号が一致したことを表す信号を出力する。受信カウンタ305はインクリメントされる。処理はステップS405へ移行する。
ステップS405において、パケット誤り検出符号比較回路316は、正常なパケットを受信したことを表すACKパケットをパケット送信回路200のシーケンス番号制御回路207に送信する。シーケンス番号制御回路207がACKパケットを受信すると、第二送信カウンタ206はインクリメントされる。処理はステップS406へ移行する。
ステップS406において、バッファ304は、ヘッダとデータを出力する。処理は終了する。
続いて、ステップS402からステップS407に移行した場合の処理について説明する。ステップS407において、パケット誤り検出符号比較回路300は、パケット誤り検出符号生成回路314が生成したパケット誤り検出符号と、受信回路302が受信したパケットのパケット誤り検出符号のビット反転とが一致するか否かを判定する。生成したパケット誤り検出符号と、受信したパケット誤り検出符号のビット反転とが一致する場合、受信回路302が受信したパケットは無効パケットであり、処理はステップS408へ移行する。一方、生成したパケット誤り検出符号と、受信したパケット誤り検出符号のビット反転とが一致しない場合、処理はステップS409へ移行する。
ステップS408において、バッファ304に格納された無効パケットは破棄される。処理はステップS410へ移行する。
ステップS410において、パケット誤り検出符号比較回路316は、再送制御回路312にパケットの再送を指示する。再送制御回路312は、パケット誤り検出符号比較回路316からの指示を受け、正常なパケットを受信できなかったことを表すNAKパケットをパケット送信回路200に送信し、パケット再送をパケット送信回路200に要求する。処理は終了する。
(本実施形態の有効性)
図15は、送受信するデータとパケット構造の対応を表す。図15に表すように、パケットは分割したデータのそれぞれにヘッダという情報を付加したデータである。図15に表すパケットでは、ヘッダにはシーケンス番号が含まれている。本実施形態における送受信回路では、送信回路が送信するパケットのシーケンス番号と、受信回路が受信するパケットのシーケンス番号とは一致するように制御されている。そのため、送信回路、受信回路それぞれで管理しているシーケンス番号を用いて誤り検出符号を生成すれば、シーケンス番号をパケットに含めなくても良くなる。ゆえに、送受信回路の通信帯域を有効活用することができる。
以上の説明は、本実施形態をより良く理解させるために具体的に説明したものであって、別形態を制限するものではない。従って、趣旨を変更しない範囲で変更可能である。
ネットワークシステムの構成を表した図である。 ノードの構成を表した図である。 実施例1におけるパケットフォーマットを表した図である。 実施例1における送信回路の構成を表した図である。 実施例1における送信処理を表したフローチャートである。 ヘッダ誤り検出符号の生成方法を表した図である。 実施例1における受信回路の構成を表した図である。 実施例1における受信処理を表したフローチャートである。 ヘッダ誤り検出符号を用いた検査方法を表した図である。 実施例2におけるパケットフォーマットを表した図である。 実施例2における送信回路の構成を表した図である。 実施例2における送信処理を表したフローチャートである。 実施例2における受信回路の構成を表した図である。 実施例2における受信処理を表したフローチャートである。 送受信データとパケット構造との対応を表した図である。
符号の説明
0 ネットワークシステム
10 ノード
12 システム制御部
14 CPU
16 メモリ
18 I/Oインタフェース
20 送受信装置
30 ネットワーク
200 送信回路
202 パケット送信回路
204 ヘッダ誤り検出符号生成回路
205 第一送信カウンタ
206 第二送信カウンタ
207 送信シーケンス番号制御回路
208 パケット誤り検出符号生成回路
300 受信回路
302 パケット受信回路
304 バッファ
306 ヘッダ誤り検出符号生成回路
308 受信シーケンス番号制御回路
310 ヘッダ誤り検出符号比較回路
312 再送制御回路
314 パケット誤り検出符号生成回路
316 パケット誤り検出符号比較回路
400 ネットワークインタフェース回路
500 パケット
502 ヘッダ誤り検出符号
504 ヘッダ
506 データ
508 パケット誤り検出符号

Claims (8)

  1. データを送受信する対象となる他の送受信回路と接続可能な送受信回路において、
    送信するデータの送信順序を示す第1の順序情報を管理する第1の管理部と、送信するデータの一部と前記第1の管理部が管理する第1の順序情報とに基づき、送信するデータの誤りを検出する第1の検出情報を生成する第1の生成部と、生成された第1の検出情報をデータに付加して送信する送信部とを備える送信回路と、
    前記他の送受信回路の送信部から送信されるデータを受信する受信部と、受信したデータの受信順序を示す第2の順序情報を管理する第2の管理部と、受信したデータの一部前記第2の管理部が管理する第2の順序情報に基づき、受信したデータの誤りを検出する第2の検出情報を生成する第2の生成部と、受信したデータに付加された第1の検出情報と前記第2の生成部が生成した第2の検出情報とを比較して、受信したデータの誤りを検出する検出部とを備える受信回路と、
    を有することを特徴とする送受信回路。
  2. 前記検出部は、受信したデータにビット誤りがある場合、受信したデータの誤りを検出することを特徴とする請求項1記載の送受信回路。
  3. 前記検出部は、受信したデータに付加された第1の検出情報に含まれる第1の順序情報と前記第2の管理部が管理する第2の検出情報とが一致しない場合、受信したデータの誤りを検出することを特徴とする請求項1又は2に記載の送受信回路。
  4. 前記検出部は、受信したデータに付加された第1の検出情報に含まれる第1の順序情報にビット誤りがある場合、受信したデータの誤りを検出することを特徴とする請求項1ないし3のいずれか一項に記載の送受信回路。
  5. 前記検出部は、受信したデータの誤りを検出した場合、前記他の送受信回路の送信回路にデータの再送を要求することを特徴とする請求項1ないし4のいずれか1項に記載の送受信回路。
  6. 前記検出部は、受信したデータに付加された第1の検出情報に含まれる、受信したデータのビット誤りを検出する第1のビット誤り検出情報をビット反転した反転ビット誤り検出情報と、前記第2の生成部が生成した第2の検出情報に含まれる、受信したデータのビット誤りを検出する第2のビット誤り情報とが、一致しない場合、前記反転ビット誤り検出情報を含むデータを前記他の送受信回路に送信し、
    前記受信部は、前記反転ビット誤り検出情報に基づき、前記他の送受信回路の送信部から送信されるデータを無効にすることを特徴とする請求項5記載の送受信回路。
  7. データを受信する対象となる送信回路と接続可能な受信回路において、
    前記送信回路の送信部から送信されるデータを受信する受信部と、受信したデータの受信順序を示す順序情報を管理する管理部と、受信したデータの一部と前記管理部が管理する順序情報とに基づき、受信したデータの誤りを検出する検出情報を生成する生成部と、受信したデータに付加された検出情報と前記第2の生成部が生成した検出情報とを比較して、受信したデータの誤りを検出する検出部と
    を備える受信回路
  8. データを送受信する対象となる他の送受信回路と接続可能な送受信回路の制御方法において、
    送信するデータの一部と、送信するデータの送信順序を示す第1の順序情報とに基づき、送信するデータの誤りを検出する第1の検出情報を生成し、
    生成された第1の検出情報データに付加して送信し、
    前記他の送受信回路の送信部から送信されるデータを受信し、
    受信したデータの一部と、受信したデータの受信順序を示す第2の順序情報とに基づき、受信したデータの誤りを検出する第2の検出情報を生成し、
    受信したデータに付加された第1の検出情報と前記生成した第2の検出情報とを比較して、受信したデータの誤りを検出する
    ことを特徴とする送受信回路の制御方法
JP2008170487A 2008-06-30 2008-06-30 送受信回路、受信回路及び送受信回路の制御方法 Active JP4985565B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008170487A JP4985565B2 (ja) 2008-06-30 2008-06-30 送受信回路、受信回路及び送受信回路の制御方法
US12/485,529 US8255560B2 (en) 2008-06-30 2009-06-16 System for transmitting and receiving packets
EP20090163526 EP2141849A3 (en) 2008-06-30 2009-06-23 System for transmitting and receiving packets with an error check code
CN2009101463993A CN101621471B (zh) 2008-06-30 2009-06-26 用于发送和接收分组的系统
KR20090058261A KR20100003227A (ko) 2008-06-30 2009-06-29 송수신 회로, 송신 회로 및 송수신 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008170487A JP4985565B2 (ja) 2008-06-30 2008-06-30 送受信回路、受信回路及び送受信回路の制御方法

Publications (2)

Publication Number Publication Date
JP2010011296A JP2010011296A (ja) 2010-01-14
JP4985565B2 true JP4985565B2 (ja) 2012-07-25

Family

ID=41060009

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008170487A Active JP4985565B2 (ja) 2008-06-30 2008-06-30 送受信回路、受信回路及び送受信回路の制御方法

Country Status (5)

Country Link
US (1) US8255560B2 (ja)
EP (1) EP2141849A3 (ja)
JP (1) JP4985565B2 (ja)
KR (1) KR20100003227A (ja)
CN (1) CN101621471B (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8683095B1 (en) * 2010-06-02 2014-03-25 Marvell International Ltd Packet identification tracker
US9391671B2 (en) * 2011-05-06 2016-07-12 Samsung Electronics Co., Ltd. Wireless power transmission and charging system and method thereof
US8838999B1 (en) 2011-05-17 2014-09-16 Applied Micro Circuits Corporation Cut-through packet stream encryption/decryption
CN102255713B (zh) * 2011-07-24 2013-10-30 哈尔滨工程大学 水声传感器网络的数据包及传输方法
JP2013068105A (ja) 2011-09-21 2013-04-18 Hitachi Automotive Systems Ltd 自動車用電子制御装置
JP5842519B2 (ja) * 2011-09-30 2016-01-13 日本電気株式会社 通信システム、データ送信装置、データ受信装置、パケット再送制御方法、パケット再送制御プログラム
KR101594059B1 (ko) * 2011-12-08 2016-02-26 퀄컴 테크놀로지스, 인크. 정상 데이터 송신과 재시도 데이터 송신 사이에서의 차동 포매팅
CN103188059A (zh) * 2011-12-28 2013-07-03 华为技术有限公司 快速通道互联系统中数据包重传方法、装置和系统
ES2602477T3 (es) * 2012-03-02 2017-02-21 Lsis Co., Ltd. Dispositivo de comunicación y procedimiento de comunicación
KR101639930B1 (ko) * 2012-03-02 2016-07-14 엘에스산전 주식회사 통신 장치 및 통신 방법
JP6050389B2 (ja) * 2012-03-02 2016-12-21 エルエス産電株式会社Lsis Co.,Ltd. 通信装置及び通信方法
US9075736B2 (en) 2013-01-07 2015-07-07 Qualcomm Incorporated Additional error protection for wireless transmission
US9201722B1 (en) * 2014-07-10 2015-12-01 Freescale Semiconductor, Inc. System-on-chip and method for sending data in a system-on-chip
JP5813833B2 (ja) * 2014-07-15 2015-11-17 日立オートモティブシステムズ株式会社 自動車用電子制御装置
US9749448B2 (en) * 2014-11-25 2017-08-29 Intel Corporation Header parity error handling
JP2017063273A (ja) * 2015-09-24 2017-03-30 富士通株式会社 伝送装置及び伝送システム
EP3166246B1 (en) * 2015-11-06 2018-06-20 Fts Computertechnik Gmbh Method to detect and to handle failures in the communication in a computer network
US10791062B1 (en) * 2017-11-14 2020-09-29 Amazon Technologies, Inc. Independent buffer memory for network element
EP3565186B1 (en) * 2018-05-02 2021-06-30 TTTech Computertechnik AG Device and network to reliably communicate in a network

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05336149A (ja) * 1992-05-28 1993-12-17 Nec Corp Atm通信におけるビット誤り/消失セル検出方式
US5953418A (en) * 1995-06-14 1999-09-14 David Hall Providing selective data broadcast receiver addressability
JPH09162873A (ja) * 1995-12-05 1997-06-20 Nippon Telegr & Teleph Corp <Ntt> 誤り検出方法および装置
US6088337A (en) * 1997-10-20 2000-07-11 Motorola, Inc. Method access point device and peripheral for providing space diversity in a time division duplex wireless system
US6754231B1 (en) * 1999-06-18 2004-06-22 Telefonaktiebolaget Lm Ericsson (Publ) Robust header compression in packet communications
CA2335898A1 (en) * 2000-02-14 2001-08-14 Nec Corporation Method and system for transmission and reception of asynchronously multiplexed signals
JP3730835B2 (ja) * 2000-03-03 2006-01-05 株式会社エヌ・ティ・ティ・ドコモ パケット伝送方法、中継装置およびデータ端末
JP4520032B2 (ja) * 2000-08-17 2010-08-04 パナソニック株式会社 ヘッダ圧縮装置およびヘッダ圧縮方法
JP3323484B2 (ja) * 2000-09-12 2002-09-09 松下電器産業株式会社 パケット送信装置、パケット受信装置およびパケット伝送方法
JP2002094553A (ja) * 2000-09-12 2002-03-29 Matsushita Electric Ind Co Ltd パケット伝送装置およびパケット伝送方法
US6931581B1 (en) * 2000-10-25 2005-08-16 Sun Microsystems, Inc. Method for superimposing a sequence number in an error detection code in a data network
US6684363B1 (en) * 2000-10-25 2004-01-27 Sun Microsystems, Inc. Method for detecting errors on parallel links
JP3600189B2 (ja) * 2001-06-19 2004-12-08 松下電器産業株式会社 パケット送受信装置及びパケット伝送方法
US20030066016A1 (en) 2001-09-28 2003-04-03 Eric Wehage Methodology for detecting lost packets
JP4284280B2 (ja) * 2005-01-18 2009-06-24 株式会社東芝 無線通信システムおよび無線送信装置
US20080195912A1 (en) * 2007-02-14 2008-08-14 Nokia Corporation Method of communicatoin

Also Published As

Publication number Publication date
KR20100003227A (ko) 2010-01-07
JP2010011296A (ja) 2010-01-14
US8255560B2 (en) 2012-08-28
EP2141849A3 (en) 2013-12-18
CN101621471A (zh) 2010-01-06
US20090327826A1 (en) 2009-12-31
CN101621471B (zh) 2013-05-08
EP2141849A2 (en) 2010-01-06

Similar Documents

Publication Publication Date Title
JP4985565B2 (ja) 送受信回路、受信回路及び送受信回路の制御方法
US8054752B2 (en) Synchronous data communication
CN103248467B (zh) 基于片内连接管理的rdma通信方法
US20080195912A1 (en) Method of communicatoin
EP2978171B1 (en) Communication method, communication device, and communication program
US10594442B2 (en) End-to-end negative acknowledgment
WO2011046056A1 (ja) パケット通信の伝送制御方法及びパケット通信システム
JP2007174644A (ja) 同期データ通信
JP2013513269A (ja) 信頼性のあるパケットカットスルー
JP2007201878A (ja) 通信システム、通信装置及び通信品質試験方法
US9401775B2 (en) Communication method, information processing apparatus, and recording medium
JP2006087124A (ja) ブロードバンド・エンジンのためのエンベロープ・パケット・アーキテクチュア
CN115777184A (zh) 一种数据重传方法和装置
CN114095117A (zh) 一种以太网错误帧的重传方法及相关装置
WO2016057038A1 (en) A transmitter that does not resend a packet despite receipt of a message to resend the packet
JP2007243447A (ja) パケット送信制御装置
US20110128854A1 (en) Medium access control forwarding protocol
JP2017103734A (ja) 通信装置およびその制御方法、プログラム
JP2002261737A (ja) 送信データ消失検出システム
CN113315601B (zh) 多点协助的数据传输方法、装置、存储介质及电子设备
US20150220384A1 (en) Information processing apparatus, information processing system, and failure detection method
US10938516B1 (en) Systems and methods for ethernet packet error detection and correction in automotive environments
WO2018138672A1 (en) Communication protocol packet retransmission
JP2004349783A (ja) 移動体通信方法及びシステム
Singh et al. Data Link Layer Designing Issues: Error Control-A Roadmap

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120203

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4985565

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3