Ramm
> Считываю их так (С#)
а, так ты на шарпе, возьми lidgren и не мучайся
Zab
> Упоминается что где-то могут не поддерживать доставку фрагментированных
> пакетов.
такого нет, но реально скромный MTU встречается, я как-то ставил бит DF, первыми начали ругаться чуваки на немецких форумах, кое-как через гугл-транслейт понял что накосячил, т.е. до них стандартные 1200 байт доходят только во фрагментированном виде, и даже хуже потому как не каждый пакет идёт под завязку
Занимаюсь игрой в жанре шутана под мобилки. Вставлю свои 5 копеек. TCP для шутанов - полный провал. То, что написано на gafferongames.com все еще актуально в полной мере. Считаю сетевое решение Кармака почти 20-тилетней давности в Кваке просто мега-крутым. Оно прелестно начиная от его концепции RUDP и заканчивая Дельта-компрессией. Причем эти штуки не завязаны одна на другую почти никак. Покапай исходники.
Ну и оставлю тут пару ссылочек на почитать:
QUAKE 3 SOURCE CODE REVIEW: NETWORK MODEL
QUAKE ENGINE CODE REVIEW : NETWORK
The DOOM III Network Architecture
>Сейчас не найдешь сетей, где максимальный размер пакета, на уровне сокетов, меньше 1200 байт (с каким-то там хвостиком, не помню цифру точно)
В интернете столько "Полезных" советов для геймеров, для уменьшения пинга, где говориться об уменьшении MTU.
Так вот, если в системе уменьшить MTU, то перестают работать 90% сетевых игр.
Поэтому я всегда использую размер буфера в 508 байт.
И на всякий случай еще setsockopt на recv и send ставлю. Хотя не уверен, работает ли это для UDP.
У UDP есть еще один плюс для action-игр - возможность простой реализации p2p. Маршрут короче - еще меньший ping и потеря пакетов.
Тема в архиве.