SSRPとは何か - Documents

Simple Single Ring Protocol

Poorな実装のPoorなプログラマによるPoorな環境のためのネットワークプロトコルスタック.

簡単です.シンプルです.制限だらけです.リソース食いません.1,2Kもありゃ作れます.

OSI参照モデル的にはネットワーク層までをカバーします.

物理層

片方向リング型ネットワーク.各ノードがリング状に結線されており,更にデータの流れは一方通行である.

各ノードには受信専用ポートと送信専用ポートがあり,それぞれ1対1で接続されている.

SSRP

例えるなら単線しかない環状線といくつかの駅.

あまりたくさんのノードは繋げられない.遅すぎて実運用で破綻する.ルータ/ゲートウェイのいらないプロトコルだから(全員がゲートウェイ).せいぜい16〜32.

データリンク層

なんでもいい.イーサでもRS-232CでもUSBでも.

ネットワーク層

SSRPアドレス

  • 静的固定アドレス
  • アドレス長は8bit
  • 0は無効なアドレス
  • 0xFFはブロードキャストアドレス

パケット仕様

パケットの構成要素は

  • 送信元アドレス
  • 送信先アドレス
  • コマンド
  • フラグ
  • ホップ数
  • ペイロード長
  • トランザクションID
  • チェックサム
  • ペイロード

ネットワーク構築

自動でリング型ネットワークを認識する.つまり各ノードは自分の前と後ろにどのノードがいるのかを自律的に知ることができる.

ノードの参加/脱退を検知できる.

全ノードがパケットリレー機能を持つ.自ノード宛てではないパケットは送信ポートへリレーする.