あらすじ
5G(第5世代移動通信)、IoT(Internet of Things)、自動運転をはじめ、ネットワークにまつわるサービスは飛躍的な発展を遂げつつあります。通信の高速化、端末の爆発的な増加、クラウドによる遠隔送受信をはじめとした大きな変化のなか、通信の信頼性とその効率性を担うTCPの存在感が増してきました。
本書では、TCPの「今」に主眼を置き、TCP/IPの基礎からTCPの主要機能、歴史、プロトコル設計、最近のLinuxで主要なアルゴリズムCUBIC、新しく登場したBBR、そして各種応用技術の最新動向まで平易に解説。合わせて、いまや欠かせない無線通信を想定している点も特徴です。押さえておきたいツールWiresharkやns-3による解析やシミュレーションの基本も丁寧にカバー。広く初学者の方々に向けて具体例を豊富に盛り込み、現場で役立つ技術基礎を平易に解き明かしていきます。
感情タグBEST3
Posted by ブクログ
入門と銘打っているが、半分ぐらい輻輳制御アルゴリズムの解説をしているなかなかクレイジーな本。でも解説の仕方がいいのか、不思議とわかりやすい。
輻輳制御アルゴリズムとは、TCP通信で輻輳(通信量過多)が発生しないよう、データ送信量を決める重要なパラメータの1つ輻輳ウィンドウサイズ(cwnd)の算出方法を指す。
輻輳制御アルゴリズムは多数提案・実装されており、輻輳を避けつつネットワークのパフォーマンスを向上するという目的を達成するため、「スロースタート」「輻輳回避」「高速リカバリー」などの機能を持つ。
これらを実現するためには輻輳の検出が必要となるが、その検出方法としておおまかに下記の3つのタイプに分類することができる。
・パケットロスを輻輳と判断するLoss-based
・RTTの増加を輻輳と判断するDelay-based
・パケットロスとRTTを複合的に見て輻輳と判断するHybrid
本書では、詳しさにばらつきはあるが、なんと計15個の輻輳制御アルゴリズムが紹介されている。
また単に数式を並べるだけでなく、それぞれのアルゴリズムが提案された背景と、利点欠点をあげ、さらにネットワークシミュレータns-3とプロトコルアナライザWiresharkを使って輻輳ウィンドウがどのように遷移するかを実験しているため、とてもおもしろい。
ネットワークの特性上必要となる、古いアルゴリズムと共存するための工夫なども紹介されていて大変興味深い。
本書で紹介されている中で最も新しいBBRという輻輳制御アルゴリズムはGoogleが2016年9月に提案したということで、まだ発展中の分野であることがよくわかる。
最終章では、ネットワーク技術の最近の動向にも言及している。
・5Gに絡めたマルチパスTCPの紹介
・IoT関連でTFO(TCP Fast Open)
・データセンタ向けのDCTCP
・自動運転関連でMEC(Multi-access Edge Computing)