В течение последних нескольких недель я размышлял над тем, почему людям так трудно понять, как работает Интернет. В конце концов, концепцию сети достаточно легко понять. В какой-то момент я понял, что большинство людей действительно не понимают, что такое протокол и какое отношение он имеет к проводной связи. Или, возможно, есть люди, которые понимают, что такое протокол по сути, но не понимают, как разные его уровни играют разные роли. Я намерен прояснить это и объяснить, как протоколы произвели революцию в Интернете и стали единственным эфиром всех наших онлайн-коммуникаций.
Интернет-протокол (IP)
IP-адрес является важной частью интернет-протокола (IP). Таким образом, полное имя IP-адреса — это адрес интернет-протокола. Интернет-протокол управляет основными частями интернет-коммуникаций, такими как передача пакетов. Все, что исходит от вашего компьютера, сначала использует протокол IP, а затем что-либо еще.
После этого он разветвляется на два типа протоколов, которые образуют уровень (известный как транспортный уровень ) поверх IP. : подключено и без соединения. Они известны соответственно как протокол управления передачей (TCP или TCP/IP) и протокол пользовательских датаграмм (UDP).
При использовании TCP вы должны установить средство связи с сервером (как показано на изображении выше), прежде чем вам будет разрешено войти в выделенное для вас виртуальное пространство. Это очень похоже на телефонный звонок. Телефон звонит, и как только принимающая сторона берет трубку, вы оба можете поговорить. TCP абсолютно необходим при отправке данных, и их получение должно быть подтверждено.
UDP больше похож на почтовое отделение. Вы можете отправить сообщение на сервер в любое время, без необходимости устанавливать соединение. Все, что вам нужно знать, это адрес назначения, и вы отправляете пакет дейтаграммы на этот адрес, который он будет читать, интерпретировать и отвечать на него соответствующим образом. Различия во взаимодействии компьютеров через TCP и UDP показаны на изображении выше. Некоторые приложения предпочитают UDP (например, BitTorrent), поскольку он не тратит впустую полосу пропускания восходящего потока, отправляя подтверждения (пакеты подтверждения или ACK) каждого передаваемого бита данных. Вместо этого данные, которые не были отправлены, просто пересылаются повторно при любых дальнейших запросах. Благодаря этому загрузка UDP происходит значительно быстрее.
Эти два протокола наиболее часто используются в пакете интернет-протоколов (IP). Для простоты в этой статье не будут углубляться в другие части пакета.
Протоколы прикладного уровня
Мы уже давно прошли те времена, когда простые текстовые сообщения передавались по проводам для передачи информации и команд на разные серверы. Теперь у вас есть YouTube и несколько других веб-сайтов, которые вы просматриваете и наслаждаетесь ежедневно. Для сложных интернет-коммуникаций нам необходимы другие протоколы, работающие на уровне поверх TCP и UDP, известном как прикладной уровень.
Прикладной уровень — это именно то, что он предполагает. Это набор протоколов, работающих поверх TCP и UDP, которые предоставляют компьютерам дополнительные способы взаимодействия друг с другом. Ваше приложение BitTorrent использует протокол BitTorrent. Ваш браузер использует протокол передачи гипертекста (HTTP) и HTTP Secure («https://», который работает через зашифрованное соединение SSL/TLS). Ниже приведен пример того, как типичный протокол уровня приложения (в данном примере HTTP Secure) соотносится со всеми другими протоколами, работающими ниже него.
Почтовые клиенты часто используют для входящих сообщений либо протокол доступа к сообщениям Интернета (IMAP), либо протокол почтового отделения (POP). Простой протокол передачи почты (SMTP) используется для исходящих сообщений.
Существуют буквально тысячи протоколов, каждый из которых используется приложением для оптимизации функциональности и добавления как можно большего количества функций, чтобы вы могли быть довольны используемыми продуктами. Новые версии приложений часто совместимы с новыми версиями протоколов, добавляя к снежному кому функции, которые вам уже нравятся. Именно поэтому в некоторых приложениях появляются потрясающие функции.
Возможно, теперь вы понимаете, почему некоторые онлайн-игры требуют обновления до новой версии, чтобы продолжить игру на определенных серверах. Серверы, скорее всего, используют версии собственного протокола связи, которые больше не совместимы с вашей игрой. Эти проблемы решаются по мере того, как протоколы продолжают совершенствоваться и устранять препятствия, которые мешают пользователям старых приложений общаться и взаимодействовать с пользователями более новых версий.
Все еще что-то не можете понять?
Если вы все еще в недоумении по поводу протоколов, прочитав это, значит, я не выполнил свою работу! Позвольте мне закончить, задав ваш вопрос в комментарии ниже!
Автор изображения: сетевые кабели RJ45, подключенные к коммутатору от BigStockPhoto