C # P2P дизайн приложения чата - PullRequest
3 голосов
/ 31 декабря 2011

Я хочу создать простое приложение чата, которое не использует явный сервер.Основным требованием является то, что пользователь может одновременно общаться со многими друзьями (как в Skype и т. Д.).Я не имею в виду конференц-чат здесь, просто несколько отдельных окон чата.

В настоящее время я хочу только приложение для обмена сообщениями по локальной сети, но я был бы признателен, если бы дизайн легко распространялся на подключения к Интернету.

Интересно, какой дизайн подходит для такого приложения.

  • Что вы думаете о решении, в котором каждое пользовательское приложение имеет TcpListener (неявный сервер) и несколько * 1009?* объекты - по одному на каждого друга, с которым он / она разговаривает.
  • Как насчет аутентификации удаленных пользователей?Если приложение для чата генерирует сертификат (X509 или sth) или просто предполагает, что пользователям в локальной сети следует доверять:)

С наилучшими пожеланиями,

Ответы [ 2 ]

3 голосов
/ 31 декабря 2011

Вы должны увидеть начало с

как мне сделать свое собственное программное обеспечение P2P?

Приложение чата WCF / WPF

P2P Communication - Прокси-слушатели и прокси-клиенты

Надеюсь, что это окажется хорошей отправной точкой

Удачное кодирование

3 голосов
/ 31 декабря 2011

HttpListener + WebClient(or HttpWebRequest) может предоставить вам больше инструментов для аутентификации / безопасности. Обычная аутентификация, Ntlm, встроенная аутентификация Windows, https и т. Д., И они более дружественны к брандмауэрам.

...