Я добавляю онлайн-голосовой чат в приложение Silverlight. Я просматривал текущие приложения, сервисы и SDK, найденные с помощью онлайн-поиска и форумов. Я обнаружил, что большинство из них реализуют модель клиент-сервер (C / S), и я пытаюсь понять, почему эта модель отличается от одноранговой (PTP) модели. Для меня PTP был бы предпочтительнее, потому что прямой переход между узлами был бы более эффективным (меньше переходов по IP и не обрабатывалось бы в процессе работы серверным компьютером) и не требовался сервер, его затраты и зависимости. Я обнаружил, что некоторые продукты предлагают возможность переключения с PTP на C / S, если PTP окажется недостаточным.
Поскольку я больше думал об этом, я мог видеть, что C / S может быть лучше, если в диалоге участвуют более двух пиров, тогда сервер (предположительно с большей пропускной способностью) мог бы лучше выполнять ретрансляцию каждого пира исходящий трафик на несколько других пиров. В C / S голосовой чат «многие ко многим», широкополосный восходящий канал каждого партнера (что является узким местом, по сути, является узким местом) должен был бы переносить каждый элемент голосового трафика только один раз, тогда сервер будет использовать свою превосходящую пропускную способность для передачи сообщения на несколько других пиров.
Но в ситуации голосового чата один на один кажется, что PTP был бы лучшим. Сервер не уменьшит требования к пропускной способности каждого из двух узлов, а только добавит ненужные издержки, зависимость и стоимость.
В голосовой чат один на один :
- Я что-то ошибаюсь?
- Будет ли одноранговым лучше?
- Будет ли сервер предоставлять что-то ценное, что не может быть предоставлено только клиентом
Программа
- Есть что-нибудь еще, что я должен принимать во внимание?
И, наконец, можете ли вы порекомендовать какие-либо продукты для голосового чата Silverlight PTP или C / S?
Заранее спасибо за любую информацию.