- •Государственное образовательное учреждение высшего профессионального образования «Тульский государственный университет»
- •Конспект лекций
- •Информатика
- •Содержание
- •Системы счисления. Позиционные и непозиционные системы
- •2.1. Кодирование текста
- •2.2. Растровая и векторная графика
- •2.3. Представление цвета
- •2.4. Представление звука. Ацп. Цап
- •3.1. Принцип фон Неймана
- •3.2. Общая структурная схема процессора
- •3.3. Арифметико-логическое устройство (алу)
- •3.4. Адрес ячейки памяти
- •3.5. Регистры процессора
- •3.6. Как процессор складывает два числа
- •4.1. Эволюция средств вычислений
- •4.2. Эволюция эвм
- •4.3. Поколения эвм
- •5.1. Эволюция персональных эвм
- •5.2. Классификация эвм
- •6.1. Программное обеспечение
- •6.2. Функции ос
- •6.3. Трансляция программ
- •6.5. Декомпозиция
- •6.6. Объектно-ориентированное программирование
- •7.1. Понятие алгоритма. Свойства алгоритма
- •7.2. Способы записи алгоритма: псевдокод, блок-схема
- •7.3. Преобразование программы в машинные коды. Интерпретаторы и компиляторы
- •7.4. Оптимизация кода для повышения эффективности
- •7.5. Структура ide. Отладка программ
- •8.1. Описание структуры проекта
- •8.2. Описание структуры модуля
- •8.3. Описание элементов программ
- •8.4. Алфавит языка программирования
- •8.5. Идентификаторы, константы, выражения
- •9.1. Целая и вещественная арифметика
- •9.2. Приоритет операций
- •9.3. Встроенные функции. Построение сложных выражений
- •10.1. Встроенные типы данных. Целые типы. Представление знака числа. Арифметическое переполнение
- •10.1.1. Встроенные типы данных
- •10.1.2. Целые типы
- •10.1.3. Представление знака числа
- •10.1.4. Арифметическое переполнение
- •10.2. Вещественные типы. Сопроцессор
- •10.3. Текстовые типы
- •10.4. Логический тип
- •10.5. Оператор присваивания. Совместимость типов по присваиванию
- •11.1. Устройства вывода
- •11.2. Объекты, обеспечивающие вывод данных на экран
- •11.2.1. Перечень компонентов ввода и отображения текстовой информации
- •11.2.2. Отображение текста в надписях компонентов Label, StaticText и Panel
- •11.2.3. Окна редактирования Edit и MaskEdit
- •11.2.4. Многострочные окна редактирования Memo и RichEdit
- •11.2.5. Группа радиокнопок – компонент RadioGroup
- •Ввод и отображение целых чисел — компоненты UpDown и SpinEdit
- •11.2.6. Компоненты выбора из списков — ListBox, CheckBox, CheckListBox и ComboBox
- •11.2.7. Таблица строк — компонент StringGrid
- •11.2.8. Функция InputBox
- •11.2.9. Процедура ShowMessage
- •11.3. Вывод в текстовый файл
- •11.3.1. Объявление файла
- •Назначение файла
- •11.3.2. Вывод в файл
- •11.3.3. Открытие файла для вывода
- •11.3.4. Ошибки открытия файла
- •11.3.5. Закрытие файла
- •11.4. Устройства ввода. Ввод с клавиатуры. Реакция на действия пользователя
- •11.4.1. Устройства ввода
- •11.5. Ввод из файла
- •11.5.1. Открытие файла
- •11.5.2. Чтение данных из файла
- •11.5.3. Чтение чисел
- •11.5.4. Чтение строк
- •12.1. Ветвление
- •12.2. Логические (булевские) операции
- •12.3. Составной оператор
- •12.4. Оператор ветвления if
- •12.5. Оператор ветвления case
- •12.6. Исключительные ситуации
- •13.1. Функции цикла в программе. Циклы с пред- и постусловием
- •13.2. Оператор While. Вечные циклы
- •13.3. Вечные циклы
- •13.4. Оператор repeat. Процедуры inc и dec
- •13.5. Цикл с переменной for
- •13.6. Команды break и continue
- •13.7. Вложенные циклы
- •13.8. Примеры задач с циклами
- •14.1. Объявление массива
- •14.2. Операции с массивами
- •14.2.1. Вывод массива
- •14.2.2. Ввод массива
- •14.2.3. Поиск минимального (максимального) элемента массива
- •14.2.4. Поиск в массиве заданного элемента
- •14.3. Ошибки при использовании массивов
- •15.1. Создание пользовательских функций. Передача аргументов
- •15.2. Глобальные и локальные переменные
- •15.3. Примеры написания пользовательских функций
- •15.4. Процедуры
- •15.5. Процедуры программиста
- •15.6. Передача параметров по ссылке и значению
- •15.7. Перегрузка процедур и функций
- •15.8. Упреждающее объявление процедур и функций (forward)
- •16.1. Основные понятия компьютерной графики
- •16.2. Получение сведений о режимах экрана. Эффекты прозрачности
- •16.3. Графические построения
- •16.4. Построение графиков функций
- •16.5. Использование компонента tChart
- •16.6. Обновление изображения
- •17.1. Анимация на основе операции xor
- •17.2. Буферизация фона
- •17.3. Работа с таймером
- •18.1. Виды диалога
- •18.2. Стандарты пользовательского интерфейса
- •18.2.3. Размеры окон
- •18.2.2. Размеры элементов управления
- •Надписи на элементах управления:
- •18.2.4. Схема расположения
- •19.1. Технология mmx
- •19.2. Мультимедийные аппаратные интерфейсы
- •20.1. Тест Тьюринга
- •20.2. Представление знаний и вывод на знаниях
- •20.3. Модели представления знаний
- •20.4. Вывод на знаниях
- •21.1. Основы телекоммуникаций и распределенной обработки информации
- •21.2. Каналы связи
- •21.2.1. Аналоговые и цифровые каналы
- •21.2.2. Коммутируемые и выделенные каналы
- •21.2.3. Двух- и четырехпроводные каналы
- •21.3. Семиуровневая модель osi
- •21.3.1. Физический уровень
- •21.3.2. Канальный уровень
- •21.3.3. Верхние уровни osi
- •21.4. Управление потоком
- •21.5. Технология "клиент-сервер"
- •22.1. Методы защиты информации
- •22.2. Основы криптографии
- •22.3. Симметричные криптосистемы
- •22.3.1.Моно- и многоалфавитные подстановки
- •22.3.2. Перестановки
- •22.3.3. Гамирование и блочные шифры
- •22.4. Алгоритмы цифровой подписи
- •22.5. Сжатие данных
- •22.5.1. Методы сжатия изображений
- •22.6. Понятие об экономических и правовых аспектах информационных технологий
21.4. Управление потоком
В любой системе либо сети передачи данных возникают ситуации, когда поступающая в сеть нагрузка превышает возможности по ее обслуживанию. В этом случае, если не предпринимать никаких мер по ограничению поступающих данных (графика), размеры очередей на линиях сети будут неограниченно расти и в конце концов превысят размеры буферов соответствующих средств связи. Когда это происходит, единицы данных (сообщения, пакеты, кадры, блоки, байты, символы), поступающие в узлы, для которых нет свободного места в буфере, будут сброшены и позднее переданы повторно. В результате возникает эффект, когда при увеличении поступающей нагрузки реальная пропускная способность уменьшается, а задержки передачи становятся чрезвычайно большими.
Средством борьбы с такими ситуациями выступают методы управления потоком, суть которых заключается в ограничении поступающего трафика для предотвращения перегрузок.
Схема управления потоком может понадобиться на участке передачи между двумя пользователями (транспортный уровень), между двумя узлами сети (сетевой уровень), между двумя соседними DCE, обменивающимися данными по логическому каналу (канальный уровень), а также между терминальным оборудованием и аппаратурой канала данных, взаимодействующих по одному из интерфейсов DTE—DCE (физический уровень).
Схемы управления потоком транспортного уровня реализованы в протоколах передачи файлов, таких как ZModem; схемы управления потоком сетевого уровня — в составе протоколов Х. 25 и TCP/IP; схемы управления потоком канального уровня — в составе протоколов повышения достоверности, таких как MNP4, V. 42; управление потоком на физическом уровне реализуется в рамках набора функций соответствующих интерфейсов, таких как RS-232. Перечисленные три уровня схем управления имеют непосредственное отношение к аппаратному и программному обеспечению модемов и их конкретные реализации будут рассмотрены в соответствующих разделах книги.
Рассмотрим часто используемый протоколами канального, сетевого и транспортного уровней класс методов управления потоком, названный оконным управлением потоком. Под окном понимается наибольшее число информационных единиц, которые могут оставаться неподтвержденными в данном направлении передачи.
В процессе передачи между передатчиком и приемником используется оконное управление, если установлена верхняя граница на число единиц данных, которые уже переданы передатчиком, но на которые еще не получено подтверждение от приемника. Верхняя граница в виде целого положительного числа и является окном или размером окна. Приемник уведомляет передатчик о том, что к нему попала единица данных, путем отправления специального сообщения к приемнику (Рисунок 47). Такое сообщение называется подтверждением, разрешением или квитанцией. Подтверждение может быть положительным — АСК (ACKnowledgement), сигнализирующим об успешном приеме соответствующей информационной единицы, и отрицательным — NAK (Negative AcKnowledgement), свидетельствующим о неприеме ожидаемой порции данных. После получения квитанции передатчик может передать еще одну единицу данных приемнику. Число квитанций, находящихся в использовании, не должно превышать размер окна.
Рисунок 4 - Оконное управление потоком
Квитанции либо содержатся в специальных управляющих пакетах, либо добавляются в обычные информационные пакеты. Управление потоком используется при передаче по одному виртуальному каналу, группе виртуальных каналов, управлению может подвергаться весь поток пакетов, возникающих в одном окне и адресованных другому узлу. Передатчиком и приемником могут быть два узла сети или терминал пользователя и входной узел сети связи. Единицами данных в окне могут быть сообщения, пакеты, кадры или символы.
Выделяют две стратегии: оконное управление от конца в конец и поузловое управление. Первая стратегия относится к управлению потоком между входным и выходными узлами сети для некоторого процесса передачи и часто реализуется в составе протоколов передачи файлов. Вторая стратегия относится к управлению потоком между каждой парой последовательных узлов и реализуется в составе протоколов канального уровня, таких как SDLC, HDLC, LAPB, LAPD, LAPM и других.