litceysel.ru
добавить свой файл
1

Лабораторная работа № 1



Тема: Разработка параллельного сервера (мультипроцессная организация).

1. Написать программы, обеспечивающие параллельную работу севера, принимающего файлы от клиента по сети.   

a)        Для обеспечения параллельной работы сервера применяется создание процессов (fork).

Информацию получаемую от клиента сохранять в одном общем файле (обеспечить целостность данных).

2. Написать клиентскую программу, передающую файл по сети серверу.   

Лабораторная работа № 2




Тема: Разработка параллельного сервера (мультипоточная организация).

1. Написать программы, обеспечивающие параллельную работу севера, принимающего файлы от клиента по сети.   

Для обеспечения параллельной работы сервера применяются потоки выполнения (библиотеки: pthread, mutex).   Информацию получаемую от клиента сохранять в одном общем файле (Используя mutex обеспечить целостность данных).

Лабораторная работа № 3


Тема: Разработка псевдопараллельного сервера.

1)  Разработать программу однопотокового сервера, использующую асинхронный ввод/вывод (организованный с помощью системного вызова select) обеспечивающую псевдопараллельную работу клиентов. Продемонстрировать асинхронную работу сервера.

2)  Написать клиентскую программу, передающую сообщения на сервер. Для демонстрации асинхронной работы сервера клиент должен посылать сообщения в цикле с задержкой по времени.

Например:

1-й клиент посылает число 1 в цикле с задержкой в 1 сек.

2-ой клиент посылает число 2 с задержкой в 2 сек.

3-й клиент посылает число 3 в цикле с задержкой в 3 сек.

Сервер отображает информацию полученную от клиентов. Если у Вас правильно организован асинхронный ввод/вывод, то на экран со стороны сервера будет выводиться с чередованием числа 1, 2 и 3. Причем частота появления определенного числа будет зависеть от задержки по времени его передачи.



Полезные ссылки:

русский man   

тем кто забыл что такое сокеты   

гугоооль   

Лабораторная работа № 4


Тема:  Разработка параллельного мультипротокольного сервера.   

1) Написать программу, реализующую параллельную работу сервера по двум протоколам (TCP
и UDP) на одном порту.   

2) Написать две клиентские программы, передающие на сервер файлы по протоколам TCP и UDP соответственно.

Полезные ссылки:   

select   

процессы и нити в ОС Линукс   

сокеты   

Лабораторная работа № 5


Вариант № 1

Тема:  Разработка параллельной программы.

Задание:

Используя библиотеку MPI написать параллельную программу перемножения матрицы на вектор на кластерной вычислительной системе Xeon 80 ЦПВТ ГОУ ВПО «СибГУТИ». 

Исследовать эффективность распараллеливания - рассчитать коэффициент ускорения вычислений параллельной программы в зависимости от числа элементарных машин (вычислительных ядер) системы.

Полезные ссылки:

MPI


Руководство пользователя Xeon 80

Вариант № 2

Тема: Разработка  сетевой программы – «снифер».

Задание:

Используя библиотеку PCAP написать сетевую программу «снифер». По заданному правилу (регулярное выражение в стиле bpf (Berkley Packet Filter)) фильтровать пакеты в сети. В выбранном пакете найти определенную информацию.

Например:

Фильтровать все пакеты по протоколу TCP на порт 21. Определить IP адрес отправителя и получателя пакета или найти пакет содержащий слово USER.

Вариант № 3

Тема: Создание клиент-серверного приложения на базе транспортного протокола SCTP.

Требуется разработать клиент-серверные программы передачи сообщения на базе транспортного протокола SCTP.

1. Клиентская программа - посылает текстовое сообщение(предложение) серверу и получает ответ.

2. Серверная программа - принимает сообщение, переставляет порядок слов в предложении и возвращает новое предложение в качестве ответа.


Вариант № 4
Тема:  Изучение глобальной системы доменных имен (DNSDomain Name System).

  Задания:

  1. Выбрать некоторое доменное имя (из локального домена).

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

  3. Определить адрес, соответствующий выбранному имени.

  4. Определить какому каноническому имени соответствует адрес, найденный в п.3

 5. Определить, какие машины принимают почту за адреса в выбранном доменном имени.


 6.  Просмотреть, какие еще записи имеются в домене, соответствующем выбранному доменному имени.

Полезные ссылки:

 DNS

Как работает ДНС

nslookup

man nslookup