class: title, smokescreen, shelf, no-footer # 2025年度向け研究室配属説明会 <div class=footnote> <small><small> 2024-06-17版, もう少し詳細は <A HREF="/labo/">[こちら]</A> </small></small> </div> --- name: index class: compact # テーマ一覧 <div class=footnote> <small><small> 2-2 と 2-3 は「片足うち、もう片足は別の研究室」の典型です </small></small> </div> <small> 1. ネットワーク運用(Network Operation) - 1-1. サイト信頼性工学 (SRE; Site Reliability Engineering) - 1-2. プロトコル自体の評価や修正(*, 2-1とペア) 2. Unix/Linux オペレーティングシステム(OS) - 2-1. OS自体の開発・修正(*, 1-2とペア) - 2-2. ITインフラストラクチャの学習方法 ... ここは色々) - 2-3. Unixデバイスと何か(センサー, デバイスの操作, et.al.) - 例: MRとITインフラ学習法、MR+センサー、 3. その他 (塩漬け案件 or いいんです自分でチマチマやるから(やってるヒマが無い)) - 3-1. Unixデバイス + オープンデータ + 位置情報システム (塩漬け中) - 3-2. インターネットの起源 [人文科学] (卒論くらいならいけるかも:-) - 3-3. フリーソフトウエアの作成、配布、啓蒙運動 </small> --- class: img-right,compact # テーマ一覧(の別の見方) <div class=footnote> <small><small> (脚注) 古典芸能みたいなもんだから、 国で保護してほしいよね、おれたち(?) </small></small> </div> ![](https://3.bp.blogspot.com/-ILkZ1nAh9eQ/V-aHZIg0k0I/AAAAAAAA-Es/q09hUSNm57M3YHX7OoLqVr4atA6CE6GgwCLcB/s400/japan_ningyou_joururi.png) <small> 1. ガチで**運用**上の問題&疑問の調査・解決 - オペレーティングシステムとコンピュータネットワーク 1. どうやったら伝わるのかよく分からない orz - 典型例: **ITインフラ学習法** 1. Unixデバイスの応用 - MR + Unix <br> (現実世界とのデータや設定のやりとり) 1. (番外編) </small> --- class: title, smokescreen, shelf, no-footer # テーマ例 <div class=footnote> <small><small> テーマ出現順とは順番を入れ替えて、身近な順にしてみやう </small></small> </div> --- name: infra-training class: compact # 2-2. インフラ学習法の問題 <div class=footnote> <small><small> (脚注) ちなみに、世界的にも、ITインフラは、やってる人も教える人も少ないらしい。 資格試験のコースなら、そこらじゅうでやっているわけですけど、 それは古典的な「座学」とか「正解をおぼえて高速検索ゲーム(受験勉強がとくいな人)」の世界だよね </small></small> </div> <small> 1. 我々には**「生徒/学生は何が分からないのか」分からない**問題;-) - 熟練のエンジニアが直感で正解を見つける思考プロセスを説明できない (将棋の強い人みたいなもんではないかね?) -> ここは年齢が近い世代(当事者)に期待です 1. 「受講者側の頭の中が教える側の想定と違う」にまつわる2、3のMy仮説を研究 - 片足 => 外国語習得法(言語学)、認知心理学、(あと、行動経済学とか進化生物学?) - <b>Cognitive Learning / Education</b> 1. いろいろな方法をためしている、なう - まずは演習自体を支援できる -> 支援システム(Colitas)の開発と運用 - 次、演習自体の理解レベルをあげる(これをするには上の 2. と関連があるはず) - ITインフラ特有の教育手法や教える内容の最適化? <br> (うち汎用的な理論の探求はしてないですね、ITインフラ特有でよい) </small> --- class: compact,img-right # 2-3. Unixデバイスと何かの連携 <div class=footnote> <small><small> (脚注) でも、写真(右)はテーマ 3-1 でしたわ :-) センサーの写真が見つからなかったのね </small></small> </div> ![width240px](images/IMG_20230713_084727_990.jpg) ![width240px](images/device_02.jpg) - サイバースペース内でWifi APを設定すると、現実空間のWifi APを設定できる - Hollolens2 -> Azure -> Unix -> Wifi AP - 設定する業務用機器(Cisco,右図) - センサーとしてUnixデバイスを使う <br> -> データをHollolensへフィードバック - (いま考え中) --- class: compact # 1-1. ネットワーク運用 (SRE) <div class=footnote> <small><small> (脚注1) SRE = サイト信頼性工学、Googleの考えたカッコいい単語 (脚注2) この10年くらいは、 SREエンジニアのギャラが一番高いです。20万ドルくらいだよね? すごくオールラウンドな知識と技術が要求されているので、当然ですよね? </small></small> </div> <small> - 可用性(Availability, 24時間うごいていること)は当たり前ですが、それは最低ライン - サーバやデバイスの生死監視は商用インターネット初期からやってます - <B>お客様が正常に利用できる</B>ことが勝利条件 - そもそも「正常」とは何か(計測可能なもの)を定義せよ? - ここは経営と似ています。経営用語の KGI や KPI です - 例: アクセスの95%以上、サイトのレスポンスが < 200ms - 計測、統計処理、システムの状態の推定、必要なら対応 - 計測はサーバ側だけでなくユーザ側のシュミレーションも行います(むしろユーザがメイン) - backend, frontend, 統計, 経営センスなど(技術でもない)フルスタックな感じ - 現在の対象 = 支援システム Colitas の SRE、ゆくゆくは大学の運用も SRE 化したいわね </small> --- class: compact,img-right # 1-2,2-1. ネットワーク運用と Unix/Linux開発 <div class=footnote> <small><small> (脚注) 最後、これUnix Kernelとかに手を出さないといけないので、 4年生では難しいんじゃ ... </small></small> </div> ![width240px](images/quic-ieice-do2022_01.png) ![width240px](images/quic-ieice-do2022_02.png) <small> - 新しいものを使うことは良いことだ!とも限らない。 HTTP/3は、システム運用上、本当にメリットがあるのか? - メリットとデメリット? -> モバイル向けの利点あり。 でも、すごく負荷も高い - これはプロトコルの問題?実装のバグ? - まだ開発途上なだけ?修正できる? </small> --- class: compact # うちの世界観 <div class=footnote> <small><small> (脚注1)使い方とか資格の典型例: AWS, CCNA, IPAの〜情報処理試験のたぐい (脚注2)「資格あっても使えね〜から意味なし」が現場の意見よ。 最新機器はマニュアルどおりに動かないもんだし、 それを手なづけるには...やっぱり場数ではないですかね? </small></small> </div> <small> - 10,20,30年後も技術者として食べていくには? ``` △ 使い方,資格 (<- 世界中で大量生産中, 差別化できない, 新卒時に役立つことはあるだろうけれど) ◎ 動作原理( 裏側 )が分かる ``` - 差別化の一つとして 「**ITインフラストラクチャ**」; をいかがですか?という営業 - 好きな人、興味がある人、**修行**したい人を募集 (単にキャリアパス=就職のためなら、おことわり) - **コマンドライン操作とテキスト設定ファイルに抵抗がない**ことは最低ラインです - 総合格闘技みたい? ... ITインフラは様々な技術の合わせ技です。 つぎつぎと新しい技術を勉強できてうれしいと思ってほしいな (重要:新しいことを勉強したくない = エンジニア職に向いていません) - 時間に余裕のある学生時代こそ基礎をやるべきだと思う </small> </small> --- class: compact # おまけ情報(?) <div class=footnote> <small><small> </small></small> </div> 1. なにかシステムを作るのが卒論なの? <small> - そんなことはないです(そういう先入観だかプロパガンダが流れてる?) - (a)〜が問題だとおもう -> (b)解決策として〜を提案する -> (c)実験(&&評価)してみた - **(b)のところが手法だったりもするし、ITシステムの構築とは限らない** </small> 1. ただ、**どうしても4年生は、なにかしら構築して評価して...にナリガチです** <small> - 結局のところ修行の**時間が少なすぎるんです** - ITインフラは(プログラミングみたいに、さんざん授業があったりしないし)、 3年生に突然はじまる。また、 小学校〜大学前半の授業と不連続なので、 ?の人には??のままかなぁ </small> 1. 大学院組は、もうちょっと、じっくり作る時間がとれますけど... <small> - 【基礎体力の向上】 「分散オペレーティングシステム」の教科書を読む会でもやるか? > 来年のM1 </small> --- class: title, smokescreen, shelf, no-footer # 付録: 2024年度向けのスライド <div class=footnote> <small><small> </small></small> </div> --- class: img-right,compact # 【インフラ学習法】イメージ集(1) <div class=footnote> <small><small> (脚注) これがMR案件っす。現在このシステムを鋭意制作中 </small></small> </div> ![width240px](images/IMG_20230713_084727_990.jpg) ![width240px](https://3.bp.blogspot.com/-Qgaed374Dcs/VtlMwoqu74I/AAAAAAAA4VU/JNzq8TSeQ-4/s550/ar_kakuchou_genjitsu.png) - 仮想空間内からネットワーク機器を設定 - この例の機器はwifi APです - ユーザに、好きなSSIDとパスワードを入力してもらいます - とうぜんプロ用機材を使います (こんなの考えるの日本でうちらだけ?) - 現実のネットワーク機器が設定され - スマートフォンから、自分が設定したSSID経由でインターネットが見られる --- class: img-right,compact # 【インフラ学習法】イメージ集(2) <div class=footnote> <small><small> (脚注1) <b> ゲーム製作がメインではありません。 イラスト屋さんもフロントエンドもお呼びでないです </b> <br> (脚注2) サーバ構築やコマンドライン操作が普通にできることは前提で、 バックエンド側の話。 どうやれば学習しやすいか?の検討の中にゲーム要素があるだけ (脚注3) 極論ボードゲームでもいい (このほうが価格的にスケールアウトしやすいのは確か) よい例として「人狼」(セキュリティ分野のボードゲーム,技術より組織とか運用論が中核) </small></small> </div> ![width240px](https://2.bp.blogspot.com/-LOKh2m-Vgnc/Wb8gZmtDGdI/AAAAAAABGxY/FZi1wVoCHxYjt7TUvT5kpRVYQJdgVEWgACLcBGAs/s400/kanban_gaikokujin_question.png) ![width240px](https://4.bp.blogspot.com/-jqk1XWDvedE/Vozicrf_VrI/AAAAAAAA2vQ/jbOAjtUD6rM/s450/shinkansen_game.png) - Unix操作法の学習は、 言語学でいう第2言語習得論(SLAで、 いわば第2外国語の習得みたいなもんだと思うんだよね - ゲーム世代にはゲームがいいのかもしれない(脚注も参照) - どれがいいのか?を検討するにも基礎データが必要で、演習環境から、それを何とかして収集するには?とかいう、よいバックエンド側の作業も必要です --- name: operation class: compact # 【運用】 <div class=footnote> <small><small> (脚注) 祝?(1983/01/01の)TCP/IP切り替えから40周年! いいかげん捨てよう、この古いプロトコル </small></small> </div> - 新しい技術を運用してもよいのか?を検討・評価 - HTTP/3 とは?そのメリット・デメリット? 運用する価値はある? - そもそも検討するべきデータを集めておく(今できてない) - SRE = Site Reliability Engineering/サイト信頼性工学 (Googleの考えたかっこいい用語) - その前準備として「データ収集基盤のモダンな構築方法」を検討・構築・評価 - BMaaS (自動的に拡張するインフラ基盤) - 大規模データの保存/検索/取得 - モダンなシステムなんだからコンテナベースだよな - 他ユーザが研究で使えるサービスとしての設計と実装と準備 - 例; データをストリーム処理できるようにしておく (自分で使いたいわけでは無いですが, 機械学習の人が利用しやすい準備はしておく) --- class: compact # 実験の様子 (2022年度) <div class=footnote> <small><small> (文献) 土田 and 深町「HTTP/3 がシステム運用に与える影響の評価」(令和4年度 IEICE北海道支部学生会インターネットシンポジウム, 2023/03)より表3,4および図2 </small></small> </div> ![width320px](images/quic-ieice-do2022_01.png) ![width320px](images/quic-ieice-do2022_02.png) ![width320px](images/IMG_20230713_084808_800.jpg) - QUICの実験機材自体は意外と小さいですね:-) 設計も構築も1から --- name: quic class: compact # HTTP/3 の何を検討しているのか? (詳細) <div class=footnote> <small><small> (脚注) もう少し詳しい解説は <A HREF="/slides/columns/proj/network/">[こちら]</A> を参照。 </small></small> </div> <small> - 確実な転送を行うプロトコル(トランスポート層) - TCP/IPは低品質のネットワークでは使われ続けるだろうけれど - 高品質ネットワークやモバイルでは逆に足を引っ張っている - **UDPのQUICベースへの切り替え** - HTTP/3は現在20%くらい? - その他のプロトコルもQUICベースの提案(RFC)が続々と... - HTTP/3 (2022年度の卒論をふまえて)の暫定的結論 - (他の例も、世界的にも、少ししかないので、本当かしら?...だれか続き求む) - **確かに少し速いけど、すごく重たい** - 自分のサーバで使う理由はなさそうだけど、 **スマートフォンサポートを考えるなら使うべき** - 次期ポータルはHTTP/3対応しないのかね? - nginx正式サポート(先月?)、lightspeedは?など未検証シリーズ - プロファイリング; **重たい理由(関数)をつきとめ、改良 (たぶん卒論では時間がなさすぎて無理)** - やっぱりUDPが最適化されていないからのような気がする - ユーザランドで行っている QUIC の処理をカーネルへ移動させれば、かなりマシ(?) - つまり今 Google Chrome が行っている転送処理の本体をOSへ移動 </small> --- class: title, smokescreen, shelf, no-footer # 番外編 <div class=footnote> <small> 以下、省略 </small> </div> --- class: compact # インターネット文化の継承 - フリーソフトウエア運動 - われわれの道具は、どうやって今の形になるのか? --- class: img-right,compact # 安全性を考慮した自転車ナビの開発 <div class=footnote> <small> (脚注1) もう少し詳しい解説は <A HREF="/slides/columns/proj/bike-navi-in-city-center/">[こちら]</A> を参照 (脚注2) インターネットの原動力とは何だったのか? TCP/IPではなく、 フリーソフトウエア(オープンソース)文化とWeb上に展開される同人誌文化(? 劣化版をSNSとか呼ぶ?) (脚注3) 最後はGTFS拡張でGoogleが統合してくれるとありがたいけどな〜 (脚注4) <B>親が開発局勤務の方いませんか?</B> </small> </div> - 基本はドラえもん駆動開発「**こんなこといいな、できたらいいな**」 - 社会的要請とか、そんなことは考えなくてok - 自分ひとりが欲しいと思うアプリでも世の中には同士が30人くらいはいるもんさ。 もしかしたら300万人かもしれない。 そうやってリリースされたアプリのうち万に1つオオアタリするかも。 それを後世の歴史家が**Innovation**と呼ぶことがある <br> (Innovation事業/戦略/政策とか頭の悪い用語にダマされてはいけない) - Googleとかnavitimeに自転車用naviというのがあるけれど欲しいものとは違うの - 安全性ファクタを考慮したnaviをしてほしい。車と違い生身なので;-)安全重視。 なお郊外では道の選択肢がないので自動車用と同じでいいですが、 都市部では違う案内をしてほしい。なおTODOは次のとおりです - **データの分析**をしてほしい:**(a)超音波センサ、(b)道警の事故データ** - アプリ開発;**音声合成でnavi**してほしい(走行中に画面は見られない)