На бирже курсовых и дипломных проектов можно найти образцы готовых работ или получить помощь в написании уникальных курсовых работ, дипломов, лабораторных работ, контрольных работ, диссертаций, рефератов. Так же вы мажете самостоятельно повысить уникальность своей работы для прохождения проверки на плагиат всего за несколько минут.

ЛИЧНЫЙ КАБИНЕТ 

 

Здравствуйте гость!

 

Логин:

Пароль:

 

Запомнить

 

 

Забыли пароль? Регистрация

Повышение уникальности

Предлагаем нашим посетителям воспользоваться бесплатным программным обеспечением «StudentHelp», которое позволит вам всего за несколько минут, выполнить повышение уникальности любого файла в формате MS Word. После такого повышения уникальности, ваша работа легко пройдете проверку в системах антиплагиат вуз, antiplagiat.ru, etxt.ru или advego.ru. Программа «StudentHelp» работает по уникальной технологии и при повышении уникальности не вставляет в текст скрытых символов, и даже если препод скопирует текст в блокнот – не увидит ни каких отличий от текста в Word файле.

Результат поиска


Наименование:


дипломная работа Менеджер закачек с управлением через WEB-интерфейс

Информация:

Тип работы: дипломная работа. Добавлен: 08.07.2012. Сдан: 2010. Страниц: 11. Уникальность по antiplagiat.ru: < 30%

Описание (план):


Федеральное агентство по образованию 

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ
УПРАВЛЕНИЯ  И РАДИОЭЛЕКТРОНИКИ (ТУСУР) 

Кафедра электронных приборов (ЭП) 

                К ЗАЩИТЕ ДОПУСТИТЬ
                Заведующий  кафедрой ЭП
                д-р  физ.-мат. наук, профессор
                _____________С.М.Шандаров
                «___»____________2009 г. 

МЕНЕДЖЕР  ЗАКАЧЕК С УПРАВЛЕНИЕМ  ЧЕРЕЗ WEB-ИНТЕРФЕЙС 
Выпускная квалификационная работа
на соискание  степени бакалавра техники и  технологии
по направлению  «Фотоника и оптоинформатика»
ФЭТ ВКР.704 01-01 81 01 ПЗ 

                Студент гр. 345
                ____________И.А.Паргачев
                «___»____________2009 г. 

                Руководитель
                старший преподаватель кафедры ЭП
                ____________С.М.Шандаров
                «___»____________2009 г. 
                 
                 

2009 


           Реферат 

    Выпускная квалификационная работа 35с., 6 рис., 21 источников.
    СИСТЕМА ЗАГРУЗКИ ТОРРЕНТ-ФАЙЛОВ, СИСТЕМА ЗАГРУЗКИ ФАЙЛОВ ИЗ ИНТЕРНЕТА, СИСТЕМА ЗАГРУЗКИ САЙТОВ, ФАЙЛОВЫЙ МЕНЕДЖЕР.
    Целью выпускной квалификационной работы является создание компонентов системы  загрузки данных из интернета с управлением  через web-интерфейс.
    Были  спроектированы и разработаны: клиентское приложение для управления системой загрузки данных, система загрузки торрент-файлов, система загрузки данных из интернета, база данных.
    Пояснительная записка к выпускной квалификационной работы оформлена с помощью текстового редактора OpenOffice Writer 2.4.1 Для оформления презентации был использован Open Office Impress 2.4.1. 
 


Abstract 

      Final qualification project contains 35 pages, 6 figures, 21 sources.
    SYSTEM OF DOWNLOADING TORRENT FILES, SYTEM OD DOWNLOADING FILES FROM INTERNET, SYSTEM OF DOWNLOADING SITES, FILE MANAGER.
    The purpose of the final qualification project is creation of the components of system of downloading data from internet under control with web-interface.
    Have been designed and developed: client application for controlling the system of downloading data, system of downloading torrent files, system of downloading data from internet, database.
    The explanatory note to final qualification project is made with the use of text editor OpenOffice Writer 2.4.1. The presentation is made with the use of Open Office Impress 2.4.1. 
 
 
 
 
 
 
 
 
 

Федеральное агентство по образованию 

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ
УПРАВЛЕНИЯ  И РАДИОЭЛЕКТРОНИКИ (ТУСУР) 

Кафедра электронных приборов (ЭП) 

                             УТВЕРЖДАЮ
                Заведующий  кафедрой ЭП
                д-р физ.-мат. наук, профессор
                _____________С.М.  Шандаров
                «___»____________2009 г. 

ЗАДАНИЕ 

       На  выпускную квалификационную работу студенту Паргачеву Ивану Андреевичу группы 345 факультета электронной техники.
    Тема работы: Менеджер закачек с управлением через web-интерфейс. (утверждена приказом по вузу №  4688  от «  21» мая 2009).
    Срок сдачи студентом законченной работы: «    5  »        июня          2009.
    Исходные данные к работе: Спецификации: протокола HTTP, языка программирования PHP, технологии AJAX, языка разметки XML, языка разметки HTML, программы Aria2c, программы Wget, программы rTorrent, командной оболочки Bash.
    Содержание пояснительной записки (перечень подлежащих разработке вопросов):
       4.1 По специальной части:
       Создание  клиентского приложения для управления загрузками, создание системы загрузки торрент-файлов, создание системы загрузки файлов из интернета, создание системы загрузки сайтов, создание файлового менеджера, разработка программы-демона, разработка системы авторизации и реализация базы данных.
    Перечень графического материала: Принцип работы web-приложений, структурная схема менеджера закачек, структурная схема системы загрузки данных, внешний вид клиентского приложения, внешний вид файлового менеджера.
    Дата выдачи задания: «  21   »               мая                                2009.
       Руководитель  работы:
       старший преподаватель кафедры  ЭП                        E.С.Шандаров
       «     »               2009 г.     Подпись   
       Задание принято к исполнению:
       студент группы 345      И.А.Паргачев
         «    »               2009 г.     Студент   
    Содержание 

1.Введение

1.1 Цифровые устройства
       В настоящее время бурный рост переживает индустрия различных бытовых  устройств имеющих возможность  подключения к сети. Это игровые приставки, DVD и HD проигрыватели, телевизоры, SetTopBox'ы и, разумеется, компьютеры. Быстро увеличивается количество таких устройств в семьях, появляется все больше ноутбуков в домашнем пользовании. Это приводит к тому, что на одного человека приходится много различных устройств.
       Эти устройства могут воспроизводить различный  мультимедийный контент, обрабатывать большие объемы цифровой информации, которая создается вокруг нас  постоянно. Это фотографии, видео  и аудио-файлы, документы, электронная почта, музыка, электронные книги...

1.2 NAS-серверы
       Сохранность и доступность информации с разных бытовых устройств для нас  является очень важным фактором. Для  решения этой проблемы был создан новый класс потребительских  устройств, таких как NAS (Network Attached Storage). NAS обеспечивают надёжность хранения данных, легкость доступа для многих пользователей. Эти устройства представляют собой компъютер, подключенные к сети Ethernet по протоколу TCP/IP.
       Основным  предназначением NAS является предоставление сервисов для хранения данных другим устройствам в сети. Операционная система и программы NAS модуля обеспечивают работу хранилища данных и файловой системы, доступ к файлам, а также контроль над функциями системы. Устройство не предназначено для выполнения обычных вычислительных задач, хотя запуск других программ на нем может быть возможен с технической точки зрения. Обычно NAS устройства не имеют экрана и клавиатуры, а управляются и настраиваются по сети.
       Сетевая система хранения данных использует упрощённые операционные системы, такие ОС лишены всех ненужных служб и модулей и в то же время максимально оптимизированы для обслуживания файловой системы. Простая архитектура софта позволяет получить высокую скорость передачи данных и максимально быстрый отклик на запросы пользователей, при этом не требуя каких-либо серьёзных вычислительных мощностей. Как правило, такие ОС зашиты во флеш-память устройства и предустанавливаются фирмой-производителем, однако есть и софт, который свободно распространяется в Интернете.
       Архитектура NAS максимально оптимизирована для  конкретной задачи: файловый сервис. В  основу проектирования NAS-продуктов  положено ключевое правило: вся вычислительная мощность сосредоточена на единственной и главной задаче – обслуживание и хранение файлов. Ограничившись ключевой задачей, NAS-продукты позволяют организовать работу группы пользователей с общими файлами максимально эффективно с точки зрения быстродействия и затрат.[1]
       Основное  преимущество таких систем состоит  в их низкой стоимости по сравнению с полноценными серверами и высокой скорости интеграции и по стоимости содержания. Как правило, энергопотребление этих устройств на 90% зависит от количества и типа установленных винчестеров, и лишь потом - от встроенного процессора и памяти.
       Развитие  технологии Ethernet и появление гигабитных сетей позволило в значительной мере увеличить производительность NAS-систем и, как следствие, повысить привлекательность таких решений. Сегодня различные производители  предлагают свои NAS-решения. Благодаря столь гибкой архитектуре NAS компании-производители способны удовлетворить запросы всех ценовых сегментов – от потребностей серьёзной корпорации до задач небольшой домашней инфраструктуры, концепции «цифрового дома».[1]

1.3 FreeNAS
       Операционная система FreeNAS основана на BSD-ядре, которое максимально оптимизировано для задач Network Attached Storage. Сама по себе FreeNAS занимает минимальное количество дискового пространства и позволяет грузиться с CD или с флеш-брелока.
       FreeNAS распространяется бесплатно, на ее основе можно спроектировать NAS-сервер на любом персональном компьютере или ноутбуке. Управление и настройка FreeNAS происходит с помощью простого веб-интерфейса. К нему можно получить доступ по протоколам CIFS (SMB), Apple Mac AFP, FTP, SSH, iSCSI и NFS.

1.2 Передача информации
       С развитием сети Интернет и постоянным увеличением пользователей, подключенных к сети стала очень популярна  передача информации через интернет. Самые распространенные способы  передачи данных по сети стали системы Torrent и размещение этих данных на серверах, подключенных к всемирной паутине.

1.2.1 BitTorrent
       BitTorrent — пиринговый (P2P) сетевой протокол  Коэна для кооперативного обмена  файлами через Интернет.
       Файлы передаются частями, каждый torrent-клиент, получая (скачивая) эти части, в это же время отдаёт (закачивает) их другим клиентам, что снижает нагрузку и зависимость от каждого клиента-источника и обеспечивает избыточность данных.
       Перед началом скачивания клиент подсоединяется к трекеру, сообщает ему свой адрес и хеш-сумму запрашиваемого файла, на что в ответ клиент получает адреса других клиентов, скачивающих или раздающих этот же файл. Далее клиент периодически информирует трекер о ходе процесса и получает обновлённый список адресов.
       Клиенты соединяются друг с другом и обмениваются сегментами файлов без непосредственного участия трекера, который лишь регулярно обновляет информацию о подключившихся к обмену клиентах и другую статистическую информацию. Для эффективной работы сети BitTorrent необходимо, чтобы как можно больше клиентов были способны принимать входящие соединения. Неправильная настройка NAT или брандмауэра могут этому помешать.
       При соединении клиенты сразу обмениваются информацией об имеющихся у них  сегментах. Клиент, желающий скачать  сегмент, посылает запрос и, если второй клиент готов отдавать, получает этот сегмент. После этого клиент проверяет контрольную сумму сегмента и оповещает всех присоединённых пиров о наличии у него этого сегмента.
       Каждый  клиент имеет возможность временно блокировать отдачу другому клиенту. Это делается для более эффективного использования канала отдачи. Кроме того, при выборе — кого разблокировать, предпочтение отдаётся пирам, которые сами передали этому клиенту много сегментов. Таким образом, пиры с хорошими скоростями отдачи поощряют друг друга по принципу «ты — мне, я — тебе».
       Обмен сегментами ведётся по принципу «ты  — мне, я — тебе» симметрично  в двух направлениях и в случайном  порядке. Клиенты периодически сообщают друг другу об имеющихся у них  сегментах. Обмен данными начинается, когда обе стороны в нём заинтересованы, то есть каждая из сторон имеет сегменты, которых нет у другой. Количество переданных сегментов подсчитывается, и если одна из сторон обнаруживает, что передаёт в среднем больше, чем принимает, она блокирует отдачу. Таким образом, в протокол заложена защита от личеров (пользователь Интернета, пользующийся ресурсами, предоставляемыми другими, но не предлагающий ничего взамен).
       При получении полного файла клиент переходит в специальный режим  работы, в котором он только отдаёт данные (становится сидом).
       Клиенты периодически информируют трекер об изменениях в состоянии закачек  и обновляют списки IP-адресов.
       Трекер  — специализированный сервер, работающий по протоколу HTTP. Трекер нужен для  того, чтобы клиенты могли найти друг друга. Фактически, на трекере хранятся IP-адреса, входящие порты клиентов и хеш-суммы, уникальным образом идентифицирующие объекты, участвующие в закачках. По стандарту, имена файлов на трекере не хранятся, и узнать их по хеш-суммам нельзя. Однако на практике трекер часто помимо своей основной функции выполняет и функцию небольшого веб-сервера. Такой сервер хранит файлы метаданных и описания распространяемых файлов, предоставляет статистику закачек по разным файлам, показывает текущее количество подключённых пиров и пр.
       Для каждого распространяемого файла  создаётся файл метаданных с расширением .torrent, который содержит следующую  информацию:
    URL трекера;
    общую информацию о закачиваемом файле (имя, длину и пр.);
    Контрольные суммы (точнее, хеш-суммы SHA1) сегментов закачиваемого файла.
       Файлы метаданных могут распространяться через любые каналы связи: они (или  ссылки на них) могут выкладываться  на веб-серверах, размещаться на домашних страницах пользователей сети, рассылаться  по электронной почте, публиковаться в блогах или новостных лентах RSS. Получив каким-либо образом файл с метаданными, клиент может начинать скачивание.[2]

1.2.2 Протокол FTP
       FTP — протокол, предназначенный для  передачи файлов в компьютерных  сетях. FTP позволяет подключаться к серверам FTP, просматривать содержимое каталогов и загружать файлы с сервера или на сервер; кроме того, возможен режим передачи файлов между серверами (FXP).
       FTP является одним из старейших  прикладных протоколов, появившимся  задолго до HTTP, он и сегодня широко используется для распространения ПО и доступа к удалённым хостам.
       Протокол FTP относится к протоколам прикладного  уровня и для передачи данных использует транспортный протокол TCP. Команды и  данные, в отличие от большинства  других протоколов передаются по разным портам. Порт 20 используется для передачи данных, порт 21 для передачи команд.
       Протокол  не шифруется, при аутентификации передаёт логин и пароль открытым текстом. Если злоумышленник находится в  одном сегменте сети с пользователем FTP, то, используя снифер, он может перехватить логин и пароль пользователя, или, при наличии специального ПО, получать передаваемые по FTP файлы без авторизации. Чтобы предотвратить перехват трафика, необходимо использовать протокол шифрования данных SSL, который поддерживается многими современными FTP-серверами и некоторыми FTP-клиентами.[3]

1.2.3 Протокол HTTP
       HTTP (HyperText Transfer Protocol) — протокол прикладного уровня передачи данных (изначально - в виде гипертекстовых документов). Основой HTTP является технология «клиент-сервер», то есть предполагается существование потребителей (клиентов), которые инициируют соединение и посылают запрос, и поставщиков (серверов), которые ожидают соединения для получения запроса, производят необходимые действия и возвращают обратно сообщение с результатом.
       Основным  объектом манипуляции в HTTP является ресурс, на который указывает URI (Uniform Resource Identifier) в запросе клиента. Обычно такими ресурсами являются хранящиеся на сервере файлы, но ими могут быть логические объекты или что-то абстрактное. Особенностью протокола HTTP является возможность указать в запросе и ответе способ представления одного и того же ресурса по различным параметрам: формату, кодировке, языку и т.д. Именно благодаря возможности указания способа кодирования сообщения клиент и сервер могут обмениваться двоичными данными, хотя данный протокол является текстовым.
       HTTP — протокол прикладного уровня, аналогичными ему являются FTP и  SMTP. Обмен сообщениями идёт по  обыкновенной схеме «запрос-ответ». Для идентификации ресурсов HTTP использует глобальные URI. В отличие от многих других протоколов, HTTP не сохраняет своего состояния. Это означает отсутствие сохранения промежуточного состояния между парами «запрос-ответ». Компоненты, использующие HTTP, могут самостоятельно осуществлять сохранение информации о состоянии, связанной с последними запросами и ответами. Браузер, посылающий запросы, может отслеживать задержки ответов. Сервер может хранить IP-адреса и заголовки запросов последних клиентов. Однако сам протокол не осведомлён о предыдущих запросах и ответах, в нём не предусмотрена внутренняя поддержка состояния, к нему не предъявляются такие требования.[4]

1.3 Загрузка содержимого  сайтов
       Пользователи  часто встречаются с проблемой  загрузки сайтов для последующего просмотра информации на локальной машине. Сохранять сайт по одной странице, открывая каждую, очень не удобно и занимает много времени. Гораздо удобнее загружать сайт с указанием глубины рекурсивных ссылок.

1.4 Клиентские программы  загрузки информации
       На  сегодняшний день сделано очень  много менеджеров закачки данных и клиентов торрент, но для их работы необходимо постоянное подключение  к сети и компьютер, работающий 24 часа в сутки. Стационарные компьютеры создают много шума, поэтому не всем нравится держать его включенным круглые сутки. Ноутбуки по своему назначению, как мобильные устройства не всегда подключены к интернету. Эти проблемы делают процесс загрузки данных очень долгим или не возможным вовсе, если не поддерживается догрузка файлов с момента отключения.

1.5 Домашний сервер
       Решением  данных проблем может стать менеджер закачек, работающий на «домашнем сервере», с управлением через веб-интерфейс. «Домашний сервер» стационарен, практически не шумит и имеет  постоянное подключение к сети. Веб-интерфейс позволяет управлять загрузками с любого персонального компьютера, подключенного к серверу через домашнюю сеть или через интернет.

2.Постановка  задачи

       На  период дипломирования перед нами была поставлена задача, разработать компоненты, необходимые для создания ресурса, реализующего функции менеджера закачек:
    клиентское приложение для работы с загрузками;
    система загрузки торрент-файлов;
    система загрузки файлов
    система загрузки и сайтов;
    Файловый менеджер, для просмотра загруженных фалов.

2.1 Требования к клиентскому приложению
    возможность назначать новые задания для  загрузок;
    возможность управления загрузками;
    возможность просмотра полной информации о процессе загрузки/раздачи торрентов (процент загрузки, вложения в торрент-файл, пиры и т.д.);
    отсутствиенеобходимости в установке дополнительного програмного обеспечения на стороне клиента.

2.2 Требования к системе  загрузки торрент-файлов
    возможность мониторинга процесса загрузки;
    торрент-клиент должен быть консольным;
    возможность остановки загрузки торрентов;
    возможность удаления торрентов.

2.3 Требования к системе  загрузки файлов
    клиент  загрузки должен быть консольным;
    возможность загрузки с ресурсов, требующих авторизацию (задается имя пользователя и пароль);
    возможность загрузки через прокси-сервер;
    возможность загрузки файлов по протоколам HTTP и FTP;
    возможность продолжения загрузки, после обрыва сети;
    возможность сегментной закачки;
    возможность загрузки по сценариям metalink.

2.4 Требования к системе  загрузки сайтов
    клиент  загрузки должен быть консольным;
    возможность загрузки с ресурсов, требующих авторизацию (задается имя пользователя и пароль);
    возможность продолжения загрузки, после обрыва сети;
    возможность «зеркалирования» сайтов (точное копирование со всеми вложениями);
    настройка глубины скачиваемых ссылок.

2.5 Требования к файловому  менеджеру
    возможность передвигаться по каталогам;
    возможность загрузить файл на локальную машину;

3.Выбор  технологии

3.1 PHP
       Технология Personal Home Page (PHP) получила очень широкое  распространение благодаря своей  бесплатности и поддержке самых  популярных платформ. Она базируется на принципе построения страниц из шаблонов, впервые появившемся в Active Server Pages, но развивает и дополняет его. Страницы РНР имеют вид обычных HTML страниц, в которых могут использоваться специальные тэги вида <?php и ?>. Между тэгами вставляются строки программного кода на специальном языке сценариев РНР.[6]
       Принцип шаблонов позволил разработчикам писать программы гораздо быстрее и  без ошибок, присущих традиционным CGI - программам, выдающим HTML содержимое в поток вывода. На сегодняшний день диапазон систем, построенных на шаблонах простирается от простых страниц с выборками из базы данных до крупных приложений электронной коммерции, основанных на XML. Шаблонные системы пользуются большой популярностью среди разработчиков, поскольку наиболее подходят для типовых сайтов. Такие решения включают ColdFusion, PHP, JSP и ASP, из которых РНР является наиболее распространенной.
       Наилучшим качеством PHP является то, что он предельно  прост для новичка в программировании, но предлагает много продвинутых возможностей для программиста-профессионала.[5]

3.2 XML
       XML (Extensible Markup Language) – это язык разметки, описывающий целый класс объектов  данных, называемых XML-документами.  Этот язык используется в качестве  средства для описания грамматики  других языков и контроля за правильностью составления документов. То есть сам по себе XML не содержит никаких тэгов, предназначенных для разметки, он просто определяет порядок их создания.
       Процесс создания XML документа очень прост  и требует от нас лишь базовых знаний HTML и понимания тех задач, которые мы хотим выполнить, используя XML в качестве языка разметки. Таким образом, у разработчиков появляется уникальная возможность определять собственные команды, позволяющие им наиболее эффективно определять данные, содержащиеся в документе. Автор документа создает его структуру, строит необходимые связи между элементами, используя те команды, которые удовлетворяют его требованиям и добивается такого типа разметки, которое необходимо ему для выполнения операций просмотра, поиска, анализа документа.
       Еще одним из очевидных достоинств XML является возможность использования  его в качестве универсального языка  запросов к хранилищам информации.
       XML позволяет также осуществлять  контроль за корректностью данных, хранящихся в документах, производить проверки иерархических соотношений внутри документа и устанавливать единый стандарт на структуру документов, содержимым которых могут быть самые различные данные. Это означает, что его можно использовать при построении сложных информационных систем, в которых очень важным является вопрос обмена информацией между различными приложениями, работающими в одной системе. Создавая структуру механизма обмена информации в самом начале работы над проектом, менеджер может избавить себя в будущем от многих проблем, связанных с несовместимостью используемых различными компонентами системы форматов данных.[7]
       XML сейчас поддерживается практически  во всех приложения, работа которых  тем или иным образом связана  с передачей информации через  Интернет.  Это дает основания предполагать, что, скорее всего, в ближайшем будущем XML станет основным языком обмена информации для информационных систем.

3.3 XML-RPC
       XML-RPC - протокол вызова удаленных процедур, основанный на XML. RPC расшифровывается  как Remote Procedure Call - удаленный вызов процедур. Это значит, что приложение (неважно, скрипт на сервере или обычное приложение на клиентском компьютере) может прозрачно использовать метод, который физически реализован и исполняется на другом компьютере. XML тут применяется для обеспечения универсального формата описания передаваемых данных. Как транспорт, для передачи сообщений применяется протокол HTTP, что позволяет беспрепятственно обмениваться данными через любые сетевые устройства - маршрутизаторы, фаерволы, прокси-сервера.  XML-RPC, как и любой другой интерфейс RPC, определяет набор стандартных типов данных и команд, которые можно использовать для доступа к функциональности другой программы.
       Вся работа с XML-RPC происходит в режиме "запрос-ответ", для использования надо иметь: сервер XML-RPC, который предоставляет один или несколько методов, клиент XML-RPC, который может формировать корректный запрос и обрабатывать ответ сервера, а также знать необходимые для успешной работы параметры сервера - адрес, название метода и передаваемые параметры.
       Процедура работы с XML-RPC начинается с формирования запроса. В первых строках формируется стандартный заголовок HTTP запроса. К обязательным параметрам относятся host, тип данных (MIME-тип), который должен быть text/xml, а также длина сообщения. Далее идет обычный заголовок XML-документа. Корневой элемент запроса - <methodCall>, может быть только один, и не может содержать таких узлов в качестве дочерних. Это означает, что одним запросом можно вызвать только один метод на сервере.
и т.д.................


Перейти к полному тексту работы


Скачать работу с онлайн повышением уникальности до 90% по antiplagiat.ru, etxt.ru или advego.ru


Смотреть полный текст работы бесплатно


Смотреть похожие работы


* Примечание. Уникальность работы указана на дату публикации, текущее значение может отличаться от указанного.