Что такое WWW, как устроена Всемирная паутина и кто её изобрёл
Если интернет — это библиотека, то Всемирная паутина — это система навигации, которая помогает найти нужную книгу среди миллионов томов.
Иллюстрация: Оля Ежак для Skillbox Media
WWW (World Wide Web, или Всемирная паутина) — это глобальная сеть взаимосвязанных веб-страниц, доступных через интернет. Когда вы переходите по ссылке с новостного сайта на другой ресурс или из социальной сети в интернет-магазин, вы путешествуете по этой «паутине».
Появление Всемирной паутины кардинально изменило способы обмена информацией. Теперь мы мгновенно получаем доступ к данным со всего мира, общаемся в социальных сетях и совершаем покупки онлайн. То, что сегодня кажется обыденным, раньше было невозможно — информацию искали в библиотеках, а для связи использовали только почту и телефон.
Давайте рассмотрим историю создания Всемирной паутины и разберёмся: кто её изобрёл, как она устроена и чем отличается от интернета.
Содержание
Предпосылки возникновения WWW
Всемирная паутина появилась в результате развития компьютерных сетей, протоколов передачи данных и массового распространения персональных компьютеров. Также значительную роль в её создании сыграло научное сообщество, которое нуждалось в удобном способе обмена информацией.
Развитие компьютерных сетей. В 1969 году в США появилась первая компьютерная сеть ARPANET, которая объединила компьютеры нескольких университетов и заложила техническую основу для будущей WWW. До появления сетевой инфраструктуры обмен данными между компьютерами осуществлялся через физические носители — дискеты и компакт-диски.
Создание сетевых протоколов. После запуска ARPANET началась разработка стека протоколов TCP/IP — технологии, которая впоследствии обеспечила надёжную систему обмена гипертекстовыми документами для WWW. Протокол TCP отвечает за корректную последовательность доставки пакетов данных, а IP управляет их маршрутизацией между компьютерами.
Например, когда пользователь отправляет электронное письмо, протокол TCP разбивает его на пакеты данных и контролирует их доставку получателю в нужном порядке. Протокол IP выбирает оптимальный маршрут для каждого пакета через сеть узлов — аналогично тому, как почтовая служба прокладывает путь для доставки обычного письма.
Спецификация TCP/IP была впервые представлена в 1974 году. Затем она дорабатывалась и с 1 января 1983 года стала стандартом сети ARPANET.
Читайте также:
Распространение персональных компьютеров. В 1980-х годах ПК стали появляться в массовой продаже и модели вроде Apple II или IBM PC можно было приобрести за 1500–3500 долларов. Компьютеры начали появляться во множестве домов и офисов по всему миру, создавая тем самым обширную пользовательскую базу для будущей Всемирной паутины.
Читайте также:
Запросы учёных и исследователей. С развитием компьютерных сетей и интернета научному сообществу требовались всё более эффективные способы обмена информацией и совместной работы. Исследователям были необходимы удобные инструменты для обмена данными, публикации результатов и координации работы между научными институтами.
Например, в 1960-х годах учёный Тед Нельсон разработал проект Xanadu — первую концепцию гипертекстовой системы. В отличие от будущей WWW, Xanadu предлагал использовать двунаправленные ссылки — чтобы пользователи видели не только целевую страницу, но и все документы, которые на неё ссылаются. Проект также включал систему управления версиями документов, подобную современному Git, что давало возможность отслеживать изменения в научных статьях и наблюдать эволюцию идей.
Проект Xanadu так и не получил широкого распространения. Тед Нельсон постоянно усложнял концепцию, затягивал разработку и настаивал на коммерческой модели распространения, что существенно ограничивало доступность системы. Кроме того, технические требования Xanadu значительно превосходили возможности компьютеров того времени.
Другим значимым проектом был NLS (oN-Line System), которым занимался Дуглас Энгельбарт в Стэнфордском университете в 1968 году. Его система уже тогда включала многие элементы современного веба: графический интерфейс с поддержкой мыши, гипертекст для связывания документов и возможность организации видеоконференций. Например, пользователи могли перемещаться между связанными документами простым щелчком мыши — точно так же, как мы переходим между сайтами в интернете.
Главная проблема NLS заключалась в её непригодности для массового использования. Система работала исключительно на мейнфрейме SDS 940 — громоздком и мощном компьютере, доступном лишь крупным организациям из-за высокой стоимости и сложного обслуживания.
Кроме того, NLS требовала специального терминала и инновационных устройств ввода: особой пятиклавишной клавиатуры, одной из первых компьютерных мышей и специального графического дисплея. Помимо прочего, пользователям необходимо было запоминать множество команд — без них невозможно было создавать гиперссылки и работать с системой.
Наиболее значимым оказался проект Тима Бернерса-Ли, над которым он работал в исследовательском центре ЦЕРН в конце 1980-х годов. Именно там он придумал базовые технологии WWW, которые легли в основу современной Всемирной паутины. Давайте рассмотрим, как это было.
История зарождения Всемирной паутины
Прототипом Всемирной паутины стала программа Enquire, которую Тим Бернерс-Ли разработал для обмена документами внутри ЦЕРН. Программа использовала инновационный для того времени подход — она хранила данные на основе ассоциативных связей, аналогично тому, как человеческий мозг связывает между собой различные идеи и концепции.
Так, документ о физическом эксперименте мог быть связан не только с похожими экспериментами, но и с описанием используемого оборудования, биографиями учёных и теоретическими основами исследования. Такая система создавала разветвлённую сеть связей между документами, что облегчало поиск и систематизацию информации внутри научного центра.
Несмотря на свою инновационность, программа Enquire работала только на компьютерах Norsk Data и поддерживала только одного пользователя в системе. Такие ограничения не соответствовали потребностям международного научного центра с более чем 17 000 учёных из 100 стран.
Тим Бернерс-Ли понял, что научному сообществу требуется более универсальная система с такими характеристиками:
- Совместимостью с различными компьютерами и операционными системами.
- Возможностью глобального обмена информацией между пользователями.
- Децентрализованной структурой без единого управляющего центра.
В процессе подготовки концепции Всемирной паутины Тим Бернерс-Ли вдохновлялся работой Ваневара Буша As We May Think (1945). В этой статье Буш представил концепцию Memex — устройства для расширения памяти, которое позволяло бы пользователям создавать ассоциативные связи между документами, подобно тому как мы делаем закладки в книгах.
Например, когда пользователь читал статью о Второй мировой войне, он мог создавать связи с документами о конкретных сражениях, биографиями полководцев и описаниями военной техники. Такой подход к организации информации стал прообразом гипертекста, где мы можем перемещаться между связанными темами и выстраивать собственный путь познания.
В марте 1989 года Тим Бернерс-Ли подготовил документ, который описывал возможности новой гипертекстовой системы. Для реализации проекта он запросил у руководства ЦЕРН двух сотрудников сроком на 6–12 месяцев. Этими сотрудниками стали сам Тим и системный инженер Роберт Кайо.
В 1991 году Бернерс-Ли создал программное обеспечение WWW, которое включало текстовый браузер, веб-сервер и библиотеку для разработчиков. Пользователь мог открывать простые текстовые страницы с информацией о проекте и переходить по ссылкам на другие документы — это напоминало современные браузеры, но без графики и с более простым интерфейсом.
В марте 1991 года WWW стала доступна сотрудникам ЦЕРН. 6 августа того же года был запущен первый в истории сайт http://info.cern.ch. На нём размещалась информация о концепции Всемирной паутины и подробные инструкции по установке веб-сервера и работе с браузером. В этот же день Бернерс-Ли анонсировал запуск WWW в новостных группах интернета.
30 апреля 1993 года ЦЕРН опубликовал исходный код WorldWideWeb и сделал его открытым программным обеспечением. Такое решение сильно ускорило развитие технологии и привлекло множество пользователей.
В 1994 году состоялась Первая международная конференция World Wide Web. К концу того же года Всемирная паутина объединяла уже около 10 тысяч серверов и обслуживала более 10 миллионов пользователей. Масштаб передаваемой информации впечатлял — каждую секунду через паутину проходил объём данных, равный полному собранию сочинений Шекспира.
Сегодня за развитие Всемирной паутины отвечают несколько организаций:
- W3C — это консорциум, который разрабатывает и утверждает современные веб-стандарты: HTML, CSS и другие технологии.
- IETF — это организация, которая отвечает за развитие HTTP и других базовых интернет-протоколов.
- ICANN — это корпорация, управляющая системой доменных имён и IP-адресов, которая необходима для работы URL-адресов.
Чем WWW отличается от интернета
Интернет и Всемирная паутина нередко считаются синонимами. Однако технически это два разных, хотя и тесно связанных между собой понятия.
Интернет — это глобальная сеть компьютеров, соединённых между собой через сложную инфраструктуру. Она включает оптоволоконные кабели, спутники, маршрутизаторы, серверы и другое сетевое оборудование. Такая физическая система обеспечивает передачу данных между устройствами через стандартизированные протоколы связи: TCP/IP — для передачи данных, HTTP/HTTPS — для веб-страниц, FTP — для передачи файлов, SMTP — для электронной почты и DNS — для преобразования доменных имён в IP-адреса.
Всемирная паутина — это система взаимосвязанных веб-страниц и один из сервисов, которые работают через интернет. Проще говоря, это то, что мы видим, когда открываем Chrome, Safari или другой браузер. Если провести аналогию, интернет — это дороги, а Всемирная паутина — транспорт и грузы, которые по ним движутся. При этом интернет остаётся глобальной сетью, обеспечивающей работу как World Wide Web, так и других систем.
Читайте также:
Всемирная паутина стала популярной благодаря следующим особенностям:
- Простоте использования — любой человек может просматривать веб-страницы через браузер без специальных технических знаний.
- Мультимедийности — на одной странице можно объединить текст, изображения, видео и звук.
- Интерактивности — можно не просто читать информацию, но и взаимодействовать с ней через формы, кнопки и другие элементы.
- Гипертекстуальности — пользователи могут мгновенно переходить между связанными документами с помощью ссылок.
Без Всемирной паутины интернет продолжал бы функционировать, но представлял бы собой набор разрозненных сервисов без единой системы навигации. Пользоваться такой версией интернета было бы неудобно.
Представьте, что вы ищете рецепт борща. Сегодня достаточно открыть браузер и ввести в поисковик «рецепт борща». Перед вами сразу появится список сайтов с рецептами, фотографиями и видеоинструкциями.
Без Всемирной паутины вам пришлось бы знать точный адрес FTP-сервера с кулинарными рецептами, использовать специальную программу для подключения и вручную скачивать текстовые файлы один за другим. При этом все файлы были бы доступны только в текстовом формате — никаких изображений и видео. К тому же у вас не было бы ни поисковой системы, ни возможности быстро переходить между связанными рецептами.
Разумеется, мы рассмотрели упрощённый пример ранней версии интернета. Даже без WWW могли бы существовать текстовые базы данных с поисковыми возможностями. Однако такая система отличалась бы отсутствием мультимедийного контента и более сложной навигацией.
Читайте также:
Устройство и перспективы развития Всемирной паутины
Всемирная паутина изначально была построена на трёх базовых технологиях, которые стали основой современного веба:
- HTML — язык разметки, позволяющий создавать веб-страницы с текстом, изображениями и гиперссылками.
- HTTP — протокол передачи данных, обеспечивающий взаимодействие между веб-серверами и браузерами.
- URL — стандартизированный формат адресов, позволяющий пользователям находить ресурсы в интернете.
Принцип работы был довольно простым: веб-страницы создавались на языке HTML и размещались на серверах. Когда человек вводил URL в строку браузера, HTML-документ передавался с сервера на устройство по протоколу HTTP. После этого браузер обрабатывал HTML-код и преобразовывал его в понятную для пользователя веб-страницу.
К настоящему времени веб значительно эволюционировал и обогатился множеством новых технологий:
- HTML5 — современная версия языка разметки, существенно расширяющая возможности HTML. Она включает встроенную поддержку аудио и видео, семантические элементы, холст Canvas для создания графики, WebGL для 3D-графики, локальное хранилище данных, улучшенные формы и множество других функций.
- CSS — это каскадные таблицы стилей, определяющие визуальное оформление. С их помощью разработчики управляют цветами, шрифтами и расположением всех элементов на странице.
- JavaScript — язык программирования, который делает веб-страницы интерактивными и позволяет динамически менять их содержимое. JavaScript позволяет создавать анимации, обрабатывать действия пользователя (клики, ввод текста и другое), обновлять информацию на странице без перезагрузки и проверять заполнения форм.
- HTTPS — защищённый протокол для передачи данных между клиентом и сервером, который обеспечивает безопасность благодаря шифрованию. Например, при использовании онлайн-банкинга или совершении покупок в интернет-магазинах HTTPS шифрует пароли и банковские данные от перехвата злоумышленниками.
- DNS — система доменных имён, преобразующая удобные для человека веб-адреса в IP-адреса серверов. Например, при вводе www.google.com DNS переводит его в числовой адрес, такой как 172.217.16.238, который позволяет компьютеру найти нужный сервер.
- Веб-серверы — программное обеспечение, которое принимает запросы от браузеров и отправляет им в ответ веб-страницы. Вот несколько популярных веб-серверов:
- Apache HTTP Server — ПО с открытым исходным кодом, известное гибкими настройками и модульной архитектурой.
- Nginx — высокопроизводительный сервер, подходящий для использования в качестве прокси и балансировщика нагрузки.
- Microsoft IIS — сервер от Microsoft, разработанный для Windows Server и глубоко интегрированный в её экосистему.
- LiteSpeed — коммерческий сервер с акцентом на производительность и совместимость с настройками Apache.
- Caddy — современный веб-сервер с автоматическим управлением HTTPS-сертификатами.
- Базы данных — это системы для хранения и обработки информации в веб-приложениях. Например, интернет-магазин хранит в базе данных каталог товаров, информацию о клиентах и историю заказов. Вот несколько популярных решений: MySQL, PostgreSQL и MongoDB.
- API — интерфейсы программирования приложений для взаимодействия веб-сервисов. Например, когда вы бронируете отель через сайт агрегатора, API обеспечивает обмен данными между сайтом агрегатора и системой бронирования отеля.
- WebSocket — это протокол, обеспечивающий двустороннюю связь между браузером и сервером для обмена данными в реальном времени. В отличие от HTTP, где каждый запрос требует нового подключения, WebSocket поддерживает постоянное соединение. Например, в онлайн-чатах или многопользовательских играх WebSocket позволяет мгновенно доставлять сообщения всем участникам без постоянного опроса сервера.
- CDN — сети доставки контента, ускоряющие загрузку веб-страниц через распределённые серверы. Например, когда пользователь из Москвы заходит на сайт, его контент загружается с ближайшего сервера CDN в России, а не с основного сервера в США.
- XML и JSON — это стандартные форматы обмена структурированными данными между веб-приложениями и сервисами. Например, при поиске авиабилетов сайт-агрегатор получает от авиакомпаний информацию о рейсах в формате JSON, содержащую время вылета, цену и наличие мест.
- GraphQL — язык запросов для API, позволяющий оптимизировать передачу данных путём точного указания требуемой информации.
- Service workers — фоновые скрипты браузера, позволяющие веб-приложениям работать в офлайн-режиме и отправлять push-уведомления пользователям. Например, почтовый клиент может загрузить письма для просмотра без интернета, а новостное приложение — уведомить о событиях даже при закрытом браузере.
- OAuth 2.0 и JWT — протоколы и стандарты безопасной аутентификации и авторизации пользователей на веб-ресурсах. Так, когда вы нажимаете «Войти через Google» на каком-либо сайте, OAuth 2.0 безопасно предоставляет этому сайту доступ к вашей учётной записи, не передавая пароль. JWT при этом отвечает за хранение информации о вашей сессии.
Мы перечислили лишь основные технологии, которые составляют основу современной Всемирной паутины. Помимо них, существуют различные системы управления контентом (CMS), фреймворки для разработки (React, Angular, Vue.js), инструменты тестирования и множество других решений.
Если попробовать прогнозировать будущее Всемирной паутины, то можно выделить несколько предполагаемых направлений её развития:
- Рост использования нейросетей. Алгоритмы искусственного интеллекта значительно улучшат поиск информации, персонализацию контента и взаимодействие с пользователями. Например, интернет-магазины смогут автоматически подстраивать свои каталоги под интересы каждого покупателя, анализируя его предыдущие покупки, просмотры или даже время, проведённое на странице товара.
- Усиление безопасности и конфиденциальности. Современные методы шифрования будут глубже интегрироваться в веб-сервисы, социальные сети и платёжные системы для обеспечения надёжной защиты персональных данных. Например, внедрение квантового шифрования сделает перехват данных физически невозможным.
- Углубление интеграции с виртуальной и дополненной реальностью. Приложения будут активнее использовать иммерсивные технологии для взаимодействия с пользователем. Например, при выборе мебели покупатели смогут через камеру смартфона увидеть, как предметы интерьера впишутся в их квартиру.
Какие бы изменения нас ни ожидали в будущем, хочется надеяться, что Всемирная паутина сохранит принципы открытости и доступности информации, которые были заложены её создателем, Тимом Бернерсом-Ли.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!