The server handles all communication.
The server is started a few minutes before each class.
At this point we assume that the server is running on a Linux system.
The server needs to be able to handle multiple concurrent network connections,
at least one for each student plus one for the teacher.
The server uses 2 port numbers for communication, one for students and one for
the teacher.
The server generates several log files which will be used for creating reports
to be sent to teachers and students.
The log files can also be used to simulate
a class session that has been completed.
Server configuration includes the following:
- port numbers for the teacher and student
- duration (how long the server will run before it terminates)
- names of the log files
- passwords for the teacher and assistant
- course name
- course start time