Эта статья была составлена, когда я на втором курсе изучал компьютерные сети, и большая часть ее содержания взята из книги г-на Се Сижэня "Компьютерные сети".
Чтобы сделать содержание более понятным, я изменил предыдущее расположение и приложил несколько связанных схематических диаграмм для облегчения понимания.
@[toc]
1. Обзор компьютерных сетей
1.1 Основная терминология
- узел: узел в сети может быть компьютером, концентратором, коммутатором или маршрутизатором и т. д.
- связь: Физическая линия от одного узла к другому. Других пересечений между ними нет.
- хозяин: компьютер, подключенный к Интернету.
- Интернет-провайдер (интернет-провайдер): интернет-провайдер (провайдер).
- IXP (точка обмена в Интернете): Основная функция точки обмена интернет-трафиком IXP — обеспечить прямое соединение двух сетей и обмен пакетами без необходимости пересылки пакетов через третью сеть.
https://labs.ripe.net/Members/fergalc/ixp-traffic-during-stratos-skydive
- RFC(Request For Comments): означает «запрос комментариев» и содержит почти всю важную текстовую информацию об Интернете.
- WAN WAN (глобальная сеть): Задача — транспортировать данные, отправляемые хостом, на большие расстояния.
- MAN (городская сеть): Используется для соединения нескольких локальных сетей.
- Локальная сеть (LAN): Большинство школ или предприятий имеют несколько взаимосвязанных локальных сетей.
http://conexionesmanwman.blogspot.com/
- Персональная сеть PAN (персональная сеть): Сеть, которая соединяет электронные устройства, принадлежащие личному использованию, с беспроводной технологией в месте, где работают люди.
https://www.itrelease.com/2018/07/advantages-and-disadvantages-of-personal-area-network-pan/
- пакет (пакет): единица данных, передаваемая в Интернете. Он состоит из заголовка и сегмента данных. Пакет также называют пакетом, а заголовок можно назвать заголовком пакета.
- хранить и пересылать: Маршрутизатор получает пакет, сначала проверяет правильность пакета и отфильтровывает ошибку конфликтующего пакета. После подтверждения правильности пакета извлеките адрес назначения, найдите адрес выходного порта, который вы хотите отправить, в таблице поиска, а затем отправьте пакет.
- пропускная способность: В компьютерных сетях это представляет «самую высокую скорость передачи данных», которая может передаваться из одной точки сети в другую в единицу времени. Он часто используется для обозначения способности линии связи сети передавать данные. Единицей является «бит в секунду», записанная как b/s.
- пропускная способность: Указывает объем данных, проходящих через сеть (или канал, интерфейс) в единицу времени. Пропускная способность чаще используется в качестве меры сети в реальном мире, чтобы узнать, сколько данных фактически проходит через сеть. Пропускная способность ограничена пропускной способностью сети или номинальной скоростью сети.
1.2. Резюме важных знаний
- Компьютерная сеть (называемая сетью) соединяет множество компьютеров вместе, а Интернет соединяет вместе множество сетей и представляет собой сеть сетей.
- Интернет, начинающийся со строчной буквы i, является общим термином, который обычно относится к сети взаимосвязанных компьютерных сетей. Протоколы связи (то есть правила связи) между этими сетями могут быть произвольными. Интернет (Интернет), начинающийся с заглавной буквы I, является специальным термином. Он относится к крупнейшему в мире, открытому и особому Интернету, который соединен между собой многими сетями и использует протокол TCP/IP в качестве правила связи, ранее известный как АРПАНЕТ. Рекомендуемый перевод Интернет называется Интернет, который сейчас вообще в народе называют Интернетом.
- Маршрутизатор является ключевым компонентом для реализации коммутации пакетов, его задачей является пересылка полученных пакетов, что является наиболее важной функцией базовой части сети. Коммутация пакетов использует технологию промежуточного хранения, что означает, что пакет (весь блок данных для отправки) делится на несколько пакетов, а затем передается. Перед отправкой сообщения сначала разделите более длинное сообщение на меньшие сегменты данных одинаковой длины. После добавления некоторых заголовков, состоящих из необходимой управляющей информации, перед каждым концом данных формируется пакет. Группы также называются пакетами. Пакет представляет собой единицу данных, передаваемую в Интернете. Именно потому, что заголовок пакета содержит важную управляющую информацию, такую как адрес получателя и адрес источника, каждый пакет может независимо выбрать путь передачи в Интернете и быть правильно доставленным в пакет. передача, конечная точка.
- Интернет можно разделить на периферийные части и основные части в зависимости от способа работы. Хост находится на краю сети, и его роль заключается в обработке информации. Ядро состоит из большого количества сетей и маршрутизаторов, соединяющих эти сети, и его роль заключается в обеспечении связности и коммутации.
- Компьютерная связь — это связь между процессами (т. е. работающими программами) на компьютере. Режим связи, принятый компьютерной сетью, — это режим клиент-сервер (режим C/S) и режим однорангового соединения (режим P2P).
- И клиент, и сервер относятся к прикладным процессам, участвующим в обмене данными. Клиент является заказчиком услуги, а сервер — поставщиком услуги.
- В соответствии с различными областями компьютерные сети делятся на глобальную сеть WAN, городскую сеть MAN, локальную сеть LAN и персональную сеть PAN.
- Наиболее часто используемыми показателями производительности компьютерных сетей являются: скорость, полоса пропускания, пропускная способность, задержка (задержка отправки, задержка обработки, задержка постановки в очередь), произведение задержки на пропускную способность, время приема-передачи и использование канала.
- Сетевые протоколы или протоколы — это правила, установленные для обмена данными в сети. Уровни компьютерной сети и ее набор протоколов называются архитектурой сети.
- Пятиуровневая архитектура состоит из прикладного уровня, транспортного уровня, сетевого уровня (интернет-уровня), уровня канала передачи данных и физического уровня. Наиболее важными протоколами транспортного уровня являются протоколы TCP и UDP, а наиболее важным протоколом сетевого уровня является протокол IP.
Далее будет представлена пятиуровневая архитектура компьютерных сетей:Физический уровень + канальный уровень + сетевой уровень (интернет-уровень) + транспортный уровень + прикладной уровень.
2. Физический уровень
2.1 Основная терминология
- данные: Сущность, отправившая сообщение.
- сигнал: Электрическое или электромагнитное представление данных. Другими словами, сигнал — это объект, пригодный для передачи по передающей среде.
- кодовая единица: основная форма волны, которая представляет различные дискретные значения, когда цифровой сигнал представлен формой волны во временной области (или просто во временной области).
- Симплекс: Может быть общение только в одном направлении и никакого взаимодействия в противоположном направлении.
- полудуплекс: Обе стороны связи могут отправлять информацию, но не обе стороны одновременно (конечно, она не может быть получена одновременно).
- Полный дуплекс (полный дуплекс): Обе стороны связи могут отправлять и получать информацию одновременно.
- искажение: Потеря подлинности, в основном относится к разнице между принятым сигналом и переданным сигналом, с износом и затуханием. Факторы, влияющие на степень искажения: 1. Скорость передачи символов 2. Дальность передачи сигнала 3. Шумовые помехи 4. Качество среды передачи
- Критерий Ная: В любом канале эффективность передачи символов имеет верхний предел.Если скорость передачи превышает этот верхний предел, возникают серьезные межсимвольные перекрестные помехи, из-за чего приемник не может оценивать (т. е. идентифицировать) символы.
- Теорема Шеннона: В канале с ограниченной пропускной способностью и шумами существует верхний предел скорости передачи данных, чтобы не генерировать ошибки.
- сигнал основной полосы частот: Сигнал от источника. Относится к цифровому или аналоговому сигналу, который не модулируется.
- полосовой сигнал: После того, как сигнал основной полосы модулируется несущей, частотный диапазон сигнала перемещается в более высокую полосу частот для передачи в канале (то есть через канал может проходить только определенный частотный диапазон). Модулированный сигнал здесь полосовой сигнал.
- модуляция: Процесс обработки информации источника сигнала и добавления ее к несущему сигналу, чтобы он приобрел форму, пригодную для передачи по каналу.
- соотношение сигнал шум: относится к отношению средней мощности сигнала к средней мощности шума, обозначаемому как S/N. Отношение сигнал/шум (дБ)=10*log10(S/N).
- мультиплексирование каналов: указывает, что несколько пользователей используют один и тот же канал. (не обязательно одновременно).
- битрейт: Количество битов, передаваемых в единицу времени (в секунду).
- Скорость передачи данных (скорость передачи данных): Количество изменений состояния модулированной несущей в единицу времени. Скорость модуляции несущей используется для сигнала данных.
- мультиплексирование: Способ совместного использования канала.
- ADSL (асимметричная цифровая абонентская линия): Асимметричная цифровая абонентская линия.
- Гибридная оптоволоконная коаксиальная сеть (сеть HFC): Жилая сеть широкополосного доступа, разработанная на основе существующей широкополосной сети кабельного телевидения.
2.2. Резюме важных моментов знаний
- Основной задачей физического уровня является определение некоторых характеристик, связанных с интерфейсом среды передачи, таких как механические характеристики, электрические характеристики, функциональные характеристики и характеристики процесса.
- Систему передачи данных можно разделить на три части, а именно систему источника, систему передачи и систему назначения. Исходная система включает исходную точку (или исходную станцию, источник) и отправителя, а целевая система включает получателя и конечную точку.
- Цель общения — передача сообщений. Например, голос, текст, изображения и т. д. — все это сообщения, а данные — это сущность, которая передает сообщение. Сигналы представляют собой электрические или электромагнитные представления данных.
- Сигналы можно разделить на аналоговые сигналы (или непрерывные сигналы) и цифровые сигналы (или дискретные сигналы) в соответствии со значением параметров, представляющих сообщение в сигнале. При использовании форм сигналов во временной области (называемой временной областью) для представления цифровых сигналов основные формы сигналов, представляющие различные дискретные значения, называются символами.
- В зависимости от способа обмена информацией между двумя сторонами связь можно разделить на одностороннюю связь (или симплексную связь), двустороннюю попеременную связь (или полудуплексную связь) и двустороннюю одновременную связь (полнодуплексную связь). коммуникация).
- Сигнал от источника называется сигналом основной полосы частот. Сигнал должен быть модулирован для передачи по каналу. Модуляцию можно разделить на модуляцию основной полосы частот и модуляцию полосы пропускания. Самыми основными методами полосовой модуляции являются амплитудная модуляция, частотная модуляция и фазовая модуляция. Существуют также более сложные методы модуляции, такие как квадратурная амплитудная модуляция.
- Чтобы увеличить скорость передачи данных по каналу, можно использовать более совершенные среды передачи или усовершенствованные методы модуляции. Но скорость передачи данных не может быть произвольно увеличена.
- Среды передачи можно разделить на две категории, а именно управляемые среды передачи (витая пара, коаксиальный кабель, оптическое волокно) и неуправляемые среды передачи (беспроводная связь, инфракрасное излучение, атмосферный лазер).
- Чтобы эффективно использовать ресурсы оптического волокна, пассивные оптические сети PON широко используются между оптоволоконными магистралями и пользователями. Пассивная оптическая сеть не нуждается в источнике питания, а ее долгосрочная эксплуатация и затраты на управление низки. Наиболее популярными пассивными оптическими сетями являются пассивная оптическая сеть Ethernet EPON и гигабитная пассивная оптическая сеть GPON.
2.3 Дополнение
2.3.1 Что в основном делает физический уровень?
Главное, что делает физический уровень, этоПрозрачно биточный поток. Основную задачу физического уровня также можно описать как определение некоторых характеристик интерфейса со средой передачи, а именно: механических характеристик (некоторых физических свойств разъемов, используемых в интерфейсе, таких как форма и размер), электрических характеристик ( внешний вид интерфейсного кабеля на каждой линии), диапазон напряжений), функциональные характеристики (значение определенного уровня напряжения, появляющегося на линии), технологические характеристики (порядок возникновения различных возможных событий для разных функций).
Физический уровень рассматривает, как передавать потоки битов данных в среде передачи, соединяющей различные компьютеры, а не ссылаться на конкретную среду передачи.В существующей компьютерной сети существует множество видов аппаратных устройств и средств передачи, а также множество различных способов связи. Роль физического уровня состоит в том, чтобы максимально скрыть различия между этими средами передачи и средствами связи, чтобы уровень канала передачи данных над физическим уровнем не мог чувствовать эти различия, поэтому уровень канала передачи данных мог только рассматривать завершение протокола. этого уровня и услуг без учета конкретных средств передачи и средств связи в сети.
2.3.2 Несколько распространенных методов мультиплексирования каналов
- Мультиплексирование с частотным разделением каналов (FDM): все пользователи одновременно занимают разные ресурсы пропускной способности.
- М1 мультиплексирование времени (TDM): Все пользователи занимают одну и ту же полосу частот в разное время (временное разделение без частотного разделения).
- Статистическое мультиплексирование с временным разделением (Statistic TDM): улучшенное мультиплексирование с временным разделением, которое может значительно улучшить использование канала.
- Мультиплексирование с кодовым разделением каналов (CDM): Пользователи используют разные паттерны, специально подобранные таким образом, чтобы между пользователями не было помех. Сигнал, посылаемый этой системой, имеет сильную защиту от помех, а его спектр подобен белому шуму, который противнику нелегко обнаружить.
- Волновые точки мультиплексированы (WDM): Индикатор WDM означает мультиплексирование с частотным разделением.
2.3.3 Несколько широко используемых технологий широкополосного доступа, в основном ADSL и FTTx
Методами широкополосного доступа пользователей к Интернету являются асимметричная цифровая абонентская линия ADSL (преобразование существующих аналоговых телефонных линий в цифровые технологии без повторной проводки. Быстрая версия ASDL — это очень высокоскоростная цифровая абонентская линия VDSL.), оптоволокно. коаксиальная гибридная сеть HFC (представляет собой разновидность бытовой сети широкополосного доступа, разработанная на основе текущего широкого охвата сети кабельного телевидения) и FTTx (т.е. оптоволокно до...).
3. Канальный уровень
3.1 Основная терминология
- связь: Физическая ссылка от узла к соседнему узлу.
- канал передачи данных: Канал передачи данных формируется путем добавления аппаратного и программного обеспечения, которое реализует протоколы, управляющие передачей данных по каналу.
- Cyclic Redundancy Check CRC (циклическая проверка избыточности): Для обеспечения надежности передачи данных CRC является методом обнаружения ошибок, широко используемым на канальном уровне.
- Рамка: Блок передачи данных канального уровня, состоящий из заголовка канального уровня и пакета, переносимого блоком данных протокола.
- MTU (Максимальная передача Uint): Максимальный блок передачи. Максимальная длина части данных рамы.
- Битовая частота ошибок (битовая частота ошибок): Отношение переданных ошибочных битов к общему количеству переданных битов за определенный период времени.
- PPP (протокол двухточечной связи): Протокол точка-точка. То есть протокол уровня канала передачи данных, используемый компьютером пользователя и интернет-провайдером для связи. Ниже представлена схематическая диаграмма кадра PPP:
- MAC-адрес (управление доступом к среде или управление доступом к среде): Парафраз для управления доступом к среде или физического адреса, аппаратного адреса, используемого для определения местоположения сетевых устройств. В модели OSI третий сетевой уровень отвечает за IP-адреса, а канальный уровень второго уровня отвечает за MAC-адреса. Таким образом, хост будет иметь MAC-адрес, а каждое сетевое местоположение будет иметь уникальный для него IP-адрес. Адреса являются важными идентификаторами для идентификации системы: «имена указывают на ресурсы, которые мы ищем, адреса указывают, где находятся ресурсы, а маршруты сообщают нам, как туда добраться.
- Мост (мост): Устройство межсетевого взаимодействия, используемое для ретрансляции на канальном уровне и соединения двух или более локальных сетей.
- выключатель: Вообще говоря, коммутатор относится к устройству, которое завершает обмен информацией в системе связи. Коммутатор, работающий на канальном уровне, здесь относится к коммутационному концентратору, который по сути представляет собой мост с несколькими интерфейсами.
3.2. Резюме важных знаний
- Канал — это физический канал от узла к соседнему узлу, а канал данных добавляет к каналу необходимое оборудование (например, сетевые адаптеры) и программное обеспечение (например, реализацию протокола).
- Канальный уровень в основном используетканал точка-точкаа такжевещательный каналдва вида.
- Блоки данных протокола, передаваемые канальным уровнем, представляют собой кадры. Три фундаментальных вопроса уровня канала передачи данных:инкапсуляция в кадр,Прозрачная передачаа такжеобнаружение ошибок
- Циклическая проверка избыточности CRC— метод обнаружения ошибок, а последовательность проверки кадра FCS — избыточный код, добавляемый после данных
- протокол точка-точка PPPЭто наиболее часто используемый протокол на канальном уровне.Его характеристики: простота, только обнаружение ошибок без их исправления, не используются серийные номера, не выполняется управление потоком и может одновременно поддерживаться несколько протоколов сетевого уровня.
- PPPoE — это протокол канального уровня, используемый хостами с широкополосным доступом в Интернет.
- Преимущество LAN: вещательная функция, обеспечивает легкий доступ ко всей сети с одного сайта; легко расширить систему и постепенно развивался; улучшить надежность системы, доступность и выживаемость.
- Для связи между компьютером и внешней локальной сетью требуется коммуникационный адаптер (или сетевой адаптер), который также называется сетевой картой или сетевой картой.Аппаратный адрес калькулятора находится в ПЗУ адаптера..
- Режим работы без установления соединения, принятый в Ethernet, не нумерует отправленные кадры данных и не требует от другой стороны обратного подтверждения. Когда станция назначения получает кадр с ошибками, она отбрасывает его и больше ничего не делает.
- Протокол, используемый Ethernet, имеет функцию обнаружения коллизий.Многоточечный доступ с контролем несущей CSMA/CD. Особенностями соглашения являются:Слушайте перед отправкой, слушайте во время отправки и немедленно прекратите отправку, как только обнаружите коллизию в шине. Затем отправьте его снова после ожидания случайного периода времени в соответствии с алгоритмом отсрочки.Таким образом, каждая станция имеет возможность столкнуться с коллизией в течение короткого промежутка времени после отправки собственных данных. Равная конкуренция за канал Ethernet между сайтами в Ethernet
- Адаптер Ethernet имеет функцию фильтрации, он принимает только одноадресные, широковещательные и многоадресные кадры.
- Ethernet можно расширить на физическом уровне с помощью концентраторов (расширенный Ethernet по-прежнему остается сетью).
3.3. Дополнения
- Характеристики каналов точка-точка и широковещательных каналов на канальном уровне, а также характеристики протоколов (PPP и CSMA/CD), используемых этими двумя каналами
- Три основных вопроса уровня канала передачи данных:инкапсуляция в кадр,Прозрачная передача,обнаружение ошибок
- Аппаратный адрес MAC-уровня Ethernet
- Роль и применение адаптеров, повторителей, концентраторов, мостов и коммутаторов Ethernet
4. Сетевой уровень
4.1 Основная терминология
- Виртуальная цепь: Двунаправленный прозрачный канал передачи, установленный между логическими или физическими портами двух оконечных устройств. Виртуальный канал указывает, что это только логическое соединение, и пакеты передаются по этому логическому соединению с промежуточным хранением вместо установления физического соединения.
- IP (Интернет-протокол): Интернет-протокол IP является одним из двух наиболее важных протоколов в системе TCP/IP и ядром Интернет-уровня архитектуры TCP/IP. Поддержка ARP, RARP, ICMP, IGMP.
- ARP (протокол разрешения адресов): Протокол разрешения адресов. Протокол разрешения адресов ARP преобразует IP-адреса в аппаратные адреса.
- ICMP (протокол управления сообщениями в Интернете): Протокол контрольных сообщений Интернета (ICMP позволяет хосту или маршрутизатору сообщать об ошибках и предоставлять отчеты об аномальных условиях).
- маска подсети: это битовая маска, используемая для указания, какие биты IP-адреса определяют подсеть, в которой находится хост, и какие биты идентифицируют хост. Маска подсети не может существовать сама по себе, она должна использоваться вместе с IP-адресом.
- **CIDR (бесклассовая междоменная маршрутизация)**: бесклассовая междоменная маршрутизация (характеризуется отказом от традиционной концепции адресов классов A, B и C и разделением подсетей, а также использованием префикса «сети» различной длины) (сеть -prefix) для замены номера сети и номера подсети в секретном адресе).
- маршрут по умолчанию: Маршрут, выбранный маршрутизатором, когда маршрут, который может достичь адреса назначения, не может быть найден в таблице маршрутизации. Маршрутизация по умолчанию также сокращает пространство, занимаемое таблицей маршрутизации, и время, необходимое для поиска в таблице маршрутизации.
- Алгоритм маршрутизации (виртуальная цепь): Основная часть протокола маршрутизации. Интернет использует адаптивные иерархические протоколы маршрутизации.
4.2. Резюме важных знаний
- Сетевой уровень в протоколе TCP/IP обеспечивает только простые, гибкие, не требующие установления соединения службы доставки дейтаграмм вверх. Сетевой уровень не обеспечивает обязательств по качеству обслуживания и не гарантирует время доставки пакетов.Доставленные пакеты могут содержать ошибки, теряться, дублироваться и выходить из строя. За надежность связи между процессами отвечает транспортный уровень.
- В Интернете существует два типа доставки, один — прямая доставка в эту сеть без прохождения через маршрутизатор, другой — непрямая доставка с другими сетями, по крайней мере, через один маршрутизатор, но последний раз должна быть прямая доставка.
- Классифицированный IP-адрес состоит из поля номера сети (указывающего сеть) и поля номера узла (указывающего узел). Первая категория поля Network Number указывает категорию IP-адреса. IP-адрес представляет собой иерархическую структуру адресов. Агентство по управлению IP-адресами назначает номер сети только при назначении IP-адресов, а номер хоста назначается устройством, которое получает номер сети. Маршрутизаторы пересылают пакеты в соответствии с номером сети, к которой подключен хост-получатель. Маршрутизатор подключен как минимум к двум сетям, поэтому маршрутизатор должен иметь как минимум два разных IP-адреса.
- Дейтаграмма IP делится на две части: заголовок и данные. Первая часть заголовка имеет фиксированную длину, всего 20 байт, которую должны иметь все пакеты данных IP (в заголовке фиксированы адрес источника, адрес назначения, общая длина и другие важные поля). Некоторые необязательные поля переменной длины фиксируются в конце заголовка. Время жизни в заголовке IP указывает максимальное количество маршрутизаторов, через которые может пройти дейтаграмма IP в Интернете. Предотвращает бесконечное хождение IP-дейтаграмм по Интернету.
- Протокол разрешения адресов ARP преобразует IP-адреса в аппаратные адреса. Кэширование ARP может значительно уменьшить объем трафика в сети. Поскольку это позволяет хосту связываться с хостом с тем же адресом в следующий раз, он может напрямую найти требуемый аппаратный адрес из кэша без необходимости широковещательной рассылки пакета запроса ARP.
- Бесклассовая междоменная маршрутизация CIDR — хорошее решение текущей нехватки IP-адресов. Нотация CIDR добавляет косую черту «/» к IP-адресу, а затем записывает количество битов, занимаемых префиксом. Префикс (или сетевой префикс используется для обозначения сети), а часть после префикса — это суффикс, который используется для обозначения хоста. CIDR группирует последовательные IP-адреса с одинаковым префиксом в «блок адресов CIDR», а распределение IP-адресов основано на блоках адресов CIDR.
- Протокол управляющих сообщений Интернета — это протокол на уровне IP. Сообщение ICMP используется как данные дейтаграммы IP, а заголовок добавляется для формирования дейтаграммы IP и отправляется. Использование дейтаграмм ICMP не предназначено для надежной доставки. ICMP позволяет хосту или маршрутизатору сообщать об ошибках и предоставлять отчеты о нештатных ситуациях. Существует два типа сообщений ICMP: сообщение с отчетом об ошибке ICMP и сообщение с запросом ICMP.
- Чтобы решить проблему исчерпания IP-адресов, наиболее фундаментальным решением является принятие новой версии протокола IP с большим адресным пространством — IPv6.Изменения, внесенные IPv6, включают ① увеличенное адресное пространство (с использованием 128-битных адресов) ② гибкий формат заголовка ③ улучшенные параметры ④ поддержку plug and play ⑤ поддержку предварительного распределения ресурсов ⑥ Заголовок IPv6 изменен на 8-байтовое выравнивание.
- Виртуальная частная сеть VPN использует общедоступный Интернет в качестве канала связи между частной сетью организации. Выделенный адрес для использования Интернета в рамках VPN. VPN должен иметь по крайней мере один маршрутизатор с допустимым глобальным IP-адресом, чтобы обмениваться данными через Интернет с другой VPN в системе. Все данные, передаваемые через Интернет, должны быть зашифрованы.
- Характеристики MPLS: ① поддержка качества обслуживания, ориентированного на соединение ② поддержка управления трафиком, балансировка сетевой нагрузки ③ эффективная поддержка виртуальной частной сети VPN. MPLS помечает каждую IP-датаграмму «меткой» фиксированной длины на входном узле, а затем пересылает ее аппаратно на втором уровне (уровень канала) в соответствии с меткой (переключение метки в маршрутизаторе с коммутацией метки), поэтому скорость пересылки сильно ускоряется..
5. Транспортный уровень
5.1 Основная терминология
- обработать: Относится к программному объекту, работающему на компьютере.
- процессы приложения взаимодействуют друг с другом: процесс обмена данными между процессом одного хоста и процессом другого хоста (кроме того, обратите внимание, что реальной конечной точкой связи является не хост, а процесс на хосте, то есть конечная точка). конечная коммуникация — это коммуникация между прикладными процессами).
- Мультиплексирование и демультиплексирование транспортного уровня: Мультиплексирование означает, что разные процессы отправителя могут передавать данные через унифицированный протокол транспортного уровня. Разделение означает, что транспортный уровень получателя может правильно доставить данные процессу приложения назначения после удаления заголовка сообщения.
- TCP (протокол управления передачей): Протокол управления передачей.
- UDP (протокол пользовательских дейтаграмм): Протокол пользовательских датаграмм.
- ** Порт (порт) **: Целью порта является подтверждение того, что другой компьютер является этим процессом для взаимодействия, например, порт MSN и QQ, если нет порта, может быть процесс QQ и Интерактивная ошибка MSN. Порт также известен как номер порта протокола.
- протокол остановки и ожидания: означает, что отправитель прекращает отправку каждый раз при отправке пакета, ждет подтверждения другой стороны и отправляет следующий пакет после получения подтверждения.
- управление потоком: это делается для того, чтобы скорость отправки отправителя не была слишком высокой, не только чтобы получатель мог получать вовремя, но и не перегружать сеть.
- контроль перегрузки: Предотвратите ввод слишком большого количества данных в сеть, чтобы маршрутизаторы или каналы в сети не были перегружены. Управление перегрузкой исходит из того, что сеть может выдержать существующую сетевую нагрузку.
5.2. Резюме важных моментов знаний
- Транспортный уровень обеспечивает логическую связь между процессами приложений, то есть связь между транспортными уровнями на самом деле не передает данные напрямую между двумя транспортными уровнями. Транспортный уровень ограждает прикладной уровень от подробностей базовой сети (таких как топология сети, используемый протокол маршрутизации и т. д.) и делает процесс приложения таким, как если бы между ними существовал сквозной логический канал связи. два объекта транспортного уровня.
- Сетевой уровень обеспечивает логическую связь для хоста, а транспортный уровень обеспечивает сквозную логическую связь между процессами приложений.
- Двумя важными протоколами на транспортном уровне являются протокол пользовательских дейтаграмм UDP и протокол управления передачей TCP. В терминологии OSI единица данных, передаваемая двумя одноранговыми транспортными объектами во время связи, называется единицей данных транспортного протокола (TPDU). Но в системе TCP/IP, в зависимости от используемого протокола, он называется TCP или UDP, которые соответственно называются сегментом TCP или пользовательской дейтаграммой UDP.
- UDP не нужно устанавливать соединение перед передачей данных, а удаленному хосту не нужно давать никаких подтверждений после получения UDP-пакета. Хотя UDP не обеспечивает надежной доставки, существуют ситуации, в которых UDP является наиболее эффективным способом работы. TCP предоставляет услуги, ориентированные на соединение. Соединение должно быть установлено перед передачей данных, а соединение должно быть разорвано после завершения передачи данных. TCP не предоставляет услуги широковещательной или многоадресной рассылки. Так как TCP должен предоставлять надежные, ориентированные на соединение транспортные услуги, это неизбежно добавляет много накладных расходов, таких как подтверждения, управление потоком, таймеры и управление соединением. Это не только делает заголовок блока данных протокола намного больше, но и отнимает много ресурсов процессора.
- Аппаратный порт — это интерфейс для взаимодействия различных аппаратных устройств, а программный порт — это адрес для межуровневого взаимодействия между различными протокольными процессами на прикладном уровне и транспортным объектом. Форматы заголовков UDP и TCP имеют два важных поля: порт источника и порт назначения. Когда транспортный уровень получает пакет транспортного уровня от уровня IP, он может доставить данные на прикладной уровень назначения прикладного уровня в соответствии с номером порта назначения в его заголовке. (Для связи между двумя процессами требуется не только IP-адрес другой стороны, но и номер порта другой стороны (чтобы найти процесс приложения на компьютере другой стороны))
- Транспортный уровень идентифицирует порт с 16-битным номером порта. Номер порта имеет только локальное значение, он предназначен только для обозначения межуровневого интерфейса каждого процесса на прикладном уровне компьютера при взаимодействии с транспортным уровнем. Один и тот же номер порта не связан с разными компьютерами в Интернете. Номер порта протокола для краткости называется портом. Хотя конечной точкой связи является прикладной процесс, до тех пор, пока отправленное сообщение доставляется на подходящий порт хоста-получателя, остальная часть работы (окончательная доставка процессу-получателю) выполняется TCP и UDP.
- Номер порта транспортного уровня делится на номер порта, используемый серверной стороной (0
1023 присваивается известному порту, 102449151 — зарегистрированный номер порта) и номер порта, временно используемый клиентом (49152~65535) - Основными особенностями UDP являются: ① отсутствие соединения ② доставка с максимальной эффективностью ③ пакетно-ориентированный ④ отсутствие контроля перегрузки ⑤ поддержка интерактивной связи один-к-одному, один-ко-многим, многие-к-одному и многие-ко-многим: источник порт, порт назначения, длина и контрольная сумма)
- Основными особенностями TCP являются: ① ориентированность на установление соединения ② каждое TCP-соединение может быть только прямым
- TCP использует IP-адрес хоста плюс номер порта на хосте в качестве конечной точки для TCP-соединения. Такие конечные точки называются сокетами или сокетами. Сокеты представлены (IP-адрес:номер порта). Каждое соединение TCP уникально идентифицируется двумя конечными точками на обоих концах соединения.
- Протокол остановки-ожидания предназначен для обеспечения надежной передачи, его основной принцип заключается в том, чтобы прекратить отправку каждого пакета и дождаться подтверждения другой стороны. Отправить следующий пакет после получения подтверждения.
- Чтобы повысить эффективность передачи, отправитель может использовать трансмиссию трубопровода вместо неэффективного протокола Stop-and-ждать. Передача трубопровода означает, что отправитель может постоянно отправлять несколько пакетов без того чтобы остановиться и дождаться подтверждения другой стороны после отправки каждого пакета. Таким образом, данные могут постоянно передаваться на канал все время. Этот метод передачи может значительно улучшить использование канала.
- Прекратить ожидание соглашения о повторной передаче Super означает, что в течение периода времени, пока еще не получено подтверждение, выполняется повторная передача пакетов, отправленных по фронту (думаю, что только что отправленный пакет потерян). При отправке пакета, каждый из которых требует таймера тайм-аута, время передачи веса должно быть больше, чем среднее время приема-передачи пакета данных. Этот вариант осуществления часто упоминается как ARQ с автоматическим запросом на повторение ARQ. Также в протоколе остановки и ожидания был повторен, если пакет получен, он отбрасывает пакет, но также отправляет подтверждение. Протоколы непрерывного ARQ могут улучшить использование канала. Передача окна передачи сохраняется, когда пакет находится в пределах окна передачи, может быть отправлен непрерывно, без необходимости ждать подтверждения. Обычно принимающая сторона кумулятивного подтверждения прибывает, чтобы отправить подтверждение последнего пакета, этот пакет указывает, что положение всех пакетов было получено правильно.
- Первые 20 байтов TCP-сегмента являются фиксированными, за ними следуют 4n байтов параметров, которые можно добавлять по мере необходимости. Следовательно, минимальная длина заголовка TCP составляет 20 байт.
- TCP использует механизм скользящего окна. Порядковый номер в окне отправки указывает порядковый номер, который разрешено отправлять. Последняя часть заднего фронта окна отправки указывает, что передача была отправлена и подтверждение получено, в то время как передняя часть переднего края окна отправки указывает, что передача не разрешена. Есть две возможности для изменения заднего фронта окна отправки, то есть не двигаться (новое подтверждение не получено) и двигаться вперед (получено новое подтверждение). Передний край окна отправки обычно постоянно движется вперед. В общем, мы всегда хотим, чтобы передача данных была быстрее. Но если отправитель отправляет данные слишком быстро, получатель может не успеть их получить, что приведет к потере данных. Так называемый контроль потока предназначен для того, чтобы скорость отправки отправителя не была слишком высокой, а у получателя было время для приема.
- В определенный момент, если спрос на ресурс в сети превышает доступную часть этого ресурса, производительность сети ухудшится. Такая ситуация называется запором. Контроль перегрузки предназначен для предотвращения ввода слишком большого количества данных в сеть, чтобы маршрутизаторы или каналы в сети не были перегружены. Управление перегрузкой исходит из того, что сеть может выдержать существующую сетевую нагрузку. Управление перегрузкой — это глобальный процесс, в котором участвуют все хосты, все маршрутизаторы и все факторы, связанные с ухудшением производительности передачи по сети. Напротив, управление потоком часто представляет собой управление трафиком «точка-точка» и представляет собой сквозную проблему. Все, что делает управление потоком, — это регулирует скорость, с которой отправитель отправляет данные, чтобы у получателя было время их получить.
- Для управления перегрузкой отправитель TCP поддерживает переменную состояния окна перегрузки cwnd. Размер окна контроля перегрузки зависит от степени загруженности сети и изменяется динамически. Отправитель позволяет своему окну отправки быть меньшим из окна перегрузки и окна приема получателя.
- Управление перегрузкой TCP использует четыре алгоритма: готовность к запуску, предотвращение перегрузки, быстрая передача и быстрое восстановление. Сетевой уровень также может заставить маршрутизатор использовать соответствующую политику отбрасывания пакетов (например, AQM активного управления очередями), чтобы уменьшить возникновение перегрузки в сети.
- Три этапа транспортного соединения, а именно: установление соединения, передача данных и разрыв соединения.
- Процесс приложения, который активно инициирует установление TCP-соединения, называется клиентом, а процесс приложения, пассивно ожидающий установления соединения, называется сервером. Соединение TCP использует механизм рукопожатия с тремя пакетами. Сервер подтверждает запрос пользователя на подключение, а затем клиент подтверждает подтверждение сервера.
- Освобождение соединения TCP использует механизм рукопожатия с четырьмя сообщениями. Любая из сторон может отправить уведомление об освобождении соединения после завершения передачи данных и перейти в полузакрытое состояние после подтверждения другой стороной. Когда у другой стороны нет данных для отправки, отправляется уведомление об освобождении соединения, и TCP-соединение полностью закрывается после подтверждения другой стороной.
5.3. Дополнения (важно)
Необходимо сосредоточить внимание на следующих аспектах знаний:
- Значение портов и сокетов
- Разница между UDP и TCP и сценарии их применения
- Как работает надежная доставка в ненадежных сетях, протокол остановки ожидания и протокол ARQ
- Скользящее окно, управление потоком, контроль перегрузки и управление соединениями для TCP
- Трехстороннее рукопожатие TCP, четырехсторонний волновой механизм
6. Прикладной уровень
6.1 Основная терминология
- Система доменных имен (DNS): Система доменных имен (DNS) преобразует удобочитаемые доменные имена (например,www.baidu.com) на машиночитаемый IP-адрес (например, 220.181.38.148). Мы можем понимать это как телефонную книгу, специально разработанную для Интернета.
https://www.seobility.net/en/wiki/HTTP_headers
- Протокол передачи файлов (FTP): FTP — это английская аббревиатура протокола передачи файлов (File Transfer Protocol), а китайская аббревиатура — «протокол передачи текста». Для двунаправленной передачи управляющих файлов через Интернет. В то же время это еще и приложение (Application). Существуют разные FTP-приложения, основанные на разных операционных системах, и все они придерживаются одного и того же протокола для передачи файлов. При использовании FTP пользователи часто сталкиваются с двумя понятиями: «Загрузка» и «Выгрузка». «Скачивание» файла — это копирование файла с удаленного хоста на ваш компьютер; «загрузка» файла — это копирование файла с вашего собственного компьютера на удаленный хост. На языке Интернета пользователь может загружать (скачивать) файлы на (с) удаленный хост через клиентскую программу.
- Упрощенный протокол передачи файлов (TFTP): TFTP (Простой протокол передачи файлов, Trivial File Transfer Protocol) — это протокол из набора протоколов TCP/IP для простой передачи файлов между клиентом и сервером, предоставляющий несложные и недорогие услуги передачи файлов. Номер порта 69.
- Протокол удаленного терминала (TELENET): Протокол Telnet входит в набор протоколов TCP/IP и является стандартным протоколом и основным методом службы удаленного входа в Интернет. Он предоставляет пользователям возможность выполнять работу удаленного хоста на своем локальном компьютере. Используйте программу telnet на компьютере конечного пользователя для подключения к серверу. Конечные пользователи могут вводить команды в программу telnet, и эти команды выполняются на сервере так, как если бы они были введены непосредственно с консоли сервера. Сервером можно управлять локально. Чтобы начать сеанс telnet, вы должны ввести имя пользователя и пароль для входа на сервер. Telnet — это широко используемый метод удаленного управления веб-сервером.
- Всемирная паутина (WWW): WWW — это аббревиатура World Wide Web (также известная как «Web», «WWW», «W3», полное английское название — «World Wide Web»), китайское название — «World Wide Web», «Всемирная паутина» и т. д. Называется Web. Делится на веб-клиент и веб-сервер. WWW позволяет веб-клиентам (обычным браузерам) просматривать страницы на веб-сервере. представляет собой систему множества взаимосвязанных гипертекстов, доступ к которым осуществляется через Интернет. В этой системе каждая полезная вещь называется «ресурсом» и идентифицируется глобальным «Унифицированным идентификатором ресурса» (URI); эти ресурсы передаются пользователю через протокол передачи гипертекста (Hypertext Transfer Protocol), а затем пользователи можете получить доступ к ресурсу, нажав на ссылку. Консорциум Всемирной паутины (англ. World Wide Web Consortium, именуемый W3C), также известный как Совет W3C. Основана в октябре 1994 года в Лаборатории компьютерных наук Массачусетского технологического института (MIT). Основателем консорциума World Wide Web является изобретатель World Wide Web Тим Бернерс-Ли. Всемирная паутина — это не то же самое, что Интернет.Всемирная паутина — это только одна из услуг, которые может предоставить Интернет, и это служба, которая работает в Интернете.
- Примерная рабочая инженерия всемирной паутины:
- Единый указатель ресурсов (URL): Унифицированный указатель ресурсов — это краткое представление местоположения и методов доступа к ресурсам, доступным в Интернете, а также адрес стандартного ресурса в Интернете. Каждый файл в Интернете имеет уникальный URL-адрес, который содержит информацию, указывающую местонахождение файла и то, что браузер должен делать с ним.
- Протокол передачи гипертекста (HTTP): Протокол передачи гипертекста (HTTP, протокол передачи гипертекста) является наиболее широко используемым сетевым протоколом в Интернете. Все документы WWW должны соответствовать этому стандарту. Первоначально HTTP был разработан для обеспечения возможности публикации и получения HTML-страниц. В 1960 году американец Тед Нельсон придумал метод обработки текстовой информации с помощью компьютера и назвал его гипертекстом, что стало основой для разработки стандартной архитектуры протокола передачи гипертекста HTTP.
Природа формата связи протокола HTTP — это хорошее согласование между одним из этих браузеров и серверами. Принцип HTTP, как показано ниже:
- Прокси-сервер (прокси-сервер): Прокси-сервер (Proxy Server) — это сетевой объект, также известный как кэш World Wide Web. Прокси-сервер временно сохраняет некоторые последние запросы и ответы на локальном диске. При поступлении нового запроса, если прокси-сервер обнаружит, что запрос совпадает с временно сохраненным запросом, он вернет временно сохраненный ответ без необходимости повторного выхода в Интернет для доступа к ресурсу по URL-адресу. Прокси-сервер может работать на клиенте или сервере или на промежуточной системе.
- Простой протокол передачи почты (SMTP): SMTP (Simple Mail Transfer Protocol) — это простой протокол передачи почты, представляющий собой набор правил, используемых для передачи почты с адреса отправителя на адрес назначения, который управляет методом передачи писем. Протокол SMTP принадлежит к семейству протоколов TCP/IP, которое помогает каждому компьютеру найти следующее место назначения при отправке или ретрансляции письма. Через сервер, указанный протоколом SMTP, электронная почта может быть отправлена на сервер получателя, и весь процесс занимает всего несколько минут. SMTP-сервер — это сервер исходящей почты, работающий по протоколу SMTP и используемый для отправки или пересылки исходящих сообщений электронной почты.
https://www.campaignmonitor.com/resources/knowledge-base/what-is-the-code-that-makes-bcc-or-cc-operate-in-an-email/
- поисковый движок: Поисковая система относится к сбору информации из Интернета в соответствии с определенной стратегией и с использованием определенной компьютерной программы после организации и обработки информации, предоставления поисковых услуг для пользователей и отображения соответствующей информации для пользователей. Поисковые системы включают полнотекстовое индексирование, индексирование каталогов, метапоисковые системы, вертикальные поисковые системы, агрегированные поисковые системы, портальные поисковые системы и бесплатные списки ссылок.
- вертикальный поисковик: Вертикальная поисковая система — это профессиональная поисковая система для определенной отрасли. Является подразделением и расширением поисковой системы. Интегрирует определенный тип специализированной информации в библиотеку веб-страниц и извлекает необходимые данные по направленным подполям. для обработки возвращается пользователю в той или иной форме. Вертикальный поиск — это новая модель службы поисковой системы, предложенная общей поисковой системой, которая имеет большой объем информации, неточные запросы и недостаточную глубину информации и сопутствующих услуг. Его характеристики «специализированы, утончены и глубоки», и он имеет отраслевой оттенок.По сравнению с массовым информационным беспорядком общих поисковых систем, вертикальные поисковые системы более целенаправленны, конкретны и углублены.
- полный текстовый указатель: технология полнотекстового индексирования является ключевой технологией современной поисковой системы. Представьте себе, что поиск слова в файле размером 1 МБ может занять несколько секунд, а в файле размером 100 М – десятки секунд. . Поэтому при таких противоречиях появляется технология полнотекстового индексирования, которую иногда называют технологией перевернутого документа.
- индекс каталога: Индекс каталога (поисковой индекс/каталог), как следует из названия, предназначен для хранения веб-сайтов в соответствующих каталогах по категориям, чтобы пользователи могли выбирать ключевые слова для поиска информации или выполнять поиск слой за слоем в соответствии с классифицированным каталогом.
6.2. Резюме важных знаний
- Протокол передачи файлов (FTP) использует TCP для надежных транспортных услуг. FTP использует клиент-серверный подход. Процесс FTP-сервера может обслуживать несколько пользователей одновременно. Во время передачи файлов между FTP-клиентом и сервером должны быть установлены два параллельных TCP-соединения: управляющее соединение и соединение для передачи данных. Что на самом деле используется для передачи файлов, так это соединение для передачи данных.
- Протокол, используемый для взаимодействия между клиентами и серверами World Wide Web, — это протокол передачи гипертекста HTTP. HTTP использует соединения TCP для надежной передачи. Но сам HTTP не имеет соединения и состояния. Протокол HTTP/1.1 использует постоянные соединения (разделенные на неконвейерные и конвейерные методы).
- Электронная почта отправляет почту на почтовый сервер, используемый получателем, и помещает ее в почтовый ящик получателя.Получатель может получить доступ к почтовому серверу, который он использует, в любое время, чтобы прочитать его, что эквивалентно электронной почте.
- Система электронной почты состоит из трех важных компонентов: агента пользователя, почтового сервера и почтовых протоколов (включая протоколы отправки почты, такие как SMTP, и протоколы чтения почты, такие как POP3 и IMAP). И пользовательские агенты, и почтовые серверы используют эти протоколы.
6.3. Дополнения (важно)
Необходимо сосредоточить внимание на следующих аспектах знаний:
-
Общие протоколы на прикладном уровне (основное внимание на протоколе HTTP)
-
Система доменных имен — разрешает IP-адреса из доменных имен.
-
Общий процесс посещения веб-сайта
-
Системные вызовы и концепции интерфейса прикладного программирования
Мои рекомендации по проектам с открытым исходным кодом
- JavaGuide: «Java Learning + Interview Guide» охватывает основные знания, которые необходимо освоить большинству Java-программистов. Подготовьтесь к собеседованиям по Java с помощью JavaGuide!
- guide-rpc-framework: Пользовательская структура RPC, реализованная Netty+Kyro+Zookeeper (Специальная структура RPC, реализованная Netty+Kyro+Zookeeper — с подробным процессом реализации и соответствующими руководствами).
- jsoncat: облегченная структура HTTP, которая имитирует Spring Boot, но отличается от Spring Boot.
- programmer-advancement: Несколько хороших привычек, которые должны быть у программиста + обязательные к прохождению интервью!
- springboot-guide: Не только Spring Boot, но и важные знания Spring
- awesome-java: Коллекция потрясающих Java-проектов на Github.
Адреса загрузки исходного PDF для некоторых компьютеров:disk.baidu.com/yes/1, но собачий чат V-Q…Пароль: llst