バックオフ 【backoff】
イーサネット(Ethernet)では共通の通信回線を複数の機器で共有するが、同時に一つの機器しか信号を送信することはできないため、複数の機器が同じタイミングで送信を開始すると信号の衝突(コリジョン)が発生し、いずれの機器でも送信は中止される。
その後、送信したい機器はランダムな時間だけ待機してから再送信する。一番最初に再送信を開始した機器が送信権を獲得し、他の機器は伝送が終わるまで待って再送信する。この仕組みをCSMA/CDと呼び、機器に送信権を与える制御システムや機器間の交渉メカニズムがなくても整然と回線を共有することができる。
無線LAN(Wi-Fi)では信号の衝突を検知するのが困難なため、前の機器の伝送が終わり送信可能なタイミングになると、各機器はランダムな時間だけ待ってから送信する。この仕組みをCSMA/CAと呼び、送信開始のタイミングがなるべく重ならないようにする。
通信規格以外でも、例えばサーバの処理が失敗してクライアントが処理要求を再送信する場合などにもバックオフの仕組みが用いられることがある。何度も繰り返し失敗する場合に、失敗するごとに次の再試行(リトライ)までの待機時間を指数関数的に増やす方式を「指数バックオフ」という。2の累乗を用いる場合、1回目は1秒後、2回目は2秒後、3回目は4秒後…といった具合に上限値まで指数的に待機秒数を増やしていく。
(2023.10.15更新)