jidckii: Вы показали страницу, где нарисовано, что UDP или TCP оборачиваются в IP. Выше у вас в комментарии написано, что "UDP - поле data в ICMP-пакете". Так вот, пакет UDP/IP содержится не только там, где вы намалевали красным, но и в поле "Протокол верхнего уровня (октет 66)" - там записывается 17. Для ICMP в это поле записывается 1, а для TCP - 6.
jidckii: Вы можете указать страницу того же Таненбаума, на которой прямым текстом написано "UDP инкапcулируется в ICMP?" Я вот могу указать на вырезку из спецификации IP, опубликованную в википедии, в которой для UDP и ICMP предусмотрены разные идентификаторы протоколов, и оба они инкапсулируются в IP.
Jerrard Davey: а в /dev/input/event0 она прилетает?
От суперпользователя сделайте cat /dev/input/event0 и потыкайте ее, а также Fn и другие кнопки. Байты прилетают?
Модель OSI, в основном, интересна при академическом изучении сетей. Если начать строить сетевое оборудование и ПО строго по ней, получится антипаттерн "артель 'Реванш'" (переливание из пустого в порожнее) из "Золотого теленка" Ильфа и Петрова.
На практике чаще всего можно видеть "Модель TCP/IP".
"Объединить" очень многогранное слово - это может быть и join и union. Вы хотите два результата склеить, чтобы у вас после строк первого запроса шли строки второго, а потом - отсортировать?
iv_k: совет был актуален лет дцать назад - сейчас большинство компиляторов в состоянии выдать предупреждение в этом месте, а читать такой перевертыш труднее.