diff --git a/lib/config.js b/lib/config.js
index <HASH>..<HASH> 100644
--- a/lib/config.js
+++ b/lib/config.js
@@ -395,7 +395,8 @@ function connect(options, cb) {
   var timer = setTimeout(function() {
     if (req) {
       req.emit('error', new Error('Timeout'));
-      req.abort();
+      req.destroy();
+      req.socket && req.socket.destroy();
     }
   }, CONN_TIMEOUT);
   var req = httpModule.request(proxyOptions);
diff --git a/lib/plugins/index.js b/lib/plugins/index.js
index <HASH>..<HASH> 100644
--- a/lib/plugins/index.js
+++ b/lib/plugins/index.js
@@ -820,6 +820,7 @@ function getPipe(type, hookName) {
       var destroy = function() {
         if (client) {
           client.destroy();
+          client.socket && client.socket.destroy();
           client = null;
         }
       };
refactor: ensure to close the connection