Em que consiste um pacote de rede?

0

Conheço redes básicas, mas não sou muito bom nisso. Agora, estou calculando quantos pacotes serão perdidos se eu usar o UDP sobre IPv4 . Eu posso assumir que a sobrecarga do protocolo para dados enviados via UDP sobre IPv4 é de 66 bytes . E os dados precisam ser transmitidos em blocos de tamanho 4KB (esse é o tamanho da carga útil de cada pacote).

Então aqui está a minha pergunta:

Em que consiste um pacote de rede?

A Wikipedia afirma que

Um pacote consiste em dois tipos de dados: informações de controle e dados do usuário (também conhecidos como carga útil).

Então, basicamente, um pacote tem um cabeçalho e um trailer com dados de carga útil no meio.

Uma estrutura de pacotes fica assim: Cabeçalho | Carga útil | Reboque

Portanto, se eu quiser formar um pacote, devo incluir a sobrecarga do protocolo no meu cálculo?

Tamanho do pacote = 66 bytes (sobrecarga do protocolo) + 4096 bytes (carga útil) = 4162 bytes

qualquer ajuda seria muito bem vinda.

Aung Kaung Hein
fonte
Você diz que deseja calcular os pacotes perdidos, mas depois continua a tarefa sobre o tamanho dos pacotes. Isso ocorre porque você conhece a taxa de erro de bits e pode usá-la e o tamanho do pacote para calcular a taxa de perda de pacotes? Nesse caso, recomendo deixar claro na pergunta. Eu só percebi o porquê, ao perguntar o porquê (eu escrevi o início deste comentário antes de perceber, então acho que os outros teriam o mesmo ou pior problema).
CTRL-ALT-DELOR
@richard Estou fazendo um experimento sobre a situação em questão. 4788 MB de dados devem ser transmitidos de A para B. Como você sabe, o UDP geralmente não é confiável: em média, 3,3% dos pacotes de dados transmitidos são perdidos. A sobrecarga do protocolo é de 66 bytes. Então, eu preciso saber como descobrir primeiro o tamanho de um pacote para poder calcular quantos pacotes serão transmitidos. Então, devo adicionar uma sobrecarga para calcular o tamanho do pacote ou preciso usar a carga útil?
Aung Kaung Hein
A taxa de perda de pacotes pode variar: usei o UDP em uma LAN dedicada e obtive zero perda. Por outro lado, se você o enviar por uma rede muito ruim, poderá piorar. Pacotes maiores são mais propensos a se perder. Pacotes menores têm mais sobrecarga. Se você usa o UDP, precisa adicionar seu próprio protocolo para lidar com a perda de pacotes (ou saiba que pode confiar 100% na camada de rede, para fazer isso por você).
Ctrl-alt-delor 27/07/2014
Eu tive alguns problemas para entender isso. Obrigado por toda a sua explicação @richard. Você tem sido uma grande ajuda para mim. Então, se vamos dizer, eu preciso descobrir quantos pacotes precisam ser transmitidos para que todos os 4788 MB de dados sejam recebidos em B, seria correto usar essa fórmula? 4788 MB / Tamanho do pacote, que é a soma de sobrecarga e carga útil (66 bytes + 4096 bytes) Perda zero neste caso.
Aung Kaung Hein
Eu calculei desta maneira: 1 pacote tem 4162 bytes. Então, quantos pacotes serão transmitidos para 4788 MB? Obtive 4162 bytes porque adicionei sobrecarga no meu cálculo. Ou devo apenas usar 4096 bytes sem sobrecarga? É exatamente isso que eu quero saber.
Aung Kaung Hein

Respostas:

1

Para calcular o número mínimo de pacotes necessários, envie uma determinada quantidade de dados (assumindo zero perdas).

Let Sp be the size of the payload of a packet.
Let St be the total size of the data.
Let Np be the number of packets.
then
Np=St/Sp

Nesse caso, não consideramos os metadados (cabeçalho / sobrecarga).


Vamos considerar um exemplo físico.

Se tivermos 1L de água (Vt). Queremos movê-lo usando um copo (Vc). Portanto, o número de vezes que temos que usar cup (Nc) é Nc = Vt / Vc.

Mas qual Vc, o copo tem dois volumes, um interno e um externo (Vi e Ve). O volume externo é a quantidade de água que seria deslocada se tivesse uma tampa para impedir a entrada de água, ou Vi + Vm, onde Vm é o volume dos materiais de que o copo é feito. Vi é mais simplesmente o volume de água que o copo pode conter. Qual valor de Vc devemos usar? Vc = Ve ou Vc = Vi

ctrl-alt-delor
fonte
0
  • P: Em quais partes do pacote a corrupção faria com que ela não fosse entregue?
  • R: Um erro em qualquer parte importante de um pacote fará com que seja rejeitado.
  • P: Qual parte se um pacote é importante.
  • A: Tudo isso, ou então não existiria.

Portanto, considere o pacote inteiro: carga útil, udp, ipv4, camada de rede (ethernet, ppp, etc). Observe que a camada de rede pode mudar para diferentes partes da jornada, e para o comprimento do pacote, mas também a taxa de erros de bits.

ctrl-alt-delor
fonte
1
> the network-layer may change for different parts of the journey- mudança na camada de rede => informações de controle adicionais / removidas, o pacote pode ser encapsulado nas informações de transporte de uma rede arbitrária que a está retransmitindo.
Hannu 27/07