1. wrap up send_buffer
2. cancel request