教 授 要 目

システム情報工学科 ネットワーク・プログラミング
Network Programming
3 年  2 単位  選択科目
 担当教員 杵嶋修三
【 科目概要・到達目標 】
インターネットの基盤となっているTCP/IPによる通信プログラミングの原理と利用方法を学習し、学生各自のPC上において、TCP/IPによる通信プログラムを動作させ、実際に通信経路を流れる様々なプロトコルパケットを観測・解析することで、ネットワークプログラミングを理論と体験を通じて理解する。また、ネットワークを介した複数のコンピュータプロセスによる、並行処理や多重化サーバー処理の手法や、インターネットのアプリケーションプロトコルのバリエーションについても理解を深める。
【 成績評価 】
毎回講座受講点:30点(全講座回数での平均点)毎回講座レポート提出評価点:70点(全講座回数での平均点) 期末試験:なし 
【 履修心得 】
特になし。
【 授業計画 】
1.ネットワークプログラミングとは(ソケットオブジェクトとソケットプログラミング)
2.ネットワークプログラミングのための開発環境(Cygwinとプロトコルパケットアナライザの準備)
3.LinuxとC言語によるシステムプログラミング、オペレーティング・システムの構造
4.システムプログラミング1(OSの役割と構成、OSとシステム・コール、プロセスの生成とコマンドの実行)
5.システムプログラミング2(カーネルの構成、プロセスの生成、環境変数)
6.システムプログラミング3(inetd、プロセスとリソースの管理、ipc、ファイルシステム)
7.システムプログラミング4(パイプライン通信、時刻の扱い、シグナル、Pythonのソケット)
8.ソケットプログラミング1(イーサネット、LAN、プロトコル、OSI参照モデル、フレーム構成、ARP)
9.ソケットプログラミング2(IP・ICMP・UDP・DHCP・TCPプロトコル)
10.ソケットプログラミング3(TCPエコークライアント&サーバ、UDPソケット)
11.システムプログラミング5(共有メモリ、メッセージ通信、セマフォによる排他制御)
12.ソケットプログラミング4(並行処理としてのマルチクライアント処理、並行サーバ)
13.ソケットプログラミング5(インターネットのアプリケーションプロトコルとそのバリエーション)
14.まとめ
【 教科書 】
特に指定しない。(毎回講座で使用するテキストは、学内Webにて公開する。)
【 参考書 】
特に指定しない。(毎回講座で使用する補助資料も、学内Webにて公開する。)
【e-mail address】
オンライン版では非公開です。
【 学生へのメッセージ 】
ネットワークプログラミングとインターネットプロトコルを理論と体験を通じて、自ら深く理解するように心がけること。また、講師のオフィスアワーを活用して、自ら納得いくまで積極的に質問すること。
【 オフィスアワー 】
木曜日(10:00〜17:00) 金曜日(14:00〜17:00)

| 目  次  | 科目一覧 |