Содержание:
Протоколы TCP против SCTP
И TCP (протокол управления передачей), и SCTP (протокол управления передачей данных) находятся на транспортном уровне и обеспечивают транспортные функции в основном в интернет-приложениях. TCP обеспечивает надежную передачу данных со строгим порядком доставки пакетов, но для некоторых приложений требуется надежная передача, но не 100% последовательность доставки пакетов. В этих случаях TCP может вызвать ненужную задержку во втором варианте, когда важна надежность, но не 100% последовательная доставка.
При транспортировке пакетов существует два основных ограничения: одно — надежность, другое — время ожидания. Надежность гарантируется доставкой пакета, а задержка — своевременной доставкой пакета. Оба не могут быть достигнуты пика одновременно, но могут быть оптимизированы.
SCTP разработан в основном для передачи сигналов PSTN по IP-сетям. (СИГТРАН). Но в наши дни другие приложения также считают, что SCTP хорошо соответствует их требованиям.
TCP:
Определено в RFC 793
TCP — это сквозной надежный протокол, ориентированный на соединение, обеспечивающий гарантированную передачу данных. TCP гарантирует надежность от самого установления соединения. Некоторые из основных функций TCP — это трехстороннее подтверждение (SYN, SYN-ACK, ACK), обнаружение ошибок, медленный запуск, управление потоком, управление перегрузкой.
TCP — надежный транспортный механизм, поэтому он будет использоваться там, где доставка пакетов необходима даже в условиях перегрузки. Типичный пример для приложений TCP и номеров портов: данные FTP (20), управление FTP (21), SSH (222), Telnet (23), почта (25), DNS (53), HTTP (80), POP3 (110). , SNMP (161) и HTTPS (443). Это хорошо известные приложения TCP.
SCTP:
Определено в RFC4960
SCTP (Stream Control Transmission Protocol) — это транспортный протокол IP, например TCP и UDP. SCTP — это протокол одноадресной рассылки, который поддерживает сквозную доставку данных ровно через две конечные точки. Но конечные точки могут иметь более одного IP-адреса.
SCTP — это полнодуплексный протокол передачи с такими функциями, как повторная передача, управление потоком и поддержание последовательности.
Помимо TCP, SCTP имеет больше функций, некоторые из которых перечислены ниже.
Функция многопотоковой передачи SCTP
SCTP позволяет разделять данные на несколько потоков, и каждый поток имеет свою собственную последовательность доставки. Рассмотрим случай телефонной сигнализации: необходимо поддерживать последовательность пакетов, которая влияет на один и тот же сеанс или ресурс. (Пример: тот же вызов или та же внешняя линия). Таким образом, отслеживания последовательности на основе потоков достаточно, и это приведет к более высокой производительности, чем одна полная потоковая передача.
SCTP множественная адресация
Эта функция позволяет одной конечной точке SCTP иметь несколько IP-адресов. Основная причина этого — поддерживать доступность конечной точки через несколько избыточных маршрутов маршрутизации.
Выбор пути
Счетчик поддерживается для отслеживания неуспешных подтверждений передачи конкретному адресату. Определен порог, и если он превышает адрес назначения, он объявляется неактивным, и SCTP начинает отправлять на альтернативный адрес.
Резюме:
(1) TCP и SCTP поддерживают надежные транспортные службы. (2) TCP поддерживает единый поток доставки данных, тогда как SCTP поддерживает множественные потоки доставки данных. (3) TCP поддерживает одну конечную точку TCP, чтобы иметь один IP-адрес, тогда как, поскольку SCTP поддерживает, одна конечная точка SCTP может иметь несколько IP-адресов в основном для целей избыточности. (4) Скорее TCP, SCTP более безопасен. (5) Процессы инициации и завершения SCTP отличаются от TCP.
Модель OSI
Более расширенный вариант модели osi, предполагает, что в сетевом оборудовании есть только 3 уровня, физический, канальный и сетевой. Однако сейчас это не всегда соответствует действительности, появились сетевые устройства, которые также работают и на прикладном уровне.
Например, это контент фильтры, это специальные устройства, которые анализируют весь трафик, который через него проходит и могут ограничивать доступ к некоторым ресурсам. Например, можно запретить доступ с рабочего места к социальным сетям. Для этого устройству необходимо анализировать http запросы и ответы и смотреть по каким сайтам ходит пользователь.
Транспортный уровень
Транспортный уровень (transport layer) – этот уровень обеспечивает надёжность передачи данных от отправителя к получателю. На самом деле всё очень просто, например вы общаетесь с помощью веб-камеры со своим другом или преподавателем. Нужна ли здесь надежная доставка каждого бита переданного изображения? Конечно нет, если потеряется несколько битов из потокового видео Вы даже этого не заметите, даже картинка не изменится (м.б. изменится цвет одного пикселя из 900000 пикселей, который промелькнет со скоростью 24 кадра в секунду).
А теперь приведем такой пример: Вам друг пересылает (например, через почту) в архиве важную информацию или программу. Вы скачиваете себе на компьютер этот архив. Вот здесь надёжность нужна 100%, т.к. если пару бит при закачке архива потеряются – Вы не сможете затем его разархивировать, т.е. извлечь необходимые данные. Или представьте себе отправку пароля на сервер, и в пути один бит потерялся – пароль уже потеряет свой вид и значение изменится.
Таким образом, когда мы смотрим видеоролики в интернете, иногда мы видим некоторые артефакты, задержки, шумы и т.п. А когда мы читаем текст с веб-страницы – потеря (или скжение) букв не допустима, и когда скачиваем программы – тоже все проходит без ошибок.
На этом уровне я выделю два протокола: UDP и TCP. UDP протокол (User Datagram Protocol) передает данные без установления соединения, не подтверждает доставку данных и не делает повторы. TCP протокол (Transmission Control Protocol), который перед передачей устанавливает соединение, подтверждает доставку данных, при необходимости делает повтор, гарантирует целостность и правильную последовательность загружаемых данных.
Следовательно, для музыки, видео, видеоконференций и звонков используем UDP (передаем данные без проверки и без задержек), а для текста, программ, паролей, архивов и т.п. – TCP (передача данных с подтверждением о получении, затрачивается больше времени).
Layer 6: Presentation Layer
The presentation layer checks the data to ensure it is compatible with the communications resources. It translates the data into the form that the application level and lower levels accept. Any needed data formatting or code conversion is also handled by the sixth layer, such as converting an Extended Binary Coded Decimal Interchange Code (EBCDIC) coded text file to an American Standard Code for Information Interchange (ASCII) coded text file. It functions for data compression and encryption as well. For example, video calls will be compressed during the transmission so that it can be transmitted faster, and the data will be recovered at the receiving side. For the data that has high security requirements, such as a text message containing your password, it will be encrypted at this layer.
Internet Layer
The Internet layer is responsible for host addressing, packaging, and routing functions. The core protocols of the Internet protocol layer are IP, Address Resolution Protocol (ARP), Internet Control Message Protocol (ICMP) and Internet Group Management Protocol (IGMP). The IP is a routable protocol responsible for IP addressing, routing, and the fragmentation and reassembly of packets. The ARP is responsible for the discovering the network access layer address such as a hardware address associated with a given Internet layer access. The ICMP is responsible for providing diagnostic functions and reporting errors due to the unsuccessful delivery of IP packets. The IGMP is responsible for the management of IP multicast groups. In this layer, the IP adds header to the packets, which is known as IP address. Now there’s both IPv4 (32-bit) address and IP Ipv6 (128-bit) address.
Обзор протокола SMTP
Простой протокол передачи почты (SMTP) основан на сквозной доставке сообщений. Клиент SMTP, чтобы отправить почту, связывается с SMTP-сервером конечного хоста через общеизвестный порт 25. Затем клиент ожидает, пока сервер отправит сообщение . После получения сообщения 220 клиент отправляет команду . Затем сервер отвечает сообщением «».
После этого передача почты начнется с команды , которая указывает идентификатор отправителя, а также поля , содержащего адрес, на который следует сообщать об ошибках.
После успешной команды отправитель выдает серию команд , которые идентифицируют получателей почтового сообщения. Получатель будет подтверждать каждую команду , отправляя или отправляя сообщение об ошибке (такого пользователя здесь нет).
После подтверждения всех команд отправитель выдает команду , чтобы сообщить получателю, что отправитель готов передать полное почтовое сообщение. Получатель отвечает сообщением с конечной последовательностью, которую отправитель должен использовать для завершения данных сообщения. Последовательность завершения состоит из 5 символов: возврат каретки, перевод строки, точка, возврат каретки и перевод строки ().
Теперь клиент отправляет данные построчно, заканчивая строки 5-символьной последовательностью , после чего получатель отправляет подтверждение или соответствующее сообщение об ошибке, если что-то пошло не так.
После завершения отправки клиент может выполнить любое из следующих действий.
Завершение сеанса: если у текущего клиента SMTP больше нет сообщений для отправки, соединение может быть закрыто командой , на которую будет дан ответ .
Изменение ролей: если у текущего клиента SMTP больше нет сообщений для отправки, но он готов принимать любые сообщения от текущего сервера SMTP, он может отправить команду . Теперь SMTP-клиент и SMTP-сервер поменяются своими ролям отправителя/получателя, и отправитель (ранее получатель) теперь может отправлять сообщения, выдав команду .
Отправка других писем: если у клиент SMTP (отправитель) есть еще одно сообщение для отправки, он может выдать новую команду .
Advantages of the OSI Model
Here are the major benefits/pros of using the OSI model:
- It helps you to standardize router, switch, motherboard, and other hardware
- Reduces complexity and standardizes interfaces
- Facilitates modular engineering
- Helps you to ensure interoperable technology
- Helps you to accelerate the evolution
- Protocols can be replaced by new protocols when technology changes.
- Provide support for connection-oriented services as well as connectionless service.
- It is a standard model in computer networking.
- Supports connectionless and connection-oriented services.
- It offers flexibility to adapt to various types of protocols.
TCP протокол
TCP — это транспортный протокол, является частью стека протоколов TCP IP, он выполняет функции управления передачей данных и следит за их сохранностью, считается надежным. Расшифровывается как Transmission Control Protocol (протокол управления передачей).
Это стандарт, который определяет как нужно устанавливать связь и поддерживать ее, чтобы две программы могли обмениваться данными между собой.
Является именно надежным протоколом так как:
1. Использует логическое соединение, благодаря чему обеспечивается надежная доставка данных.2. Пронумеровывает передаваемые пакеты данных и проверяет их доставку, принимающая сторона высылает подтверждение о получении, в случае потери каких-либо пакетов создается повторная передача.3. Делит передаваемые данные на части — пакеты данных, затем передает их нижнему уровню, и собирает их, когда они приходят к получателю.4. Проверяет контрольную сумму передаваемых пакетов, если она отличается — создается новая отправка.5. Проверяет пакеты на дубликаты, в случае обнаружения таковых — уничтожает.6. Контролирует скорость передачи.
Заголовок TCP протокола
Весит 20 байт, если нет дополнительных опций, вот как он выглядит:
У каждого TCP сегмента указывается порт источника и назначения, с помощью которых происходит идентификация отправляющего и принимающего приложения. Эти порты вместе с IP адресами уникально идентифицируют каждое соединение. Комбинация IP и порта — это сокет (socket).
Номер последовательности — нумерация каждого отправляемого байта в потоке передаваемых данных. А номер подтверждения — это следующий номер байта после полученного, который ждет получатель. Т.е. передача идет последовательно, например, получатель получил 100-ый байт, следующим ждет 101.
Остальные значения можно понять из самой картинки. Разве, что размер окна — он скользящий, т.е. зависит от качества сети. Если много данных теряется он может уменьшаться и наоборот. Он регулирует количество передаваемых байтов.
А флаги: URG, ACK, PSH и т.д. — описывают дополнительные значения сегмента, так, например, флаг FIN применяется для завершения соединения.
Определение МОДЕЛИ TCP / IP
TCP (протокол управления передачей) / IP (интернет-протокол) был разработан Министерство обороны (DoD) проектное агентство. В отличие от модели OSI, она состоит из четырех уровней, каждый из которых имеет свои собственные протоколы. Интернет-протоколы — это набор правил, определенных для связи по сети.
TCP / IP считается стандартной моделью протокола для сетей. TCP обрабатывает передачу данных, а IP обрабатывает адреса. Набор протоколов TCP / IP имеет набор протоколов, который включает TCP, UDP, ARP, DNS, HTTP, ICMP и т. Д. Это надежная и гибкая модель. Модель TCP / IP в основном используется для соединения компьютеров через Интернет.
Уровень 6: уровень представления
Уровень представления проверяет данные, чтобы обеспечить его совместимость с коммуникационными ресурсами. Он переводит данные в форму, что прикладной уровень и более низкие уровни принимают. Уровень представления обеспечивает преобразование протоколов и кодирование/декодирование данных. Запросы приложений, полученные с прикладного уровня, на уровне представления преобразуются в формат для передачи по сети, а полученные из сети данные преобразуются в формат приложений. На этом уровне может осуществляться сжатие/распаковка или шифрование/дешифрование, а также перенаправление запросов другому сетевому ресурсу, если они не могут быть обработаны локально.
Transport Layer
Transport layer builds on the network layer in order to provide data transport from a process on a source system machine to a process on a destination system. It is hosted using single or multiple networks, and also maintains the quality of service functions.
It determines how much data should be sent where and at what rate. This layer builds on the message which are received from the application layer. It helps ensure that data units are delivered error-free and in sequence.
Transport layer helps you to control the reliability of a link through flow control, error control, and segmentation or de-segmentation.
The transport layer also offers an acknowledgment of the successful data transmission and sends the next data in case no errors occurred. TCP is the best-known example of the transport layer.
Important functions of Transport Layers:
- It divides the message received from the session layer into segments and numbers them to make a sequence.
- Transport layer makes sure that the message is delivered to the correct process on the destination machine.
- It also makes sure that the entire message arrives without any error else it should be retransmitted.
Application Layer
Application layer interacts with an application program, which is the highest level of OSI model. The application layer is the OSI layer, which is closest to the end-user. It means the OSI application layer allows users to interact with other software application.
Application layer interacts with software applications to implement a communicating component. The interpretation of data by the application program is always outside the scope of the OSI model.
The function of the Application Layers are:
- Application-layer helps you to identify communication partners, determining resource availability, and synchronizing communication.
- It allows users to log on to a remote host
- This layer provides various e-mail services
- This application offers distributed database sources and access for global information about various objects and services.
Уровни OSI
Для наглядности процесс работы сети принято разделять на 7 уровней, на каждом из которых работает своя группа протоколов.
Для выполнения разных задач имеется несколько протоколов, которые занимаются обслуживанием систем, например, стек TCP/IP. Давайте здесь внимательно посмотрим на то, каким образом информация с одного компьютера отправляется по локальной сети на другой комп.
Задачи компьютера ОТПРАВИТЕЛЯ:
- Взять данные из приложения
- Разбить их на мелкие пакеты, если большой объем
- Подготовить к передаче, то есть указать маршрут следования, зашифровать и перекодировать в сетевой формат.
Задачи компьютера ПОЛУЧАТЕЛЯ:
- Принять пакеты данных
- Удалить из него служебную информацию
- Скопировать данные в буфер
- После полного приема всех пакетов сформаровать из них исходный блок данных
- Отдать его приложению
Для того, чтобы верно произвести все эти операции и нужен единый свод правил, то есть эталонная модель OSI.
Вернемся у к уровням OSI. Их принято отсчитывать в обратном порядке и в верхней части таблицы располагаются сетевые приложения, а в нижней — физическая среда передачи информации. По мере того, как данные от компьютера спускаются вниз непосредственно к сетевому кабелю, протоколы, работающие на разных уровнях, постепенно их преобразовывают, подготавливая к физической передаче.
Разберем их подробнее.
6. Уровень представления (Presentation Layer)
Переводит эти данные на единый универсальный язык. Дело в том, что каждый компьютерный процессор имеет собственный формат обработки данных, но в сеть они должны попасть в 1 универсальном формате — именно этим и занимается уровень представления.
5. Сеансовый уровень (Session Layer)
У него много задач.
- Установить сеанс связи с получателем. ПО предупреждает компьютер-получатель о том, что сейчас ему будут отправлены данные.
- Здесь же происходит распознавание имен и защита:
- идентификация — распознавание имен
- аутентификация — проверка по паролю
- регистрация — присвоение полномочий
- Реализация того, какая из сторон осуществляет передачу информации и как долго это будет происходить.
- Расстановка контрольных точек в общем потоке данных для того, чтобы в случае потери какой-то части легко было установить, какая именно часть потеряна и следует отправить повторно.
- Сегментация — разбивка большого блока на маленькие пакеты.
4. Транспортный уровень (Transport Layer)
Обеспечивает приложениям необходимую степень защиты при доставке сообщений. Имеется две группы протоколов:
- Протоколы, которые ориентированы на соединение — они отслеживают доставку данных и при необходимости запрашивают повторную отправку при неудаче. Это TCP — протокол контроля передачи информации.
- Не ориентированные на соединение (UDP) — они просто отправляют блоки и дальше не следят за их доставкой.
3. Сетевой уровень (Network Layer)
Обеспечивает сквозную передачу пакета, рассчитывая его маршрут. На этом уровне в пакетах ко всей предыдущей динформации, сформированной другими уровнями, добавляются IP адреса отправителя и получателя. Именно с этого момент пакет данных называется собственно ПАКЕТОМ, у которого есть IP адреса (IP протокол — это протокол межсетевого взаимодействия).
2. Канальный уровень (Data Link Layer)
Здесь происходит передача пакета в пределах одного кабеля, то есть одной локальной сети. Он работает только до пограничного маршрутизатора одной локальной сети. К полученному пакету канальный уровень добавляет свой заголовок — MAC адреса отправителя и получателя и в таком виде блок данных уже называется КАДРОМ.
При передачи за пределы одной локальной сети пакету присваивается MAC не хоста (компьютера), а маршрутизатора другой сети. Отсюда как раз появляется вопрос серых и белых IP, о которых шла речб в статье, на которую была выше дана ссылка. Серый — это адрес внутри одной локальной сети, который не используетс яза ее пределами. Белый — уникальный адрес во всем глобальном интернете.
При поступлении пакета на пограничный роутер IP пакета подменяется на IP этого роутера и вся локальная сеть выходит в глобальную, то есть интернет, под одним единственным IP адресом. Если адрес белый, то часть данных с IP адресом не изменяется.
1. Физический уровень (Transport layer)
Отвечает за преобразование двоичной информации в физический сигнал, который отправляется в физический канал передачи данных. Если это кабель, то сигнал электрический, если оптоволоконная сеть, то в оптический сигнал. Осуществляется это преобразование при помощи сетевого адаптера.
Уровни OSI
Для наглядности процесс работы сети принято разделять на 7 уровней, на каждом из которых работает своя группа протоколов.
Для выполнения разных задач имеется несколько протоколов, которые занимаются обслуживанием систем, например, стек TCP/IP. Давайте здесь внимательно посмотрим на то, каким образом информация с одного компьютера отправляется по локальной сети на другой комп.
Задачи компьютера ОТПРАВИТЕЛЯ:
- Взять данные из приложения
- Разбить их на мелкие пакеты, если большой объем
- Подготовить к передаче, то есть указать маршрут следования, зашифровать и перекодировать в сетевой формат.
Задачи компьютера ПОЛУЧАТЕЛЯ:
- Принять пакеты данных
- Удалить из него служебную информацию
- Скопировать данные в буфер
- После полного приема всех пакетов сформаровать из них исходный блок данных
- Отдать его приложению
Для того, чтобы верно произвести все эти операции и нужен единый свод правил, то есть эталонная модель OSI.
Вернемся у к уровням OSI. Их принято отсчитывать в обратном порядке и в верхней части таблицы располагаются сетевые приложения, а в нижней — физическая среда передачи информации. По мере того, как данные от компьютера спускаются вниз непосредственно к сетевому кабелю, протоколы, работающие на разных уровнях, постепенно их преобразовывают, подготавливая к физической передаче.
Разберем их подробнее.
6. Уровень представления (Presentation Layer)
Переводит эти данные на единый универсальный язык. Дело в том, что каждый компьютерный процессор имеет собственный формат обработки данных, но в сеть они должны попасть в 1 универсальном формате — именно этим и занимается уровень представления.
Ваше мнение — WiFi вреден?
Да
22.96%
Нет
77.04%
Проголосовало: 30958
5. Сеансовый уровень (Session Layer)
У него много задач.
- Установить сеанс связи с получателем. ПО предупреждает компьютер-получатель о том, что сейчас ему будут отправлены данные.
- Здесь же происходит распознавание имен и защита:
- идентификация — распознавание имен
- аутентификация — проверка по паролю
- регистрация — присвоение полномочий
- Реализация того, какая из сторон осуществляет передачу информации и как долго это будет происходить.
- Расстановка контрольных точек в общем потоке данных для того, чтобы в случае потери какой-то части легко было установить, какая именно часть потеряна и следует отправить повторно.
- Сегментация — разбивка большого блока на маленькие пакеты.
4. Транспортный уровень (Transport Layer)
Обеспечивает приложениям необходимую степень защиты при доставке сообщений. Имеется две группы протоколов:
- Протоколы, которые ориентированы на соединение — они отслеживают доставку данных и при необходимости запрашивают повторную отправку при неудаче. Это TCP — протокол контроля передачи информации.
- Не ориентированные на соединение (UDP) — они просто отправляют блоки и дальше не следят за их доставкой.
3. Сетевой уровень (Network Layer)
Обеспечивает сквозную передачу пакета, рассчитывая его маршрут. На этом уровне в пакетах ко всей предыдущей динформации, сформированной другими уровнями, добавляются IP адреса отправителя и получателя. Именно с этого момент пакет данных называется собственно ПАКЕТОМ, у которого есть IP адреса (IP протокол — это протокол межсетевого взаимодействия).
2. Канальный уровень (Data Link Layer)
Здесь происходит передача пакета в пределах одного кабеля, то есть одной локальной сети. Он работает только до пограничного маршрутизатора одной локальной сети. К полученному пакету канальный уровень добавляет свой заголовок — MAC адреса отправителя и получателя и в таком виде блок данных уже называется КАДРОМ.
При передачи за пределы одной локальной сети пакету присваивается MAC не хоста (компьютера), а маршрутизатора другой сети. Отсюда как раз появляется вопрос серых и белых IP, о которых шла речб в статье, на которую была выше дана ссылка. Серый — это адрес внутри одной локальной сети, который не используетс яза ее пределами. Белый — уникальный адрес во всем глобальном интернете.
При поступлении пакета на пограничный роутер IP пакета подменяется на IP этого роутера и вся локальная сеть выходит в глобальную, то есть интернет, под одним единственным IP адресом. Если адрес белый, то часть данных с IP адресом не изменяется.
1. Физический уровень (Transport layer)
Отвечает за преобразование двоичной информации в физический сигнал, который отправляется в физический канал передачи данных. Если это кабель, то сигнал электрический, если оптоволоконная сеть, то в оптический сигнал. Осуществляется это преобразование при помощи сетевого адаптера.
Заключение
Модель TCP/IP и модель OSI являются концептуальными моделями, используемыми для описания всех сетевых коммуникаций, в то время как TCP/IP сама по себе также является важным протоколом, используемым во всех операциях Интернета. Как правило, когда мы говорим об уровне 2, уровне 3 или уровне 7, в котором работает сетевое устройство, мы имеем в виду модель OSI. Модели TCP/IP используется как для моделирования текущей архитектуры Интернета и обеспечивают набор правил, которым следуют все формы передачи по сети.
Связанная сатья: Управляемый или неуправляемый коммутатор: какой из них может удовлетворить ваши реальные потребности?
Источник : https://community.fs.com/ru/blog/tcpip-vs-osi-whats-the-difference-between-the-two-models.html