Автоматизированная система учета материальных средств в аэропорту
Разработка сетевых распределенных приложений на основе клиент-серверной технологии. Проект имитационной модели локальной вычислительной сети. Расчет первичных параметров сети. Стоимость аппаратных средств. Построение модели в программной среде AnyLogic.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 30.04.2014 |
Размер файла | 3,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Федеральное государственное образовательное учреждение высшего профессионального образования
Ульяновское высшее авиационное училище и электронно-вычислительных машин и средства коммуникации
Курсовая работа
на тему:
Автоматизированная система учета материальных средств в аэропорту
Выполнила Крылова Е.А.
курсант УК-11-1
Руководитель Брежнев В.Г.
Ульяновск, 2013
Задание на Курсовую работу
Курсант Крылова Е.А.
Группа УК-11-1
Тема: Автоматизированная система учета материальных средств в аэропорту.
Ввод данных по учету материальных средств в аэропорту осуществляется на 10 компьютерах. Отчеты передаются на сервер. Интенсивность поступления заявок с компьютера равна трем заявкам в секунду. Компьютеры объединены в сеть, построенной по технологии Ethernet.
Выполнить анализ структуры сети компьютеров, выдать рекомендации по повышению ее пропускной способности. Разработать клиент-серверное приложение, передавать данные методом датаграмм с использованием возможностей протокола UDP.
СОДЕРЖАНИЕ
Введение
1. Анализ технологий, применяемых для построения современных ЛВС
2. Разработка модели и моделирование функционирования локальной вычислительной сети
2.1 Построение модели в программной среде имитационного моделирования AnyLogic
2.2 Технико-экономическое обоснование разработки
3. Разработка клиент-серверного приложения
3.1 Разработка алгоритмов
3.1.1 Разработка и описание алгоритма клиентской части - схема связи классов
3.1.2 Разработка и описание алгоритма серверной части
4. Разработка программ
4.1 Разработка серверной части программы
4.2 Разработка клиентской части программы
4.3 Тесты. Результаты тестирования
Заключение
Список литературы
ВВЕДЕНИЕ
Ethernet--пакетная технология компьютерных сетей, преимущественно локальных. Стандарты Ethernet определяют проводные соединения и электрические сигналы на физическом уровне, формат кадров и протоколы управления доступом к среде -- на канальном уровне модели OSI. Ethernet в основном описывается стандартами IEEE группы 802.3. Ethernet стал самой распространённой технологией ЛВС в середине 90-х годов прошлого века, вытеснив такие устаревшие технологии, как Arcnet, FDDI и Token ring. Технология Ethernet была разработана вместе со многими первыми проектами корпорации Xerox PARC. Общепринято считать, что Ethernet был изобретён 22 мая 1973 года, когда Роберт Меткалф (Robert Metcalfe) составил докладную записку для главы PARC о потенциале технологии Ethernet. Но законное право на технологию Меткалф получил через несколько лет. В 1976 году он и его ассистент Дэвид Боггс (David Boggs) издали брошюру под названием «Ethernet: Distributed Packet-Switching For Local Computer Networks». Меткалф ушёл из Xerox в 1979 году и основал компанию 3Com для продвижения компьютеров и локальных вычислительных сетей (ЛВС). Ему удалось убедить DEC, Intel и Xerox работать совместно и разработать стандарт Ethernet (DIX). Впервые этот стандарт был опубликован 30 сентября 1980 года. Он начал соперничество с двумя крупными запатентованными технологиями: token ring и ARCNET, -- которые вскоре были похоронены под накатывающимися волнами продукции Ethernet. В процессе борьбы 3Com стала основной компанией в этой отрасли.
Технология Fast Ethernet является эволюционным развитием классической технологии Ethernet. 10-Мегабитный Ethernet устраивал большинство пользователей на протяжении около 15 лет. Однако в начале 90-х годов начала ощущаться его недостаточная пропускная способность. Поэтому многие сегменты 10-Мегабитного Ethernet'а стали перегруженными, реакция серверов в них значительно упала, а частота возникновения коллизий существенно возросла, еще более снижая номинальную пропускную способность. В 1992 году группа производителей сетевого оборудования, включая таких лидеров технологии Ethernet как SynOptics, 3Com и ряд других, образовали некоммерческое объединение Fast Ethernet Alliance для разработки стандарта на новую технологию, которая обобщила бы достижения отдельных компаний в области Ethernet-преемственного высокоскоростного стандарта. Новая технология получила название Fast Ethernet.
Прогресс - штука безостановочная. 100 Мбит/с - немалая скорость передачи данных, но для магистральных каналов ее может не хватить. В 1996 г. начались работы по стандартизации сетей Ethernet со скоростью передачи данных 1000 Мбит/с, которые называют Gigabit Ethernet. Был образован Gigabit Ethernet Alliance, в который вошли 11 компаний: 3Com, Bay Networks, Cisco, Compaq, Granite Systems, Intel, LSI Logic, Packet Engines, Sun, UB Networks и VLSI Technology. К началу 1998 года в Альянс входило уже более 100 компаний. В июне 1998 г. принимается стандарт IEEE 802.3z, использующий одномодовые и многомодовые оптоволоконные кабели, а также STP категории 5 на короткие расстояния (до 25 м). Столь малое допустимое расстояние в случае применения UTP обуславливало сомнительную возможность практического применения такого варианта. Положение изменилось с принятием в июне 1999 г. стандарта IEEE 802.3ab для передачи 1000 Мбит/с по неэкранированной витой паре на расстояния до 100 м.
1. АНАЛИЗ ТЕХНОЛОГИЙ ПОСТРОЕНИЯ СОВРЕМЕННЫХ ЛОКАЛЬНЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЕЙ (ЛВС)
Ethernet использует "случайный" метод доступа к сети (CSMA/CD - carrier-sense multiple access/collision detection) - множественный доступ с обнаружением несущей. В нем отсутствует последовательность, в соответствии с которой станции могут получать доступ к среде для осуществления передачи. В этом смысле доступ к среде осуществляется случайным образом. Преимущество метода: алгоритмы случайного доступа реализуются значительно проще по сравнению с алгоритмами детерминированного доступа. Следовательно, аппаратные средства могут быть дешевле. Поэтому Ethernet более распространен по сравнению с другими технологиями для локальных сетей.
При загрузке сети уже на уровне 30% становятся ощутимыми задержки при работе станций с сетевыми ресурсами, а дальнейшее увеличение нагрузки вызывает сообщения о недоступности сетевых ресурсов. Причиной этого являются коллизии, возникающие между станциями, начавшими передачу одновременно или почти одновременно. При возникновении коллизии, передаваемые данные не доходят до получателей, а передающим станциям приходится возобновлять передачу.
В классическом Ethernet все станции в сети образовывали домен коллизий (collision domain). При этом одновременная передача любой пары станций приводила к возникновению коллизии.
Основной способ борьбы с перегрузкой сегментов во времена преобладания сетей стандарта 10Base2. Весь сегмент разбивался на части. При этом вопрос передачи информации между сегментами при необходимости решался с помощью маршрутизации. Аппаратные средства особой популярностью не пользовались. Обычно сервер с несколькими сетевыми адаптерами устанавливался приблизительно в центре сети и на нем настраивался программный маршрутизатор.
Fast Ethernet - спецификация IEЕЕ 802.3 u официально принятая 26 октября 1995 года определяет стандарт протокола канального уровня для сетей работающих при использовании как медного, так и волоконно-оптического кабеля со скоростью 100Мб/с.
Новая спецификация является наследницей стандарта Ethernet IEЕЕ 802.3, используя такой же формат кадра, механизм доступа к среде CSMA/CD и топологию звезда. Эволюция коснулась нескольких элементов конфигурации средств физического уровня, что позволило увеличить пропускную способность, включая типы применяемого кабеля, длину сегментов и количество концентраторов.
Основными достоинствами технологии Fast Ethernet являются:
· увеличение пропускной способности сегментов сети до 100 Мб/c;
· сохранение метода случайного доступа Ethernet;
· сохранение звездообразной топологии сетей и поддержка традиционных сред передачи данных - витой пары и оптоволоконного кабеля.
Указанные свойства позволяют осуществлять постепенный переход от сетей 10Base-T - наиболее популярного на сегодняшний день варианта Ethernet - к скоростным сетям, сохраняющим значительную преемственность с хорошо знакомой технологией: Fast Ethernet не требует коренного переобучения персонала и замены оборудования во всех узлах сети.
Официальный стандарт 100Base-T (802.3u) установил три различных спецификации для физического уровня (в терминах семиуровневой модели OSI) для поддержки следующих типов кабельных систем:
· 100Base-TX для двухпарного кабеля на неэкранированной витой паре UTP категории 5, или экранированной витой паре STP Type 1;
· 100Base-T4 для четырехпарного кабеля на неэкранированной витой паре UTP категории 3, 4 или 5;
· 100Base-FX для многомодового оптоволоконного кабеля.
Гигабитный Ethernet также известен как "гигабит по меди" или 1000BaseT. Он представляет собой обычную версию Ethernet, работающую на скоростях до 1.000 мегабит в секунду, то есть в десять раз быстрее 100BaseT. Основой гигабитного Ethernet является стандарт IEEE 802.3z, который был утвержден в 1998 году. Однако в июне 1999 года к нему вышло дополнение - стандарт гигабитного Ethernet по медной витой паре 1000BaseT. Именно этот стандарт смог вывести гигабитный Ethernet из серверных комнат и магистральных каналов, обеспечив его применение в тех же условиях, что и 10/100 Ethernet.
До появления 1000BaseT для гигабитного Ethernet необходимо было использовать волоконно-оптический или экранированный медный кабели, которые вряд ли можно назвать удобными для прокладки обычных локальных сетей. Данные кабели (1000BaseSX, 1000BaseLX и 1000BaseCX) и сегодня используются в специальных областях применения, поэтому мы не будем их рассматривать. Группа гигабитного Ethernet 802.3z прекрасно справилась со своей работой - она выпустила универсальный стандарт, в десять раз превышающий скорость 100BaseT. 1000BaseT также является обратно совместимым с 10/100 оборудованием, он использует CAT-5 кабель (или более высокую категорию). Кстати, сегодня типичная сеть построена именно на базе кабеля пятой категории.
Таблица 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м |
|
Тип используемых коммутационных устройств, дополнительное оборудование |
Повторитель, Т-коннекторы терминаторы |
Коммутационные шнуры, панели, концентраторы |
Коммутаторы, модули, панели |
Вывод: Разработанный в 1973 стандарт Ethernet сегодня является наиболее популярным среди стандартов ЛВС. Как технология с разделяемой средой Ethernet обеспечивает скорость передачи 10 мегабит в секунду (Mbps) для всех пользователей, имеющих доступ к среде передачи и протокол разрешения доступа. По мере расширения сети доступная пользователю полоса сужается за счет того, что канал 10 Mbps делится между всеми узлами сети. Повышение производительности компьютеров и использование приложений с интенсивным сетевым трафиком требует расширения полосы для полной реализации возможностей программ и оборудования. Расширение сетей и повышение производительности компьютеров требуют расширения доступной пользователям полосы, обеспечиваемой сетевой средой передачи.
Существует два способа расширения полосы, доступной каждому пользователю. Технология Fast Ethernet базируется на расширении полосы разделяемой среды до 100 Mbps, обеспечивая рост скорости в 10 раз. Другим способ является снижение числа узлов сети, называемый сегментацией и осуществляется за счет деления большой сети на несколько меньших. Новый тип устройств, называемых коммутаторами Ethernet, обеспечивает требуемые возможности.
Fast Ethernet.В сетях 100Base-TX уровень сигнала не так важен по сравнению со временем распространения сигналов. Механизм CSMA/CD в сети Fast Ethernet работает так же, как в сети Ethernet 10 Мбит/с, и пакеты имеют аналогичный размер, но их скорость распространения через среду передачи в десять раз выше. Из-за того, что механизм детектирования коллизий остался тем же, системы все еще должны выявлять возникновение коллизии прежде, чем истечет время состязания (то есть прежде, чем будут переданы 512 байт данных). Таким образом, поскольку трафик распространяется быстрее, временной зазор уменьшается, и максимальная длина сети также должна быть сокращена, чтобы выявление коллизий происходило безошибочно. По этой причине предельная общая длина сети 100Base-TX примерно составляет 210 м. Это значение необходимо соблюдать намного более жестко, чем максимум в 500 м для сети 10Base-T.
Однако дальнейшее развитие сетей Ethernet не закончилось, и следующим его этапом стало появление стандарта, получившего название Gigabit Ethernet. Основное достижение - это увеличение скорости передачи данных до 1 Гбит/с.
Для этого была разработана технология IEEE 802.3ab (1000BASE-T), использующая витую пару категорий 5e. В передаче данных участвуют все 4 пары. Скорость передачи данных - 250 Мбит/с по одной паре. Несмотря на то, что большинство существующих сетей используют Fast Ethernet, этот стандарт постепенно вытесняет более современный Gigabit Ethernet.
2. РАЗРАБОТКА МОДЕЛИ И МОДЕЛИРОВАНИЕ ФУНКЦИОНИРОВАНИЯ ЛОКАЛЬНОЙ ВЫЧИСЛИТЕЛЬНОЙ СЕТИ (ЛВС)
Для разработки модели используются основные положения теории массового обслуживании. ЛВС представляется в виде системы массового обслуживания (СМО) (рис. 1):
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Рис. 1. Представление ЛВС в виде СМО
От источников заявок (ПК) заявки поступают в сеть в случайные моменты времени с интенсивностями лn. Поступившие заявки обрабатываются в обслуживающем приборе с интенсивностью µ. Обслуживающий прибор - канал передачи данных ЛВС. Функция распределения интервалов времени между поступлениями заявок и функция распределения времени обработки заявки в обслуживающем приборе соответствуют показательному закону распределения:
- функция распределения интервалов времени между поступлениями заявок.
- функция распределения времени обработки заявки в обслуживающем приборе,
где л - интенсивность поступления заявок - расчет по формуле 1.
, (1)
где Vопф - объем передаваемого файла,
Lдк - длина кадра,
Тпф - требуемое время передачи файла;
- интенсивность обработки заявок в канале ЛВС:
, (2)
где Uнс - номинальная скорость передачи данных в канале; b - скорость передачи одного бита данных в канале;
- эффективная скорость в канале ЛВС:
, (3)
где Lдпд - длина поля данных пакета; - реальная скорость передачи данных в моделируемом канале ЛВС:
, (4)
где Lдпдi - длина поля данных кадра, переданного в канале модели ЛВС;
Тм - время моделирования работы сети, заданное в модели;
m - число переданных кадров в канале - определяется в результате моделирования работы сети в среде AnyLogic;
- коэффициент использования канала передачи данных ЛВС:
, (5)
Данные формулы нужны для того чтобы произвести расчеты, которые будут внесены в Таблицу 2, где:
л - интенсивность поступления заявок - расчет по формуле (1);
µ - интенсивность обработки заявок в приборе - расчет по формуле (2);
Сэ - эффективная скорость передачи данных в канале ЛВС - расчет по формуле (3).
Таблица 2
Расчет основных параметров модели
U - номинальная скорость (Мбит/с) |
L - длина поля данных кадра (байт) |
Сэ - эффективная скорость |
b |
л |
µ |
Cр- реальная скорость в канале |
К исп - коэффициент использ. канала |
|
10 |
46 |
1,242 |
0,1 |
123,67 |
0,027 |
0,6364 |
0,7113 |
|
100 |
3,457 |
0,1 |
104,58 |
0,013 |
0,8134 |
0,8454 |
||
100 |
46 |
12,423 |
0,01 |
123,67 |
0,268 |
0,6471 |
0,8976 |
|
100 |
25,673 |
0,01 |
104,58 |
0,198 |
0,7818 |
0,9014 |
Для нахождения Ср (реальная скорость передачи данных в моделируемом канале ЛВС) и Кисп (коэффициент использования канала передачи данных ЛВС) построим модель в программной среде имитационного моделирования Any Logic.
2.1 Построение модели в программной среде имитационного моделирования Any Logic
Рис. 2. Соединение элементов модели
а) график количества принятых и переданных файлов
б) график коэффициента
а) б)
Рис. 3 Технологии Ethernet с длиной кадра 46 байт
а) б)
Рис. 4. Технология Fast Ethernet с длиной кадра 46 байт
а) б)
Рис. 5. Технология Ethernet с длиной кадра 100 байт
а) б)
Рис. 5. Технология Fast Ethernet с длиной кадра 100 байт.
2.2 Технико-экономическое обоснование выполнения работы
Таблица 3
Расчет стоимости развертывания ЛВС
Вид технологии ЛВС |
Кабель |
Разъёмы |
Коммутационное оборудование или Хаб (для технологии Ethernet) |
Сетевая карта |
Общая стоимость руб. |
|||||||||
Тип |
Длина, м |
Цена, руб. |
Тип |
Количество |
Стоимость, руб. |
Тип |
Количество |
Стоимость, руб. |
тип |
Количество |
Стоимость, руб. |
|||
Ethernet |
UTP 3 |
24 |
270 |
RJ-45 |
12 |
72 |
EFAH05W |
1 |
1422 |
Trendnet TEG-PCITXR |
6 |
3474 |
5238 |
|
Fast Ethernet |
витая пара 5 UTP |
24 |
144 |
RJ-45 |
12 |
72 |
Trendnet N-Way Switch TE100-S55E 5-port |
1 |
784 |
DGE-530T |
6 |
3576 |
4576 |
|
Gigabit Ethernet |
оптоволоконный 50 мкм |
24 |
12 576 |
RJ-45 |
12 |
72 |
Trendnet-SG1005D5-port |
1 |
12 42 |
Trendnet Ectx |
6 |
12636 |
26526 |
В результате моделирования развертывать ЛВС (локально вычислительную сеть) рекомендуется по технологии Fast Ethernet, так как здесь достаточно высокий коэффициент использования канала,а также приемлемая стоимость аппаратных средств. Сеть Fast Ethernet получается более экономически выгодной, чем, к примеру, сеть Ethernet. Поэтому такая сеть будет удовлетворять как техническим, так и экономическим требованиям задания. Таким образом, данная технология Fast Ethernet может использоваться для передачи данных.
имитационный аппаратный компьютерный сетевой
3. РАЗРАБОТКА КЛИЕНТ-СЕРВЕРНОГО ПРИЛОЖЕНИЯ
3.1 Разработка алгоритмов
3.1.1 Разработка и описание алгоритма клиентской части - схема связи классов
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Рис. 6. Схема взаимосвязи классов
Сервер -- это техническое решение, которое предоставляет множеству компьютеров доступ к файлам, данным, ресурсам принтеров и факсов, а также многому другому. Сервером часто называют специальный компьютер (или оборудование), на котором работает серверное программное обеспечение. Сервер оптимизирован для оказания услуг другим компьютерам, или «клиентам». Клиентами могут быть компьютеры, а также принтеры, факсы и другие устройства, подключенные к серверу. Вместе сервер и его клиенты образуют клиент-серверную сеть. Клиент-серверная сеть предоставляет системы маршрутизации и обеспечивает централизованный доступ к информации, ресурсам, хранящимся данным и многому другому.
Клиент-сервер (англ. Client-server) -- вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемых серверами, и заказчиками услуг, называемых клиентами. Нередко клиенты и серверы взаимодействуют через компьютерную сеть и могут быть как различными физическими устройствами, так и программным обеспечением.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Рис. 7 Алгоритм функционирования приложения клиента
Описание алгоритма
Начало алгоритма
Шаг 1. Производится выполнение действия Ввод host port file.
Шаг 2. Происходит проверка логического условия «Все данные введены?» Если условие выполняется,то шаг три,если нет,то шаг восемь.
Шаг 3. Производится выполнение действия «Получить номер порта соединения».
Шаг 4. Производится выполнение действия «Получить имя файла, копируемого с сервера».
Шаге 5. Производится выполнение действия «Создание объекта Сокета sock».
Шаг 6. Производится выполнение действия «Создание объекта управления символьным выводом в сокет Pw».
Шаг 7. Производится выполнение действия «Создание объекта управления символьным вводом из сокета br».
Шаг 8. Он ответвляется от этапа 2, осуществляется вывод «Нет исходных данных».
Конец алгоритма
Шаг 9. Производится выполнение действия «Считать ответ от сервера из сокета»
Шаг 10. Производится выполнение действия «Считать ответ от сервера из сокета».
Шаг 11. Производится выполнение действия «Определить число токенов в сообщении st.countTokens ()».
Шаг 12. Происходит проверка логического условия «countTokens()>=2».
Левая ветвь конец алгоритма.
Шаг 13. Происходит проверка логического условия «st.nextTokens()!= “200”».
Шаг 14. Осуществляется вывод результатов « File not found».
Шаг 15. Происходит проверка логического условия « br.readLine()!= null».
Правая ветвь конец алгоритма.
Шаг 16. Осуществляется вывод результатов «Значение файла».
3.1.2 Разработка и описание алгоритма серверной части
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Рис. 8. Алгоритм функционирования серверного приложения
Описание алгоритма
Начало алгоритма
Шаг 1. Производится выполнение действия «Создание объекта типа сервера установить номер порта 8083»
Шаг 2. Происходит проверка логического условия «Поступил запрос от клиента?».
Шаг 3. Производится выполнение действия «Активизация соединение с клиентом по сокету, установить ему приоритет».
Шаг 4. производится выполнение действия «Создание объекта управления символьным выводом в сокет pw»
Шаг 5. Производится выполнение действия «Создание объекта управления символьным вводом из сокета br»
Шаг 6. Производится выполнение действия «Считать запрос от клиента из сокета»
Шаг 7. Производится выполнение действия «Определить число токенов в сообщении st.count Tokens()»
Шаг 8.(левая ветвь этапа 2). Производится выполнение действия «проверить сокет и ждать вызова от клиента»
Шаг9. Происходит проверка логического условия «st.countTokens ()>=2»
Шаг10. Происходит проверка логического условия «st.nextToken ().equals ("POST")»
Шаг11. Происходит проверка логического условия «st.nextToken().endsWith("/")»
Шаг12. Происходит проверка логического условия «req.equals("")»
Шаг13. Производится выполнение действия «Передать index.html»
Шаг14. Производится выполнение действия «Передать запрашиваемый файл»
Шаг15. Осуществляется вывод результатов «Значение файла»
Конец алгоритма
4. РАЗРАБОТКА ПРОГРАММ
4.1 Разработка серверной части программы
Посылка дейтаграмм по протоколу UDP
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
{
pw.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
{
System.out.println(e); // стандартный поток вывода
}
} }
4.2 Разработка клиентской части программы
Прием дейтаграмм по протоколу UDP
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); // Основной метод этого класса ожидает поступления запроса.
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); // метод вывода системных сообщений
}}}
4.3 Тесты. Результаты тестирования
Клиентская часть программы
Серверная часть программы
ЗАКЛЮЧЕНИЕ
В данном курсовом проекте я изучила основные принципы построения компьютерных сетей, разработки сетевых распределенных приложений на основе клиент - серверной технологии. Рассчитывала первичные параметры сети, на основе которых осуществила разработку имитационной модели функционирования локальной вычислительной сети. Построила модель в программной среде имитационного моделирования AnyLogic. Изучила и определила стоимость аппаратных средств, что позволило оптимально подобрать технологию построения компьютерной сети, удовлетворяющей технико-экономическим требованиям пользователей. А также, разработала алгоритмы и программы клиент-серверного приложения, после произвела и вывела результаты тестирования.
СПИСОК ЛИТЕРАТУРЫ
1. Олифер В.Г. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 2-е издание / В.Г. Олифер, Н.А. Олифер. - СПб.: Питер, 2008. - 864 с.
2. Олифер В.Г. Сетевые операционные системы / В.Г. Олифер, Н.А. Олифер. - СПб.: Питер, 2008.- 539 с.
3. Единая система программной документации. Официальное издание. - М.: Издательство стандартов, 1982. - 127 с.
Размещено на Allbest.ru
...Подобные документы
Анализ технологий, применяемых для построения современных ЛВС. Моделирование функционирования локальной вычислительной сети по технологии Fast Ethernet. Разработка клиент-серверного приложения и программного обеспечения, работающего в сети APMов.
курсовая работа [2,0 M], добавлен 23.11.2011Обеспечение правильной работы и обслуживания сети посредством разработки и исследования имитационной модели локальной вычислительной сети. Анализ основных проблем: организационная структура, расположение, испытание, проверка сети и экономическая выгода.
дипломная работа [606,9 K], добавлен 14.10.2010Сравнительный анализ топологий сети. Описательная сущность эталонной модели взаимосвязи открытых систем (OSI) и сетевых протоколов. Разработка структурно-функциональной схемы локальной сети, расчет производительности каналов и подбор оборудования.
курсовая работа [1,1 M], добавлен 16.11.2010Специфика работы терапевтического отделения. Разработка имитационной модели в среде AnyLogic. Выбор средств моделирования. Описание схемы моделирующего алгоритма. Организация вычислительного эксперимента над математической моделью, анализ его результатов.
курсовая работа [1,2 M], добавлен 10.06.2015Характеристика модели клиент-сервер как технологии взаимодействия в информационной сети. Разработка и описание алгоритмов работы приложений на платформе Win32 в среде Microsoft Visual Studio, использующих для межпроцессного взаимодействия сокеты.
курсовая работа [544,6 K], добавлен 02.06.2014Понятие и назначение локальной вычислительной сети, концепция ее построения, выбор топологии. Разработка конфигурации и расчет сетевых характеристик ЛВС ООО "Дон Терминал": технические и программные составляющие, стоимость; информационная безопасность.
курсовая работа [119,2 K], добавлен 08.08.2013Топология вычислительной сети как конфигурация графа, вершинам которого соответствуют компьютеры сети. Выбор технологии построения сети по методам передачи информации. Выбор сетевых устройств и средств коммуникации. Монтажная схема локальной сети.
курсовая работа [394,2 K], добавлен 28.02.2009Основные характеристики и алгоритмы настройки виртуальной локальной вычислительной сети VLAN, протоколов маршрутизации, системы доменных имен и трансляции сетевых адресов с целью разработки корпоративной сети в среде имитационного моделирования.
курсовая работа [556,1 K], добавлен 23.04.2011Особенности создания имитационной модели сети кафедры. Проведение экспериментов для получения информации об "узких местах" проектируемой сети. Расчет активного и пассивного оборудования. Построение логической схемы сети. Анализ загрузки каналов связи.
курсовая работа [4,2 M], добавлен 11.12.2012Создание локальной вычислительной сети, ее топология, кабельная система, технология, аппаратное и программное обеспечение, минимальные требования к серверу. Физическое построение локальной сети и организация выхода в интернет, расчет кабельной системы.
курсовая работа [749,1 K], добавлен 05.05.2010Назначение информационной системы. Требования к организации локальной сети, к системе бесперебойного питания сервера, к защите информации от несанкционированного доступа, к безопасности локальной сети, к web-сайту. Выбор серверной операционной системы.
дипломная работа [1,4 M], добавлен 22.12.2010Разработка компьютерных моделей, позволяющих рационально организовать потоки в железнодорожной сети. Составление списков входных и выходных параметров имитационной модели железнодорожной транспортной сети. Реализация алгоритма, листинг программы.
курсовая работа [1,4 M], добавлен 05.09.2009Token ring как технология локальной вычислительной сети (LAN) кольца с "маркерным доступом" - протокол локальной сети на канальном уровне (DLL) модели OSI. Логическая организация станций Token ring в кольцевую топологию с данными. Описание метода доступа.
лекция [168,8 K], добавлен 15.04.2014Особенности проектирования и анализ современных информационных локальных и глобальных вычислительных сетей. Проведение настройки виртуальной локальной вычислительной сети (VLAN), HTTP и DNS серверов, сетевых протоколов OSPF, RIP, STP, технологий NAT.
курсовая работа [182,1 K], добавлен 16.01.2014Особенности настройки корпоративной сети предприятия. Разработка приложения, обеспечивающего эффективную работу клиент-серверной сети железнодорожной кассы. Защита от несанкционированного доступа, специфика шифрования паролей и ряд других средств защиты.
курсовая работа [5,9 M], добавлен 30.01.2014Классификация локальных сетей по топологии. Сетевая архитектура Ethernet. Функциональная схема локальной вычислительной сети. Конфигурация сетевого оборудования: количество серверов, концентраторов, сетевых принтеров. Типовые модели использования доменов.
дипломная работа [447,5 K], добавлен 08.05.2011Подключение рабочих станций к локальной вычислительной сети по стандарту IEEE 802.3 10/100 BASET. Расчёт длины витой пары, затраченной на реализацию сети и количества разъёмов RJ-45. Построение топологии локальной вычислительной сети учреждения.
курсовая работа [1,4 M], добавлен 14.04.2016Типы сетевых кабелей локальной вычислительной сети. Особенности установки беспроводного соединения Wi-Fi. Расчет трудоемкости работ по созданию ЛВС, затрат на ее разработку и монтаж. Предполагаемая прибыль от реализации ЛВС, капитальных затрат покупателя.
курсовая работа [295,9 K], добавлен 27.12.2010Выбор локальной вычислительной сети среди одноранговых и сетей на основе сервера. Понятие топологии сети и базовые топологии (звезда, общая шина, кольцо). Сетевые архитектуры и протоколы, защита информации, антивирусные системы, сетевое оборудование.
курсовая работа [3,4 M], добавлен 15.07.2012Способы связи разрозненных компьютеров в сеть. Основные принципы организации локальной вычислительной сети (ЛВС). Разработка и проектирование локальной вычислительной сети на предприятии. Описание выбранной топологии, технологии, стандарта и оборудования.
дипломная работа [2,3 M], добавлен 19.06.2013