Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции Java / 14. Основы создания сетевых приложений на Java.pptx

.pdf
Скачиваний:
135
Добавлен:
16.03.2015
Размер:
217.39 Кб
Скачать

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

Лекция 14

Основы создания сетевых приложений на Java

© Составление, Гаврилов А.В., 2013

Самара

2013

План лекции

nПротоколы транспортного уровня

nПонятие сокета

nПакет java.net

nКлассы Socket и ServerSocket

nКлассы DatagramPacket и DatagramSocket

nКласс URL

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

2

Модель OSI

nПрикладной уровень

nУровень представления

nСеансовый уровень

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

nСетевой уровень

nУровень соединения

nФизический уровень

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

3

Transmission Control Protocol

nTCP – основанный на соединениях протокол, обеспечивающий надежную передачу данных между двумя компьютерами с сохранением порядка данных

nИспользуется в: HTTP, FTP, Telnet и др.

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

4

User Datagram Protocol

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

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

5

Модель «Клиент-сервер»

n Порядок работы

Каждая из сторон виртуального соединения называется «сокет» (socket)

Процесс-сервер инициализируется при запуске и далее бездействует, ожидая поступления запроса от клиента

Процесс-клиент посылает запрос на установление соединения с сервером, требуя выполнить для него определенную функцию

n Виды приложений-серверов

Сервер последовательной обработки запросов

Сервер параллельной обработки запросов

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

6

Понятие порта

nКомпьютер (обычно) имеет только одно физическое соединение с сетью

nСоединение описывается, например, IPадресом (32 или 128 бит на нынешний момент)

nКак различать информацию для различных приложений?

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

7

Понятие порта

app app app app

port port port port

TCP or UDP

Packet

port # data

nСокет привязывается к порту

nПорт описывается 16-битным числом

nПорты 0-1023 зарезервированы

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

8

Интерфейс сокетов

nВ 80-ых годах американское правительственное агентство по поддержке исследовательских проектов (ARPA), финансировало реализацию протоколов TCP/IP для UNIX в Калифорнийском университете в г. Беркли

nРазработан интерфейс прикладного программирования для сетевых приложений

TCP/IP (TCP/IP API)

nTCP/IP sockets или Berkeley sockets

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

9

Связь с файловой системой

nTCP/IP в рамках UNIX

nИнтерфейс сокетов – через системные вызовы

UNIX

nСистемные вызовы ввода-вывода UNIX выглядят как последовательный цикл:

открыть

считать/записать

закрыть

nНет различий между файлами и внешними устройствами

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

10