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]принципами масштабирования и надежности.