20985

ВЗАИМОДЕЙСТВИЕ ПРИКЛАДНЫХ ПРОГРАММ С ПОМОЩЬЮ ТРАНСПОРТНЫХ ПРОТОКОЛОВ СЕТИ ИНТЕРНЕТ

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

Информатика, кибернетика и программирование

dfm AnsiString NIK_server; TForm1 Form1; __fastcall TForm1::TForm1TComponent Owner : TFormOwner { ServerSocket1 Active=true; Memo1 Clear; Memo2 Clear; } void __fastcall TForm1::ServerSocket1ClientConnectTObject Sender TCustomWinSocket Socket { Memo1 Lines Add Клиент присоединился ; } ...

Русский

2013-08-02

74 KB

8 чел.

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ЛАБОРАТОРНАЯ РАБОТА №1

ПО ДИСЦИПЛИНЕ «СЕТИ ЭВМ»

ТЕМА РАБОТЫ «ВЗАИМОДЕЙСТВИЕ ПРИКЛАДНЫХ ПРОГРАММ С ПОМОЩЬЮ ТРАНСПОРТНЫХ ПРОТОКОЛОВ СЕТИ ИНТЕРНЕТ»

 

 

Выполнили

студент группы ИВТПО-431т

Рахмангулов А.М.

Салямов Д.И.

Проверила

Муслимова Г. Р.

Уфа 2011

ЦЕЛЬ РАБОТЫ:

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

ПОСТАНОВКА ЗАДАЧИ

Написать клиент-серверную программу, работающую по протоколу TCP  с аналогичными программами по указанному преподавателем порту и реализующую простейший chat с выбираемыми собеседниками. Протокол о совершаемых действиях должен выводиться на экран.

 

ОБОСНОВАНИЕ ВЫБОРА СРЕДЫ ПРОГРАММИРОВАНИЯ

Для разработки данного приложения был выбран язык Borland C++ Builder 6. C++ Builder позволяет быструю визуальную разработку приложений на языке C++. Профессиональные средства языка C++ интегрированы в визуальную среду разработки. Интегрированная среда разработки объединяет редактор форм, инспектор объектов, палитру компонент, администратор проекта и полностью интегрированные редактор кода и отладчик – инструменты быстрой разработки программных приложений, обеспечивающие полный контроль над кодом и ресурсами. C++Builder воплощает важнейшие аспекты объектно-ориентированного программирования в удобном для пользования инструменте визуального проектирования, что лучше всего подходит для реализации и отображения результатов работы программы.

РУКОВОДСТВО ПРОГРАММИСТА

Листинг сервера

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

AnsiString NIK_server;

TForm1 *Form1;

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

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

ServerSocket1->Active=true;

Memo1->Clear();

Memo2->Clear();

}

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

void __fastcall TForm1::ServerSocket1ClientConnect(TObject *Sender,

     TCustomWinSocket *Socket)

{

Memo1->Lines->Add("Клиент присоединился");

}

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

void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender,

     TCustomWinSocket *Socket)

{

Memo1->Lines->Add(Socket->ReceiveText());

AnsiString S=Memo1->Lines->Text;

}

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

void __fastcall TForm1::Button2Click(TObject *Sender)

{

ServerSocket1->Socket->Connections[0]->SendText(Memo1->Text);

}

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

void __fastcall TForm1::SpeedButton1Click(TObject *Sender)

{

NIK_server=Edit1->Text;

Memo1->Lines->Add(NIK_server+": "+Memo2->Text);

for(int i=0;i<=ServerSocket1->Socket->Connected;i++)

{

       ServerSocket1->Socket->Connections[i]->SendText(

        NIK_server+": "+Memo2->Lines->Strings[Memo2->Lines->Count - 1]);;

}

Memo2->Clear();

}

Листинг клиента

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

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

AnsiString Adress,NIK_client;

TForm1 *Form1;

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

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

Memo1->Clear();

Memo2->Clear();

}

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

void __fastcall TForm1::Button1Click(TObject *Sender)

{

ClientSocket1->Active=true;

}

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

void __fastcall TForm1::Button2Click(TObject *Sender)

{

ClientSocket1->Socket->SendText(Memo1->Text);

}

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

void __fastcall TForm1::ClientSocket1Connect(TObject *Sender,

     TCustomWinSocket *Socket)

{

Memo1->Lines->Add("Клиент присоединился к серверу");

}

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

void __fastcall TForm1::ClientSocket1Read(TObject *Sender,

     TCustomWinSocket *Socket)

{

AnsiString Rtext ;

Rtext = ClientSocket1->Socket->ReceiveText() ;

Memo1->Lines->Add(Rtext);

}

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

void __fastcall TForm1::SpeedButton1Click(TObject *Sender)

{

NIK_client=Edit2->Text;

Memo1->Lines->Add(NIK_client+": "+Memo2->Text);

ClientSocket1->Socket->SendText(NIK_client+": "+Memo2->Lines->Strings[Memo2->Lines->Count - 1]);

Memo2->Clear();

}

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

void __fastcall TForm1::SpeedButton2Click(TObject *Sender)

{

 if (Edit1->Text=="")

    {

       if (InputQuery("Соединиться...", "IP-адрес:", Adress));

       ClientSocket1->Address=Adress;

    }

 ClientSocket1->Address=Edit1->Text;

 ClientSocket1->Active=true;

 Edit1->Text=Adress;

}

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

Работа с клиентом

После запуска клиента введите ip адрес, ник, порт сервера в программе указан автоматически 2000.  В случае успешного соединения, вы увидите сообщение о том, что соединение удалось, клиент присоседился к серверу.

Работа с сервером

После запуска сервера введите ip адрес, ник, порт сервера в программе указан авмотически 2000. В процессе работы сервера вы можете наблюдать какими данными обмениваются клиенты с сервером.

Для прекращения работы сервера, закройте окно программы.


 

А также другие работы, которые могут Вас заинтересовать

24455. Граф состояний систем и вычисление показателей надежности (восстанавливаемые элементы) 143.5 KB
  интенсивность отказа интенсивность восстановления период восстановления начальные условия или Выполним преобразование Лапласа: Используем теорему о вычетах: это вероятность нахождения в первом состоянии вероятность готовности системы стационарный коэффициент готовности системы Вычисление показателей надежности и готовности системы Пусть имеется системы состоящая из элементов. Вероятность безотказной работы Для вычисления строим граф состояний системы. Из анализа функционирования системы записываем начальные условия. ...
24456. Характеристики моделей памяти для DOS- и Windows- программах. Начальная загрузка сегментных регистров в зависимости от модели памяти 4.44 MB
  Характеристики моделей памяти для DOS и Windows программах. Начальная загрузка сегментных регистров в зависимости от модели памяти. Модели памяти DOS: Модель памяти Tiny. Эта модель памяти используется при создании загрузочных модулей с расширением имени com.
24457. Химический состав почв 83 KB
  Почва является самой верхней частью коры выветривания литосферы и поэтому в общих чертах наследует ее химический состав. Однако, представляя собой одновременно продукт воздействия на литосферу живого вещества, почва в содержании ряда элементов приобретает существенные отличия.
24458. Метод обратных функций 69 KB
  Предположим что случайная величина определенная на интервале [a ; b] имеет плотность распределения . Зная можно вычислить функцию распределения. Теорема Случайная величина удовлетворяющая уравнению имеет плотность распределения . Замечание отсюда название Доказательство Так как функция распределения это строго возрастающая функция на интервале [a ; b] то она должна удовлетворять условию .
24459. Метод суперпозиции 91.5 KB
  Существует три вида атрибутов SEGMENT: Выравнивание Выравнивания сегмента задача компоновщика. Он должен обеспечить размещение начала сегмента на заданной границе. Размеры сегмента Отдельной проблемой при разработке системы со страничной или сегментной адресацией является выбор размера страницы или максимального размера сегмента. Это дает ряд мелких преимуществ например позволяет раздавать права доступа сегментам а подкачку с диска осуществлять постранично.
24460. Погрешность и сходимость метода Монте-Карло 49.5 KB
  таблица настройки адресов имеет переменную длину состоит из элементов по 4 байта которые указывают на адрес который должен быть настроен. Смещение от начала файлов: 0001: 4D5A; 0203: длина абзаца задачи по модулю 512; 0405: длина файла в блоках колво блоков по 512 байт; 0607: число элементов таблицы настройки адресов; 0809: длина заголовка в параграфе; 0А0В: минимальный объем памяти который нужно выделить после конца абзаца задачи MIN ALLOC 0000; 0С0D: максимальный объем памяти который нужно выделить после конца абзаца...
24461. Процессы восстановления. Уравнение восстановления 129.5 KB
  Процессы восстановления. Уравнение восстановления. Определение: Под процессом восстановления понимается последовательность неотрицательных взаимнонезависимых случайных величин которые при i 1 имеют одно и тоже распределение. случайная наработка системы после i1 восстановления.
24462. Восприятие и его характеристики 45.5 KB
  В отличие от ощущений отражающих лишь отдельные свойства предметов в образе восприятия представлен весь предмет в совокупности его постоянных свойств. Образ восприятия выступает как результат синтеза ощущений. При этом особенно важную роль во всех видах восприятия играют двигательные или кинестетические ощущения которые регулируют по принципу обратной связи реальные взаимоотношения субъекта с предметом. В процессе слухового восприятия активную роль играют слабые движения артикуляционного аппарата.
24463. Сфера вторичных образов: эмпирические характеристика представления в сравнении с характеристиками восприятия 58.5 KB
  Сфера вторичных образов: эмпирические характеристика представления в сравнении с характеристиками восприятия. К вторичным образом относятся образы представления сновидения галлюцинации. При этом степень обобщенности того или иного представления может быть различной в связи с чем различают единичные и общие представления. Представления различаются по ведущему анализатору зрительные слуховые осязательные обонятельные по их содержанию математические технические музыкальные.