Лабораторная работа № 6. Пересылка/ прием сообщений через сокеты

Цель работы: Изучение особенностей использования сокета, для передачи сообщений в ЛВС.

Теоретическая справка.

Socket (гнездо, разъем) - абстрактное программное понятие, используемое для обозначения в прикладной программе конечной точки канала связи с коммуникационной средой, образованной вычислительной сетью. При использовании протоколов TCP/IP можно говорить, что socket является средством подключения прикладной программы к порту локального узла сети.

Рассмотрим механизм реализации сокетов в Borland Delphi. Для работы с сокетами в Delphi используются компоненты TClientSocket и TServerSocket. Они являются потомками абстрактного класса TabstractSocket, который включает методы и свойства, позволяющие прикладному приложению использовать Windows socket.

Windows socket объединяет в себе набор коммуникационных протоколов, предоставляющие возможность приложению подключаться к другим компьютерам для обмена информацией. Windows sockets поддерживает следующие семейства протоколов:

- TCP/IP;

- Xerox Network System (XNS);

- IPX/SPX;

- DECnet.

Сокеты позволяют приложению создавать соединение с другими машинами без знания конкретного типа протокола.

Для создания сокета, инициирующего соединение с другими машинами используют TclientSocket, а для создания сокета, отвечающего на запросы с других машин, - TserverSocket /2/.

Примерная схема работы с сокетом клиента включает в себя следующие шаги:

1. Определение свойств сокета Host и Port. Host – это имя хост-имя или IP-адрес компьютера, с которым необходимо установить соединение. Port –имя порта.

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

3. Пересылка данных.

4. Закрытие сокета.

Алгоритм работы сокета сервера немного отличается от рассмотренного выше алгоритма для сокета клиента:

1. Определение свойств Port и ServerType. Свойство Port аналогично свойству сокета клиента. ServerType – определяет тип подключения.

2. Открытие сокета. Сокет на данном шаге переходит в режим ожидания подключений клиентов.

3. Подключение клиентов и пересылка данных.

4. Отключение клиентов.

5. Закрытие сокета.

Выполнение работы:

- изучить возможности сокетов для передачи данных в ЛВС;

- реализовать прикладное приложение на основе сокетов, обеспечивающее передачу сообщений по ЛВС;

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

Пример работы программы:

1. Подключение клиента.

Лабораторная работа № 6. Пересылка/ прием сообщений через сокеты - student2.ru

2. Пересылка сообщения серверу и с сервера клиенту.

Лабораторная работа № 6. Пересылка/ прием сообщений через сокеты - student2.ru

3. Экранная форма программы по пересылке сообщений.

Лабораторная работа № 6. Пересылка/ прием сообщений через сокеты - student2.ru

Оформление работы.

Отчет по лабораторной работе должен содержать:

- название и цель работы;

- руководство для пользователя программы;

- руководство для программиста;

- алгоритм программы;

- листинг программы;

- экранные формы работы программы;

- вывод по выполненной работе;

- список использованных источников.

Контрольные вопросы:

-- что такое сокет?;

- семейства каких протоколов поддерживает Windows socket?;

- опишите алгоритм работы сокета для клиентского приложения?;

- опишите алгоритм работы сокета для приложения сервера?;

- какие свойства должны быть определены для создания соединения с помощью сокетов?.

Наши рекомендации