CoAP.Net
CoAP.Net copied to clipboard
Block-Wise Transfers (RFC 7959)
This is an outline of my progress of implementing RFC 7959.
Note: Block1 is request payload to a resource. Block2 is a response from a resource.
CoapClient
- Block1
- [X] Sending messages
- [X] Reduce block size on response
- [X] Restart Block-Wise transfer on block 0 when received a 4.14 - RequestEntityTooLarge
- [ ] Fail Bloc-kWise transfer on when received a 4.14 - RequestEntityTooLarge
- [ ] Reduce re-transmit attempts
- Block2
- [ ] Receiving messages
- [ ] Cancel receiving
CoapServer
- Block2
- [ ] Respond with block-wise transfer.
- More to add soon
Need to make sure the Stream interface behaviour is used properly.
At the moment. When invoking Write
, the data is queued and returns immediately.
Instead. the write operation should begin right away (if possible). and write as many full blocks then return. the last incomplete block should be the only thing to write during a Close
or Dispose