Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВССиТК-Лекция08.doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
157.7 Кб
Скачать

4.4. Взаимодействие процессов через сеть

Как было сказано выше, многие приложения состоят из двух сторон, взаимо­действующих друг с другом через компьютерную сеть. Взаимодействие осуществ­ляется путем передачи и приема сообщений.

Процесс выполняет прием и пере­дачу сообщений через свой сокет (или API – см. выше) - интерфейс между прикладным и транспортным уровнями хоста, осуществ­ляющий связь приложения и компьютерной сети.

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

Разработчик приложения отвечает за часть сокета, относящуюся к приклад­ному уровню. На транспортном уровне в компетенции разработчика лишь выбор протокола этого уровня и установка значений его нескольких параметров (максимальный размер буфера, мак­симальный размер сегмента и др.). Приложение всегда строится с использованием единственного транспортного протокола.

5. Транспортный уровень

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

  1. Протокол tcp (Transmission Control Protocol — протокол управления передачей):

  • обеспечивает передачу с установлением логи­ческого соединения, (надежную передачу с контролем переполнения),

  • производит разбиение длинных сообщений на более короткие сообщения,

  • выполняет контроль перегрузки - принудительное снижение ско­рости передачи оконечной системы при высокой загрузке сети.

  1. Протокол UDP (User Datagram Protocol — протокол пользователь­ских дейтаграмм) обес­печивает передачу сообщений без установления логического соединения (ненадежный вид связи, где допускаются искажения и потери данных).

Транспортный уровень расположен между прикладным и сетевым уровнями коммуникационной модели. У него ключевая роль в архитектуре Интернета, т.к. он предоставляет услуги непосредственно прикладным процессам, выполняющимся на оконечных систе­мах.

5.1. Службы транспортного уровня

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

Очевидно, что протоколы транспортного уровня поддерживаются оконечными системами, но не поддерживаются маршрутизаторами.

Маршрути­заторы обрабатывают сообщения сетевого уровня и не оказывают влияния на сообщения транспортного уровня. На передающей стороне транспортный протокол преобразует сообщения приложения в сообщения транспортного уровня. Это преобразование обычно подразумевает разбиение сообщения, полученного от прило­жения, на несколько фрагментов с добавлением к каждому фрагменту заголовка транспортного уровня. Затем транспортный уровень передает свои сообщения сетевому уровню. На приемной стороне транспортный уровень получает сообщения сетевого уровня, преобразует их в сообщения транспортного уровня, отбрасывает заголовки, производит необходимую обработку (например, сборку) и передает ре­зультат приложению.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]