鳥類キャリアによるIP (IPoAC)とは
鳥類キャリアによるIP(IP over Avian Carriers, IPoAC)は、
伝書鳩などの鳥類を通信媒体として利用する、
インターネットプロトコル(IP)のデータ通信規格です。
1990年4月1日にRFC 1149として発表された
ジョークRFCであり、
エイプリルフールのユーモアあふれる企画として登場しました。文書内では「Avian」(鳥類)としか言及されておらず、具体的に
伝書鳩に限定されているわけではありません。
概要
IPoACの最初の規格文書であるRFC 1149「A Standard for the Transmission of IP Datagrams on Avian Carriers」は、わずか2ページの短い文書ながら、通信用語と日常用語を巧みに織り交ぜて書かれています。例えば、「早春期以外ではキャリア(鳥)はお互いに干渉しない」「キャリアは通信データの衝突を自動で回避する」「ワームを自動で発見・除去する機能がある」といったユニークな記述が見られます。
1999年の
エイプリルフールには、RFC 2549「IP over Avian Carriers with
Quality of Service」が発表され、IPoACにサービス品質(QoS)の概念が導入されました。この文書には、
Linuxの普及を背景としたペンギンのジョークや、キャリアである鳥の
アスキーアートも含まれています。さらに、2011年
4月1日には、RFC 6214「Adaptation of RFC 1149 for
IPv6」が発表され、IPoACを
IPv6に対応させるための考察が行われました。ここでは、新たに発見されたウイルスの脅威などが議論されています。
プロトコル詳細
IPoACにおけるIPデータグラムの送信手順は以下の通りです。
1. 送信するIPデータグラムを、小さな巻物状の紙に16進数で印字します。
2. その巻物を鳥類キャリアの肢に巻き付け、テープで固定します。
受信側では、以下の手順でデータを受信します。
1. 鳥類キャリアの肢からテープを剥がし、データグラムを取り出します。
2. 巻物に印字されたデータグラムを光学的に読み取り、電子的なデータ形式に変換します。
2001年4月28日、
ノルウェーのBLUG(Bergen
Linux User Group)とVesta Pigeon Racing Clubが、IPoACをCPIP(Carrier Pigeon
Internet Protocol)という名前で
実装しました。この実験では、約5km離れた場所に、
伝書鳩を使ってPing(ICMPエコー要求)を含む9つの
パケットを送信しました。その結果、4つの応答が受信されました。実験には6羽の鳩が使われましたが、2羽は
パケットなしで帰還しました。これは、受信側のオペレータが忙しかったため、
パケットを付ける前に鳩が逃げてしまったことが原因でした。
この実験での
パケット損失率は55%(オペレータのミスを含む)、応答時間は約3000秒(50分)から約6000秒(100分)でした。BLUGはこの
実装を成功とみなし、相互運用性テストのための別
実装を待っています。以下は、
実装実験時のpingのログです。
Script started on Sat Apr 28 11:24:09 2001
vegard@gyversalen:~$ /sbin/ifconfig tun0
tun0 Link encap:Point-to-Point Protocol
inet addr:10.0.3.2 P-t-P:10.0.3.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:150 Metric:1
RX packets:1 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0
RX bytes:88 (88.0 b) TX bytes:168 (168.0 b)
vegard@gyversalen:~$ ping -i 900 10.0.3.1
PING 10.0.3.1 (10.0.3.1): 56 data bytes
64 bytes from 10.0.3.1: icmp_seq=0 ttl=255 time=6165731.1 ms
64 bytes from 10.0.3.1: icmp_seq=4 ttl=255 time=3211900.8 ms
64 bytes from 10.0.3.1: icmp_seq=2 ttl=255 time=5124922.8 ms
64 bytes from 10.0.3.1: icmp_seq=1 ttl=255 time=6388671.9 ms
- 10.0.3.1 ping statistics -
9 packets transmitted, 4 packets received, 55% packet loss
round-trip min/avg/max = 3211900.8/5222806.6/6388671.9 ms
vegard@gyversalen:~$ exit
Script done on Sat Apr 28 14:14:28 2001
IPoACの
実装例ではありませんが、
2009年9月9日には南アフリカのIT企業が
伝書鳩によるデータ伝送を行い、11ヶ月の鳩Winstonが80km先の地点へ4GBのデータを2時間6分57秒で転送しました。これは、同時期に
インターネット経由で転送されたデータの4%にあたるデータ量でした。
関連RFC
IPoAC関連のRFCは、
ジョークRFCの中でも人気が高く、他のRFC文書に頻繁に引用されています。例えば、
1998年の
エイプリルフールに発表されたRFC 2322(洗濯ばさみDHCPによるIPアドレスの管理)では、遠隔地との通信に鳥類キャリアが利用されています。
また、RFC文書の書き方を説明するRFC 2223の付録では、nroffマクロのサンプルとしてRFC 1149が登場しています。
その他、以下のRFC文書でもIPoACに直接的または間接的に言及しています。
RFC 2321 "RITA -- The Reliable Internetwork Troubleshooting Agent" (1998年4月1日)
RFC 4041 "Requirements for Morality Sections in Routing Area Drafts" (2005年
4月1日)
RFC 6217 "Regional Broadcast Using an Atmospheric Link Layer" (2011年4月1日)
RFC 7511 "Scenic Routing for
IPv6" (2015年
4月1日)
RFC 8140 "The Arte of ASCII: Or, An True and Accurate Representation of an Menagerie of Thynges Fabulous and Wonderful in Ye Forme of Character" (2017年4月1日)
RFC 9225 "Software Defects Considered Harmful" (2022年
4月1日)
脚注
本記事では、RFCに記載された情報を基にIPoACの概要を説明しました。
関連項目
Hyper Text Coffee Pot Control Protocol (RFC 2324)
Hyper Text Coffee Pot Control Protocol for Tea Efflux Appliances (RFC 7168)
洗濯ばさみ-DHCPによるIPアドレス管理 (RFC 2322)
悪意ビット (RFC 3514)
西暦10000年問題 (RFC 2550)
手旗信号システムによるIP伝送 (RFC 4824)
音響伝送メディアによるIP伝送 (RFC 1926)
スニーカーネット
外部リンク
RFC 1149 "Standard for the transmission of IP datagrams on Avian Carriers" (1990年4月1日)
和訳 - ウェイバックマシン(2000年10月30日アーカイブ分)
RFC 2549 "IP over Avian Carriers with Quality of Service" (1999年4月1日)
RFC 6214 "Adaptation of RFC 1149 for IPv6" (2011年
4月1日)
Bergen Linux User Group's CPIC (実装実験の記録、英語)
参考文献
野坂昌己『
インターネット標準クイックリファレンス』オライリー・ジャパン、
1999年、1頁。
ISBN 9784900900882。
Elizabeth D. Zwicky『ファイアーウォール構築 1』齋藤衛, 歌代和正、オライリー・ジャパン、2002年、88頁。ISBN 9784873111117。
Tara Calishain『Google Hacks』山名早人、オライリー・ジャパン、2003年、334頁。
ISBN 9784873111360。
Peter Frick、Gerard Bourbigot、Frank Vandewiele「第 1 章 アーキテクチャー、ヒストリー、標準、および傾向」『TCP/IP チュートリアルおよび技術解説書』、日本アイ・ビー・エム株式会社、2003年、23頁。
坂本直志「クライアント/サーバー演習」『ネットワークシステム研究室』、
東京電機大学、
2009年、49頁。
あきみち、空閑洋平『インターネットのカタチもろさが織り成す粘り強い世界』オーム社、2011年、123頁。ISBN 9784274068249。
佐藤哲司「RFCについて-Joke RFCを通じてRFCの理解を深める-」『
海技教育機構論文集』第8巻、
海技教育機構、2020年、31-36頁、doi:10.34486/jmetsjournal.8.0_31、
ISSN 2435-6557、NAID 40022231309。