• digital modulation
    • ビットとシグナルの変換
  • エンコーディング
    • ストリーム内のすべてのビットを正しく認識すること
  • フレーミング
    • パケット境界を正しく認識すること

Baseband transmission

Manchester encoding : マンチェスター符号化

  • クロック信号とデータ信号のXOR
  • クロック
    • ビット周期の前半がハイ、後半がロー
  • それぞれのビットに対して2回の信号変化が必要
    • bandwidth の利用が非効率

NRZ : Non-Return-to-Zero 比ゼロ復帰

  • 論理値が1の場合に送信し、論理値が0の時に送信しない
  • 信号は最大2ビットごとに正と負のレベルの間を循環する可能性がある(1と0が交互になっている場合)。
    • ビットレートがBビット/秒の場合、少なくとも B / 2Hzの帯域幅が必要
  • 連続する 0 bit と アイドル状態 の区別がつかない。
  • 連続する0または1がある場合、受信者は正確にカウントできないことがある。
    • もし受信者のクロックが少し速い(または遅い)場合、送信者の送信した0または1の数と、受信者の認識した0または1の数が異なる。
    • 5つの1が送信者から送られたが、 受信者のクロックが10%早ければ、5.5の単位時間の間1が続いたことになる。
    • 5つの1が送信者から送られたが、 受信者のクロックが20%早ければ、6の単位時間の間1が続いたことになる(6つの1が送信されたことになる)。
    • 正確なクロックがあれば解決できるが、高価なソリューションとなる。

NRZI : NRZ Inverted

  • USB で利用されている。
  • 論理値0の送信時には信号レベルを変化させない、論理値1の送信時には前の状態を反転させる
  • 論理値の変化を最小限にして、信号を複合する回路にクロック情報を提供する
  • 連続する0がある場合、受信者は正確にカウントできないことがある。
    • 1が連続してもNRZのような問題にはならない(本当か?)

4B/5B

16通り のデータ送信パターンと、 6通りの特別なシグナル送信パターンがある。

data pattern
0000 11110
0001 01001
0010 10100
0011 10101
0100 01010
0101 01011
0110 01110
0111 01111
1000 10010
1001 10011
1010 10110
1011 10111
1100 11010
1101 11011
1110 11100
1111 11101
IDLE 11111
HALT 00100
START 10001
END 01101
RESET 00111
DEAD 00000

Framing

  • パケットの終端を見つける方法
    • パケット間ギャップ(イーサネットなど)
    • 4B/5B および 特別なビットパターン
    • ヘッダーに長さフィールドを配置する
      • 原則として機能するが、広く使用されていない。
      • 非同期化後に順序を復元することが難しい場合がある。
  • Point-to-Point Protocol(PPP)(PPPoE - PPP over Ethernet - に使用される)を含む多くのアプリケーションで使用される一般的なリンクレベルのパケット形式
  • 全二重通信方式の通信プロトコル
  • 電装効率と信頼性が高い
  • フレーム単位でデータを伝送し、フレームごとにエラー検出のためのCRCコードをつけて送信する。
  • IBM の SDLCを基本としている。
  • 非同期シリアル回線
    • バイト間で、ある種の開始/停止表示がある回線。
    • 遅くなる傾向がある。
    • バイト 0x7Dをエスケープ文字として使用する。
      • 0x7D および 0x7E のデータバイトは、それらの前に追加の 0x7D を付けることでエスケープされる。
      • 実際には、 0x7D の後に(original_byte xor 0x20)が続くものとして送信される
  • 同期シリアル回線(通常は非同期よりも高速)
    • HDLCは通常ビットスタッフィングを使用します。
  • フレームリレー
    • 通信回線を介して多くのサイトにIPパケットを配信するための低レベルプロトコル。
  • フレーム分離のために2つの方法をサポートしています。
    • 非同期リンクを介したHDLC : バイトスタッフィング
    • 同期リンクを介したHDLC : ビットスタッフィング
  • HDLCパケットの基本的なカプセル化形式
    • 各フレームをバイト0x7E (バイナリで 0111 1110) で開始および終了する。
    • 問題
      • このバイトパターンはがデータでも発生する。