Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Haulmont-презентации Java / Haulmont. java_se_10.ppt
Скачиваний:
30
Добавлен:
16.03.2015
Размер:
687.62 Кб
Скачать

Основы создания сетевых

приложений

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

Цели занятия

2 Изучить:

•Модель OSI

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

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

•Пакет java.net

•Адресация

•Общая схема соединения

•Класс Socket. Порядок работы с сокетом клиента

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

•Дейтаграммы

•Uniform Resource Locator

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

Модель OSI

3В 1984 г. была разработана модель OSI – модель взаимодействия открытых систем (Open Systems Interconnected)

Эта модель состоит из семи уровней:

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

Уровень соединения (канальный уровень)

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

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

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

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

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

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

 

 

Модель OSI

4

Физический уровень. Этот уровень описывает среду передачи

 

 

 

данных. Стандартизируются физические устройства, отвечающие

 

 

за передачу электрических сигналов (разъемы, кабеля и т.д.) и

 

 

правила формирования этих сигналов. Физический уровень также

 

 

отвечает за преобразование сигналов между различными

 

 

средами передачи данных. Например, при необходимости

 

 

соединить сегмент сети, построенной на оптоволокне и витой

 

 

паре применяют т.н. конверторы (в данном случае они

 

 

преобразуют световой импульс в электрический)

 

Уровень соединения (канальный уровень). На физическом

 

 

уровне пересылаются просто набор сигналов – битов. При этом не

 

 

проверяется, что несколько компьютеров могут в одну среду

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

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

 

 

Модель OSI

5

Сетевой уровень. Одним из ограничений канального уровня

 

 

 

является использование “плоской” модель адресации. Протокол,

 

 

который поддерживается сетевым уровнем, использует

 

 

иерархическую структуру для уникальной идентификации

 

 

компьютеров. Для примера представим себе телефонную сеть.

 

 

Благодаря такой иерархической структуре мы можем определить

 

 

расположение требуемого абонента с наименьшими затратами.

 

 

Иерархическая адресация для сети также должна позволять

 

 

передавать данные между разрозненными и удаленными сетями

 

Транспортный уровень. Рассмотрим TCP/IP протокол

 

 

транспортного уровня модели OSI. TCP/IP имеет два протокола –

 

 

TCP и UDP. Transmission Control Protocol TCP – основанный на

соединениях протокол, обеспечивающий надежную передачу данных между двумя компьютерами с сохранением порядка данных. Используется в HTTP, FTP. User Datagram Protocol UDP

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

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

 

 

Модель OSI

6

Сеансовый уровень. Обеспечивает установку, контроль и

 

 

 

окончание сессии между приложениями. Уровень сессий

 

 

координирует приложения, когда они взаимодействуют между

 

 

двумя хостами

 

Уровень представления. Уровень представлений отвечает за

 

 

представление данных в форме, понятной получателю. Например,

 

 

для представления данных могут быть использованы такие

 

 

кодировки, как Extended Binary Coded Decimal Interchange Code

 

 

(EBCDIC) или American Standard Code for Information Interchange

 

 

(ASCII). Если компьютеры, между которыми установлено сетевое

 

 

соединение, используют различные протоколы, то presentation layer

 

 

обеспечивает их корректное взаимодействие. Уровень

 

 

представлений также отвечает за шифрацию и сжатие данных

 

Прикладной уровень. Уровень приложений определяет, какие

 

 

ресурсы существуют для связи между хостами

 

Каждый уровень взаимодействует только с соседними уровнями,

 

 

протокол взаимодействия стандартизован

• Это позволяет использовать реализации сетевого и программного обеспечения от разных производителей

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

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

7• Обычно компьютер имеет только одно физическое соединение с сетью

Соединение описывается IP-адресом

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

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

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

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

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

8• Большинство сетевых приложений можно классифицировать как клиент-серверные

приложения

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

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

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

Типы приложений-серверов:

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

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

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

определенную функцию

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

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

9Сетевое соединение – это процесс передачи данных по сети между двумя компьютерами или процессами

Сокет – конечный пункт передачи данных

Для программ сокет – одно из окончаний сетевого соединения

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

Связь между двумя сокетами может быть ориентированной или не ориентированной на

соединение

Сокет связан с номером порта

В Java cокеты инкапсулированы в экземпляры специальных классов

Все низкоуровневое взаимодействие скрыто от

пользователя

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

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

10• Существует семейство классов, обеспечивающих настройку сокетов и работу с ними

Классы для работы с сетью в Java располагаются в пакете java.net

Все права защищены. www.haulmont.ru info@haulmont.com

© HAULMONT, 2013

Соседние файлы в папке Haulmont-презентации Java