Convert cancel concept to close
Use close instead of cancel
Implement asyncKeepalive