Автоматизированная система учета материальных средств в аэропорту

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,26 Mb
  • Опубликовано:
    2011-11-23
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Автоматизированная система учета материальных средств в аэропорту

Федеральное государственное образовательное учреждение

высшего профессионального образования

ульяновское высшее авиационное училище

гражданской авиации (институт)

кафедра УКАС







КУРСОВОЙ ПРОЕКТ

по дисциплине Сети электронно-вычислительных машин и средства коммуникации

на тему Автоматизированная система учета материальных средств в аэропорту


Выполнил

курсант УК-09-01

Никифорова Ю.В.



Ульяновск 2011

Задание 11. Автоматизированная система учета материальных средств в аэропорту

Ввод данных по учету материальных средств в аэропорту осуществляется на 10 компьютерах. Отчеты передаются на сервер. Интенсивность поступления заявок с компьютера равна трем заявкам в секунду. Компьютеры объединены в сеть, построенной по технологии Ethernet.

Выполнить анализ структуры сети компьютеров, выдать рекомендации по повышению ее пропускной способности. Разработать клиент-серверное приложение, передавать данные методом датаграмм с использованием возможностей протокола UDP.

Содержание

Введение

. Анализ технологий, применяемых для построения современных ЛВС

. Разработка модели и моделирование функционирования локальной вычислительной сети

2.1 Построение модели в программной среде имитационного моделирования AnyLogic

.2 Определение затрат на приобретение оборудования

2.3 Технико-экономическое обоснование разработки

. Разработка клиент-серверного приложения

.1 Разработка алгоритмов

3.1.1 Разработка и описание алгоритма клиентской части - схема связи классов

.1.2 Разработка и описание алгоритма серверной части

4. Разработка программ

.1 Разработка серверной части программы

.2 Разработка клиентской части программы

Заключение

Список литературы

Приложение 1

Приложение 2

Введение

Локальные сети (Local Area Networks, LAN) - это объединения компьютеров, сосредоточенных на небольшой территории, обычно в радиусе не более 1 -2 км, хотя в отдельных случаях локальная сеть может иметь и более протяженные размеры, например; несколько десятков километров. В общем случае локальная сеть представляет собой коммуникационную систему, принадлежащую одной организации.

На первых порах для соединения компьютеров друг с другом использовались нестандартные сетевые технологии.

Сетевая технология - это согласованный набор программных и аппаратных средств пример, драйверов, сетевых адаптеров, кабелей и разъемов) и механизмов передачи данных по линиям связи, достаточный для построения вычислительной сети.

В середине 80-х годов утвердились стандартные сетевые технологии объединения компьютеров в сеть - Ethernet, ArcNet, Token Ring, Token Bus, несколько позже - FDDI.

Хронология важнейших событий на пути появления первых компьютерных сетей

Конец 60-х гг. Первые глобальные связи компьютеров, первые эксперименты с пакетными сетями. Начало передач по телефонным сетям голоса в цифровой форме.

Начало 70-х гг. Появление больших интегральных схем, первые мини-компьютеры. Первые нестандартные локальные сети.

г. Создание сетевой архитектуры IBM SNA. Стандартизация технологии Х.25.

Начало 80-х гг. Появление персональных компьютеров, создание Интернета в современном виде, установка на всех узлах стека TCP/IP.

Середина 80-х гг. Появление стандартных технологий локальных сетей (Ethernet - 1980 г., Token Ring - 1985 г., FDDI -1985 г.)

Конец 80-х гг. Начало коммерческого использования Интернета.

г. Изобретение Web.

.       
Анализ технологий, применяемых для построения современных ЛВС

Ethernet - это самый распространенный на сегодня стандарт локальных сетей.

Существует несколько вариантов этой технологии, в которую входят также Fast Ethernet, Gigabit Ethernet, 10G Ethernet.

В технологии Ethernet в качестве алгоритма разделения среды применяется метод случайного доступа. И, хотя, его трудно назвать совершенным - при росте нагрузки полезная пропускная способность сети резко падает, он благодаря своей простоте послужил основной причиной успеха технологии Ethernet.

Метод случайного доступа является одним из основных методов захвата разделяемой среды. Он основан на том, что узел, у которого есть кадр для передачи, пытается его отправить без какой бы то ни было предварительной процедуры согласования времени использования разделяемой среды с другими узлами сети.

Этот метод является децентрализованным, он требует наличия в сети специального узла, который играл бы роль арбитра, регулирующего доступ к среде. Результатом этого является высокая вероятность коллизий, т.е. случаев одновременной передачи кадра несколькими станциями.

Таким образом, случайная пауза в технологии Ethernet может принимать значения от 0 до 52.4 мс.

Максимально возможное расстояние между станциями сети, которое обеспечивает надежное распознавание коллизий - не превышает 2500м.Коллизия - ситуация, когда 2 станции одновременно пытаются передать кадр данных по общей среде.

Форматы кадров технологии Ethernet

-Кадр Ethernet DIX,появился в результате работы трех фирм Digital, Intel,Xerox;

Кадр Raw 802.3 появился в результате усилий компании Novell;

Кадр Ethernet SNAP стал результатом деятельности комитета 802.2 по приведению предыдущих форматов кадров к некоторому общему стандарту;

Кадр Novell 802.2.

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

В домене коллизий Fast Ethernet допускается не более одного повторителя класса 1 и не более двух повторителей класса 2.

Повторители класса 1 поддерживают только какой-нибудь один тип кодирования.

Организация физического уровня технологии Fast Ethernet использует 3 варианта кабельных систем:

волоконно - оптический многомодовый кабель (2 волокна)

витая пара категории 5 (2 пары)

витая пара категории 3 (4 пары)

На небольших расстояниях витая пара категории 5 позволяет передавать данные с той же скоростью, что и коаксиальный кабель, но сеть получается более дешевой и удобной в эксплуатации.

Технологии Fast Ethernet позволяет при работе навитой паре за счет процедуры автоаереговоров двум портам выбрать наиболее эффективный режим работы - скорость 10 Мбит\с или 100Мбит\с.

Технология Gigabit Ethernet добавляет в иерархию семейства Ethernet новую ступень в 1000 Мбит\с. Эта ступень позволяет эффективно строить крупные локальные сети, в которых серверы и магистрали нижних уровней сети работают на скорости 100Мбит\с, а магистраль Gigabit Ethernet объединяет их, обеспечивая достаточно большой запас пропускной способности.

Разработчики технологии Gigabit Ethernet сохранили большую степень преемственности с технологиями Ethernet Fast и Ethernet.В Gigabit Ethernet те же форматы кадров, что и в предыдущих версиях Ethernet; Gigabit Ethernet работает в дуплексном и полудуплексном режиме, поддерживая на разделяемой среде тот же метод доступа CSMA\CD с минимальными изменениями.

Специальная рабочая группа разработала вариант Gigabit Ethernet категории. Для обеспечения скорости в 1000 Мбит\с используется: одновременная передача данных по 4 неэкранизированным витым парам; метод кодирования PAM - 5, передача информации в дуплексном режиме с выделением принимаемого сигнала из общего с помощью процесса DSP.

Технология Token Ring была разработана компанией IBM в 1984 году, а затем передана в качестве проекта стандарта в комитет 1ЕЕЕ 802, который на ее основе принял в 1985 году стандарт 802.5. Компания IBM в течение долгого времени использовала технологию Token Ring как свою основную сетевую технологию построения локальных сетей на основе компьютеров различных классов - мэйнфреймов, мини-компьютеров и персональных компьютеров. Однако в последнее время даже в продукции компании IBM доминируют представители семейства Ethernet.

Сети Token Ring работают с двумя битовыми скоростями - 4 и 16 Мбит/с. Смешение в одном кольце станций, работающих на разных скоростях, не допускается. Сети Token Ring, работающие со скоростью 16 Мбит/с, имеют некоторые усовершенствования в алгоритме доступа по сравнению со стандартом 4 Мбит/с.

Технология FDDI (Fiber Distributed Data Interface - распределенный интерфейс передачи данных по оптоволокну) - это первая технология локальных сетей, в которой в качестве среды передачи данных стал применяться волоконно-оптический кабель. Работы по созданию технологий и устройств локальных сетей, использующих волоконно-оптические каналы, начались в 80-е годы, вскоре после начала промышленной эксплуатации подобных каналов в территориальных сетях. Проблемная группа ХЗТ9.5 института ANSI разработала в период с 1986 по 1988 гг. начальные версии стандарта FDDI, который описывает передачу кадров со скоростью 100 Мбит/с по двойному волоконно-оптическому кольцу длиной до 100 км.

Технология 10G Ethernet

Стандарт 100 Ethernet определяет только дуплексный режим работы, поэтому он используется исключительно в коммутируемых локальных сетях.

Формально этот стандарт имеет обозначение IEEE 802. За е и является поправкой к основному тексту стандарта 802.3. Этот документ описывает семь новых спецификаций физического уровня, которые взаимодействуют с уровнем MAC с помощью нового варианта подуровня согласования. Этот подуровень обеспечивает для всех вариантов физического уровня 10G Ethernet единый интерфейс XGMII (extended Gigabit Medium Independent Interface - расширенный интерфейс независимого доступа к гигабитной среде), который предусматривает параллельный обмен четырьмя байтами, образующими четыре потока данных. Существуют три группы физических интерфейсов стандарта 10G Ethernet: 10GBase-X, 10GBase-R и 10GBase-W. Они отличаются способом кодирования данных: в варианте 10Base-X используется код 8В/10В, а в остальных двух - код 64В/66В. Все они задействуют оптическую среду для передачи данных.

Проанализируем три технологии Ethernet, Fast Ethernet и Gigabit Ethernet, рассмотрим аппаратные средства применяемые в этих технологиях в Таблице 1.

Таблица 1. Сравнительный анализ технологий

№ п/п

1

2

3

Наименование технологии

Ethernet

Fast Ethernet

Gigabit Ethernet

Стандарт

IEEE 802.3

IEEE 802.3u

IEEE 802.3z

Используемый сетевой адаптер

Ether Power 10/100

3CSOHO100-TX

SMC9452TX

Используемый тип кабеля

10Base - 5 коаксиальный

100 Base TX Витая пара категории 5 UTP

1000 BASE-SX многомодовое оптоволокно

Метод доступа к каналу

CSMA/CD

CSMA/CD

CSMA/CD

Номинальная пропускная способность(Мб/c)

10

100

1000

Длина кадра/поля данных (байт)

46-1500

46-1500

46-1500

Длина сегмента ЛВС (максимальное удаление от коммутационного устройства)

500м

100м

550м

Тип используемых коммутационных устройств, дополнительное оборудование

Повторитель, Т-коннекторы терминаторы

Коммутационные шнуры, панели, концентраторы

Коммутаторы, модули, панели

локальный сеть клиент серверный

.       
Разработка модели функционирования локальных вычислительных сетей и расчет ее основных параметров

Для разработки модели используются основные положения теории массового обслуживании. ЛВС представляется в виде системы массового обслуживания (СМО) (рис. 1):





Рисунок 1. Представление ЛВС в виде СМО

От источников заявок (ПК) заявки поступают в сеть в случайные моменты времени с интенсивностями λn. Поступившие заявки обрабатываются в обслуживающем приборе с интенсивностью µ. Обслуживающий прибор - канал передачи данных ЛВС. Функция распределения интервалов времени между поступлениями заявок и функция распределения времени обработки заявки в обслуживающем приборе соответствуют показательному закону распределения:

 - функция распределения интервалов времени между поступлениями заявок.

 - функция распределения времени обработки заявки в обслуживающем приборе, где λ - интенсивность поступления заявок - расчет по формуле 1.

,                                           (1)

где Vопф - объем передаваемого файла, Lдк - длина кадра, Тпф - требуемое время передачи файла.

µ - интенсивность обработки заявок в приборе - расчет по формуле 2.

,                                   (2)

где Uнс - номинальная скорость передачи данных в канале; b - скорость передачи одного бита данных в канале;

Сэ - эффективная скорость передачи данных в канале ЛВС - расчет по формуле 3.

,                                                (3)

где Lдпд - длина поля данных пакета.

Ср - реальная скорость передачи данных в моделируемом канале ЛВС. - расчет по формуле 4.

,                                             (4)

где Lдпдi - длина поля данных кадра, переданного в канале модели ЛВС; Тм - время моделирования работы сети, заданное в модели; m - число переданных кадров в канале - определяется в результате моделирования работы сети в среде AnyLogic.

Кисп - коэффициент использования канала передачи данных ЛВС - расчет по формуле 5.

                                                   (5)

Данные формулы нужны для того чтобы произвести расчеты, которые будут внесены в Таблицу 2, где:

λ - интенсивность поступления заявок - расчет по формуле (1);

µ - интенсивность обработки заявок в приборе - расчет по формуле (2);

Сэ - эффективная скорость передачи данных в канале ЛВС - расчет по формуле (3).

Таблица 2. Расчет основных параметров модели

U- номинальная скорость (Мбит/с)

L - длина поля данных кадра (байт)

Сэ - эффективная скорость

b

λ

µ

Cр- реальная скорость в канале

Кисп - коэффициент использования канала

10

46

6,7647

0,1

0,025

0,0184

0,6364

0,7113


100

8,1967

0,1

0,013

0,0201

0,8134

0,8454


500

9,5785

0,1

0,0032

0,0024

0,9443

0,7554


1000

9,7847

0,1

0,0016

0,0012

0,8347

0,8012


1497

9,8552

0,1

0,0011

0,00082

0,9755

0,7856

100

46

67,6471

0,01

0,025

0,1838

0,6471

0, 8976


100

81,9672

0,01

0,013

0,1025

0,7818

0,9014


500

95,7854

0,01

0,0032

0,0239

0,9515

0,8765


1000

97,8474

0,01

0,0016

0,0122

0,9655

0,8434


1497

98,5517

0,01

0,0011

0,0082

0,9815

0, 9596

1000

46

676,4706

0,001

0,025

1,8382

0,6755

0,9791


100

819,6721

0,001

0,013

1,0246

0,8176

0,9743


500

957,8544

0,001

0,0032

0,2395

0,9578

0,9653


1000

978,4736

0,001

0,0016

0,1223

0,9774

0, 9876


1497

985,5168

0,001

0,0011

0,0823

0,9856

0, 9892


Для нахождения Ср (реальная скорость передачи данных в моделируемом канале ЛВС) и Кисп (коэффициент использования канала передачи данных ЛВС) построим модель в программной среде имитационного моделирования AnyLogic.

2.1 Построение модели в программной среде имитационного моделирования AnyLogic

Модель

Рисунок 2. Соединение элементов модели

AnyLogic - первый и единственный инструмент имитационного моделирования, объединивший методы системной динамики, "процессного" дискретно-событийного и агентного моделирования в одном языке и одной среде разработки моделей. Гибкость AnyLogic позволяет отражать динамику сложных и разнородных экономических и социальных систем на любом желаемом уровне абстракции. AnyLogic включает набор примитивов и библиотечных объектов для эффективного моделирования производства и логистики, бизнес-процессов и персонала, финансов, потребительского рынка, а также окружающей инфраструктуры в их естественном взаимодействии. Объектно-ориентированный подход, предлагаемый AnyLogic, облегчает итеративное поэтапное построение больших моделей.

Основное средство процессного моделирования в AnyLogic - это библиотека Enterprise Library. В эту библиотеку вошли объекты для определения "потока" процесса (process workflow): Source (источник), Sink (выход из системы), Delay (задержка), Queue (очередь), Service (обслуживание), SelectOutput (выбор пути), и т.д., а также задействованных в процессе ресурсов. Все объекты гибкие и настраиваемые: пераметры могут изменяться динамически, действия могут зависеть от атрибутов заявок, и т.д.

Рисунок 3. График значений параметров модели

График получен в процессе моделирования по технологии Ethernet с U (номинальная скорость) 10 Мбит/с и с L (длина поля данных кадра) 46 байт

Рисунок 4. График значений параметров модели

График получен в процессе моделирования по технологии Ethernet с U (номинальная скорость) 10 Мбит/с и с L (длина поля данных кадра) 100 байт

Рисунок 5. График значений параметров модели

График получен в процессе моделирования по технологии Ethernet с U (номинальная скорость) 10 Мбит/с и с L (длина поля данных кадра) 500 байт

Рисунок 6. График значений параметров модели

График получен в процессе моделирования по технологии Ethernet с U (номинальная скорость) 10 Мбит/с и с L (длина поля данных кадра) 1000 байт

Рисунок 7. График значений параметров модели

График получен в процессе моделирования по технологии Ethernet с U (номинальная скорость) 10 Мбит/с и с L (длина поля данных кадра) 1497 байт

Рисунок 8. График значений параметров модели

График получен в процессе моделирования по технологии Fast Ethernet с U (номинальная скорость) 100 Мбит/с и с L (длина поля данных кадра) 46 байт

Рисунок 9. График значений параметров модели

График получен в процессе моделирования по технологии Fast Ethernet с U (номинальная скорость) 100 Мбит/с и с L (длина поля данных кадра) 100 байт

Рисунок 10. График значений параметров модели

График получен в процессе моделирования по технологии Fast Ethernet с U (номинальная скорость) 100 Мбит/с и с L (длина поля данных кадра) 500 байт

Рисунок 11. График значений параметров модели

График получен в процессе моделирования по технологии Fast Ethernet с U (номинальная скорость) 100 Мбит/с и с L (длина поля данных кадра) 1000 байт

Рисунок 12. График значений параметров модели

График получен в процессе моделирования по технологии Fast Ethernet с U (номинальная скорость) 100 Мбит/с и с L (длина поля данных кадра) 1497 байт

Рисунок 13. График значений параметров модели

График получен в процессе моделирования по технологии Gigabit Ethernet с U (номинальная скорость) 1000 Мбит/с и с L (длина поля данных кадра) 46 байт

Рисунок 14. График значений параметров модели

График получен в процессе моделирования по технологии Gigabit Ethernet с U (номинальная скорость) 1000 Мбит/с и с L (длина поля данных кадра) 100 байт

Рисунок 15. График значений параметров модели

График получен в процессе моделирования по технологии Gigabit Ethernet с U (номинальная скорость) 1000 Мбит/с и с L (длина поля данных кадра) 500 байт

Рисунок 16. График значений параметров модели

График получен в процессе моделирования по технологии Gigabit Ethernet с U (номинальная скорость) 1000 Мбит/с и с L (длина поля данных кадра) 1000 байт

Рисунок 17. График значений параметров модели

График получен в процессе моделирования по технологии Gigabit Ethernet с U (номинальная скорость) 1000 Мбит/с и с L (длина поля данных кадра) 1497 байт

.2 Определение затрат на приобретение оборудования

В результате проделанной выше работы мы нашли Кисп - коэффициент использования канала для каждой из выбранных нами трех технологий. В результате самые высокие коэффициенты это - 0, 9892 - по технологии Gigabit Ethernet с U (номинальная скорость) 1000 Мбит/с и с L (длина поля данных кадра) 1497 байт, и 0, 9596 - по технологии Fast Ethernet с U (номинальная скорость) 100 Мбит/с и с L (длина поля данных кадра) 1497 байт. На основе этих двух технологий составляется Таблица 3. Для этого построим схему проекта с указанием типа и количества оборудования, проведем анализ цен на момент выполнения работы с расчетом затрат.

Таблица 3. Аппаратные средства


Fast Ethernet

Gigabit Ethernet

Тип кабеля

Кабель витая пара UTP, lev.5e (100м.) 10 Base TX

1000 Base-SX многомодовое оптоволокно (100м)

Цена, р.

1200

23909

Сетевой адаптер

Сетевая карта D-Link DFE-520TX PCI, 10/100Mb (10 шт.)

Сетевая карта ASUS NX1101, PCI, 10/100/1000Mb (10 шт.)

Цена, р.

1800

5500

Разъем для подключения кабеля к сетевой карте

Вилка RJ-45  (20 шт.)

Вилка RJ-45 (20 шт.)

Цена

60

60

Дополнительное оборудование

Коммутатор

Коммутатор D-Link DES-1008D/E 8port 10/100 Mb

Коммутатор D-Link DES-3010G, L2 8ports 10/100Mb, 1port GigaUTP, 1port SFP

Цена, р.

780

5900

Итого

3840

35369


2.3 Технико-экономическое обоснование разработки

По результатам моделирования развертывать ЛВС (локально вычислительную сеть) рекомендуется по технологии Fast Ethernet, так как здесь достаточно высокий коэффициент использования канала и приемлемая стоимость аппаратных средств. Такая сеть будет удовлетворять техническим и экономическим требованиям задания.

3. Разработка клиент-серверного приложения

.1 Разработка алгоритмов

.1.1 Разработка и описание алгоритма клиентской части - схема связи классов

Клиент-сервер (англ. Client-server) - вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемых серверами, и заказчиками услуг, называемых клиентами. Нередко клиенты и серверы взаимодействуют через компьютерную сеть и могут быть как различными физическими устройствами, так и программным обеспечением.

Рис 18. Схема взаимосвязи классов


























Рисунок 19. Алгоритм функционирования приложения клиента

Пошаговое описание:

Начало алгоритма

На шаге 1 производится выполнение действия Ввод host port file

На шаге 2 происходит проверка логического условия «Все данные введены?», если утверждение верно то мы переходим на шаг 3, если нет, то на шаг 8

На шаге 3 производится выполнение действия «Получить номер порта соединения»

На шаге 4 производится выполнение действия «Получить имя файла, копируемого с сервера»

На шаге 5 производится выполнение действия «Создание объекта Сокета sock»

На шаге 6 производится выполнение действия «Создание объекта управления символьным выводом в сокет Pw»

На шаге 7 производится выполнение действия «Создание объекта управления символьным вводом из сокета br»

На шаге 8 который ответвляется от шага 2 осуществляется вывод «Нет исходных данных» в этом случает алгоритм завершается

На шаге 9 производится выполнение действия «Считать ответ от сервера из сокета»

На шаге 10 производится выполнение действия «Считать ответ от сервера из сокета»

На шаге 11 производится выполнение действия «Определить число токенов в сообщении st.countTokens ()»

На шаге 12 происходит проверка логического условия «countTokens()>=2», если утверждение верно то мы переходим на шаг 13 если нет, то алгоритм завершается

На шаге 13 происходит проверка логического условия «st.nextTokens()!= “200”» утверждение верно то мы переходим на шаг 14 если нет, то на шаг 15

На шаге 14 осуществляется вывод результатов « File not found»

На шаге 15 происходит проверка логического условия « br.readLine()!= null» утверждение верно то мы переходим на шаг 16 если нет, то алгоритм завершается

На шаге 16 осуществляется вывод результатов «Значение файла»

Конец алгоритма

.1.2 Разработка и описание алгоритма серверной части

Рисунок 20. Алгоритм функционирования серверного приложения

Пошаговое описание:

Начало алгоритма

На шаге 1 производится выполнение действия «Создание объекта типа сервера установить номер порта 8083»

На шаге 2 происходит проверка логического условия «Поступил запрос от клиента?» если утверждение верно то мы переходим на шаг 3, если нет, то на шаг 8

На шаге 3 производится выполнение действия «Активизация соединение с клиентом по сокету, установить ему приоритет»

На шаге 4 производится выполнение действия «Создание объекта управления символьным выводом в сокет pw»

На шаге 5 производится выполнение действия «Создание объекта управления символьным вводом из сокета br»

На шаге 6 производится выполнение действия «Считать запрос от клиента из сокета»

На шаге 7 производится выполнение действия «Определить число токенов в сообщении.countTokens()»

На шаге 8 (левая ветвь этапа 2) производится выполнение действия «проверить сокет и ждать вызова от клиента»

На шаге 9 происходит проверка логического условия «st.countTokens()>=2» если утверждение верно то мы переходим на шаг 10, если нет, то на ветвь ведущую к шагу 15

На шаге 10 происходит проверка логического условия «st.nextToken().equals("POST"))», если утверждение верно то мы переходим на шаг 11, если нет, то на ветвь ведущую к шагу 15

На шаге 11 происходит проверка логического условия «st.nextToken()).endsWith("/")», если утверждение верно то мы переходим на шаг 12, если нет, то на левую ветвь ведущую на шаг 14

На шаге 12 происходит проверка логического условия «req.equals("")», если утверждение верно то мы переходим на шаг 13, если нет, то на шаг 14

На шаге 13 производится выполнение действия «Передать index.html»

На шаге 14 производится выполнение действия «Передать запрашиваемый файл»

На шаге 15 осуществляется вывод результатов «Значение файла»

Конец алгоритма

.       
Разработка программ

4.1 Разработка серверной части программы

package server_program; // объявление пакета, к которому привязываются разрабатываемые классы

import java.net.*; //подключения методов класса java.net и его дочерних классов

import java.io.*; // потоки и файлы произвольного доступа. Аналог библиотеки стандартного ввода-вывода

import java.util.*; // классы-контейнеры (Dictionary, HashTable, Stack) и некоторые другие утилиты. Кодирование и декодирование. Классы Date и Time.

public class Main { // Программная структура, содержит в себе основные элементы такие как методы и поля

public static void main(String[] args) // главный метод, начальные значения, передаются аргументы, описывает функцию

{

try // содержит один или более операторов, выдает исключения

{

ServerSocket ss = new ServerSocket(Integer.parseInt(args[0])); // объект класса предназначен для установки канала связи с клиентским приложением

while (true) //логическое выражение, оператор цикла

new HttpConnect(ss.accept()); // установка канала связи с клиентским приложением

}

сatch(ArrayIndexOutOfBoundsException ae) // Перехват исключений в Java оформляется блоком "try-catch», сначало делается попытка выполнить фрагмент кода, и если генерируется исключение, то оно обрабатывается фрагментом catch

{

System.err.println("Usage: Server port"); // метод вывода системных сообщений

System.exit(0); // "нормальное" завершение процесса

}

catch(IOException e) // содержит операторы, которые специфицируют действия при вызове исключения в блоке try

{

System.out.println(e); // стандартный поток вывода

}

}

}

class HttpConnect extends Thread // представляет собой отдельный поток управления в пределах процесса

{

private Socket sock; // чтобы сгладить различия в реализациях разных серверов, между сервером и портом

HttpConnect(Socket s) // устанавливает соединение между локальной машиной и указанным портом узла Internet, имя которого было передано конструктору

{

sock = s; // присвоение значения s переменной sock

setPriority(NORM_PRIORITY - 1); // приоритет устанавливается на два уровня выше Thread

run(); // метод в котором задается последовательность действий, выполняемых в рамках потока

}

public void run() // может объявлять переменные, вызывать другие методы и использовать другие классы.

{

try // содержит один или более операторов, оператор вызывающий исключения

{

PrintWriter pw = new PrintWriter(new OutputStreamWriter(sock.getOutputStream()), true); // для форматного вывода данных различных типов с целью их визуального представления в виде текстовой строки

BufferedReader br = new BufferedReader(new InputStreamReader(sock.getInputStream() ) ); // классы которые организуют входные потоки, буферизированный ввод данных

String req = br.readLine(); // класс создающий объект готовый разбить строки на слова

System.out.println("Request: " + req); // стандартный поток вывода

StringTokenizer st = new StringTokenizer(req); // класс предназначен для выделения отдельных элементов из строк типа String

if ((st.countTokens() >= 2) && st.nextToken().equals("POST"))// оператор условия, операция возвращает в виде строки следующее слово

{

if ((req = st.nextToken()).ends With("/")|| req.equals(""))// оператор условия, операция возвращает в виде строки следующее слово

req += "index.html"; // Этот оператор используется для выполнения определённых операторов, если логическое условие true

try // содержит один или более операторов

{

File f = new File(req); // создание нового объекта с аргументом req

BufferedReader bfr = new BufferedReader(new FileReader(f)); // классы которые организуют входные потоки, буферизированный ввод данных

char[] data = new char[(int)f.length()]; // 16-ти разрядная переменная в виде символов, символы кодируются с помощью юникода

bfr.read(data); // буферизированный ввод данных

pw.println("HTTP/1.1 200 OK\n"); // выполнен принудительный переход на следующую строку

pw.write(data); // программа выполняет серию операций по выводу в поток данных различного типа

pw.flush();// программа выполняет серию операций по выводу в поток данных различного типа

}

catch(FileNotFoundException fe) // содержит операторы, которые специфицируют действия при вызове исключения в блоке try

{.println("HTTP/1.1 404 Not FoundXn");

}

catch(IOException ioe) // содержит операторы, которые специфицируют действия при вызове исключения в блоке try

{

System.out.println(ioe); // стандартный поток вывода

}

}

else pw.println("HTTP/l.l 400 Bad RequestW"); // необязательный блок else для выполнения других операторов, если условие false

sock.close(); // Основной метод этого класса accept () ожидает поступления запроса. Когда запрос получен, метод устанавливает соединение с клиентом и возвращает объект класса socket, через который сервер будет обмениваться информацией с клиентом.

}

catch(IOException e) // содержит операторы, которые специфицируют действия при вызове исключения в блоке try

{.out.println(e); // стандартный поток вывода

}

}

}

.2 Разработка клиентской части программы

package javaapplication33; // объявление пакета, к которому привязываются разрабатываемые классы

import java.net.*; //подключения методов класса java.net и его дочерних классов

import java.io.*; // потоки и файлы произвольного доступа. Аналог библиотеки стандартного ввода-вывода

import java.util.*; // классы-контейнеры (Dictionary, HashTable, Stack) и некоторые другие утилиты. Кодирование и декодирование. Классы Date и Time.

import java.lang.Integer.*; // каждый модуль компиляции содержит неявное импортирование этого пакета

public class Main { // Программная структура, содержит в себе основные элементы такие как методы и поля

public static void main(String[] args) // главный метод, начальные значения, передаются аргументы, описывает функцию

{

String[] hostportfile={"127.0.0.1", "8080", "c:/Minori "}; // класс создающий объект готовый разбить строки на слова

if (hostportfile.length != 3) // оператор условия, операция возвращает в виде строки следующее слово

{

System.err.println("Usage: Client host port file"); // метод вывода системных сообщений

System.exit(0); // "нормальное" завершение процесса

}

String host = hostportfile[0]; // класс создающий объект готовый разбить строки на слова

int port = Integer.parseInt(hostportfile[1]); // четырехбайтные целые числа

String file = hostportfile[2]; // класс создающий объект готовый разбить строки на слова

try // содержит один или более операторов, оператор вызывающий исключения

{

Socket sock = new Socket(host, port); // Основной метод этого класса accept () ожидает поступления запроса.

PrintWriter pw = new PrintWriter(new OutputStreamWriter(sock.getOutputStream()), true); // для форматного вывода данных различных типов с целью их визуального представления в виде текстовой строки

pw.println("POST " + file + " HTTP/1.l\n"); // выполнен принудительный переход на следующую строку

BufferedReader br = new BufferedReader(new InputStreamReader(sock.getInputStream()));// классы которые организуют входные потоки, буферизированный ввод данных

String line = null; // класс создающий объект готовый разбить строки на слова

line = br.readLine(); // присвоение значения переменной

StringTokenizer st = new StringTokenizer(line); // класс предназначен для выделения отдельных элементов из строк типа String

String code = null; // класс создающий объект готовый разбить строки на слова

if ((st.countTokens() >= 2) && st.nextToken().equals("POST")) // оператор условия, операция возвращает в виде строки следующее слово

{

if ((code = st.nextToken()) != "200") // оператор условия, операция возвращает в виде строки следующее слово

{

System.err.println("File not found, code = " + code); // метод вывода системных сообщений

System.exit (0); // "нормальное" завершение процесса

}

}

while ((line = br.readLine()) != null) //логическое выражение, оператор цикла

System.out.println(line); // стандартный поток вывода

sock.close();// Основной метод этого класса accept () ожидает поступления запроса. Когда запрос получен, метод устанавливает соединение с клиентом и возвращает объект класса socket, через который сервер будет обмениваться информацией с клиентом.

}catch(Exception e) // содержит операторы, которые специфицируют действия при вызове исключения в блоке try

{

System.err.println(e); // метод вывода системных сообщений

}}}

Заключение

В процессе выполнения курсовой работы были проанализированы технологии, применяемые для построения современных локально вычислительных сетей. Из них для более подробного анализа были выбраны: Ethernet, Fast Ethernet и Gigabit Ethernet. На основе этих технологий производилась разработка модели и моделирование функционирования локальной вычислительной сети. Самый высокий коэффициент использования канала прослеживался в технологиях Gigabit Ethernet и Fast Ethernet, на основе этого было проведено технико-экономическое обоснование разработки, рекомендована сеть Fast Ethernet, так как полностью отвечает всем требованиям сети APMов и экономически более выгодна. Так же было разработано программное обеспечение, работающее в сети APMов и позволяющее надежно передавать данные отчета на сервер с использованием средств протокола TCP.

Список литературы

1. Олифер В.Г. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 2-е издание / В.Г. Олифер, Н.А. Олифер. - СПб.: Питер, 2008. - 864 с.

. Олифер В.Г. Сетевые операционные системы /В.Г. Олифер, Н.А. Олифер. - СПб.: Питер, 2008.- 539 с.

. Единая система программной документации. Официальное издание. - М.: Издательство стандартов, 1982. - 127 с.

. Олифер В.Г. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 3-е издание / В.Г. Олифер, Н.А. Олифер. - СПб.: Питер, 2008. -[1] стр. 383-445.

Приложение 1. Прайс-лист

Наименование товара

Цена

Цена в $

Кабель Bitronics 1,8м

70

1.8

Кабель Bitronics 3m

90

2.49

Кабель HDMI-HDMI 10.0m Luxmann (468-357-*) Ferrites

3380

101.15

Кабель HDMI-HDMI 15.0m Luxmann (468-258-*) Ferrites

4410

131.77

Кабель IEEE 1394 6/4pin 5.0m Luxmann (457-004-*)

330

9.84

Кабель IEEE 1394 6/6pin 5.0m Luxmann (458-004-*)

460

13.57

Кабель USB-USB AB v2.0, 1.8m Golden connector

180

5.26

Кабель USB-USB AB v2.0, 3.0m Golden connector

210

6.09

Кабель USB-USB AB v2.0, 5.0m Golden connector

280

8.23

Кабель витая пара UTP, lev.5e (100м.)

1200

35.64

Кабель витая пара UTP, lev.5e (305м.)

1970

58.84

Кабель питания (Европа)

35

1.02

Кабель питания (Европа) 3.0m

49

1.44

Кабель питания для ноутбуков, аудио и видео техники 5.0м Luxmann (370-004-*)

410

12.02

Кабель питания системный блок-монитор, 3м

47

1.39

Кабель сигнальный SVGA Hi-Resolution 10.0m

440

12.98

Кабель сигнальный SVGA Hi-Resolution 20.0m

830

24.59

Комплект кабелей для переключателей CBM-300BMA (аналог DKVM-CB) 3m

260

7.6

Патч-корд UTP cat 5e. 2,0 m

34

1

Патч-корд телефонный 2,0 m Luxmann Silicon (540-001-6)

110

3.25

Переходник SATA - PATA модель No.: PS421

330

9.64

Переходник USB - 2 PS/2 (клавиатура+мышь) Rovermate Uspy (Adaptmate-048)

120

3.57

Переходник для мыши COM 9pin - PS/2

11

0.3

Переходник мониторный DVI - HDMI

100

2.92

Переходник питания 4P - 6P для видеокарт ATI серии X1800-1900 /NVIDIA серии 8800

100

2.99

Переходник питания для HDD Serial ATA

48

1.42

Удлинитель SVGA Hi-Resolution 1.8m

120

3.31

Удлинитель SVGA Hi-Resolution 3.0m

160

4.7

Удлинитель SVGA Hi-Resolution 5.0m

230

6.63

Удлинитель SVGA Hi-Resolution 10.0m

360

10.77

Удлинитель USB AM/AF v2.0, 1.8m

36

1.06

Удлинитель USB AM/AF v2.0, 3.0m

48

1.42

Удлинитель для мыши и клавиатуры, PS/2

30

0.88

Шлейф FDD

12

0.35

Шлейф интерфейсный IDE UDMA 33

20

0.58

Шлейф интерфейсный IDE UDMA 66/ UDMA 100

46

1.36


Адаптер для соединения двух патч-кордов RJ-45

120

3.51

Вилка RJ-11

2

0.05

Вилка RJ-45

3

0.08

Интернет-шлюз D-Link DIR-100/RU 4*10/100Mb, 1*WAN

1150

34.22

Коммутатор D-Link DES-1005D/E 5port 10/100 Mb

540

16.14

Коммутатор D-Link DES-1008D/E 8port 10/100 Mb

780

23.27

Коммутатор D-Link DES-1016D/E 16port 10/100Mb

1800

53.66

Коммутатор D-Link DES-1018DG 16х100 Mb + 2х1000 Mb ports, 19"

3930

117.42

Коммутатор D-Link DES-2108, 8 ports 10/100Mb

2170

64.82

Коммутатор D-Link DES-3010G, L2 8ports 10/100Mb, 1port GigaUTP, 1port SFP

5900

176.45

Коммутатор D-Link DGS-1005D/GE 5port 10/100/1000Mb

1260

37.43

Коммутатор D-Link DGS-1016D/GE 16port 10/100/1000Mb

7240

216.49

Коммутатор TP-Link TL-SF1008D,8 ports 10/100Mb

590

17.37

Коммутатор TP-Link TL-SF1016D,16 ports 10/100Mb

1240

36.84

Маршрутизатор D-Link DIR-120, 4-ports 10/100 Base-TX switch and USB Printer Port

1510

45

Принт-сервер D-Link DP-301P+

2010

60.07

Розетка RJ-11

13

0.36

Сетевая карта ASUS NX1101, PCI, 10/100/1000Mb

550

16.19

Сетевая карта D-Link DFE-520TX PCI, 10/100Mb

180

5.28

Стяжки капроновые 150 мм, 100 шт

60

1.74

Стяжки капроновые 200 мм, 100 шт

70

2.04

Тестер кабельный TrendNet TC-NT2, со звуковым генератором

1790

53.48


Приложение 2. Скрин NetBeans

Похожие работы на - Автоматизированная система учета материальных средств в аэропорту

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!