1 00:00:02,719 --> 00:00:07,360 Інтернет: HTTP та HTML 2 00:00:07,360 --> 00:00:13,749 Я Жасмін Лоуренс, і я керівник групи проектів команди розробки XBox One. 3 00:00:13,749 --> 00:00:18,700 Один з наших найбільших проектів — XBox Live. Це онлайн-сервіс, який з'єднує 4 00:00:18,700 --> 00:00:25,519 геймерів з усього світу, і цей зв'язок нам надає інтернет. Це непросте завдання, і багато 5 00:00:25,519 --> 00:00:31,940 процесів відбувається "за лаштунками". Завдяки інтернету людство кардинально 6 00:00:31,940 --> 00:00:35,760 змінило своє спілкування і способи взаєморозуміння. Але як усе це працює? 7 00:00:35,760 --> 00:00:43,489 Як комп’ютери в усьому світі спілкуються між собою? Ось наприклад перегляд веб-сторінок. 8 00:00:43,489 --> 00:00:49,259 Спочатку ви відкриваєте веб-браузер, додаток, який відкриває вам доступ до веб-сторінок. 9 00:00:49,259 --> 00:00:55,899 Далі ви вводите веб-адресу або URL-адресу (Уніфікований локатор ресурсів) веб-сайту, 10 00:00:55,899 --> 00:01:06,810 який ви хочете відвідати, як-от Tumblr.com. Привіт! Я засновник Tumblr Девід Карп і сьогодні 11 00:01:06,810 --> 00:01:12,560 ми подивимось, як працюють веб-браузери, якими ми користуємось щодня. Ви, напевно, 12 00:01:12,560 --> 00:01:16,350 замислювалися про те, що ж відбувається, коли ви вводите адресу у веб-браузері 13 00:01:16,350 --> 00:01:21,020 й натискаєте Enter. І це так само неймовірно, як ви собі уявляєте. У цей момент ваш комп'ютер 14 00:01:21,020 --> 00:01:25,930 починає спілкуватися з іншим комп'ютером, який називається сервером, — зазвичай, за 15 00:01:25,930 --> 00:01:32,450 тисячі миль. І через мілісекунди ваш комп'ютер запитує в цього сервера про веб-сайт, і сервер 16 00:01:32,450 --> 00:01:39,530 починає спілкуватися з вашим комп'ютером мовою HTTP. HTTP розшифровується як 17 00:01:39,530 --> 00:01:43,680 "протокол передачі гіпертекстових даних". Це ніби мова, яку використовує один комп’ютер, 18 00:01:43,680 --> 00:01:48,009 щоб запитати інший комп'ютер про дані. Це взагалі дуже просто. Якщо б ви перехопили 19 00:01:48,009 --> 00:01:52,540 розмову між вашим комп’ютером і веб-сервером в інтернеті, вона, головним чином, 20 00:01:52,540 --> 00:01:58,430 складалася б із запитів типу "GET". Це просто слово "GET" і назва документа, який ви 21 00:01:58,430 --> 00:02:03,420 запитуєте. Отже, якщо ви намагаєтесь увійти в Tumblr і завантажити нашу сторінку входу, 22 00:02:03,420 --> 00:02:07,720 все, що ви робите, — це надсилаєте запит "GET" на сервер Tumblr, визначений як 23 00:02:07,720 --> 00:02:14,920 "GET/login". Це повідомляє серверу Tumblr, що вам потрібен весь HTML-код для сторінки 24 00:02:14,920 --> 00:02:21,270 входу в Tumblr. HTML означає "гіпертекстова мова опису документів", 25 00:02:21,270 --> 00:02:26,470 і її можна вважати мовою, на якій ви говорите веб-браузеру переглядати сторінку. Візьмемо 26 00:02:26,470 --> 00:02:31,950 Вікіпедію. Насправді вона є просто великим простим документом, а HTML — це мова, 27 00:02:31,950 --> 00:02:35,630 якою ви користуєтесь, щоб зробити цей заголовок великим і жирним, обрати шрифт, 28 00:02:35,630 --> 00:02:42,920 прив’язати певний текст до певних сторінок, зробити якийсь текст жирним, якийсь — 29 00:02:42,920 --> 00:02:46,740 виділити курсивом. Поставити зображення в середині сторінки, вирівняти зображення 30 00:02:46,740 --> 00:02:52,990 праворуч або ліворуч. | Текст веб-сторінки включений безпосередньо до HTML, але інші 31 00:02:52,990 --> 00:02:58,380 частини, як-от зображення чи відео — це окремі файли з власними URL-адресами, які 32 00:02:58,380 --> 00:03:04,240 потрібно запитувати окремо. Браузер надсилає спеціальні запити HTTP для кожного з них 33 00:03:04,240 --> 00:03:11,150 і відображає їх по мірі надходження. Якщо веб-сторінка має багато зображень, на кожне 34 00:03:11,150 --> 00:03:19,590 буде окремий запит HTTP, і сторінка завантажуватиметься повільніше. Іноді, коли ви 35 00:03:19,590 --> 00:03:24,900 працюєте в інтернеті, ви не просто запитуєте сторінки GET-запитами. Іноді ви надсилаєте 36 00:03:24,900 --> 00:03:30,030 інформацію, як-от при заповненні форми або введенні пошукового запиту. Ваш браузер надсилає 37 00:03:30,030 --> 00:03:37,030 цю інформацію веб-серверу в простому тексті за допомогою POST-запиту HTTP. Скажімо, ви 38 00:03:37,030 --> 00:03:45,360 заходите на Tumblr. Спершу ви зробити запит POST, тобто POST на сторінку входу в Tumblr, до якої 39 00:03:45,360 --> 00:03:49,680 прикріплено певні дані. Тут є ваша електронна пошта й пароль. Це йде до сервера Tumblr. 40 00:03:49,680 --> 00:03:56,370 Сервер Tumblr упізнає вас як Девіда. Він пересилає веб-сторінку назад у ваш браузер, 41 00:03:56,370 --> 00:04:00,730 який говорить: Успішний вхід як "Девід"! Але до цієї веб-сторінки він також 42 00:04:00,730 --> 00:04:07,000 прикріплює певні невидимі ​​файли cookie, які ваш браузер побачить і збереже. 43 00:04:07,000 --> 00:04:13,240 Це дуже важливо, адже лише так веб-сайт може запам'ятати, хто ви. Файли cookie, — 44 00:04:13,240 --> 00:04:18,630 це ваше посвідчення особи для сайту Tumblr. Це число, яке ідентифікує вас як Девіда. Ваш 45 00:04:18,630 --> 00:04:23,670 веб-браузер запам'ятає це число, і наступного разу, коли ви оновите Tumblr або перейдете 46 00:04:23,670 --> 00:04:28,060 на Tumblr.com, ваш веб-браузер автоматично прикріпить цей ідентифікаційний номер 47 00:04:28,060 --> 00:04:32,380 до запиту, який він надсилає на сервери Tumblr. Тепер сервери Tumblr бачать запит, 48 00:04:32,380 --> 00:04:35,970 який надходить з вашого браузера, бачить ідентифікаційний номер і розуміє: 49 00:04:35,970 --> 00:04:43,940 "Це запит від Девіда". | Далі. Ми знаємо, що інтернет повністю відкритий для всіх. 50 00:04:43,940 --> 00:04:49,350 Усі з'вязки в ньому спільні, а інформація передаєтсья простим текстом. Це дає 51 00:04:49,350 --> 00:04:54,970 можливість хакерам викрасти будь-яку особисту інформацію, яку ви надсилаєте через інтернет. 52 00:04:54,970 --> 00:04:59,371 Але безпечні веб-сайти запобігають цьому, вимагаючи від вашого браузера спілкуватися 53 00:04:59,371 --> 00:05:04,872 на захищеному каналі, використовуючи так званий "захищений сокет" (SSL), та його нащадок 54 00:05:04,872 --> 00:05:12,958 "безпеку транспортного рівня" (TLS). SSL та TLS є ніби шаром безпеки, в який загорнуті ваші 55 00:05:12,958 --> 00:05:19,890 повідомлення, для їх захисту від крадіжки чи підробки. SSL та TLS активні, коли ви бачите 56 00:05:19,890 --> 00:05:27,440 замочок в адресному рядку браузера, поруч із HTTPS. Протоколи HTTPS надають безпеку 57 00:05:27,440 --> 00:05:34,180 й захист для ваших HTTP-запитів. Коли веб-сайт просить ваш браузер встановити 58 00:05:34,180 --> 00:05:39,910 захищене з'єднання, він спочатку надає цифровий сертифікат. Це ніби офіційне 59 00:05:39,910 --> 00:05:44,380 посвідчення особи, яке підтверджує, що це справжній веб-сайт, а не імітація. Цифрові 60 00:05:44,380 --> 00:05:49,900 сертифікати видаються органами сертифікації, які є довіреними органами, що перевіряють 61 00:05:49,900 --> 00:05:55,280 автентичність веб-сайтів і видають їм сертифікати. Так само, як уряд видає посвідчення 62 00:05:55,280 --> 00:06:01,030 особи чи паспорти. Якщо ж веб-сайт спробує встановити безпечне з'єднання без дійсного 63 00:06:01,030 --> 00:06:09,260 цифрового сертифіката, ваш браузер попередить вас. Це основи перегляду веб-сторінок! 64 00:06:09,260 --> 00:06:17,010 Цими процесами ми користуємось щодня. Отож, HTTP та DNS керують надсиланням 65 00:06:17,010 --> 00:06:24,400 і отриманням HTML, медіафайлів й усього іншого в інтернеті. Це можливо лише завдяки мережам 66 00:06:24,400 --> 00:06:30,240 TCP/IP та маршрутизаторам, які розбивають і транспортують інформацію в невеликих 67 00:06:30,240 --> 00:06:37,760 пакетах. Ці пакети складаються з бінарних послідовностей з 1 і 0, які фізично передаються 68 00:06:37,760 --> 00:06:42,750 через електричні дроти, волоконно-оптичні кабелі й бездротові мережі. 69 00:06:42,750 --> 00:06:46,850 На щастя, якщо ви розумієте, як працює один шар Інтернету, ви можете покластися 70 00:06:46,850 --> 00:06:52,620 на нього, не запам'ятовуючи всіх подробиць. Ми знаємо, що всі ці шари працюватимуть разом, 71 00:06:52,620 --> 00:06:58,850 щоб послідовно передавати інформацію за принципами масштабування й надійності.