Skype, или «Весь мир на связи». Часть 2 – Как это работает

«Peer-to-peer» (P2P) технология была впервые широко применена и получила большую популярность в файлообменных сетях таких как Napster и KaZaA. В таком понимании, Р2Р технология позволяет пользователям открывать доступ к своим файлам, производить поиск и скачивать чужие файлы. Термин Р2Р употребляется достаточно часто, и в основном в «негативном» контексте. Компании, как большие так и маленькие, обьявившие себя «экспертами», и многие другие пытаются спекулировать с «Р2Р звонками» используя этот термин в понимании «прямых связей между пользователями или нодами (узлами сети)». Это описание технологии Р2Р призвано восполнить образовавшийся пробел и разьяснить принцип построения Р2Р сети на примере сервиса Skype.

«Peer-to-peer» (P2P) технология была впервые широко применена и получила большую популярность в файлообменных сетях таких как Napster и KaZaA. В таком понимании, Р2Р технология позволяет пользователям открывать доступ к своим файлам, производить поиск и скачивать чужие файлы. Термин Р2Р употребляется достаточно часто, и в основном в «негативном» контексте. Компании, как большие так и маленькие, обьявившие себя «экспертами», и многие другие пытаются спекулировать с «Р2Р звонками» используя этот термин в понимании «прямых связей между пользователями или нодами (узлами сети)». Это описание технологии Р2Р призвано восполнить образовавшийся пробел и разьяснить принцип построения Р2Р сети на примере сервиса Skype.

Настоящая Р2Р система, в нашем понимании, это такая в которой все ноды (узлы сети) обьединяются вместе динамически чтобы принять участие в роутинге, обработке трафика и других «ресурсоемких» задачах, которые в противном случае обрабатываются центральными серверами.

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

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

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

Основанная на интернет телефония – Voice-over-IP (VoIP) уже существует несколько лет, но не достигла сколько-нибудь значимой популярности. Причины этого ясны тем из нас, кто пробовал VoIP софт:

  • Продукты, которые действительно позволяют конечным пользователям сэкономить деньги по сравнению со стандартными телефонами, не имеют приемлемого качества.
  • Скорость передачи информации очень мала из-за файерволов и использования NAT (Network Address Translation), что также делает более 50% стационарных компьютеров непригодными для коммуникации посредством традиционного VoIP софта.
  • Пользовательский интерфейс слишком сложный и требует квалифицированной настройки и определенных технических знаний.

Централизация может преодолеть некоторые из упомянутых сложностей путем маршрутизации звонков через файерволы или NAT'ы. Однако, это поднимет стоимость поддержки работы сети на один уровень с существующими телекоммуникационными сетями (и таким образом, преимуществ перед обычным телефоном не будет). К тому же, затраты будут возрастать пропорционально количеству пользователей. В результате такие компании выделяют минимальное необходимое для работы сервиса количество ресурсов (в расчете на одного пользователя), что значительно снижает качество связи.

Команда Skype достигла успеха благодаря использованию всех доступных ресурсов сети. Это позволило нам увеличить ширину канала для общения голосом, и соответственно поднялось качество Скайп-сети до уровня классических телефонных систем. Причем все достижения сделаны без дополнительных затрат на дорогие централизованные ресурсы. В добавок к этому, мы верим, что создали наиболее дружественный к пользователю интерфейс!

Ниже описаны несколько технологий, которые использует сервис Skype чтобы достичь наиболее высокого качества IP телефонии.

Обход файерволов и NAT (Network Address Translation).

«Незафайерволенные» клиенты (прошу прощения если кого обидел ;-)) и клиенты с реальными IP адресами (которых «видно» из интернет) могут помочь NAT-нодам обьединиться, перенаправляя вызовы. Это позволяет двум клиентам которые другим способом не способны к коммуникации, разговаривать друг с другом.

Более того, выбираются только прокси-сервера с «резервными» ресурсами, поэтому производительность для этих пользователей не пострадает.

Также был разработан ряд новых технологий, призванный избежать настраивания конечными пользователями шлюзов и файерволов, сложные и не-интуитивные настройки которых препятствуют «успешной коммуникации» большинства пользователей. Говоря коротко, Skype работает «за спиной» большинства файерволов и шлюзов, не требуя никаких специальных настроек.

Глобальная децентрализованная пользовательская директория.

Большинство программных продуктов, предназначенных для обмена мгновенными сообщениями или голосовой связи требуют наличия централизованного каталога для обеспечения соединения между конечными пользователями, сопоставив их статические имена с IP адресами, которые имеют свойство меняться. Изменение IP адреса может случиться когда пользователь меняет местоположение или подключается к сети с динамическим распределением IP адресов. Большинство инструментов связи через интернет отслеживает пользователей с помощью центральной директории, в которой ведутся «логи» на каждую учетную запись и IP адреса с которых состоялся заход, а также регистрируется кто из пользователей сейчас в онлайн, а кто нет. Такие «центральные каталоги» получаются очень дорогими когда количество пользователей разрастается на миллионы. Произведя децентрализацию такой требовательной к ресурсам инфраструктуры, команда разработчиков Skype теперь может сфокусировать свои усилия и ресурсы на разработке передовой, наиболее отвечающей современным требованиям функциональности.

Сетевые Р2Р технологии, используемые приложениями по обмену файлами, могут быть применены для децентрализации, но файлообменные сети уже являются фрагментированными по своей натуре – поиск не охватывает всех нод в сети. Очевидно, что для того чтобы предоставить телефонию наивысшего качества с минимально возможными затратами, необходим переход на Р2Р технологию третьего поколения («3G P2P»), или Global Index (GI), функционирующих по другому принципу, и расширяющих понятие масштабирумости сетей. Технология «Global Index» представляет собой многоярусную сеть в которой суперноды (supernodes) обьединяются так чтобы каждая нода в сети имела полные «знания» обо всех доступных пользователях и ресурсах, получая эти «знания» с минимальной задержкой.

Интеллектуальный роутинг.

Используя каждый доступный ресурс, Skype может интеллектуально перенаправлять зашифрованные звонки по наиболее эффективным путям. Skype также поддерживает несколько одновременно открытых каналов и динамически выбирает наилучший в данный момент. Это дает заметный эффект понижая время задержки и повышая качество связи сквозь всю сеть.

Безопасность.

Skype шифрует все звонки и мгновенные сообщения «с конца в конец», предоставляя непревзойденную безопасность. Шифрование данных необходимо, поскольку все звонки проходят через «открытый» интернет.

Супер-простой интерфейс пользователя.

Мы считаем, что приложение должно работать для Вас, а не против Вас, поэтому мы разработали Скайп таким образом, чтобы он был примитивно-простой в использовании – если Вы умеете пользоваться компьютером и телефоном, то Вы свободно себя почувстуете со Скайпом. К тому же, программа работает идентично на всех платформах – Windows, Mac OS X, Pocket PC, Linux.

Кто решился попробовать Skype в действии, могут перейти на соответствующую страницу и скачать версию программы для своей операционной системы: Windows | Mac OS X | Linux | Pocket PC. А кто пропустил первую, обзорную часть про Skype, рекомендуем обязательно ознакомиться с материалом здесь. В следующем выпуске мы попробуем разобраться со способами оплаты услуги SkypeOut (о ней читайте все здесь же, в первой части). И не забывайте – звонки с компьютера на компьютер абсолютно бесплатны, причем качество связи отличное (в эту субботу уже в который раз мы в этом убедились :-)).


Апрель 13, 2005 | Андрей Каплуненко |


Схожі матеріали:

    Немає схожих матеріалів

Новини iLand