we are going to implement a simple version of the ABD protocol presented in the paper with a couple of small changes:
1) only clients will read and write. the servers that host the registers will only store the register.
2) registers in the service have a string key, a string value, and a uint64 timestamp.
3) to make it possible for new writers to pick valid timestamps, the writer's timestamp will be milliseconds since the "epoch" (midnight, January 1, 1970 UTC). this is a what time.time() in python and System.currentTimeMillis() gives you in java.
4) we will use grpc (http://grpc.io (Links to an external site.)) to do the communication. you can find the proto file and some skeleton code at https://bitbucket.org/br33d/cs249/src/master/ (Links to an external site.). you can use any language you want. you don't have to use the code i've provided. you do need to use the proto file without modifications so that you can interop with the rest of the class.
you will need to implement the client