Команда LIST (без параметра) возвращает список сообщений в почтовом ящике и их размеры:
CLIENT: LIST
SERVER: +ОК
SERVER: 2 messages (320 octets)
SERVER: 1 120
SERVER: 2 200
...
Команда LIST с параметром возвращает информацию о заданном сообщении:
CLIENT: LIST 2
SERVER: +ОК 2 200
...
CLIENT: LIST 3
SERVER: - ERR no such message, only 2 messages in maildrop
Команда TOP возвращает заголовок, пустую строку и первые десять строк тела сообщения:
CLIENT: TOP 10
SERVER: +ОК
SERVER: <the POP3 server sends the headers of the message, a blank line, and the first 10 lines of the message body> (сервер POP высылает заголовки сообщений, пустую строку и первые десять строк тела сообщения)
SERVER:
....
CLIENT: TOP 100
SERVER: - ERR no such message
Команда NOOP не возвращает никакой полезной информации, за исключением позитивного ответа сервера. Однако позитивный ответ означает, что сервер находится в соединении с клиентом и ждет запросов:
CLIENT: NOOP
SERVER: +ОК
Следующие примеры показывают, как сервер POP3 выполняет действия.
Например, команда RETR извлекает сообщение с указанным номером и помещает его в буфер местного UA (почтового агента):
CLIENT: RETR 1
SERVER: +OK 120 octets
SERVER: <the POPS server sends the entire message here> (РОРЗ-сервер высылает сообщение целиком)
SERVER:
. . . . . .
Команда DELE отмечает сообщение, которое нужно удалить:
CLIENT: DELE 1
SERVER: +OK message 1 deleted ...
(сообщение 1 удалено) CLIENT:
DELE 2
SERVER: - ERR message 2 already deleted (сообщение 2 уже удалено)
Команда RSET снимает метки удаления со всех отмеченных ранее сообщений:
CLIENT: RSET
SERVER: +OK maildrop has 2 (в почтовом ящике 2 сообщения (320 байтов)) messages (320 octets)
Как и следовало ожидать, команда QUIT закрывает соединение с сервером:
CLIENT: QUIT
SERVER: +OK dewey POP3 server signing off
CLIENT: QUIT
SERVER: +OK dewey POP3 server signing off (maildrop empty)
CLIENT: QUIT
SERVER: +OK dewey POP3 server signing off (2 messages left)
Обратите внимание на то, что отмеченные для удаления сообщения на самом деле не удаляются до тех пор, пока не выдана команда QUIT и не началась стадия обновления. В любой момент в течение сеанса клиент имеет возможность выдать команду RSET, и все отмеченные для удаления сообщения будут восстановлены.
Задание на лабораторную работу:
Ознакомившись с протоколами SMTP, описанным в RFC 788 и POP3, описанным в RFC 1939 выполнить нижеприведенные задания.
Написать приложение:
с помощью которого можно отправлять email сообщения.
с помощью которого можно принимать email сообщения, оставленные в почтовом ящике.
с помощью которого можно просматривать список email сообщений в почтовом ящике и удалять выбранные сообщения.
с помощью которого можно просматривать дополнительную информацию о заданном сообщении и удалять выбранные сообщения из почтового ящика.
Указанные приложения можно реализовать как в консольном варианте, так и с применением GUI. Для реализации можно использовать Java-Swing, AWT, C# - .Net , C++ - QT, Python.
3.4 Лабораторная работа №3 Моделирование протоколов канального уровня
Основные протоколы канального уровня, рассматриваемые в данной работе, соответствуют стандартным топологиям локальных сетей: звезда, шина и кольцо, им в свою очередь соответствуют такие известные технологии как 100VGAnyLan, Ethernet, Token Ring, FDDI.
Ethernet. (самый распространённый стандарт локальных сетей ieee 802.3)
Технология ethernet использует метод доступа к среде CSMA/CD — коллективного доступа к несущей и обнаружением коллизий и логической общей шиной, данный метод произошел из радиосетей. Все компьютеры имеют общий доступ к одной среде или шине для передачи данных, все компьютеры могут получать данные из такой среды. Перед отправкой кадра каждый узел сети проверяет занят ли в данный момент канал, анализируя наличие несущей частоты в канале — 5 — 10Мгц, если она присутствует то узел ждет освобождения канала для передачи, если канал свободен, то узел отправляет кадр, после отправки кадра идет 9.5 мкс интервал простоя. Часто в такой сети при интенсивной загрузке возникают коллизии если два узла сразу отправляют кадр обнаружив канал свободным, что искажает кадры и сигналы. Обнаружение коллизии осуществляется всеми узлами, при этом узел обнаруживая коллизию усиливает ее отправляя специальную 32 битовую последовательность. Отправляющий узел зафиксировавший коллизию должен прекратить передачу кадра и осуществить повторную отправку через случайный интервал времени, при повторной коллизии интервал времени выбирается случайным образом из большего диапазона до 54 мс. При нормальной передаче кадр воспринимается всеми узлами, если поле адреса совпадает с получателем, то кадр записывается в буфер узла, затем отправляется ответ узлу отправителю. Технология предусматривает, что в определенных ситуациях коллизия может быть не обнаружена и поврежденный кадр будет принят, когда, например, кадр распространяется быстрее, чем коллизия распространится по всей шине. Для этого приняты соглашения о максимальной длине шины и минимальном размере передаваемого кадра. С одной стороны протоколы верхнего уровня могут решить эту проблему при анализе контрольных сумм, но это внесет дополнительные проблемы со скоростью передачи. Таким образом, принято, что максимальная длина шины 500 м и 2500 м при сегментировании сети повторителями и 576 бит отведено на минимальный кадр. Пропускная способность составляет от 5 до 10 Мбит в сек. Существует четыре вида кадра данной технологии. Кадр стандарта 802.3llc, являющий кадром уровня mac состоит из поля преамбулы 7 байт синхронизирующих бит 10101010 и завершающего 8-го 10101011. Адрес назначения — 2 или 6 байт, Обычно 6 байт, первый старший бит указывает является ли адрес групповым, или индивидуальным. Групповой адрес может предназначаться всем узлам сети или группе, для широковещательного адреса используется последовательность из единичных битов. Второй бит определяет назначен ли адрес централизовано или локально, обычно 0 — централизовано. 22 старших бита кодируют номер компании выдаваемый организаций ieee, остальные три байта даются компании для кодирования своих интерфейсов устройств. Далее адрес источника, 2 или 6 байт, с 0м старшим битом. Далее двубайтовое поле определяющее длину поля данных. Поле данных 0 — 1500 байт. Поле заполнения для обеспечения минимальной длины поля данных 46 байт. Поле контрольной суммы по алгоритмы crc -32, 4 байта. В поле данных данного кадра вкладывается mac подуровня вкладывается llc кадр.
Другие три типа кадров усовершенствованы добавлением дополнительного поля type — два байта указывающий протокол более высокого сетевого уровня (напр. IP - 0x0800) (тоже что и sap), причем номера sap и type не совпадают для одного протокола. Также доблавяется дополнительный байт кодирующий номер организации контролирующей номера поля type. Например, ip протокол в сетях ethernet использует как раз такой кадр llc/snap, в сетях fast ethernet, ethernet/dix, только с полем type и без вложения кадра llc.
Распознавание типа кадра делается по остаточным битам поля длины поля данных, т. к. максимальная длина данных 1500 байт, остальные биты под тип кадра ethernet.
Выработано несколько спецификаций ethernet для различных типов физических сред передачи данных — коаксиальные, витая пара, оптоволокно. 10Base-2, 10Base-5, 10Base-T, 10Base-F, первые основаны на применении коаксиальный кабелей с заглушками на концах проводов, две последние основаны на топологии звезда на основе концентраторов, узел подключается через витую пару ко входу концентратора для передачи сигнала и к выходу концентратора для приема, концентраторы между собой образуют связь и логическое соединение шина. При этом концентраторы могу выстраиваться между собой в иерархическую связь, для обнаружения коллизий должно соблюдаться правило — число концентраторов между двумя узлами не более 4-х или правило четырех хабов.
Технология Token Ring (ieee 802.5).
Сети Token Ring используют разделяемую среду передачи данных, которая состоит из отрезков кабеля, соединяющих все станции сети в кольцо. Скорость работы сети может быть 4 и 16 Мбит в с. Технология обладает свойством отказоустойчивости. Для контроля сети одна из станций выполняет роль активного монитора, который выбирается во время инициализации кольца как станция с максимальным MAC адресом. Если активный монитор выходит из строя, то процедура инициализации повторяется и выбирается новый активный монитор. Чтобы сеть могла обнаружить отказ активного монитора, он каждые три секунды отправляет специальный кадр своего присутствия. Если этот кадр не появляется более 7 ми секунд, то остальные станции начинаю процедуру выбора активного монитора. Для обеспечения доступа станций к физической среде по кольцу циркулирует кадр специального формата и назначения — маркер. В сети tr любая станция всегда получает данные только от предыдущей в кольце станции — ближайший активный сосед выше по потоку. Передачу данных станция всегда осуществляет своему ближайшему соседу вниз по потоку. Получив маркер, станция анализирует его и при отсутствии у нее данных для передачи обеспечивает его продвижение к следующей станции. Станция, которая имеет данные для передачи, при получении маркера изымает его из кольца, что дает ей право доступа к физической среде. Станция выдает в кольцо кадр данных последовательно по битам. Переданные данные проходят по кольцу всегда в одном направлении от одной станции к другой. Кадр снабжен адресом источника и адресом назначения. Все станции ретранслируют кадр побитно. Если кадр распознан станцией назначения, то она копирует кадр в свой внутренний буфер и вставляет в кадр признак подтверждения приема. Станция, выдавшая кадр данных в кольцо, при обратном его получении с подтверждением приема изымает кадр из кольца и передает в сеть новый маркер. После истечения времени удержания маркера станция обязана прекратить передачу собственных данных, обычно при этом время удержания 10 мс, со скоростью 4 мбит в сек, можно передать 5000 байт 1 или более кадров. Существует процедура раннего освобождения маркера когда станция сразу после передачи последнего бита кадра не дожидаясь подтверждения о приеме кадра станцией назначения, передает маркер доступа другой станции. Для различных видов сообщений кадрам может назначаться приоритет, от 0 (низший) до 7(высший). Станция имеет захватить маркер если она имеет кадры для передачи того же или высшего приоритета чем приоритет маркера, иначе маркер передается следующей станции. За наличие единственного в сети маркера отвечает активный монитор, если активный монитор не получает долго время маркера, он порождает новый.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |


