Undergraduate
Faculty of Engineering and Architecture
Computer Engineering
Anlık RSS Bilgilendirmesi İçin Tıklayınız.Düzenli bilgilendirme E-Postaları almak için listemize kaydolabilirsiniz.


Computer Networks

Course CodeSemester Course Name LE/RC/LA Course Type Language of Instruction ECTS
CSE6032 6 Computer Networks 2/0/2 CC English 7
Course Goals

The course covers the organization and basic components of computer networks using Internet's architecture as the reference model. Functional layers of a computer network and its basic protocols such as HTTP, DNS, DHCP, TCP/UDP, IP, ICMP, ARP are examined in projects integrated to lectures on live systems.

Application-network services interface, client-server model, reliability and performance of network services, tracing and analyzing network message traffic, design of multi-segment network topologies, static routing, deployment of name and address resolution services in corporate networks are the primary topics emphasized throughout the course.

Basic metrics used in data communication and packet switching are introduced to illustrate and quantify network engineering concepts and emphasis their impact on network applications.

 

Projects closely integrated to lecture topics aim to foster students' analysis, synthesis, and design abilities. Students will:

- experiment with the concepts & mechanisms covered in the course, and use them in the applications they develop; and
- work with contemporary network infrastructure & tools to implement the prototype of typical multi-segment corporate network.

Prerequisite(s) -
Corequisite(s) -
Special Requisite(s) Projects are designed to be deployed on Department Laboratory workstations running under Microsoft Windows 10 over ORACLE VM VirtualBox virtualization platform, using Virtual Machines that are customized for the laboratory systems.
Students who own a personal computer equipped with at least INTEL i5 CPU, 16 GB memory, 30 GB disk space per Virtual Machine, running under Microsoft Windows 10 may use the project platform on their system to work at home. Note that the use of the personal computer at the lab requires its connection to the wired network of the laboratory.
Instructor(s) Professor Murat Taylı
Course Assistant(s) Res. Ast. Büşra Rümeysa Mete
Schedule Lecture (1) Tue. 09:00-11:00
Lecture (2) Tue. 13:00-15:00

Lab. (1) Wed. 09:00-11:00
Lab. (2) Wed. 11:00-13:00
Lab. (3) Wed. 14:00-16:00
Lab. (4) Wed. 16:00-18:00
Lab. (5) Thur. 09:00-11:00
Office Hour(s) Tue. 11:00-12:00 and 15.00-16.00 @ AK 2A-15
Thur. 11:00-12:00 @ AK 2A-15
Teaching Methods and Techniques

Balanced lecture and laboratory hours shift instructor biased teaching model towards a student driven process. Course format provides students with the opportunity not only to acquire knowledge on computer network architecture and technologies, but also to gain professional proficiency through their individual work.
Topics presented in lecture sessions are illustrated with the contemporary examples used in the industry; introduced concepts, architectures, and processes are consolidated with live experiments running on real systems.
Topics studied in lectures integrate closely with the projects developed throughout the term; students find the opportunity to enhance their comprehension by implementing their projects over real platforms built with up-to-date technologies, considering engineering design and development best practices.

Laboratory sessions are dedicated to the discussions of the problems faced in the design, development, and testing phases of current or past projects, and the assessments of the solutions adopted to overcome these issues.
Collaboration is a great way to learn. Students are encouraged to discuss project concepts and confer on implementation procedures with their peers. The key is to use collaboration to enhance learning, not as a way of sharing answers without understanding. Submitted work should be exclusively individual.

 Midterm and final examinations are open book assessments. They aim at evaluating your comprehension of the topics covered in lectures and projects, testing your ability in using your knowledge. Topics and processes covered in projects are integral part of course contents and will be assessed in the examinations.

Principle Sources James Kurose and Keith Ross, “Computer Networking: A Top-Down Approach”, 8/E GlobalEdition, Addison Wesley, 2021
ISBN-13:   9781292405469
Other Sources Recorded lectures from the textbook
https://gaia.cs.umass.edu/kurose_ross/lectures.php

Textbook end-chapter tests and problem solutions
https://gaia.cs.umass.edu/kurose_ross/knowledgechecks/
https://gaia.cs.umass.edu/kurose_ross/interactive/
Course Schedules
Week Contents Learning Methods
1. Week Evolution of Computer Networks, Layered Internet Architecture Project #1 Installing and Testing Oraccle VM Virtualization Platform and Wireshark Protocol Analyzer
2. Week Link Layer: Interconnection Technologies ARP Project #1 continued
3. Week Application Layer: Architecture, Socket API Project #2 Analyzing Protocol Layers with Wireshark and Ncat Traffic Generator
4. Week DHCP Computer Network Performance and Metrics Project #2 continued
5. Week DNS Protocol and Service Project #3 Deploying a Primary DNS Server
6. Week Transport Layer: UDP, Reliable Protocols Project #3 continued
7. Week Transport Layer: TCP, Flow and Congestion Control Project #4 UDP Socket API
8. Week Official Holidays
9. Week Mid Term Examination
10. Week National Hollyday Project #4 continued
11. Week WWW and HTTP Project #5 WWW and HTTP - Analysing TCP Connections
12. Week Network Layer: IP, Static Routing Project #5 continued
13. Week Network Layer: Subnetting Project #6 Subnetting, Static Routing, NAT, Port Forwarding,
14. Week Network Layer: NAT, Port Forwarding Project #6 continued
15. Week
16. Week
17. Week
Assessments
Evaluation tools Quantity Weight(%)
Midterm(s) 1 15
Project(s) 6 45
Final Exam 1 40


Program Outcomes
PO-1Adequate knowledge in mathematics, science and engineering subjects pertaining to the relevant discipline; ability to use theoretical and applied information in these areas to model and solve engineering problems.
PO-2Ability to identify, formulate, and solve complex engineering problems; ability to select and apply proper analysis and modelling methods for this purpose.
PO-3Ability to design a complex system, process, device or product under realistic constraints and conditions, in such a way so as to meet the desired result; ability to apply modern design methods for this purpose. (Realistic constraints and conditions may include factors such as economic and environmental issues, sustainability, manufacturability, ethics, health, safety issues, and social and political issues according to the nature of the design.)
PO-4Ability to devise, select, and use modern techniques and tools needed for engineering practice; ability to employ information technologies effectively.
PO-5Ability to design and conduct experiments, gather data, analyse and interpret results for investigating engineering problems.
PO-6Ability to work efficiently in intra-disciplinary and multi-disciplinary teams; ability to work individually.
PO-7Ability to communicate effectively, both orally and in writing; knowledge of a minimum of one foreign language.
PO-8Recognition of the need for lifelong learning; ability to access information, to follow developments in science and technology, and to continue to educate him/herself.
PO-9Awareness of professional and ethical responsibility.
PO-10Information about business life practices such as project management, risk management, and change management; awareness of entrepreneurship, innovation, and sustainable development.
PO-11Knowledge about contemporary issues and the global and societal effects of engineering practices on health, environment, and safety; awareness of the legal consequences of engineering solutions.
Learning Outcomes
LO-1Learn the computer networking concepts, basic terminology, and applications.
LO-2Understand the Internet architecture, components, services, and measures of performance.
LO-3Understand the application-layer concepts, protocol principles, transport-layer interfaces, and network applications such as the WEB and HTTP and the FTP.
LO-4Understand the transport-layer concepts, relationship with the network- and application layers, and services such as the principles of Reliable Data Transfer.
LO-5Understand the network-layer concepts and routing principles, algorithms, and protocols.
LO-6Understand the data link-layer concepts, protocols, and services such as error-detection and correction, addressing, and multiple-access techniques.
Course Assessment Matrix:
Program Outcomes - Learning Outcomes Matrix
 PO 1PO 2PO 3PO 4PO 5PO 6PO 7PO 8PO 9PO 10PO 11