Estou tentando entender um aplicativo de backup funcionando e durante a preparação dos dados e upload para a nuvem, ele envia os dados de acordo com a largura de banda disponível. Como ele sabe a largura de banda disponível no momento? Ele usa algum outro aplicativo para obter essas informações?
Responder1
Normalmente, nenhum outro aplicativo está envolvido.
Speed.negotiation sobre TCP/IP possui controles integrados como buffers e confirmações que controlam as velocidades.
Se as velocidades forem variáveis e/ou as condições mudarem, o TCP descartará deliberadamente os pacotes para sinalizar fortemente ao remetente para diminuir a velocidade, após o que a velocidade aumentará gradualmente até que outro pacote seja descartado, etc.