ネットワークコンピューティング実習

URL

講義ページ
https://lsnl.jp/l/netcompx

講義ページ (複数ページ版 (モバイル端末向け))
https://lsnl.jp/~ohsaki/lecture/netcompx/2024/toc.html

受講者専用ページのパスワード (以下のページに書かれています) (関西学院システム利用者 ID が必要です)
http://ist.ksc.kwansei.ac.jp/~ohsaki/lecture/netcompx/2024/

[授業開始時に提出] 出席確認フォーム (パスワードが必要です)
https://lsnl.jp/app/lecture/attend/show/netcompx

[授業中に使用] クリッカー (パスワードが必要です)
https://lsnl.jp/app/lecture/clicker/show/netcompx

[授業中に提出] リフレクションシート (パスワードが必要です)
https://lsnl.jp/app/lecture/refl/show/netcompx

[自習後に提出] レポート送信フォーム (パスワードが必要です)
https://lsnl.jp/app/lecture/report/show/netcompx

講義ビデオ (パスワードが必要です)
https://lsnl.jp/video/netcompx/2024/

連絡用メイリングリスト (教員 + TA に届きます)
netcompx-staff[atmark]lsnl.jp
本文には、必ず学生番号・氏名・メールアドレス (@kwansei.ac.jp のもの) を明記してください。

担当教員

大崎 博之
関西学院大学 工学部 情報工学課程
E-mail: netcompx-staff[atmark]lsnl.jp

TA (ティーチングアシスタント)

江見 太一 M2 (大崎研)
稲吉 蓮 M1 (大崎研)
E-mail: netcompx-staff[atmark]lsnl.jp

ネットワークに関する疑問

Q1. インターネットを使えば、 メールしたり、 会話したり、 買物したり、 何でもできるのではないだろうか? 今のインターネットにできないことはあるだろうか? もしあるとすれはそれは何だろうか? できない理由は何だろうか?

Q2. 今、 ネットワーク研究の最先端では、 どんなネットワークが研究されているのだろうか? 新しいネットワークとはどのようなものだろうか? そのしくみはどうなっているのだろうか?

Q3. 新しいネットワークや、 その上でのネットワークサービスは、 どうやって生まれているのだろうか? 誰が、 どういう方法で生み出しているのだろうか? ハードウェア (端末、 デバイス) やソフトウェア (通信プロトコル、 アプリケーション) を毎回試作するのだろうか?

Q4. 新しいネットワークの研究に私も参加できるだろうか? 参加するためにはどんな知識や技術が必要だろうか? これまでに理工学部で学んだ内容は役に立つのだろうか? 中学や高校で学んだ基礎は役に立たないだろうか?

Q5. コンピュータシミュレーションとは何だろうか? どういうしくみで動くのだろうか? コンピュータシミュレーションで何がわかるのだろうか? また何がわからないのだろうか? それはなぜだろうか?

講義目的: 到達目標

講義目的: クラウドコンピューティング、 新しいネットワークアーキテクチャ、 新しいネットワークサービスなど、 ネットワーキングとコンピューティングの融合によって実現される「ネットワークコンピューティング」の基礎を、 実習によって深く理解する。

到達目標: 簡単なネットワークコンピューティング環境を構築、 実装、 テストできるようになる。

授業方法

講義およびコンピュータを用いた演習

成績評価

平常レポート

スケジュール

2024/ 9/25 Debian GNU/Linux セットアップ
2024/10/ 2 UNIX (UNIX とは、ユーザ権限、パッケージ管理)
2024/10/ 9 Debian GNU/Linux セットアップ〜パッケージ管理
2024/10/16 シェル (ファイル操作、リダイレクト、パイプ)
2024/10/23 X ウィンドウシステム & ウィンドウマネージャ
2024/10/30 エディタ (Emacs チュートリアル)
2024/11/ 6 シミュレータ導入 (インストール、実行、可視化)
2024/11/13 Python 言語 (1) (名前、変数、式)
2024/11/20 Python 言語 (2) (文、スコープ、サブルーチン)
2024/11/27 Python 言語 (3) (オブジェクト指向プログラミング)
2024/12/ 4 シミュレータ解説 (1) (概要、エージェント)
2024/12/11 シミュレータ解説 (2) (モビリティ、可視化)       
2024/12/18 ソフトウェア設計・実装 (1)
2024/ 1/ 8 ソフトウェア設計・実装 (2)

大学の講義・演習とは

 教育基本法
 https://elaws.e-gov.go.jp/document?lawid=418AC0000000120
 
 (学校教育)
 第六条の 2
 前項の学校においては、教育の目標が達成されるよう、教育を受ける者の心身
 の発達に応じて、体系的な教育が組織的に行われなければならない。この場合
 において、教育を受ける者が、学校生活を営む上で必要な規律を重んずるとと
 もに、自ら進んで学習に取り組む意欲を高めることを重視して行われなければ
 ならない。
 
 (大学)
 第七条
 大学は、学術の中心として、高い教養と専門的能力を培うとともに、深く真理
 を探究して新たな知見を創造し、これらの成果を広く社会に提供することによ
 り、社会の発展に寄与するものとする。

 → 必要な規律を重んずること、自ら進んで学習に取り組むことが大切。大学は、
    専門的能力を培うとともに、深く真理を探究する場所である。

 大学設置基準
 https://elaws.e-gov.go.jp/document?lawid=331M50000080028
 
 (単位)
 第二十一条の 2
 前項の単位数を定めるに当たつては、一単位の授業科目を四十五時間の学修を
 必要とする内容をもつて構成することを標準とし、授業の方法に応じ、当該授
 業による教育効果、授業時間外に必要な学修等を考慮して、次の基準により単
 位数を計算するものとする。
 一 講義及び演習については、十五時間から三十時間までの範囲で大学が定める
 時間の授業をもつて一単位とする。
 二 実験、実習及び実技については、三十時間から四十五時間までの範囲で大学
 が定める時間の授業をもつて一単位とする。ただし、芸術等の分野における個
 人指導による実技の授業については、大学が定める時間の授業をもつて一単位
 とすることができる。

 → 1 単位の講義・演習では、45 時間の学修を必要とするので、22.5 時間の予習・復習が必要になる。

教育方針

  × 単位を取るコツを教える
  ○ 知的好奇心を刺激する

  × ツールの使い方を教える
  ○ 概念を教える

  × 知識を伝える
  ○ 自分で学ぶ方法を教える

  × 教員が主役
  ○ 受講生が主役

  → すべての授業に遅刻せず出席し、主体的に学習する
     学習共同体なので、他の人に対しても責任を負う
     出席するに値する授業になっていなければ大崎に知らせる



Debian GNU/Linux のインストール

実習の流れ

1. 解説 (20 分)
2. 実習 (70 分)
3. リフレクションシート記入 (10 分)

チーム分けの方針

- いろいろな人とチームになる
- チームの人数は自由に決めてよい

態度目標

- しゃべる
- 質問する
- 説明する
- 動く (立ち歩く)
- チームで協力する
- チームに貢献する

内容目標

- VM 上に Debian GNU/Linux (bookworm) (amd64) をクリーンインストールできるようになる。

- CapsLock キーを Ctrl キーに割り当てられるようになる。

- コンソールのフォントを好みのものに変更できるようになる。

- ゲスト OS から自宅および大学の無線 LAN に接続できるようになる。

課題

課題 1

自身の PC に VirtualBox をインストールし、 ゲスト OS として Debian GNU/Linux (bookworm) (amd64) をクリーンインストールせよ。

デスクトップ環境 (GNOME、KDE 等)は「なし」でインストールせよ。 GUI やポインティングデバイスを使用せず、コンソールで一通りの操作を行え。

課題 2

CapsLock キーを Ctrl キーに割り当てよ。

課題 3

コンソールのフォントを好みのものに変更せよ。

課題 4

大学の無線 LAN に接続せよ。

ヒント

- ハイパーバイザには Oracle Virtual Box を推奨するが、こだわりがあるなら他の仮想化環境を使ってもよい。

Virtual Box
https://www.virtualbox.org/

- Debian GNU/Linux の リリースは bookworm、アーキテクチャは amd64 を使う。

Debian “bookworm” Release Information
https://www.debian.org/releases/stable/

- インストーラの ISO イメージは debian-12.7.0-amd64-netinst.iso を使うとよい。

debian-12.1.0-amd64-netinst.iso
http://ftp.kddilabs.jp/pub/debian-cd/current/amd64/iso-cd/

- キーボードの設定は /etc/default/keyboard ファイルに書く。

> diff -u /etc/default/keyboard.orig /etc/default/keyboard
--- /etc/default/keyboard.orig  2021-04-01 23:42:54.942990648 +0900
+++ /etc/default/keyboard       2021-07-25 06:38:43.408057698 +0900
@@ -5,6 +5,6 @@
 XKBMODEL="pc105"
 XKBLAYOUT="us"
 XKBVARIANT=""
-XKBOPTIONS=""
+XKBOPTIONS="ctrl:nocaps"
 
 BACKSPACE="guess"

- テキストエディタは nano を使うのが簡単。

- フォントの設定は /etc/default/console-setup ファイルに書く。

- コンソール用のフォントは /usr/share/consolefonts ディレクトリに格納されている。

- コンソールはそのままでは ISO-8859-1 しか表示できない (日本語は表示できない) ことに注意。

レポート課題 2024/09/25

実習終了後に自習を行い、 到達目標まで到達せよ。 疑問に思った点、 わからない点は各自で信頼できる文献を用いて調査せよ。

その後、「今週の作業内容」、 「『内容目標』をどの程度達成できた/できなかったか」、 「質問・要望・コメント」、 「感想」を「ネットワークコンピューティング実習」レポート送信フォームから送信せよ。

提出方法: 「レポート課題提出フォーム」から送信せよ。 レポートが正しく提出されると、レポートの控えが自身のメールアドレス宛に送信される。 レポートの控えは成績発表まで保存しておくこと。 レポートが再提出された場合は、 新しいほうを採点対象とする。

提出期限: 次回の授業開始の 48 時間前とする (例えば、 9/25(水) の課題であれば、 10/2(水) 9:00am の 48 時間前である 9/30(月) 9:00am)。 期限を過ぎたものは受理しない。

注意事項: 「質問・要望・コメント」は匿名にした上で公開する (講義ページに掲載する)。 公開されて困る内容は「質問・要望・コメント」等に含めないこと。 個人的な質問・相談等は「感想」の覧に記入せよ。


Hiroyuki Ohsaki (ohsaki[atmark]lsnl.jp)