Hello reply:
(only status)
+
+Submit request:
+
+ !SUBMIT
+ Ttask
+ Ppart <-- optional part ID
+ Ssize
+ Xextension
+ (after the request is ACK-ed, the client sends raw data and then server sends a 2nd reply)
+
+Submit reply:
+
+ (only status)
+
+Submit reply after data:
+
+ (only status)
+
+Status request:
+
+ !STATUS
+
+Status reply:
+
+ task status objects defined below with the following added:
+ (T
+ Aallowed_extension
+ )
+
+NOP request:
+
+ !NOP
+
+NOP reply:
+
+ (only status)
+
+
+Task status objects
+~~~~~~~~~~~~~~~~~~~
+(T <-- task
+ Tname
+ (P <-- task part
+ Pname
+ Vid <-- which version is current
+ (V <-- submitted version
+ Vid
+ Tsubmit_time
+ Sstatus
+ Lfilesize
+ Hhash
+ Xextension
+ )
+ )
+)