• Nenhum resultado encontrado

Este capítulo introduz os principais conceitos sobre Cálculo de Rede e propõe uma equação para o processo envelope do Modelo Multifractal Adaptativo proposto no Capítulo 2. Mais especificamente, na seção 3.1, é feita uma introdução ao Cálculo de Rede, abordando conceitos de processo envelope e de curva de serviço; na seção

3.2, são discutidos alguns trabalhos da literatura relacionados ao cálculo do processo envelope; na seção3.3, é apresentada uma proposta para o cálculo do processo envelope utilizando o Modelo Multifractal proposto no Capítulo2e, na seção3.4, são apresentados os resultados obtidos utilizando o processo envelope proposto em comparação a outros métodos presentes na literatura.

3.1

Introdução ao Cálculo de Rede

Em um trabalho pioneiro, Cruz [21] utilizou o Cálculo de Rede (Network Calculus) para estimar retardo e o tamanho da fila (backlog) em redes de computadores. O Cálculo de Rede é uma ferramenta da teoria de filas e relaciona-se com a teoria geral de sistemas lineares, no entanto, utiliza a álgebra min-plus [11], por meio da qual podem ser obtidas ferramentas para o cálculo de medidas de desempenho em redes.

Um dos objetivos do Cálculo de Rede é descrever de maneira qualitativa e quantitativa o tráfego que chega a um sistema de filas e o serviço que é provido a esse tráfego. Dentre os processos para caracterização do tráfego que chega ao sistema de rede, está o processo envelope, cujo objetivo é obter uma descrição mais precisa possível das fontes de tráfego. No Cálculo de Rede, a descrição do serviço provido aos usuários de uma rede é feita por meio de curvas de serviço.

Em [65], os autores descrevem métodos existentes na literatura para estimação do processo envelope e relaciona-os à provisão de Qualidade de Serviço (QoS – Quality of Service). Em [78], os autores introduzem o conceito de curva de serviço para caracte- rização de escalonadores para o GPS (Generalized Processor Sharing).

Atualmente, o conceito de curva de serviço tem sido explorado em várias tecno- logias e cenários. Em [31], o autor apresenta diferentes curvas de serviços para diversos cenários e aplicações e formas de calculá-las utilizando Cálculo de Rede determinístico e estatístico.

A elegância da teoria do Cálculo de Rede (Network Calculus) é devida às fórmulas de convolução muito intuitivas que podem ser utilizadas para determinar as saídas de bytes de um sistema a partir do seu processo envelope de chegadas e de sua curva de serviço.

No Cálculo de Rede, a convolução é uma operação aplicada a processos causais, não-decrescentes e contínuos para t > 0. Assim, para dois processos f (t) e g(t), a operação de convolução é definida da seguinte forma [65]:

f⊗ g(t) = inf

τ∈[0,t]

{ f (τ) + g(t − τ)}. (3-1)

Na teoria de sistemas lineares, a operação de convolução é definida como f⊗ g(t) =R

τ∈Rf(τ) × g(t − τ). Em (3-1), a integral da definição padrão de convolução

é substituída pela operação de infimum e a multiplicação por uma operação de soma. Por isso, a operação de convolução definida por (3-1) é conhecida como operação de (min, +), proveniente da álgebra min-plus [11].

De maneira similar, a operação de deconvolução é definida como:

f g(t) = sup

τ≥0

{ f (t + τ) − g(τ)}. (3-2)

Os conceitos de processo envelope e de curva de serviço fundamentam a teoria do Cálculo de Rede (Network Calculus). Uma vez obtidas as funções para o processo envelope e para a curva de serviço, estimativas para o backlog (tamanho da fila) e retardo podem ser feitas utilizando as operações de convolução e deconvolução do Cálculo de Rede.

O conceito de curva de serviço é muito utilizado na literatura para derivar limites de desempenho de rede como, por exemplo, retardo máximo de sistemas de transmissão que utilizam buffers [31,65].

Nesta seção, com o objetivo de descrever um sistema de comunicação fluído, para o qual o Cálculo de Rede é aplicável [31], considere que os dados que chegam ao sistema utilizado são sempre divisíveis em bytes e que todas as funções apresentadas a seguir são não-negativas, não-decrescentes, e iguais a zero na origem, matematicamente:

F0= { f : f (t) ≥ f (τ) ≥ 0, ∀t ≥ τ, f (0) = 0}. (3-3) Além disso, considere A(t) como o conjunto acumulado de bytes que chegam ao sistema

no intervalo [0,t), isto é, A(t) é o processo de tráfego acumulado. As chegadas no intervalo [τ,t) são designadas por A(τ,t) = A(t) − A(τ). Essas mesmas considerações são feitas para o processo de saída do sistema, denotado por D. Note que para todo t, A(t) ≥ D(t), e se A(t) > D(t), então bytes são armazenados no buffer.

A teoria do Cálculo Rede (Network Calculus [31]) generaliza as observações acima para diferentes cenários e define o conceito de curva de serviço, denotado por S(t). Uma curva de serviço é utilizada para modelar o serviço que é fornecido por um sistema. A noção de curva de serviço foi explorada em [78] e, posteriormente, generalizada e formalizada em [16,55].

Formalmente, um sistema é capaz de oferecer uma curva de serviço S(t) se o processo de saída D(t) puder ser definido, para todo t, por meio da seguinte equação:

D(t) ≥ inf

τ∈[0,t]

{A(τ) + S(t − τ)} =: A ⊗ S(t), (3-4)

onde o símbolo ⊗, conforme mencionado anteriormente, designa a operação de convolu- ção da álgebra min-plus [11].

No caso de um servidor com taxa de transmissão constante e igual a R, a curva de serviço é definida como S(t) = Rt.

Quando um sistema prevê um limite inferior para o processo de saída D(t), a curva de serviço encontrada é frequentemente referida como uma curva de serviço mínima Smin(t). De maneira análoga, um limitante superior para a curva de serviço é denominado curva de serviço máxima Smax(t), podendo ser utilizada para fornecer um limite superior para as partidas de bytes de uma rede. Se um sistema implementa uma curva de serviço S(t) que descreve perfeitamente o serviço oferecido, ela é referida como uma curva de serviço exata. Exemplos de sistemas que implementam uma curva de serviço exata são enlaces de transmissão com taxas constantes, onde S(t) = Rt e reguladores de tráfego baseados no algoritmo de balde furado [31], onde S(t) = σ + ρt, e as variáveis σ e ρ representam o valor máximo acumulado e a taxa de regulagem do algoritmo de balde furado, respectivamente.

As curvas de serviços provêm um modelo muito útil e versátil para análise de desempenho de elementos de rede [68]. Quando combinadas a curvas de chegadas, as curvas de serviços, especialmente as curvas de serviço mínimas, desempenham um papel importante na provisão de garantias de serviço, uma vez que podem fornecer limites superiores para parâmetros de QoS como backlog e retardo [65].

No Cálculo de Rede, o termo processo envelope designa uma classe de processos que descrevem as curvas de chegadas. O processo envelope não se baseia apenas na análise teórica rigorosa, mas também na ampla implementação prática [65]. Conforme mencionado anteriormente, o processo envelope é um dos elementos-chave para muitos

dos mecanismos de provisão de QoS que lançam mão do Cálculo de Rede. O processo envelope ˆA(t) de um modelo de tráfego de rede limita o processo de tráfego acumulado A(t) gerado a partir desse modelo. Em outras palavras, o processo envelope ˆA(t) oferece limitantes superiores para o tráfego acumulado em qualquer instante de tempo t, cujo processo pode estar associado a um modelo de tráfego. Tais limitantes de tráfego podem ser determinísticos (isto é, com limitantes estritos) ou probabilísticos (isto é, violações podem ocorrer, mas com uma pequena probabilidade). Os processos envelope podem ser utilizados para fornecimento de garantias de serviço em redes com características determinísticas ou estatísticas. O uso de um processo envelope baseado em modelagem do tráfego de rede pode ser especialmente interessante, uma vez que em muitos casos é inviável obter uma caracterização estatística precisa das fontes de tráfego, tornando a análise de desempenho de redes com tráfego estocástico uma tarefa não trivial (de difícil tratamento matemático). Bmax dmax Â(t) S(t) Tempo Bytes

Figura 3.1: Backlog máximo e retardo máximo obtidos a partir do processo envelope e da curva de serviço utilizando a teoria do Cálculo de Rede.

A Figura 3.1 ilustra o cálculo do backlog máximo como a maior distância no eixo das ordenadas entre o processo envelope e a curva de serviço. Já o retardo máximo é calculado como a maior distância no eixo das abscissas entre o processo envelope e a curva de serviço. Matematicamente, os valores de backlog máximo e retardo máximo sao obtidos a partir da teoria do Cálculo de Rede, utilizando operações de convolução da álgebra min-plus sobre todo o intervalo de tempo considerado. No Capítulo 5, são derivadas equações para estimação desses parâmetros de QoS utilizando Cálculo de Rede. A seção seguinte apresenta alguns trabalhos da literatura relacionados ao cálculo do processo envelope.

3.2

Trabalhos Relacionados ao Cálculo do Processo En-

velope

Para o modelo de movimento Browniano (Bm-Brownian Motion) [77], o pro- cesso de tráfego acumulado A(t) possui processo envelope ˆA(t), definido como [68,77]:

ˆ

A(t) = µt + κσt1/2, (3-5)

onde, µ e σ são a média e o desvio padrão do processo Bm, respectivamente. O parâmetro κ determina a probabilidade ε do processo de tráfego acumulado A(t) exceder o processo envelope ˆA(t), onde κ =√−2 log ε.

Ao considerar A(t) um processo de movimento Browniano (Bm), pode-se escre- ver:

P A(t) − µt σtH > κ



= Φ(k), (3-6)

onde Φ(.) é uma função de distribuição residual de um distribuição normal padrão. Em [68], foi mostrado que se Φ(k) ≈ ε << 1, então a seguinte aproximação é válida:

P(A(t) > ˆA(t)) ≈ ε. (3-7)

As aplicações do processo Bm para modelagem do tráfego de rede estão restritas aos cenários de tráfego de rede com características de curta-dependência.

No entanto, a abordagem baseada nas equações (3-6) e (3-7) pode ser estendida para diferentes tipos de tráfego, inclusive para tráfego com características de longa- dependência, como é o caso do processo fBm [68].

O processo fBm (fractional Brownian motion) pode descrever melhor as séries de tráfego de rede com características de longa-dependência entre as amostras do que o processo Bm [75].

No fBm, o parâmetro de Hurst (H) é levado em consideração e seus valores estão limitados ao intervalo H = [1/2, 1). De fato, a lei de Hurst [90] estabelece uma relação entre a variância do processo de incrementos do tráfego acumulado A(t) e o parâmetro de Hurst (H), por meio da seguinte equação [68]:

V[A(t + τ) − A(t)] = σ2τ2H, (3-8)

onde V[.] indica variância e H ∈ [1/2, 1).

O processo envelope do fBm é definido como [68]:

ˆ

onde, para o processo fBm, µ é a média, σ o desvio padrão, H o parâmetro de Hurst e κ =√−2 log ε.

O mBm (multifractal Brownian motion) [81] é a generalização multifractal de um processo fBm (fractional Brownian motion) [69]. Segundo [69], o mBm é um processo Gaussiano capaz de capturar a alta variabilidade do tráfego de rede presente em pequenas escalas de tempo, tendo a propriedade de ser descrito localmente por um processo fBm.

Para o mBm, um limitante superior para o tráfego acumulado pode ser calculado em função da média do processo de tráfego e de um limitante superior para o seu processo de incrementos. Um limitante superior para o processo de incrementos do mBm pode ser estimado por meio dos limitantes superiores para os incrementos locais do fBm, visto que, como mencionado anteriormente, o processo mBm pode ser aproximado localmente (na vizinhança do tempo t) por um processo fBm com parâmetro de Hurst H(t) [69]. O processo de incrementos do fBm no instante de tempo t pode ser calculado da seguinte maneira [32]:

ZH(t) ≤ κHtH−1. (3-10)

Assumindo que a vizinhança de um instante de tempo t aproxima-se de zero, o processo envelope ˆA(t) do mBm é calculado da seguinte forma [69]:

ˆ A(t) =

Z t

0

µ+ κσH(x)xH(x)−1dx, (3-11)

onde µ, σ e H(.) são a média, o desvio padrão e o expoente de Hölder do processo mBm, respectivamente.

O expoente de Hölder descreve a regularidade local de um processo, sendo uma medida comumente utilizada para descrever o comportamento de processos que ocorrem em múltiplas escalas, como é o caso de processos multifractais. O expoente de Hölder pode ser visto como uma generalização do parâmetro de Hurst [5], podendo assumir diferentes valores para diferentes instantes de tempo t. Quando o expoente de Hölder H(.) é constante, o processo envelope do mBm reduz-se ao processo envelope do fBm.

A seção seguinte apresenta a contribuição desta tese para o cálculo do processo envelope do tráfego de redes.

3.3

Cálculo do Processo Envelope para o Modelo Multi-

Documentos relacionados