Estou revisando a unidade de segurança de rede da classe em que estou e tive uma pergunta.
Eu sei que datagramas são pacotes na camada de transporte do modelo OSI, enquanto quadros são o nome para pacotes na camada de transporte e pacotes de rede na camada de rede. Eu também sei que cada um contém um cabeçalho com informações gerais, como os endereços IP de origem e destino, além de uma carga útil de dados. Mas não consegui encontrar nada sobre as diferenças mais sutis entre o conteúdo de datagramas, quadros e pacotes de rede. Existem recursos ou diagramas para os quais você possa me indicar, para que eu possa aprofundar minha compreensão desses conceitos?
Obrigado!
Respostas:
Nota:
o termo
datagram
é usado de várias maneiras. Se mantivermos o RFC1594, um datagrama ée pode ser usado para falar sobre qualquer unidade de transmissão de camada.
IE
packet
é o datagrama da camada da Internetframe
é o datagrama da camada de acesso à rede.segment
Voltar para a pergunta
A partir desta resposta sobre estouro de pilha
Como você pode ver :
o aplicativo
data
recebe um cabeçalho de protocolo de transporte (UDP ou TCP geralmente) e se torna umsegment
.O
segment
recebe um cabeçalho IP e agora é umpacket
Ele
packet
recebe um cabeçalho de quadro e um rodapé de quadro para formar umframe
fonte
packet
novo (como por esta resposta )Os termos
Frame
,Packet
eSegment
existem para criar abstrações do que uma camada é responsável pelos versos das outras.Para explicar isso e responder sua pergunta completamente, vou começar um pouco "mais cedo" do que você está realmente perguntando.
Portanto...
O é essencialmente o processo de encapsulamento, ilustrado nesta animação:
Um quadro , então, é o cabeçalho L2 mais os dados que precisam ser entregues no próximo salto:
[L2 HDR][110011001010101011110000...010101]
1
s e0
s que precisam ser entregue a outro hop.Um pacote , então, é o cabeçalho L3, mais os dados que precisam ser entregues para a outra extremidade:
[L3 HDR][1010101011110000...010101]
1
s e0
s que precisam ser outro terminalUm segmento , então, é o cabeçalho L4, mais os dados que precisam ser entregues ao outro serviço:
[L4 HDR][11110000...010101]
E os dados do aplicativo em si, é claro, diferem em todos os aplicativos. HTTP para solicitações da Web, FTP para transferências de arquivos e assim por diante.
O termo datagrama em si é simplesmente a construção de um cabeçalho e bits. E os termos acima são simplesmente os nomes exclusivos para o datagrama específico que opera em cada camada.
fonte