Pythonで動かしながら学ぶ コンピュータネットワーク

Pythonで動かしながら学ぶ コンピュータネットワーク

パイソンデウゴカシナガラマナブ コンピュータネットワーク

★さあ、基本を徹底的に体感しよう!★

著者が独自開発したシミュレータを使って、コンピュータネットワークの挙動をPythonで学ぼう!
スイッチング、ルーティング、TCPのハンドシェイク、輻輳制御、TLSハンドシェイクが、この一冊でわかる!

本書の特徴は大きく3つあります。

1. Pythonで動かしながら学べる
OSI参照モデルやTCP/IPといった基盤技術を、単なる文章の解説ではなく、提示されたサンプルをベースに自らコーディングしながら学びます。ノードやリンク、パケットなどのクラスを自分で拡張するうちに、プロトコルの仕組みや挙動を体感できます。

2. シンプルなシミュレータだから、理解しやすい
既存の高機能シミュレータは便利な反面、設定の複雑さやライセンス費用が初学者には障壁でした。そこで、機能を絞り、極力シンプルな設計とすることで、初学者にも理解しやすいシミュレータを開発しました。ノード、リンク、パケットという3つのクラスを軸に、スイッチング、ルーティング、TCPのハンドシェイク、輻輳制御、さらにはTLSハンドシェイクまで段階的に追加していきます。

3. 学習環境の整備が簡単
Google Colabを利用するので、ブラウザさえあればOSの違いを意識せずに学習を始められます。もちろん、複数台の物理デバイスや複雑なネットワーク設定も必要ありません。

【サポートサイト】
https://www.conecolab.com

【主な内容】
0章 ネットワークの基礎知識
1章 コンピュータネットワークの基本要素
2章 ネットワークと時間
3章 スイッチとMACアドレス
4章 MACアドレス学習とループ回避
5章 IPパケットとフラグメント
6章 ルーティングプロトコル
7章 レイヤとカプセル化
8章 アドレスの問い合わせ
9章 IPアドレスの配布と変換
10章 コネクションと信頼性
11章 確認応答と再送制御
12章 輻輳とウィンドウ制御
13章 待ち行列と通信品質
14章 アプリケーションとデータ転送
15章 暗号化と鍵交換


  • 前巻
  • 次巻

オンライン書店で購入する

目次

第0章 ネットワークの基礎知識
0.1 コンピュータとネットワークの発展
0.2 プロトコルとは
0.3 通信の種類
0.4 MACアドレスとIPアドレス
0.5 代表的なネットワーク機器

第1章 コンピュータネットワークの基本要素
1.1 ノード
1.2 リンク
1.3 パケット
1.4 パケット転送
1.5 可視化
演習課題

第2章 ネットワークと時間
2.1 時間の重要性
2.2 Packetクラスの改良
2.3 Linkクラスの改良
2.4 Nodeクラスの改良
2.5 実装まとめ
2.6 シミュレーションの実行
演習課題

第3章 スイッチとMACアドレス
3.1 ローカルネットワークとは
3.2 スイッチ
3.3 MACアドレス
演習課題

第4章 MACアドレス学習とループ回避
4.1 フォワーディングテーブルの更新
4.2 スパニングツリープロトコル(STP)
演習課題

第5章 IPパケットとフラグメント
5.1 インターネットとIP
5.2 ネットワークアドレスとサブネットマスク
5.3 ルータ
演習課題

第6章 ルーティングプロトコル
6.1 ルーティングプロトコルとは
6.2 OSPF
6.3 LSA
6.4 最短経路の計算
演習課題

第7章 レイヤとカプセル化
7.1 レイヤとアドレス
7.2 カプセル化
演習課題

第8章 アドレスの問い合わせ
8.1 ARPによるMACアドレス解決
8.2 DNSによるIPアドレスの問い合わせ
演習課題

第9章 IPアドレスの配布と変換
9.1 DHCPによるIPアドレスの配布
9.2 NAT
演習課題

第10章 コネクションと信頼性
10.1 コネクション型とコネクションレス型
10.2 UDPによるコネクションレス型通信
10.3 TCPによるコネクション型通信
演習課題

第11章 確認応答と再送制御
11.1 確認応答とシーケンス番号
11.2 再送制御
演習課題

第12章 輻輳とウィンドウ制御
12.1 ウィンドウ制御
12.2 高速回復(Fast Recovery)
演習課題

第13章 待ち行列と通信品質
13.1 待ち行列
13.2 FIFO (First In First Out)
13.3 ラウンドロビン
13.4 優先制御
演習課題

第14章 アプリケーションとデータ転送
14.1 アプリケーション層
14.2 FTP
14.3 FTPの動作確認
14.4 HTTP
演習課題

第15章 暗号化と鍵交換
15.1 暗号化
15.2 SSL/TLS
15.3 HTTPS
演習課題

書誌情報

紙版

発売日

2025年07月17日

ISBN

9784065402092

判型

B5

価格

定価:4,180円(本体3,800円)

ページ数

368ページ

著者紹介

著: 中山 悠(ナカヤマ ユウ)

2008年東京大学大学院新領域創成科学研究科修士課程修了。同年日本電信電話株式会社入社。2018年東京大学大学院情報理工学系研究科博士課程修了。博士(情報理工学)。2019年より、東京農工大学工学研究院准教授。 モバイルコンピューティング、低遅延ネットワーク、IoTなどの研究に取り組む。特定非営利活動法人neko 9 Laboratories理事長。2022年より株式会社Flyby代表取締役、2024年より株式会社UMINeCo代表取締役も兼務し、大学発技術の社会実装に取り組む。 著書に、『TCP技術入門』『TCP/IP技術入門』(ともに技術評論社)、『よくわかるIoTデータ転送技術』(森北出版)がある。

オンライン書店一覧

関連シリーズ

BACK
NEXT