Межпроцессное взаимодействие при помощи сокетов — КиберПедия 

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Межпроцессное взаимодействие при помощи сокетов

2017-11-16 654
Межпроцессное взаимодействие при помощи сокетов 0.00 из 5.00 0 оценок
Заказать работу

Для адресации компьютера в глобальной сети используется IP-адрес – уникальное 32-битное число, назначаемое хосту и используемое во всех операциях связи для связи с хостом.

Для адресации служб используется пара объектов – IP-адрес и порт. Порт – это целое число, используемое ОС для идентификации служб в рамках одного компьютера. Порт не соответствует какой-либо физической сущности. Одна программа-сервер может обеспечивать несколько служб (например, порт 80 – HTTP, порт 21 – FTP).

Для организации обмена по сети необходимо разработать протокол связи – соглашение, определяющее формат и смысл сообщений, которыми обмениваются приложения. Организация взаимодействия программ по сети – сложная задача, включает много подзадач: согласование уровней электрических сигналов, формирование кадров, проверка контрольных сумм, доставка пакетов по адресу назначения, устранение дублирования пакетов, аутентификация пользователей и т.д. Эта сложная задача разбивается на ряд простых, иерархически упорядоченных подзадач. Отдельная программа решает задачи определенного уровня. Т.е. вместо создания единственного гигантского протокола разрабатываются отдельные протоколы для каждой подзадачи.

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

В начале 80-х годов международная организация по стандартизации ISO разработала семиуровневую модель OSI (Open System Interconnection) – модель взаимодействия открытых систем. В настоящее время ее заменила пятиуровневая модель Internet (рис. 13.1). Каждый уровень решает свою часть задачи связи: ПО конкретного уровня на компьютере-отправителе добавляет нужную информацию к отправляемым данным, а ПО того же уровня на компьютере-получателе использует эту информацию и затем удаляет ее. Например, уровень сетевого интерфейса компьютера 1 добавляет к кадру контрольную сумму перед передачей кадра по сети. Уровень сетевого интерфейса компьютера 2 проверяет и удаляет контрольную сумму входящего кадра до передачи его на сетевой уровень.

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

Сокеты – это интерфейс прикладного программирования (API), который предоставляет ОС для взаимодействия процессов. Это структура данных, используемая как оконечная точка взаимодействия для IPC. Сокет является развитием механизма каналов.

Две программы, взаимодействующие при помощи сокетов, используют пару сокетов. Сокет на локальном компьютере называют локальным сокетом, на удаленном – удаленным сокетом.

 

Существует два основных типа сокетов:

Потоковый сокет, или сокет с установлением соединения, или сокет TCP. Позволяет создавать двунаправленный, надежный поток данных, "виртуальную цепь". Канал реализуется как пара потоковых сокетов.

Характеристики соединения с помощью сокетов TCP:

- двухточечная связь, невозможна широковещательная и групповая передача;

- надежное установление соединения и надежная доставка;

- передача с управлением скоростью потока данных (данные не передаются быстрее, чем их может принять получатель);

- потоковая организация: границы между сообщениями не устанавливаются.

Дейтаграммный сокет, или сокет без установления соединения, или сокет UDP. Позволяет создавать двунаправленный, ненадежный поток данных.

Характеристики соединения с помощью сокетов UDP:

- обеспечивают связь "многие-ко-многим", т.е. можно реализовать широковещательную и групповую передачу;

- ненадежная доставка;

- отсутствие управления скоростью потока данных, если дейтаграммы поступают быстрее, чем они могут быть обработаны, то они отбрасываются без оповещения;

- дейтаграммная организация – доставленные данные укладываются в те же границы сообщений, которые были установлены приложением-отправителем;

- надежная доставка может быть обеспечена только в локальных вычислительных сетях.


Поделиться с друзьями:

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.009 с.