Internet Protocol and Programming

1. The aim of the course

In the course, students can learn on TCP/IP which is the key technology for Internet. Especially, this course deals with IP addressing and routing protocols such as ARP, ICMP, OSPF, DHCP, and IPv6. In addition, this course includes network programming related to TCP/IP. Through term project, the students can get of the design and implementation capabilities of Internet systems.

2. The course evaluation

- Class partipation : 10%
- Solving the practice set : 10%
- Evaluation of Team Project : 20%
- Mid-term examination : 30%
- Final-term examination : 30%

3. Textbook

Textbook : TCP/IP Protocol Suite 4th Edition
Author : Behrouz A. Forouzan
Publisher : McGrawHill
Publication year : 2009
Programming textbook : Experimental Notes

4. Topics to be covered

week

Lecture

Experiment

1st week

Introduction to the course
Introduction to Network Layer(chapter 4)
Chapter1(Introduction)
Chapter4(Network Layer)
Introduction to the Network Programming
Connection program(putty)
Lecture note 1

2nd week

IP Addresses: Classful & Classless Addressing(chapter 5)
Chapter5(IPv4 Address)

Delivery and Forwarding of IP Packets (chapter 6)
Chapter6(Delivery and Forwarding of IP Packets)

Sockets Introduction and Protocol Setting
Lecture note_2

3rd week

Internet Protocol Version 4(IPv4) Address (chapter 7)
Chapter7(IPv4)
Socket Address Structure and Byte Ordering Functions
Lecture note_3

4th week

Transmission Control Protcol(TCP) (chapter 15)
Chapter15 (TCP)
Internet Address Conversion Functions
Lecture note_4

5th week

Transmission Control Protcol(TCP) (chapter 15)
Chapter15 (TCP)
TCP Server/Client
Lecture note_5

6th week

Transmission Control Protcol(TCP) (chapter 15)
Chapter15 (TCP)
UDP Server/Client
Lecture note_6

7th week

User Datagram Protocol(UDP) (chapter 14)
Chapter14 (UDP)
Unix Process
Lecture note_7

8th week

Midterm Exam

Midterm Exam
Midterm Result

9th week

Address Resolution Protcol (ARP) (chapter 8)
Chapter8(ARP)

Advanced Socket Programming
Lecture note_8

10th week

Internet Control Message Protocol (ICMP) (chapter 9)
Chapter9(ICMP)
Inter-Process communication
Lecture_Note_9

11th week

Unicast Routing Protocols (chapter 11)
Chapter11 (Unicast Routing Protocols
)
Socket Options
Lecture note_10

12th week

Unicast Routing Protocols (chapter 11)
Chapter11 (Unicast Routing Protocols)
Advanced I/O Functions Serialization I/O Multiplexing
Lecture note_11

13th week

Dynamic Host Configuration Protocol(DHCP) (chapter 18)
Chapter18 (DHCP)
Multi-Thread Programming
Lecture note_12

14th week

Domain Name Service(DNS) (chapter 19)
Chapter19 (DNS)
Team Project

15th week

Team Project Presentation
Team Project Presentation

16th week

Final Exam

5. Team Project

Team 프로젝트 제안 대상 :
- TCP/IP 관련 응용 프로그램
- 소켓응용 프로그래밍
- 라우팅테이블 작성 응용프로그래밍
- ARP모듈 구성 응용프로그래밍
- IP 패키지 구성응용프로그래밍
- ICMP패키지 구성 응용프로그래밍
- UDP패키지구성 응용프로그래밍
- DHCP 클라이언트 및 서버 응용프로그래밍

Team 프로젝트 보고서 (보고서 양식) :
- 중간보고서 제출 시 위 양식의 2장까지 완성하여 제출
- 최종결과보고서 제출 시 3장과 4장 내용을 추가 작성하여 제출


6. Homework

Solving practice set of each chapter

7. Pre-requisites

A solid understanding of computer network is required. If a student has not taken the Computer Network, he/she wishes to take the course before taking this class