code: def _send_file_external_with_retry(self, http_verb, host, url, http_headers, chunk):
          
          count = 0
          retry_times = 1
          if http_verb == 'PUT':
              retry_times = SEND_EXTERNAL_PUT_RETRY_TIMES
          while True:
              try:
                  return self.data_service.send_external(http_verb, host, url, http_headers, chunk)
              except requests.exceptions.ConnectionError:
                  count += 1
                  if count < retry_times:
                      if count == 1:  # Only show a warning the first time we fail to send a chunk
                          self._show_retry_warning(host)
                      time.sleep(SEND_EXTERNAL_RETRY_SECONDS)
                      self.data_service.recreate_requests_session()
                  else:
                      raise
docs: Send chunk to host, url using http_verb. If http_verb is PUT and a connection error occurs
          retry a few times. Pauses between retries. Raises if unsuccessful.