Академический Документы
Профессиональный Документы
Культура Документы
Projeto de Redes:
Modelagem e Desempenho
Objetivo:
Apresentar os fundamentos para o projeto e avaliação de
desempenho de redes de computadores através de estudos
analíticos e ferramentas de simulação.
Tópicos
Introdução
Avaliação de Desempenho de Sistemas
Teoria de Probabilidades
Eventos aleatórios
Variáveis aleatórias
Função densidade de probabilidade
Função distribuição de probabilidade
Principais distribuições de probabilidade
Teste de Aderência (Teste de Hipótese)
Tópicos
Teoria de Filas
Processo de chegada
Processo de atendimento
Modelos de filas
Disciplina de gerência de filas
Aplicações
Simulação de Sistemas
Software NS-2
Bibliografia
Procedimento de Avaliação
21/09
28/09
05/10
Introdução
Introdução
Realizado Taxa
Corretamente (Throughput)
Recursos
(Utilização)
Realizado
Sistema Probabilidade
Realizado
Erro j
Incorretamente
Tempo entre
Erros
Duração
do Evento
Não
Evento k
Realizado
Tempo entre
Eventos
Introdução
Estudo de Caso
Considere o problema de comparar dois algoritmos de
controle de congestionamento para redes de computadores.
Rede de Computadores
Inúmeros sistemas finais (end systems) interconectados por
inúmeros sistemas intermediários (intermediate systems)
Introdução
R3
R1
A R4 D
B E
C R2
R5 F
10
Introdução
Estudo de Caso
Quando um usuário envia um bloco de pacotes para um
destinatário, podem ocorrer as seguintes possibilidades:
11
Introdução
B E
R2
C
R5
F
Usuários Sistema
Tráfego Tráfego
chegando saindo
12
Introdução
POP1
A POP4 D
B E
POP5
C POP6
POP7
POP8
F
13
Introdução
Estudo de Caso
Para os pacotes entregues em ordem, teremos as seguintes
métricas possíveis de desempenho:
Tempo de resposta
Atraso na rede para pacotes individuais
14
Introdução
Estudo de Caso
Como a rede é um sistema multiusuário, uma métrica importante é a
justiça (fairness) que define a variabilidade do throughput entre
usuários.
Para o conjunto de taxas de n usuários (r1 , r2 , K , rn ) a seguinte
função pode ser usada para atribuir uma medida de justiça ao
conjunto:
2
n
∑ ri
f (r1 , r2 , K, rn ) = i =1n
n ⋅ ∑ ri 2
i =1
15
Introdução
Exemplo
Considere as taxas normalizadas médias de 4 usuários que
estejam compartilhando uma determinada rede:
16
Introdução
Usuário Inicia Usuário Termina Sistema Inicia Sistema Inicia Sistema Completa Usuário Inicia
Requisição Requisição Execução Resposta Resposta Próxima Requisição
Tempo de Tempo
Reação
Tempo de Resposta
(Definição 1)
Tempo de Resposta
(Definição 2)
17
Introdução
Capacidade de um Sistema
Joelho
Taxa (Throughput)
Capacidade
Nominal
CPU: MIPS
MFLOPS
Capacidade Capacidade REDE: pps
de Joelho Útil bps
Carga
Tempo de Resposta
Capacidade
Utilizável
Carga
18
Introdução
Eficiência de um Sistema
A razão entre o máximo throughput atingível pela capacidade
nominal do sistema é denominado de eficiência.
19
Introdução
4
Eficiência em
MIPS/MFLOPS 3
1 2 3 4 5
Número de Processadores
20
Introdução
B E
C R2
Capacidade dos Enlaces
(Taxa de Transmissão)
R5 F
Atraso de Propagação
Confiabilidade
Taxa de Erro
21
Introdução
POP1
A POP4 D
B E
POP5
C POP6
POP7
POP8
F
22
Introdução
R2 (2.5 Gb/s)
(2.5 Gb/s) R1 R6
R5
R4
R3 R7
R9
R8 R10
R11
R12
R14
R13
R16
R15
(2.5 Gb/s)
(2.5 Gb/s)
23
Introdução
Switch
Lookup Fabric
& Output
Drop Scheduling
Policy Switch
Arbitration
Lookup
& Output
Drop
Switch Core Scheduling
Policy
Linecard Linecard
24
Introdução
Questões Relevantes:
Dado o sistema e o tráfego de chegada, qual é a qualidade
de serviço experimentada pelo usuário ?
25
Introdução
Sistema=Dispositivo(s)+Princípio(s) de Controle
Um Único Dispositivo
Um processador roteando pacotes numa rede de dados
Um servidor de páginas
Tráfego
Chamadas Telefônicas (PSTN)
Pacotes/Células (Voz/Vídeo/Dados)
26
Introdução
27
Introdução
Relações Qualitativas:
Qualidade
Capacidade do Sistema x Carga de Tráfego ? de serviço
Relações Quantitativas:
Exigem a utilização de modelos matemáticos
Modelos de tráfego
Modelos de dispositivos
28
Introdução
Planejamento da Rede
Dimensionamento
Otimização
Análise de Desempenho
Gerência de Tráfego
Roteamento
29
Introdução
30
Introdução
Projeto de Redes:
Estudo analítico através de modelos matemáticos
Modelagem e simulação do segmento de rede em estudo
31
Introdução
Elementos de Redes
Roteadores/Comutadores
Capacidade de Processamento
Algoritmos de Escalonamento
Enlaces de Transmissão
Fibra ótica
32
Introdução
Header Processing
Data Hdr Data Hdr
Lookup Update Queue
IP Address Header Packet
Address
Address Buffer
Buffer
Table
Table Memory
Memory
33
Introdução
Address Buffer
Address Buffer
Table Memory
Table Memory
Address Buffer
Address
Table Data
MemoryHdr
Buffer
Memory
Table
Address Buffer
Address Buffer
Table Memory
Table Memory 34
N B = R ⋅T R=Taxa de transmissão
T=Tempo de transmissão
R bits/s
1 2
Enlace de Transmissão
35
36
37
T6 T5 T4 T3 T2 T1
R1 R2
38
1600 1600
1400 1400
Tamanho dos Pacotes (Bytes)
1000 1000
800 800
600 600
400 400
200 200
0 0
0 5 10 15 20 25 30 35 40 45 50 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Tempo (s) Tempo (s)
39
600
Tamanho dos Pacotes (Bytes)
400
200
0
0 20 40 60 80 100 120 140 160 180 200
Tempo (s)
40
600
Tamanho dos Pacotes (Bytes)
400
200
0
0 2 4 6 8 10 12 14 16 18 20
Tempo (s)
41
Teoria de Probabilidades
42
Teoria de Probabilidades
Definições Básicas:
A probabilidade é uma medida que associa a cada evento A
um número real P(A) tal que:
0 ≤ P ( A) ≤ 1
Conceito de Freqüência Relativa:
nA
P( A) = lim
n→∞ n
43
Teoria de Probabilidades
P(S ) = 1 P ( A ) = 1 − P ( A)
P(φ ) = 0
P ( A ∪ B ) = P ( A ) + P (B ) − P ( A ∩ B )
44
Teoria de Probabilidades
V. A. Discretas
Número de pacotes transmitidos durante um intervalo
45
46
47
Variáveis Aleatórias
FX ( x ) = P( X ≤ x )
Pr ( X ≤ a ) = FX (a )
Pr (a ≤ X ≤ b ) = FX (b ) − FX (a )
f X ( x ) = λ ⋅ e − λx
FX ( x ) = P( X ≤ x ) = 1 − e − λx
1
Média = E [X ] =
λ
Considere como exemplo que o intervalo entre a chegada de
pacotes num enlace siga a distribuição exponencial negativa.
Podemos interpretar graficamente a probabilidade de duração
dos intervalos.
49
Exemplo
0.8
0.6
P(X<=x)
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10
x
50
Variáveis Aleatórias
0, x ≤ 0
FX ( x ) = x 3 , 0 < x < 1
1, x ≥ 1
Determine:
P( X > 0,7 )
P(0,4 < X ≤ 0,9 )
51
Variáveis Aleatórias
dFX ( x ) +∞
f X (x ) =
dx
∫ −∞
f X (x ) dx = 1
x
FX ( x ) = P( X ≤ x ) = ∫ f X ( y ) dy
−∞
b
P(a ≤ X ≤ b ) = ∫ f X ( y ) dy
a
52
Variáveis Aleatórias
0.4
0.3
p(X=x)
0.2
0.1
0
0 1 2 3 4 5 6 7 8 9 10
x
53
Distribuição de Probabilidade
Principais Distribuições:
Distribuição Uniforme
Distribuição Normal
Distribuição Lognormal
Distribuição de Pareto
Exemplos do Matlab
54
55
[ ]
E X n = ∑ xin ⋅ P{X = xi }
i
[ ] +∞
E X n = ∫ x n ⋅ f X (x ) dx
−∞
56
[ ]
E ( X − X ) n = ∑ ( xi − X ) n ⋅ P{X = xi }
i
[ ] +∞
E (X − X ) = ∫ ( x − X ) n ⋅ f X (x ) dx
n
−∞
57
µ = E[ X ] = X
[
Var[X ] = E ( X − µ ) 2 = σ 2]
[ ]
Var[X ] = E X 2 − µ 2
A raiz quadrada da variância é denominada de desvio padrão, σ
58
Estimadores
n
xi 1 n
x =∑ = ∑ xi
i =1 n n i =1
A variância amostral:
( xi − x ) 2
n
σ =∑
2
i =1 n
59
Exemplo
60
Exemplo
0.1493 0.0357 0.0273 0.2188 0.2188 0.0788 0.1557 0.1605 0.0337 0.2607
0.2009 0.0366 0.2935 0.0237 0.4973 0.0306 0.0059 0.0403 0.0024 0.0187
0.1448 0.0479 0.1043 0.3216 0.0102 0.0109 0.0089 0.1096 0.0579 0.0102
0.1031 0.0613 0.0358 0.0579 0.4676 0.1101 0.0259 0.0112 0.0532 0.0018
0.1628 0.1193 0.0595 0.0141 0.1058 0.0277 0.1169 0.1221 0.1622 0.0345
0.0020 0.0823 0.0105 0.0622 0.0454 0.1983 0.0673 0.1023 0.1090 0.1952
0.0066 0.0281 0.0308 0.0286 0.1379 0.0624 0.1028 0.1088 0.1308 0.1700
0.0956 0.1246 0.0285 0.0166 0.1226 0.0325 0.0434 0.0699 0.2957 0.0754
0.0719 0.0473 0.1027 0.0327 0.0074 0.0603 0.0092 0.1291 0.0518 0.3773
0.0138 0.0095 0.0584 0.1092 0.0396 0.0716 0.0271 0.1024 0.1219 0.1712
61
Exemplo
62
Exemplo
Histograma de Ocorrências
45
40
35
30
Número de Ocorrências
25
20
15
10
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
Intervalo
63
Teste de Aderência
64
Teste de Aderência
Freqüência Freqüência
Intervalo D
Observada (foi) Esperada (fei)
0 – 0,05 41 41,3561 0,0031
0,05 - 0,1 18 24,2528 1,6121
0,1 – 0,15 23 14,2228 5,4166
0,15 – 0,20 8 8,3408 0,0139
0,20 – 0,25 3 4,8914
0,25 – 0,30 3 2,8685
0,30 – 0,35 1 1,6822
0,1606
0,35 – 0,40 1 0,9865
0,40 – 0,45 0 0,5785
0,45 – 0,50 2 0,3393
7,2063
65
Teste de Aderência
χ α2 , k −r −1
D < χ α2, k −r −1
66
Teste de Aderência
2 0,010 0,020 0,103 0,211 0,446 1,386 3,219 4,605 5,991 9,210 10,597
3 0,072 0,115 0,352 0,584 1,005 2,366 4,642 6,251 7,815 11,345 12,838
4 0,207 0,297 0,711 1,064 1,649 3,357 5,989 7,779 9,488 13,277 14,860
5 0,412 0,554 1,145 1,610 2,343 4,351 7,289 9,236 11,070 15,086 16,750
6 0,676 0,872 1,635 2,204 3,070 5,348 8,558 10,645 12,592 16,812 18,548
7 0,989 1,239 2,167 2,833 3,822 6,346 9,803 12,017 14,067 18,475 20,278
8 1,344 1,647 2,733 3,490 4,594 7,344 11,030 13,362 15,507 20,020 21,955
9 1,735 2,088 3,325 4,168 5,380 8,343 12,242 14,684 16,919 21,666 23,589
10 2,156 2,558 3,940 4,865 6,179 9,342 13,442 15,987 18,307 23,209 25,188
67
Teste de Aderência
68
Exercício
512 448 498 587 435 583 489 373 342 470
630 582 458 517 565 531 673 541 502 639
449 346 473 453 507 456 431 429 550 410
469 531 505 537 357 486 612 529 370 451
591 438 612 423 488 558 601 444 628 525
461 471 441 392 690 384 566 630 365 654
571 617 584 530 448 533 569 724 370 433
408 551 452 468 387 447 324 543 479 489
435 555 542 249 452 485 586 422 528 502
506 487 474 352 352 577 554 341 273 669
69
Teoria de Filas
70
Teoria de Filas
71
Teoria de Filas
72
Teoria de Filas
Processo Processo
Taxa média de chegada de Chegada de Atendimento
de elementos. Ex.: 5
elementos/segundo.
λ Fila (W)
S1
µ
População S2
µ
.
Elemento que chega . Servidores (S)
ao sistema. .
Sm
Armazenamento µ
Elemento sendo
servido. Servidor
Taxa média de
ocupado. atendimento de
Teoria de Filas
74
E{y} = µ
Teoria de Filas
Tempo Médio
Métricas de Desempenho: Atraso de Serviço
1
E{t s } =
Autor: Prof. Antonio M. Alberti - INATEL
µ
Fila (W)
S1
µ
População S2
Tempo Médio de Armazenamento
µ
E {t w } .
. Servidores (S)
.
Sm
µ
Tempo Médio no Sistema de Fila
E {t q } = E {t w }+ E {t s }
75
Teoria de Filas
única frase:
A/ B/m/ K / S / X
Processo de chegada Disciplina de serviço
Processo de atendimento
Tamanho da população
76
Teoria de Filas
A/ B/m/ J / K / S / X
Processo de chegada Disciplina de serviço
Processo de atendimento
Tamanho da população
77
Teoria de Filas
sistema.
D – Determinístico
Intervalo de tempo entre chegadas é constante.
Ek – Erlang
Hk – Hiperexponencial
G – Genérico
Intervalo de tempo entre chegadas é tratado de forma
genérica, independente da distribuição.
78
Teoria de Filas
sistema.
Ek – Erlang
Hk – Hiperexponencial
G – Genérico
O tempo de serviço de um elemento é tratado de forma
genérica, independente da distribuição.
79
Teoria de Filas
sistema. Tipicamente é considerada como infinito.
Teoria de Filas
Processo Processo
de Chegada
A de Atendimento
B
Autor: Prof. Antonio M. Alberti - INATEL
λ Buffer Infinito
S1
µ
S2
µ m
.
.
.
X Sm
µ
População
S K
81
Teoria de Filas
Processo
A/ B /m/ J / K / S / X de Atendimento B=M
Markoviano
M / M / 9 / 5 / 14 / ∞ / FCFS
Autor: Prof. Antonio M. Alberti - INATEL
J=5
λ S1
µ
S2
Processo
Buffer finito com no µ
máximo 5 elementos. .
de Chegada
. m=9
Markoviano .
A=M X=FCFS S9
µ
Teoria de Filas
Modelo do Roteador
Enlaces full duplex
O processo de roteamento insere pacotes no buffer
83
µ clientes/s
1
λ clientes/s m
n
1 λ = tempo médio entre chegadas
1 µ = tempo médio de serviço
84
µ clientes/s
m=0 1
λ clientes/s
M
n
85
4
3
2
1
tempo
instantes de chegada das chamadas
chamada bloqueada
Número de canais ocupados
6
5
4
3
2
1
0
volume de tráfego tempo
86
4
3
2
1
tempo
instantes de chegada das chamadas
chamada bloqueada
Número de canais ocupados
6
5
4
3
2
1
0
volume de tráfego tempo
87
1
m=∞
λ clientes/s
M
88
µ clientes/s
1
λ clientes/s 0 < m < ∞
M
89
90
Fórmula de Little
Condição de Estabilidade:
Os clientes não se acumulam no sistema
Ocasionalmente o sistema está vazio
Conseqüência:
Os clientes deixam o sistema na taxa λ
N = número médio de cliente no sistema
T = tempo médio do cliente no sistema
N = λ ⋅T
91
Modelos de Tráfego
92
Servidor=Enlace
C=Velocidade do enlace (unidades de dados/tempo)
93
tempo de transmissão
tempo
instantes de chegada dos pacotes
Número de pacotes
Número de Pacotes
no Sistema
no sistema
4
3
2
1
0
tempo
Utilização do Enlace
1
0
tempo
94
Carga de Tráfego
Tráfego=Pacotes
Taxa de Chegada = λ
C
Taxa de Serviço = µ =
L
λ λL
Carga de Tráfego = ρ = =
µ C
A carga de tráfego é adimensional
95
Exemplo
λL 10 ⋅ 400 ⋅ 8
ρ= = = 0,5 = 50%
C 64000
Se a velocidade do enlace for aumentada para 150Mbps:
λL 10 ⋅ 400 ⋅ 8
ρ= = = 0,0002 = 0,02%
C 150 ⋅10 6
96
Teoria de Filas
a/b/m/K
a=distribuição de probabilidade do intervalo entre chegadas
M (Markov) denota o processo de chegada de Poisson, com
chegadas independentes e identicamente distribuídas (iid)
b=distribuição de probabilidade do tempo de serviço
M (Markov) denota exponencialmente distribuído
H (Hiperexponencial)
m=número de servidores
K=número máximo de clientes permitidos no sistema
97
Teoria de Filas
Notação:
NS=Número médio de pacotes no sistema
NF=Número médio de pacotes na fila
NA=Número de pacotes em atendimento
TS=Tempo no sistema
TF=Tempo na fila
TA=Tempo de atendimento
98
Teoria de Filas
Teorema de Little
Aplicando o teorema obtemos as seguintes relações:
E [NS ] = λ ⋅ E [TS ]
E [NA] = λ ⋅ E [TA]
E [NF ] = λ ⋅ E [TF ]
99
Fila M/M/1
100
Fila M/M/1
Tempo na fila:
λ
TF =
µ (µ − λ )
Tempo no sistema:
1
TS = NS = λ ⋅ TS
µ −λ
1
Tempo de atendimento: TS = TF + TA TA =
µ
101
Exercício 1
102
Exercício 1
Resolução:
Para 100 pacotes/s com tamanho médio de pacote de 1000bytes,
teremos uma taxa de chegada de 100*1000*8=800kbps
O tempo de atendimento médio (TA) será 8000bits/1Mbps=8ms
1 L C
TA = = = 8ms µ= = 125
µ C L
Utilizando as equações do modelo M/M/1:
λ 100 λ ρ
ρ= = = 0,8 NS = = =4
µ 125 µ −λ 1− ρ
NS = λ ⋅ TS
TS = 0,04
103
Exercício 1
Resolução:
Para 100 pacotes/s com tamanho médio de pacote de 1000bytes,
teremos uma taxa de 100*1000*8=800kbps
TS = TF + TA TF = 0,032
E [NF ] = λ ⋅ E [TF ] NF = 3,2
Utilizando as equações do modelo M/M/1, se o buffer for
dimensionado para 3200 bytes, as probabilidades de se ter
0, 1, 2 e 3 pacotes no sistema é dada por:
P0 = 0,2 P2 = 0,128
Pn = ρ n ⋅ (1 − ρ )
P1 = 0,16 P3 = 0,1024
104
Exercício 1
Resolução:
A probabilidade de haver mais que 3 pacotes no sistema
(probabilidade de perda) é calculada como:
105
Exercício 2
106
Exercício 3
107
Multiplexação TDM/FDM
1 2 … m 1 2 … m 1 2 … m
t
µ1
λ1
C
Ci =
µ2 m
λ λ2 C 1
λi = µi = ⋅
m m L
µm Ci
λm µi =
L
108
Técnicas de Multiplexação
Multiplexação λ m
Estatística
TDM/FDM
109
110