Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей. |
Транспортный и прикладной уровни модели сетевого взаимодействия.
Тестирование производительности сети с помощью утилиты iperf
Утилита iperf является простейшим средством для тестирования пропускной способности между двумя сетевыми узлами. Iperf представляет собой генератор TCP/UDP трафика и имеет клиент-серверную архитектуру [ 34 ] .
Для установки данной утилиты из репозиториев Debian:
# apt-get install iperf
Для тестирования сетевого соединения на одном из узлов iperf,следует запустить в режиме сервера (ключ -s ):
# iperf -s
а на другом — в режиме клиента (ключ -c с указанием адреса сервера):
$ iperf -c 192.168.1.12
$ iperf -c 192.168.1.12 ------------------------------------------------------------ Client connecting to 192.168.1.12, TCP port 5001 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.3 port 51670 connected with 192.168.1.12 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 85.4 MBytes 71.6 Mbits/secЛистинг 7.4. Результат работы клиента iperf
По умолчанию iperf использует протокол TCP. Для использования протокола UDP следует указать ключ -u. Более подробную информацию о параметрах iperf можно получить в руководстве пользователя ( man iperf ).
Протоколы прикладного уровня
Прикладные протоколы обеспечивают доступ к прикладным сетевым сервисам и службам. Сетевые службы предоставляют пользователям определенные информационные услуги и обычно имеют клиент-серверную архитектуру (реже распределенную). Клиент и сервер в рамках прикладного протокола обмениваются стандартными сообщениями (часто текстового формата) [ 7 ] .
Наиболее известные прикладные протоколы:
- HTTP - протокол передачи гипертекста (основное средство передачи WEB-контента).
- Почтовые протоколы SMTP (для отправки почтовых сообщений и взаимодействия почтовых серверов), POP3 и IMAP (для доступа к почтовым ящикам).
- Протокол FTP (для обмена файлами).
- DNS — протокол взаимодействия с серверами DNS и т.д.
Многие протоколы прикладного уровня имеют защищенные версии, позволяющие шифровать передаваемую информацию между клиентом и сервером, а также идентифицировать участников сетевого взаимодействия ( SSL и TLS ).
Для задачи диагностики прикладных протоколов полезна утилита telnet, которая обычно присутствует в современных дистрибутивах Linux и позволяет пользователю взаимодействовать с текст-ориентированными TCP -сервисами средствами интерфейса командной строки.
Установка утилиты telnet:
# apt-get install telnet
Основными параметрами telnet выступают имя или адрес сервера и порт.
# telnet 192.168.1.10 110 Trying 192.168.1.10... Connected to 192.168.1.10 Escape character is '^]'. +OK test.local Zimbra POP3 server ready user testuser +OK hello testuser, please enter your password pass testpassword +OK server ready list +OK 6 messages 1 4763 2 7581 3 3348 4 4449 5 2437 6 3350 quit +OK test.local closing connection Connection closed by foreign host.
В данном примере с помощью утилиты telnet осуществляется подключение по протоколу POP3 к почтовому серверу (192.168.1.10), слушающему на 110 порту. Клиент передает команды, завершая их переводом строки ( user, pass, list, quit ), а сервер каждую команду выполняет. Прикладной протокол POP3 используется клиентом для работы с почтовым ящиком на сервере; как видно из примера является диалоговым текст-ориентированным протоколом.
Используя telnet можно работать с такими текст-ориентированными протоколами как HTTP, POP3, SMTP и т. д. Можно также просто проверять наличие службы на данном порту без знания непосредственно синтаксиса протокола.
Ключевые термины
Порт — номер, используемый для идентификации канала передачи приложения, работающего по данному протоколу транспортного уровня.
Сокет — оконечная точка канала связи, с помощью которой приложение может использовать сетевое подключение (пара IP-адрес:порт однозначно определяющая сетевой процесс).
ТСP (Transmission Control Protocol) — протокол транспортного уровня с установлением соединения, управлением потоком передачи и гарантированной доставкой данных.
UDP (User Datagram Protocol) — протокол транспортного уровня без установления соединения и не гарантирующий доставку.
Сегменты — единицы передачи протокола TCP.
Датаграммы — единицы передачи протокола UDP.
Клиент-серверная архитектура — подход к организации информационной системы, при котором сетевая нагрузка распределены между сервером (поставщиком услуг) клиентом (потребителем услуг).
HTTP (HyperText Transfer Protocol) - прикладной протокол передачи WEB-контента.
SMTP (Simple Mail Transfer Protocol) — прикладной почтовый протокол, используемый для отправки сообщений электронной почты и взаимодействия серверов электронной почты друг с другом.
POP3 (Post Office Protocol Version 3) — прикладной почтовый протокол, используемый программой-клиентом электронной почты для получения корреспонденции с сервера.
IMAP (Internet Message Access Protocol) — протокол прикладного уровня для доступа к электронной почте с расширенными возможностями.
FTP (File Transfer Protocol) — прикладной протокол, используемый для передачи файлов
SSL (Secure Sockets Layer) - криптографический протокол обеспечивающий защищенное соединение между клиентом и сервером.
TLS (Transport Layer Security) — открытая версия протокола SSL.
Краткие итоги
- Протоколы транспортного уровня реализуют разделение потоков данных между приложениями на одном компьютере с помощью портов. Нумерации портов различных протоколов транспортного уровня не пересекаются. Номера портов записываются в заголовок единицы передачи соответствующего транспортного протокола.
- Поверх IP используются два транспортных протокола: TCP (для надежной доставки) и UDP (для " быстрой" доставки).
- Утилиты ss и netstat позволяют получить различную информацию об активных сетевых соединениях и открытых портах.
- Утилита IPTraf позволяет в " режиме реального времени" получать информацию о работе сети и взаимодействии систем друг с другом.
- Для тестирования полосы пропускания канала связи между двумя системами можно использовать утилиту iperf.
- Большинство протоколов прикладного уровня являются текст-ориентированными (взаимодействующие системы обмениваются текстовыми сообщениями друг с другом).
Упражнения
- (требуется Windows -совместимая ОС). Используя утилиту netstat Windows определите, какие TCP и UDP -порты открыты на Вашем компьютере.
- В среде VirtualBox запустите две виртуальные машины с установленным Debian GNU\Linux с одной сетевой картой у каждой, настроенной на тип сетевого подключения "Внутренняя сеть". Установите на виртуальных машинах IP-адреса из одной подсети. Используя утилиту iperf, протестируйте пропускную способность виртуальной сети VirtualBox.
- Некоторая сетевая TCP -служба не запускается в системе с Linux.
Укажите более вероятную причину:
- Описание порта, который использует служба, отсутствует в файле /etc/services.
- Порт занят другим приложением.