Главная страница
Навигация по странице:

  • 25 Транспортные протоколы. Протокол TCP

  • 2.11.1. Основные функции протокола

  • Source Port , Destination Port

  • Acknowledgment Number

  • Offset

  • Control Bits

  • Флаг ACK

  • Флаг RST

  • Pointer

  • 2.11.2. TCP порты

  • 26 Транспортные протоколы. Протокол UDP

  • Обеспечение доверия и безопасности в инфокоммуникациорнных сетях. 1. Технология dns


    Скачать 1.52 Mb.
    Название1. Технология dns
    АнкорОбеспечение доверия и безопасности в инфокоммуникациорнных сетях
    Дата28.04.2023
    Размер1.52 Mb.
    Формат файлаdocx
    Имя файлаOtvety_na_bilety.docx
    ТипДокументы
    #1095942
    страница4 из 5
    1   2   3   4   5

    Протокол преобразования адресов ARP


    В сети Интернет сетевое взаимодействие осуществляется на основе IP-адресов. В сети данные передаются с помощью технологий канального уровня, например, Ethernet. Сетевые устройства канального уровня – коммутаторы, используют физические MAC-адреса. Для получения МАС-адреса сетевого устройства в локальной сети по известному IP-адресу используется протокол преобразования адресов (ARP-Address Resolution Protocol).

    Протокол ARP работает в режиме запрос-ответ. На каждом сетевом устройстве, например, сетевом адаптере хоста или коммутаторе поддерживается собственная ARP-таблица, в которой в ходе функционирования сети накапливается информация о соответствии между IP-адресами и МАС-адресами интерфейсов других устройств данной сети. Первоначально, при включении компьютера, маршрутизатора или коммутатора в сеть их ARP-таблицы пусты.

    Различные сетевые операционные системы по-разному используют протокол ARP для изменения информации в своих ARP таблицах.

    Атаки, связанные с уязвимостями протокола ARP являются внутрисегментными и поэтому представляют угрозу для пользователя только в случае нахождения атакующего внутри сегмента сети. Защиты от атак на протокол ARP в общем случае не существует, т.к. используемые уязвимости являются особенностями работы технологии Ethernet (широковещательность). Однако можно выполнить следующее:

    • нарушителя нужно искать внутри сетевого сегмента атакуемого объекта;

    • полезно вести таблицу соответствия МАС-адресов и IP-адресов, которую следует периодически обновлять;

    • использовать статические записи в таблице ARP хотя бы для наиболее важных узлов сети.


    25 Транспортные протоколы. Протокол TCP

    Протокол управления передачей TCP


    Протоколы транспортного уровня решают проблему правильной последовательности и гарантированной доставки сообщений. На рисунке 2.11.1 представлены некоторые протоколы транспортного уровня. Основными из них являются TCP (Transmission Control Protocol) и UDP (User Datagram Protocol).

    Взаимодействие прикладных программ, использующих транспортные услуги протокола TCP или UDP, строится, согласно модели, "клиент-сервер", которая подразумевает, что одна программа (сервер) всегда пассивно ожидает обращения к ней другой программы (клиента). Связь программы-клиента и сервера идентифицируется пятеркой:

    1. Используемый транспортный протокол TCP или UDP;

    2. IP-адрес сервера;

    3. Номер порта сервера;

    4. IP-адрес клиента;

    5. Номер порта клиента.

    e

    Рисунок 2.11.1 – Различные протоколы транспортного уровня

    2.11.1. Основные функции протокола TCP

    Основная задача протокола TCP – обеспечение надежной передачи данных в сети. Его транспортный адрес в заголовке IP-сегмента равен 6. Год создания – 1981 (RFC 793).

    Основные функции протокола TCP:

    1. Реализует взаимодействие в режиме с установлением логического соединения;

    2. Обеспечивает двунаправленную дуплексную связь;

    3. Организует потоковый тип передачи данных;

    4. Дает возможность пересылки части данных, как «экстренных»;

    5. Для идентификации взаимодействующих сторон на транспортном уровне использует 16-битовые "номера портов";

    6. Реализует принцип "скользящего окна" (sliding window) для повышения скорости передачи;

    7. Поддерживает механизмы, обеспечивающие надежную передачу данных.

    На рисунке 2.11.2 представлен формат заголовка TCP-пакета.

    4 бита

    6 бит

    6 бит

    16 бит




    Source Port

    Destination Port




    Sequence Number

    Acknowledgment Number

    Data Offset

    Reserved

    Control Bits

    Window




    Checksum

    Urgent Pointer




    Options

    Padding




    Data

    Рисунок 2.11.2 – Формат заголовка TCP-пакета

    Рассмотрим поля заголовка TCP-пакета.

    Source Port, Destination Port (Порт источника и порт приемника) – 16-битовые поля, содержащие номера портов, соответственно, источника и приёмника TCP-пакета. В таблице 2.11.1 дан список номеров портов для некоторых приложений.

    Sequence Number (Номер в последовательности) – 32-битовое поле, содержимое которого определяет положение данных TCP-пакета внутри исходящего потока данных, существующего в рамках текущего логического соединения.

    В момент установления логического соединения каждый из двух абонентов генерирует начальный номер для первого пакета в последовательности, основное требование к которому - не повторяться в промежутке времени, в течение которого TCP-пакет может находиться в сети. Абоненты обмениваются этими начальными номерами и подтверждают их получение. Во время отправления TCP-пакетов с данными, поле "номер в последовательности" содержит сумму начального номера и количества байт ранее переданных данных.

    Acknowledgment Number (Номер подтверждения) – 32-битовое поле, содержимое которого определяет количество принятых данных из входящего потока к TCP-модулю, формирующему TCP-пакет.

    Data Offset (Смещение данных) – 4-битовое поле, содержащее длину заголовка TCP-пакета в 32-битовых словах и используемое для определения начала расположения данных в TCP-пакете.

    Reserved (Зарезервировано) – 6 бит, выделенных для дальнейшего использования. В настоящее время последние два бита уже используются, как управляющие биты (флаги).

    Control Bits (Управляющие биты/флаги) – поле из 6 битовых флагов.

    Флаг URG – установленное в 1 значение, которого означает, что TCP-пакет содержит важные данные. Обработке таких данных отдаётся наивысший приоритет.

    Флаг ACK – установленное в 1 значение означает, что TCP-пакет содержит в поле «номер подтверждения» верные данные.

    Флаг PSH – установленное в 1 значение означает, что данные, содержащиеся в TCP-пакете, должны быть немедленно переданы прикладной программе, для которой они адресованы. Подтверждение для TCP-пакета, содержащего единичное значение во флаге PSH, означает, что и все предыдущие TCP-пакеты достигли адресата.

    Флаг RST – устанавливается в 1 в TCP-пакете, отправляемом в ответ на получение неверного TCP-пакета. Также может означать запрос на переустановление логического соединения.

    Флаг SYN – установленное в 1 значение означает, что TCP-пакет представляет собой запрос на установление логического соединения. Получение пакета с установленным флагом SYN должно быть подтверждено принимающей стороной.

    Флаг FIN – установленное в 1 значение означает, что TCP-пакет представляет собой запрос на закрытие логического соединения и является признаком конца потока данных, передаваемых в этом направлении. Получение пакета с установленным флагом FIN должно быть подтверждено принимающей стороной.

    Window (Размер окна) – 16-битовое поле, содержащее количество байт информации, которое может принять в свои внутренние буфера TCP-модуль, отправляющий партнеру данный TCP-пакет. Данное поле используется принимающим поток данных TCP-модулем для управления интенсивностью этого потока. Установив значение поля в 0, можно полностью остановить передачу данных, которая будет возобновлена, когда размер окна увеличится.

    Checksum (Контрольная сумма) – 16-битовое поле, содержащее контрольную сумму, подсчитанную для ТСР-заголовка, данных пакета и псевдозаголовка. Псевдозаголовок включает в себя ряд полей IP-заголовка и имеет показанную на рисунке 2.11.3 структуру.

    Urgent Pointer (Указатель) – 16-битовое поле, содержащее указатель (в виде смещения) на первый байт в теле TCP-пакета, начинающий последовательность важных (urgent) данных.

    Options (Опции) – последовательность полей произвольной длины, описывающих необязательные данные заголовка;

    Padding (Выравнивание) – последовательность нулей для дополнения строки до длины, равной 32 битам;

    Data (данные) – передаваемые данные.

    Source Address

    (Адрес источника)

    Destination Address

    (Адрес назначения)

    Zero

    (нули)

    Protocol

    (Идентификатор протокола)

    TCP Length

    (Длина TCP пакета)

    Рисунок 2.11.3 – Схема псевдозаголовка TCP-пакета

    Протокол TCP устанавливает обязательное получение подтверждения от принимающей стороны о правильности полученных данных.

    В протоколе TCP используется принцип "скользящего окна" (sliding window), который заключается в том, что каждая сторона может отправлять партнеру максимум столько байт, сколько партнер указал в поле "размер окна" заголовка TCP-пакета, подтверждающего получение предыдущих данных.

    Принцип "скользящего окна" обеспечивает "опережающую" посылку данных с "отложенным" их подтверждением. Следует отметить недостаток этого механизма: если в течение некоторого времени не будет получено "отсроченное" подтверждение ранее отправленного пакета, то отправляющий TCP-модуль будет вынужден повторить посылку всех TCP-пакетов, начиная с неподтвержденного. Размер окна, как правило, определяется объемом свободного места в буферах, принимающего TCP-модуля.

    2.11.2. TCP порты

    Для доставки TCP-пакета конкретному приложению, используется уникальный идентификатор - номер порта, 16-битное число от 1 до 65535, указывающее, какой программе предназначается пакет.

    TCP порты используют определенный порт программы для доставки данных, передаваемых с помощью протокола управления передачей (TCP). TCP порты являются более сложными и работают иначе, чем порты UDP. В то время как порт UDP работает как одиночная очередь сообщений и как точка входа для UDP-соединения, точкой входа для всех соединений TCP является уникальное соединение. Каждое соединение TCP однозначно идентифицируется двумя точками входа.

    TCP программы используют зарезервированные номера портов, как показано в таблице 2.11.1.

    Таблица 2.11.1 – Номера некоторых портов TCP

    TCP номер порта

    Описание

    21

    FTP

    22

    SSH

    23

    TELNET

    53

    DNS

    80

    HTTP

    443

    HTTPS

    Каждый отдельный порт сервера TCP может предложить общий доступ к нескольким соединениям, потому что все TCP соединения идентифицируются двумя значениями: IP-адресом и TCP портом. Все номера портов TCP, которые меньше, чем 1024 – зарезервированы и зарегистрированы в Internet Assigned Numbers Authority (IANA). Номера портов UDP и TCP не пересекаются.

    26 Транспортные протоколы. Протокол UDP

    1   2   3   4   5


    написать администратору сайта