КОВАЛЕНКО
ЧАСТЬ 1
ОМСК 2015
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
Омский государственный университет путей сообщения
Д. И. Бизин, О. Н. Коваленко
Часть 1
Омск 2015
УДК 004.716 (075.8)
ББК 32.882.1-5я73
Б59
___________________________________
© Омский гос. университет
путей сообщения, 2015
3
ОГЛАВЛЕНИЕ
Введение .................................................................................................................. 5
Лабораторная работа 1. Сервер eDonkey2000 ........................................................ 6
1.1. Краткие сведения из теории ......................................................................... 6
1.2. Порядок выполнения работы...................................................................... 13
1.3. Содержание отчета...................................................................................... 15
1.4. Контрольные вопросы................................................................................. 15
Лабораторная работа 2. Интерфейс и настройки программы eMule v0.94b ....... 15
2.1. Краткие сведения из теории ....................................................................... 15
2.2. Порядок выполнения работы...................................................................... 30
2.3. Содержание отчета...................................................................................... 31
2.4. Контрольные вопросы................................................................................. 31
Библиографический список................................................................................... 31
34
ВВЕДЕНИЕ
5
Лабораторная работа 1
СЕРВЕР eDonkey2000
6
Главным преимуществом такой системы является ее простота. Вся ин-
формация хранится в одном месте, поэтому ею легко управлять и поддерживать
ее достоверность.
В централизованных сетях сервер сам по себе неактивен, т. е. он не обра-
щается к компьютерам пользователей с просьбами, не осуществляет их поиск, а
ждет, когда сами пользователи обратятся к нему с запросом. По такому прин-
ципу работают протоколы HTTP (протокол передачи гипертекста) и FTP (про-
токол передачи файлов).
Децентрализованные оверлейные сети – это компьютерные сети, осно-
ванные на равноправии участников. В таких сетях отсутствуют выделенные
серверы, а каждый узел является как клиентом, так и сервером. Принцип, на
котором основана работа оверлейных децентрализованных сетей, – это система
«клиент – клиент», где отдельные пользователи обращаются друг к другу. В от-
личие от архитектуры «клиент – сервер» такая организация позволяет сохра-
нять работоспособность сети при любом количестве и любом сочетании дос-
тупных узлов. Такие сети называют еще одноранговыми.
Примерами децентрализованных оверлейных сетей являются сети VPN,
пиринговые сети, FreeNet, I2P (Invisible Internet Project), Gnutella, TOR (The Onion
Router), Psiphon.
Существует два типа децентрализованных сетей: сети без координирую-
щего сервера (рис. 1.2, а) и гибридные сети (рис.1.2, б).
В децентрализованных сетях клиенты обращаются друг к другу с запро-
сом на передачу какого-либо файла напрямую без участия сервера. В гибрид-
ных сетях серверы присутствуют, но через них не строится связь, они выпол-
няют лишь координирующие функции и содержат информацию о пользовате-
лях, списки доступных у пользователей файлов и т. д.
Рассмотрим принцип функционирования оверлейных децентрализованных
сетей на примере пиринговых сетей. В пиринговой сети каждый клиент взаимо-
действует напрямую лишь с некоторым подмножеством узлов сети. При необхо-
димости передачи файлов между не контактирующими напрямую узлами сети
связь осуществляется либо через узлы-посредники, либо по временно установ-
ленному прямому соединению. Данное соединение специально устанавливается
на момент передачи. Пиринговые сети в своей работе используют свой собст-
венный набор протоколов и ПО.
Координирующие серверы в пиринговых сетях ведут базу данных, в ко-
торой хранятся IP-адреса клиентов сети, общедоступные файлы у клиентов, ме-
стонахождение фрагментов файлов, количество загруженной и переданной каж-
дым клиентом информации.
7
Работа в пиринговой сети строится следующим образом.
Пользователи файлообменной сети выкладывают какие-либо файлы в ди-
ректорию, содержимое которой доступно для скачивания другим пользовате-
лям. Список этих файлов при подключении к сети передается на соответст-
вующий сервер, и они становятся доступными для копирования другим клиен-
там, подключенным к тому же узлу.
б
Рис. 1.2. Модели децентрализованных сетей:
а – сеть без координирующего сервера; б – гибридная сеть
8
Клиент запрашивает в сети требуемый файл. Происходит этап поиска
нужного файла по данным, хранящимся на сервере. Если нужный файл имеет-
ся, сервер передает клиенту IP-адреса других клиентов, у которых данный файл
был найден. Клиент, запросивший файл, устанавливает прямое соединение с
этими клиентами и начинает его загружать. Любой файл копируется по кусоч-
кам от нескольких пользователей одновременно. Клиент сам находит тех, у кого
есть недостающие фрагменты, и осуществляет их загрузку. При этом вполне
возможна ситуация, когда два пользователя копируют друг у друга разные фраг-
менты одного и того же файла, полученные ими раньше от других пользовате-
лей. Целостность файла проверяется по контрольным суммам.
Т а б л и ц а 1.1
Параметры сервера eDonkey2000
Значение
Параметр Описание параметра
параметра
1 2 3
name Название сервера, которое будет обозна- –
чено в списках клиентов
desc Описание сервера eserver
lowidpercent Максимальный процент пользователей с 20
низким ID (при превышении этого значения
сервер оказывается полностью заполнен-
ным, подключение к нему новых клиентов
невозможно)
hardLimit Жесткий предел (это количество файлов, 4000
которое клиент делает доступным для ска-
чивания. Если клиент превышает этот пре-
дел, сервер отсоединяет его для сохранения
равенства полосы пропускания)
softLimit Мягкий предел (если клиент делает дос- 1000
тупным количество файлов, превышающее
этот предел, сервер посылает ему предупреж-
дение и игнорирует избыточные файлы)
9
О к о н ч а н и е т а б л. 1.1
1 2 3
maxClients Максимальное число клиентов для дан- 1000
ного сервера
max_frame_size Максимальный размер кадра (если кли- 250000
ент посылает кадр размером, превышаю-
щим это значение, сервер отсоединяет его)
max_string_size Максимальный размер названия файла 140
maxSearchCount Максимальное число источников на зап- 200
рос файла (для подключенного к этому сер-
веру клиента)
maxUDPSearch- Максимальное число источников на зап- 20
Count рос файла (для не связанного с этим серве-
ром клиента)
maxVersion У программного обеспечения клиента 2000
есть номер версии (клиентам, имеющим
версию большую, чем это значение, будет
отказано в соединении)
minVersion Клиентам, имеющим версию меньшую, 59
чем это значение, будет отказано в соеди-
нении
maxservers Максимальное количество серверов, ко- 4096
торое данный сервер может добавить в свой
список
port TCP-порт сервера 4661
public Если установлено истинно (true), сервер false
является доступным для других серверов,
которые распространяют его имя для своих
клиентов. Если установлено ложно (false),
то только те клиенты смогут подключиться
к данному серверу, которые знают его IP-
адрес
thisIP IP-адрес сервера –
10
Применение команды vc представлено на рис. 1.3.
vc
[ num] ID IP:port [country versions rcv xmt shares
sources times searches lowid flags] nickname
[ 4] 218147008 192.168.0.13:62751 [c: v:60/0.49b/0/60 r:3742.3 x:75.1.0
p:73/1 S: 0/ 0/ 0 t:60/60/60 s:0/0 l:0/0/0/0 f:zc1nUEh] spi – 265 – 03.
net
[ 8] 234924224 192.168.0.14:4000 [c: v:60/0.49b/0/60 r:1262.2 x:75.1.0
p:24/1 S: 0/ 0/ 0 t:52/52/52 s:0/0 l:0/0/0/0 f:zc1nUEh] spi – 265 – 04.
net
count=2/2 97 shares
Рис. 1.3. Результат применения команды vc
Команда vs (view servers) – просмотр известных серверов – позволяет вы-
вести на экран следующие характеристики:
а) количество серверов, известных данному серверу;
б) IP-адреса, порты серверов;
в) IP-адреса клиентов с LowID (для перенаправления вызовов от клиентов
с HighID);
г) общее число файлов;
д) ограничения (мягкий и жесткий пределы) количества файлов от одного
клиента с целью сохранения равенства полосы пропускания;
е) имена серверов.
Применение команды vs представлено на рис. 1.4.
vs
[ ] IP:port IP_referer users[lowid ]/max files sping/
cping (del) pingtime soft/hard [Refs] Name
Total : 0 users (0 low) 0 files 0 working servers
Рис. 1.4. Результат применения команды vs
vo
maxClients=50 softLimit=1000 hardLimit=4000 thisIP=192.168.0.10 port=4661
11
Команда name=value позволяет присвоить параметру определенное зна-
чение. Например, maxClients=2000 – команда, устанавливающая максимально
возможное количество подключенных к серверу клиентов равным 2000.
Команда print name позволяет напечатать список параметров сервера.
Команды g и stats – просмотр состояния сервера – позволяют получить
развернутую информацию о подключенных клиентах и имеющихся у них дос-
тупных файлах. На экран программы выводится информация не только о коли-
честве клиентов, но и об их разновидности (eMule, eDonkey, Shareaza,
Kademlia). Текущие данные о файлах содержат информацию об общем их ко-
личестве, доступных на данный момент; о количестве среди них единственных,
общих и оцененных файлов (с назначенным приоритетом). Также выводится
информация о состоянии TCP- и UDP-портов. Результат применения команды g
представлен на рис. 1.6.
g
2+0/1000 users (2 zlib, 0 obf) (2 emule, 0 mldk, 0 shareaza, 0 +) (0 auxports) (
2 newtags OK) (0 kadenabled)
97 files (95 uniq, 97 complete, 0 rated) (237 keyw) avg=48.5 files/user
( 0 wservers / 0 servers) 0 gusers, 0 gfiles
LOWID : enable (%20 percent), 0 users, 0 glowusers
TCP stats :
0 Searches 0 MoreSearches 0 GetSources 0 GetSources2 97 Publishes 0 Callb
acks
Total : 5220 bytes received
2 Pings sent 0 LPings sent 0 server messages sent
0 server ident sent 0 servers list sent 0+0+0+0 Callbacks sent
Total : 278 bytes sent
UDP stats :
slimit: 2/1048576 slots, 0/4 frames
SmartSources : TCP : max=200 nb=7S/55sec 0 hits 0 misses 0 scan 0 reorg
SmartSources : UDP : max=30 nb=5S/75sec 0 hits 0 misses 0 scan 0 reorg
12
Команда slab – распределение памяти – приводит информацию о том, как
память распределена между различными объектами. Вся память разделена на
блоки с размером, кратным степени двойки, которые отводятся для хранения
объектов. Алгоритм распределения памяти slab предусматривает закрепление
за объектом одного и того же блока памяти. Освободившаяся память не воз-
вращается в общий фонд, а остается зарезервированной для использования в
тех же целях. Результат применения команды slab представлен на рис. 1.7.
slab
**** slab dump (dcache_line=64) ****
slab(servers) freelist = 00000000 size = 288 used=0 usedsize=0
slab(keywords) freelist = 00D7C280 size = 64 total_allocated = 512 used=2
usedsize=128
slab(clients) freelist = 00C28600 size = 512 total_allocated = 512 used=2
usedsize=1024
∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
slab(buffers) freelist = 00C68200 size = 3072 total_allocated = 16 used=0
usedsize=0
heap1 total=16777152 reste=16763696 cur=038C34C0
[ 0: 0/ 0+ 0][ 8: 0/ 0+ 17][ 16: 0/ 0+ 19]
[ 24: 0/ 0+ 14][ 32: 0/ 0+ 0][ 40: 0/ 0+ 8]
[ 48: 0/ 0+ 7][ 56: 0/ 0+ 10][ 64: 0/ 0+ 0]
inuse=11352 blocs=95 avg=119
Рис. 1.7. Результат применения команды slab
Команда debug – отладка программы – позволяет выявить и устранить
возникшие ошибки.
Команда netrange выдает перечень сетевых настроек.
Команда reload осуществляет перезагрузку конфигурационных файлов.
Команда m (вводится сообщение) позволяет осуществить широковеща-
тельную рассылку сообщения всем подключенным клиентам.
13
1.2.5. С помощью соответствующих команд собрать информацию о сос-
тоянии пиринговой сети и привести ее в виде таблицы (табл. 1.2).
[server]
name = server_donkey
desc = eserver
thisIP = 192.168.0.10 # The IP of server
port = 4661 # The TCP port
lowidpercent = 20
maxClients = 50
max6+SearchCount = 200
maxVersion = 2000
minVersion = 59
hardLimit = 4000
softLimit = 1000
Т а б л и ц а 1.2
Состояние пиринговой сети
Значение
Объекты
параметра
1 2
Клиенты
Количество клиентов:
всего
с Low ID
Клиент № 1
Имя
IP-адрес
Порт
ID
Количество доступных файлов
Клиент № 2
∙∙∙∙∙
Серверы
Количество серверов
IP-адреса
Порты
14
О к о н ч а н и е т а б л. 1.2
1 2
Файлы
Всего
Единственные
Общие
С приоритетом
Лабораторная работа 2
ID X 28 Y 216 Z 2 24 W , (2.1)
Upload 2
R1 ; (2.2)
Download
(2.3)
R 2 Upload 2 ,
где Upload – переданное количество информации, Мбайт;
Download – загруженное количество информации, Мбайт.
16
Эти коэффициенты сравниваются, и наименьший из них используется в
качестве модификатора. Существуют некоторые граничные условия:
а) если переданное количество информации меньше 1 Мбайт, модифика-
тор устанавливается в единицу;
б) если загруженное количество информации равно нулю, модификатор
оценивается равным десяти;
в) максимальное значение модификатора равно десяти, минимальное –
единице. Если полученные значения выходят за эти пределы, то они понижают-
ся (повышаются) до единицы (десяти) соответственно.
Затем с помощью модификатора вычисляется непосредственно рейтинг.
Если для файлов обмена установлен приоритет, то при определении рейтинга
он также учитывается. Множители, на которые умножается рейтинг в зависи-
мости от приоритета, равны 0,2; 0,6; 0,7; 0,9 и 1,8 для «очень низкого», «низко-
го», «нормального», «высокого» и «очень высокого» приоритетов соответст-
венно. Таким образом, рейтинг Р вычисляется по формуле:
Р =100·М·П, (2.4)
Р T
Q , (2.5)
100
19
предоставленных данных, а ее название в списке будет выделено жирным шриф-
том (рис. 2.4).
21
помощью второй – минимальный процент от этих пользователей, располагаю-
щих полной версией нужного файла.
П ри глобальном методе поиска устанавливать ограничение на доступность
файла и количество полных источников нельзя. Дело в том, что каждый сервер,
участвующий в поиске, имеет свои значения этих параметров, а общее значение
не вычисляется. Поэтому даже когда источников достаточно, но они при этом
располагаются на разных серверах, поиск завершится неудачей.
22
что файл имеет совсем низкую доступность; зеленым выделяются файлы, кото-
рые уже скопированы.
Команда загрузки выбранного файла доступна из его контекстного меню –
выбрать пункт «Прием» или просто дважды щелкнуть на названии файла.
Убедиться в том, что копирование файла началось, можно, перейдя на
вкладку «Передача» с помощью одноименной кнопки.
25
26
Рис. 2.7. Вид окна «Передача»
В окне «Файлы» можно изменить список предоставляемых для скачива-
ния файлов, просмотреть информацию о загружаемых файлах, добавить ком-
ментарии к любому файлу или дать ему собственную оценку. Большинство из
этих функций доступно в контекстном меню правой кнопки мыши. При этом
необходимо выбрать группу файлов для отображения в левой части окна про-
граммы («Все файлы обмена», «Загружаемые файлы», «Папки обмена» и др.).
Окно «Сообщения» позволяет обмениваться сообщениями с пользовате-
лями, занесенными в категорию «Друзья».
Окно «IRC» – это средство общения пользователей по сети Интернет в
режиме реального времени. Для подключения нужно нажать кнопку «Соедине-
ние» в левой нижней части окна, и программа попытается установить связь с
IRC-сервером (irc.freshirc.com, адрес выставлен по умолчанию). В лаборатории
данная функция программы eMule не доступна.
Окно «Статистика» – информативное окно, из которого можно узнать все
подробности о сетевом трафике, переданных и полученных файлах, времени
работы с программой, подключенных серверах и другие сведения о работе про-
граммы.
27
Вкладка «Прокси» используется при работе с программой через прокси-
сервер. Нужно выбрать тип прокси-сервера, указать его адрес и порт. В случае
необходимости придется ввести еще и имя пользователя и пароль для входа на
сервер. В рамках лабораторного комплекса данная вкладка не используется.
Во вкладке «Сервер» важными являются настройки автоматического об-
новления списка серверов. Опция «Автообновление серверов при старте» по-
зволяет загружать новые списки из Интернета. Можно обновлять списки серве-
ров и другим способом – с компьютера подключенного пользователя или с сер-
веров, с которыми уже установлено соединение. Лучше всего использовать все
три возможности обновления одновременно.
Опция «Безопасное соединение» относится к настройкам защиты програм-
мы. В случае, когда в процессе подключения к серверу клиент получает LowID,
серверу может быть передана дополнительная информация о его компьютере.
Если включить флажок «Безопасное соединение», эта информация передавать-
ся не будет и доступ к серверу будет закрыт. В результате eMule попытается
подключиться к другому серверу.
Во вкладке «Папки» указываются папки для временных и скачиваемых
файлов и папки с предоставленными для загрузки файлами.
Вкладка «Файлы» имеет ряд настроек операций над файлами. Значение
каждой из опций вполне понятно из названия.
Вкладка «Уведомления» служит для настройки звуковых сигналов и
всплывающих сообщений, позволяет настроить реакцию программы на различ-
ные события.
Как и само окно статистики, настройки вкладки «Статистика» практи-
чески не влияют на параметры загрузки файлов. Единственное, о чем стоит
здесь сказать, – если программа будет отнимать у системы слишком много ре-
сурсов, нужно увеличить время обновления ее данных.
Чтобы войти в чат, нужно на вкладке «IRC» в поле «Имя» указать свое
имя, а в поле «Сервер» – адрес сервера чата. В рамках лабораторного комплекса
данная вкладка не используется.
Фильтр сообщений во вкладке «Сообщения и комментарии» позволяет
отклонить ненужные сообщения, содержащие определенный текст. Этот текст
записан в поле «Фильтровать сообщения, содержащие:», причем строки фильт-
ра разделены между собой символом «|». Желательно включить флажок «Рас-
ширенный спам-фильтр», чтобы уменьшить число нежелательных сообщений.
Вкладка «Безопасность» позволяет настроить параметры безопасности.
Для ограничения доступа к определенным IP-адресам нужно ввести их уровень
в одноименное поле либо нажать на кнопку «Редактор», которая откроет файл
«ipfilter.dat» в блокноте. «Ipfilter.dat» – это файл-«черный список» IP-адресов.
28
Вкладка «Планировщик» позволяет выполнять действия по расписанию.
Можно запускать и останавливать закачки, изменять ограничения приема и пе-
редачи данных, число источников и подключений в назначенное время. Чтобы
добавить новое задание, необходимо нажать кнопку «Новый», после этого в
поле «Имя» ввести его название, щелкнуть правой кнопкой мыши на поле
«Действия» и в появившемся меню выбрать один из пунктов: «Лимит отдачи»
(изменение максимальной скорости скачивания данных), «Лимит приема» (из-
менение максимальной скорости загрузки данных), «Ограничение источников»,
«Максимальное число соединений» и др. После добавления всех необходимых
действий необходимо включить флажок «Включен» в поле «Планировщик» и в
поле «Детали».
Вкладка «Web-cepвep» позволяет создать собственный web-сервер для
удаленного управления программой eMule с другого компьютера. Для его ис-
пользования достаточно установить флажок «Включен» и ввести пароль адми-
нистратора в поле «Пароль». После этого можно набрать адрес компьютера (в
формате http://ip:порт/), на котором установлена программа eMule, ввести па-
роль и работать с программой почти так же, как с собственного компьютера.
Все настройки, не относящиеся к описанным выше вкладкам, содержатся
во вкладке «Другие настройки». Наиболее же полезные из настроек данной
вкладки приведены ниже.
Опция «Максимальное количество соединений за 5 секунд» – не реко-
мендуется выставлять значение этой настройки больше 25 – 30.
Опция «Максимальное число полуоткрытых соединений» – это макси-
мальное количество соединений, которые открыты, но не используются в теку-
щий момент. Разработчики eMule рекомендуют не выставлять этот параметр на
значение больше 9 в Windows XP SP2, в других операционных системах –
больше 50. Чем меньше максимальное число полуоткрытых соединений, тем
медленнее идет обмен данными.
Опция «Использование кредитной системы» повышает вероятность уве-
личения скорости скачивания файлов.
Опция «Фильтровать LAN IP серверов и клиентов» – для пользователей
локальной сети при необходимости обмена с другими пользователями этой же
сети данная опция должна быть отключена. Если локальной сети нет, эта
настройка защитит от некорректных источников, когда пользователи локальных
сетей передают неверные IP-адреса.
При включении флажка «Дополнительные опции управления» становятся
доступными дополнительные возможности eMule. Для нормальной работы про-
граммы можно ограничиться и стандартным набором, а для опытных пользова-
телей можно его расширить.
29
Опция «Отключить скачивание с PeerCache» имеет следующее значение.
«PeerCache» – это система, предназначенная для ускорения загрузки файлов.
Работает она довольно просто: если провайдер поддерживает такую систему, то
когда несколько пользователей будут скачивать один и тот же файл, он будет
загружен на сервер провайдера, в результате скачивание пройдет значительно
быстрее.
Опция «Безопасная запись .met/ .dat» позволяет установить режим записи
файлов загрузки.
30
2.3. Содержание отчета
Библиографический список
31
Учебное издание
Часть 1
Учебно-методическое пособие
________________________________
Редактор Н. А. Майорова
Корректор И. А. Сенеджук
***
**
32