2012-04-16 1 views
0

Как я могу использовать netty для создания надежного UDP?Как я могу использовать netty для создания надежного UDP?

Изменить исходный код нетто? Или использовать netty как низкий уровень и реализовать на уровне приложения надежный?

Спасибо! С наилучшими пожеланиями!

ответ

2

Это зависит от дизайна вашего приложения. Гораздо проще построить тонкий слой приложения (с простым фреймом данных с нумерацией последовательностей, кадром подтверждения с принятым порядковым номером и дополнительными обработчиками таймера для реализации повторной передачи), чем изменение источника транспорта Netty UDP для добавления этих вещей.

Этот подход может столкнуться с некоторыми проблемами, такими как отправка фреймов с большими ракурсами IP-адресов, у вас есть фрагментация PDU приложения, возможно, вам придется добавлять к слою дополнительные вещи. В любом случае я бы сделал это, только если TCP или SCTP (Netty 4.X поддерживает SCTP) не могут использоваться для этой цели.

+0

Благодарим вас за ответ. – user1335950

+0

Спасибо за ваш ответ. Я хочу создать игровой сервер fps, который требует высокой производительности. Так что я думаю, что TCP SCTP не подходит. Я тестировал netty, что он может отправлять/получать пакеты на 64 КБ, поэтому я не думаю что я должен заботиться о IP-кадрах. – user1335950