O que dá para fazer com sua banda (o que esses “Mbps” significam na prática)

Isso é algo que de vez em quando eu tenho que ilustrar para clientes. Eu fiz um programinha em Delphi que faz essas contas (dá para fazer no Excel também) mas achei interessante usar como exercício aqui para o plugin Calculated Fields Form.

NOTA: Conforme se pode ver nos comentários minha decisão de fazer as contas como se cada byte tivesse 10 bits gerou polêmica. Eu espero ter explicado satisfatoriamente a razão. Se não se conforma com isso, não use a calculadora.

O conteúdo desta página requer javascript habilitado no seu navegador.

VN:R_U [1.9.13_1145]
Rating: 0.0/5 (0 votes cast)
Be Sociable, Share!
33 comentários
  • Luciano - 297 Comentários

    Acrescenta um campo mostrando a velocidade real em KB/s. Isso ajuda e explicar porque uma conexão de 4mbps “só faz” download a 500KB/s.

    A gente sabe que é dividir o valor em mbps que a empresa diz por 8.

    VA:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Jefferson - 5.025 Comentários

    8? Eu divido por 10.

    Uma conexão de 4Mbps não passa de 400KB/s.

    Estou entendendo algo errado?

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
    • Luciano - 297 Comentários

      Se ai tá dando com dividir por 10 estão te roubando… Eu tenho 2mbps aqui e consigo download a 252KB/s

      VA:R_U [1.9.13_1145]
      Rating: 0.0/5 (0 votes cast)
    • Luciano - 297 Comentários

      Esqueci a explicação. Basta lembrar que eles vendem a conexão em bit e os programas medem download em bytes. E como um byte é formado por 8 bits… então o correto é dividir por 8.

      Isso é assim desde a época dos modems, quando eu consguia espantosas conexões a 53333bps com um US-Robotics externo, e os marcadores de download marcavam espantodos (pra época) 6.7KB/s de taxa de tranferencia.

      Você pode comprovar o que falo, usando o DU-Meter ou algum outro medidor de taxa de transferencia que possa medir a taxa tanto em Mbps ou MB/s. Verá que é dividido por 8.

      VA:R_U [1.9.13_1145]
      Rating: 0.0/5 (0 votes cast)
      • Jefferson - 5.025 Comentários

        Eu não estou com tempo para discutir isso agora mas minha experiência sempre foi diferente da sua. E você está no mínimo esquecendo do overhead do protocolo TCP-IP, que não justifica dividir por 10, mas também não por 8.

        VN:R_U [1.9.13_1145]
        Rating: 0.0/5 (0 votes cast)
        • Luciano - 297 Comentários

          Relaxa, manhã eu faço um teste legal lá na oficina onde tenho 2mbps, e posto aqui as imagens explicativas. Dai você vai ver que dividir por 10 tá errado.

          p.s. Tá funcionando o Simple Edit Coment! Só aumenta pra 10 minutos o tempo depois… :-)

          VA:R_U [1.9.13_1145]
          Rating: 0.0/5 (0 votes cast)
  • Ricardo Menzer - 84 Comentários

    Também uso como “rule of thumb” dividir por 10. Como o Jefferson falou, não é exatamente 10, mas também não dá 8. Sobre o Calculated Field Forms, se forem usadas as setinhas para aumentar ou diminuir o valor da banda, algumas vezes os demais campos não são atualizados. Porém, ao mover o mouse, ocorre a atualização. Estranho é que algumas vezes, só utilizando as setinhas, os campos são atualizados.

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Ygor Almeida - 119 Comentários

    Acho que vou plagiar um pedaço de um texto aqui, porque também sempre aprendi que era por 8 e nunca por 10 – a divisão correta.

    “eu uso 10, apenas pra fazer por porcentagem – 10% da conexão”, bem vulgar de se falar, pra leigo entender.

    Vamos lá.

    “Entretanto, por uma questão de marketing, as operadoras usam os bits na propaganda e, de certa forma, enganam o consumidor. E qual a diferença entre um byte e um bit? Bom, o bit é a menor unidade de informação. Um bit pode assumir os valores 0 e 1, algarismos usados como base para o sistema binário. Quando colocamos 8 bits juntos, obtemos 1 byte.

    Assim, fica fácil compreender que um byte é oito vezes maior que um bit e que, portanto, o bit é oito vezes menor que o byte. Usando a mesma música MP3 que citamos anteriormente, ao converter seu tamanho para bits, obtemos o tamanho total de 41.943.040, que, por sinal, é um número oito vezes maior que 5.242.880.”

    Assim como os prefixos “giga”, “mega” e “kilo” são aplicáveis aos bytes, eles também podem ser usados com os bits. Portanto, 1 kilobit contém 1.024 bits, e 1 megabit é igual a 1.024 kilobits.

    Como estamos tratando de matemática pura, a diferença entre 1 megabyte e 1 megabit é a mesma de 1 byte para 1 bit, ou seja, o megabyte é oito vezes maior do que o megabit, bem como o kilobyte é oito vezes maior do que o kilobit. A regra vale para o giga, o tera e outros prefixos.”

    Dessa forma, fica fácil entender o motivo de você contratar 10 mega e obter apenas 1 mega. De fato, as operadoras estão vendendo 10 mega, porém nunca é especificado que esse valor é em bits. A enganação acontece justamente nessa confusão de unidades.

    Nós, consumidores, acreditamos que as conexões são em megabytes, mas, na verdade, as velocidades contratadas são oito vezes menores, justamente porque o megabit é oito vezes menor do que o megabyte.
    Calculando a velocidade da sua conexão

    Agora que você já pegou o macete, fica fácil entender a velocidade da sua conexão e fazer os devidos cálculos, mas, para não restar dúvidas, vamos dar um exemplo:

    Jogue na sua calculadora o valor da sua conexão. Caso você tenha contratado um plano de 10 mega, digite 10;
    Depois, use a operação de divisão e divida o 10 por 8;
    Pronto, agora você sabe que a velocidade máxima da sua conexão é de 1,25 megabytes.

    Se você contratou um plano de 600 kilobits, basta efetuar o mesmo processo, mas tenha em mente que o resultado obtido será em kilobyte.”

    Fonte: https://www.tecmundo.com.br/banda-larga/32749-megabit-x-megabyte-qual-a-real-velocidade-da-minha-conexao-.htm

    Pode nem ser o melhor texto, mas eu aprendi assim a conta.
    Será que eu me enganei ( não é essa conta de binários ).

    Agora fiquei curioso, Como você estabeleceu 10 pra fazer a conta ??? risos

    VA:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
    • Jefferson - 5.025 Comentários

      Agora fiquei curioso, Como você estabeleceu 10 pra fazer a conta ???

      Por observação prática.

      No momento eu tenho dois acessos:

      ADSL Velox 800Kbps : Download topa em 82KB/s (Equivale a dividir por 9,8)
      Provedor do bairro a 4Mbps: Download topa em 420KB/s (Equivale a dividir por 9,5)

      Na minha cabeça a regra sempre foi dividir por 10, por causa do overhead. Sempre achei um overhead alto mas, diante das minhas observações, inescapável.

      O overhead teórico (este é de fato inescapável) está entre 2.8 e 3%.

      VN:R_U [1.9.13_1145]
      Rating: 0.0/5 (0 votes cast)
      • Jefferson - 5.025 Comentários

        Você tem pelo menos 110 comentários “órfãos” do buzz. Posso atribuir seu atual endereço de e-mail a eles?

        VN:R_U [1.9.13_1145]
        Rating: 0.0/5 (0 votes cast)
      • Jefferson - 5.025 Comentários

        Correção:

        O overhead teórico (este é de fato inescapável) está entre 2.8 e 3%.

        Você pode escapar dele se estiver usando UDP em vez de TCP. Mas excetuando streaming de áudio e vídeo, ninguém vai usar UDP para grandes volumes de dados.

        VN:R_U [1.9.13_1145]
        Rating: 0.0/5 (0 votes cast)
    • Jefferson - 5.025 Comentários

      A propósito, esse texto do Tecmundo é claramente voltado a quem é totalmente leigo. Eu sei perfeitamente a diferença ente bytes e bits. Você deveria a essa altura me conhecer melhor, Ygor. :)

      VN:R_U [1.9.13_1145]
      Rating: 0.0/5 (0 votes cast)
      • Ygor Almeida - 119 Comentários

        Você eu tenho certeza que sabe, assim como os que estão sempre aqui postando.
        Já não posso dizer o mesmo de algum perdido que caiu por aqui, que com certeza vai achar estranho ( ainda é estranho fazer a conta por 10 pra mim ). Por isso coloquei o texto na integra mesmo.

        Talvez se você abordar que é observação prática e não a conta em binários – algum perdido não vai fritar a cabeça.

        Afinal outro dia escutei de um cara recém formado, que se diz programador em Java, Android, HTML5, jQuery, php e mais umas coisas ( até tem 6 ou 7 projetos ) que parecem com trabalhos da faculdade provavelmente – o absurdo de que ele comprou um HD novo que tem 1 TB e ele ia voltar na loja pra reclamar que era pirata e ele tinha sido claramente enganado – pois dizia 1TB, e quando ele formatou no notebook dele tem 967GB apenas de espaço livre e era um absurdo que tinha que dar 1TB. E você pode imaginar o resto da confusão, com ele no melhor estilo puto e indignado começou a notar ser roubado em muitos outros equipamentos e que ele iria processar tudo.

        Até parei e deixar de falar pra não passar raiva, porque a idiotice foi ficando tão grande que não pude acreditar que ele fez realmente faculdade e era O PROGRAMADOR – e não conseguia fazer conta nem com ajuda da internet pra entender binário e a diferença das bases usadas por exemplo no mundo Microsoft e Apple pra expressar o tamanho ( no MAC – nem lembro se ainda esta assim, um disco de 1TB mostra 1000GB ).

        VA:R_U [1.9.13_1145]
        Rating: 0.0/5 (0 votes cast)
        • Jefferson - 5.025 Comentários

          Curiosamente, a minha “observação prática” é que todo mundo que aprendeu informática na faculdade não parece saber po**a nenhuma de informática.

          VN:R_U [1.9.13_1145]
          Rating: 0.0/5 (0 votes cast)
        • Jefferson - 5.025 Comentários

          Talvez se você abordar que é observação prática e não a conta em binários – algum perdido não vai fritar a cabeça.

          Eu não coloquei uma observação porque não encontrei prova em contrário. Qualquer pessoa que escreva:

          Dessa forma, fica fácil entender o motivo de você contratar 10 mega e obter apenas 1 mega

          (credo, chega a doer ler isso)

          Certamente não é digna de meu crédito.

          Eu sei três coisas:

          A teoria “leiga” diz para dividir por 8
          A teoria um pouco menos leiga manda levar em conta o overhead.
          Minhas observações mostram um overhead de 20%

          Até vocês (você e Luciano) insistirem que há algo errado com meu “universo observável” eu não tinha motivos para duvidar dele. Mas eu também não posso ignorá-lo agora e fazer de conta que o que observo é uma ilusão. Enquanto eu não achar a razão (e eu estou procurando) para minhas medidas serem estas eu vou continuar acreditando que, no mínimo, a regra do “dividir por 8” não é universal.

          VN:R_U [1.9.13_1145]
          Rating: 0.0/5 (0 votes cast)
  • Jefferson - 5.025 Comentários

    Mais um teste.

    Velox contratado de 10Mbps. Conectado segundo o modem, um ZTE ZXDSL 831II V1, a “11292”.

    Notebook rodando Windows 7, Firefox 47, conectado diretamente ao modem por cabo de rede. Download do arquivo ISO do UBUNTU na UFPR.

    Velocidade indicada pelo Firefox “topa” em 1.1MB/s.

    Pela teoria de vocês isso deveria chegar a 1.4MB/s.

    Por hora, acho desnecessário continuar perdendo meu tempo tentando provar que eu estou errado. Seria interessante se vocês descrevessem o cenário em que se chega a essa “divisão por 8” para que eu possa tentar reproduzir aqui.

    Nota para os bons entendedores: O modelo OSI tem 7 camadas.

    VA:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Sidmar - 3 Comentários

    Jefferson, a questão da divisão não ser exatamente por 8 nem por 10 talvez possa ser explicada pelo mesmo motivo descrito aqui (http://www.hardware.com.br/livros/hardware/gigabyte-bilhao-bytes.html) para os HD’s. Que é exatamente o caso descrito pelo Ygor.

    Quando contratamos “10 Mega” o provedor provavelmente nos entrega 10.000k “redondo” (base 10) quando o correto seria 10.240k (base 2). Assim as contas não batem mesmo.

    E isto só fica pior com velocidades maiores onde 20M são 20.000k em vez de 20.480k, 50M são 50.000k em vez de 51.200k, etc…

    Outro agravante é que em alguns casos a conexão é entregue via PPPoE até o equipamento da operadora na casa do assinante mas a conta da banda é feita na interface pura. Assim o overhead do PPPoE já mata uma parte da banda utilizável.

    VA:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
    • Jefferson - 5.025 Comentários

      Jefferson, a questão da divisão não ser exatamente por 8 nem por 10 talvez possa ser explicada pelo mesmo motivo descrito aqui

      Esse é um dos problemas. Se dependesse apenas dele, dividir por 8 estaria certo para todos os efeitos práticos.

      Quando contratamos “10 Mega” o provedor provavelmente nos entrega 10.000k “redondo” (base 10) quando o correto

      A velocidade de interfaces seriais é medida usando o sistema métrico decimal. Isso é padronizado. Apesar do que pode parecer, o sistema binário não é o melhor sistema para medir isso.

      seria 10.240k (base 2). Assim as contas não batem mesmo.

      Você está cometendo um erro comum e falhando na atenção aos números.

      1) 10.240k representa um erro de no máximo 2,5%. Dá para perceber olhando para o número que não explica o problema

      e

      2) Você está misturando sistema binário com decimal na mesma conta. Um erro muito comum. 1MB é 1KB elevado à segunda potência: 1024×1024 = 1.048.576. Tomando a liberdade de multiplicar pelo número decimal 10 para não terminar de dar um nó no juízo isso dá 10.485.760 bytes. Um erro aproximado de 5%. Sozinho, continuaria sendo o suficiente para o argumento de dividir por 8 fazer sentido.

      E isto só fica pior com velocidades maiores onde 20M são 20.000k em vez de 20.480k, 50M são 50.000k em vez de 51.200k, etc…

      Claramente quando as contas começam errado não tem como terminar certo. ;)

      Outro agravante é que em alguns casos a conexão é entregue via PPPoE até o equipamento da operadora na casa do assinante mas a conta da banda é feita na interface pura. Assim o overhead do PPPoE já mata uma parte da banda utilizável.

      Você está quase lá. “O modelo OSI tem 7 camadas.”

      VN:R_U [1.9.13_1145]
      Rating: 0.0/5 (0 votes cast)
    • Jefferson - 5.025 Comentários

      Nota:

      Quando você colocou um “k” nos seus números isso me confundiu. Trocando o “k” por um “K” suas contas ficam melhores, mas ainda assim é confuso. Para evitar essa confusão é que eu prefiro representar os números em bytes.

      Eu deveria ter me lembrado que esse é um problema comum antes de responder. Desculpe.

      VN:R_U [1.9.13_1145]
      Rating: 0.0/5 (0 votes cast)
      • Ygor Almeida - 119 Comentários

        Nota:

        Quando você colocou um “k” nos seus números isso me confundiu. Trocando o “k” por um “K” suas contas ficam melhores, mas ainda assim é confuso. Para evitar essa confusão é que eu prefiro representar os números em bytes.

        Eu deveria ter me lembrado que esse é um problema comum antes de responder. Desculpe.

        Sim isso ajuda a pirar qualquer um. Mesmo entendendo a base binária e decimal. E a confusão que “K” e “k”, podem fazer em um texto. Poderia haver uma forma mais fácil. Da pra entender os motivos de deixar universitários ou não perdidos nas contas.

        Por hora estou procurando uma explicação convincente de que seja dividido por 8 e não 10. Mas frente aos argumentos estou avaliando mudar de opinião. É difícil achar lógica e uma explicação 100% para um ou outro argumento.

        VA:R_U [1.9.13_1145]
        Rating: 0.0/5 (0 votes cast)
        • Jefferson - 5.025 Comentários

          Sim isso ajuda a pirar qualquer um. Mesmo entendendo a base binária e decimal. E a confusão que “K” e “k”, podem fazer em um texto. Poderia haver uma forma mais fácil. Da pra entender os motivos de deixar universitários ou não perdidos nas contas.

          Eu contorno isso escrevendo “mil” quando estou usando o sistema decimal. Usar “k” em um texto de informática é ambíguo demais.

          Por hora estou procurando uma explicação convincente de que seja dividido por 8 e não 10. Mas frente aos argumentos estou avaliando mudar de opinião. É difícil achar lógica e uma explicação 100% para um ou outro argumento.

          Alguma vez você conseguiu transferir arquivos em uma rede cabeada de 100Mbps a mais que 11MB/s? O “usual” não é topar lá pelos 10MB/s?

          Eu sei que nesse caso estamos colocando uma interface no seu limite, mas não é muita coincidência essa semelhança de números, quando dividir 100Mbps por 8 daria um máximo de 12.500.000B/s ou 11.9MB/s (binário)?

          VN:R_U [1.9.13_1145]
          Rating: 0.0/5 (0 votes cast)
          • Jefferson - 5.025 Comentários

            naahhh… não é nada diferente. A conexão à internet também está sendo colocada no limite nessas medições.

            VN:R_U [1.9.13_1145]
            Rating: 0.0/5 (0 votes cast)
          • Jefferson - 5.025 Comentários

            Corrigindo a mim mesmo:

            Alguma vez você conseguiu transferir arquivos em uma rede cabeada de 100Mbps a mais que 11MB/s? O “usual” não é topar lá pelos 10MB/s?

            Isso parece não ser mais o problema que era. Acabo de testar aqui no seguinte cenário:

            PC1: Windows 8.1 x64
            PC2: Windows 7 x86
            Switch de 16 portas 100Mbps Intelbras SF 1600D

            E eu consegui uma velocidade média de 11.3MB/s (binário), que é bem próximo do máximo teórico da interface e deveria ser impossível se a interface usa 10 bits por byte.

            Mais informações ainda são necessárias.

            VN:R_U [1.9.13_1145]
            Rating: 0.0/5 (0 votes cast)
  • Jefferson - 5.025 Comentários

    A melhor explicação que encontrei para isso está aqui

    In standard computer nerd lexicon, eight bits equals one byte. So you would think that an 8GB/s metric would be equal to 64Gb/s. 8 Gbytes times 8 bits per byte equals 64 bits. Meaning, you could figure out how many GB/s you can get out of a particular Gb/s network link using an 8x factor.

    But the real world isn’t that simple.

    An “encoded” byte will have more than eight bits — e.g., the common Ethernet 8b10b encoding uses 10 bits on the wire to transport 8 bits of data. This is done for error detection and correction.

    Actually transporting a 10bit encoded byte will also require moving protocol headers and control frames. Thus, you typically use 20% or more of a network’s “bit rating” on encoding plus protocol overhead.

    Prestem atenção à conclusão: Você tipicamente usa 20% ou mais do “bit-rating” de uma rede em codificação mais overhead de protocolo.

    Isso explica quase tudo. Porém o artigo na Wikipedia que ele indica fala que a codificação 8b/10b é usada no padrão gigabit e não cita nenhum outro padrão ethernet. Eu estou inclinado a acreditar que no padrão 100BASE-T cada byte seja representado por uns 9 bits (camada 1) e o resto da diferença venha do overhead acrescentado nas outras camadas e da conversão decimal-binário.

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Jefferson - 5.025 Comentários

    Este artigo da Microsoft afirma que o padrão Fast Ethernet (100BASE-T) usa codificação 8b/10b e confirma as perdas.

    este artigo na Wikipedia afirma que trata-se da codificação 4b5b. O que não parece mudar nada.

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Jefferson - 5.025 Comentários

    O plugin Calculated Field Forms tem diversos “temas” para escolher mas por uma razão que não entendo o autor decidiu que ao escolher certo tema tudo o que você escreveu deve ser colocado em maiúsculas. Assim “Mbps” vira “MBPS” o que bagunça a compreensão. Ignorem por enquanto.

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)

Deixe um comentário

Siga as Regras de Participação, ou seu comentário será ignorado.

Não faça comentários sem relação com os posts. Comente neste post para assuntos genéricos

Você pode usar estas tags HTML

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

  

  

  

:) :( ;) O_o B) :lol: :huh: :S :D :-P 8-O :yahoo: :rtfm: :dashhead1: :clapping: more »