name: orientation class: title, smokescreen, shelf, no-footer # コンピュータネットワーク(2025)<br><small>第01回 はじめに</small> <div class=footnote> <small><small> Copyright (C) Ken'ichi Fukamachi <fukachan@fml.org>, 2021-2025. CC BY-NC-SA 4.0 </small></small> </div> --- class: compact # オリエンテーションのお品書き <div class=footnote> <small><small> </small></small> </div> <small> 1. 自己紹介 1. キャリア論 - なぜITインフラが分かるべきか? - 1. ITインフラ演習科目群における本科目の位置づけ 1. なぜITインフラは難しそうに見えるのか? 1. 本科目の詳細 - 目的,目標 - シリーズ構成 - 各回の取り組み方 1. 用語 1. 演習のイメージを実演・紹介 - 前半のグループワーク(第6回の予定)を実演します - 後半については、TA/SAさんが例を紹介します 1. 目標設定&アンケート入力 - これが本日の出席がわりです - 全体を半分ずつ2グループに分けて、デモの見学を交互に行います。 <br> デモを見ていないグループは、これらを入力してください。 </small> --- class: compact,img-right # 自己紹介 <div class=footnote> <small><small> (脚注1) 半分は、 <A HREF="https://speakerdeck.com/fmlorg/sierutoperlnoshi-ifen-ke-souitutasi-kao-nodao-ju-ha-dokokaralai-te-dokoheyukunoka-v1-dot-1-0?slide=4"> YAPC::Hakodate 2024 </A> の使いまわし:-) <br> (脚注2) 授業のバックエンド側もGo言語です。 <B>6月になったら有志あつめてGo言語勉強会でもしようかな?Perlで正規表現もどう?</B> <br> (脚注3) 推しのアニメ製作会社は富山県のP.A.Worksです。祝25周年。 <br> あと(会社ちがうけど)、演出:山田尚子・脚本:吉田玲子コンビなら、 見てなくても円盤デフォルト買いでOKと思う今日この頃 <br> (脚注4) 専門は北海道グルメと温泉ですよね?とか言われたりしますが(w)... まぁいいけど:-) </small></small> </div>   <small> - **フリーソフトウエア(== Perl)歴 > 30年** - **ソースコード > 20万行?** -> [github](https://github.com/fmlorg/) - 書籍、技術雑誌 > 100万文字くらい? - 本来の専門は理論物理学ですが、インターネットの方が楽しい(業界あるあるですね?) - 東京工業大学 -> IIJ(日本初ISP) -> (私立)千歳科学技術大学 -> 公立千歳科学技術大学 - 環境: NetBSD, Debian, Chromebook - 言語: とくいなのは(古代の(w))Perl、 よく使う言語はPerlとシェル、 <B>研究室はGo言語</B> </small> --- class: compact # キャリア論 - なぜITインフラが分かるべきか? - <div class=footnote> <small><small> (脚注1) ITインフラはサイバースペースの「水、電気、ガス、石油、道路」です。 非定番のものを作るにはITインフラの操作も必須 <br> (脚注2) <B>現在および近未来におけるアメリカで求人意欲が高い職種</B>は次のとおりで、 これらの職種では、特定の専門知識やスキルが求められています。 日本は数周おくれでアメリカの追っかけをしているので、妥当な推測でしょう。 なお、ソフトウエアエンジニアは(生成AIの高機能化により)求人の減少が見こまれています <br> <B> (1) ソフトウエアエンジニア (2) データサイエンティスト (3) クラウドエンジニア (4) サイバーセキュリティアナリスト </B> <br> (脚注3) qiita に私見をまとめてあります、興味のある方は、ぜひ読んでくださいね -> <A HREF="https://qiita.com/fmlorg/items/e41a72daa0413f0d47f6">こちら</A> </small></small> </div> 1. **すべてのシステムの根幹/裏側にはITインフラストラクチャがある**から 1. ITシステムの基盤を理解し、**設計・構築・運用できる人材への市場ニーズが高い**ため 1. キャリアの選択肢を広げ、より専門性の高い分野へのステップアップをめざすため --- class: compact # なぜITインフラは難しそうに見えるのか? <div class=footnote> <small><small> </small></small> </div> 1. 専門用語の多さ <br> -> 演習に必要なものだけをやります (リカバリは大学院の授業でやります) 2. 抽象的な概念の理解 <br> -> 主要な2,3の概念を集中的にやります 3. 実践的なスキルの習得の難しさ <br> -> だから3年生のITインフラ科目では主に手を動かします! --- class: compact,img-right # ITインフラ演習科目群における本科目の位置づけ <div class=footnote> <small><small> (脚注) 科目(1)(3)に「知識編」とありますが、 演習に必要な知識を少し(スライド数枚)講義するだけです。 <br> これらの授業は基本情報処理試験の範囲ですら全然カバーしていません。 <b>知識編は大学院の授業でリカバリ</b>を行います </small></small> </div>  <small> - 科目(1) ... コンピュータネットワーク - 科目(2) ... 情報システム開発基礎演習(#01〜06) - 科目(3) ... クラウドコンピューティング(秋) - 科目(2)は体験でしかないので、秋学期に、もうすこし本気のシステム構築をやります </small> --- class: compact # 本科目の目的・目標 <div class=footnote> <small><small> (脚注) 基礎は<b>大学院の授業でリカバリ</b>を行います </small></small> </div> - 目的 ... コンピュータネットワーク(TCP/IP)の基礎の基礎の習得 - 目標 1. ネットワークの(基礎の基礎の)知識の習得 1. 実務(ネットワークの調査)を通じて「(上述の)知識」の実感を得る 1. 実務(システム構築の提案)を通じて「(上述の)知識」の理解を深める <br> (応用・活用) --- class: compact # 本科目のシリーズ構成(1) <div class=footnote> <small><small> (脚注1) 特記事項のない回はZOOMです <br> (脚注2) 前半が(高校の)"情報1"の発展版、後半は"情報2"の発展版に相当すると考えられます </small></small> </div> 1. 演習(02-08) ... (基礎)知識編(個人戦) - 反転学習で基礎知識を予習 - ELで予習した知識を確認 - 演習: 「ネットワークを探索し、その構成図を書く」演習を通じて知識を確認 - 体験: 第6回はグループワークをやります(H101、第1回のデモは第6回の予告相当) 2. 演習(09-15) ... 設計編(個人戦+団体戦) - 大学のネットワークをネタに「ネットワーク設計と提案」をしてもらいます - 具体的な提案を考える回はグループワークです。第15回に発表会(H101)を予定 3. 期末試験(EL)も行います - 内容は主に前半(知識編)が対象です --- class: compact,col-2 # 本科目のシリーズ構成(2):前半 <div class=footnote> <small><small> (脚注) 探索する環境(右図)は大学のミニチュア、これをリバースエンジニアリングしていきます </small></small> </div> <small>  - 前半で探検する物理NW(学内) <wbr>  - 少しずつネットワークを調べて、こういう図を書いていきます </small> --- class: compact,img-right # 本科目のシリーズ構成(3):後半 <div class=footnote> <small><small> (脚注1) ITインフラの資格試験授業なら多数ありますけどね <br> (脚注2) <B>知るかぎり他に、こういう授業はないです。そもそもITインフラの授業自体がありません</B> 唯一、 <b>スタンフォード大学の software ??? enginieering という演習科目が似ています</B>。 これは元エンジニアの人がおこなっている演習科目で、 (SIerぽい本演習よりも)ベンチャー企業の立ち上げに近い内容らしいです。 シリコンバレーのスタンフォードらしい授業ですよね? </small></small> </div>  - 後半の「ネットワーク設計と提案」は、グループで取り組むアイデアソンみたいなものですが - 提案書には見積もり(お金の計算)をつけてください。 原価表あります:-) - 楽しく提案してもらえればOK --- class: compact # 本科目(#2-#14)の取り組み方/来週以降むけの諸注意 <div class=footnote> <small><small> (脚注1) プログラミング演習でおなじみの予習してきてね(flipped classroom)方式です。 <br> (脚注2) きちんと予習・復習をしていれば半分くらいの時間で終わる感じ、 昼ご飯へどうぞ </small></small> </div> - 予習をしてきてください - スライド数枚、動画あり (N回目の授業の際に、N+1回目の用意をしておきます) - 予習スライドは次回の添付資料欄(例:4/14分は授業の第2回)を見てください - 授業時間の構成 1. ELで確認テストをします(2〜5分) 1. スライドの要点を解説します(ふりかえります) 1. 演習の説明 1. 演習(例題) ... (例題がある場合)例題は一緒に手を動かします 1. 演習(課題) - 課題レポートの提出もしくはTA/SAによる確認 - 各回(a)ELと(b)課題の提出で課題点(これが出席点相当)を累積していきます --- class: compact # 本日の課題 <div class=footnote> <small><small> (脚注) 本日の課題は、この2つだけです </small></small> </div> 1. ポータルの授業ページで「目標設定」をしてください。 1. アンケートに回答してください <b> 【注意】 全体を2グループに分けて、1グループずつデモを見せます。 デモを見ていないグループは、目標設定とアンケート記述を行ってください。 </b> --- name: demo class: title, smokescreen, shelf, no-footer # 事例紹介とデモ --- class: compact # 演習のイメージ <div class=footnote> <small><small> </small></small> </div> 1. 最低限の用語を説明します 1. 後半の設計編については、TA/SAさんが過去の例を紹介します 1. 前半のグループワークについて、TA/SAさんが実演します - 詳細は分からなくてOK。イメージを見てもらうためのデモです - デモの見学は半分ずつ行います。 見学しないグループは、目標設定とアンケートをやってください。 - 三々五々解散です --- name: terms class: compact # 用語: LAN、パケット、ルーティング、IPアドレス <div class=footnote> <small><small> (脚注) これらを、おいおいやっていくので、後日、これらの用語が再登場します </small></small> </div> <small> - LAN(発音:らん) ... Local Area Network - ネットワークを流れるデジタルデータは<B>小さな小包</B>群になっています - この小包のことを<B>パケット</B>と呼びます("小さな包"は英語でpacket) - パケットは郵便や宅配便の配送のように輸送されていきます(-> デモ) - <B>ルーティング(経路選択)</B> ... 輸送経路上の分岐点で「どちらに行くか」を判断すること - IPアドレス(発音:あいぴーあどれす) ... IP Address - <B>コンピュータを識別する</B>ために数字を振っています。 この数字を<B>IPアドレス</B>と呼んでいます - 住所がないと互いに区別できないので、 コンピュータにも住所をつけると考えてください - 数字の長さは<B>32ビット(4バイト</B> = 4オクテット) - コンピュータは2進数で動いているため、2進数のほうが都合が良いのですが、 人間には辛いので、 <B>「数字を4分割し、ドット(`.`)くぎりの10進数4つ」</B>で表現しています (そういう"お約束") ``` [AWS EC2の例] 172.31.0.4 (10進数) 10101100 00011111 00000000 00000100 (2進数で表示すると) ``` </small> --- class: compact,col-2 # イメージ: パケット、ルーティング <div class=footnote> <small><small> (脚注) イメージだけなので分からなくてOK、おいおいやっていきます </small></small> </div>     <small><small> データを多数の小包に分割,伝票をつけ発送(到着後,再合成) </small></small> <wbr>  <small><small> 異なるLANをつなぐ機器が行う「どちらの経路を選ぶか?」がルーティング(経路制御)です。 サイバースペースの中でやっていることは郵便や宅急便の配送と同様です </small></small> --- class: compact,col-3 # 参考文献 <div class=footnote> <small><small> (脚注) あと、キャリア論については qiita に私見をまとめてあります、興味のある方は、ぜひ読んでくださいね -> <A HREF="https://qiita.com/fmlorg/items/e41a72daa0413f0d47f6">こちら</A> </small></small> </div> <small><small> [](https://distribution.techbooks.fml.org/) 月曜日の授業に特化したコマンドリファレンス「厳選UNIXコマンド 第2版」を紙とPDF両方で配布しています [[pdf]](https://distribution.techbooks.fml.org/selected-unix-commands.2.0.0.pdf) [](https://lpic-2024q2.demo.fml.org/) 月曜日の授業のダイジェストになっているWebinar (Youtube動画とスライド)のまとめサイト [[スライド]](https://speakerdeck.com/fmlorg/burauzanohutawokai-ketehttpti-yan-siyou-20240608v1-dot-0-0) [[動画]](https://www.youtube.com/watch?v=y84Asag9O1o) [](https://yapc-hakodate-2024.lectures.fml.org/) コンピュータ開発史とキャリア論(2024-10, YAPC::Hakodate 2024講演)のまとめサイト [[スライド]](https://speakerdeck.com/fmlorg/sierutoperlnoshi-ifen-ke-souitutasi-kao-nodao-ju-ha-dokokaralai-te-dokoheyukunoka-v1-dot-1-0) </small></small>