Mail.ru – Агент

advertisement
Оглавление
Некоторые программы относящиеся к этой теме .................................................................................... 2
Mail.ru –Агент ............................................................................................................................................... 3
Функции программы ............................................................................................................................ 3
Mail.Ru Агент и Linux................................................................................................................................ 5
Skype ............................................................................................................................................................. 6
Что такое Skype ........................................................................................................................................ 6
Сравнение Skype с другими программами ..................................................................................... 7
Особенности.............................................................................................................................................. 7
Системные требования ......................................................................................................................... 7
DropBox......................................................................................................................................................... 7
Возможности........................................................................................................................................... 8
История ................................................................................................................................................... 8
Как работает DropBox .................................................................................................................................. 8
Начинаем ................................................................................................................................................ 8
Файлы...................................................................................................................................................... 9
События .................................................................................................................................................. 9
Общие папки и файлы .......................................................................................................................10
Как использовать DropBox?..............................................................................................................11
FTP ...............................................................................................................................................................12
Проблема безопасности ......................................................................................................................12
Основные команды .............................................................................................................................13
Пример ..................................................................................................................................................13
PASSIVE MODE...............................................................................................................................14
NAT-PT ..............................................................................................................................................14
FXP .........................................................................................................................................................14
utorrent .......................................................................................................................................................15
Файл метаданных................................................................................................................................15
Принцип работы протокола..............................................................................................................15
Алгоритм обмена данными ...........................................................................................................17
Режим End game ..............................................................................................................................17
Сидирование.....................................................................................................................................17
Общие особенности .........................................................................................................................18
Протоколы и порты ............................................................................................................................18
Трекер ....................................................................................................................................................18
Работа без трекера ...........................................................................................................................19
Работа без торрент-клиента ..............................................................................................................19
Web-сиды ..............................................................................................................................................19
BTIH (BitTorrent Info Hash)...............................................................................................................20
BTC-ссылка ..........................................................................................................................................20
Недостатки и ограничения ................................................................................................................20
Недоступность раздачи ..................................................................................................................20
Отсутствие анонимности и персонализации .............................................................................20
Проблема личеров ...........................................................................................................................21
Отсутствие точного учета трафика .............................................................................................21
Терминология ......................................................................................................................................21
Программы-клиенты..........................................................................................................................23
Кроссплатформенные .....................................................................................................................23
GNU/Linux, UNIX ............................................................................................................................24
Windows .............................................................................................................................................24
Mac OS ...............................................................................................................................................24
Android ..............................................................................................................................................24
Некоторые программы относящиеся к этой теме
Mail.ru – Агент
Skype
DropBox
FTP
Utorrent
Это некоторые из программ которые можно сюда отнести, так же есть сайты для обмена
данными:
Ifolder.ru
http://depositfiles.com
это тоже не все сайты, которые существуют для этих целей.
Mail.ru –Агент
Мail.Ru Агент — бесплатная программа для быстрого обмена сообщениями через
Интернет, разработанная компанией Mail.ru в 2003 году.
Помимо быстрого обмена сообщениями, программа поддерживает также возможности IPтелефонии, видеозвонки и бесплатную отправку SMS, а также уведомляет о новой почте,
пришедшей по email. При нажатии на уведомление открывается страница с веб-почтой.
Любой пользователь Mail.ru может загрузить себе программу с официального сайта. Для
входа в программу необходимо использовать учётную запись в доменах @mail.ru,
@inbox.ru, @list.ru, @bk.ru. Учётные записи из других доменов не поддерживаются.
Сервис бесплатный. Работу голосовых сервисов Mail.Ru Агент обеспечивает Sipnet.[3]
По утверждениям компании Mail.ru, у Mail.Ru Агент 21 млн пользователей в месяц (за
счёт того, что Mail.Ru Агент зачастую устанавливается на компьютер вместе с другим
софтом без ведома пользователя), в одну и ту же минуту онлайн находятся более 3 млн
человек.[4]
Начиная с версии 5.2, официальный клиент поддерживает протокол ICQ.
В августе 2008 года Mail.ru приобретает российскую компанию Smape, выпускавшую
один из самых популярных на тот момент ICQ-мессенджеров для смартфонов - SmapeR.
На основе этого продукта, в декабре 2008 года Mail.ru выпустила Мобильный Агент для
смартфонов, работающих под управлением операционной системы Symbian.[7]
29 июля 2010 года версия Mail.Ru Агента разработана для операционной системы Android
Начиная с версии 5.8 (от 21 апреля 2011 года), официальный клиент начинает
поддерживать частично протокол XMPP (Jabber)[ , таким образом стали доступны такие
социальные сети и службы обмена мгновенными сообщениями как В Контакте,
Одноклассники.ru, Facebook, Google Talk, Я.Онлайн, QIP, LiveJournal и др.
В версии 5.9 произошла интероперабельность (ˌɪntəɹɒpəɹəˈbɪləti, (англ.) interoperability)
протоколов на стороне серверов Mail.Ru Агента и ICQ — пользователи Mail.Ru Агента
могут добавлять в свои списки контактов пользователей ICQ и наоборот. Пока данная
функция работает в тестовом режиме.
Внутренний протокол обмена данными Mail.Ru Агента является частично открытым. В
частности, в документации протокола нет описания VoIP-звонков и игр. К тому же,
описание протокола не обновляется в соответствии с действующей версией протокола
между официальным серверным и клиентским ПО.
В настоящее время уже разработаны версии мессенджера для почти всех популярных
платформ — Windows, Mac OS, Java, Windows Mobile, Symbian, iPhone и Android. Кроме
того, существует специальная версия Mail.Ru Агента, не требующая установки и
работающая прямо в браузере в почтовом сервисе или социальной сети портала — ВебАгент.
Функции программы









Мгновенный обмен расширенными текстовыми сообщениями, а также:
o Возможность вставки графических смайликов (65 статических, 65
анимированных маленьких, 52 анимированных больших) и Flash-мультов
(24 шт.);
o Проверка орфографии в сообщениях;
o Публикация коротких сообщений (до 500 символов) по типу «что я сейчас
делаю» (функция «Микроблогинг»);
o Отправка сообщений нескольким контактам;
o Конференции — одновременная переписка между тремя и более
контактами;
o Отправка контактов;
Отправка бесплатных текстовых сообщений на мобильные телефоны;
Звонки на телефоны непосредственно из программы;
Видео- и аудиозвонки контактам;
Отправка и приём файлов (до 4 Гб);
Интеграция с:
o Проектами Mail.ru:
 Онлайн-игры — 88 мини-игр, 43 клиентских игр, 743 простых игр,
149 игр для PC;
 Электронная почта (@mail.ru, @list.ru, @bk.ru, @inbox.ru);
 Микроблог
 И другие.
o ICQ;
o Одноклассники;
o ВКонтакте;
o Facebook;
o Google Talk;
o Я.Онлайн;
o QIP;
Поиск новых контактов:
o По анкетным данным:
 По присутствию в онлайне;
 Псевдониму;
 Имени;
 Фамилии;
 Полу;
 Стране;
 Региону;
 Дню рождения (знаку зодиака).
o По местоположению на карте;
o По наличию веб-камеры.
Возможность видеть статус собеседника (в отдельном окошке) и отправлять ему
сообщения, не открывая полный список контактов (функция «Плавающие
контакты»);
Возможность найти знакомых, при наличии созданной страницы на проекте Мой
Мир@mail.ru (функция «Возможно, вы знакомы»):
o Через общих друзей;
o По схожим анкетным данным:
 Названиям города;
 Названиям улицы;
 Номерам дома (квартиры);
 Названиям учебного заведения, места работы или места отдыха;
И тому подобное.
o По переписке электронными письмами;
Дополнительные учётные записи;
Определение географического положения на карте;
Защита от спам-сообщений;
Уведомления о новой версии программы;
Формирование списков видимости и игнорирования;
Настройка цветовой гаммы;
Поддержка операционных систем Windows 2000/XP/Vista/7 и Mac OS X;








Mail.Ru Агент и Linux
Официальный Mail.ru Агент версии 5.6 способен эмулироваться с помощью Wine после
установки библиотек Winetricks, поэтому возможно использование на всех компьютерах
оснащенных операционной системой основанной на ядре Linux. В одном из сообществ
Мой мир@Mail.Ru — «Пингвины рулят миром! /Linux/» опубликовано подробное
описание по использованию Mail.Ru Агента в Linux.
Поддержка Mail.Ru агента есть в некоторых кроссплатформенных IM-клиентах, таких как
qutIM и Pidgin (с помощью плагинов mrim-prpl, pidgin-mra). Использование аккаунта
Mail.Ru агента в Linux также возможно в любом jabber-клиенте через Jabber-транспорт,
например mrim.jabber.ru.
1) Диалоговое окно
2) Окно ввода текста
3) Вкладки
Так же можно пересылать файлы и папки через этот ресурс
Skype
Что такое Skype
Skype — абсолютно бесплатная программа, с помощью которой вы можете звонить свом друзьям, где бы
они не находились, главное чтобы они тоже были пользователями Skype. Программа позволяет свободно и,
что самое главное, бесплатно общаться в сети Интернет! Как и программа KaZaA, Skype использует P2P
технологию для соединения с другими пользователями — только теперь не для обмена файлами, а для
общения в сети.
Однако новизна программы отнюдь не в том, что можно находясь за своим компьютером звонить друзьям
через Интернет. Подобные разработки уже давно существуют, например: Net2Phone, AIM и многие другие.
Главное же отличие Skype от них заключается в использовании технологии P2P, развитой создателями
KaZaA и Jolted. Благодаря ее применению обработка всей информации ведется на компьютерах людей,
которые в данный момент общаются, а для ее передачи используется самый короткий путь. Как уверяют
создатели, они не используют никаких серверов для переадресации и хранения данных, даже адресная книга
и та храниться исключительно у самих абонентов. Все это позволяет заметно повысить качество звука и
скорость передачи информации. Совсем не обязательно иметь высокоскоростное интернет-соединение,
программа позволяет общаться даже на модемной скорости! Только все же необходимо учесть, что чем
качественнее ваше подключение, тем, соответственно, выше и качество звука.
Сравнение Skype с другими программами
Skype
Net2Phone
MSN Messenger,
ICQ, AIM, Yahoo
Messenger
Другие клиенты
для голосовой
связи
Работа со всеми
брендмауерами
Не требует
конфигурирования
Неограниченные звонки к
другим абонентам
Качество звука
Иногда
Лучше,
чем по
телефону
Хуже,
чем по
телефону
Хуже,
чем по телефону
Хуже,
чем по телефону
Безопасность и
шифрование соединений
100% без рекламы
Иногда
Особенности



Неограниченные временем и расстоянием звонки другим абонентам Skype;
Превосходное качество звука;
Работа на любом компьютере без каких-либо дополнительных настроек программного
обеспечения;

Благодаря удобному списку абонентов, всегда можно увидеть кто в сети, а кто отошел;

Шифрование всех разговоров;

Отсутствие рекламы;

Технология P2P (peer-to-peer), развитая создателями KaZaA и Joltid.
Системные требования
Для того чтобы использовать Skype компьютер должен соответствовать следующим минимальным
требованиям:

Операционная система Windows 2000 или XP;

Процессор 400 MHz;

128 MB оперативной памяти;

15 MB свободного места на диске;

Звуковая карта, наушники + микрофон (гарнитура);

Соединение с Интернетом на скорости не ниже 33.6 Kbps.
DropBox
Dropbox (читается как Дропбо́кс) — облачное хранилище данных, принадлежащее
компании Dropbox Inc., позволяющее пользователям хранить свои данные на серверах в
облаке и разделять их с другими пользователями в Интернете. Работа построена на
синхронизации данных.

Возможности
Dropbox позволяет пользователю размещать файлы на удалённых серверах при помощи
клиента или с использованием веб-интерфейса через браузер. Хотя главный акцент
технологии делается на синхронизации и обмене информацией, Dropbox ведёт историю
загрузок, чтобы после удаления файлов с сервера была возможность восстановить данные.
Также ведётся история изменения файлов, которая доступна на период последних 30 дней,
кроме этого доступна функция бессрочной истории изменения файлов «Pack-Rat».
История изменения файлов ведётся по принципу дельта-кодирования, чтобы сэкономить
место, занимаемое файлами. В истории изменения записывается только отличие одной
версии файла от другой. Файлы, загруженные через клиент, не имеют ограничения на
размер, но файлы загруженные через веб-интерфейс ограничены 300 МБ . Есть также
возможность выкладывать файлы для общего доступа через папку «Public», что позволяет
использовать сервис в качестве файлообменника. В версиях 0.8.x также появилась
возможность предоставления в общий доступ любой папки в «My Dropbox» для
последующего доступа через так называемый «shareable link», то есть через вебинтерфейс. Для совместной работы над проектами сервис имеет возможность создания
«Shared» папок для общего доступа лиц, имеющих разные учетные записи на сервисе.
Доступна автоматическая синхронизация файлов и папок и хранение версий с
возможностью отката..
В отличие от ряда аналогов, Dropbox не использует шифрование данных на стороне
клиента, что, в частности, сделало возможным инцидент 19 июня 2011 года, когда из-за
ошибки в обновлённом программном обеспечении сервера в течение четырёх часов был
возможен вход в любой аккаунт с использованием любого пароля[12][13].
История
16 декабря 2010 года вышла стабильная версия сервиса. Изначально идея родилась у
основателя компании Дрю Хаустона во время автобусной поездки из Бостона в Нью-Йорк.
Чтобы не скучать в пути, молодой Хаустон взял с собой ноутбук, но забыл захватить
флэшку. В итоге ему нечем было заняться с пустым ноутбуком, раздосадованный, он
начал прямо в автобусе писать приложение для синхронизации доступа к файлам через
интернет
Как работает DropBox
Начинаем
После того как вы настроили свой аккаунт и закинули первые файлы в хранилище
DropBox, самое время залогиниться в ваш аккаунт и посмотреть какой же еще функционал
предлагает нам сервис DropBox.
Первое что имеет смысл сделать, это перейти на вкладку «Get Started» и выполнить
инструкции, которые вы увидите на экране. После выполнения всех инструкций вы будете
уверены, что все сделали правильно. Здесь же вам предлагается поучаствовать в
реферральной программе и увеличить объем своего хранилища до 8 гигабайт.
Файлы
На вкладке «Files» вы найдете ваши файлы. Внимательно копируйте файлы — не
забывайте о папках, к которым имеют доступ другие люди. Создайте для себя
максимально удобную навигацию — создавайте папки, переименовывайте уже
существующие, загружайте файлы, которые вам нужны.
События
Посмотреть активность по вашему аккаунту вы можете на вкладке «Events». Эта вкладка
окажется весьма полезной если вы, к примеру, удалили или переместили нужный вам
файл. Так же вы легко сможете отследить активность по общей папке. Нельзя сказать, что
эта вкладка используется очень часто, но ее наличие — огромный плюс.
Общие папки и файлы
Самое полезная функция в DropBox это несомненно возможность расшаривать папки, то
есть делать их доступными другим пользователям сервиса. Есть два способа сделать
папку расшаренной.
Первый способ, это в папке DropBox на вашем устройстве расшарить папку через
контекстное меню (Windows). Этот способ дает возможность отправить другим
пользователям прямую ссылку на общий документ или папку. Вам останется только
ввести почтовые аккаунты этих пользователей и сообщение, поясняющее ссылку.
Второс способ, это просто нажать кнопку «share a folder» на вкладке «Sharing». Далее нам
предлагается на выбор два варианта: создать новую папку и сделать ее публичной или
выбрать папку из существующих и сделать ее публичной. Как видите все достаточно
просто. В данной случае нам также потребуется ввести e-mail адреса пользователей и
сопроводительный текст для письма со ссылкой.
Как использовать DropBox?
Вариантов использовать DropBox масса. Давайте рассмотрим несколько.
1. Храним в DropBox рабочие файлы и папки. Этот вариант подходит мне — я храню, к
примеру, различный клипарт, скрипты, контент, который необходимо разместить на
сайтах и т.д.
2. Храним в DropBox файлы, которые вы продаете. Вы можете отправлять на e-mail
вашим покупателям прямые ссылки на папку с файлами, за которые они заплатили.
3. Храним бэкап бэкапа. Многие хранят файлы бэкапов в своем DropBox аккаунте. Беря
во внимание то, что любой удаленный файл храниться в системе еще месяц, мы имеем
прекрасную возможность восстановить удаленный файл бэкапа. Сложно?) На самом деле
все проще. Вы удалили файл бэкапа, который хранился в DropBox? Вы можете
восстановить его в течении месяца после удаления.
4. Все свое ношу с собой. Неважно где вы находитесь — дома, на работе, в поездке — у
вас всегда будет доступ к вашим файлам. Как я говорил в самом начале, существуют
приложения для мобильных платформ и они так же бесплатны. Вы можете установить
DropBox на рабочем компьютере и забыть про флэшки. И вы так же будете иметь доступ к
вашим файлам даже если вы оффлайн — все файлы сохраняются локально.
Инфорация взята с (http://www.rusdigi.org/oblachnye-servisy/dropbox-chto-takoe-dropboxkak-ispolzovat-dropbox.html )
FTP
FTP (англ. File Transfer Protocol — протокол передачи файлов) — протокол,
предназначенный для передачи файлов в компьютерных сетях. FTP позволяет
подключаться к серверам FTP, просматривать содержимое каталогов и загружать файлы с
сервера или на сервер; кроме того, возможен режим передачи файлов между серверами
(см. FXP).
FTP является одним из старейших прикладных протоколов, появившимся задолго до
HTTP, в 1971 году. Он и сегодня широко используется для распространения ПО и доступа
к удалённым хостам.
Протокол FTP относится к протоколам прикладного уровня и для передачи данных
использует транспортный протокол TCP. Команды и данные, в отличие от большинства
других протоколов, передаются по разным портам. Исходящий порт 20, открываемый на
стороне сервера, используется для передачи данных, порт 21 — для передачи команд.
Порт для приема данных клиентом определяется в диалоге согласования. В случае, если
передача файла была прервана по каким-либо причинам, протокол предусматривает
средства для докачки файла, что бывает очень удобно при передаче больших файлов.

Проблема безопасности
Протокол не шифруется, при аутентификации передаются логин и пароль открытым
текстом. В случае построения сети с использованием хаба, злоумышленник при помощи
пассивного сниффера может перехватывать логины и пароли находящихся в том же
сегменте сети пользователей FTP, или, при наличии специального ПО, получать
передаваемые по FTP файлы без авторизации. При построении сети на свитчах задача
злоумышленника усложняется, но взлом всё равно возможен (MAC-спуфинг,
переполнение таблицы адресов). Чтобы предотвратить перехват трафика, необходимо
использовать протокол шифрования данных SSL, который поддерживается многими
современными FTP-серверами и некоторыми FTP-клиентами.
Процесс нешифрованной авторизации проходит в несколько этапов (символы \r\n
означают перевод строки):
Установка TCP-соединения с сервером (обычно на 21 порт)
Посылка команды USER логин\r\n
Посылка команды PASS пароль\r\n
Если к серверу разрешён анонимный доступ (как правило, лишь для загрузки данных с
сервера), то в качестве логина используется ключевое слово «anonymous» или «ftp», а в
качестве пароля — адрес электронной почты:
USER anonymous\r\n
PASS someone@email\r\n
После успешной авторизации можно посылать на сервер другие команды.
Основные команды
























ABOR — Прервать передачу файла
CDUP — Сменить директорию на вышестоящую.
CWD — Сменить директорию.
DELE — Удалить файл (DELE filename).
EPSV — Войти в расширенный пассивный режим. Применяется вместо PASV.
HELP — Выводит список команд принимаемых сервером.
LIST — Возвращает список файлов директории. Список передается через
соединение данных.
MDTM — Возвращает время модификации файла.
MKD — Создать директорию.
NLST — Возвращает список файлов директории в более кратком формате чем
LIST. Список передается через соединение данных.
NOOP — Пустая операция
PASV — Войти в пассивный режим. Сервер вернет адрес и порт к которому нужно
подключиться чтобы забрать данные. Передача начнется при введении следующих
команд RETR, LIST и тд.
PORT — Войти в активный режим. Например PORT 12,34,45,56,78,89. В отличие
от пассивного режима для передачи данных сервер сам подключается к клиенту.
PWD — Возвращает текущую директорию.
QUIT — Отключиться
REIN — Реинициализировать подключение
RETR — Скачать файл. Перед RETR должна быть команда PASV или PORT.
RMD — Удалить директорию
RNFR и RNTO — Переименовать файл. RNFR — что переименовывать, RNTO —
во что.
SIZE — Возвращает размер файла
STOR — Закачать файл. Перед STOR должна быть команда PASV или PORT.
SYST — Возвращает тип системы(UNIX, WIN, …)
TYPE — Установить тип передачи файла(Бинарный, текстовый)
USER — Имя пользователя для входа на сервер
Пример
220 FTP server ready.
USER ftp //Анонимус
230 Login successful.
PASV
227 Entering Passive Mode (192,168,254,253,233,92)//Клиент должен открыть
соединение на переданный IP
LIST
150 Here comes the directory listing. //Сервер передает список файлов в
директории
226 Directory send OK.
CWD incoming
250 Directory successfully changed.
PASV
227 Entering Passive Mode (192,168,254,253,207,56)
STOR gyuyfotry.avi
150 Ok to send data. //Клиент передает содержимое файла
226 File receive OK.
QUIT
221 Goodbye.
Аргумент 192,168,254,253,207,56 означает, что соединение к серверу ожидается на узле с
IP-адресом 192.168.254.253 на порту 207 << 8 + 56 = 53048 (где << - операция побитового
сдвига, 207 записывается в младший разряд, а потом сдвигается в старший, чтобы в
младший записать 56 или 207*256+56=53048).
На многих FTP-серверах существует каталог (под названием incoming, upload и т. п.),
открытый на запись и предназначенный для закачки файлов на сервер. Это позволяет
пользователям наполнять сервер свежими данными.
PASSIVE MODE
Изначально протокол предполагал встречное TCP-соединение от сервера к клиенту для
передачи файла или содержимого каталога. Это делало невозможным общение с
сервером, если клиент находится за IP NAT, кроме того, часто запрос соединения к
клиенту блокируется файерволом. Чтобы этого избежать, было разработано расширение
протокола FTP passive mode, когда соединение для передачи данных тоже происходит от
клиента к серверу. Важным моментом является то, что клиент устанавливает соединение с
адресом и портом, указанным сервером. Порт сервер выбирает случайным образом из
определённого диапазона (49152-65534). Поэтому при нахождении ftp-сервера за NAT,
следует явно указать в настройках сервера его адрес.
NAT-PT
Специально для работы FTP-протокола через межсетевые экраны было сделано
расширение NAT, называемое NAT-PT (rfc2766), позволяющее транслировать входящие
соединения от сервера к клиенту через NAT. В процессе такого соединения NAT
подменяет передаваемые данные от клиента, указывая серверу истинный адрес и порт, с
которым сможет соединиться сервер, а потом транслирует соединение от сервера от этого
адреса клиенту на его адрес. Несмотря на все меры и нововведения, принятые для
поддержки FTP-протокола, на практике функция NAT-PT обычно отключается во всех
роутерах и маршрутизаторах с целью обеспечения дополнительной безопасности от
вирусных угроз.
FXP
FXP (англ. File eXchange Protocol — протокол обмена файлами) — способ передачи
файлов между двумя FTP-серверами напрямую, не закачивая их на свой компьютер . При
FXP-сессии клиент открывает два FTP-соединения к двум разным серверам, запрашивая
файл на первом сервере, указывая в команде PORT IP-адрес второго сервера.
Несомненным преимуществом поддержки стандарта FXP является то, что на конечных
пользователей, желающих скопировать файлы с одного FTP-сервера на другой, уже не
действует ограничение пропускной способности их собственного интернет-соединения.
Нет необходимости скачивать себе файл, чтобы потом загрузить его на другой FTPсервер. Таким образом, время передачи файлов будет зависеть только от скорости
соединения между двумя удаленными FTP-серверами, которая в большинстве случаев
заведомо больше «пользовательской».
FXP стал использоваться злоумышленникам для атак на другие серверы: в команде PORT
указывается IP-адрес и порт атакуемого сервиса на компьютере жертвы, и командами
RETR/STOR производится обращение на этот порт от лица FTP-сервера, а не атакующей
машины, что позволяло устраивать масштабные DDoS-атаки с использованием сразу
многих FTP-серверов, либо обходить систему безопасности компьютера жертвы, если он
полагается только на проверку IP клиента и используемый для атаки FTP-сервер
находится в доверенной сети или на шлюзе. В результате сейчас практически все серверы
проверяют соответствие IP-адреса, указанного в команде PORT, IP-адресу FTP-клиента и
по умолчанию запрещают использование там IP-адресов третьих сторон. Таким образом,
использование FXP невозможно при работе с публичными FTP-серверами.
Взята информация с «http://ru.wikipedia.org/wiki/FTP »
utorrent
BitTórrent (букв. англ. «битовый поток») — пиринговый (P2P) сетевой протокол для
кооперативного обмена файлами через Интернет.
Файлы передаются частями, каждый torrent-клиент, получая (скачивая) эти части, в то же
время отдаёт (закачивает) их другим клиентам, что снижает нагрузку и зависимость от
каждого клиента-источника и обеспечивает избыточность данных.
Протокол был создан Брэмом Коэном, написавшим первый torrent-клиент «BitTorrent» на
языке Python 4 апреля 2001 года. Запуск первой версии состоялся 2 июля 2001 года.
Существует множество других программ-клиентов для обмена файлами по протоколу
BitTorrent.
Файл метаданных
Файл метаданных является словарём в bencode формате с расширением .torrent —
содержит информацию о раздаче (файлах, трекерах и др.)
Принцип работы протокола
Принцип работы BitTorrent: нагрузка на распространителя файла уменьшается благодаря
тому, что клиенты начинают обмениваться данными сразу же, даже если файл не докачан
ими до конца.
Перед началом скачивания клиент подсоединяется к трекеру по адресу, указанному в
торрент-файле, сообщает ему свой адрес и хеш-сумму торрент-файла, на что в ответ
клиент получает адреса других клиентов, скачивающих или раздающих этот же файл.
Далее клиент периодически информирует трекер о ходе процесса и получает обновлённый
список адресов. Этот процесс называется объявлением (англ. announce).
Клиенты соединяются друг с другом и обмениваются сегментами файлов без
непосредственного участия трекера, который лишь хранит информацию, полученную от
подключенных к обмену клиентов, список самих клиентов и другую статистическую
информацию. Для эффективной работы сети BitTorrent необходимо, чтобы как можно
больше клиентов были способны принимать входящие соединения. Неправильная
настройка NAT или брандмауэра могут этому помешать.
При соединении клиенты сразу обмениваются информацией об имеющихся у них
сегментах. Клиент, желающий скачать сегмент (личер), посылает запрос и, если второй
клиент готов отдавать, получает этот сегмент. После этого клиент проверяет контрольную
сумму сегмента. Если она совпала с той, что записана в торрент-файле, то сегмент
считается успешно скачанным, и клиент оповещает всех присоединённых пиров о
наличии у него этого сегмента. Если же контрольные суммы различаются, то сегмент
начинает скачиваться заново. Некоторые клиенты банят тех пиров, которые слишком
часто отдают некорректные сегменты.
Таким образом, объём служебной информации (размер торрент-файла и размер
сообщений со списком сегментов) напрямую зависит от количества, а значит, и размера
сегментов. Поэтому при выборе сегмента необходимо соблюдать баланс: с одной стороны,
при большом размере сегмента объём служебной информации будет меньше, но в случае
ошибки проверки контрольной суммы придется скачивать ещё раз больше информации. С
другой стороны, при малом размере ошибки не так критичны, так как необходимо заново
скачать меньший объём, но зато размер торрент-файла и сообщений об имеющихся
сегментах становится больше.
Алгоритм обмена данными
Каждый клиент имеет возможность временно блокировать отдачу другому клиенту (англ.
choke). Это делается для более эффективного использования канала отдачи. Кроме того,
при выборе — кого разблокировать, предпочтение отдаётся пирам, которые сами
передали этому клиенту много сегментов. Таким образом, пиры с хорошими скоростями
отдачи поощряют друг друга по принципу «ты — мне, я — тебе».
Обмен сегментами ведётся по принципу «ты — мне, я — тебе» симметрично в двух
направлениях. Клиенты сообщают друг другу об имеющихся у них сегментах при
подключении и затем при получении новых сегментов, и поэтому каждый клиент может
хранить информацию о том, какие сегменты есть у других подключенных пиров. Порядок
обмена выбирается таким образом, чтобы сначала клиенты обменивались наиболее
редкими сегментами: таким образом повышается доступность файлов в раздаче. В то же
время выбор сегмента среди наиболее редких случаен, и поэтому можно избежать
ситуации, когда все клиенты начинают скачивать один и тот же самый редкий сегмент,
что негативно бы отразилось на производительности.
Обмен данными начинается, когда обе стороны в нём заинтересованы, то есть, каждая из
сторон имеет сегменты, которых нет у другой. Количество переданных сегментов
подсчитывается, и если одна из сторон обнаруживает, что передаёт в среднем больше, чем
принимает, она блокирует (англ. choke) на некоторое время отдачу другой стороне. Таким
образом, в протокол заложена защита от личеров.
Сегменты делятся на блоки размером 16-4096 килобайт, и каждый клиент запрашивает
именно эти блоки. Одновременно могут запрашиваться блоки из разных сегментов. Более
того, некоторые клиенты поддерживают скачивание блоков одного сегмента у разных
пиров. В этом случае описанные выше алгоритмы и механизмы обмена применимы и к
уровню блоков.
Режим End game
Когда скачивание почти завершено, клиент входит в особый режим, называемый end
game. В этом режиме он запрашивает все оставшиеся сегменты у всех подключенных
пиров, что позволяет избежать замедления или полного «зависания» почти завершенной
закачки из-за нескольких медленных клиентов.
Спецификация протокола не определяет, когда именно клиент должен войти в режим «end
game», однако существует набор общепринятых практик. Некоторые клиенты входят в
этот режим, когда не осталось незапрошенных блоков, другие — пока количество
оставшихся блоков меньше количества передающихся и не больше 20. Существует
негласное мнение, что лучше поддерживать количество ожидаемых блоков низким (1 или
2) для минимизации избыточности, и что при случайном запрашивании меньший шанс
получить дубликаты одного и того же блока.
Сидирование
При получении полного файла клиент переходит в специальный режим работы, в котором
он только отдаёт данные (становится сидом). Далее сид периодически информирует
трекер об изменениях в состоянии закачек и обновляет списки IP-адресов.
Общие особенности







Отсутствие очередей на скачивание.
Файлы закачиваются небольшими фрагментами; чем менее доступен фрагмент, тем
чаще он будет передаваться. Таким образом, присутствие в сети «сидера» с полным
файлом для загрузки необязательно — система распределяет сегменты между
«пирами», чтобы в последующем они могли обмениваться недостающими
сегментами.
Клиенты (peers) обмениваются сегментами непосредственно между собой, по
принципу «ты — мне, я — тебе».
Скачанные фрагменты становятся немедленно доступны другим клиентам.
Контролируется целостность каждого фрагмента.
На фрагменты разбиваются не отдельные файлы, а вся раздача целиком, поэтому у
«личера», пожелавшего скачать лишь некоторые файлы из раздачи, для
поддержания целостности фрагментов нередко будет храниться также небольшой
объем избыточной (для него) информации.
В качестве объекта раздачи могут выступать несколько файлов (например,
содержимое каталога).
Протоколы и порты
Клиенты соединяются с трекером по протоколу TCP. Наиболее часто используемый
входящий порт трекера: 6969. Наиболее часто используемый диапазон входящих портов
клиентов: 6881—6889.
Номера портов не фиксированы в спецификации протокола и могут изменяться при
необходимости. В данный момент большинство трекеров используют обычный HTTP
порт 80, а для клиентов рекомендуется выбрать случайный входящий порт. Более того,
некоторые трекеры не допускают использование портов клиентов из стандартного
диапазона 6881—6889, так как некоторые провайдеры запрещают использование этого
диапазона портов.
DHT-сеть в BitTorrent-клиентах использует протокол UDP.
Кроме того, протокол UDP используется UDP-трекерами (поддерживается не всеми
клиентами и не является официальной частью протокола) и для соединения клиентов друг
с другом через UDP NAT Traversal (используется только в клиенте BitComet и не является
официальной частью протокола).
Трекер
Трекер (англ. tracker; /ˈtrækə(r)/) — специализированный сервер, работающий по
протоколу HTTP. Трекер нужен для того, чтобы клиенты могли найти друг друга.
Фактически, на трекере хранятся IP-адреса, входящие порты клиентов и хеш-суммы,
уникальным образом идентифицирующие объекты, участвующие в закачках. По
стандарту, имена файлов на трекере не хранятся, и узнать их по хеш-суммам нельзя.
Однако на практике трекер часто помимо своей основной функции выполняет и функцию
небольшого веб-сервера. Такой сервер хранит файлы метаданных и описания
распространяемых файлов, предоставляет статистику закачек по разным файлам,
показывает текущее количество подключённых пиров и пр.
Работа без трекера
В новых версиях протокола были разработаны бестрекерные (англ. trackerless) системы,
которые решают некоторые из предыдущих проблем. Отказ трекера в таких системах не
приводит к автоматическому отказу всей сети.
Начиная с версии 4.2.0 официального клиента, в нём реализована функция бестрекерной
работы, базирующаяся на DHT Kademlia. В таких системах трекер доступен
децентрализовано, на клиентах, в форме распределённой хеш-таблицы.
На данный момент не все клиенты используют совместимый друг с другом протокол.
Совместимы между собой BitComet, µTorrent, Deluge, KTorrent, Transmission и
официальный клиент BitTorrent. Vuze (Azureus) также имеет режим бестрекерной работы,
но его реализация отличается от официальной, вследствие чего он не может работать
через DHT с вышеперечисленными клиентами. Однако, для Vuze существует поддержка
стандартного DHT через плагин Mainline DHT.
Работа без трекера также возможна при использовании мультипротокольных клиентов,
поддерживающих BitTorrent. Shareaza через сеть Gnutella2 обменивается хешами и
адресами пиров других поддерживаемых сетей, в том числе BitTorrent. В GreyLink 6.0
планируется поддержка BitTorrent, при этом сеть Direct Connect может использоваться не
только для преобразования в TTH, но и для поиска пиров.
Работа без торрент-клиента
Для того чтобы брать и раздавать файлы в торрент-сетях, не обязательно пользоваться
специальными программами. Существуют несколько сервисов, которые позволяют
скачивать файлы, используя только браузер[4].
Наличие в файлах метаданных дополнительной информации, такой, как дополнительные
источники и опциональные хеши, позволяет использовать файл метаданных .torrent
аналогично форматам Metalink, MAGMA, Список файлов (Direct Connect). Клиент
Shareaza использует опциональные хеши для поиска альтернативных источников в других
сетях.
Web-сиды
Одним из вариантов использования является так называемое web-сидирование. Иногда на
сервере по разным причинам нельзя запустить полноценный торрент клиент. В этом
случае в качестве источника раздачи выступает сервер, работающий по протоколу HTTP.
Как правило, клиенты отдают предпочтение другим BitTorrent клиентам и обращаются к
web-сиду только по необходимости. Следует знать, что реализован этот вариант
использования как минимум тремя способами: BEP0017 BitTornado style webseeding,
BEP0019 GetRight style webseeding и External Sourcing, каждый из которых отличается в
деталях реализации.
Впервые был создан Джоном «TheSHAD0W» Хоффманом, который создал BitTornado[5].
Начиная с версии 5.0 клиент BitTorrent поддерживает веб-сиды и загрузки с веб-сайтов,
был создан простой инструмент, который создает публикации веб сидов торрентов. В
μTorrent добавлена поддержка для получения веб-сидов в версии 1.7. В BitComet
добавлена поддержка для получения веб-сидов в версии 1.14.
BTIH (BitTorrent Info Hash)
Это SHA1 хеш поля Info из файла метаданных. Данный хеш используется в магнетссылках, а также для идентификации на трекере и между клиентами. При загрузке на
трекер файла метаданных его Info Hash может измениться, так как трекер может изменить
поле info, установив флаг закрытой раздачи private или изменив/добавив поля внутри info.
Поэтому необходимо снова скачать файл метаданных (файл .torrent) с трекера и добавить
его в клиент.
BTC-ссылка
Указывается в виде:
btc://[Адрес]: [Порт]/[Peer ID]/[ BTIH ]
Ссылка такого вида ссылается на раздачу и на её источник. Поддерживается в Shareaza.
Недостатки и ограничения
Недоступность раздачи
В случае, если раздача непопулярна, то может возникнуть ситуация, когда нет ни одного
сида, а данных у присутствующих пиров не хватает, чтобы завершить скачивание. В таком
случае необходимо ждать появления либо сида, либо пира, имеющего сегменты,
отсутствующие у остальных. Можно также использовать копии файлов, полученные
другим путём. Раздача, которая не имеет ни одного сида долгое время, называется
«мертвой».
Отсутствие анонимности и персонализации
Принцип работы BitTorrent-протокола подразумевает, что каждому клиенту известны IPадреса как минимум других клиентов, полученные от сервера. Использование
разнообразных расширений протокола в некоторых случаях позволяет узнать также и
адреса других пиров из роя. Поэтому:


Пользователи незащищённых систем и клиентов с известными уязвимостями могут
быть подвергнуты атаке.
Возможно узнать адреса пользователей, передающих или принимающих
определённый файл.
С другой стороны, протокол не предполагает использование ников. Отсутствует чат
между пирами. Невозможно просмотреть список файлов пира (в поисках других файлов,
которые могли бы заинтересовать). Большинство этих функций реализовано в других
протоколах (например, DC++/DirectConnect).
Проблема личеров
Некоторые пользователи, особенно на трекерах, не требующих регистрации, не
поддерживают раздачу после завершения скачивания, что ведёт к уменьшению общей
производительности. Эта проблема является одной из причин популярности частных
торрент-трекеров, учитывающих количество скачанного/отданного.
Отсутствие точного учета трафика
В отличие от многих коммерческих протоколов дистрибуции медиаконтента, архитектура
протокола не предусматривает точного механизма учета и контроля трафика между
точками сети. Всё, что есть — поля downloaded и uploaded, в которых клиенты передают
при анонсе трекеру количество байт учтенных при скачивании/загрузке данных с момента
предыдущего анонса. Однако не контролируясь никем, кроме как клиентом, они могут
быть легко подменены. Для этого пользователи статично прописывают значения этих
полей в URI трекера, пользуются патчами для клиентов или же отдельными
программами(RatioMaster, GiveMeTorrent, GreedyTorrent и т. д.), либо просто удаляют из
клиента запись о трекере сразу-же после получения с трекера списка точек сети. Всё это
позволяет обходить искусственные ограничения, создаваемые администрацией многих
частных и публичных трекеров.
Терминология
Личер и его рой.





Анонс (англ. announce) — обращение клиента к трекеру посредством HTTP-GETзапроса. При каждом анонсе клиент передаёт на трекер информацию об объёмах
им скачанного и отданного, a трекер передаёт клиенту список адресов других
клиентов. Обращение клиента к трекеру происходит через определённые
интервалы времени, которые определяются настройками клиента и трекера.
Веб-сид — HTTP или FTP-сервер, используемый в качестве источника данных,
наравне с обычными сидами
Доступность (англ. availability, англ. distributed copies — распространённые копии)
— количество полных копий файла, доступных клиенту. Каждый сид добавляет 1,0
к этому числу; личеры увеличивают доступность в зависимости от количества
скачанного, которого нет у других личеров. К примеру, если на раздаче есть один
сид и два личера, скачавшие по 50 % файла (скачанные части равны между собой),
то доступность равна 1,50.
Заглохший (англ. choked — заглохший, придушенный) — клиент, обмен данными
с которым заглох. Либо его канал на выход забит полностью и он не может ничего
передать (достиг max_uploads), либо он является сидом и ему ничего не нужно
получать.
Заинтересованный (англ. interested) — участник, желающий получить куски
файла, имеющиеся у другого участника. Например, если у клиента А нет каких-то
















частей, которые есть у клиента Б, считается, что клиент А заинтересован в обмене с
клиентом Б.
Излишки — данные, которые были посланы пиром или сидом, но получатель в
них не нуждается. К излишкам также относятся ошибки хеша.
Индекс (англ. index) — это список .torrent-файлов (обычно включающий описания
и другую информацию), управляемый веб-сайтом (индексатором) и доступный для
поиска. Индексирующий сайт часто ошибочно называют трекером.
Лич, иногда личер (англ. leech — пиявка) — пир, не имеющий пока всех
сегментов, то есть продолжающий скачивание. Термин часто употребляется и в
негативном смысле, который он имеет в других файлообменных сетях:
пользователь, который отдаёт гораздо меньше, чем скачивает.
Отравленный торрент — ситуация, когда часть пиров раздаёт повреждённые,
либо специально сфальсифицированные сегменты.
Пир (англ. peer — соучастник) — клиент, участвующий в раздаче.
Поскрестись (англ. scrape — скрести, царапать) — процесс, аналогичный анонсу,
но клиент запрашивает только статистику торрента, информацию о подключённых
клиентах и возможности с ними связаться для обмена.
Пренебрегающий (англ. snubbed) — клиент, подключённый к получателю, но не
посылавший ему данные уже более 60 секунд.
Раздача (англ. seeding) — процесс распространения файла по протоколу BitTorrent.
Рейтинг (англ. share ratio) — отношение отданного к скачанному.
Рой (англ. swarm) — совокупность всех пиров, участвующих в раздаче.
Сегмент (англ. part — часть) — все файлы для передачи делятся на небольшие
куски — сегменты, которые, затем, передаются по сети в произвольном порядке
для оптимизации обмена.
Сид, иногда сидер (англ. seeder — сеятель) — пир, имеющий все сегменты
распространяемого файла, то есть либо начальный распространитель файла, либо
уже скачавший весь файл и оставшийся на раздаче.
Супер-сидирование — специальный режим раздачи в некоторых BitTorrentклиентах, пытающийся минимизировать количество данных, которое отдаст
раздающий до появления первого скачавшего. Суперсид предлагает каждому пиру
скачать только один сегмент файла, которого ещё нет у других пиров. Затем сид не
даёт этому пиру следующих сегментов, пока не получит от других пиров
подтверждения, что они тоже получили этот сегмент. Таким образом, суперсид
пытается избежать повторной отдачи одних и тех же сегментов, и старается
отдавать сегменты только тем пирам, которые активно передают их другим.
Хеш (англ. hash) — SHA1 отдельных сегментов оригинальных файлов,
перечисленных в словаре «info» .torrent-файла. Каждая часть после получения
сначала проверяется на совпадение хеша. Если проверка не удалась, данные
отбрасываются и запрашиваются ещё раз. Также в протоколе используется хеш
самого словаря «info»(«инфохеш»), выступающий в роли идентификатора
конкретной раздачи при обращении к трекеру, к другим точкам сети, и при
составлении magnet-ссылок (он содержат Base32-представление инфохеша).
Passkey — аутентификатор пользователя на неанонимных трекерах. Содержится в
скачиваемом torrent-файле. Таким образом, если кто-то получит доступ к torrentфайлу (например, пользователь по неосторожности расшарил его), он сможет
работать с трекером от имени этого пользователя. Трекер может изменить passkey
по запросу пользователя, но при этом необходимо будет перескачать все прошлые
torrent-файлы (или вручную отредактировать их), чтобы иметь возможность и
дальше раздавать скачанные файлы.
URL анонса (англ. announce URL) — адрес трекера, к которому клиент делает
анонс. Во многих клиентах называется «Tracker URL». Может включать «passkey»
— уникальный код, назначаемый трекером для аккаунта пользователя,
помогающий идентифицировать его на трекере (добавляется к URL анонса в самом
*.torrent-файле при скачивании).
Программы-клиенты
Кроссплатформенные

µTorrent — клиент BitTorrent для Windows, Mac OS X и Linux (альфа-версия),
отличающийся малым размером и высокой скоростью работы.
Использование протокола BitTorrent на примере Azureus (Vuze)










Vuze (старое название — Azureus) — написан на языке Java, поэтому является
кроссплатформенным. Поддерживает Tor и I2P. Нужно учесть, используемая им
библиотека Eclipse Standard Widget Toolkit использует системнозависимые модули
и должна компилироваться для каждой платформы отдельно.
BitTyrant — модифицированный вариант клиента Azureus 2.5
BitTornado — кроссплатформенный клиент, написанный на языке Python
Deluge — кроссплатформенный клиент, написанный на языке Python; использует
GTK
mlDonkey — кроссплатформенный клиент
Браузер Opera полностью поддерживает закачку торрентов, начиная с версии 9.0
TorrentFlux (en) — Web-интерфейс написан на PHP, взаимодействие с протоколом
BitTorrent реализовано на языке Python, работает на удалённом Web-сервере,
позволяя не держать свой компьютер включённым постоянно, но при этом качать и
раздавать торренты.
ABC (en) — ещё один Bittorrent Client, основан на BitTornado
qBittorrent (en) — bittorrent клиент для Unix/GNU + возможно другие системы,
написанный на C++ / Qt4, использующий библиотеку libtorrent. Распространяется
под лицензией GNU GPL.
Media Get — freeware клиент для Windows и Mac OS X, разработанный
российскими программистами и написанный на C++, обладающий встроенным
поиском по популярным трекерам
GNU/Linux, UNIX







CTorrent — консольный клиент для Unix/GNU+Linux, прекративший развитие в
2004 году.
Flush — GTK клиент для GNU/Linux, написанный на C++, использующий libtorrent.
KTorrent — использует библиотеку Qt; работает в среде KDE.
KGet
rTorrent — консольный клиент для UNIX/GNU+Linux, написанный на C++;
использует библиотеки ncurses и libTorrent, также может работать через Webинтерфейс, например: ruTorrent, wTorrent и т. д.
Transmission — клиент для Mac OS X, FreeBSD, OpenBSD, NetBSD, GNU/Linux и
BeOS, использующий GTK или Qt, также может работать через Web-интерфейс
или вообще без GUI. Также может работать в консольном режиме и в режиме
демона.
Deluge — торрент-клиент, поддерживающийй IP-фильтр блокировки.
Windows







μTorrent
BitComet
BitSpirit
FlashGet
Shareaza — поддерживает работу с несколькими файлообменными сетями, в том
числе и BitTorrent
Free Download Manager
Torrent Stream — акцент на проигрывание видео/аудио файлов из торрентов, в
режиме онлайн (без ожидания загрузки)
Mac OS




µTorrent
Transmission
Vuze (Azureus)
Tomato Torrent (en)
Android



aTorrent
aDownloader
tTorrent
1) Поле,где видно что вы скачиваете
2) Поле просмотра скачивания данных
3) Поле,где известно сколь вы с качали и сколько осталось скачать
Download