рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Описание протокола ТСР

Описание протокола ТСР - раздел Информатика, Лекция 13.задание: Разработать Клиент-Серверную Систему Тест...

Лекция 13.Задание: Разработать клиент-серверную систему тестирования сети с протоколом ТCP при условии использования библиотеки WinSock, на языке программирования C++, составить алгоритмы работы.

Описание протокола ТСР

Формат TCP- сегмента

Порт назначения идентифицирует порт, на какой отправленный пакет Номер последовательности выполняет два задания: - если установленный флаг SYN, то это начальное значение номера последо-вательности и первый байт данных - это номер…

Обобщенный алгоритм тестирования системы

Алгоритм тестирования имеет следующий вид:

Клиент формирует сообщение и посылает его серверу;

Сервер формирует ответ на приглашение и посылает его клиенту;

Клиент получает ответ и делает измерение времени операции;

Делаем 5 циклов повторов с измерением времени передачи.

Описание WinAPI - функций и компонентов Іndy 9 для протокола TCP

Для данного решения используются в качестве клиента и сервера такие компоненты библиотеки Indy9 :

- IdTCPServer1: TIdTCPServer1 - Indy TCP сервер.

- IdTCPClient1: IdTCPClient1 - Indy TCP клиент.

Также используются:

- QueryPerformanceCounter - функция чтения содержимого программного счетчика.

- QueryPerformanceFrequency - функция определения частоты работы счетчика.

Текст программы с пооператорними комментариями

Клиентская часть

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

 

#include "ClientUnit.h"

#pragma package(smart _ init)

#pragma resource " *.dfm"

TForm1 *Form1;

void __fastcall TForm1::Button1Click(TObject *Sender)

{

LARGE _ INTEGER count1, count2, frequency;

float f;

QueryPerformanceFrequency(&frequency);//получение частоты

IdTCPClient1 ->BoundIP=Edit1 ->Text; // Установка параметров соединения, адрес сервера

IdTCPClient1 ->Connect(); // Соединяемся с сервером

QueryPerformanceCounter(&count1); // Чтение системого времени

IdTCPClient1 ->WriteLn(Edit2 ->Text);// Отсылка сообщения серверу

ListBox1 ->Items ->Add(IdTCPClient1 ->ReadLn());// ожидание на ответ сервера

QueryPerformanceCounter(&count2); // Чтение системного времени

f=(count2.QuadPart - count1.QuadPart)*1000000/frequency.QuadPart;

ListBox1 ->Items ->Add("Время запроса : "+FloatToStrF(f/1000, ffFixed, 5, 2) + " ms");

// Вычисление времени запроса

IdTCPClient1 ->Disconnect(); // Разрываем зєднання

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

ListBox1 ->Items ->SaveToFile(Form1 ->Caption+"Log.txt");//Сохранение логу соединения

}

//---------------------------------------------------------------------------

Серверная часть

//---------------------------------------------------------------------------

 

#include <vcl.h>

#pragma hdrstop

 

#include "ServerUnit.h"

//---------------------------------------------------------------------------

#pragma package(smart _ init)

#pragma resource " *.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

Button1 ->Enabled=false;

Button2 ->Enabled=true;

IdTCPServer1 ->Active=true; //Сервер активен

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

Button2 ->Enabled=false;

Button1 ->Enabled=true;

IdTCPServer1 ->Active=false; //Сервер не активен

}

//---------------------------------------------------------------------------

void __fastcall TForm1::IdTCPServer1Execute(TIdPeerThread *AThread)

{

ListBox1 ->Items ->Add(AThread ->Connection ->ReadLn());//Ожидаем запрос от клиента

AThread ->Connection ->WriteLn("Server OK"); // Выводим принятое сообщение

AThread ->Connection ->Disconnect(); // Разрываем связь

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{

ListBox1 ->Items ->SaveToFile(Form1 ->Caption+"Log.txt");//Сохранение лога соединения

}

//---------------------------------------------------------------------------

 

III Практическая часть

1. Экранные результаты:

1.1 Выполняется запуск программы-сервера (рис. 1).

1.2 Кнопкой 1 выполняем запуск сервера (рис. 1).

Рис. 1. Программа-сервер

1.3 Выполняем запуск клиентской программы (рис. 2).

1.4 В поле адреса сервера (1) вводим IP- адрес серверу (рис. 2)

1.5 В поле для отправления данных - вводим сообщение (рис. 2).

1.6 Нажимаем кнопку 3, для отправления сообщения серверу (рис. 2).

Рис. 2. Программа-клиент

1.7 По получении сообщения сервер выводит его в поле лога 1 (рис. 3)

1.8 Нажатие кнопки 2 сохранение лога соединений сервера в файле (рис. 1).

1.9 В поле 5 выводится лог соединений клиента с сервером (рис. 2).

1.10 Кнопкой 4 храним лог соединений клиента с сервером в файле (рис. 2).

1.11 Нажатием кнопки 2, останавливаем работу сервера (рис. 3)

1.12 Завершаем работу клиента.

Рис. 3. Результаты работы программы сервера

2. Файлы - протоколы результатов :

Сервер:

Hello, Server

I connect U!

U connects Me)

We are connectors

LOL

 

Клиент:

Server OK

Время запроса : 0.78ms

Server OK

Время запроса : 0.96ms

Server OK

Время запроса : 1.12ms

Server OK

Время запроса : 0.63ms

Server OK

Время запроса : 1.08ms

 

 

– Конец работы –

Используемые теги: Описание, протокола, ТСР0.035

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Описание протокола ТСР

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

Краткое описание происхождения птиц и описание некоторых птиц кайнозойской эры
В эоцене среднетретичный период, 54-38 млн. лет назад существовала птица Диатрима. С виду она напоминала страуса. Рост ее составлял около 2-3… Фороракос достигал 1,5 м в высоту. Его острый крючковатый полуметровый клюв… Сейчас в Новой Зеландии живет киви - птица, которая, видимо, близка к отряду моаобразных.На островах Новой Зеландии…

Описание пейджингового протокола POCSAGE
Он позволяет передавать тональные. цифровые и алфавитно- цифровые сообщения, имеет стандартные скорости передачи 512, 1200 и 2400 бит/с и встроенные… Описание протокола POCSAG. При использовании протокола POCSAG вся информация… Начало посылки в формате POCSAG - преамбула, которая состоит из 576 чередующихся 0 и 1 Длина преамбулы неслучайна -…

Описание логики процессов
На сайте allrefs.net читайте: Описание логики процессов...

Протоколы, алгоритмы и исходные тексты на языке С
На сайте allrefs.net читайте: Протоколы, алгоритмы и исходные тексты на языке С...

ОПИСАНИЕ ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА И СХЕМЫ ПОЛУЧЕНИЯ АММИАКА
Сероочистка узел снижения давления природного газа ГП на входе в агрегат и схема топливного... Схема топливного газа... Схема...

Описание способов тестирования сетей
Общий алгоритм работы клиент серверной системы тестирования сети... Запуск программы сервера... Запуск программы клиента...

Обоснование необходимости конструктивной разработки. Описание существующих типов проектируемой конструкции сепаратора
На сайте allrefs.net читайте: Положительный опыт использования фракционного метода обработки, накопленный |зерноперерабатывающей промышленностью, позволяет сделать вывод, что...

Семейство протоколов TCP/IP
На сайте allrefs.net читайте: Семейство протоколов TCP/IP...

Табличное описание граф-модели риска
На сайте allrefs.net читайте: Табличное описание граф-модели риска...

Протоколы компьютерной сети
На сайте allrefs.net читайте: · Протоколы компьютерной сети...

0.022
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам