Skip to content

Application Layer (P2P Socket programming)

Learning Goals

After this week, you will understand the following concepts

  • Logical communication
  • Segments vs. Datagrams
  • Best-effort
  • Reliable vs. unreliable transfer
  • Congestion Control
  • Multiplexing & demultiplexing

Focus of the lab

  • Add P2P communication for the chatroom application
  • Capturing and analyzing network traffic
  • Writing concise lab report
  • Clarifying and aligning expectations in the group
  • Writing a group contract

Before Starting the Lab

  • Make sure you are in the "labs" directory in your VM. If not, move to the directory with the command cd ~/labs.
  • Save your work from the previous lab:
git add .
git commit -m "Commit message"
  • Get the lab for this week with the command git pull origin main --no-edit.
  • Good luck with the lab! :)

Group Contract

In addition to the report, you will deliver a group contract. The specifications of the contract can be found in the lab description.

Material for the group contract (from Experts in Teamwork (EiT)):

Note

The labs will be published continously thoughout the semester.
It will not be possible to aquire/work on a lab before the week it is planned to be published.