COURSE INFORMATION
Course Title: COMPUTER NETWORKS
Code Course Type Regular Semester Theory Practice Lab Credits ECTS
CEN 307 C 5 3 0 2 4 6
Academic staff member responsible for the design of the course syllabus (name, surname, academic title/scientific degree, email address and signature) Assoc.Prof.Dr. Dimitrios Karras dkarras@epoka.edu.al
Main Course Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: M.Sc. Shkumbin Fida shfida@epoka.edu.al , Wednesday , 10.40am-12.20pm
Second Course Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: NA
Language: English
Compulsory/Elective: Compulsory
Study program: (the study for which this course is offered) Bachelor in Software Engineering (3 years)
Classroom and Meeting Time: according to timetable at EIS
Teaching Assistant(s) and Office Hours: NA
Code of Ethics: Code of Ethics of EPOKA University
Regulation of EPOKA University "On Student Discipline"
Attendance Requirement: 75%
Course Description: To provide students with a theoretical and practical base on principles, architecture, and protocol knowledge of Computer Networks and Internet. 2) Prepare students for easy transfer from academia into practical network supporting tasks in a given networking oriented jobs. 3) Get hands on experiences by learning basic network computing techniques
Course Objectives: The objective of this course is to provide a solid understanding of Computer Networking in a layered approach, studying algorithmic details of all layers in Internet stack protocol. Moreover, it aims at providing solid knowledge in TCP/IP set of protocols as well as ARQ and IP algorithms and protocols. Moreover, special attention will be given to the Datalink layer and MAC sublayer architectures, algorithms and protocils as well as to the physical layer. The subject of computer networking is enormously complex, involving many concepts, protocols, and technologies that are woven together in an intricate manner. To cope with this scope and complexity, many computer networking texts are often organized around the “layers” of a network architecture. With a layered organization, students can see through the complexity of computer networking—they learn about the distinct concepts and protocols in one part of the architecture while seeing the big picture of how all parts fit together. From a pedagogical perspective, our personal experience has been that such a layered approach indeed works well. Nevertheless, we have found that the traditional approach of teaching—bottom up; that is, from the physical layer towards the application layer—is not the best approach for a modern course on computer networking. The goal of this course is to present in a mixed approach computer networking, namely, bottom up and top down approach for better understanding of all principles
BASIC CONCEPTS OF THE COURSE
1 Network Applications: Explains how applications interact with the network, such as web browsers and servers.
2 Protocols: Discusses application-layer protocols like HTTP, FTP, SMTP, POP3, IMAP, and DNS.
3 Socket Programming: Introduces how network applications communicate over sockets.
4 TCP (Transmission Control Protocol): Detailed explanation of TCP, including connection setup, congestion control, and reliable data transfer.
5 UDP (User Datagram Protocol): Differences from TCP, and where it's used.
6 IP Protocol: IPv4 and IPv6 addressing
7 Routing and Forwarding: Differences between routing (how to find a path) and forwarding
8 Routing Algorithms: Link-state and distance-vector routing algorithms, including examples like OSPF and RIP.
9 Error Detection and Correction: Mechanisms like checksums and cyclic redundancy checks
10 Link-Layer Addressing: MAC addressing, ARP (Address Resolution Protocol).
COURSE OUTLINE
Week Topics
1 Introduction to Computer Networks and the Internet
2 Network Core and Delays
3 Application Layer: Client Server Architecture HTTP and DNS
4 Application Layer: SMTP, DHCP and P2P Architecture
5 Application Layer - Socket Programming
6 Transport Layer: TCP, UDP
7 Transport Layer: Principles of TCP
8 Midterm
9 Network Layer - Prefixes
10 Network Layer: IP Classes and Subnetting
11 Network Layer: Dijkstra and Bellman Ford
12 Link Layer - LAN
13 Wifi and Mobile Networks
14 Security and Cloud Networking
Prerequisite(s): CEN 109 MTH 207 CEN 215
Textbook(s): 1)Computer Networking: A Top-Down Approach, 8/e Kurose, James and Ross, Keith Pearson, Copyright 2020, ISBN-13: 9780136681557
Additional Literature:
Laboratory Work: Yes
Computer Usage: Yes
Others: No
COURSE LEARNING OUTCOMES
1 Being able to understand the protocols involved in computer networking in OSI and Internet stack protocol layers
2 Knowledge of all important algorithms involved in the protocols of computer networking
3 Being able to understand all important formulae and calculations in computer networking
4 Knowledge and ability of essential network programming
5 Knowledge and ability to use network simulators in order to design and simulate network architectures
6 Proper knowledge on the usage of software tools for network analysis and administration
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution)
No Program Competencies Cont.
Bachelor in Software Engineering (3 years) Program
1 Engineering graduates with sufficient theoretical and practical background for a successful profession and with application skills of fundamental scientific knowledge in the engineering practice. 5
2 Engineering graduates with skills and professional background in describing, formulating, modeling and analyzing the engineering problem, with a consideration for appropriate analytical solutions in all necessary situations 5
3 Engineering graduates with the necessary technical, academic and practical knowledge and application confidence in the design and assessment of machines or mechanical systems or industrial processes with considerations of productivity, feasibility and environmental and social aspects. 5
4 Engineering graduates with the practice of selecting and using appropriate technical and engineering tools in engineering problems, and ability of effective usage of information science technologies. 5
5 Ability of designing and conducting experiments, conduction data acquisition and analysis and making conclusions. 5
6 Ability of identifying the potential resources for information or knowledge regarding a given engineering issue. 5
7 The abilities and performance to participate multi-disciplinary groups together with the effective oral and official communication skills and personal confidence. 5
8 Ability for effective oral and official communication skills in foreign language. 4
9 Engineering graduates with motivation to life-long learning and having known significance of continuous education beyond undergraduate studies for science and technology. 4
10 Engineering graduates with well-structured responsibilities in profession and ethics. 4
11 Engineering graduates who are aware of the importance of safety and healthiness in the project management, workshop environment as well as related legal issues. 3
12 Consciousness for the results and effects of engineering solutions on the society and universe, awareness for the developmental considerations with contemporary problems of humanity. 2
COURSE EVALUATION METHOD
Method Quantity Percentage
Homework
4
5
Midterm Exam(s)
1
25
Project
1
20
Quiz
2
0
Laboratory
1
10
Final Exam
1
25
Total Percent: 100%
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
Activities Quantity Duration(Hours) Total Workload(Hours)
Course Duration (Including the exam week: 16x Total course hours) 14 5 70
Hours for off-the-classroom study (Pre-study, practice) 14 2 28
Mid-terms 2 2 4
Assignments 4 10 40
Final examination 1 2 2
Other 1 6 6
Total Work Load:
150
Total Work Load/25(h):
6
ECTS Credit of the Course:
6
CONCLUDING REMARKS BY THE COURSE LECTURER

Students should take notes since all networking concepts and demonstration will be explainged on white board