420 likes | 556 Views
Redes de computadores: Tecnologia de Comutação. Prof. Dr. Amine BERQIA bamine@ualg.pt http://w3.ualg.pt/~bamine /. Sumário. Comutação de Circuitos Comutação de Mensagens Comutação de Pacotes Comutação de pacotes Datagrama Comutação de pacotes por circuito virtual.
E N D
Redes de computadores: Tecnologia de Comutação Prof. Dr. Amine BERQIA bamine@ualg.pt http://w3.ualg.pt/~bamine /
Sumário • Comutação de Circuitos • Comutação de Mensagens • Comutação de Pacotes • Comutação de pacotes Datagrama • Comutação de pacotes por circuito virtual
Porque Comutação? • CPU • Conecte 1 • Conecte 2 • Conecte 3 • Mem principal. • Barramento de I/O • Assuma a estação de trabalho com DMA é usado como comutador para mover dados; Desempenho é limitado: Cada pacote cruza o bus de I/O duas vezes e é lido e escrito na memoria uma vez; • Para evitar este problema, utilizamos uma grande malha de tecido de comutação para reduzir a contenção fornecer uma grande fluidez.
Tecnologia de Comutação • Recursos são reservados nas redes de comutação de circuitos de comutação de circuitos. • Semelhante a um restaurante que aceita reservas. • Uma rede de telefones é uma rede de comutação de circuitos. • Recursos não são reservados para redes de comutação de pacotes. • Semelhante a um restaurante que não aceita reservas. • A Internet é uma rede de comutação de pacotes. • Não todas as redes podem ser classificadas como puras redes de comutação de pacotes ou circuitos. • Redes baseadas em ATM associam conceitos de comutação de circuitos e de pacotes
Comutação de Circuitos • Físico • cobre • Comutador • office Quando você / seu computador faz uma cahamada, o equipamento de comutaçãodentro do sistema de telefone procura um caminho físico de cobredesde o seu telefone até o telefone de destino. Esta técnica é chamada de comutação de circuitos.
Operação de Comutação de Circuitos (1) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5 • Comutação deCircuitos envolve três fases: • 1. Estabelecimento de circuito • 2. Transferência de Dados • 3. Terminação do circuito
Operação de Comutação de Circuitos(2) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5 "Sinal de ocupado" se capacidade para um circuito não disponível
Propriedades de Comutação de Circuitos • Um caminho de comunicação dedicado é estabelecido entre duas estações através dos nós da rede. • O caminho dedicado é chamado uma conexão comutada por circuito ou circuito. • Um circuito ocupa uma capacidade fixa de cada ligação durante o tempo da conexão. A capacidade não utilizada pelo circuito NÂO PODE ser usado por outros circuitos. • Dados não se atrasam nos comutadores.
Temporização na Comutação de Circuitos • Salto 2 • Salto 3 • Salto 1 • Estabelecimento • do Circuito • Atraso de • Propagação • por salto • Atraso • Trans. • Dados • Atraso de • Propagação • entre duas estações • Terminação • Circuito
Atraso de fim-a-fim de Comutação Circuitos • Tc = S + D + UM • Neste caso, • S = tempo de inicio de chamada • D = tempo de entrega de mensagem • = atraso propagação + tempo transmissão • = Nx Dn + L/B • Em que, • N = Numero de saltos entre as duas estações • Dp = Atraso de Propagação por salto • L = Tamanho de Dados • B = Taxa de Dados • Um = tempo de Reconhecimento • So : Tc = S + NDp + L/B + A
Vantagens e Desvantagens de Comutação de Circuitos Vantagens: 1.Largura da banda fixa, capacidade garantida (nenhuma congestão). 2.Variação do atraso de ponta-a-ponta biaxo (atraso é quase constante). Desvantagens: 1. Iniciar e Terminar conexões introduz overhead. 2. Utilizador paga circuito, mesmo quando não utiliza. 3. Outros utilizadores não podem usar o circuito nem sequer se estiver livre de tráfego. 4. Tráfego entre computadores é frequentemente desigual, deixando a conexão ociosa a maior parte do tempo. 5. Remetente e receptor precisam enviar e receber a mesma taxa. 6. Quando circuito está ocupado, ou no max. da capacidade, as conexões estão bloqueadas.
Operação de Comutação por Mensagens Não é estabelecida uma ligação fisica de cobre entre emissor e receptor Cada bloco é recebido por inteiro, inspeccionado por erros, e depois retransmitido, chamadostore-and-forward. Nenhum limite no tamanho da mensagem. Cabe aos Routers fazer buffer de mensagens longas utilizando discos. Pode conter uma ligação de router-router durante minutos. Inútil para tráfego interactivo.
Atraso de ponta-a-ponta de Comutação por Mensagens Tm = N. Md + Pd Neste caso, N = Número de saltos entre duas estações Md = tempo de entrega de Mensagem por salto = atraso propagação + atraso transmissão = Dp + L/B Pd = Atraso Processamento entre dois saltos Tm = N(Dp + L/B) + (N - 1) Pd
Comutação por Pacotes • Ola, Amigo, • Mensagem • H1 • Ola, • H2 • Amigo • Pacotes • Uma mensagem não é enviada como uma única unidade, mas dividida em pacotes pequenos que são transmitidos individualmente. • Cada pacote tem cabeçalho que contém a origem, destino e numero de sequencia; Pacotes podem viajar em rotas diferentes, ou podem chegar no destino for a de ordem. A rede reúne os pacotes, utilizando a informação contida em cada pacote relativo ao número de sequência. • Comutador tem que receber o pacote inteiro antes de possa começar a transmitir o primeiro bit do pacote sobre a ligação de saída. • Dois métodos: Pacote de Datagrama e Pacote de Circuito Virtual (VC).
Comutação por Pacote Datagrama 1. Não há atraso de ida-e-volta por ter de esperar pela inicialização duma conexão; Uma estação pode enviar dados assim que esteja pronta. 2. Quando uma estação enviar um pacote, não existe forma de saber se a rede é capaz de entregar ou se a estação de destino esta disponível. 3. Cada pacote (de mesma mensagem) pode viajar por caminhos diferentes; É necessário voltar a colocar a sequência. 4. Como todos os pacotes têm que levar o endereço de destino completo, o overhead por pacote é maior que para o método orientado a conexão.
Operação de Comutação por Pacote Datagrama (1) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5 Analogia: sistema postal; Por vezes designado modelo sem conexão; Cada comutador mantém uma tabela de encaminhamento (routing).
Operação de Comutação por Pacote Datagrama (2) • C • Um • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (3) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (4) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (5) • C • Um • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (6) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (7) • C • Um • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (8) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (9) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Operação de Comutação por Pacote Datagrama (10) • C • A • 7 • 1 • D • 4 • 2 • B • 6 • E • 3 • 5
Exemplo de Comutação por Pacote Datagrama • Comutador 1 • 0 • 2 • Comutador 2 • 3 • 1 • 3 • 1 • Host F • Host C • 2 • 0 • Host A • Comutador 3 • 0 • 1 • 3 • Tabela de encaminhamento • para comutador 2 • Host D • Host B • 2 • Destino • Porta Com. • A • B • D • F • 3 • 0 • 0 • 1 • Host H
Atraso de ponta-a-ponta de Pacote de Datagrama Td = D1 + D2 + D3 Neste caso, D1 = tempo para transmitir e entregar todos os pacotes ao primeiro salto D2 = tempo de entrega de ultimo pacote ao segundo salto D3 = tempo de entrega de último pacote ao terceiro salto Que seja, NP = L/(P-H) = numero de pacotes em que, L = comprimento de mensagem, P = tamanho de pacote, H = tamanho de cabeçalho t = tempo de transmissão por pacote = P/B, B = taxa de dados Dp = atraso de propagação por salto N = Numero de saltos entre estações D1 = Np (P/B) + Dp D2 = D3 = t + Dp = P / B + Dp Td = D1 + D2 + D3 = Np(P/B) + Dp + (N –1 )(P/B + Dp) = (Np+N -1)(P/B) + NDp
Comutação por Pacotes de Circuito Virtual • Comutação por pacotes VC é um híbrido de comutação de circuitos e comutação por pacotes: • Todo os dados são transmitidos como pacotes • Todos os pacotes de uma mensagem são enviados junto num • caminho preestabelecido (circuito virtual) • Comunicação com circuitos virtuais (VC) acontece em três fases: • 1. Estabelecimento de VC • 2. Transferência Dados • 3. Disconexão VC • È garantida a entrega de pacotes em sequência. • Contudo , pacotes de VCs diferentes podem ser intercalados.
Exemplo de Circuito Virtual • Comutador 1 • 0 • 2 • Comutador 2 • 3 • 1 • 3 • 1 • Host D • 5 • 11 • 2 • 0 • 5 • 5 • Host A • 5 • 7 • Comutador 3 • 0 • 1 • 3 • Segmento de tabela de VC Com. 1 • Host B • Porta • Entrada • Nº VC • Entrada • Porta • Saída • Nº VC • Saída • 2 • 5 • 4 • 2 • 2 • 2 • 2 • 1 • 4 • 5 • 6 • 2 • 0 • 1 • 0 • 4 • 3 • 11 • 4 • Host C
Atraso de ponta-a-ponta de Comutação por Pacotes de Circuito Virtual Tv = V1 + V2 + A Neste caso, V1 = tempo de inic. de ligação, S, V2 = tempo de comutação de pacote de datagrama, Td, A = Tempo de reconhecimento Tv = S + Td + A = S+ (Np+N -1)(P/B) + NDp + A
Vantagens Comutação por Pacotes 1.Comutação por pacotes utiliza recursos mais eficientemente; 2.Tempo de iniciar e terminar ligações muito pequeno; 3.É mais flexível (i.e. não se preocupa muito com o que é enviou, desde que seja possível colocar em formato pacote); 4. Emissor e receptor podem transmitir a taxas diferentes; 5. Tipos diferentes de computadores podem comunicar em rede de comutação por pacotes; 6. Redes de comutação por pacotes não recusam uma conexão; no máximo, atrasam a ligação até que o pacote possa ser transmitido; 7. Comutação por pacotes consegue gerir tráfego impulsivo (bursty). É mais usado nas redes de computadores;
Desvantagens de Comutação por Pacotes 1. Nenhuma garantia nos atrasos; 2. Algoritmos são mais complexos; 3. Demasiados pacotes poderão conduzir a uma congestão da rede comutada por pacotes: pacotes que não são guardados ou entregues podem ser descartados; 4. Pacotes podem chegar a tempos diferentes e numa ordem diferente de aquela em que foram enviados: problemático para uma conversa telefónica.
Estrutura Comutador ATM Tecido Comutação Comutadores ATM são elementos de rede que apoiam o controle de conexão, transporte de célula, e administração das funções das redes ATM.
Comutadores Crossbar 1. Para Crossbar NxN, tem 2N barramentos, N2cruzamentos, que estão On ou Off; 2. Um buffer em cada cruzamento; 3. De acordo com árbitro, entre N buffers, um buffer será escolhido em cada fatia de tempo; 4. Estrutura simples e não-bloqueante; 5. Precisa de mecanismo arbitragem complexa; 6. Buffers não são compartilhados; 7. No max. N de N2 são usados. • ENTRADAS • SAÍDAS
Comutadores Knockout • N barramentos separados para cada par E/S. • Duas possibilidades: 1. Celulas múltiplas vão para mesma porta de saída; 2. Uma celula é multicast a várias portas de saída. • A memória tem que funcionar N vezes a taxa de entrada que é impossível para comutadores grandes. Assim um concentrador e buffers são necessários para reduzir a exigência de veloc. De memoria. • Concentrador selecciona L (N) • para buffer. Todas as celulas L • seleccionados entram no filtro de endereços. Filtro de endereços os distribui uniformemente por buffres de saída que utilizando um testemunho para manter registro de qual buffer vai a seguir. 1 2 3 4 Concentrador Retry or Discard • N • L Filteros Endereços Buffers • 1 2 3 4
Elemento de Comutação (SE) • 2x 2 elementos de comutação; • Regra de encaminhamento: se o bit da porta de saída for 0, envie célula a saída superior, senão saída inferior; Se ambas as células vão para mesma saída, ou põe uma em buffer ou descarta uma; • Utilizando este SE simples, podemos construir tecidos complicados.
Banyan Switches • Uma família de comutadores auto-encaminhantes, informação de routing contida no cabeçalho de célula,; • Estrutura paralela, podem ser processadas várias células em caminhos diferentes simultaneamente; • Mais adequado para construir grandes comutadores; • Dois grandes problemas. • 0 • 1 • 2 • 3 • 4 • 5 • 6 • 7 • 000 • 001 • 010 • 011 • 100 • 101 • 110 • 111 • SE • fase 2 fase 1 fase 0
Banyan Switch Bloqueado Internamente Problema 1: Bloqueado internamente, até mesmo as saídas estão disponíveis. Soluções: 1. Usar M xM (M>2) SEs (Clos); 2. Utilizar buffers dentro de cada SE (WUGS-20); 3. Usar Rede de Distribuição para distribuir células de entrada tão uniformemente quanto possível. • 0 • 1 • 2 • 3 • 4 • 5 • 6 • 7 • 000 • 001 • 010 • 011 • 100 • 101 • 110 • 111 • fase 2 fase 1 fase 0
Banyan Switches saída Bloqueada Problem2: Saída Bloqueada. Duas ou mais células apontam à mesma linha de saída. Solução: Usar Redes Batcher Banyan Switching. • 0 • 1 • 2 • 3 • 4 • 5 • 6 • 7 • 000 • 001 • 010 • 011 • 100 • 101 • 110 • 111 • organize 2 fase 1 fase 0
Comutadores com Entrada Buffered Células destinadas a saídas inactivas não podem ser servidas por causa de Bloqueamento Head-Of-Line(HOL) . • t4 t3 t2 t1 t0 • 0 • 1 • 2 • 3 • 0 • 1 • 2 • 3 • 3 2 • 0 • SF • 0 2 • 1 • AE