Протокол HTTPS и передача данных по сети — Введение в тестирование веб-приложений
Когда пользователь взаимодействует с сайтом, то происходит невидимый процесс передачи данных. Пользователь отправляет запрос, что хочет увидеть страницу, а сервер возвращает ответ в виде HTML-страницы.
Для такого способа передачи информации используются специальные наборы правил, которые называются протоколами. Подробнее про то, как работает интернет и какие бывают протоколы рассказывается в курсе «Введение в интернет», ссылка на который будет в конце урока.
В этом уроке мы узнаем о протоколе HTTP и его защищенной версии — протокол HTTPS. Узнаем, почему небезопасно передавать банковские данные по протоколу HTTP и как злоумышленники могут украсть эту информацию.
Типы протоколов
Протоколы в интернете — это наборы правил и соглашений, по которым происходит определенное действие в сети, например, передается информация в интернете. Они определяют, как передается информация внутри сети: от типов проводов и подключений до типа информации, которую можно передать по сети.
В этом уроке мы разберем два протокола, которые отвечают за общение компьютеров внутри сети интернет. Это протоколы:
Разберем каждый подробнее.
Протокол HTTP
Из прошлых уроков мы узнали, что сайты состоят из гипертекста, который размечается с помощью HTML.
Представим, что мы заходим на страницу курса по тестированию и кликаем на урок про гипертекст. В это время сервер формирует ответ в виде HTML-страницы. Когда ответ будет готов, сервер пересылает его нам:
Запросы и ответы в этом случае происходят с помощью протокола HTTP, который расшифровывается как HyperText Transfer Protocol или протокол для передачи гипертекста. Он устанавливает, в каком виде передаются данные, какая информация должна быть передана на сервер, а какая возвращена пользователю.
Так выглядит часть запроса от браузера при обращении к странице этого урока:
GET /courses/web-testing-basics/lessons/hypertext/theory_unit HTTP/3 Host: ru.hexlet.io User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/110.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Это лишь малая часть того, какие данные отправляются на сервер при обращении к странице. По ним сервер понимает:
- Какую страницу запрашивают
- Кто запрашивает страницу, а именно данные о браузере
- Какие данные может обработать пользователь
- Переданные данные в форме
Последний пункт списка может представлять опасность. Через протокол HTTP передаются данные, которые вводятся в формах. Опасность в том, что эти данные не защищены и передаются в том виде, в котором мы их отправили:
Когда сервер получает запрос, он формирует не только данные в виде HTML, но и множество служебной информации. Она помогает браузеру правильно обработать данный запрос. Вот пример полученного ответа от сервера:
HTTP/2 200 OK date: Fri, 17 Mar 2023 12:27:07 GMT content-type: text/html; charset=utf-8 Здесь и далее разметка в формате HTML
В этом ответе для тестировщика важна первая строка — HTTP/2 200 OK . В этой строке содержится «ответ сервера» — специальный код, который приходит от сервера и подсказывает браузеру, какой статус страницы.
Этих ответов много, но стоит наизусть знать несколько из них:
- 200 OK — Данные получены без ошибок. Этот статус основной для страниц
- 301 Moved Permanently — страница перемещена на новый адрес. Когда браузер получает этот код, то ищет в ответе новую страницу и автоматически переходит на нее. Такой процесс называется «редирект»
- 404 Not Found — страница не найдена. Чтобы не отдавать пустую страницу с ошибкой, разработчики делают специальную страницу при возникновении ошибки и показывают ее пользователю
- 500 Internal Server Error, 502 Bad Gateway и 503 Service Unavailable — ошибки, которые связаны с сервером. Временные ошибки — связаны с проблемой доступа к серверу. Глобальные ошибки — связаны с неработающим кодом или проблемами с доступом к базе данных
Главная проблема HTTP — открытость данных. Если передавать важные данные, то они пересылаются в открытом виде и могут быть перехвачены злоумышленниками. Чтобы избежать этого, был придуман стандарт HTTPS, где буква S означает Secure — безопасный.
Протокол HTTPS
Главное отличие HTTP от HTTPS — шифрование данных. Все данные, которые передаются от клиента на сервер, будут передаваться не в открытом, а в зашифрованном виде. Это позволяет защититься от хакерских атак.
Посмотрим на адресную строку:
Сайт Хекслета тоже работает по HTTPS, о чем говорит протокол перед названием сайта и значок замочка. Когда видите эти два параметра, можно не волноваться за свои данные:
Что тестировать
При тестировании веб-страниц нужно обращать внимание на следующие факторы:
- Если со страницы передаются данные от пользователей, то страница должна быть защищена по протоколу HTTPS. Самый простой вариант — полностью перевести сайт на HTTPS
- Все страницы должны отдавать HTTP код «200 OK»
- Если одна из страниц перемещена, то она должна отдавать код «301 Moved Permanently» и автоматически перенаправлять на новую страницу
Инструменты для тестирования
Для проверки страницы тестировщик может использовать встроенный во все браузеры «Инструменты разработчика». Как его открывать мы разбирали в прошлых уроках. Сейчас разберем, как увидеть ответ сервера.
Чтобы посмотреть все запросы сервера, используется вкладка Network:
В этой вкладке нас интересует несколько полей:
- Status — код ответа. Это код HTTP, про который говорилось выше. В большинстве нормальных ситуаций этот код будет 200
- Domain — откуда вернулся ответ на запрос. На сайтах могут использоваться различные скрипты, стили, изображения, которые берутся из внешних источников. Вкладка Domain показывает источник, из которого пришел ответ
- File — какой конкретно файл был загружен
Откройте инструмент разработчика на этой странице, перейдите во вкладку Network и перезагрузите страницу. Это нужно, чтобы увидеть все загруженные ресурсы. Одной из первых строчек будет:
200 GET ru.hexlet.io theory_unit
Это и есть ответ текущей страницы теории. Код 200 сообщит, что страница вернулась без ошибок
Выводы
В этом уроке мы разобрали, что для передачи данных между клиентом и сайтом используется протокол HTTP. Протокол — набор правил и соглашений, по которым строится логика передачи данных. При получении информации сервер отправляет код статуса, по которому браузер понимает корректно ли дошли данные.
Кодов HTTP много, но стоит помнить о нескольких основных из них:
- 200 OK — Данные получены без ошибок
- 301 Moved Permanently — страница перемещена на новый адрес
- 404 Not Found — страница не найдена
- 500 Internal Server Error, 502 Bad Gateway и 503 Service Unavailable — ошибки, связанные с сервером
По протоколу HTTP передается не только запрос, но и различная служебная информация, а так же данные из форм. Это небезопасно, так как данные не шифруются и могут быть перехвачены злоумышленником.
Чтобы избежать перехвата информации, используется протокол HTTPS — защищенная версия HTTP. Отличительная черта протокола — шифрование данных. По этой причине протокол используется везде, где есть формы. При этом протокол используют не на конкретной странице, а на всем сайте.
Самостоятельная работа
Возьмем для примера три сайта, которые работают по-разному с HTTP и HTTPS:
- https://httpbin.org/
- https://ru.hexlet.io/
- http://todotxt.org/
Изучите, как эти сайты работают, если зайти на них с протоколом https:// и http:// . Для этого в адресной строке браузера необходимо ввести протокол вручную.
Ответьте на следующие вопросы:
- Можно открыть сайт по HTTP?
- Можно ли открыть сайт по HTTPS?
- Работает ли перенаправление пользователя с сайта по HTTP на HTTPS?
- Одинаково ли открывается сайт в разных браузерах?
Дополнительные материалы
![]()
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
Об обучении на Хекслете
- Статья «Как учиться и справляться с негативными мыслями»
- Статья «Ловушки обучения»
- Статья «Сложные простые задачи по программированию»
- Вебинар « Как самостоятельно учиться »
Открыть доступ
Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно
- 130 курсов, 2000+ часов теории
- 1000 практических заданий в браузере
- 360 000 студентов
Наши выпускники работают в компаниях:
Передача данных в сети Интернет
Интернет (англ. Internet) – это глобальная (всемирная) сеть, множество независимых компьютерных сетей, соединенных между собой для обмена информацией по стандартным открытым протоколам передачи данных. Она используется для электронной связи и обмена информацией.
Передача данных в сети Интернет происходит посредством коммуникационных протоколов TCP / IP UDP / IP, определяют правила, по которым происходит общение между компьютерами разных типов.
Все услуги сети Интернет можно условно разделить на две категории: обмен информацией между абонентами сети и использование баз данных сети. Практически все услуги сети построены на принципе клиент-сервер. Соответственно, программное обеспечение сети также можно поделить на клиентское и серверное. При этом программное обеспечение сервера занимается предоставлением сетевых услуг, a клиентское программное обеспечение отвечает за передачу запросов серверу и получение ответов от него.
Интернет-портал (от англ. Portal «главный вход; ворота») (или портал, информационный портал) – сайт, предоставляющий пользователю Интернета различные интерактивные сервисы (Интернет-сервисы), работающих в рамках единого сайта.
Также порталы функционируют как точки доступа к информации в Интернете или сайты, которые помогают пользователям в поиске нужной информации через Интернет. Такие порталы представляют информацию из разных источников или тем объединенным способом и также называют навигационными сайтами.
Все порталы выполняют функции поиска, а также, предоставляют Интернет-сервисы, например: электронная почта, лента новостей и т.д.
Идея работы портала – создание или представления критической (крупнейшей) массы Интернет-сервисов, которыми бы можно было привлечь к себе такое количество пользователей-посетителей, которая будет постоянно пополняться и увеличиваться.
Интенсивному развитию порталов способствует ряд программных продуктов (портальные решения), позволяющие объединить в единое пространство информацию из разных источников. Такие решения связаны, в частности, с:
– технологией единого входа (Single Sign On), когда пользователь переходит из одного раздела портала в другой без повторной авторизации;
– организацией передачи данных между разными приложениями, задействованными пользователем в ходе работы на портале;
и т.д.
Сайт, Веб-сайт (англ. Site, Web-site) – совокупность веб-страниц, доступных в сети Интернет, которые объединены как по содержанию, так и навигационно. Физически сайт может размещаться как на одном, так и на нескольких серверах.
Сайтом также называют узел сети Интернет, компьютер, за которым закреплена уникальный IP-адрес, и вообще любой объект в Интернет, за которым закреплена адрес, который идентифицирует в сети (FTP-site, WWW-site т.п.). Набор связанных между собой информационных онлайновых ресурсов, предназначенных для просмотра через компьютерную сеть с помощью специальных программ – браузеров. Веб-узел может быть набором документов в электронном виде, онлайновой службой.
Динамическая веб-страница (англ. dynamic Web page) – веб-страница, содержание которой может изменяться.
В первоначальном варианте гипертекстовая навигация происходила между «статическим» документами. Однако со временем к веб-страниц были добавлены интерактивности, и такие страницы стали называть динамическими. Наполнение (контент) такой веб-страницы может заменяться в зависимости от определенных условий и / или действий.
Существует два пути для создания динамических страниц:
– Использование скриптов, выполняющихся в браузере пользователя (англ. client-side scripting) для изменения содержимого страницы в зависимости от определенных действий пользователя. Для изменения не требуется полного перезагрузки страницы;
– Использование программ, выполняемых на сервере (англ. server-side scripting) для изменения наполнения страницы, передается браузеру пользователя. Информация может изменяться в зависимости от данных, отправленных в HTML форме, параметров в URL, типа браузера, даты или времени суток и других условий.
Результат использования любой техники может быть описано как динамическую веб-страницу.
Страницы, построенные по первому варианту обычно используют скриптовые языки используемые для Dynamic HTML (DHTML) – JavaScript или ActionScript. Для добавления видео, звуков и графических эффектов может быть использовано технологию Flash.
Начиная с 2005 года начала приобретать популярность технология AJAX, позволяющая доставлять информацию с сервера без перезагрузки страницы.
Страницы, построенные по второму варианту могут использовать такие скриптовые языки как PHP, Perl, ASP, JSP и другие.
Поисковая система – онлайн-служба, которая предоставляет возможность поиска информации на сайтах в интернете, а также (возможно) в группах обсуждения и ftp-серверах.
Индексация в поисковых системах сайтов осуществляется поисковым роботом.
Основными критериями качества работы поисковой системы являются релевантность, полнота базы, учет морфологии языка.
Электронная почта
Электронная почта (англ. e-mail, или email, сокращение от electronic mail) – популярный сервис в интернете, что делает возможным обмен данными любого содержания (текстовые документы, аудио-видео файлы, архивы, программы).
Назначение и функции E-mail
Электронной почтой можно посылать не только текстовые сообщения, но и документы, графику, аудио-, видеофайлы, программы и т.д. Электронная почта очень полезна, если нет полноценного доступа (on-line) в Интернет. Через электронную почту можно получить услуги других сервисов сети.
Электронная почта – типичный сервис отложенного чтения (off-line). После отправки сообщения, как правило, в виде обычного текста, адресат получает его на свой компьютер через некоторый период времени, и знакомится с ним, когда ему будет удобно.
Электронная почта похожа на обычную почту, имея те же преимущества и недостатки. Обычное письмо состоит из конверта, на котором указан адрес получателя и стоят штампы почтовых отделений пути следования, и содержимого – собственно письма. Электронное письмо состоит из заголовков, содержащих служебную информацию (об авторе письма, получателя, пути следования письма), которые служат, условно говоря, конвертом, и собственно содержание самого письма. По аналогии с обычным письмом, соответствующим методом можно внести в письмо информацию какого-либо иного рода, например, фотографию и т.п. Как и обычном письме можно поставить свою подпись. Обычное письмо может не дойти до адресата или прийти с опозданием, – аналогично и электронное письмо. Обычное письмо довольно дешевый, а электронная почта – самый дешевый вид связи.
Итак, электронная почта повторяет достоинства (простоту, дешевизну, возможность пересылки нетекстовой информации, возможность подписать и зашифровать письмо) и недостатки (негарантированный время пересылки, возможность доступа для третьих лиц во время пересылки, неинтерактивность) обычной почты. Однако у них есть и существенные отличия. Стоимость пересылки обычной почты в значительной степени зависит от того, куда она должна быть доставлена, ее размера и типа. В электронной почты такой зависимости или нет, или она достаточно ощутимо. Электронное письмо можно шифровать и подписывать более надежнее и удобнее, чем письмо на бумаге – для последнего, собственно, вообще не существует общепринятых средств шифровки. Скорость доставки электронных писем гораздо выше, чем бумажных, и минимальное время прохождения несравнимо меньше.
Электронная почта – универсальный сервис: множество сетей во всем мире, построенных на совершенно разных принципах и протоколах, могут обмениваться электронными письмами с Internet, получая тем самым доступ к другим его ресурсов. Практически все сервисы Internet, которые используются как сервисы прямого доступа (on-line), имеют интерфейс к электронной почте. Так что пользователь, не имея доступа к информации, хранящейся в Internet в режиме on-line, может получать большую ее часть с помощью дешевой электронной почты.
Скорость доставки сообщений электронной почты зависит от того, каким образом она передается. Путь электронного письма между двумя машинами, непосредственно подключенными к Internet, занимает секунды, и при этом вероятность потери письма или его замены минимальна. С другой стороны, если пользователь использует для передачи данных технологии PTN (последовательной передачи файлов многими компьютерами по цепочке) и пересылаете письмо в какую-то экзотическую сеть, то письмо, во-первых, будет долго идти – дни или даже недели, во-вторых , будет больший шанс потеряться при обрыве связи во время передачи по цепочке, в-третьих, его могут подменить где-то на пути следования.
Функционирование электронной почты построена по принципу клиент-сервер, стандартном для большинства сетевых сервисов. Чтобы обмениваться корреспонденцией с почтовым сервером, нужно иметь специальную программу-клиент. Существует много различных программ-клиентов электронной почты, которые могут отличаться отдельными функциями, возможностями и интерфейсом, в том числе и такие, которые работают на сервере в режиме on-line). Однако общие функции в большинстве пакетов одинаковы. К ним можно отнести:
– подготовка текста;
– импорт файлов-приложений;
– отправка письма;
– просмотр и сохранение корреспонденции;
– уничтожения корреспонденции;
– подготовка ответа;
– комментирование и пересылка информации;
– экспорт файлов-приложений.
Передача данных по сети. Стек протоколов TCP/IP.¶
Обмен информацией между компьютерами (по проводному соединению или нет) происходит путем передачи пакетов (фрагментов) данных через сеть. Такая передача должна проходить по определённым правилам или стандартам, которые и называют протоколом передачи данных.
Протокол передачи данных — это набор соглашений интерфейса логического уровня, которые определяют обмен данными между различными программами.
Для передачи данных в сети Интернет используется стек протоколов TCP/IP. В протоколе TCP/IP строго описаны правила передачи информации от отправителя к получателю и обратно. Передача сообщений проходит несколько уровней, каждый из которых работает независимо от предыдущего, используя т.н. инкапсуляцию.
Уровни модели TCP/IP:
За что отвечает
4 уровень — Прикладной
Формат данных, их шифрование
HTTP (веб-страницы), SMTP (почта), FTP (файлы)
3 уровень — Транспортный
Способ передачи данных
2 уровень — Сетевой
Маршрутизация в сети
1 уровень — Сетевых интерфейсов
Физическая передача данных
Общий ход передачи информации выглядит следующим образом:
- Данные от приложения отправляются протоколу транспортного уровня.
- Получив данные от приложения, протокол разделяет всю информацию на небольшие блоки (пакеты). К каждому пакету добавляется адрес назначения, а затем пакет передается на следующий уровень — уровень протоколов Интернет (сетевой уровень).
- На сетевом уровне пакет помещается в дейтаграмму протокола Интернет (IP), к которой добавляется заголовок и концевик. Протокол сетевого уровня определяет адрес следующего пункта назначения IP-дейтаграммы и отправляет его на уровень сетевого интерфейса.
- Уровень сетевого интерфейса принимает IP-дейтаграмму и передает их в виде кадров с помощью аппаратного обеспечения (например, сетевой карты).
Пакеты доставляются на компьютер получателя, после чего проходят все уровни протоколов в обратном порядке. На каждом уровне удаляются соответствующие этому уровню заголовки, после чего данные передаются на уровень приложения.
Практика¶
1. Напишите функции для передачи данных с помощью модели TCP/IP от клиента сети. Каждая функция должна имитировать работу одного из уровней передачи данных. Используйте заготовку кода ниже:
''' 4 уровень, функция application() - отвечает за формат данных, их шифрование input функции - данные, которые хотим отправить по сети, протокол данных ('SMTP','HTTP','FTP') output: данные + информация про формат данных и шифрование ''' def application (data, protocol): . ''' 3 уровень, функция transport() - отвечает за способ передачи данных и их транспортировку input: результат работы функции application(), протокол транспортировки данных ('TCP', 'UDP') output: данные + информация про транспортировку''' def transport(data, protocol): . ''' 2 уровень, функция internet() - отвечает за маршрутизацию в сети. Она ищет кому и как доставить данные input: результат работы функции transport() output: данные + информация про адресата и маршрут доставки''' def internet(data): . '''1 уровень, функция network_interface - отвечает за соединение с сетью input: результат работы функции internet(), информация о соединении output: кортеж из 2 значений: 1. данные, преобразованные в бинарный формат 2. информация о типе соединения (1 - 'Ethernet', 2 -'Wi-Fi', другие числа - "No connection")''' def network_interface (data, connection): . data = '01101' print (data) data_app = application(data,'SMTP') print ('application level - ', data_app) data_transport = transport (data_app,'TCP') print ('transport level - ', data_transport) data_ip = internet (data_transport) print ('internet level - ', data_ip) data_from_network = network_interface (data_ip,'Wi-Fi') print ('network_interface level - ', data_from_network)
2. Напишите функции для получения данных из сети клиентом с помощью модели TCP/IP. Каждая функция должна имитировать работу одного из уровней передачи данных. Используйте заготовку кода ниже, учтите потери данных:
'''1 уровень, функция network_interface - отвечает за соединение с сетью передаём в функцию 2 аргумента: 1 аргумент, data - это данные в виде бинарного числа 2 аргумент, connection - это тип соединения (1 - 'Ethernet', 2 -'Wi-Fi', другие числа - "No connection") возвращаем: - если удалось установить соединение - то кортеж из 2 значений: данные в виде строки из нулей и единиц и тип соединения - если не удалось установить соединение, то строку "No connection"''' def network_interface(data, connection): . ''' 2 уровень, функция internet() - отвечает за маршрутизацию в сети. Она ищет кому и как доставить данные передаём в функцию результат работы функции network_interface() возвращаем данные в виде строки, если данные переданы в кортеже и адресованы нам, иначе - передаём None''' def internet(data): . ''' 3 уровень, функция transport() - отвечает за способ передачи данных и их транспортировку передаём в функцию результат работы функции internet() возвращаем: - если c предыдущего уровня получены данные, то формируем кортеж из 2 значений: данные, протокол передачи - None - если данные не получены''' def transport(data): . ''' 4 уровень, функция application() - отвечает за формат данных, их расшифровку передаём в функцию результат работы функции transport() возвращаем: ''' def application (data): . data = 0b110110111 print (bin(data)) data_from_network = network_interface (data,1) print ('network_interface level - ', data_from_network) data_ip = internet (data_from_network) print ('internet level - ', data_ip) data_transport = transport (data_ip) print ('transport level - ', data_transport) data_app = application(data_transport) print ('application level - ', data_app)
© Copyright Revision d00c0df4 .
Как осуществляется передача данных по сети Internet?
Предположим, что кто-то из наших друзей решил позвонить своей бабушке в Санкт-Петербург. Он поднимает телефонную трубку, набирает номер и ждет, когда бабушка ответит. Как только она берет трубку, между нею и нашим другом устанавливается прямая телефонная связь, которая поддерживается до тех пор, пока один из собеседников не положит трубку. Посторонний в их разговор вмешаться не может. Они болтают, пока не надоест, так что можно сказать на какое-то время линия принадлежит только человеку, живущему в Москве, и его петербургской бабушке.
p, blockquote 1,0,0,0,0 —>
В Internet дело обстоит иначе. Никто не занимает канал единолично, пусть даже ненадолго. По одному и тому же каналу движется вперемежку самая разная информация, которая передается в виде пакетов данных. В эти упаковки она «раскладывается» сразу при отправлении: все сообщении «разрезаются на кусочки» и так пересылаются получателю. По каналам Internet одновременно мчится множество таких пакетов, и всякий новый вливается в этот поток. В момент доставки адресату разрозненные фрагменты, словно детали головоломки, снова складываются в единое целое.
p, blockquote 2,0,1,0,0 —>
Если бы телефон работал по тому же принципу, что и Internet, наш друг и его бабушка замучились бы беседовать друг с другом. Друг произносил бы фразу, а то и пару слов, и долго ждал бы, пока его сообщение дойдет до бабушки. Ее ответ добирался бы до него с таким же запозданием. Конечно, обычный телефонный разговор протекает совсем не так: мы общаемся, как если бы собеседник был рядом с нами. И все же с помощью Internet можно звонить по телефону!
p, blockquote 3,0,0,0,0 —>
А пока продолжим о самом принципе передачи информации в Интернете. Пакет данных, который пересылается по Internet, может содержать не более 1500 знаков. Чтобы такой пакет не попал мимо цели, он содержит поле адреса, в котором указаны такие необходимые сведения, как имя пакета, его позиция в блоке передаваемых данных и инструкции о последующих действиях. Благодаря наличию этой информации из поступивших к получателю пакетов данных и складывается сообщение. Занимаются этим так называемые протоколы.
Главный протокол в Internet — TCP/IP.
p, blockquote 4,0,0,0,0 —>
Вообще говоря, это два разных протокола. С одной стороны, это межсетевой IP (Internet Protocol), задача которого — правильно адресовать пакет данных. Межсетевой протокол представляет собой что-то вроде почтового конверта, на котором указаны адреса получателя и отправителя. Когда пакет попадает в сеть, перед каждым очередным ответвлением информационной магистрали (маршрута передачи данных) он останавливается. Система изучает его адрес, после чего пакет продолжает движение. Путь его не всегда прямой: он направляется всякий раз туда, где нет «пробок». Поэтому сообщение, посланное, скажем, из Парижа в Берлин, может добираться через Японию или США. В Internet отсутствует понятие «занято». Если линия загружена, сообщение мчится окольным путем. В этом заключается огромное преимущество Internet перед другими средствами связи. Даже если где-нибудь на линии случится обрыв, информация все равно дойдет до адресата.
p, blockquote 5,1,0,0,0 —>
Другую функцию выполняет TCP (Transmission Control Protokol). Этот протокол используется для «упаковки» данных в пакеты. Как только все они дойдут до получателя, протокол TCP опять собирает из них сообщение. Сделать это помогают особые пометки, которыми снабжены пакеты данных. Это сведения о размере общего массива данных, количестве пакетов и о последовательности, в которой их предстоит собирать.
p, blockquote 6,0,0,0,0 —>
Протокол TCP/IP помогает передавать данные. Он налаживает обмен информацией между различными компьютерными системами. Бывает и так, что замкнутая локальная сеть не работает с протоколом TCP/IP. Однако и из нее можно выйти в Internet: через шлюз (gateway) — специальный компьютер, который обеспечивает обмен данными между разными сетями. Такой шлюз переводит информацию с языка протокола TCP/IP на язык локальной сети, после чего передает ее соответствующему компьютеру.
p, blockquote 7,0,0,0,0 —>
Например, если вы хотите послать по Internet электронное письмо пользователю онлайновой службы CompuServe, ваше сообщение неминуемо пройдет через шлюз этой сети. Он придаст вашему посланию формат, принятый в сети CompuServe, и ваш адресат без труда прочтет его. Точно так же он сам может отправить послание в локальную сеть, использующую другой протокол.
p, blockquote 8,0,0,1,0 —>
В России многопротокольный доступ к сети впервые предложила компания Совам Телепорт.
В наше время многие крупные фирмы заводят собственные локальные сети, чтобы обеспечить связь между сотрудниками на рабочих местах и различными филиалами данного предприятия. Их называют корпоративные сети, или intranet-сети.
p, blockquote 9,0,0,0,0 —>
Создаются они в соответствии с техническими стандартами всемирной сети, и компьютеры, подключенные к таким внутренним сетям, имеют возможность доступа в Internet.
p, blockquote 10,0,0,0,0 —> p, blockquote 11,0,0,0,1 —>
Некоторые коммерческие онлайновые службы — например, Microsoft Network (MSN) — тоже используют технологию Internet, будучи тем самым составной частью всемирной компьютерной сети.