鳥類キャリアによるIP(ちょうるいキャリアによるアイピー、英: IP over Avian Carriers, IPoAC)は、伝書鳩などを使ってInternet Protocol のデータ通信を行う伝送規格である。
これは1990年のエイプリルフールにRFC 1149として発表されたジョークRFCである。 また、文書内には Avian とあるだけで明確に伝書鳩と定めてはいない。
概要
最初に鳥類キャリアによるIPに関しての規格文書が発表されたのは1990年4月1日に発表された RFC 1149 "A Standard for the Transmission of IP Datagrams on Avian Carriers"(鳥類キャリアによるIPデータグラムの伝送規格)である。この文書はわずか2ページの短い文書であるが、随所に通信用語と日常用語の重なる部分を織り交ぜて書かれている。
例を挙げると
- 早春期以外ではキャリアはお互いにそれほど干渉することがない。
- このキャリアは通信データの衝突を自動で回避するため可用性が高い
- ワームを自動で発見及び除去する機能が組み込まれている
など。
さらに1999年のエイプリルフールに発表された RFC 2549 "IP over Avian Carriers with Quality of Service"(鳥類キャリアによるIPのサービス品質)は、この通信にQoSを規定するという内容である(1990年との違いとして、Linuxの普及を背景としたペンギンのジョークや、キャリアの鳥を描いたアスキーアートも入っている)。
2011年4月1日には、RFC 6214 " Adaptation of RFC1149 for IPv6"(RFC1149のIPv6対応について)が発表され、RFC1149をIPv6に対応するために、さまざまな観点から考察が行われている(新たに発見されたウイルスの脅威など)。
プロトコル詳細
この伝送規格では、以下のような手順でIPデータグラムが送信される。
- 伝送すべき IP データグラムを、小さな巻物型の紙に16進数で印字する。
- その小さな巻物を鳥類キャリアの肢に巻き付け、データグラムの端をテープで止める。
受信側は、以下の手順を実行する。
- 鳥類キャリアの肢のデータグラムからテープを取り除く。
- 巻物に書き写されたデータグラムを光学的に読み取り、電子転送ができるようにする。
実装例
2001年4月28日にノルウェーの BLUG(Bergen Linux User Group)と Vesta Pigeon Racing Club によって、このプロトコルがCPIP(Carrier Pigeon Internet Protocol)という名前で実装された。
約5キロメートル離れた通信先に送信された(つまり伝書鳩よって運ばれた)9つのパケットにはそれぞれ1つの Ping(ICMPエコー要求)が含まれていた。
9パケットの要求に対して、4つの応答が受信された。 実際には、6羽の鳩が帰ってきたが、そのうち2羽にはIPパケットがなかった。これは反対側のオペレータが忙しかったため、IPパケットを付ける前に、鳩がゲージから逃げてしまったためであった。
最終的なパケット損失率は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
また、本プロトコルによる実装ではないが、2009年9月9日、南アフリカのIT企業は伝書鳩によるデータ伝送を行った。結果、生後11ヶ月の鳩Winstonは80km先の地点へ4GBのデータを転送するのに2時間6分57秒を要した(データを取り出す時間を含む)。この間、インターネットを経由した通信はその4%を転送するにとどまったという。
関連RFC
この文書はジョーク系RFCの中でも比較的人気があり、しばしば他のRFC文書に引用されている。
例えば1998年のエイプリルフールに発表された同じジョーク系のRFCである RFC 2322(洗濯ばさみ DHCP による IPアドレスの管理)では遠隔地の通信には鳥類キャリアを使用するということが記述されている。
また RFC文書の書き方を説明しているRFC 2223(RFCの書き方)の付録でnroffのマクロを説明する際のサンプル文書として RFC1149 が登場する。
その他、以下の RFC などで直接的、あるいは間接的に言及されている。
- 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日)
脚注
関連項目
- 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。https://books.google.co.jp/books?id=c7vvz1H-04YC&pg=PA1#v=onepage&q&f=false。
- Elizabeth D. Zwicky『ファイアーウォール構築 1』齋藤衛, 歌代和正、オライリー・ジャパン、2002年、88頁。ISBN 9784873111117。https://books.google.co.jp/books?id=CJIzg7n8fc8C&pg=PA88#v=onepage&q&f=false。
- Tara Calishain『Google Hacks』山名早人、オライリー・ジャパン、2003年、334頁。ISBN 9784873111360。https://books.google.co.jp/books?id=824AJhLU52IC&pg=PA334#v=onepage&q&f=false。
- Peter Frick、Gerard Bourbigot、Frank Vandewiele「第 1 章 アーキテクチャー、ヒストリー、標準、および傾向」『TCP/IP チュートリアルおよび技術解説書』、日本アイ・ビー・エム株式会社、2003年、23頁。
- 坂本直志「クライアント/サーバー演習」『ネットワークシステム研究室』、東京電機大学、2009年、49頁。
- あきみち、空閑洋平『インターネットのカタチもろさが織り成す粘り強い世界』オーム社、2011年、123頁。ISBN 9784274068249。https://books.google.co.jp/books?id=JUadnwndHEgC&pg=PA123#v=onepage&q&f=false。
- 佐藤哲司「RFCについて-Joke RFCを通じてRFCの理解を深める-」『海技教育機構論文集』第8巻、海技教育機構、2020年、31-36頁、doi:10.34486/jmetsjournal.8.0_31、ISSN 2435-6557、NAID 40022231309。 p.4 より




