Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Сафоненко Практикум по интерфейсам последователной передачи 2012

.pdf
Скачиваний:
2
Добавлен:
12.11.2022
Размер:
4.56 Mб
Скачать

λ* pn = μ* pn+1 .

(13)

Решая систему уравнений (13), находим, что

 

pn = ρn p0 ρ = λ μ.

(14)

Чтобы найти вероятность p0, используем условие полноты груп-

пы состояний pn =1. Для очереди типа М/М/1:

p0 ρn =1;

n

n

p0 = (1 − ρ), если ρ < 1, что приводит к решению для установивше-

гося режима в виде:

 

pn = (1 −ρ) ρn, ρ = λ μ <1.

(15)

Уравнения, приведенные выше для системы М/М/1, часто называются процессами размножения и гибели, где под гибелью понимают уход пакетов из системы, а под размножением, соответственно, поступление их в систему.

Среднее число пакетов в интерфейсе, поставленных в очередь и взятых на обслуживание, согласно (8), равно:

 

 

 

 

 

ρ

 

 

 

E(n) = n p j = j (1

−ρ) ρ j =

 

.

(16)

(1

−ρ)

 

 

j=0

 

j=0

 

 

 

 

 

 

 

 

 

 

 

Средняя статистическая длина очереди L в интерфейсе равна

 

 

 

 

 

 

 

 

 

 

E(L) = ( j 1) p j =

 

 

 

 

 

 

 

j=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= ( j 1) (1−ρ) ρj =

(17)

 

 

 

 

 

 

j=1

 

 

 

 

 

 

 

 

 

ρ2

.

 

 

 

 

 

 

 

 

(1−ρ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для ρ = 0.75 среднее число

 

 

 

 

 

 

пакетов в интерфейсе равно:

 

 

 

 

 

 

E(n) / (1−ρ) =0.75 / 0.25 =3.

 

 

 

 

 

 

График функции E(n)

пред-

Рис. 19. Средняя длина очереди

ставлен на рис. 19.

 

 

в системе М/М/1

 

101

Рис. 20. Пояснение формулы Литтла

Формула Литтла

Чтобы найти общее время задержки (включающее время ожидания в очереди и, кроме того, время обслуживания и передачи) обращаются к формуле Литтла, названной по имени автора. Согласно формуле система обслуживания со средней скоростью поступлений λ и средним временем ожидания обработки W, имеет сред-

нюю длину очереди L:

L W. (18)

Иллюстрация данного выражения приведена на рис. 20.

Действительно, если последний в очереди пакет пометить и дождаться его обслужи-

вания, в среднем время ожидания обработки равно W. За это время в очередь поступает в среднем ровно λ·W. Введем обозначения:

E(n) средняя длина очереди, включая пакеты, находящиеся на обработке; E(T) среднее время задержки в системе, включая обработку; E(W) среднее время ожидания в очереди.

В этом случае формула Литтла примет вид:

λE(T) = E(n), λE(W) = E(L).

(19)

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

Системы с управляемыми потоками пакетов в реальных интерфейсах

Результаты, полученные для системы обслуживания М/М/1 обобщаются на системы с одной очередью, в которых скорости поступлений и уходов зависят от состояния системы. Применение методики исследования состояния системы к потокам с распреде-

102

лениями, отличными от пуассоновского, не учитывает эффект последействия. Свойства стационарности и ординарности потока в практических приложениях обычно не нарушаются. Эти допущения позволяют достаточно эффективно применять метод состояний в системах с произвольными видами распределений. Вероятность одного события за бесконечно малый интервал времени равна λn · ∆t + o(∆t). Вероятность отсутствия нового пакета, в соответст-

вии в условием нормировки, будут равна 1 λn · ∆t + o(∆t). Предположим отсутствие последействия, и, таким образом, поступление в

промежутка времени t

не зависит от поступлений в других про-

межутках. Величину λn

t можно представить как вероятность по-

ступления нового пакета, когда система уже содержит n пакетов. Поток событий предполагается ординарным. Аналогично, μn · ∆t + o(∆t) – вероятность завершения обработки одного пакета, 1 – μn · ∆t + o(∆t) – вероятность того, что за промежуток наблюдения обработка пакета не завершена. Уравнение равновесия для процесса размножения и гибели получается аналогично уравнению

(12):

λn pn = μn+1 pn+1 .

(20)

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

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

Рассмотрим два вида систем. Входной поток пакетов данных считаем простейшим. Первая система характеризуется экспоненциальным законом времени обработки пакетов. Вторая система характеризуется произвольным законом времени обработки. Системы следует отнести к классам М/М/1 и М/G/1 соответственно.

Рассмотрим два типа используемых при передаче данных протокола: дуплексный и полудуплексный (см. рис. 5). Оба относятся к байт-ориентированным асинхронным протоколам. В полудуплексном режиме источник отправляет пакеты данных в течение сеанса связи. По истечении времени сеанса управление передается противоположной стороне. Арбитраж управления сеансами может быть как внешним принудительным, так и внутренним с применением сигналов квитирования. В дуплексном режиме отправитель переда-

103

ет и принимает пакеты данных независимо от режима работы противоположной стороны. Аппаратные средства последовательных портов обычно поддерживают полудуплексный режим работы канала.

По этой причине натурный эксперимент возможен для исследования полудуплексного режима функционирования последовательного порта. Дуплексный режим может быть исследован методами имитационного моделирования или приближенными аналитическими выкладками. В дуплексном режиме следует учесть одновременную обработку входных данных приемником, подготовку и передачу данных передатчиком, а также неизбежные задержки τ программных переключений. Суммарный поток удваивается, нагрузка в канале возрастает и очередь растет ρ = 2 · λ · (1 + μ · τ)/μ,

E(n) = ρ/(1– ρ).

Приведем оценки на примере COM-порта. Скорость передачи

RS-232 известна

и, например, составляет

32 Кбит/с, или

32000 бит/с.

 

 

Пакет данных

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

и биты данных.

Максимальную длину пакета определим равной 16 битам. Поток поступающих в систему пакетов равен λ = 1500 пакетов/с.

Пропускная способность, или количество обработанных пакетов в секунду μ = 32000/16 = 2000. Коэффициент загрузки канала ρ = λ/μ = 0.75. Согласно (16) E(n) = ρ/(1 – ρ) = 3, и соответствует загрузке канала в полудуплексном режиме.

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

На практике большинство каналов нижнего уровня систем сбора и управления работают в условиях ограничения буфера для хранения как входных, так и выходных данных. Задача пользователя состоит в оценке надежности канала, например, по критерию вероятности потерь пакетов. Рассмотрим систему M/M/1/N, в которой имеется N 1 место для ожидания (система с блокировками). Поток поступающих в систему пакетов пуассоновский, время обработки распределено по показательному закону.

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

104

ния полностью занятого буфера. Воспользуемся результатом решения системы (14), pn = ρn p0. Условия нормировки применяется по

N

конечному множеству состояний системы pn = 1.

n=0

Особенность обслуживания заключается в том, что заявки, не попавшие в очередь, отбрасываются. Эта особенность коренным образом изменяет характеристики системы. Система имеет единственное решение для любого натурального N. Система стала абсолютно устойчивой, что позволяет исследовать ее характеристики на нагрузках произвольного вида. Теперь можно найти p0:

N

 

 

 

 

ρn p0 = 1, p0 (1+ρ+ρ2 +…+ρN )=1,

 

n=0

 

 

 

 

следовательно, простоя системы

1−ρ

 

 

p0 =

 

(21)

 

.

 

1−ρN +1

 

И для системы M/M/1/N

(1−ρ)ρn

 

 

pn =

.

(22)

1−ρN +1

 

 

 

В частности, вероятность того, что очередь заполнена, в системе уже находятся N пакетов, равна

pN =

(1

−ρ)ρN

.

(23)

1

−ρN +1

 

 

 

Эта величина носит название вероятности блокировки PB. В нашем случае при ρ < 1 и N >> 1 формула упрощается:

PB = (1 −ρ)ρN , ρN +1<<1.

Например для N = 10 и ρ=0.75:

PB = (1 −ρ)ρN = 0.25 0.75N = 0.01408.

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

Заметим, что приближенное значение PB в точности равно вероятности обнаружить систему M/M/1 с бесконечной очередью в состоянии n = N. Следовательно, при ρ << 1 характеристики системы с бесконечной очередью при n = N с высокой долей достоверности

105

отражают характеристики аналогичной системы с конечной очередью.

Обозначим

ε = 1 ρ,

 

тогда

(23)

перепишется

следующим

образом:

 

 

 

ε(1−ε)N

 

 

 

 

 

 

 

 

 

P =

.

 

 

 

 

(24)

 

 

 

1(1−ε)1+N

 

 

 

 

 

 

 

B

 

 

 

 

 

 

По формуле бинома Ньютона

 

 

 

 

 

 

 

 

 

(1+ x)α =1+ α x +

 

α(α −1)x2

+

α(α −1)(α − 2)x3

+…,

 

 

 

 

3!

 

 

 

 

 

2

 

 

 

 

 

 

)

 

главной частью

(1 −ε)N

является 1,

а для

(

(1

−ε)1+N

главная

1

 

часть – ε(1 + N ). При бесконечно малом значении ε, т.е. при ρ →1,

Рис. 21. Зависимость вероятности блокировки от коэффициента загрузки канала

PB = 1 / (1 + N ) .

(25)

Если ρ > 1 и N >> 1, то в знаменателе можно пренебречь единицей по сравнению с

ρN +1, и поэтому

P 11 .

(26)

B ρ

График зависимости вероятности блокировки от загрузки канала приведен на рис. 21.

Среднее число пакетов, поставленных в очередь и взятых на обслуживание, согласно (16), равно

N

N

 

E(n) = np j = j(1−ρ)ρj = (1−ρ) ρ jp j1 =

j=0

j=0

j=0

(27)

/ (1−ρ) (N +1) ρN +1 / (1−ρN +1).

 

Для ρ = 0.75 и

N = 9 среднее значение

загрузки

интерфейса

равно:

E(n) = ρ / (1−ρ) (N +1) ρN +1 / (1−ρN +1) =

= 0.75 / 0.25 10 0.7510 / (10.7510) = 3 0.6 = 2.4.

106

Результат демонстрирует, что система с блокировкой очереди снижает в среднем число пакетов в системе по сравнению с систе-

мой M/M/1.

Теперь по формуле Литтла (19) найдем среднее время задержки прохождения пакета через интерфейс с системой M/M/1:

E(T) = E(n)/λ = 1/(μ · (1 ρ)).

(28)

В случае ρ = 0.5, μ = 2000, E(T) = 0.002 с.

Среднее число ожидающих пакетов – это разность между средним числом E(n) сообщений в системе и средним числом сообщений, находящихся на обслуживании. E(L) = E(n) – (1 – p0) = 3 – 0.75 =

=2.25 пакета. Вероятность свободной от сообщений системы: p0 =

=1 – ρ = 0.25. Для рассматриваемой однолинейной системы должно выдерживаться следующее простое соотношение между средним временем ожидания E(W) и средней задержкой E(T) в системе:

E(T ) = E(W ) +1 / μ.

Полная задержка пакета в системе равна сумме задержки на ожидание обработки и саму обработку пакета 1/μ. Для нашего случая получается:

E(W ) = E(T ) 1 / μ = 0.002 1 / 2000 = 0.0015 с.

Аналогично можно провести средние оценки для интерфейса

M/M/1/N.

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

ляют Ttransfer – интервалы передачи сообщения и подтверждения приёма, а также интервалы Tport – задержки передачи и приема данных и собственно интервал обработки пакета E(T).

Из рис. 22 видно, что Тс для разных режимов одинаково и состоит из следующих составляющих:

Tc = 3 Tport + 2 Ttransfer + 2E(T).

107

Рис. 22. Диаграмма соединения для полудуплексного

идуплексного режимов

Всостав Tport включим время на программную задержку процессора и аппаратную задержку. Программную задержку можно оценить для процессора Intel Pentium4 с частотой 3.2 ГГц . Время

выполнения одной операции ассемблера составит 1/3.2*109 = = 0.3*109 с. Длительность выполнения программы составит примерно 108 с. Величину аппаратной задержки приема пакета в порту ограничим временем 1.6/f = 0.00005 с, где f = 32 КБод – скорость порта RS-232, 1.6 бит – средняя длина служебного поля пакета. Следовательно Tport = 108 с + 5*105 с = 5*105 с.

Рис. 23. Обобщенная схема линии

Время передачи по проводной линии можно рассчитать согласно схемам рис. 23, 24.

Параметры кабеля: сопротивление r = 50 Ом/м, емкость c = = 10 пФ/м, длина кабеля l = 15 м.

108

Рис. 24. Обощенная схема линии в операторной форме

Тогда составим уравнения:

U in = I (r + pL + 1 / pc),

U out = I (1 / pc).

 

Uout =

Uin

1 /pc =

Uin

 

=

1

 

.

(r + pL +1 / pc)

(r + pL) pc +1

pT +1

 

 

 

 

Задержку передачи определим по достижении сигналом уровня 95 % от номинала:

3 T = 1.125 10 7 3 = 3.375 10 7 с;

Tc = 3 Tp + 2 Tt + 2E(T) =

=3 5 105 + 2 3.375 107 + 0.004 = 4.15 мс.

Вдуплексном режиме поток информации удваивается. В табл. 7 приведены результаты расчетов времени соединения для других стандартных скоростей COM-порта: 19 КБод, 28 КБод, 56 КБод.

Для COM-порта, работающего со скоростью 19 КБод Tc = 4.252 мс. Для скорости 28 КБод Tc = 4.171 мс. Если скорость 56 КБод Tc = = 4.086 мс.

 

Таблица 7

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

 

 

Стандартные скорости

Среднее время соединения в канале

RS-232, КБод/с

Tc, мс

19

4.3

 

 

28

4.17

 

 

32

01.04.15

 

 

56

4.09

 

 

 

109

Система с распределением времени обслуживания общего вида

Проведем анализ распределения времени обслуживания для систем с распределением времени обслуживания общего вида. На вход интерфейса поступает пуассоновский поток. Система относится к типу однолинейных M/G/1, с распределением времени обслуживания общего вида.

Вывод выражения для средней длины очереди отличается от вывода, который был использован при анализе системы M/M/1. Вследствие предположения об общем характере статистики распределения времени обслуживания проявляется эффект последействия уходов обслуженных сообщений. В этом случае условие равновесия (12) не является корректным. По этой причине используется подход, основанный на анализе занятости очереди в результате обслуживания пакета. Пусть момент ухода j-го пакета обозначается номером j. Число пакетов, остающихся в системе непосредственно после ухода j-го сообщения обозначим nj. Число сообщений, поступивших в течение времени обслуживания j-го пакета, обозначим νj. Тогда можно составить уравнение, в котором общее число оставшихся пакетов nj равно числу пакетов в момент времени j – 1 за вычетом одного обработанного пакета, плюс прибывшие за время об-

работки новые пакеты νj:

 

n j = (nj1 1)j ,

при n j1 1,

n j =v j , при

n j1=0.

В более компактной форме можно записать: n j =n j1u(n j1) j ,

где u(x) – единичная функция, определяемая в виде:

u(x) =1 ,

при

x 1,

 

u(x) = 0,

при

x 0.

(29)

Предположим, на бесконечно большом интервале времени наступило равновесие процесса. Заметим, что при j → ∞,

E(n j ) = E(n j1) , тогда E(u(n)) = E(ν) .

110

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]