38. Протоколы, интерфейсы и сервисы. Примеры (Курс Компьютерные сети)
Сервис – описывает какие функции реализует уровень
Интерфейс – набор примитивных операций, которые нижний уровень предоставляет верхнему
Протокол – правила и соглашения, используемые для связи уровня N одного компьютера с уровнем N другого компьютера
Примеры для транспортного уровня:
- Протоколы: TCP и UDP.
- Интерфейс: сокеты.
- Сервисы: надежная передача потока байт и ненадежная передача коротких сообщений.
Разделять протоколы и интерфейсы необходимо для изоляции решений. Это общий принцип проектирования в ИТ: описание и реализация должны быть отделены друг от друга.
Сервис – это абстрактное описание того, что делает уровень. Оно позволяет сформулировать, что требуется от уровня, не вдаваясь в детали реализации.
Интерфейс – это конкретное описание методов, процедур и функций, которые нужно вызвать, чтобы получить доступ к сервису. На транспортном уровне через один интерфейс сокетов можно получить доступ к двум типам сервиса. Для этого при создании сокета нужно указать разные константы (в Python socket.SOCK_STREAM или socket.SOCK_DGRAM).
В TCP/IP отсутствует сервис надежной доставки коротких сообщений. Многим приложениям, например, службе имен DNS, приходится самим реализовывать эту функциональность.
Автор: Андрей Созыкин
{$ noItemsMessage $}