IDATA2304
Computer communication and network programming
Autumn
Ålesund
English
About this 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 outcomes
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
Teaching methods
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.