Термины «downstream» и «upstream» простым языком обозначают передачу данных от одного компьютера к другому в разных направлениях. С точки зрения пользователя локальной сети или сети Интернет, исходящий поток данных «upstream» передается от его компьютера к удаленному компьютеру в другой точке сети. С другой стороны, входящий поток данных «downstream» переносит информацию в обратном направлении – от удаленного компьютера к компьютеру пользователя. На сегодняшний день используется две основных сетевых архитектуры, которые отвечают за создание исходящих и входящих потоков данных. Они носят название – «client-server» и «peer-to-peer».
Клиент-серверная технология
Клиент-серверная технология представляет собой иерархическую сеть, которая состоит из нескольких клиентских узлов и центрального сервера, через который выполняется передача данных в обоих направлениях, а также хранение данных, обработка и потоковое вещание медиаконтента. Большинство пользователей сети Интернет используют именно такую технологию для приема и передачи данных, а также просмотра или прослушивания широковещательных передач.
Когда такой пользователь передает видео поток на сайт или прикрепляет к электронной почте какой-то документ, то другой пользователь можете получить доступ к видео или документу только через сайт-посредник (сервер). Особенностью клиент-серверной архитектуры является невозможность прямого доступа с компьютера, потребляющего информацию к компьютеру, ее передающему. Таким образом, сайты работают как центральный сервер, который отвечает за передачу данных между клиентами.
Ограничения клиент-серверной технологии
Большинство интернет пользователей передают и получают данные через сети, в которых на большое количество клиентов используется только один сервер. Сегодня очень многие провайдеры обеспечивают своим клиентам широкополосный доступ в Интернет на основе ADSL или кабельных модемов, которые имеют большую входящую скорость «downstream» на уровне 1.5 – 9 Мб/с, но при этом скорость исходящая «upstream» зачастую не превышает 1 Мб/с. В результате вы можете смотреть в онлайн потоковое видео или скачивать файлы гораздо быстрее, чем загружать (отдавать) данные в обратном направлении.
Второе ограничение заключается в следующем. Так как большое количество клиентов оказываются одновременно подключенными к одному серверу, это существенно снижает скорость отдачи данных. Чем больше количество пользователей скачивает информацию, тем ниже скорость загрузки файла каждым пользователем. Это связано с тем, что большое количество подключений увеличивает нагрузку на сервер и значительно снижает его производительность. Отметим здесь также, что далеко не весь контент можно распространять через центральный сервер из-за ограничений, накладываемых законодательством о защите прав интеллектуальной собственности.