Course - Computer communication and network programming - IDATA2304
Computer communication and network programming
About
About the course
Course content
Computer networks:
- Concepts, principles and standards with emphasis on modern Internet technologies.
- Protocols and layered model for communication
- The most important Internet protocols and components:
- Application layer: Web and HTTP, DNS
- Transport layer: TCP, UDP
- Network layer: IP, ICMP, routing, DHCP, NAT
- Data link and physical layer: Ethernet, MAC, ARP, switching
- Security in computer networks
Network programming:
- Socket API
- Distributed network services
Students will also practice concepts from previous subjects:
- Version control (GIT)
- Agile project work in groups
Learning outcome
Knowledge: The candidate can:
- Understanding of the principles of how computer communication works
- Understanding of protocols and ability to see it in an overall context of communication
- Knowledge of network programming (sockets) and distributed network services
Skills. The candidate can:
- Explain the standards in the field of computer communication
- Assess different solutions for computer networks
- Explain the key security issues of computer communication
- Use packet sniffers (Wireshark) and packet tracer tools
- Implement a distributed solution based on given requirement specification, with a potential commercial use
General competence: The candidate can:
- Explain the historical development of the field of computer communication
- Understand the importance of open standards and protocols for sustainable communication solutions
- Students can work in a team
- Use of AI in a reflective way
Learning methods and activities
Pedagogical methods: lectures, practical and collaborative learning activities, and project work with guidance.
Teaching partially or fully in English.
Mandatory exercises. All mandatory learning activities must be completed in due time to be allowed to take the final exam.
Compulsory assignments
- Mandatory exervises
Further on evaluation
1) All mandatory exercises must be approved to gain access to the examination.
2) The subject includes mandatory project work in groups, which will go in depth on a set of selected topics in computer networks, for example, network programming, Internet of things, or a given communication standard/protocol.
3) Each project group must sign a work contract that clearly defines the roles, planned activities, and rules for ethical and responsible collaboration. The final report must include a work log that documents each member's continuous contribution throughout the semester. Individual grades may vary within a group based on the documented level of effort and contribution of each student.
4) Final grade is calculated from two assessment parts, both of which must be approved (E or better):
- Report of the group project, 60%
- Individual written exam, 40%.
5) The final grade is a letter-grade (AF).
6) The project work contains assignments that are carried out, digitally documented and submitted during the term. Both individual and group assignments may be given. Assignments are designed to help students achieve specific course learning outcomes, and formative feedback is given.
7) To retake the examination for students who have got an E or better, any assessment component (Project and written exam) can be retaken.
8) In case of a failed examination in one of the parts (either written exam or project), the failed part can be reexamined without a new examination in the approved part.
9) In re-sit examination the written exam can be replaced by an oral exam. Re-sit exam is in August.
Specific conditions
Admission to a programme of study is required:
Computer Science - Engineering (BIDATA) - some programmes
Recommended previous knowledge
IDATA1001/IDATA1003 Programming 1 and IDATA2001/IDATA2003 Programming 2 or equivalent (programming fundamentals, preferably object-oriented, Java language)
Course materials
Textbook:
Behrouz A. Forouzan: Data Communications and Networking with TCP/IP Protocol Suite, McGraw Hill; 6th edition (January 6, 2021), ISBN 978-0078022098
Reference book:
Kurose, Ross: Computer Networking - A Top-Down Approach 8th Global edition (7th or 6th edition is OK as well), Pearson (2021), ISBN: 9781292405469
Credit reductions
| Course code | Reduction | From |
|---|---|---|
| IELET2001 | 7.5 sp | Autumn 2021 |
| IELEA2001 | 7.5 sp | Autumn 2021 |
| AIS2103 | 7.5 sp | Autumn 2021 |
Subject areas
- Computer and Information Science
- Telecommunication
- Applied Information and Communication Technology
- Computer Science