0:00:02.719,0:00:07.360 Интернет: HTTP и HTML 0:00:07.360,0:00:13.749 Я Жасмин Лоуренс, и я руководитель группы проектов[br]команды разработчиков XBox One. 0:00:13.749,0:00:18.700 Один из наших крупнейших проектов — XBox Live. Это[br]онлайн-сервис, который соединяет 0:00:18.700,0:00:25.519 геймеров со всего мира, и делает это возможным[br]интернет. Это непростая задача, и существует много 0:00:25.519,0:00:28.110 процессов, происходящих "за кулисами". 0:00:28.150,0:00:35.760 Интернет полностью изменил то, как люди связываются [br]и взаимодействуют. Но как же все это работает? 0:00:35.760,0:00:43.489 Как компьютеры во всем мире общаются между собой? [br]Вот например просмотр веб-страниц. 0:00:43.489,0:00:49.259 Сначала вы открываете веб-браузер, приложение,[br]которое открывает доступ к веб-страницам. 0:00:49.259,0:00:55.899 Далее вы вводите веб-адрес или URL (Унифицированный[br]локатор ресурсов) веб-сайта, 0:00:55.899,0:00:59.729 который вы хотите посетить, например Tumblr.com. 0:01:03.856,0:01:08.339 Здравствуйте! Я Дэвид Карп, основатель Tumblr и[br]сегодня 0:01:08.339,0:01:12.560 мы поговорим, как работают веб-браузеры, которыми[br]мы пользуемся в каждодневной работе. Вы, скорей всего, 0:01:12.560,0:01:16.350 задумывались о том, что же происходит, когда вы[br]набираете адрес в браузере 0:01:16.350,0:01:21.020 и нажимаете "Ввод". И это так же невероятно, как вы[br]себе представляете. В этот момент ваш компьютер 0:01:21.020,0:01:25.700 начинает общаться с другим компьютером, который[br]называется сервером, — как правило, за 0:01:25.700,0:01:32.450 тысячи миль. И через миллисекунды ваш компьютер[br]запрашивает этот сервер о веб-сайте, и сервер 0:01:32.450,0:01:39.530 начинает общаться с вашим компьютером на языке HTTP.[br]HTTP — это 0:01:39.530,0:01:43.680 "Протокол передачи гипертекстовых данных". Это как[br]язык, который использует один компьютер, 0:01:43.680,0:01:48.009 чтобы спросить некий документ. Это вообще[br]очень просто. Если бы вы перехватили 0:01:48.009,0:01:52.540 разговор между вашим компьютером и веб-сервером в[br]интернете, он, главным образом, 0:01:52.540,0:01:58.430 состоял бы из запросов "получить". Это просто слово[br]"получить" и название документа, который вы 0:01:58.430,0:02:03.420 запрашиваете. Итак, если вы пытаетесь войти в Tumblr[br]и загрузить себе нашу страницу авторизации, 0:02:03.420,0:02:07.720 все, что вы делаете, — это отправляете запрос "получить"[br]на сервер Tumblr, который выглядит как "GET /login". 0:02:07.720,0:02:14.920 Это сообщает серверу Tumblr, что вам[br]нужен весь HTML-код для страницы 0:02:14.920,0:02:21.270 авторизации Tumblr. HTML означает [br]"язык гипертекстовой разметки", 0:02:21.270,0:02:25.470 и его можно считать языком, на котором вы говорите[br]веб-браузеру, как должна выглядеть страница. 0:02:25.470,0:02:28.750 Вы, наверняка, подумали о чем-то вроде Википедии,[br]которая, по сути, является обычным большим документом. 0:02:28.750,0:02:31.950 HTML — это язык, которой используется, 0:02:31.950,0:02:35.630 чтобы сделать заголовки[br]большими и жирными, выбрать шрифт, 0:02:35.630,0:02:42.920 привязать определенный текст к определенным страницам,[br]сделать какой-то текст жирным, какой-то — 0:02:42.920,0:02:46.740 выделить курсивом. Поставить изображение в середине[br]страницы, выровнять изображение 0:02:46.740,0:02:52.990 влево или вправо. Текст веб-страницы включен[br]непосредственно в HTML, но другие 0:02:52.990,0:02:58.380 части, например изображения или видео — это отдельные[br]файлы с собственными URL-адресами, которые 0:02:58.380,0:03:04.240 запрашиваются отдельно. Браузер посылает отдельные[br]HTTP-запросы для каждого из них 0:03:04.240,0:03:11.150 и отражает их по мере поступления. Если веб-страница[br]имеет много изображений, на каждый 0:03:11.150,0:03:19.590 будет отдельный запрос HTTP, и страница будет[br]загружаться медленнее. Иногда, когда вы 0:03:19.590,0:03:24.900 работаете в интернете, вы не просто запрашиваете[br]страницы, используя GET. Иногда вы отправляете 0:03:24.900,0:03:30.030 информацию, например при заполнении формы или вводя[br]поисковой запрос. Ваш браузер посылает 0:03:30.030,0:03:37.030 эту информацию веб-серверу как простой текст с помощью[br]POST-запроса HTTP. Скажем, вы 0:03:37.030,0:03:45.360 заходите на Tumblr. Сначала вы делаете POST-запрос,[br]то есть POST на страницу авторизации Tumblr, к которой 0:03:45.360,0:03:49.680 прикреплены определенные данные. Здесь ваша электронная[br]почта и пароль. Далее направляемся к серверу Tumblr. 0:03:49.680,0:03:56.370 Сервер Tumblr узнает вас как Дэвида. Он пересылает[br]веб-страницу обратно в ваш браузер, 0:03:56.370,0:04:00.730 который говорит: Успешный вход как "Дэвид"! Но к[br]этой веб-странице он также 0:04:00.730,0:04:07.000 прикрепляет определенные невидимые файлы cookie,[br]которые ваш браузер увидит и сохранит. 0:04:07.000,0:04:13.240 Это очень важно, ведь только так сайт может запомнить,[br]кто вы. Файлы cookie — 0:04:13.240,0:04:18.630 это ваше удостоверение личности для сайта Tumblr. [br]Это число, которое идентифицирует вас как Дэвида. 0:04:18.630,0:04:23.670 Ваш веб-браузер запомнит это число, и в следующий раз,[br]когда вы обновите Tumblr или перейдете 0:04:23.670,0:04:28.060 на Tumblr.com, ваш браузер автоматически прикрепит[br]этот идентификационный номер 0:04:28.060,0:04:32.380 к запросу, который он отправляет на серверы[br]Tumblr. Теперь серверы Tumblr видят запрос, 0:04:32.380,0:04:35.970 поступающий из вашего браузера, видят идентификационный[br]номер и понимают: 0:04:35.970,0:04:43.940 "Окей, это запрос от Дэвида". Мы знаем, что[br]интернет полностью открыт для всех. 0:04:43.940,0:04:49.350 Все связи в нем общие, а информация передаетсья[br]простым текстом. Это дает 0:04:49.350,0:04:54.970 возможность хакерам похитить какую-либо личную[br]информацию, которую вы отправляете через интернет. 0:04:54.970,0:04:59.371 Но безопасные веб-сайты предотвращают это, требуя[br]от вашего браузера общаться 0:04:59.371,0:05:04.872 на защищенном канале, используя так называемый[br]"защищенный сокет" (SSL), и его прееемника 0:05:04.872,0:05:12.958 "Безопасность транспортного уровня" (TLS). SSL и[br]TLS является как бы слоем безопасности, в который 0:05:12.958,0:05:19.890 упаковали ваши сообщения для их защиты от кражи или подделки. SSL[br]и TLS активны, когда вы видите 0:05:19.890,0:05:27.440 замочек в адресной строке браузера, рядом с HTTPS.[br]Протоколы HTTPS обеспечивают безопасное соединение 0:05:27.440,0:05:34.180 и защиту для ваших HTTP-запросов. [br]Когда вебсайт просит ваш браузер установить 0:05:34.180,0:05:39.910 защищенное соединение, он сначала предоставляет[br]цифровой сертификат. Это как официальное 0:05:39.910,0:05:44.380 удостоверение личности, подтверждающее, что это[br]настоящий сайт, а не имитация. Цифровые 0:05:44.380,0:05:49.900 сертификаты выдаются органами сертификации, которые[br]являются доверенными, чтобы проверять на 0:05:49.900,0:05:55.280 подлинность веб-сайты и выдавать им сертификаты. [br]Так же, как правительство выдает удостоверения 0:05:55.280,0:06:01.030 личности или паспорта. Если же сайт попытается установить[br]безопасное соединение без действительного 0:06:01.030,0:06:07.790 цифрового сертификата, ваш браузер предупредит вас. 0:06:07.790,0:06:10.360 Это основы темы веб-обозревателей! 0:06:10.360,0:06:17.010 Часть интернета, которую мы используем изо дня в день. [br]Итак, HTTP и DNS управляют отправкой 0:06:17.010,0:06:24.400 и получением HTML, медиафайлов и всего прочего в[br]интернете. Это возможно только благодаря сетям 0:06:24.400,0:06:30.240 TCP / IP и маршрутизаторам, которые разбивают и[br]переносят информацию небольшими 0:06:30.240,0:06:37.760 пакетами. Эти пакеты состоят из двоичных последовательностей[br]из единиц и нулей, которые физически передаются 0:06:37.760,0:06:42.750 через электрические провода, оптоволоконные[br]кабели и беспроводные сети. 0:06:42.750,0:06:46.850 К счастью, если вы понимаете, как работает один слой[br]интернета, вы можете положиться 0:06:46.850,0:06:52.620 на него, не запоминая всех подробностей. Мы знаем,[br]что все эти слои будут работать вместе, 0:06:52.620,0:06:58.850 чтобы один за другим передавать информацию, руководствуясь[br]принципами масштабирования и надежности.