RFCを読んでみよう
2000.2/14
インターネットの技術と切っても切れないものに、RFCがあります。Request For Commentsの略で、TCP/IPなどの、通信プロトコル上の基幹技術は、この ドキュメントが基準になっています。私は、もともとTCP/IP関連の 開発作業に携わることが多い(現在もそう)のですが、特に1998、9年は、 実際にプロトコルスタック(TCP/IPそのものの制御ソフト)の開発に かかわる作業を行いましたので、 このRFCを英語の原文で千数百ページ分読むことになりました。 そして、一般の人たちにとっても、これを読んでみることは非常に価値のある ことだとわかったのです。そこで、RFCの特徴を紹介し、興味のある 人に読んでもらおうと思い、この記事を書きました。
RFCとは、いわば技術標準の規格書のような位置づけですが、 一般のスタンダード・ドキュメントとはいくつかの大きな違いがあります。
まず、RFCという名が表すように、一つの提案として提示されているもので、 その規格や技法について、広く意見を世界に求めているという、グローバルネット ワークとオープンの象徴といっていいスタンスを取っています。とはいえ、 その執筆メンバはそうそうたるもので、通信関係の超一流の技術者たちです。 そして、その提示する規格は、広く通信のバイブルといっていい世界標準です。
ドキュメントや章により、執筆者が異なるため、すべてがそうだとは断言 できませんが、一般にRFCの文章はユーモアがあり、企画書としては 冗長かも知れませんが、非常に具体的で、分かりやすく書いてあります。仕事柄、 こうした技術資料を読むことは多いのですが、和英を問わず、概して非常に 難解です。それに比較すると、非常に親切です。規格そのものだけでなく、 そうした手法の概念や、問題点、改善方法まで書かれています。 時間と少しの英語力があれば、 高価なTCP/IPの技術解説書を読むよりもよく理解できるかも知れません。 いや、事実、分厚くていかにも賢そうな技術解説書が、実はRFC の単なる抜粋に、多少の図や付加情報を加えただけのものである、という パターンを、私はいくつか知っています。
英語表現についても、概して平易です。先日、神戸の女子大生に頼まれ、 医学か生物学か何かの英語論文を少し訳してみたのですが、まずその単語の 難解さに驚きました。かなり大型の辞書を図書館から借りてきていたのですが、 それでも類語すら該当するものがない単語がぞろぞろ出てくるのです。 さらに、その構文のむずかしさたるや、もはや芸術的、並みの大学生の 英語力の及ぶところではありません(苦心惨憺の誤訳をみるのはそれなりに 楽しめますが)。
RFCではさらに、そうしたプロトコルやレイヤを実装するための要領にまで 言及している部分も多くあります。レイヤ間のインタフェースの具体例や、 管理テーブルまで記載しているものもあります。プログラミングのできる 人なら、なおのこと理解が深まること請け合いです。
特に、機能としては複雑で難解と言えるTCPについては、具体的に 状態遷移が記述されていますが、この、テキストで書かれた(つまり 例えば箱や矢印を表現するのでも、
+------+ | Recv |<---> ((Data)) +------+
みたいな書き方をしている)図が、そのままテキストで、いろいろな マニュアルや技術資料に引用されるほどなのです。
ただし、実際にこれを使ってプロトコルスタックやサーバを作る場合には、 注意も必要です。特に日進月歩の通信技術においては、古いものは内容が 廃れていくことがよくあります。また、たまに記述の単純な間違いもあります。 そうしたものは、新しいRFCで、逐次指摘・修正されていますが、 あるRFC単体でみたときは、それがわからない場合があります。 ですから、関連のプロトコルの記載事項は、最新のものから探して、 要修正部分を押さえておくことが必要です。
次の機会には、文章の実例や、おすすめRFCナンバーを紹介したいと思います。
技術者のにっき帳・インデックス
メール
i-doi@mbd.nifty.com
Back Home