WEBVTT 00:00:00.120 --> 00:00:07.950 [Звучит песня и счет: 7, 6, 5, 4, 3, 2, 1] Интернет: пакеты, маршрутизация и надежность 00:00:07.950 --> 00:00:13.650 Привет, меня зовут Линн Рут. Я системный инженер в Spotify, и я признаю, что часто воспринимаю 00:00:13.650 --> 00:00:18.970 надежность интернета как должное. Объемы информации в интернете, которые ежесекундно 00:00:18.970 --> 00:00:23.170 увеличиваются, просто поражают. Но как можно транспортировать каждый фрагмент 00:00:23.170 --> 00:00:29.080 данных надежно? Скажем, вы хотите воспроизвести песню на Spotify. Может показаться, 00:00:29.080 --> 00:00:33.989 что ваш компьютер подключается напрямую к серверам Spotify, а Spotify присылает вам 00:00:33.989 --> 00:00:39.410 песню на специальную линию. Но на самом деле интернет работает не так. Если бы Интернет был 00:00:39.410 --> 00:00:43.640 прямым, специальной связью, он не мог бы работать, когда в нем одновременно 00:00:43.640 --> 00:00:48.050 миллионы пользователей. Особенно если нет гарантии, что каждый провод и компьютер 00:00:48.050 --> 00:00:54.983 работают постоянно и хорошо. Нет. Передача данных в интернете далеко не такая прямая. 00:00:54.983 --> 00:01:01.210 Много лет назад, в начале 1970-х, мы с партнером Бобом Каном начали работать 00:01:01.210 --> 00:01:06.870 разработкой того, что мы сегодня называем интернетом. Нам с Бобом предоставили возможность 00:01:06.870 --> 00:01:13.150 и ответственность разрабатывать протоколы интернета и его архитектуру. Поэтому мы 00:01:13.150 --> 00:01:19.300 настойчиво работали над расширением и эволюцией интернета, и продолжаем 00:01:19.300 --> 00:01:26.920 это делать и сейчас. Способ передачи данных с одного компьютера на другой довольно интересный. 00:01:26.920 --> 00:01:30.900 Он не должен следовать конкретным путем, ведь ваш путь может измениться просто 00:01:30.900 --> 00:01:37.230 среди коммуникации между двумя компьютерами. Информация в интернете переходит из одного 00:01:37.230 --> 00:01:42.050 компьютера на другой в так называемом "информационном пакете", и такой пакет 00:01:42.050 --> 00:01:47.510 транспортируется в интернете с одного места в другое, почти как вы сами едете в машине 00:01:47.510 --> 00:01:51.740 из одного места в другое. В зависимости от загруженности движения или дорожных условий, 00:01:51.740 --> 00:01:59.000 вы можете захотеть или быть вынужденными ехать каждый раз разными путями. И так же, 00:01:59.000 --> 00:02:03.980 как вы перевозите всевозможные вещи в машине, с помощью IP-пакетов можно присылать 00:02:03.980 --> 00:02:10.359 многие виды цифровой информации. Но есть некоторые ограничения. Что делать, если, скажем, 00:02:10.359 --> 00:02:14.200 вам нужно перевезти космический шаттл с его строительной площадки к месту запуска? 00:02:14.200 --> 00:02:17.910 Шаттл не поместится в один грузовик, поэтому его нужно разобрать на части 00:02:17.910 --> 00:02:23.099 и перевезти несколькими грузовиками. Все они могут поехать разными маршрутами и добраться 00:02:23.099 --> 00:02:28.109 к месту в разное время. Но как только все части прибудут, вы сможете собрать шаттл, и он 00:02:28.109 --> 00:02:34.329 будет готов к запуску. В интернете детали передаются аналогично. Если вам 00:02:34.329 --> 00:02:40.090 необходимо отправить другу или загрузить на сайт очень большое изображение, оно 00:02:40.090 --> 00:02:44.819 может состоять из десятков миллионов бит единиц и нулей, многовато для передачи 00:02:44.819 --> 00:02:49.810 в одном пакете. Поскольку эти данные на компьютере, компьютер, направляет изображение может 00:02:49.810 --> 00:02:55.039 быстро разбить его на сотни или даже тысячи меньших частей, то есть пакетов. 00:02:55.039 --> 00:02:59.540 В отличие от грузовиков, в этих пакетов отсутствуют водители, и они не выбирают свой маршрут. 00:02:59.540 --> 00:03:04.650 Каждый пакет имеет интернет-адреса: откуда он идет и куда направляется. специальные компьютеры 00:03:04.650 --> 00:03:09.040 в интернете под названием "маршрутизаторы" действуют как менеджеры трафика, чтобы поддерживать 00:03:09.040 --> 00:03:13.829 бесперебойное перемещение пакетов по сети. Если один маршрут перегружен, отдельные 00:03:13.829 --> 00:03:18.380 пакеты могут передаваться другим маршрутам в интернете и прибывать к назначению 00:03:18.380 --> 00:03:26.099 в другое время или даже перемешанными. Как это работает? Как часть интернет-протокола, 00:03:26.099 --> 00:03:31.169 каждый маршрутизатор отслеживает несколько путей для отправки пакетов и выбирает самый дешевый 00:03:31.169 --> 00:03:36.509 доступный путь для каждого фрагмента данных на основе IP-адреса назначения пакета. 00:03:36.509 --> 00:03:42.120 "Самый дешевый" в данном случае не означает по стоимости, но по временным и нетехническими 00:03:42.120 --> 00:03:46.439 факторами, такими как политика и отношения между компаниями. Чаще всего лучший маршрут 00:03:46.439 --> 00:03:51.910 передачи данных не обязательно наиболее прямой. Наличие вариантов путей делает сеть устойчивой 00:03:51.910 --> 00:03:57.460 к неисправностям. То есть сеть посылать пакеты даже если есть катастрофические неисправности. 00:03:57.460 --> 00:04:05.659 Это ключевой принцип интернета: надежность. А что же делать, если вы спрашиваете определенные данные, 00:04:05.659 --> 00:04:09.577 но не всю информацию доставили? Скажем, вы хотите послушать песню. 00:04:09.577 --> 00:04:14.939 Как убедиться в том, что все данные будут доставлены, чтобы песня повторилась? 00:04:14.939 --> 00:04:19.470 Представляем нашего нового друга, TCP или протокол управления передачей. 00:04:19.470 --> 00:04:27.010 TCP управляет передачей и получением всех данных в пакетах. Это как письмо с подтверждением. 00:04:27.010 --> 00:04:30.909 Когда вы спрашиваете песню на своем устройстве, Spotify направляет песню, разбитую на многие 00:04:30.909 --> 00:04:36.270 пакетов. Когда ваши пакеты поступят, TCP проводит полную инвентаризацию и направляет 00:04:36.270 --> 00:04:42.580 подтверждение отриманння каждого пакета. Если все пакеты есть, TCP "подписывает" факт доставки - 00:04:42.580 --> 00:04:54.819 и все. (Музыка) Если TCP обнаружит, что некоторые пакеты отсутствуют, он не "подпишет" доставку, иначе 00:04:54.819 --> 00:04:59.930 ваша песня не будет звучать как следует, ведь часть песни может отсутствовать. Spotify 00:04:59.930 --> 00:05:04.820 повторно посылать каждый отсутствует или неполный пакет. Только TCP проверит доставку 00:05:04.820 --> 00:05:13.370 нескольких пакетов для этого запроса песни, ваша песня начнет воспроизводиться. Лучше всего в системах 00:05:13.370 --> 00:05:17.195 TCP и маршрутизаторов - это возможность их масштабирования. Они будут работать и с 8, 00:05:17.195 --> 00:05:22.209 и с 8 миллиардами устройств. Именно благодаря этим принципам устойчивости и резервирования, что больше 00:05:22.209 --> 00:05:28.069 маршрутизаторов мы добавляем, то надежнее становится интернет. Замечательно и то, что мы можем масштабировать 00:05:28.069 --> 00:05:32.419 и расширять интернет, не прерывая обслуживания пользователей. Интернет 00:05:32.419 --> 00:05:38.610 состоит из сотен тысяч сетей и миллиардов компьютеров и устройств, подключенных физически. 00:05:38.610 --> 00:05:44.000 Эти различные системы, и составляют интернет, соединяются между собой, общаются между собой 00:05:44.000 --> 00:05:50.849 и работают вместе благодаря согласованным стандартам передачи данных в интернете. 00:05:50.849 --> 00:05:54.940 Вычислительные устройства или маршрутизаторы в Интернете помогают всем пакетам 00:05:54.940 --> 00:06:01.312 добираться до пункта назначения, где они, по необходимости, собираются в определенном порядке. 00:06:01.312 --> 00:06:06.251 Это происходит миллиарды раз в день, независимо от того, мы отправляем 00:06:06.251 --> 00:06:10.440 электронное письмо, посещаем веб-страницу, общаемся в видеочате, пользуемся 00:06:10.440 --> 00:06:15.220 мобильным приложением, или датчики или устройства в интернете общаются между собой.