SWEA 2023 Weekplan 10

The learning goals for Week 45 are:

Mon: Networking - TCP/IP. Wed: Distribution and Broker I. Sockets.

Literature:

Slides:

Notes for this weekplan:

Monday lecture (at 9.15) is a cursory introduction to TCP/IP and networks. The main focus is in the Wednesday lecture on the Broker pattern.

This week we switch to my new book "Flexible, Reliable, Distributed Software" (FRDS) that I completed in 2020, find the link in the literatur section above.

Source code for the FRDS.Broker library is open source at Bitbucket: FRDS.Broker Library.

Lab classes should work on Mandatory iteration 8 and perhaps the exercises below.

Additional exercises:

Echo: Java Sockets

Skim the Java Tutorial on Sockets, and download the EchoClient and EchoServer. Compile and

  1. Start a server and a single client, and echo some stuff.
  2. Kill the server and see what happens when you type something in the client. Explain.
  3. Start a client without any server running. Explain.
  4. Start a server, try opening multiple shells and run multiple echo clients in them. What happens? Explain.
  5. Try running the server in the Mxx VM and the client on your host machine or vice versa.

Legend: The typography bold, normal, (brackets), above indicate my perception of how important the exercises are from high to optional. However, solve the mandatory project first!