Information
Code | CEN437 |
Name | Network Programming |
Term | 2022-2023 Academic Year |
Semester | 7. Semester |
Duration (T+A) | 3-0 (T-A) (17 Week) |
ECTS | 6 ECTS |
National Credit | 3 National Credit |
Teaching Language | İngilizce |
Level | Lisans Dersi |
Type | Normal |
Label | E Elective |
Mode of study | Yüz Yüze Öğretim |
Catalog Information Coordinator | Doç. Dr. FATİH ABUT |
Course Instructor |
1 |
Course Goal / Objective
This course covers the practical aspects of computer network programming, with emphasis on the Internet. The goal of this course is to introduce the students to the basics of network programming. Various APIs will be used to implement some practical networking aspects.
Course Content
Introduction to Wireshark. IEEE 802.3 Ethernet and traffic capture analysis with libpcap API. Creating IP and VLSM subnets. Routing. ICMP programming. UDP and TCP programming. Thread management. HTTP and Java servlets. Java server pages. JavaMail API and E-Mail Programming. Java Servlets. JSP. Network simulation and OTcl programming.
Course Precondition
There are no prerequisites.
Resources
1. Harold, E. R., “Java Network Programming”, 4th ed. O'Reilly, 2013, ISBN: 978-1565928701
Notes
2. Douglas Comer, David Stevens, Internetworking with TCP/IP : Client-Server Programming, Volume III (BSD Unix and ANSI C), 2nd edition, 1996, ISBN 0-13-260969-X 3. W. Richard Stevens, Network Programming : Networking API: Sockets and XTI, Volume 1, 2nd edition, 1997 (ISBN 0-13-490012-X)
Course Learning Outcomes
Order | Course Learning Outcomes |
---|---|
LO01 | Knowledge on the basics of protocolanalyzers. |
LO02 | Ability to understand IP addressing and subnetting as well as create routing tables. |
LO03 | Ability to write client and server programs using UDP and TCP protocols. |
LO04 | Ability to write web applications using java servlets and server pages. |
LO05 | Ability to code e-mailclients using POP3, IMAP and SMTP. |
LO06 | Ability to write networksimulation scripts using OTcl. |
Relation with Program Learning Outcome
Order | Type | Program Learning Outcomes | Level |
---|---|---|---|
PLO01 | Bilgi - Kuramsal, Olgusal | Has capability in the fields of mathematics, science and computer that form the foundations of engineering | 3 |
PLO02 | Bilgi - Kuramsal, Olgusal | Identifies, formulates, and solves engineering problems, selects and applies appropriate analytical methods and modeling techniques, | 3 |
PLO03 | Bilgi - Kuramsal, Olgusal | Analyzes a system, its component, or process and designs under realistic constraints to meet the desired requirements,gains the ability to apply the methods of modern design accordingly. | 4 |
PLO04 | Bilgi - Kuramsal, Olgusal | Ability to use modern techniques and tools necessary for engineering practice and information technologies effectively. | 3 |
PLO05 | Bilgi - Kuramsal, Olgusal | Ability to design and to conduct experiments, to collect data, to analyze and to interpret results | 4 |
PLO06 | Bilgi - Kuramsal, Olgusal | Has ability to work effectively as an individual and in multi-disciplinary teams, take sresponsibility and builds self-confidence | 3 |
PLO07 | Beceriler - Bilişsel, Uygulamalı | Can access information,gains the ability to do resource research and uses information resources | 3 |
PLO08 | Beceriler - Bilişsel, Uygulamalı | Awareness of the requirement of lifelong learning, to follow developments in science and technology and continuous self-renewal ability | 2 |
PLO09 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Ability to communicate effectively orally and in writing, and to read and understand technical publications in at least one foreign language | 4 |
PLO10 | Yetkinlikler - Öğrenme Yetkinliği | Professional and ethical responsibility, | 4 |
PLO11 | Yetkinlikler - Öğrenme Yetkinliği | Awareness about project management, workplace practices, employee health, environmental and occupational safety, and the legal implications of engineering applications, | 5 |
PLO12 | Yetkinlikler - Öğrenme Yetkinliği | Becomes aware of universal and social effects of engineering solutions and applications, entrepreneurship and innovation, and knowledge of contemporary issues |
Week Plan
Week | Topic | Preparation | Methods |
---|---|---|---|
1 | Introduction to Wireshark | Reading the related section in textbook | |
2 | Capturing, Filtering and Processing Ethernet Frames with libpcap API: Part 1 | Reading the related section in textbook | |
3 | Capturing, Filtering and Processing IP Packets with libpcap API: Part 2 | Reading the related section in textbook | |
4 | IP, Subnetting and Routing | Reading the related section in textbook | |
5 | ICMP Programming | Reading the related section in textbook | |
6 | Capturing, Filtering and Processing UDP Datagramsand TCP Segments with libpcap API: Part 3 | Reading the related section in textbook | |
7 | UDP/TCP Programming with Winsock and Unix Socket APIs/Thread Management: Part 1 | Reading the related section in textbook | |
8 | Mid-Term Exam | Reading the related section in textbook | |
9 | UDP/TCP Programming with Winsock and Unix Socket APIs/Thread Management: Part 2 | Reading the related section in textbook | |
10 | UDP/TCP Simulation with OTcl | Reading the related section in textbook | |
11 | HTTP and Java Servlets: Part 1 | Reading the related section in textbook | |
12 | HTTP and Java Server Pages: Part 2 | Reading the related section in textbook | |
13 | JavaMail API and E-Mail Programming | Reading the related section in textbook | |
14 | Java Servlets Programming | Reading the related section in textbook | |
15 | Java Server Pages Programming | Reading the related section in textbook | |
16 | Term Exams | Reading the related section in textbook | |
17 | Term Exams | Reading the related section in textbook |
Student Workload - ECTS
Works | Number | Time (Hour) | Workload (Hour) |
---|---|---|---|
Course Related Works | |||
Class Time (Exam weeks are excluded) | 14 | 3 | 42 |
Out of Class Study (Preliminary Work, Practice) | 14 | 5 | 70 |
Assesment Related Works | |||
Homeworks, Projects, Others | 0 | 0 | 0 |
Mid-term Exams (Written, Oral, etc.) | 1 | 15 | 15 |
Final Exam | 1 | 30 | 30 |
Total Workload (Hour) | 157 | ||
Total Workload / 25 (h) | 6,28 | ||
ECTS | 6 ECTS |