Как приложения, такие как Dropbox, TeamViewer, RDP, попадают на компьютеры, на которых они установлены?

Я знаю (думаю), что там происходит какое-то централизованное одноранговое соединение. Но тогда, как это установлено? Сами приложения действуют как клиенты и серверы. Они подключаются к какому-то центральному серверу, заполняют узел пользователя данными, такими как IP-адреса, MAC-адреса и другие данные. Но что тогда?

  1. Они устанавливают прямое сокетное соединение между компьютерами пользователя? Если да, то как они избегают роутеров?

  2. Они передают данные через центральный сервер?

Причина, по которой я спрашиваю, состоит в том, что я хочу создать приложение удаленного рабочего стола, которое сможет передавать потоковое изображение в режиме реального времени на подключенные клиентские приложения. Я знаю, что их там много, но 99% работают медленно. Я знаю, что возможно быть близко к реальному времени, OnLive делает это. 2 RDC, которые работают со скоростями, близкими к реальному времени, — это LogMeIn Pro (за который я не хочу платить, потому что мне нужен только HD-поток из платного пакета) и Radmin (который предназначен только для Windows).

Я готов его кодировать (на C / C ++ / Objective-C), но я просто не знаю, как его спроектировать.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]