シラバス情報

授業コード
37710001
講義名
ネットワーク構築演習
開講時期
2020年度1Q(前期)
科目分類
演習
科目分野
プログラミング
教員名
山本 雅也
実務家教員
履修年次
3〜4
単位数
2.00単位
曜日時限
月曜3限、月曜4限

学習目標 (到達目標)
(1) コンピュータシステムにおけるネットワークの役割と重要性を理解し説明できる
(2) 代表的なネットワークアーキテクチャを理解し階層構造の役割を説明できる
(3) TCPやIPとはじめとする各種プロトコルの役割を理解し説明できる
(4) 小規模なローカルネットワークとサーバアプリケーションの構築を通じてリモートホスト上での作業やトラブルシュートに必要な知識を身につける
授業概要 (教育目的)
本講義では、インターネットをはじめとするコンピュータネットワーク全般の基礎知識を身につけることを目的とする。代表的なネットワーク技術であるTCP/IPを学習対象に、パケット通信やネットワークアーキテクチャ、各種プロトコルの仕組み・役割を学ぶ。演習パートでは仮想環境を用いて、Linuxシステムによる小規模ネットワークの構築およびネットワークプログラミングを実施し、各種プロトコルやネットワークアプリケーションの動作を理解する。
履修条件
履修条件緩和
成績評価方法・基準
各講義で提示する課題 40%、期末試験(最終課題)60%
※出席率7割未満の学生については、評価対象としない(不可とする)
期末試験の内容
最終課題の提出とし、提出方法は講義内で案内する
課題の内容
講義毎に課題(レポートもしくは記述式の設問)を提示し採点を行う。
提出期限は次回講義の前日までとし、期限後の提出は大幅に減点されるものとする。

授業内容
第1回
■ オリエンテーション

本講義の目的、構成、評価方法を説明する。
各自のPC上に演習環境を構築し、SSH によるリモートアクセスと Linux の基本的な操作方法について学ぶ。
第2回
■ コンピュータネットワークとTCP/IPの基礎

コンピュータネットワークの基礎と代表的なネットワークアーキテクチャであるTCP/IPについて学ぶ。
第3回
■ ネットワークインタフェース層

ネットワークインタフェース層の役割と対象プロトコル(Ethernet)について学ぶ。
パケットキャプチャを用いた実験的な演習を行う。
第4回
■ ネットワーク層

インターネット層の役割と対象プロトコル(IP、IPv6、ARP、ICMP)について学ぶ。
関連コマンドを用いた実験的な演習を行う。
第5回
■ トランスポート層

トランスポート層の役割と対象プロトコル(TCP、UDP)について学ぶ。
ソケット通信によるネットワークプログラミングの演習を行う。
第6回
■ ローカルネットワーク

ルータのはたらきと関連技術・プロトコル(NAT、ポートフォワード、DHCP)について学ぶ。
LinuxベースのPCルータを構築し、外部と通信可能なローカルネットワークを構築する。
第7回
■ ネームサービス

名前解決の仕組みと対象プロトコル(DNS)について学ぶ。
権威DNSサーバとフルサービスリゾルバを構築して複雑なDNSへの理解を深める。
第8回
■ Webサービス

Webの仕組みと対象プロトコル(HTTP)について学ぶ。
Webサーバを構築して簡単なWebアプリケーションを動作させる。

購入が必要な教科書

教科書以外に準備するもの(画材・機材)

参考文献
(1) 基礎からわかるTCP/IPネットワークコンピューティング入門 第3版 / オーム社(ISBN: 9784274050732)
(2) マスタリングTCP/IP 入門編 第5版 / オーム社(ISBN: 9784274068768)
(3) コンピュータネットワーク 第5版 / 日経BP社(ISBN: 9784822284763)
※大学での教科書販売はありません。

教員より履修学生へメッセージ
■ 履修条件

エンジニアリテラシーの単位を取得していること

■ 演習環境について

演習は各自のPC上に VirtualBox をインストールし、仮想環境に Linux を構築して実施する。
講義内では Windows 10 および macOS を前提としてインストール方法等を解説する。

演習環境となる Linux の利用とコマンド操作の経験があることが望ましい。

■ プログラミング言語について

Python および PHP によるプログラミングを実施する。
これらのプログラミング言語の経験がない場合には、基本構文を理解できるよう事前に学習しておくこと。
教員連絡先
masaya_yamamoto@dhw.ac.jp