
Estou pesquisando um registro do Wireshark fornecido por alguém, para analisar algo para eles. O Wireshark remontou convenientemente 3 segmentos TCP que transportaram um único pacote TLS. O pacote TLS não cabe no MSS de 1460 bytes, portanto o host criou 3 segmentos TCP dele e o wireshark detectou isso:
[3 Reassembled TCP Segments (5914 bytes): #8(1440), #10(1440), #12(3034)]
[Frame: 8, payload: 0-1439 (1440 bytes)]
[Frame: 10, payload: 1440-2879 (1440 bytes)]
[Frame: 12, payload: 2880-5913 (3034 bytes)]
[Segment count: 3]
[Reassembled TCP length: 5914]
[Reassembled TCP Data: ... ]
Isso é ótimo, mas o que não entendo é porque o 3º segmento tem um tamanho que ultrapassa o MSS dessa conexão TCP, que foi negociado no SYN/SYN+ACK em 1460 bytes.
Responder1
Posteriormente, eu mesmo descobri o motivo: isso se deve aGrande descarregamento de recebimentocomo explicado emhttp://rtoodtoo.net/generic_segmentation_offload_and_wireshark/. A placa de interface de rede ou kernel do host coletou vários segmentos TCP e os fundiu em um único segmento grande antes de passar para o espaço do usuário.
Foi assim que o wireshark registrou o tráfego como um único segmento TCP/pacote IP que excede o MTU e o MSS permitidos.