Network Hub
| Address | Name | Buffer | Command | Destination |
|---|---|---|---|---|
| 0 | hub | wait | ||
| 1 | node 1 | hello world | send | 2 |
| 2 | node 2 | listen | 0 | |
| 3 | node 3 | Do you recognize me? | send | 1 |
| 4 | node 4 | CQ CQ | send | 3 |
| 5 | node 5 | Loop back | send | 5 |
クロストークのデッドロック対策
ハブもノードもアドレスの奇数と偶数で送信専用・受信専用に分けて、2アドレスずつ占有する。それでも、クロストークのデッドロックは回避できそうで回避できない。なぜなら、ハブで送信と受信のバッファをスワップする必要があるのだが、そのタイミングがシビアでハブ自身にはわからないから。初めから全てのパケットの順序が完璧にわかっていれば、完璧なタイミングで問題なく送受信できるだろう。ノンブロッキングのハブなんて夢のまた夢だ。
Blocking Hub
Non-Blocking Hub (arrows from odd numbers to even numbers are the bundle which is functioning in the hub)