CS 268 - Assignment 4: Remote Sensor Protocol


Given: November 27, 2000
Due: December 15, 2000 (December 8, 2000 for extra credit)
Language Options: any

A frantic potential customer for your consulting business asks you to do some work for them. They have a stand alone embedded system that needs to be deployed to numerous remote sensor locations. Each location is connected to the general Internet through a modem. The customer wants the sensors to be able to send data over this connection as well as receive control commands over it as well. You are asked to design the protocol to do this.

The customer asks that you design and build a client application and a server application as a proof of concept. Eventually, the client application would be embedded in the remote sensors and the server would be embedded in a control console application.

You are free to use any protocol you deem fit or create your own. However, keep in mind that the client should be as simple (and small) as possible since it will be placed in an embedded system where memory is at a premium. The customer tells you that they need the following types of messages:

The customer asks for a design document detailing the protocol used, as well as, the source code itself and the output of a test plan on the server and client. The protocol should be explained in detail and resemble an IETF standards document in form.

You will need to turn in a design document, test plan for the client and server, test plan output, and source code. The design document must be in text (no Microsoft Word or other word processor format!). All items should be turned in using the submission script as used in previous assignments.

Extra Credit

Value: up to +8% onto final grade

For extra credit, add authentication to all messages sent from a command console to a sensor. [+2%]. Add in optional encryption support for the sensor data [+4%]. This piece may not be implemented. If this is submitted on or before December 8, then an additional [+2%] will be awarded.


Todd L. Montgomery (revised 11.26.2000)