04 21483 Computer and Communication Networks 2024 - 2025
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit
04 21483
Computer and Communication Networks
2024 - 2025
Coursework Assignment
Introduction
A company is developing a hardware baby monitor that will allow parents to view and speak to their child remotely using an app. The monitor will be branded with a unique QR code that, when scanned, will provide identity information for the device and connection details for the inbuilt media server. In this assignment you will consider questions of security and privacy around the network connection to the device, before moving on to simulate the issues caused by flood routing of traffic.
Assignment Brief
Section A (50 marks available)
Part 1: Explain why DES keys are considered to provide suitable security for use in individual sessions, even though they are not regarded as best practice for long-term use in public systems. A good answer will refer to the key exchange problem, and the computational complexity of symmetric and public key encryption systems. (20 marks)
Part 2: In order to protect the video from the baby monitor as it passes over the network, the baby monitor company plan to make use of a combination of Rivest–Shamir–Adleman (RSA) public / private keys and Data Encryption Standard (DES) session keys to encrypt the data stream between the camera and the app. By drawing a diagram of the data exchanges between the app and the monitor, illustrate how this is achieved. You should also provide a narrative description of the processes shown in your diagram. You may assume that the company provides its own Certificate Authority system for verification of the device’s identity, and a good answer will include this verification step alongside the various key and data exchanges between the two devices. (30 marks)
Section B (50 marks available)
Part 1: Using Python write a programme to simulate flood routing in a network with at least twenty-five nodes connected with a fixed probability of 0.25. Each packet should contain a counter (n=10) that is decremented every time the packet moves between nodes. When the counter gets to zero, the packet is discarded. Time is discrete, and each link can handle only one packet per time interval (i.e. only one packet in total may traverse the link at one time). Nodes should include a buffer to queue any additional packets (i.e. if two packets arrived in the previous timestep, at least one must wait in the queue for the outbound links to clear). Present your results in terms of the number of duplicate packets produced, and the congestion at each node, and suggest a possible solution for reducing this problem. You will be marked based on the following:
• A clear description of the flooding algorithm implemented, and of the network topology used; (10 marks)
• Graphical presentation of the results for each node (specifically, the number of queued packets over time); (10 marks)
• Analysis and discussion of the results, and proposed solution for reducing the problem of duplicate packets; (20 marks)
• Well-structured, working code with appropriate instructions to run the simulation as comments at the start of the file. (10 marks)
2025-04-18