diff -Nuar a/vendor/magento/module-dhl/Model/Carrier.php b/vendor/magento/module-dhl/Model/Carrier.php
index 4d7ada2da13..0735c738cec 100644
--- a/vendor/magento/module-dhl/Model/Carrier.php
+++ b/vendor/magento/module-dhl/Model/Carrier.php
@@ -7,22 +7,23 @@
 namespace Magento\Dhl\Model;
 
 use Magento\Catalog\Model\Product\Type;
+use Magento\Dhl\Model\Validator\XmlValidator;
 use Magento\Framework\App\ObjectManager;
 use Magento\Framework\App\ProductMetadataInterface;
 use Magento\Framework\Async\CallbackDeferred;
+use Magento\Framework\HTTP\AsyncClient\HttpException;
 use Magento\Framework\HTTP\AsyncClient\HttpResponseDeferredInterface;
 use Magento\Framework\HTTP\AsyncClient\Request;
 use Magento\Framework\HTTP\AsyncClientInterface;
 use Magento\Framework\Module\Dir;
-use Magento\Sales\Exception\DocumentValidationException;
-use Magento\Sales\Model\Order\Shipment;
+use Magento\Framework\Xml\Security;
 use Magento\Quote\Model\Quote\Address\RateRequest;
 use Magento\Quote\Model\Quote\Address\RateResult\Error;
+use Magento\Sales\Exception\DocumentValidationException;
+use Magento\Sales\Model\Order\Shipment;
 use Magento\Shipping\Model\Carrier\AbstractCarrier;
 use Magento\Shipping\Model\Rate\Result;
 use Magento\Shipping\Model\Rate\Result\ProxyDeferredFactory;
-use Magento\Framework\Xml\Security;
-use Magento\Dhl\Model\Validator\XmlValidator;
 
 /**
  * DHL International (API v1.4)
@@ -1064,8 +1065,15 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
                     function () use ($deferredResponses, $responseBodies) {
                         //Loading rates not found in cache
                         foreach ($deferredResponses as $deferredResponseData) {
+                            $responseResult = null;
+                            try {
+                                $responseResult = $deferredResponseData['deferred']->get();
+                            } catch (HttpException $exception) {
+                                $this->_logger->critical($exception);
+                            }
+                            $responseBody = $responseResult ? $responseResult->getBody() : '';
                             $responseBodies[] = [
-                                'body' => $deferredResponseData['deferred']->get()->getBody(),
+                                'body' => $responseBody,
                                 'date' => $deferredResponseData['date'],
                                 'request' => $deferredResponseData['request'],
                                 'from_cache' => false
@@ -2029,7 +2037,8 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
         $isDomestic = (string)$this->getCountryParams($destCountryCode)->getData('domestic');
 
         if (($origCountry == $destCountry && $isDomestic)
-            || ($this->_carrierHelper->isCountryInEU($origCountryCode)
+            || (
+                $this->_carrierHelper->isCountryInEU($origCountryCode)
                 && $this->_carrierHelper->isCountryInEU($destCountryCode)
             )
         ) {
diff -Nuar a/vendor/magento/module-ups/Model/Carrier.php b/vendor/magento/module-ups/Model/Carrier.php
index 27614d007c6..2c695651e1b 100644
--- a/vendor/magento/module-ups/Model/Carrier.php
+++ b/vendor/magento/module-ups/Model/Carrier.php
@@ -11,6 +11,7 @@ use Magento\Framework\App\ObjectManager;
 use Magento\Framework\Async\CallbackDeferred;
 use Magento\Framework\DataObject;
 use Magento\Framework\Exception\LocalizedException;
+use Magento\Framework\HTTP\AsyncClient\HttpException;
 use Magento\Framework\HTTP\AsyncClient\HttpResponseDeferredInterface;
 use Magento\Framework\HTTP\AsyncClient\Request;
 use Magento\Framework\HTTP\AsyncClientInterface;
@@ -791,17 +792,27 @@ XMLRequest;
             [
                 'deferred' => new CallbackDeferred(
                     function () use ($httpResponse, $debugData) {
-                        if ($httpResponse->get()->getStatusCode() >= 400) {
-                            $xmlResponse = '';
-                            $debugData['result'] = [
-                                'error' => $httpResponse->get()->getBody(),
-                                'code' => $httpResponse->get()->getStatusCode()
-                            ];
-                        } else {
-                            $xmlResponse = $httpResponse->get()->getBody();
-                            $debugData['result'] = $xmlResponse;
+                        $responseResult = null;
+                        $xmlResponse = '';
+                        try {
+                            $responseResult = $httpResponse->get();
+                        } catch (HttpException $exception) {
+                            $this->_logger->critical($exception);
+                        }
+
+                        if ($responseResult) {
+                            if ($responseResult->getStatusCode() >= 400) {
+                                $xmlResponse = '';
+                                $debugData['result'] = [
+                                    'error' => $httpResponse->get()->getBody(),
+                                    'code' => $httpResponse->get()->getStatusCode()
+                                ];
+                            } else {
+                                $xmlResponse = $httpResponse->get()->getBody();
+                                $debugData['result'] = $xmlResponse;
+                            }
+                            $this->_debug($debugData);
                         }
-                        $this->_debug($debugData);
 
                         return $this->_parseXmlResponse($xmlResponse);
                     }
diff -Nuar a/vendor/magento/module-usps/Model/Carrier.php b/vendor/magento/module-usps/Model/Carrier.php
index 85e0cf2f699..47bb68a10ad 100644
--- a/vendor/magento/module-usps/Model/Carrier.php
+++ b/vendor/magento/module-usps/Model/Carrier.php
@@ -8,6 +8,8 @@ namespace Magento\Usps\Model;
 
 use Magento\Framework\App\ObjectManager;
 use Magento\Framework\Async\CallbackDeferred;
+use Magento\Framework\DataObject;
+use Magento\Framework\HTTP\AsyncClient\HttpException;
 use Magento\Framework\HTTP\AsyncClient\Request;
 use Magento\Framework\HTTP\AsyncClientInterface;
 use Magento\Framework\Xml\Security;
@@ -25,19 +27,19 @@ use Magento\Usps\Helper\Data as DataHelper;
  */
 class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\Carrier\CarrierInterface
 {
-    /** @deprecated */
+    /** @deprecated Redundant dependency */
     const CONTAINER_VARIABLE = 'VARIABLE';
 
-    /** @deprecated */
+    /** @deprecated Redundant dependency */
     const CONTAINER_FLAT_RATE_BOX = 'FLAT RATE BOX';
 
-    /** @deprecated */
+    /** @deprecated Redundant dependency */
     const CONTAINER_FLAT_RATE_ENVELOPE = 'FLAT RATE ENVELOPE';
 
-    /** @deprecated */
+    /** @deprecated Redundant dependency */
     const CONTAINER_RECTANGULAR = 'RECTANGULAR';
 
-    /** @deprecated */
+    /** @deprecated Redundant dependency */
     const CONTAINER_NONRECTANGULAR = 'NONRECTANGULAR';
 
     /**
@@ -150,6 +152,11 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
     private $proxyDeferredFactory;
 
     /**
+     * @var DataObject
+     */
+    private $_rawTrackRequest;
+
+    /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
@@ -560,7 +567,13 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
                 [
                     'deferred' => new CallbackDeferred(
                         function () use ($deferredResponse, $request, $debugData) {
-                            $responseBody = $deferredResponse->get()->getBody();
+                            $responseResult = null;
+                            try {
+                                $responseResult = $deferredResponse->get();
+                            } catch (HttpException $exception) {
+                                $this->_logger->critical($exception);
+                            }
+                            $responseBody = $responseResult ? $responseResult->getBody() : '';
                             $debugData['result'] = $responseBody;
                             $this->_setCachedQuotes($request, $responseBody);
                             $this->_debug($debugData);
