- •Часть 1
- •Клиентское приложение:
- •Серверное приложение:
- •Клиентское приложение:
- •Серверное приложение:
- •Клиентское приложение:
- •Серверное приложение:
- •Клиентское приложение:
- •Клиентское приложение:
- •Часть 2
- •Interframe gap, jam-последовательность, slot time, collision window – назначение и расчет
- •Список использованной литературы.
Клиентское приложение:
#include <winsock2.h>
#include <iostream.h>
int main() {
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD(2,2);
err = WSAStartup(wVersionRequested, &wsaData);
if(err != 0) return -1;
struct sockaddr_in peer;
peer.sin_family=AF_INET;
peer.sin_port=htons(1280);
peer.sin_addr.s_addr=inet_addr("127.0.0.1");
SOCKET s=socket(AF_INET,SOCK_STREAM,0);
connect(s,(struct sockaddr*) &peer,sizeof(peer));
char b[200];
recv(s,b,sizeof(b),0);
cout<<b;
b[0]='\0';
while (strcmp(b,"quit")) {
cin.getline(b,200,'\n');
if(!strcmp(b,"sms"))
cout << "USAGE: sms phone_number message_text"<< endl;
else
send(s,b,sizeof(b),0);
}
WSACleanup();
return 0;
}
Результаты тестирования:
Рисунок 9 – Запущено серверное приложение
Рисунок 10 – Результат работы клиентского приложения
Часть 2
Физический и канальный уровень – функциональное назначение
Физический уровень (Physical layer) имеет дело с передачей битов по физическим каналам связи, таким, например, как коаксиальный кабель, витая пара, оптоволоконный кабель или цифровой территориальный канал. К этому уровню имеют отношение характеристики физических сред передачи данных, такие как полоса пропускания, помехозащищенность, волновое сопротивление и другие. На этом же уровне определяются характеристики электрических сигналов, передающих дискретную информацию, например, крутизна фронтов импульсов, уровни напряжения или тока передаваемого сигнала, тип кодирования, скорость передачи сигналов. Кроме этого, здесь стандартизуются типы разъемов и назначение каждого контакта.
Ha физическом уровне просто пересылаются биты. При этом не учитывается, что в некоторых сетях, в которых линии связи используются (разделяются) попеременно несколькими парами взаимодействующих компьютеров, физическая среда передачи может быть занята. Поэтому одной из задач канального уровня (Data Link layer) является проверка доступности среды передачи. Другой задачей канального уровня является реализация механизмов обнаружения и коррекции ошибок. Для этого на канальном уровне биты группируются в наборы, называемые кадрами (frames). Канальный уровень обеспечивает корректность передачи каждого кадра, помещая специальную последовательность бит в начало и конец каждого кадра, для его выделения, а также вычисляет контрольную сумму, обрабатывая все байты кадра определенным способом и добавляя контрольную сумму к кадру.
LLC и его виды
В основу протокола LLC (протокол уровня управления логичским каналом) положен протокол HDLC (High-level Data Link Control Procedure), широко использующийся в территориальных сетях.
В соответствии со стандартом 802.2 уровень управления логическим каналом LLC предоставляет верхним уровням три типа процедур:
LLC1 - сервис без установления соединения и без подтверждения;
LLC2 - сервис с установлением соединения и подтверждением;
LLC3 - сервис без установления соединения, но с подтверждением.
Этот набор процедур является общим для всех методов доступа к среде, определенных стандартами 802.3-802.5.
Сервис без установления соединения и без подтверждения LLC1 дает пользователю средства для передачи данных с минимумом издержек. Обычно, этот вид сервиса используется тогда, когда такие функции как восстановление данных после ошибок и упорядочивание данных выполняются протоколами вышележащих уровней, поэтому нет нужды дублировать их на уровне LLC.
Сервис с установлением соединений и с подтверждением LLC2 дает пользователю возможность установить логическое соединение перед началом передачи любого блока данных и, если это требуется, выполнить процедуры восстановления после ошибок и упорядочивание потока этих блоков в рамках установленного соединения. Протокол LLC2 во многом аналогичен протоколам семейства HDLC (LAP-B, LAP-D, LAP-M), которые применяются в глобальных сетях для обеспечения надежной передачи кадров на зашумленных линиях.
В некоторых случаях (например, при использовании сетей в системах реального времени, управляющих промышленными объектами), когда временные издержки установления логического соединения перед отправкой данных неприемлемы, а подтверждение корректности приема переданных данных необходимо, базовый сервис без установления соединения и без подтверждения не подходит. Для таких случаев предусмотрен дополнительный сервис, называемый сервисом без установления соединения, но с подтверждением LLC3.
Структура кадра LLC
Кадры уровня LLC содержат четыре поля:
адрес точки входа сервиса назначения (Destination Service Access Point, DSAP),
адрес точки входа сервиса источника (Source Service Access Point, SSAP),
управляющее поле (Control)
поле данных (Data)
Кадр LLC обрамляется двумя однобайтовыми полями "Флаг", имеющими значение 01111110. Флаги используются на MAC-уровне для определения границ блока.
Флаг (01111110) |
Адрес точки входа сервиса назначения DSAP |
Адрес точки входа сервиса источника SSAP |
Управ-ляющее поле Control |
Дан-ные Data |
Флаг (01111110) |
Рис. 1. Структура LLC-кадра стандарта 802-2
Метод доступа CSMA/CD
В сетях Ethernet используется метод доступа к среде передачи данных, называемый методом коллективного доступа с опознаванием несущей и обнаружением коллизий (carrier-sense-multiply-access with collision detection, CSMA/CD).
Этот метод используется исключительно в сетях с общей. Все компьютеры такой сети имеют непосредственный доступ к общей шине, поэтому она может быть использована для передачи данных между любыми двумя узлами сети. Простота схемы подключения - это один из факторов, определивших успех стандарта Ethernet.
Все данные, передаваемые по сети, помещаются в кадры определенной структуры и снабжаются уникальным адресом станции назначения. Затем кадр передается по кабелю. Все станции, подключенные к кабелю, могут распознать факт передачи кадра, и та станция, которая узнает собственный адрес в заголовках кадра, записывает его содержимое в свой внутренний буфер, обрабатывает полученные данные и посылает по кабелю кадр-ответ. Адрес станции-источника также включен в исходный кадр, поэтому станция-получатель знает, кому нужно послать ответ.
Понятие коллизии причины ее возникновения
При использовании метода CSMA/CD возможна ситуация, когда две станции одновременно пытаются передать кадр данных по общему кабелю. Для уменьшения вероятности этой ситуации непосредственно перед отправкой кадра передающая станция слушает кабель (то есть принимает и анализирует возникающие на нем электрические сигналы), чтобы обнаружить, не передается ли уже по кабелю кадр данных от другой станции. Если опознается несущая (carrier-sense, CS), то станция откладывает передачу своего кадра до окончания чужой передачи, и только потом пытается вновь его передать. Но даже при таком алгоритме две станции одновременно могут решить, что по шине в данный момент времени нет передачи, и начать одновременно передавать свои кадры. Говорят, что при этом происходит коллизия, так как содержимое обоих кадров сталкивается на общем кабеле, что приводит к искажению информации.
Требования к физической среде Ethernet
Исторически первые сети технологии Ethernet были созданы на коаксиальном кабеле диаметром 0.5 дюйма. В дальнейшем были определены и другие спецификации физического уровня для стандарта Ethernet, позволяющие использовать различные среды передачи данных в качестве общей шины. Метод доступа CSMA/CD и все временные параметры Ethernet остаются одними и теми же для любой спецификации физической среды.
Физические спецификации технологии Ethernet на сегодняшний день включают следующие среды передачи данных:
10Base-5 - коаксиальный кабель диаметром 0.5 дюйма, называемый "толстым" коаксиалом. Имеет волновое сопротивление 50 Ом. Максимальная длина сегмента - 500 метров (без повторителей).
10Base-2 - коаксиальный кабель диаметром 0.25 дюйма, называемый "тонким" коаксиалом. Имеет волновое сопротивление 50 Ом. Максимальная длина сегмента - 185 метров (без повторителей).
10Base-T - кабель на основе неэкранированной витой пары (Unshielded Twisted Pair, UTP). Образует звездообразную топологию с концентратором. Расстояние между концентратором и конечным узлом - не более 100 м.
10Base-F - оптоволоконный кабель. Топология аналогична стандарту на витой паре. Имеется несколько вариантов этой спецификации - FOIRL, 10Base-FL, 10Base-FB.
Число 10 обозначает битовую скорость передачи данных этих стандартов - 10 Мб/с, а слово Base - метод передачи на одной базовой частоте 10 МГц (в отличие от стандартов, использующих несколько несущих частот, которые называются broadband - широкополосными).