Передача звука по локальной сети

Нормативные ссылки

В данных методических указаниях используются ссылки на следующие нормативные документы:

ГОСТ 7.9-95 СИБИД. Реферат и аннотация. Общие требования.

ГОСТ 7.1-2003 СИБИД. Библиографическая запись. Библиографическое описание. Общие требования и правила составления.

ГОСТ 7.12-93 СИБИД. Библиографическая запись. Сокращения слов на русском языке. Общие требования и правила.

ГОСТ Р 1.5-2002 ГСИ РФ. Стандарты. Общие требования к построению, изложению, оформлению, содержанию, обозначению.

ГОСТ Р ИСО 19011-2003. Руководящие указания по аудиту.

ГОСТ 8.417-2002 ГСИ. Единицы величин.

ГОСТ 2.301-68 ЕСКД. Форматы.

ОК 015-94. Общероссийский классификатор единиц измерения.

ГОСТ 19.101-77 ЕСПД. Виды программ и программных документов.

ГОСТ 19.103-77 ЕСПД. Обозначения программ и программных документов.

ГОСТ 19.104-78 ЕСПД. Основные надписи.

ГОСТ 19.202-78 ЕСПД. Спецификация. Требования к содержанию и оформлению.

ГОСТ 2.316-68 ЕСКД. Правила нанесения на чертежах надписей, технических требований и таблиц.

ГОСТ 3.1103-82 ЕСТД. Основные надписи.

ГОСТ 19.401-78 ЕСПД. Текст программы. Требования к содержанию и оформлению.

ГОСТ 19.402-78 ЕСПД. Описание программы.

ГОСТ 19.404-79 ЕСПД. Пояснительная записка. Требования к содержанию и оформлению.

СТП Куб ГТУ 4.2.6 – 2004 СМК. Учебно-организационная деятельность. Курсовое проектирование.

СТП Куб ГТУ 1.9.2 – 2003 СМК. Документирование системы менеджмента качества. Стандарт предприятия.

Реферат

Пояснительная записка к курсовому проекту содержит 27 листов, 4 рисунка, 4 литературных источников, 1 приложение. К пояснительной записке прилагается 1 диск с программами «транслятор» и материалами к ней.

ЛВС, РАДИОСТАНЦИЯ, СТРУКТУРА, СЕТЬ, ПАРАМЕТРЫ, СЕРВЕР, ПРОТОКОЛ, UDP, TCP,

Объекты: разработка приложения для передачи звука по локальной сети.

Предмет: поток данных, звуковая подсистема.

Цель: закрепление знаний по предмету «Сети ЭВМ», разработка программы для передачи звука по локальной сети.

В работе выполнено передача потоковых данных. Приведена программа, которая позволяет транслировать «звук» по локальной сети в реальном времени.

Содержание

Введение

1 Понятие информационной технологии

1.1 Обобщенная структура компьютерной сети

1.2 Структура потока

2 Теоретическая разработка программного продукта

2.1 Теоретический материал по теме «Локальные вычислительные сети»

2.2 Решение поставленной задачи

2.3 Практическая реализация передачи звука по сети

3 Разработка программного продукта

3.1 Общая схема взаимодействия программы и звуковой подсистемы

3.2 Постановка задачи по разработке программного продукта

3.3 Создание приложения передачи звука. Программная реализация приложения «транслятор»

3.4 Результаты тестирования

Заключение

Список используемой литературы

Введение

Современные информационные системы продолжают возникшую в конце 70-х гг. тенденцию распределенной обработки данных. Начальным этапом развития таких систем явились многомашинные ассоциации – совокупность вычислительных машин различной производительности, объединенных в систему с помощью каналов связи. Высшей стадией систем распределенной обработки данных являются компьютерные (вычислительные) сети различных уровней – от локальных до глобальных.

В первой главе данной работы рассмотрены характеристики объекта проектирования

Во второй главе – рассмотрены варианты реализации программного продукта.

Третей главе – разработка программного продукта

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

1 Понятие информационной технологии

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

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

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

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

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

Цель ИТ - производство информации для её анализа человеком и принятия на его основе решения по выполнению какого - либо действия.

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

1.1 Обобщенная структура компьютерной сети

Компьютерные сети являются высшей формой многомашинных ассоциаций.

Выделим основные отличия компьютерной сети от многомашинного вычислительного комплекса.

Первое отличие — размерность. В состав многомашинного вычислительного комплекса входят обычно две, максимум три ЭВМ, расположенные преимущественно в одном помещении. Вычислительная сеть может состоять из десятков и даже сотен ЭВМ, расположенных на расстоянии друг от друга от нескольких метров до десятков, сотен и даже тысяч километров.

Второе отличие — разделение функций между ЭВМ. Если в многомашинном вычислительном комплексе функции обработки данных, передачи данных и управления системой могут быть реализованы в одной ЭВМ, то в вычислительных сетях эти функции распределены между различными ЭВМ.

Третье отличие — необходимость решения в сети задачи маршрутизации сообщений. Сообщение от одной ЭВМ к другой в сети может быть передано по различным маршрутам в зависимости от состояния каналов связи, соединяющих ЭВМ друг с другом.

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

Абоненты сети – объекты, генерирующие или потребляющие информацию в сети. Ими могут быть отдельные ЭВМ, комплексы ЭВМ, терминалы, промышленные роботы, станки с числовым программным управлением и т.д. Любой абонент сети подключается к станции.

Станция – это аппаратура, которая выполняет функции, связанные с передачей и приёмом информации.

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

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

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

1.2 Структура потока

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

В PCM блоком считается набор отсчетов, передаваемых за один период частоты дискретизации, то есть - один отсчет для монофонических потоков, два - для стереофонических, и так далее. Таким образом, блоки следуют друг за другом с частотой дискретизации, а отсчеты в блоках размещаются, начиная с левого (нулевого) канала. Когда отсчет занимает более одного байта - байты размещаются в порядке возрастания старшинства, как это принято в процессорах Intel.

8-разрядные отсчеты в PCM представляются в виде беззнаковых целых чисел; за нуль сигнала принято "центральное" значение 128 (шестнадцатеричное 80). Таким образом, предельной отрицательно амплитуде сигнала соответствует нулевое значение отсчета, а предельной положительной - значение FF. Для пересчета значений отсчетов в знаковую двуполярную форму в диапазоне от -128 до +127 из них нужно вычитать 128 (0x80) (или прибавлять то же самое смещение, вычисляя по модулю 256, что дает такой же результат).

Отсчеты с разрядностью более 8 представляются в виде целых чисел со знаком в стандартном формате Intel; за нуль сигнала принято нулевое же значение отсчета. Здесь может без каких-либо ограничений применяться обычная целая арифметика - например, над типами short (16-разрядный) и long (32-разрядный).

Если разрядность отсчета превышает 16, она может быть не кратна байту - современные звуковые адаптеры могут использовать 18-, 20- и 22-разрядные отсчеты. В таком случае отсчет выравнивается по старшей границе трех- или четырехбайтового слова, а лишние младшие разряды заполняются нулями. Такое представление позволяет работать с отсчетами любой разрядности, как с 24- или 32-разрядными; от фактической разрядности отсчета зависит лишь точность получившегося числа.

24-разрядные трехбайтовые слова - достаточно неудобная для современного компьютера единица данных, поэтому некоторые адаптеры и драйверы для оптимизации могут использовать для отсчетов с разрядностью более 16 четырехбайтовые, 32-разрядные слова. В любом случае, фактическая разрядность отсчета задается параметром разрядности формата, а размер слова, в котором размещается отсчет, определяется из размера блока, путем деления его на количество каналов в потоке.

В форматах других типов размер и структура блока подчиняются собственным правилам; зачастую блок сводится к одному байту.

2 Теоретическая разработка программного продукта

2.1 Теоретический материал по теме

«Локальные вычислительные сети»

Локальная вычислительная сеть (ЛВС) – это совокупность компьютеров и других средств вычислительной техники (активного сетевого оборудования, принтеров, сканеров и т. п.), объединенных с помощью кабелей и сетевых адаптеров и работающих под управлением сетевой операционной системы.

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

Эффективно эксплуатировать мощности ЛВС позволяет применение технологии «клиент/сервер». В этом случае приложение делится на две части: клиентскую и серверную. Один или несколько наиболее мощных компьютеров сети конфигурируются как серверы приложений: на них выполняются серверные части приложений. Клиентские части выполняются на рабочих станциях; именно на рабочих станциях формируются запросы к серверам приложений и обрабатываются полученные результаты.

Различают сети с одним или несколькими выделенными серверами и сети без выделенных серверов, называемые одноранговыми сетями. Рассмотрим сначала локальные сети с выделенным сервером. В сетях с выделенным сервером именно ресурсы сервера, чаще всего дисковая память (винчестер), доступны всем пользователям. Серверы, разделяемым ресурсом которых является дисковая память, называются файл-серверами. Можно сказать, что сервер обслуживает все рабочие станции. Файловый сервер обычно используется только администратором сети и не предназначен для решения прикладных задач. Файловые серверы почти всегда содержат несколько быстродействующих накопителей. Сервер должен быть высоконадежным, поскольку выход его из строя приведет к остановке работы всей сети. На файловом сервере, как правило, устанавливается сетевая операционная система.

На рабочих станциях, как правило, устанавливается обычная операционная система, например, Windows.

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

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

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

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

В случае с ЛВС с выделенным сервером при выборе компьютера на роль файлового сервера необходимо учитывать следующие факторы:

– быстродействие процессора;

– скорость доступа к файлам, размещенным на жестком диске;

– емкость жесткого диска;

– объем оперативной памяти;

– уровень надежности сервера;

– степень защищенности данных.

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

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

Сетевые ОС с выделенным файл-сервером обычно имеют более высокую производительность, поскольку они оптимизированы именно под выполнение операций с файлами. В принципе, никаких более важных действий на выделенном файл-сервере не выполняется. Значительного повышения производительности работы сервера можно добиться, увеличивая его оперативную память. В одноранговой сети 128 мегабайт памяти может быть вполне достаточно, в то время как для крупной сети с выделенным файл-сервером желательна память объемом 512 и более мегабайт. Если файловый сервер снабжен оперативной памятью достаточного объема, то он имеет возможность именно в оперативной памяти хранить те области дискового пространства, к которым обращаются наиболее часто. Такой метод хорошо известен, часто применяется для ускорения доступа к данным на обычных ПК и называется методом кэширования.

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

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

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

Затраты на организацию одноранговых вычислительны сетей относительно небольшие, Однако при увеличении числа рабочий станций эффективность их использования резко уменьшается Пороговое значение числа рабочих станций составляет, по оценкам фирмы Novell, 25-30. Поэтому одноранговые сети используются только для относительно небольших рабочих групп.

Что касается архитектуры ЛВС, то различают три наиболее распространенные сетевые архитектуры, которые используются и для одноранговых сетей и для сетей с выделенным файл- сервером. Это так называемые шинная, кольцевая и звездообразная структуры.

В случае реализации шинной структуры все компьютеры связываются в цепочку.

Причем на ее концах надо разместить так называемые терминаторы, служащие для гашения сигнала. Если же хотя бы один из компьютеров сети с шинной структурой оказывается неисправным, вся сеть в целом становится неработоспособной. В сетях с шинной архитектурой для объединения компьютеров используется тонкий и толстый кабель. Максимальная теоретически возможная пропускная способность таких сетей составляет 10 Мбит/с, Такой пропускной способности для современных приложений, использующих видео- и мультимедийные данные, явно недостаточно, Поэтому почти повсеместно применяются сети с звездообразной архитектурой.

Для построения сети с звездообразной архитектурой в центре сети необходимо разместить концентратор. Его основная функция - обеспечение связи между компьютерами, входящими в сеть. То есть все компьютеры, включая файл- сервер, не связываются непосредственно друг с другом, а присоединяются к концентратору. Такая структура надежнее, поскольку в случае выхода из строя одной из рабочих станций все остальные сохраняют работоспособность. В сетях же с шинной топологией в случае повреждения кабеля хотя бы в одном месте происходит разрыв единственного физического канала, необходимого для движения сигнала. Кроме того, сети с звездообразной топологией поддерживают технологии Fast Ethernet и Gigabit Ethernet, что позволяет увеличить пропускную способность сети в десятки и даже сотни раз (разумеется при использовании соответствующих сетевых адаптеров и кабелей).

Кольцевая структура используется в основном в сетях Token Ring и мало чем отличается от шинной. Также в случае неисправности одного из сегментов сети вся сеть выходит из строя. Правда, отпадает необходимость в использовании терминаторов.

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

Остановимся подробнее на принципах работы сетевого адаптера. Связь между компьютерами ЛВС физически осуществляется на основе одной из двух схем - обнаружения коллизий и передачи маркера. Метод обнаружения коллизий используется стандартами Ethernet, Fast Ethernet и Gigabit Ethernet, а передачи маркера - стандартом Token Ring. В сетях Ethernet адаптеры непрерывно находятся в состоянии прослушивания сети. Для передачи данных сервер или рабочая станция должны дождаться освобождения ЛВС и только после этого приступить к передаче. Однако не исключено, что передача может начаться несколькими узлами одного сегмента сети одновременно, что приведет к коллизии. В случае возникновения коллизии, узлы должны повторить свои сообщения. Повторная передача производится адаптером самостоятельно без вмешательства процессора компьютера. Время, затрачиваемое на преодоление коллизии, обычно не превышает одной микросекунды. Передача сообщений в сетях Ethernet производится пакетами со скоростью 10, 100 и 1000 Мбит/с.

Естественно, реальная загрузка сети меньше, поскольку требуется время на подготовку пакетов. Все узлы сегмента сети принимают сообщение, передаваемое компьютером этого сегмента, но только тот узел, которому оно адресовано, посылает подтверждение о приеме. Основными поставщиками оборудования для сетей Ethernet являются фирмы 3Com, Bay Networks (недавно компания Nortel купила Bay Networks), CNet.

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

Если данный узел не является адресатом, то он передает тот же самый пакет следующему узлу. Передаваемый пакет может содержать либо данные, направляемые от одного узла другому, либо маркер. Маркер - это короткое сообщение, являющееся признаком незанятости сети. В том случае, когда рабочей станции необходимо передать сообщение, ее сетевой адаптер дожидается поступления маркера, а затем формирует пакет, содержащий данные, и передает этот пакет в сеть. Пакет распространяется по ЛВС от одного сетевого адаптера к другому до тех пор, пока не дойдет до компьютера - адресата, который произведет в нем стандартные изменения. Эти изменения являются подтверждением того, что данные достигли адресата. После этого пакет продолжает движение дальше по ЛВС, пока не возвратится в тот узел, который его сформировал. Узел - источник убеждается в правильности передачи пакета и возвращает в сеть маркер. Важно отметить, что в ЛВС с передачей маркера функционирование сети организовано так, что коллизии возникнуть не могут. Пропускная способность сетей Token Ring равна 16 Мбит/с.

Оборудование для сетей Token Ring производит IBM, 3Com и некоторые другие фирмы.

Небольшая сеть обычно состоит из:

– ПК и периферийных устройств, таких как принтеры;

– сетевых адаптеров для ПК и сетевых кабелей;

– сетевого оборудования, такого как концентраторы и коммутаторы, которые соединяют между собой ПК и принтеры;

– сетевой операционной системы, например Windows.

Кроме того, может потребоваться и другое оборудование.

В ПК для того, чтобы его можно было использовать в сети, необходимо установить сетевые адаптеры. Некоторые ПК имеют заранее установленный сетевой адаптер. Сетевой адаптер должен быть по скорости совместим с концентратором, к которому ПК подключается. Так, сетевой адаптер Ethernet соответствует концентратору Ethernet, а сетевой адаптер Fast Ethernet - концентратору Fast Ethernet.

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

Термин "концентратор" иногда используется для обозначения любого сетевого устройства, которое служит для объединения ПК сети, но на самом деле концентратор - это многопортовый повторитель. Устройства подобного типа просто передают (повторяют) всю информацию, которую они получают - то есть все устройства, подключенные к портам концентратора, получают одну и ту же информацию.

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

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

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

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

В небольшой сети (до 20 рабочих мест) концентратор или группа концентраторов вполне могут справиться с сетевым трафиком. В этом случае концентратор просто служит для соединения всех пользователей сети. В сети большего размера (около 50 пользователей) может появиться необходимость использовать коммутаторы для разделения сети на сегменты, чтобы уменьшить количество необязательного трафика.

При формировании сети из нескольких устройств необходимо соблюдать ряд правил, относящихся к:

– числу концентраторов, которые можно соединять друг с другом,

– длине используемого кабеля,

– типу используемого кабеля.

Эти правила аналогичны для Ethernet и Fast Ethernet. Если имеется дело с концентраторами, поддерживающими соединения двух типов - Ethernet и Fast Ethernet, то нужно использовать Ethernet - или Fast Ethernet-правила в зависимости от типа подключаемого к концентратору оборудования. Если же соединяется два концентратора вместе, то должно иметь место Fast Ethernet- соединение.

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

В сетях Ethernet 10Ваsе-Т максимальное количество расположенных подряд концентраторов не должно превышать четырех.

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

Максимальное число концентраторов в одной ветви сети Ethernet на витой паре - четыре. Можно использовать кабель на витой паре категорий 3 или 5. Максимальная длина кабельного сегмента – 100 м.

Максимальное число концентраторов в одной ветви сети Fast Ethernet на витой паре - два. Для стандарта 100Base-TX необходим кабель на витой паре категории 5. Максимальная длина сегмента кабеля – 100 м. Общая длина кабеля на витой паре, проходящего через непосредственно соединенные концентраторы, не должна превышать 205 м.

Если используется концентратор с портами как Ethernet, так и FastEthernet, то необходимо убедиться в том, что сеть удовлетворяет требованиям как для Ethernet, так и для Fast Ethernet. Любое взаимодействие между устройствами Ethernet и Fast Ethernet, присоединенными к такому концентратору, осуществляется через внутренний коммутатор, так что специальных правил для устройств Ethernet/ Fast Ethernet не существует.

Категории витой пары:

– (1) подходит только для передачи голосовых сообщений на скорости до 4 Мбит/с;

– (2) подходит для передачи голоса и данных на скорости до 4 Мбит/с;

– (3) подходит для передачи голоса и данных на скорости до 16 Мбит/с. Используется в сетях Ethernet, Token Ring;

– (4) подходит для передачи данных на скорости до 20 Мбит/с;

– (5) улучшенная 3-я категория. Подходит для передачи данных на скорости до 100 Мбит/с. Используется в сетях Fast Ethernet, Token Ring;

– (5+) подходит для передачи данных на скорости до 155 Мбит/с. Используется в сетях ATM.

При выборе сетевой карты, нужно обратить внимание на то, с какой шиной – PCI или ISA, – она работает. Сейчас большинство сетевых карт предназначено для размещения в PCI-слоты. Поскольку шина PCI более быстродействующая, ее предпочтительно использовать в сетях Fast Ethernet.

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

– исправность сетевого соединения;

– режим работы: полу или полнодуплексный;

– скорость передачи данных 10 или 100 Мбит/с;

– идет передача данных или нет.

Для отображения режима работы и скорости передачи могут использоваться не два индикатора, а один. Например, компания 3Com для демонстрации скорости передачи использует два индикатора, a SMC – один, цвет которого меняется в зависимости от значения скорости – 10 или 100 Мбит/с.

Существует еще ряд характеристик, которые в ряде случаев следует учитывать при выборе сетевых карт. К ним относятся: наличие Boot ROM, то есть возможность загрузки с сетевой карты (а не, например, с винчестера); наличие режима Bus master, то есть возможность независимой работы с шиной; поддержка удаленного управления и администрирования (например, SNMP). Кроме того, многие производители сетевого оборудования и ПО, разработали программные средства, позволяющие увеличить производительность работы сетевых адаптеров: Dynamic Access 3Com, Adaptive Technology Intel и т. д.

2.2 Решение поставленной задачи

Вы, возможно, не знали о том, что компоненты, которые устанавливаются вместе с Windows Media Player 9 (и более поздними версиями) содержат встроенные средства широковещательной передачи аудио-данных. Фактически каждый подключенный к сети компьютер, на котором установлен Windows Media Player, может быть превращен в сетевую радиостанцию. Для этого можно воспользоваться готовыми программами. Можно написать собственную программу, используя напрямую интерфейсы, предоставляемые Windows Media System (такие как IWMWriterNetworkSink, IWMProfile, IWMCodecInfo) и еще десяток функций и интерфейсов (их описание содержится в Windows Media SDK).

2.3 Практическая реализация передачи звука по сети

Мы рассмотрим другое решение - создание собственной Интернет-радиостанции с помощью Delphi и компонентов New Audio Components (NewAC). Мы увидим, что в простейшем примере нам будет достаточно соединить два компонента и настроить их свойства.

Что дает нам написание собственной программы передачи аудио-данных? Прежде всего - свободу. Можно организовать передачу аудио с помощью микрофона, подключенного к вашему компьютеру.

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

Поскольку передача данных выполняется в формате Windows Media Audio, ее можно будет прослушивать с любого компьютера, на котором установлен Windows Media Player, или совместимый проигрыватель. Стоит отметить, что за последние годы качество потокового аудио-формата Windows Media Audio заметно улучшилось, так что даже при скорости передачи данных 16 кбит/сек мы можем получить звук вполне приемлемого радио-качества. При этом передача данных создаст незначительную нагрузку на локальную сеть. Разумеется, ничто не мешает нам организовать передачу данных с более высоким битрейтом, (а, следовательно, - качеством), но нагрузка на сеть в этом случае, естественно, возрастет. При наличии DSL-модема и видимого из внешней сети IP-адреса вы даже можете организовать трансляцию в глобальную сеть, хотя число клиентов, способных принимать вашу радиопередачу будет не очень велико.

3 Разработка программного продукта

3.1 Общая схема взаимодействия программы и звуковой подсистем

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

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

Работа программы с устройством начинает с его открывания функцией Open. При этом программа указывает требуемый формат звукового потока, а также способ уведомления о выполнении запрошенных операций.

Затем программа создает (обычно - в динамической памяти) один или несколько звуковых буферов с заголовками и заполняет заголовки в соответствии с установленными правилами. Программа может также сразу подготовить все звуковые буферы к передаче драйверу функциями Prepare, либо делать это непосредственно перед передачей каждого очередного буфера.

Цикл записи начинается с накопления в очереди драйвера нескольких буферов при помощи функции AddBuffer. После накопления нужного количества буферов программа запускает запись потока функцией Start. В этот момент драйвер запускает АЦП адаптера, и звуковые отсчеты начинают поступать в первый буфер из очереди.

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

Цикл воспроизведения начинается с заполнения одного или нескольких буферов звуковыми данными, после чего они передаются драйверу устройства вывода функцией Write. После получения первого же буфера драйвер запускает ЦАП адаптера, который начинает извлекать звуковые отсчеты. Драйвер всегда воспроизводит каждый буфер полностью, в соответствии со значением поля dwBufferLength в его заголовке. После возврата отработанных буферов приложению они вновь заполняются данными и опять передаются драйверу.

При необходимости приостановить движение потока вызывается функция Stop/Pause. При этом устройство ввода сразу же возвращает очередной буфер приложению - возможно, заполненный лишь частично. Не полностью проигранный буфер устройства вывода остается в очереди. Остальные буферы устройств обоих типов также остаются в очереди и включаются в работу только после перезапуска потока функциями Start/Restart.

Для устройств вывода, поддерживающих расширенные функции управления, программа может регулировать громкость звука функцией SetVolume, а также изменять высоту тона и скорость воспроизведения функциями SetPitch/SetPlaybackRate. Более общим способом регулировки громкости является обращение к микшеру (mixer), который является устройством класса Aux.

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

После завершения использования буферов их необходимо освободить от фиксации в памяти функциями Unprepare, после чего буферы могут быть возвращены в пул динамической памяти (heap).

При полном завершении работы с устройством оно закрывается функцией Close.

3.2 Постановка задачи по разработке программного продукта

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

Приложения оформить в виде визуальных приложений.

Входные данные: параметры сети.

Выходные данные: выведенная найденная информация.

Функции:

– определение портов сети;

– вывод времени радиовещания.

3.3 Создание приложения передачи звука. Программная реализация приложения «транслятор»

Класс программы «Транс» – «Form1». Его описание – на рисунке 1.

Класс «Form1»

Открытые поля

public string dan

public string ip

StartButton.Enabled := True;

Открытые методы

TForm1.StopButtonClick

TForm1.Timer1Timer

TForm1.WMStreamedOut1ThreadException

TForm1.FormCreate

Рисунок 1 – описание класса Form1

Поле ip используется для обращения ip-адреса приложения. Метод Timer1 используется для посчета интервала времени. В нём производится сбор информации об адаптерах, остальная информация собирается с помощью методов, вызванных в коде этого метода.

Листинг метода OSNMET() с комментариями:

unit Main;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ACS_Classes, StdCtrls, ComCtrls, ACS_DXAudio, Spin, ExtCtrls, ACS_Wave,

ACS_WinMedia;

type

TForm1 = class(TForm)

StartButton: TButton;

StatusBar1: TStatusBar;

StopButton: TButton;

Timer1: TTimer;

Label2: TLabel;

SpinEdit2: TSpinEdit;

Label3: TLabel;

Label4: TLabel;

PauseButton: TButton;

DXAudioIn1: TDXAudioIn;

WMStreamedOut1: TWMStreamedOut;

procedure StartButtonClick(Sender: TObject);

procedure OutputDone(Sender: TComponent);

procedure StopButtonClick(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure SpinEdit2Change(Sender: TObject);

procedure PauseButtonClick(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure WMStreamedOut1ThreadException(Sender: TComponent);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.StartButtonClick(Sender: TObject);

begin

StartButton.Enabled := False;

SpinEdit2.Enabled := False;

WMStreamedOut1.Run;

Timer1.Interval := 1000;

end;

procedure TForm1.OutputDone(Sender: TComponent);

begin

StartButton.Enabled := True;

SpinEdit2.Enabled := True;

end;

procedure TForm1.StopButtonClick(Sender: TObject);

begin

WMStreamedOut1.Stop;

end;

procedure TForm1.Timer1Timer(Sender: TObject);

begin

Label2.Caption := Format('Продолжительность: %d секунд', [WMStreamedOut1.TimeElapsed]);

end;

procedure TForm1.WMStreamedOut1ThreadException(Sender: TComponent);

begin

Self.StatusBar1.Panels[0].Text := WMStreamedOut1.ExceptionMessage;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

SpinEdit2.MaxValue := DXAudioIn1.DeviceCount - 1;

SpinEdit2.MinValue := 0;

SpinEdit2.Value := 0;

Label4.Caption := DXAudioIn1.DeviceName[SpinEdit2.Value];

end;

procedure TForm1.SpinEdit2Change(Sender: TObject);

begin

Label4.Caption := DXAudioIn1.DeviceName[SpinEdit2.Value];

DXAudioIn1.DeviceNumber := SpinEdit2.Value;

end;

procedure TForm1.PauseButtonClick(Sender: TObject);

begin

if WMStreamedOut1.Status = tosPlaying then WMStreamedOut1.Pause;

if WMStreamedOut1.Status = tosPaused then WMStreamedOut1.Resume;

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

begin

WMStreamedOut1.Stop(False);

end;

end. По нажатию на кнопку «Запуск» полю для хранения IP-адреса серввера присваивается значение, находящееся в поле для ввода IP-адреса. Зпускается timer1, отвечающий за отправление информации серверу, и форма становится прозрачной.

3.4 Результаты тестирования

Для запуска программы необходимо открыть файл RadioStation.exe на каком-либо компьютере сети. После запуска программы нам остается выбрать аудиоустройство, с которого мы будем транслировать звук, и щелкнуть кнопку "Старт" рис 2.

Рисунок 2 – Выбор устройства

Для того чтобы "настроиться" на нашу радиостанцию, нужно запустить проигрыватель Windows Media, выбрать команду "Файл >> Открыть URL-адрес…" и в открывшемся окне ввести адрес вида mms://<имя_узла>:<порт>

В результате, в окне будут отображаться, данные как показано на рисунке 3.

Рисунок 3 – Открытие URL-адреса

После этого вы можете насладиться прослушиванием рисунок 4.

Рисунок 4 – Результат тестирования программы

Заключение

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

При выполнении данного курсового проекта были закреплены навыки работы с локальными вычислительных сетями, программирование сетевых приложений, теоретические знания по предмету «Сети ЭВМ».

В курсовом проекте была разработана:

Программа позволяющая передавать звук, как по локальной сети, так и по глобальной сети интернет;

- программа «транслятор», которая позволяет передавать звук по сети;

Список используемой литературы

1) Бройдо В.Л. Вычислительные системы, сети и телекоммуникации: Учеб.пос. для вузов. – 2002. ISBN 5-318-005300-6

2) Зимянин Л.Ф.Программирование сетевых протоколов: Учеб. метод. пособие по курсу «Компьютерные сети» для студ. спец. Н.08.02.00 – «Информатика». – Минск.: Белгосуниверситет, 1998. – 37 с.

3) Ларионов А.М. и др. Вычислительные комплексы, системы и сети. / А.М. Ларионов, С.А. Майоров, Г.И. Новиков. – Ленинград. ЭНЕРГОАТОМИЗДАТ. Ленинградское отделение. 1987.

4) Фаронов В.В. Программирование на языке Delphi/–СПб.: Питер, 2007. –240 с.: ил.

3