Многоканальная и клиентская архитектура

Я делаю проект, который будет иметь несколько каналов для общения клиентов. Каждый клиент будет получать сообщения только от канала, к которому он присоединился.

Мне интересно во время реализации сервера, я должен назначить каждый канал для отдельного / другого порта?

Потому что говорит, что если я заставлю сервер слушать только ОДИН порт (И все каналы используют этот единственный порт), то как я буду различать и решать, какое сообщение будет передаваться, а какое нет, при использовании записи Networkstream а читать метод???

Огромное спасибо заранее!

2 ответа

Решение

Предполагая, что под каналами вы подразумеваете что-то вроде IRC, вам, вероятно, следует прослушивать один порт на сервере (чтобы упростить обнаружение и сетевое взаимодействие) и включить в само сообщение, какому каналу он принадлежит (чтобы клиенты могли решать, отображать ли это сообщение или нет).

Я думаю, что использование портов TCP (или UDP) для различения каналов не очень хороший подход. Вместо этого каждое сообщение может содержать канал, на который оно отправлено. Это означает, что вам нужно разработать какой-то протокол для этого, но вы должны сделать это в любом случае, если вы хотите использовать NetworkStream,

Другие вопросы по тегам