Computer Communications and Networks
IPK Acad. year 2023/2024 Summer semester 4 credits
Internet concept and model of the Internet. Model ISO/OSI. TCP, UDP, IP protocols. Addressing in computer networks (local and Internet). Routing on the Internet. Multicasting on the Internet. Switching and switches. Principles of reliable data transfer. Network interconnections. Multiple access. Error control. Communication services and protocols. Wireless and mobile networks and protocols. Network security. Programming network applications.
Language of instruction
- 26 hrs lectures
- 13 hrs projects
- 60 pts final exam
- 40 pts projects
Subject specific learning outcomes and competences
Student acquaints basic concepts and principles of computer communications and computer networks and will be aware of communication functions and their implementations in common computer networks. The student will learn how to deal with documents that describe the specification of communication protocols. The student will learn how to implement networking applications.
The aim is to understand the basic concepts and principles of computer communications and computer networks; to be aware of communication functions and their implementations in common computer networks.
Why is the course taught
We use the Internet for a variety of activities in everyday life. Life without it is hard to imagine for many people. In this course, you will learn on what technical principles the Internet is built on and what key technologies are necessary for its functioning.
Prerequisite knowledge and skills
Ability to write a computer program in one of the following programming languages: C/C++, Python, C#, Java. Knowledge of operating systems.
Volně dostupné vývojové nástroje v prostředí OS Linux. Virtualizační nástroje (Virtual Box nebo VMware).
- Gerry Howser. Computer Networks and the Internet: A Hands-On Approach. Springer International Publishing AG, 2019 (dostupné on-line)
- John Goerzen, Tim Bower, Brandon Rhodes. Foundations of Python Network Programming: The comprehensive guide to building network applications with Python. Apress, 2011.
- Kurose J.F., Ross K.W.: Computer Networking, A Top-Down Approach Featuring the Internet (8th edition). Addison-Wesley, 2021.
- Andrew S. Tanenbaum,Nick Feamster, David J. Wetherall. Computer Networks, 6th Edition, Pearson, 2021.
- PETERSON, Larry L.; DAVIE, Bruce S. Computer networks: a systems approach. Elsevier, 2011.
Syllabus of lectures
- Introduction to computer networks
- Network applications
- Application layer
- Network application programming
- Transport layer
- Network Layer I (Addressing)
- Network Layer II (Protocols and Communications)
- IPv6 protocol
- Routing I (Local Area Networks)
- Routing II (Internet)
- Link layer (LAN technology, Ethernet, Wifi)
Syllabus - others, projects and individual work of students
- Implementation of a client-server communication
- Implementation of networking application
- Project #1 - max 20 pts.
- Project #2 - max 20 pts.
- The final exam - max 60 pts.
Controlled activities include two projects and the final exam.
Requirements for class accreditation is at least 10 points for the semester.
How to contact the teacher
Quick consultations after the lecture. Regular consultations during the teacher's consultation hours. Alternatively, individually arranged consultations in person or online on the MS Teams platform.
Course inclusion in study plans
- Programme BIT, 2nd year of study, Compulsory
- Programme BIT (in English), 2nd year of study, Compulsory
- Programme IT-BC-3, field BIT, 2nd year of study, Compulsory