stringtranslate.com

Программирование компьютерных сетей

Программирование компьютерных сетей включает в себя написание компьютерных программ , которые позволяют процессам взаимодействовать друг с другом через компьютерную сеть . [1]

Коммуникации с установлением соединения и без установления соединения

В целом, большинство коммуникаций можно разделить на ориентированные на соединение и без установления соединения . Является ли связь ориентированной на соединение или без установления соединения, определяется протоколом связи , а не интерфейсом прикладного программирования (API) . Примеры протоколов, ориентированных на соединение, включают протокол управления передачей (TCP) и последовательный обмен пакетами (SPX) , а примеры протоколов без установления соединения включают протокол пользовательских дейтаграмм (UDP) , «сырой IP» и межсетевой обмен пакетами (IPX) .

Клиенты и серверы

Для коммуникаций, ориентированных на соединение, стороны связи обычно имеют разные роли. Одна сторона обычно ожидает входящих соединений; эту сторону обычно называют « сервером ». Другая сторона — это та, которая инициирует соединение; эту сторону обычно называют « клиентом ».

Для связи без установления соединения одна сторона («сервер») обычно ожидает входящего пакета, а под другой стороной («клиент») обычно понимается та, которая отправляет незапрошенный пакет на «сервер».

Популярные протоколы и API

Сетевое программирование традиционно охватывает различные уровни модели OSI/ISO (большая часть программирования уровня приложений относится к L4 и выше). В таблице ниже приведены примеры популярных протоколов, принадлежащих разным уровням OSI/ISO, а также популярные API для них.

Смотрите также

Рекомендации

  1. ^ «Глава 12 - Сетевое программирование» . КОМП1406 (PDF) . 2017. Архивировано из оригинала (PDF) 5 марта 2020 г. Сетевое программирование включает в себя написание программ, которые взаимодействуют с другими программами через компьютерную сеть.