「Stop-and-wait ARQ」の版間の差分

提供: tezos-wiki
移動先: 案内検索
(1版 をインポートしました)
 
1行目: 1行目:
'''Stop-and-wait ARQ''', also referred to as [[alternating bit protocol]], is a method in [[telecommunications]] to send information between two connected devices. It ensures that information is not lost due to dropped packets and that packets are received in the correct order. It is the simplest [[automatic repeat-request]] (ARQ) mechanism. A stop-and-wait ARQ sender sends one [[frame (telecommunications)|frame]] at a time; it is a special case of the general [[sliding window protocol]] with transmit and receive window sizes equal to one and greater than one respectively. After sending each frame, the sender doesn't send any further frames until it receives an [[acknowledgement (data networks)|acknowledgement]] (ACK) signal. After receiving a valid frame, the receiver sends an ACK. If the ACK does not reach the sender before a certain time, known as the timeout, the sender sends the same frame again.
+
''ストップアンドウェイトARQ ''[[交互ビットプロトコル]]とも呼ばれ、2つの接続されたデバイス間で情報を送信する[[電気通信]]方法です。これは、パケットが欠落したために情報が失われないこと、およびパケットが正しい順序で受信されることを保証します。それは最も簡単な[自動反復要求](ARQ)メカニズムです。 stop-and-wait ARQ送信者は一度に1つの[[frame(telecommunications)|フレーム]]を送信します。送信ウィンドウサイズと受信ウィンドウサイズがそれぞれ1と1より大きい一般的な[スライディングウィンドウプロトコル]の特殊なケースです。各フレームを送信した後、送信者は[[確認応答(データネットワーク)|確認応答]](ACK)信号を受信するまで、それ以上フレームを送信しません。有効なフレームを受信した後、受信機はACKを送信する。タイムアウトと呼ばれる一定時間前にACKが送信者に届かない場合、送信者は同じフレームを再度送信します。
The timeout countdown is reset after each frame transmission. The above behavior is a basic example of Stop-and-Wait. However, real-life implementations vary to address certain issues of design.
+
タイムアウトカウントダウンは、フレーム送信ごとにリセットされます。上記の動作は、Stop-and-Waitの基本的な例です。しかし、現実の実装は、設計の特定の問題に対処するためにさまざまです。
  
Typically the transmitter adds a [[redundancy check]] number to the end of each frame. The receiver uses the redundancy check number to check for possible damage. If the receiver sees that the frame is good, it sends an ACK. If the receiver sees that the frame is damaged, the receiver discards it and does not send an ACK—pretending that the frame was completely lost, not merely damaged.
+
典型的には、トランスミッタは各フレームの最後に[[redundancy check]]番号を追加します。受信機は冗長検査番号を使用して損傷の可能性があるかどうかを確認します。受信側がフレームが良好であると判断した場合、ACKを送信します。受信機がフレームが破損していると判断した場合、受信機はフレームを破棄し、フレームが完全に失われたことを偽ったACKを送信しません。
  
One problem is when the ACK sent by the receiver is damaged or lost. In this case, the sender doesn't receive the ACK, times out, and sends the frame again. Now the receiver has two copies of the same frame, and doesn't know if the second one is a duplicate frame or the next frame of the sequence carrying identical data.
+
1つの問題は、受信側によって送信されたACKが破損または紛失した場合です。この場合、送信側はACKを受信せず、タイムアウトし、フレームを再度送信します。受信機は同じフレームの2つのコピーを有し、第2のものが同じデータを運ぶシーケンスの複製フレームまたは次のフレームであるかどうかを知らない。
  
Another problem is when the transmission medium has such a long [[latency (engineering)|latency]] that the sender's timeout runs out before the frame reaches the receiver. In this case the sender resends the same packet. Eventually the receiver gets two copies of the same frame, and sends an ACK for each one. The sender, waiting for a single ACK, receives two ACKs, which may cause problems if it assumes that the second ACK is for the next frame in the sequence.
+
別の問題は、送信媒体が受信機に到達する前に送信機のタイムアウトが切れるような長い[[レイテンシ(技術)|レイテンシ]]を有する場合である。この場合、送信側は同じパケットを再送します。最終的に、受信者は同じフレームの2つのコピーを取得し、それぞれに対してACKを送信します。単一のACKを待っている送信者は、2つ目のACKがシーケンス内の次のフレームのものであると仮定すると問題を引き起こす2つのACKを受信します。
  
To avoid these problems, the most common solution is to define a 1 bit ''sequence number'' in the header of the frame. This sequence number alternates (from 0 to 1) in subsequent frames. When the receiver sends an ACK, it includes the sequence number of the next packet it expects. This way, the receiver can detect duplicated frames by checking if the frame sequence numbers alternate. If two subsequent frames have the same sequence number, they are duplicates, and the second frame is discarded. Similarly, if two subsequent ACKs reference the same sequence number, they are acknowledging the same frame.
+
これらの問題を回避するために、最も一般的な解決策は、フレームのヘッダーに1ビットのシーケンス番号を定義することです。このシーケンス番号は、後続のフレームで交互に(0から1に)なります。受信機がACKを送るとき、それはそれが期待している次のパケットのシーケンス番号を含んでいます。このようにして、受信機は、フレームシーケンス番号が交互であるかどうかをチェックすることによって重複フレームを検出することができる。 2つの後続フレームが同じシーケンス番号を有する場合、それらは重複し、第2のフレームは破棄される。同様に、2つの後続のACKが同じシーケンス番号を参照する場合、それらは同じフレームを確認応答している。
  
Stop-and-wait ARQ is inefficient compared to other ARQs, because the time between packets, if the ACK and the data are received successfully, is twice the transit time (assuming the turnaround time can be zero). The throughput on the channel is a fraction of what it could be. To solve this problem, one can send more than one packet at a time with a larger sequence number and use one ACK for a set. This is what is done in [[Go-Back-N ARQ]] and the [[Selective Repeat ARQ]].
+
ストップアンドウェイトARQは、ACKとデータが正常に受信された場合、パケット間の時間がトランジット時間の2倍(ターンアラウンドタイムがゼロになることが想定される)であるため、他のARQに比べて非効率的です。チャネル上のスループットは、できるだけ小さいものです。この問題を解決するために、一度に複数のパケットをより大きなシーケンス番号で送信し、セットに対して1つのACKを使用することができます。これは[Go-Back-N ARQ][[Selective Repeat ARQ]]で行われます。
  
==See also==
+
==関連項目==
*[[Alternating bit protocol]]
+
* [[交互ビットプロトコル]]
  
==Source==
+
==ソース==
  
 
[http://wikipedia.org/ http://wikipedia.org/]
 
[http://wikipedia.org/ http://wikipedia.org/]

2018年4月13日 (金) 13:08時点における最新版

ストップアンドウェイトARQ 交互ビットプロトコルとも呼ばれ、2つの接続されたデバイス間で情報を送信する電気通信方法です。これは、パケットが欠落したために情報が失われないこと、およびパケットが正しい順序で受信されることを保証します。それは最も簡単な[自動反復要求](ARQ)メカニズムです。 stop-and-wait ARQ送信者は一度に1つのフレームを送信します。送信ウィンドウサイズと受信ウィンドウサイズがそれぞれ1と1より大きい一般的な[スライディングウィンドウプロトコル]の特殊なケースです。各フレームを送信した後、送信者は確認応答(ACK)信号を受信するまで、それ以上フレームを送信しません。有効なフレームを受信した後、受信機はACKを送信する。タイムアウトと呼ばれる一定時間前にACKが送信者に届かない場合、送信者は同じフレームを再度送信します。 タイムアウトカウントダウンは、フレーム送信ごとにリセットされます。上記の動作は、Stop-and-Waitの基本的な例です。しかし、現実の実装は、設計の特定の問題に対処するためにさまざまです。

典型的には、トランスミッタは各フレームの最後にredundancy check番号を追加します。受信機は冗長検査番号を使用して損傷の可能性があるかどうかを確認します。受信側がフレームが良好であると判断した場合、ACKを送信します。受信機がフレームが破損していると判断した場合、受信機はフレームを破棄し、フレームが完全に失われたことを偽ったACKを送信しません。

1つの問題は、受信側によって送信されたACKが破損または紛失した場合です。この場合、送信側はACKを受信せず、タイムアウトし、フレームを再度送信します。受信機は同じフレームの2つのコピーを有し、第2のものが同じデータを運ぶシーケンスの複製フレームまたは次のフレームであるかどうかを知らない。

別の問題は、送信媒体が受信機に到達する前に送信機のタイムアウトが切れるような長いレイテンシを有する場合である。この場合、送信側は同じパケットを再送します。最終的に、受信者は同じフレームの2つのコピーを取得し、それぞれに対してACKを送信します。単一のACKを待っている送信者は、2つ目のACKがシーケンス内の次のフレームのものであると仮定すると問題を引き起こす2つのACKを受信します。

これらの問題を回避するために、最も一般的な解決策は、フレームのヘッダーに1ビットのシーケンス番号を定義することです。このシーケンス番号は、後続のフレームで交互に(0から1に)なります。受信機がACKを送るとき、それはそれが期待している次のパケットのシーケンス番号を含んでいます。このようにして、受信機は、フレームシーケンス番号が交互であるかどうかをチェックすることによって重複フレームを検出することができる。 2つの後続フレームが同じシーケンス番号を有する場合、それらは重複し、第2のフレームは破棄される。同様に、2つの後続のACKが同じシーケンス番号を参照する場合、それらは同じフレームを確認応答している。

ストップアンドウェイトARQは、ACKとデータが正常に受信された場合、パケット間の時間がトランジット時間の2倍(ターンアラウンドタイムがゼロになることが想定される)であるため、他のARQに比べて非効率的です。チャネル上のスループットは、できるだけ小さいものです。この問題を解決するために、一度に複数のパケットをより大きなシーケンス番号で送信し、セットに対して1つのACKを使用することができます。これは[Go-Back-N ARQ]とSelective Repeat ARQで行われます。

関連項目[編集]

ソース[編集]

http://wikipedia.org/