http://www.inmalafide.com/blog/2011/10/26/virtual-disconnection/