Rede Manhattan Street Roteamento

26
ESTRATÉGIAS DE ROTEAMENTO EM REDES MANHATTAN STREET: UMA REVISÃO J. R. Souza 2011

description

Estratégias de roteamento em redes Manhattan Street: uma revisão.

Transcript of Rede Manhattan Street Roteamento

Page 1: Rede Manhattan Street Roteamento

ESTRATÉGIAS DE ROTEAMENTO EM REDES MANHATTAN STREET:

UMA REVISÃO

J. R. Souza

2011

Page 2: Rede Manhattan Street Roteamento

1

Introdução ......................................................................................................................... 2

1. Características de redes Manhattan Street.................................................................. 2

2. Estratégias Básicas de Roteamento ............................................................................. 5 2.1. Regras Determinísticas ............................................................................................ 6

2.1.1. Regra 1 .............................................................................................................. 6

2.1.2. Regra 2 .............................................................................................................. 7

2.1.3. Regra 3 .............................................................................................................. 8

2.2. Regras Aleatórias ................................................................................................... 10

2.3. Desempenho das Regras Básicas de Roteamento.................................................. 10

3. Falhas na Rede ............................................................................................................ 11

4. Roteamento por Deflexão ........................................................................................... 13 4.1. Deflexão Aleatória ................................................................................................. 16

4.2. Deflexão com Informação...................................................................................... 17

4.3. Deflexão por Direção/Distância............................................................................. 18

4.4. Auto-Roteamento................................................................................................... 19

4.5. Buffers de reordenação........................................................................................... 21

5. Conclusão..................................................................................................................... 24

Referências....................................................................................................................... 25

Page 3: Rede Manhattan Street Roteamento

2

Introdução

A rede Manhattan Street (rede MS) foi proposta por Maxemchuk em 1985 [1] como uma alternativa para uma rede backbone de área metropolitana e, desde então, se tornou uma alternativa atraente não apenas para redes ópticas de chaveamento de pacotes, como também para a própria estrutura (fabric) de switches totalmente ópticos.

As redes Manhattan Street pertecem à família das chamadas redes multi-passos (multihop networks), nas quais há mais de uma rota entre quaisquer pares de nós. Ou seja, o tráfego gerado em um determinado nó pode passar por diversos nós intermediários antes de chegar ao nó de destino. Em cada nó de uma rede multihop deve, portanto, ser tomada uma decisão sobre o roteamento de cada pacote recebido. As características das regras de roteamento adotadas determinam o desempenho da rede.

Este relatório apresenta uma descrição sucinta das principais estratégias de roteamento em redes Manhattan Street, considerando sua aplicação em redes ópticas de chaveamento de pacotes.

1. Características de redes Manhattan Street

A rede Manhattan Street (rede MS) é constituída de uma malha regular bidimensional, na qual há dois ramos (links) de entrada e dois ramos de saída em cada nó, como ilustrado na Figura 1. Este tipo de rede é dito ter um grau de conectividade igual a dois [1], [2]. As rotas adjacentes, verticais e horizontais, têm sentidos alternados. Como os nós extremos são sempre interligados (nós (i,0) ligados aos nós (i,5) e nós (0,i) ligados aos nós (5,i), com i = 0, 1, ..., 5, na Figura 1), os ramos de uma rede MS formam uma malha lógica na superfície de um toróide, ou seja, não há cantos na rede.

Embora uma rede MS possa ter um número de linhas diferente do número de colunas, para que ela preserve sua estrutura regular, é desejável que o número de linhas seja igual ao número de colunas e que este seja um número par [2].

A rede MS opera com janelas de tempo de tamanho fixo (time-slotted network), sendo que cada ramo pode transmitir apenas um pacote por janela de tempo. Um nó qualquer da rede pode ser representado por um simples switch 2x2, que, no início de cada janela temporal, chaveia pacotes dos ramos de entrada para os ramos de saída. Desta forma, um nó pode receber, no máximo, dois pacotes em uma janela temporal (um pacote de cada ramo de entrada). Além disto, este mesmo nó pode gerar um pacote local, o qual só será transmitido se houver uma janela (slot) vazia no nó.

A forma em que os nós de uma rede MS são numerados ou identificados é importante para a maioria das estratégias de roteamento encontradas na literatura e descritas neste relatório.

Page 4: Rede Manhattan Street Roteamento

3

Figura 1: Rede Manhattan Street de 36 nós [2].

Dois tipos básicos de numeração de nós são, em geral, utilizados: numeração absoluta e numeração relativa [2], [3]. A numeração absoluta deve refletir a estrutura regular da rede e dois esquemas deste tipo de numeração são possíveis: inteiro e fracionário. No esquema de numeração inteiro, as linhas e colunas são numeradas seqüencialmente de 0 a m-1, sendo m o número de linhas e colunas. Um nó posicionado na linha i e coluna j é identificado pela dupla (i,j), como ilustrado na Figura 1 para m = 6. Seguindo os princípios da referência [2], a seguinte regra é utilizada na numeração inteira:

� As linhas de ordem par são orientadas da direita para a esquerda, ou em direção ao oeste;

� As linhas de ordem ímpar são orientadas da esquerda para a direita, ou em direção ao leste;

� As colunas de ordem par são orientadas de cima para baixo, ou em direção ao sul; � As colunas de ordem ímpar são orientadas de baixo para cima, ou em direção ao

norte.

A adição de novos nós (linhas e colunas) à rede, obviamente, altera uma numeração absoluta inteira pré-existente, o que exigirá a alteração/atualização da numeração de todos os nós. Para evitar este problema, a expansão da rede deve ser cuidadosamente considerada. A referência [2] sugere uma alternativa de numeração inteira para acomodar a inserção de novos nós sem alterar a numeração existente: numerar linhas e colunas utilizando um passo maior que a unidade. Por exemplo, as linhas e colunas poderiam ser numeradas da seguinte forma: 0, 7, 14, 21, ..., o que permitiria a inserção de até 3 pares de linhas e colunas entre quaisquer duas pré-existentes. Vale a pena lembrar que, para manter a estrutura regular da rede, linhas e colunas devem ser inseridas em pares.

Page 5: Rede Manhattan Street Roteamento

4

A numeração absoluta fracionária fornece uma outra forma de acomodar a expansão da rede sem alterar a numeração de nós. Neste esquema de numeração, linhas e colunas são adicionadas em pares e numeradas por meio de frações: um terço da distância entre duas linhas/colunas pré-existentes [2], como ilustrado na Figura 2, onde a rede inicialmente continha duas colunas, depois foram inseridas mais quatro e, a seguir, mais doze.

Figura 2: Numeração absoluta fracionária [2].

Como, neste relatório, o interesse é a descrição das estratégias de roteamento, será considerado apenas o caso de uma rede MS já completa, na qual a numeração absoluta dos nós é do tipo inteiro. A referência [2] discute detalhadamente a questão da numeração de nós em redes MS de modo a acomodar a inserção de novos nós.

Devido à estrutura regular de uma rede MS, cada nó pode ser considerado como o centro da rede. Em outras palavras, apenas a distância relativa entre nós é de interesse para as estratégias de roteamento. Desta forma, é possível definir um endereçamento relativo, ou numeração relativa, de nós. A referência [2] sugere um esquema de numeração relativa, onde o nó de destino é colocado no centro da rede, recebe a numeração relativa (0,0) e tem seus ramos de saída orientados em direção a nós de numeração relativa decrescente. Na numeração relativa, a rede é dividida em quatro quadrantes, definidos da seguinte forma:

� Primeiro quadrante (Q1): contém os nós com r > 0 e c > 0; � Segundo quadrante (Q2): contém os nós com r > 0 e c � 0; � Terceiro quadrante (Q3): contém os nós com r � 0 e c � 0; � Quarto quadrante (Q4): contém os nós com r < 0 e c > 0.

onde, (r,c) representa a numeração relativa dos nós. Os quadrantes são, então, orientados no sentido trigonométrico e o nó de destino (r=0 e c=0) fica posicionado no canto superior direito do terceiro quadrante.

A Figura 3 ilustra este esquema de numeração relativa e os correspondentes quadrantes, para a rede de 36 nós da Figura 1. Para uma rede de m linhas e m colunas, a numeração relativa resulta em –( m/2 ) < r, c � m/2 [2]. Cada quadrante conterá, portanto, (m/2)2

nós.

Como exemplo, considerando, na Figura 1, que o nó (0,2) gera um pacote destinado ao nó (4,4), na numeração relativa, o nó (0,2) é mapeado como o nó (-2,-2) e o nó (4,4), como o nó (0,0). Considerando que o mesmo nó (0,2) gera um pacote destinado ao nó

Page 6: Rede Manhattan Street Roteamento

5

(3,2), com a numeração relativa, o nó (0,2) seria mapeado como nó (3,0) e o nó de destino (3,2) seria mapeado como (0,0).

Figura 3: Numeração relativa de nós para a rede da Figura 1. O nó hachurado, de numeração relativa (0,0), representa o nó de destino [2].

2. Estratégias Básicas de Roteamento

Maxemchuk [2] apresentou um conjunto de regras de roteamento em redes MS, das quais algumas têm caráter determinístico e outras, caráter aleatório. Na definição destas regras de roteamento, as seguintes hipóteses são feitas:

(i) Os pacotes sempre seguem a rota especificada na regra de roteamento, ou seja, é suposto que dois pacotes nunca disputam uma mesma rota;

(ii) Quando a regra de roteamento decide que as duas rotas de saída de um nó são equivalentes, uma delas é escolhida com probabilidade de 0,5.

A primeira hipótese desconsidera a questão de conflito entre pacotes, ou disputa por um mesmo ramo de saída, que será tratada mais adiante. A segunda hipótese implica que pacotes não seguem sempre a mesma rota entre fonte e destino, mantendo, no entanto, a

0,0

Page 7: Rede Manhattan Street Roteamento

6

distância percorrida inalterada. Como será visto mais tarde, uma rede MS contém um certo número de nós cujas rotas de saída são equivalentes. Por exemplo, se o nó de destino na Figura 1 for o nó (3,2), as duas saídas do nó (1,0) são equivalentes: ambas exigem quatro passos até o nó (3,2). As duas saídas do nó (0,4) também são equivalentes: ambas exigem cinco passos até o nó (3,2).

2.1. Regras Determinísticas

Estas regras de roteamento fazem uso da numeração relativa de nós e dos resultantes quadrantes definidos anteriormente. Maxemchuk [2] propôs três regras determinísticas de roteamento, que diferem na definição das rotas preferenciais.

2.1.1. Regra 1

Em um nó qualquer da rede, esta regra de roteamento seleciona a rota de saída de cada pacote da seguinte forma [2]:

• Caso exista uma rota preferencial na saída de um nó, esta rota é selecionada; • Caso as duas rotas de saída de um nó sejam preferenciais, ou nenhuma delas seja uma

rota preferencial, qualquer uma é selecionada.

As rotas preferenciais desta regra são indicadas na Figura 4, considerando os quatro quadrantes em que a rede MS é dividida pela numeração relativa de nós. O nó de destino é representado pelo retângulo hachurado.

Figura 4: Rotas preferenciais de roteamento para a Regra 1 [2].

Dest

Page 8: Rede Manhattan Street Roteamento

7

Na Figura 4, r1, r2, r3 e r4 representam as linhas que se encontram nos extremos dos quadrantes; c1, c2, c3 e c4 representam as colunas posicionadas nos extremos dos quadrantes.

Para a implementação desta regra, os endereços relativos do nó atual, (r,c), do próximo nó na mesma coluna, (rnxt,c), e do próximo nó na mesma linha, (r,cnxt), devem ser calculados. O quadrante em que se encontra o nó atual é determinado a partir de (r,c), de acordo com a definição dada anteriormente. A direção do ramo ao longo da linha é determinada de c � cnxt, enquanto a direção ao longo da coluna é determinada de r – rnxt.

Um nó do quadrante Q4 estará na linha r4 se r = 0; um nó do segundo quadrante, Q2,estará na coluna c2 se c = 0.

As rotas preferenciais no segundo quadrante são as rotas que apontam para baixo e/ou para a direita. No entanto, se um nó de Q2 estiver na linha r2, o ramo apontando para baixo não será uma rota preferencial, pois a linha seguinte aponta para a esquerda, como pode ser observado na Figura 3, e, portanto, se afasta do destino. Estes ramos não preferenciais são identificados por rnxt = 0 e cnxt � 0.

Da mesma forma, para nós do quarto quadrante que se encontram em c4, os ramos apontando para a esquerda não são preferenciais. Tais ramos são identificados por cnxt = 0 e rnxt � 0.

Um nó do primeiro quadrante que esteja no extremo da linha r1 terá uma rota preferencial diferente daquelas especificadas para este quadrante, pois neste caso cnxt � 0 e cnxt estará em Q2. Por exemplo, na Figura 3, o nó (3,3) encontra-se no extremo da linha r1. A saída deste nó que aponta para cima é uma saída preferencial de Q1 e requer seis passos para chegar ao destino. A rota que aponta para a direita leva ao nó (3,-2) do quadrante Q2 e também requer os mesmos seis passos para chegar ao destino. Esta é, portanto, uma rota preferencial adicional.

De maneira similar, nós em r3, c1 e c3 terão uma rota preferencial diferente daquelas especificadas para o quadrante correspondente caso o nó adjacente esteja em um outro quadrante.

A referência [2] demonstra que esta regra de roteamento sempre seleciona a rota mais curta entre quaisquer pares de nós em uma rede com endereçamento absoluto inteiro.

2.1.2. Regra 2

Esta regra utiliza os mesmos critérios de seleção de rotas que a Regra 1, mas suas rotas preferenciais são definidas como indicado na Figura 5 [2]. A diferença entre esta regra e a anterior reside no fato que os casos limites, em que os nós encontram-se em r1, c1, r3 e c3,não são determinados. Consequentemente, um número menor de cálculos é feito, em comparação com a Regra 1. No entanto, agora os nós nestas linhas e colunas especiais

Page 9: Rede Manhattan Street Roteamento

8

requerem um número maior de passos para chegar ao destino. Como exemplo, considerando o nó (1,3) na Figura 3. De acordo com a Regra 1, este nó teria uma rota preferencial adicional apontando para a direita, que levaria quatro passos até o destino. De acordo com a Regra 2, este nó não tem rota preferencial de saída. Portanto, qualquer uma das rotas de saídas pode ser selecionada. Se a rota que aponta para cima for a selecionada, serão necessários seis passos para chegar ao destino.

A Regra 2 ainda requer o cálculo de rnxt e cnxt para determinar se um nó encontra-se em c4ou r2.

Figura 5: Rotas preferenciais de roteamento para a Regra 2 [2].

Como esta regra afeta apenas os nós que se encontram nos extremos da rede, seu efeito sobre o número médio de passos, ou rota média, deve ser pequeno. Para estes nós extremos, a escolha de uma rota não preferencial resulta em dois passos adicionais.

2.1.3. Regra 3

Esta Regra utiliza rotas preferenciais e alternativas como indicado na Figura 6, onde as setas com linha contínua indicam rotas preferenciais e as setas com linha tracejada, as rotas alternativas.

Em cada nó, a rota de saída dos pacotes é selecionada da seguinte forma [2]:

• Caso exista uma rota preferencial na saída de um nó, esta rota é selecionada; • Caso exista uma rota alternativa e nenhuma preferencial, a rota alternativa é

selecionada;

Dest

Page 10: Rede Manhattan Street Roteamento

9

• Caso as duas rotas de saída de um nó sejam preferenciais, ou nenhuma delas seja preferencial ou alternativa, qualquer uma é selecionada.

Figura 6: Rotas preferenciais e alternativas de roteamento para a Regra 3. As setas contínuas indicam rotas preferenciais e as tracejadas, rotas alternativas [2].

Esta regra exige uma quantidade de cálculos ainda menor que a Regra 2, pois não requer a avaliação de rnxt e cnxt. As regiões de interesse dependem apenas do endereço relativo (r,c) do nó atual. A dupla (r,c) também determina as direções dos ramos de saída do nó: se r for par, a linha é orientada da direita para a esquerda e no sentido contrário se r for impar; se c for par, a coluna é orientada de cima para baixo e no sentindo contrário se c for impar.

A desvantagem desta regra é resultar em um menor número de nós com saídas equivalentes [2]. Por exemplo, nos segundo e quarto quadrantes, a Regra 2 permite duas rotas preferenciais, enquanto a Regra 3 permite apenas uma. Sem dúvida, isto aumenta a probabilidade de conflito, ou seja, dois ou mais de pacotes disputarem um mesmo ramo em uma dada janela de tempo.

Em redes completas, as Regras 2 e 3 resultam na mesma distância entre quaisquer pares de nós da rede [2].

Dest

Page 11: Rede Manhattan Street Roteamento

10

2.2. Regras Aleatórias

Maxemchuk [2] também propôs duas regras de roteamento onde as rotas de saída são selecionadas aleatoriamente:

• Regra A: em cada nó da rede, qualquer uma das rotas de saída é selecionada com igual probabilidade, caso o próprio nó não seja o de destino.

• Regra B: é suposto que cada nó da rede conheça os endereços de seus dois vizinhos imediatos. Em cada nó, caso o destino seja um dos vizinhos, o pacote é direcionado a ele. Caso contrário, qualquer uma das rotas de saída do nó é selecionada aleatoriamente.

A adoção de uma regra aleatória de roteamento oferece algumas vantagens em relação às regras determinísticas. A primeira é a grande facilidade de implementação, uma vez que não é necessário calcular os endereços relativos, os quadrantes ou mesmo as direções dos ramos de saída de um nó. Uma outra vantagem é uma maior tolerância a falhas, quando a rede perde sua estrutura regular. A desvantagem das regras aleatórias de roteamento é o fato de resultarem em um maior número de passos entre a fonte e destino dos pacotes, o que afeta o desempenho da rede.

2.3. Desempenho das Regras Básicas de Roteamento

Maxemchuk [2] realizou uma série de simulações, de modo a comparar o desempenho das regras básicas de roteamento. Para esta comparação, duas grandezas são definidas:

• Distância média entre nós: média das distâncias entre quaisquer pares de fonte e destino da rede, de acordo com a regra de roteamento em questão;

• Eficiência da regra de roteamento: média entre a distância mínima entre quaisquer pares de nós e a distância média entre nós.

Nas simulações de Maxemchuk, quando as duas rotas de saída de um nó eram equivalentes, uma qualquer era selecionada com probabilidade 0,5, o que dá um certo caráter aleatório às regras determinísticas e implica que pacotes nem sempre seguem a mesma rota entre um dado par de nós. Para atenuar o efeito desta componente aleatória, a distância média entre nós foi calculada diversas vezes e a média dos valores foi, então, tomada como o valor final da distância média [2].

Os resultados da referência [2] são reproduzidos na Tabela I, considerando redes MS de 4 x 4 até 14 x 14 nós. Esta tabela mostra claramente que a Regra 1 sempre seleciona a distância mínima entre quaisquer pares de nós e, portanto, tem eficiência unitária em todas as situações. As Regras 2 e 3 sempre resultam na mesma distância média entre nós, a qual é maior, em comparação com a Regra 1, para os nós posicionados nos extremos da rede, como comentado anteriormente.

Page 12: Rede Manhattan Street Roteamento

11

A Tabela I mostra que as regras aleatórias de roteamento são extremamente ineficientes: a distância média entre nós pode ser até mais de 30 vezes maior que a obtida com as regras determinísticas. A Regra B é mais eficiente que a Regra A, como esperado.

Tabela I: Eficiência das regras básicas de roteamento [2].

3. Falhas na Rede

Na Seção anterior foi abordado apenas o caso de uma rede completa e faz-se necessário considerar a situação onde haja falha na rede e analisar seu efeito sobre as regras de roteamento. Dois tipos de falha podem ocorrer: falha do nó e falha em ramos (links) da rede.

No caso de falha de um nó, os pacotes destinados a ele serão perdidos. Portanto, é necessário prover algum mecanismo de desvio e evitar a perda sistemática de pacotes. Como em cada nó de uma rede MS há dois ramos de saída, um possível mecanismo de desvio é indicado na Figura 7 [2], onde as linhas e colunas que cruzam o nó que falhou � nó (2,2) � são interconectadas. Este procedimento permite a continuidade de operação da rede e evita perda de pacotes no nó que falhou.

Page 13: Rede Manhattan Street Roteamento

12

Figura 7: Operação da rede MS quando há falha de um nó [2].

No caso de falha de um ramo da rede, os nós que o compartilham não poderão comunicar-se, o que também implica na perda de pacotes. Além disto, a falha de um ramo quebra a estrutura regular da rede e altera o grau de conectividade dos nós que compartilham o ramo falhado, que passam a ter dois ramos de entrada e apenas um de saída em operação. Para preservar a estrutura regular da rede e garantir que os nós continuem tendo o mesmo número de ramos de entrada e de saída, o seguinte procedimento [2] pode ser empregado:

• Se um nó deixa de receber sinal em uma coluna, a transmissão ao longo da linha deve ser interrompida;

• Se o nó deixa de receber sinal em uma linha, a transmissão ao longo da coluna deve ser interrompida.

Tal procedimento é ilustrado na Figura 8, onde as linhas tracejadas indicam ramos inoperantes. Nesta figura, foi suposto que o ramo entre os nós (2,2) e (2,3) falhou. Como o nó (2,3) deixa de receber sinal da linha de entrada, ele não transmite na coluna de saída. Como o nó (3,3) deixa de receber sinal em sua coluna, interrompe a transmissão na linha de saída, o que obriga que o nó (3,2) não transmita em sua coluna de saída. Como o nó (2,2) não receberá sinal na coluna, não transmitirá na linha de saída, que é o ramo falhado.

Com este procedimento, quando um ramo falha, quatro são feitos inoperantes. Em algumas situações, um nó operante pode vir a ser bloqueado. Por exemplo, na Figura 8, caso o ramo entre os nós (4,4) e (4,3) também falhe, os dois ramos de entrada do nó (3,3) serão interrompido e o nó se tornará inoperante. O procedimento sugerido na Figura 8 tem bom desempenho quando há poucas falhas de ramos e estas não ocorrem em regiões

Page 14: Rede Manhattan Street Roteamento

13

muito próximas na rede. Considerando uma rede MS de 10 x 12 nós, Maxemchuk, por meio de simulações, verificou que quando quatro ramos falham (16 são retirados de operação), a eficiência das regras determinísticas de roteamento ainda é bastante aceitável, em torno de 80% [2].

Figura 8: Operação de uma rede MS no caso da falha do ramo entre os nós (2,2) e (2,3) [2].

4. Roteamento por Deflexão

As regras de roteamento apresentadas na Seção 2 foram definidas considerando que um pacote sempre seguia a rota especificada pela regra. Como um nó da rede MS pode receber dois pacotes por janela de tempo, e ainda pode gerar um pacote destinado a um outro nó, é possível que dois pacotes tenham a mesma rota preferencial de saída. Nesta situação, há que decidir a contenda entre os pacotes.

Um procedimento aceitável é direcionar um dos pacotes a sua rota preferencial e o outro, à segunda rota de saída do nó. O segundo pacote sofre, então, uma deflexão de sua rota preferencial. Portanto, este procedimento é conhecido como roteamento por deflexão (deflection routing). Diversas propostas de roteamento por deflexão em redes MS podem ser encontradas na literatura [3] – [12] e diferem na seleção das rotas preferenciais ou na política de solução de conflitos (seleção do pacote a ser defletido), como será visto mais adiante.

O desempenho de redes multi-passos sob roteamento por deflexão é influenciado por três de suas propriedades estruturais [3] – [12]:

Page 15: Rede Manhattan Street Roteamento

14

(i) Diâmetro: o diâmetro de uma rede, usualmente representado por dmax, é definido como o valor máximo da mínima distância entre pares de nós, considerando todos os nós da rede. Este parâmetro fornece uma boa indicação de quão compacta a rede é. O diâmetro de uma rede MS de m linhas e m colunas (com N = m2 nós) é dado por [4]:

dmax = ��

��

imparfor2mse,m

parfor2mse,1m

Portanto, para N suficientemente grande, dmax N� . Há outras configurações de redes com diâmetro menor que a rede MS. Este valor é maior que o valor considerado ótimo, log2 N [3] - [5].

(ii) Custo (ou penalidade) de deflexão: definido como o maior aumento de distância entre pares de nós, expresso em número de passos (hops), devido a uma deflexão. Este parâmetro, usualmente representado como cdef, é um bom indicador de como o desempenho da rede é afetado em condição de grande volume de tráfego. Uma rede MS tem custo de deflexão cdef = 4, independente do número total de nós. Uma consulta à Figura 1 mostra claramente que um pacote que tenha sido defletido sempre pode “dar uma volta no quarteirão” e retornar ao ponto onde a deflexão ocorreu.

(iii) Porcentagem de nós com saídas equivalentes: considerando um certo nó de destino, em uma rede MS há um certo número de nós cujas duas rotas de saídas resultam na mesma distância ao destino. Estes nós podem ser referidos como sendo do tipo “tanto faz” (don’t care nodes). Uma alta porcentagem de nós deste tipo diminui a necessidade de deflexões e, portanto, garante o bom desempenho da rede, mesmo sob grande volume de tráfego. Considerando uma rede de m linhas e m colunas, a Figura 9 mostra a parcela de nós deste tipo, em relação ao número total de nós da rede MS (N = m2) [4]. Pode ser observado que, à medida que aumenta o número total de nós, cerca de 50% deles serão do tipo “tanto faz”.

A Figura 10 ilustra a distribuição de nós do tipo “tanto faz” em uma rede MS de 16 x 16 nós, considerando que o nó (8,7) é o nó de destino [5]. Nesta figura, os círculos representam os nós cujas saídas não são equivalentes, ou seja, os nós que não são do tipo “tanto faz”. É interessante observar que quatro quadrantes são formados pelas linhas de círculos consecutivos que convergem para o nó (8,7). Em cada quadrante, os círculos ocorrem como em um tabuleiro de xadrez. Em outras palavras, em cada quadrante a rota de preferência de um pacote é do tipo “tanto faz” a cada dois passos.

Page 16: Rede Manhattan Street Roteamento

15

Figura 9: Porcentagem de nós do tipo “tanto faz” em uma rede MS em relação ao número total de nós N [4].

Figura 10:Distribuição de nós do tipo “tanto faz” em uma rede MS de 16 x 16 nós, considerando que o nó (8,7) é o nó de destino [5].

Na adoção de uma regra de roteamento por deflexão, é necessário definir:

(i) As rotas preferenciais; (ii) Política de deflexão.

A política de deflexão, ou de solução de conflito, estabelece regras para a seleção do pacote a ser defletido. Diversas propostas de roteamento por deflexão em redes MS podem ser encontradas na literatura [3] – [12] e diferem na seleção das rotas preferenciais e/ou na política de deflexão.

Page 17: Rede Manhattan Street Roteamento

16

4.1. Deflexão Aleatória

Na referência [3], a rota preferencial é a que resulta em menor distância ao destino, como a Regra 1 da Seção 2.1.1. No caso de conflito, o pacote a ser defletido é escolhido aleatoriamente. Esta referência considerou que os nós da rede MS tinham a estrutura mostrada na Figura 11.

Figura 11:Estrutura de um nó da rede MS [3].

A referência [3] considera que há buffers nos ramos de saída que podem armazenar dois pacotes cada. Um nó da rede funciona da seguinta maneira:

• Pacotes destinados ao nó são removidos; • Pacotes gerados localmente podem apenas ser transmitidos se houver uma janela

temporal (slot) vazia; • Um ramo de saída é selecionado para cada pacote; • Se o buffer de um ramo de saída estiver cheio, o pacote é defletido para o outro ramo.

As simulações da referência [3] foram realizadas de acordo com os seguintes princípios:

• As fontes não têm memória e inserem pacotes em janelas temporais vazias com probabilidade PA;

• Os destinos dos pacotes são selecionados de acordo com uma distribuição uniforme; • Rotas de saída de um nó são selecionadas independente do estado dos buffers locais; • Quando um pacote tem duas rotas preferenciais para um destino e é o único ser

transmitido, uma rota é selecionada aleatoriamente; caso haja um outro pacote a ser transmitido na mesma janela temporal, um pacote é direcionado a cada uma das saídas;

• Quando dois pacotes têm a mesma rota de saída, um deve ser defletido e o pacote a ser defletido é selecionado aleatoriamente.

O desempenho da rede foi medido através de uma vazão relativa, definida como a razão entre a vazão absoluta (o número médio de slots que um nó recebe) e vazão máxima, a qual é definida como o dobro do inverso da distância média entre nós [3]. Esta vazão

Page 18: Rede Manhattan Street Roteamento

17

máxima coresponde à vazão que seria obtida se todos os pacotes seguissem sempre a rota de distância mínima, ou seja, não sofressem qualquer deflexão. A Figura 12 reproduz os resultados das simulações da referência [3] para redes MS de 16 x 16, 32 x 32 e 64 x 64 nós e considerando 0, 1, 2, 4 e 8 buffers.

Figura 12:Vazão relativa (Tr) em função da probabilidade de chegada de pacotes (PA) para redes MS com 16 x 16, 32 x 32 e 64 x 64 nós [3].

Sob pequeno volume de tráfego, a Figura 12 indica que a vazão relativa aumenta de forma quase linear com o volume de tráfego. Esta figura também mostra que sem buffer,a vazão relativa da rede varia entre cerca de 50% a 70% da vazão máxima, dependendo do tamanho da rede. Esta situação corresponde à pura deflexão aleatória. A inclusão de um buffer aumenta a vazão relativa para cerca de 75% a 90% da vazão máxima. A inclusão de buffers adicionais tem pouco efeito sobre a vazão da rede. Resultados similares são apresentados nas referências [4], [6] e [7], embora cada uma delas utilize uma estrutura diferente de nós.

4.2. Deflexão com Informação

As referências [8], [9] apresentam três alternativas para a política de solução de conflito de pacotes, as quais levam em conta o passado do pacote e/ou seu percurso futuro através da rede. Estes esquemas de deflexão são, portanto, referidos como esquemas de deflexão com informação. As alternativas de deflexão são as seguintes [8], [9]:

(i) Deflexão por idade: a idade de um pacote é definida como o tempo por ele gasto na rede até atingir o nó atual. Neste esquema de deflexão, a preferência de percurso é dada ao pacote mais velho. No caso de conflito entre dois pacotes de mesma idade, o pacote a ser defletido é selecionado aleatoriamente.

(ii) Deflexão por conflito: neste esquema, a prioridade de percurso é dada ao pacote que houver sofrido uma maior número de deflexões.

Page 19: Rede Manhattan Street Roteamento

18

(iii) Deflexão por predição: este esquema é baseado em uma predição da distância entre a fonte e o destino. Esta distância é inicializada como a mínima distância entre fonte e destino. Cada vez que o pacote sofre uma deflexão, este valor é aumentado de 4. Prioridade de percurso é dada ao pacote com maior distância entre fonte e destino.

A referência [8] considerou uma rede MS com 8 x 8 nós, sendo que em cada nó havia um buffer de entrada capaz de armazenar até cinco pacotes gerados localmente. As rotas preferenciais correspondem às de menor distância ao destino. Os resultados das simulações realizadas na referência [8] são reproduzidos na Figura 13, que mostra a vazão da rede em função da probabilidade de chegada de pacotes. Nesta figura, o desempenho dos esquemas de deflexão com informação é comparado com o da deflexão aleatória da Seção 4.1.

Figura 13:Desempenho dos esquemas de deflexão com informação, representado pela vazão em função da probabilidade de chegada de pacotes [8].

Na Figura 13, a deflexão por idade permite uma vazão ligeiramente maior que os outros esquemas, sendo a deflexão aleatória a menos eficiente.

4.3. Deflexão por Direção/Distância

A referência [5] sugere dois esquemas de deflexão:

(i) Por direção: o pacote que chegou por uma linha é direcionado à linha de saída; o pacote que chegou por uma coluna é direcionado à coluna de saída.

0.0 0.1 0.2 0.3 0.4 0.50.04

0.06

0.08

0.10

0.12

0.14

0.16

0.18

0.20

0.22

0.24

Aleatória Idade Deflexão Predição

Vaz

ão

Probabilidade de Chegada (PA)

Page 20: Rede Manhattan Street Roteamento

19

(ii) Por distância: o pacote que estiver mais próximo do destino segue sua rota preferencial. No caso de conflito entre dois pacotes com mesma distância ao destino, a seleção é feita aleatoriamente.

As simulações comentadas na referência [5] mostraram que o desempenho destes esquemas de deflexão é apenas comparável ao da deflexão aleatória. A maior contribuição desta refrência é o desenvolvimento de modelos aproximados para avaliar o desempenho (vazão, utilização) de redes MS.

4.4. Auto-Roteamento

A referência [10] apresenta um novo esquema para a seleção de rotas preferenciais, no qual cada pacote encontra sua rota através da rede seguindo indicadores de direção até o destino. Os autores denominaram este esquema de roteamento de “dead reckoning”, que pode ser traduzido como auto-navegação, ou auto-roteamento. O nó de destino é posicionado no cruzamento da “linha de destino” com a “coluna de destino”. Ao ser gerado na fonte, o pacote recebe dois indicadores iniciais de direção, que informam a rota mais curta até o destino. Estes indicadores são carregados pelo pacote através da rede e, em cada nó onde uma decisão de roteamento é necessária, a rota preferencial é selecionada de acordo com a seguinte regra:

(a) Sempre que possível, um pacote deve seguir a orientação ditada por um de seus indicadores de direção. Se o nó for do tipo “tanto faz” ou nenhuma saída tiver a orientação desejada, qualquer uma das rotas de saída é selecionada (com probabilidade 0,5), exceto nos casos (b) e (c) adiante.

Em cada nó, o endereço de destino é comparado com a linha e coluna do nó atual, para determinar se a linha e coluna de destino foram alcançadas. As seguintes regras suplementares são aplicadas quando o pacote localizar sua linha ou coluna de destino:

(b) Se um pacote encontra sua linha (coluna) de destino, e se esta linha (coluna) estiver orientada de acordo com um dos indicadores de direção, então o pacote deve, se possível, seguir por esta linha (coluna); caso contrário, deve proceder segundo a regra (a) acima.

(c) Se um pacote está seguindo sua linha (coluna) de destino, de acordo com um de seus indicadores de direção, o pacote deve, se possível, nela continuar; caso contrário, deve proceder segundo a regra (a) acima.

(d) Se um pacote cruza (ultrapassa) sua linha (coluna) de destino, então o indicador de direção correspondente deve ser verificado e atualizado, caso necessário.

Page 21: Rede Manhattan Street Roteamento

20

(e) Se um pacote está seguindo sua linha (coluna) de destino, seguindo ou não a orientação de um de seus indicadores de direção, e faz uma curva, então o indicador correspondente deve ser verificado e atualizado, caso necessário.

A vantagem desta regra, em comparação com as regras determinísticas da Seção 2.1, é não exigir que as linhas e colunas da rede sejam numeradas de forma organizada. Como esta nova regra de roteamento não se baseia no endereço do destino, mas apenas em indicadores de direção, as linhas e colunas podem ser numeradas de forma arbitrária, o que torna mais fácil e simples acomodar uma expansão da rede. Vale ressaltar que, na fonte, a Regra 1 da Seção 2.1 é usada para inicializar os indicadores de direção segundo a menor distância até o destino.

Os autores da referência [10] realizaram uma série de simulações e compararam o desempenho desta regra de roteamento com as regras propostas por Maxemchuk [2], e os resultados são reproduzidos na Tabela II.

Tabela II: Eficiência de regras de roteamento em redes MS [10].

Os resultados mostrados na Tabela II foram obtidos com a hipótese de não haver conflito entre pacotes, ou seja, admitindo que os pacotes sempre seguem as rotas especificadas pelas regras de roteamento. A eficiência desta nova regra de roteamento é ligeiramente inferior que a das regras determinísticas da Seção 2.1. Talvez a menor eficiência possa

[2] [2]

Page 22: Rede Manhattan Street Roteamento

21

ser compensada pela maior facilidade de implementação, uma vez que esta regra não requer o cálculo de endereços relativos e a divisão da rede nos correspondentes quadrantes.

Os autores da referência [10] também consideraram a questão de conflito entre pacotes e adotaram deflexão aleatória. Os autores utilizaram a mesma estrutura de nós da Figura 11, com a inclusão de buffers adicionais. A Figura 14 reproduz o resultado de simulações da referência [10] e mostra a vazão relativa, definida da mesma forma que na Seção 4.1, em função da probabilidade de chegada de pacotes (PA, na Seção 4.1), considerando uma rede MS de 8 x 8 nós.

Figura 14:Desempenho da regra de auto-roteamento, com deflexão aleatória, para uma rede MS de 8 x8 nós [10].

A Figura 14 indica que no caso de pura deflexão aleatória (nenhum buffer), a vazão da rede corresponde a cerca de 40% da vazão máxima (sem deflexões). Este valor é ligeiramente menor que o que seria obtido utilizando a mínima distância para selecionar as rotas preferenciais (como na Figura 12). Novamente, fica claro que o emprego de buffers aumenta a vazão consideravelmente, sendo que a adição do primeiro buffer é responsável pela maior parte da melhora de desempenho.

4.5. Buffers de reordenação

A adoção de qualquer política de deflexão faz com que pacotes gerados por uma mesma fonte sigam diferentes rotas até o destino. Em consequência, os pacotes podem chegar ao destino fora de ordem, o que requer o emprego de um buffer de reordenação no receptor.

Page 23: Rede Manhattan Street Roteamento

22

A referência [11] apresenta uma investigação sobre o efeito de buffers de reordenação no desempenho de redes MS. Nesta investigação, foram considerados nós com a estrutura mostrada na Figura 15, sendo utilizados três tipos de buffer: de entrada, para armazenar pacotes gerados localmente, de saída, para armazenar pacotes a serem roteados, e de reordenação, para armazenar pacotes que chegaram ao destino fora de ordem.

Figura 15:Estrutura de nó com buffer de reordenação.

Esta estrutura de nó é similar à da Figura 12, exceto pela presença dos buffer de reordenação. A Figura 16 reproduz resultados da referência [11], onde a regra de roteamento é a mesma da seção 4.1, sendo consideradas redes MS de 16 x 16 nós e distâncias entre nós correspondendo a uma, cinco e 400 janelas temporais.

(a)

Page 24: Rede Manhattan Street Roteamento

23

(b)

(c)

Figura 16:Vazão de um nó em função de sua taxa de geração de pacotes, para uma rede MS de 16 x 16 nós, com distância entre nós correspondendo (a) 1, (b) 5 e (c) 400 janelas

temporais [11].

Page 25: Rede Manhattan Street Roteamento

24

Os resultados mostrados na Figura 16 indicam que o emprego de buffers de reordenação melhora o desempenho da rede. Além disto, em condições de tráfego moderado, o esquema de roteramento com deflexão funciona razoavelmente bem com poucos buffersde saída e buffers de reordenamento capazes de armazenar três ou quatro pacotes. O emprego de buffers se torna mais mais necessário para grandes distâncias entre nós, como pode ser observado na Figura 16-c.

5. Conclusão

Foram estudados algumas das estratégias de roteamento propostas para redes Manhattan Street, que diferem ou na seleção das rotas preferenciais e/ou na política de solução de conflito entre pacotes.

Os resultados citados neste relatório indicam que o critério mais eficiente para a seleção de rotas preferenciais é o de menor distância entre nós, embora outros critérios possam levar a regras de roteamento de mais fácil implementação.

Quanto à política de solução de conflito, parece não haver muita vantagem em adotar políticas mais elaboradas que a simples escolha aleatória do pacote a ser defletido. A deflexão com informação, que faz uso do passado do pacote e/ou de uma predição de seu percurso futuro, não fornece nenhum ganho que justifique sua possivelmente maior complexidade de implementação.

Fica claro, também, que o uso de buffers, de entrada, saída e/ou de reordenação pode aumentar consideravelmente a vazão da rede, em comparação com a pura deflexão aleatória (sem buffers). Há, na literatura, informação suficiente para recomendar o uso de poucos buffers, apenas um ou dois, nos ramos de saída, pois um maior número de buffersnão resulta em vazão muito maior.

No caso de redes ópticas, a questão de buffers merece mais cuidado, pois estes são implementados na forma de linhas de retardo (delay lines), o que implica em que os pacotes armazenados não podem ser acessados a qualquer momento, mas apenas após terem vencido o comprimento da linha de retardo. Portanto, o tempo gasto na propagação ao longo de uma linha de retardo deve ser um múltiplo da janela temporal. Esta questão é abordada na referência [12].

Sem dúvida, as redes Manhattan Street se mostram bastante adequadas para redes ópticas de chaveamento de pacotes.

Page 26: Rede Manhattan Street Roteamento

25

Referências

1. N. F. Maxemchuk: “The Manhattan Street network”, Proc.GLOBECOM’85, New Orleans, LA, Dec. 1986, pp. 255-261.

2. N. F. Maxemchuk: “Routing in the Manhattan Street network”, IEEE Trans. Com., Vol. Com-35, No. 5, 1987, pp 503-512.

3. N. F. Maxemchuk: “Comparison of deflection and store-and-forward techniques in the Manhattan Street and Shuffle-Exchange networks”, Proc. INFOCOM '89, 1989, pp 800 –809.

4. F. Forghieri, A. Bononi e P. Prucnal: “Analysis and comparison of hot-potato and single-buffer deflection routing in very high bit rate optical mesh networks”, IEEE Trans. Com., Vol. Com-43, No. 5, 1995, pp 88-98.

5. A. G. Greenberg e J. Goodman: “Sharp approximate models of deflection routing in mesh networks”, IEEE Trans Com., Vol. Com-41, 1993, pp 210-223.

6. N. Mirfakhraei: “Simulation of a Manhattan Street network for high-speed ATM applications”, Proc. 1995 IEEE Internat. Conf. on Communications, 1995, pp 1937-1942.

7. A. Bononi, F. Forghieri e P. Prucnal: “Analysis of one-buffer deflection routing in ultra-fast optical mesh networks”, Proc. Twelfth Annual Joint Conference of the IEEE Computer and Communications Societies, 1993, pp 303-311.

8. T. G. Robertazzi e A. A. Lazar: “Deflection strategies for the Manhattan Street network”, IEEE Internat. Conf. on Communications, 1991, pp 1652-1658.

9. T. G. Robertazzi e H. Huang: “Performance evaluation of the Manhattan Street network with input buffers”, Proc. IEEE Internat. Conf. on Communications, 1992, pp 202-206.

10. D. Cotter e M. C. Tatham: “Dead reckoning – a primitive and efficient self-routing protocol for ultrafast mesh networks”, IEE Proceedings, Vol. 144, Issue 3, 1997, pp 135-142.

11. A. K. Choudhury e N. F. Maxemchuk: “Effect of a finite reassembly buffer on the performance of deflection routing”, Proc.. IEEE Internat. Conf. on Communications, 1991, pp 1637-1646.

12. A. G. Fayoumi, A. Jayasumana e J. Sauer: “Performance of multihop networks using optical buffering and deflection routing”, Proc. IEEE Conf. on Local Computer Networks, 2000, pp 548-555.