Что такое сеть?
Компьютеры в офисе или доме часто соединены между собой сетью, называемой локальной вычислительной сетью (LAN), чтобы облегчить общий доступ к файлам и принтерам.
Один из способов подключения компьютера к сети - с помощью кабеля. Один конец кабеля подключается к специальному разъёму компьютера, а другой - к маршрутизатору. Это проводное соединение называется Ethernet.
Можно также использовать беспроводное соединение, если у вас есть беспроводной маршрутизатор. Это подключение Wi-Fi, использующее радиосигналы. Смартфоны и планшеты могут использовать подключение Wi-Fi.
Маршрутизатор - это специализированный компьютер, который получает данные с любого устройства в сети и направляет их к пункту назначения.
Для того чтобы пользоваться Интернетом, вы должны иметь учетную запись у провайдера услуг Интернета (ISP). Ваш ISP установит маршрутизатор с модемом, который подключается к их сети. Есть различные соединения, которые может обеспечить провайдер, такие как широкополосное волокно (высокоскоростное), DSL или коммутация по телефонной линии.
Модем выполняет преобразование между цифровыми сигналами, используемыми в компьютерной сети, и аналоговыми сигналами, используемыми на линии телекоммуникаций.
Что такое Интернет?
Интернет - это очень большая глобальная сеть, которая соединяет другие сети. Он построен со многими маршрутизаторами, каждый из которых имеет высокоскоростное оптоволоконное соединение с несколькими другими маршрутизаторами. Интернет позволяет компьютерам в одной сети взаимодействовать с компьютерами в других сетях.
Обратите внимание, что Интернет представлен на диаграммах в виде облака. Эта традиция уходит корнями в далекие времена, предшествовавшие использованию "облака" для обозначения удаленного хранения данных. При использовании облачного сервиса, такого как Apple iCloud или Dropbox, компьютер использует практически такой же тип подключения к Интернету, как показано на этой диаграмме. Но вместо подключения к поисковому серверу Google, он подключается к серверу, предоставляющему большой объем дискового пространства для сохранения или резервного копирования файлов.
Как работает Интернет?
Данные, отправляемые через Интернет, отправляются в виде "пакетов". Максимальный размер пакета зависит от характеристик сетевых соединений, но обычно составляет 1500 байт. Большие данные должны быть разделены на несколько пакетов. Так, например, если вы загрузите 1,5 МБ фото или музыкальный файл (1 500 000 байт), ваш компьютер или смартфон получит около 1000 пакетов через Интернет.
Каждый пакет должен быть отформатирован в соответствии с Интернет-протоколом (IP). Это делается путем добавления IP информации в начале каждого пакета, в "IP-заголовок".
Двумя важными полями информации в IP-заголовке являются "IP-адрес назначения назначения", который идентифицирует компьютер, на который отправляется пакет, и "IP-адрес источника", который является адресом компьютера, отправившего данные. Адрес источника необходим, когда компьютер, получивший данные, должен отправить ответ обратно.
IP-адрес представляет собой последовательность из четырех цифр, разделенных точками, как, например, в 76.250.32.149.
Маршрутизаторы передают IP-пакеты, считав IP-адрес назначения и перенаправляя их на следующий маршрутизатор, находящийся на самом быстром маршруте.
Имейте в виду, что самый быстрый маршрут может быть не самым коротким. На рисунке 3-2 путь от компьютера до Google длиннее, чем любой из диагональных путей. Это аналогично выбору маршрута движения в автомобиле для использования шоссе, а не городских улиц, даже если расстояние длиннее.
Даже в такой простой сети, как эта, можно увидеть, что существует множество различных путей между двумя точками. На самом деле, маршрут прохождения пакета может отличаться от маршрута предыдущего пакета.
Вот почему.
Интернет подвержен внезапным изменениям в структуре трафика. Соединение между двумя маршрутизаторами может быть перегружено или даже прервано. Таким образом, самый быстрый маршрут может отличаться в разное время. Это похоже на то, что вы, вероятно, делаете во время вождения. Если на вашем обычном маршруте или в часы пик идет строительство, вы выбираете альтернативный маршрут, чтобы избежать задержек.
Если пакеты не доставляются из-за перегрузки или ошибок в канале связи, отправка осуществляется на передающую машину повторно. Это делается с помощью специального Интернет-протокола под названием TCP (Transmission Control Protocol - Протокол управления передачей). TCP используется большинством интернет-приложений и мобильных приложений, таких как веб-браузер. Заголовок TCP добавляется к каждому IP пакету для предоставления управляющей информации. Вот как выглядит IP-пакет при использовании TCP.
Если сетевое соединение имеет большое количество помех, могут возникать ошибки при передаче пакетов, вызывающие ретрансляцию по TCP. Это может сделать подключение к Интернету очень медленным. Вы можете столкнуться с этим при использовании публичной сети WiFi. Можно попытаться переехать в другое место, где может быть более сильный сигнал Wi-Fi. Однако общедоступный Wi-Fi также может быть медленным, потому что на каждого пользователя установлено ограничение пропускной способности, так что пропускная способность Wi-Fi распределяется поровну между всеми людьми, использующими сеть.
Ответ веб-сервера
Веб-сервер Википедии извлекает данные HTTP из IP-пакета, расшифровывает их, если это был HTTPS-запрос, и находит веб-страницу, например, wiki/ Steve_Jobs. Это просто имя файла, поэтому он читает его, помещает в часть данных IP-пакета и возвращает пакет через Интернет обратно на ваш компьютер.
Когда сетевой драйвер компьютера получает IP-пакет, содержащий ответ HTTP, он передает его браузеру. Браузер извлекает веб-страницу из части пакета с данными, форматирует ее и отображает на экране.
Если веб-страница содержит изображения, браузер выполнит дополнительные HTTP-запросы для получения файлов изображений. Если на странице много изображений, это может занять некоторое время, и это одна из причин, по которой некоторые веб-страницы отображаются дольше других.
HTML (язык гипертекстовой разметки)
Как упоминалось ранее, веб-страницы являются гипертекстом, поскольку содержат ссылки на другие страницы. Веб-страницы также содержат инструкции по форматированию, чтобы браузеры знали, как отображать страницу. Это достигается добавлением "тегов" в текст для предоставления инструкций. Правила для тегов определяются HTML, языком гипертекстовой разметки (Hyper Text Markup Language).
Вы можете увидеть всю веб-страницу со всеми HTML-тегами, используя опцию браузера для сохранения веб-страницы, а затем открыть HTML-файл в текстовом редакторе (эта опция может быть доступна не во всех браузерах).
HTML, язык гипертекстовой разметки, не является языком программирования. Это строго язык разметки. Вы не можете выполнять вычисления с помощью HTML или писать программы. Веб-страницы, содержащие только HTML, достаточно статичны.
Однако вы можете использовать языки сценариев (программирования) на веб-странице, используя HTML-тег <script>. Браузеры на клиентской машине запускают скрипт, определенный в HTML файле, для добавления динамических функций на веб-страницы.
Наиболее распространенным языком сценариев является JavaScript. JavaScript не связан с Java, это совершенно другой язык.
Многие веб-сайты нуждаются в доступе к базе данных, например, когда используется форма для ввода и редактирования информации об учетной записи пользователя (имя, адрес и т.д.). Вместо скрипта, который запускается в браузере на клиентской машине, необходимо программное обеспечение, которое запускается на сервере для получения информации из базы данных. Когда веб-сервер загружает страницу, запрошенную браузером, он сначала запускает код стороны сервера, а затем возвращает веб-страницу.
PHP является одним из наиболее широко используемых серверных языков. Первоначально PHP обозначал "Personal Home Page", но позже был изменен на "PHP Hypertext Preprocessor".
PHP встроен в HTML с тэгом <?php, за которым следует PHP-код и закрывающий тэг ?,>
Когда веб-сервер получает HTML-файл, он обрабатывает PHP-код перед отправкой файла в браузер.
Веб-сводка: Когда вы запрашиваете веб-страницу, ваш веб-браузер создает HTTP-запрос и помещает его в IP-пакет вместе с IP-адресом получателя веб-сервера. Маршрутизаторы в вашей локальной сети, ISP и Интернет доставляют пакеты на веб-сервер. Веб-сервер получает файл, содержащий веб-страницу, и возвращает его в виде HTTP-ответа в виде одного или нескольких IP-пакетов. Ваш браузер форматирует веб-страницу в соответствии с встроенными HTML-тегами и отображает ее на экране.
Другие протоколы
Многие другие протоколы, помимо HTTP, используются в Интернете. Некоторые из них являются унаследованными протоколами, которые использовались до появления HTTP.
FTP (File Transfer Protocol - протокол передачи файлов) - это протокол, который все еще широко используется для передачи файлов между компьютерами. В браузере может существовать ссылка на FTP-сервер. Об этом будет сообщено, если вместо ftp:// будет указана ссылка ftp://. Для людей, регулярно использующих FTP, существует множество бесплатных пакетов клиентских программ FTP, которые можно установить более гибко, чем с помощью браузера.
Электронная почта (электронная почта) - это протокол, который используется в течение длительного времени. Хотя многие люди теперь полагаются на социальные сети и различные приложения для обмена сообщениями на своих мобильных телефонах для общения с друзьями и контактами, электронная почта остается важной. Все организации, от крупных до малых, предоставляют учетные записи электронной почты для своих сотрудников. Электронная почта обеспечивает стратегическую внутреннюю коммуникацию между сотрудниками и в равной степени важна для внешних коммуникаций с деловыми контактами, такими как клиенты, поставщики и партнеры.
Мобильные приложения используют различные протоколы. Многие из них используют HTTP и HTTPS, но передают данные, которые не являются HTML-страницами. HTTP может использоваться со многими различными типами данных. Это делается путем указания типа данных в HTTP-заголовке.
Пользовательские протоколы также могут быть разработаны для специализированных клиентских серверных приложений. Однако, как правило, предпочтительнее использовать один из многих стандартных протоколов, которые доступны. Стандартный протокол был разработан многими экспертами в этой области, протестирован, и обычно имеется открытый исходный код. Пользовательский протокол требует гораздо больше времени на разработку, код и отладку.
Резюме протокола: Независимо от протокола, процесс передачи данных через Интернет принципиально такой же, как был описан для веб-протокола HTTP. Данные отформатированы в соответствии с определенным протоколом, упакованы в часть данных IP-пакета с IP-адресами источника и назначения в IP-заголовке и отправлены сетевым драйвером вашего компьютера. Маршрутизаторы в вашей сети, провайдере интернет-услуг и в Интернете направляют пакет на целевой компьютер.