大学院での授業-コンピュータとネットワークCOM00147M

授業雑感

お次のセメスターではコンピュータとネットワークだった。
いわゆるOSI層別に掘り下げて説明し、そこにモバイルネットワークの話や暗号理論の話が加わる内容だった。


授業で使用した教科書はこの本
タイトルはA TOP-DOWN APPROACHというやつでOSIのL7からL2にかけてネットワークのプロトコルや関連アルゴリズムを掘り下げていくスタイルだった。
個人的にこの教科書もすごく良本だったと言える。アナロジーを混ぜてわかりやすく説明しながら、本質的な部分をこれでもかというぐらい掘り下げてくれる。


この授業で感じたのはネットワークというものは(計算機科学的にはもっと合理的にできるはずなのに)、
人間の社会的、あるいは経済的都合により割と変な仕様が多いということである。


例えばDNSサーバーは分散型のデータベースとして世界中に拡散させているが、分散仕様にしてしまうと色々なDNSを辿らないと目的地点まで辿り着けない。
DNSのレコードは確かに一箇所にまとめれば膨大な数にはなるけど、今のクラウド技術だったらマスタデータそのものを分散させる必要ないんじゃない?とか。


他には有名なIPv4からIPv6への移行遅延問題とか。
この話も後方互換性がいかに大事かを痛感したし、それはソフトウェアのOSS開発にも言える。


授業の中盤になるとL2のビットエラーと検出方法についての話になった。
ビットエラーの検出理論は普段あまり触れない部分ではあったが、コンピュータがバイナリデータでの誤りを検出する際のCRCアルゴリズムとかは非常に興味深かった。


そして後半は暗号やセキュリティ関連の話だった。
素因数分解の複雑さを狙ったRSAやSSL通信、共通鍵と公開鍵の話などかなり実用的な話題であった。


授業では出なかったが、教科書ではオートマン理論とネットワークプログラミングの話とかもあり、知らなかったことも色々知れて全体的にはとても良かったと思う。

Back To Top