Используя Wireshark, я пытаюсь отладить ошибку, которую я испытываю с одним из моих приложений. У меня возникают трудности с пониманием того, как содержимое пакета форматируется и отображается в Wireshark. Чтобы лучше понять, пожалуйста, подумайте об этом:
Я записываю следующие данные в качестве префикса в сообщение TCP, отправленное из моего приложения:
1b version buffer, value 52
4b message buffer length, value 1171
Применив соответствующий фильтр, Wireshark отображает следующее шестнадцатеричное представление для первых 5 байтов сообщения:
0x34
0x93
0x04
0x00
0x00
Первый байт 0x34 соответствует буферу версий, который я написал из своего приложения, поскольку десятичное представление 0x34 фактически равно 52!
Тем не менее, следующие четыре байта, по-видимому, не представляют длину буфера сообщений 1171 согласно значению, которое я записал в буфер из моего приложения.
Шестнадцатеричное значение 1171 составляет 0x493. Я запутался, потому что, учитывая шестнадцатеричный код, напечатанный в блоке кода выше, значение кажется правильным, только назад! Почему это?