Difference between revisions of "TCP repair TODO"

From CRIU
Jump to navigation Jump to search
(Timestamps are done)
Line 6: Line 6:
 
; Optimized restore
 
; Optimized restore
 
: Currently the whole outgoing queue is restored in a "all was sent, waiting for ACK-s" state. After this the data that was really not sent yet will be re-transmitted after a while. This will make the connection work, but will delay it for some time. Need to improve this.
 
: Currently the whole outgoing queue is restored in a "all was sent, waiting for ACK-s" state. After this the data that was really not sent yet will be re-transmitted after a while. This will make the connection work, but will delay it for some time. Need to improve this.
 
; Timestamps
 
: If a TCP socket will get live-migrated from one box to another the timestamps (which are typically ON) will get screwed up -- the new kernel will generate TS values that has nothing to do with what they were on dump. The solution is to yet again fix the kernel and put a "timestamp offset" on a socket.
 
  
 
; OOB data
 
; OOB data

Revision as of 15:21, 4 March 2013

TCP repair feature in the Linux kernel is supposed to help migrating a TCP socket. It's not yet complete and this page lists what is to be done.

Transitional states
Currently we support sockets in closed and establised states. However, if a socket is in e.g. syn-sent state the process of turning it into established can last long. We should teach the kernel and crtools to checkpoint and restore this and other states
Optimized restore
Currently the whole outgoing queue is restored in a "all was sent, waiting for ACK-s" state. After this the data that was really not sent yet will be re-transmitted after a while. This will make the connection work, but will delay it for some time. Need to improve this.
OOB data
Nothing to say here actually. This data is just not supported currently.
Window restore fix
Currently what we do it send the window probe skb when repair is OFF. The other side should send us the response, but this process is not guaranteed to work. Need to fix this either by saving and restoring the window value, or by re-transmitting the probe again and again.
Shutdown sockets repair
Need to place checks in the inet shutdown code similar to those on connect/sendmsg paths.