Реферат по предмету "Коммуникации и связь"


Сетевые крестики нолики

ОТЧЕТ о практической работе по дисциплине «Сети ЭВМ» Факультет: математический Выполнила: Насибулина Раиса Сулеймановна Специальность: прикладная Группа: МП-402 математика Кафедра: системного Проверил: Соколов Андрей Анатольевич программирования Челябинск 2007 Содержание 1. ЗАДАНИЕ. 2. ИСПОЛЬЗУЕМЫЕ

СЕТЕВЫЕ СООБЩЕНИЯ. 3. ОСНОВНЫЕ ФУНКЦИИ ПРОГРАММЫ. 4. ПРОЦЕССЫ. 7 ДИАГРАММЫ: 5. ТЕКСТ ПРОГРАММЫ. 1. Задание. Разработать приложения клиент и сервер для сетевой игры «Крестики нолики»с использованием UDP протокола. Клиент «активный», сервер «пассивный». 2. Используемые сетевые сообщения. Каждый отправляемый программой пакет имеет идентификатор вида пакета

и само сообщение. В программе использованы следующие 5 видов пакетов: 1) пакет «информация о карте». В его сообщении содержатся карта игры. При ходе одной стороны передается новая карта и номер хода /Info (i)/. 2) пакет «подтверждение хода». Сообщение содержит те же данные, что и в 1). отправляется при изменении одной координаты /Info (r)/. 3) пакет «установка и проверка соединения»

Установка соединения с сервером и его проверка /Connect/. 4) пакет «ожидание, соединение и проверка». Ожидание соединения, при соединении периодическая проверка соединения /Ping (r)/. 5) пакет «запрос на получение информации от сервера» /Info (r)/. Пакеты 1). – 5). имеют следующий формат. union packd { char buff[63]; // buffer struct pack p; // данные }; где struct pack{ char action, step; // тип пакета, номер шага char matr[4][4]; // карта } ar;

3. Основные функции программы. • void initme(){; //Инициализация клиентского и серверного сокетов. • void ServerStop(HWND hWnd) //Освобождение ресурсов, завершение нитей, закрытие сокетов. • bool clientconnect(HWND hWnd) //Создание нити соединения клиента с сервером. • void startserv(HWND hWnd) //Запуск сервера. Запуск нити для работы с клиентом, проверка наличия связи с клиентом. • void putplus(HWND hWnd, char flag,char i, char j) //Принятие хода клиента, отправка карты серверу (или клиенту). //Параметр flag

имеет следующие значения: // PLUS – крестик, ZERO – нолик. // (i,j) – координаты хода. • DWORD WINAPI ThreadAction_cl(LPVOIINAPI ThreadAction_serv(LPVOID param) //нити клиента и сервера. Проверяют наличие друг друга (клиента и сервера) При получении информации о ходе – обновляется карта и посылается подтверждение. • DWORD WINAPI ThreadAction_put(LPVOID param) //Нить для отправки информации

о ходе сопернику. Производит периодическую отправку информации о ходе до получения подтверждения о ходе. • void drawme(HWND hWnd) //перерисовка карты в случае хода или получения информации. • CHAR * get_error_text(int code) • void err(char * pl) // выдача сообщений об ошибках. • int testnew(pack st, pack nd) // проверка целостности информации из пакета (сравнение прошлой и текущей карт при получении информации. При отличии карты на одну координату происходит отправка подтверждения и обновление карты

игрока). 4. Процессы. В процессе работы периодически проверяется наличие связи между клиентом и сервером (пакеты типа 3 и 4). При ходе игрока отправляется информация о ходе до получения подтверждения. При отсутствии подтверждения (в рамках определенного времени – timeout на подтверждение) отправка информации повторяется периодически до получения подтверждения. Случайная потеря или повреждение пакета не приведет к некорректности работы т.к. осуществляется проверка

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



Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Использование корреляционного анализа в работе школьного психолога
Реферат Активность и продуктивность основных словообразовательных моделей
Реферат Jan Van Eyck Essay Research Paper Jan
Реферат "Зачем я жил? Для какой цели родился?" Трагедия судьбы Григория Печорина
Реферат Banishment Censorship Of Twain
Реферат Анализ деятельности ЗАО "ВЗЛЕТ" и его филиала ООО "ВЗЛЕТ-БАЙКАЛ"
Реферат Deffects Of Affirmative Actio Essay Research Paper
Реферат Lolita Essay Research Paper My analysis of
Реферат The Color Purple Essay Research Paper Andrea
Реферат Совет революционного командования Ирака
Реферат Расчет водоснабжения поселка и насосной установки Определение расхода
Реферат «Инновации как продукт и инструмент предпринимательства. Предложения и технологии коммерциализации» 21-22 июня 2011 года, г
Реферат Война и политика в письмах Императрицы Александры Федоровны к Николаю II (1914-1915)
Реферат Русский символизм: лекция из курса д-ра Валюлис
Реферат Історія розвитку системи одиниць величин