MAC • Camada de Enlace dividida em: Controle de acesso ao meio Marcos Augusto Menezes Vieira – MAC - Medium Access Control na camada inferior – LLC - Link Logical Control com funções de controle lógico do enlace Controle de acesso ao meio MAC – Medium Access Control • Coordenação do acesso ao meio • Sub-camada da camada de enlace • Meio compartilhado em redes locais • 1973 Robert Metcalfe tese • 1976 XEROX, DEC e Intel – Ethernet • Acesso de vários terminais (ou estações) a um mesmo canal • Problema: – Como alocar um único canal difusão entre vários usuários? Tipos de transmissão • Unicast: um envia para um • Broadcast: um envia para todos • Multicast: um envia para vários • GM automatizou a sua linha de produção – token-bus • IBM adota padrão de rede – token-ring Alocação estática e dinâmica • Estático – Simples – Ineficiente • Dinâmico • Em geral: unicast e broadcast somente • Custo de broadcast = custo de unicast! – Meio compartilhado – Endereço de broadcast: todas as estações respondem a ele – Meio compartilhado – Complexo – Potencialmente mais eficiente Alocação dinâmica de canal Premissas Alocação dinâmica de canal Premissas 1. Estações: 2. Único canal de comunicação: – Existem n estações independentes que geram quadros a serem transmitidos – A estação fica bloqueada até o quadro ser totalmente transmitido – Todas estações compartilham um único canal de comunicação para transmissão e recepção – Do ponto de vista de hardware, as estações são equivalentes – Do ponto de vista de software, as estações podem ter prioridades – Aspecto fundamental do estudo 7 8 Alocação dinâmica de canal Premissas Alocação dinâmica de canal Premissas 3. Colisões: 4. Política de transmissão de quadros ao longo do tempo: – A transmissão “simultânea” de dois ou mais quadros por estações diferentes causa uma colisão – Estações são capazes de detectar colisões – Quadros envolvidos em colisões devem ser transmitidos posteriormente – Qualquer instante (continuous time) – Instantes pré-determinados (slotted time) 9 10 Alocação dinâmica de canal Premissas Colisão 5. Detecção de portadora para transmissão de quadro: • Meio compartilhado Colisão • Ciclo: – Em t0 uma estação termina sua transmissão – A estação A transmite seu quadro na rede – Em t0 + (tp - ∆tp) a estação B inicia sua transmissão – Haverá colisão do quadro A e B – B envia sinal de colisão para a rede – A estação A detectará colisão após um tempo (2 tp - ∆tp) – Com detecção (carrier sense) – Sem detecção (no carrier sense) 11 ALOHA puro ALOHA puro In pure ALOHA, frames are transmitted at completely arbitrary times. ALOHA puro e com slots Vulnerable period for the shaded frame. ALOHA com slots • Muitas colisões: não verifica se o meio está livre • Slotted ALOHA – Tempo dividido em unidades – Transmissão ocorre somente no início de uma unidade – Menor vulnerabilidade dos quadros Protocolo CSMA 1-persistent Princípio Protocolo CSMA 1-persistent • É chamado 1-persistent porque sempre transmite ao verificar que o canal está desocupado, ou seja, • Uma estação ao desejar transmitir escuta o canal • Se estiver ocupado espera até ficar livre – Probabilidade = 1 de transmitir, se canal está livre • Transmite o quadro quando o canal fica livre • Se ocorre uma colisão, a estação espera um tempo aleatório e começa o processo todo novamente 17 • O tempo de propagação tem um efeito importante no desempenho do protocolo 18 Protocolo CSMA não persistente Protocolo CSMA p-persistent • Similar ao 1-persistent • É usado em canais com slots (períodos de tempo) • Diferença: • Princípio do p-persistent: – Ao verificar que o canal está ocupado espera um período de tempo aleatório e começa o processo novamente – Método menos guloso que tem um desempenho melhor que o 1-persistent – – – – – Estação escuta o canal Se livre, transmite com probabilidade p Senão, espera até o próximo slot (q = 1 – p) Repete o processo novamente no próximo slot Se ocorre colisão, a estação espera um tempo aleatório e repete o processo 19 Desempenho 20 CSMA • CSMA – Carrier Sense Multiple Access • Estações escutam o meio por curto período antes de transmitir, procurando identificar transmissões em curso • Problema: colisões • Solução: políticas de atraso da transmissão (back-off) Comparison of the channel utilization versus load for various random access protocols. CSMA/CD e CSMA/CA Protocolo CSMA/CD • CSMA/CA: collision avoidance • CD — Collision Detection – Receptor identifica colisão pelo checksum • CSMA/CD: collision detection – Transmissor identifica colisão – Transmissão de código de colisão (jamming) • Melhoria introduzida: – Uma estação ao detectar colisão pára de transmitir imediatamente o quadro – Economiza tempo e BW • CSMA/CD consiste em alternar períodos de contenção e transmissão • Foi padronizado como IEEE 802.3 (Ethernet) 24 Protocolo CSMA/CD • Questão importante: quanto tempo uma estação deve esperar para saber se houve uma colisão ou não? – 2x o tempo de propagação no cabo de ponta-aponta • Conclusão importante: – Uma colisão não ocorre após esse período de tempo • Colisões afetam o desempenho do sistema principalmente em cabos longos e quadros curtos 26 Ethernet IEEE 802.3 Evolução da Ethernet • Baseado no padrão Ethernet de 10 Mbps proposto pela Xerox, DEC e Intel This diagram was hand drawn by Robert M. Metcalfe and photographed by Dave R. Boggs in 1976 to produce a 35mm slide used to present Ethernet to the National Computer Conference in June of that year. On the drawing are the original terms for describing Ethernet. Further information about the origins of Ethernet can be found in the reprinted from "Communications of the ACM" of Ethernet: Distributed Packet Switching for Local Computer Networks by Robert M. Metcalfe and David R. Boggs. Source: http://grouper.ieee.org/groups/802/3/ethernet_diag.html http://www.acm.org/classics/apr96 29 Padrão IEEE Ano 802.3 1983 10 Mbps – cabo coaxial Descrição 802.3i 1990 10 Mbps – par trançado 802.3j 1993 10 Mbps – fibra ótica 802.3u 1995 100 Mbps – Fast Ethernet 802.3ab 1999 1 Gbps – par trançado 802.3an 2006 10 Gbps – par trançado Ethernet – estrutura de quadro Ethernet - cabeamento • Endereço MAC: – 3 primeiros bytes identificam o fabricante – 3 últimos bytes identificam o modelo e “número de série” da placa Frame formats. (a) DIX Ethernet, (b) IEEE 802.3. (a) 10Base5, (b) 10Base2, (c) 10Base-T. Protocolo IEEE 802.3 Protocolo IEEE 802.3 • Preâmbulo (10101010) usado para sincronização entre RX e TX • Pad: • Início de quadro: 10101011 • Endereço: • • • • – Campo de dados deve ser ≥ 46 – Caso contrário, pad = 46 – esse valor – Prevenir que uma estação termine de transmitir um quadro antes do primeiro bit chegar no extremo do cabo e ocorra uma colisão bit 47 = 0: para outra estação bit 47 = 1: multicast todos bits = 1: broadcast bit 46 = endereço local ou global 33 Padding e colisões 34 Protocolo IEEE 802.3 • Por que 64 bytes? • Para uma rede a – – – – – 10 Mbps, comprimento máximo de 2500 metros, e quatro repetidores Tempo mínimo de transmissão = 51 µs Tamanho mínimo do quadro = 64 bytes Collision detection can take as long as 2τ . 36 Protocolo IEEE 802.3: Algoritmo de espera Protocolo IEEE 802.3: Algoritmo de espera • Ao ocorrer uma colisão, as estações devem esperar (sortear) um intervalo de tempo de espera • Slots de espera: – Número inteiro no intervalo [0 .. 2c – 1], onde c é o número de colisões consecutivas – Para c de 10 a 16 o no máximo de slots é 1023 – Valor máximo de c é 16, quando a tentativa de transmitir é encerrada • Modelo: – Tempo é dividido em intervalos (slots) = 51.2 µs • Algoritmo (binary exponential backoff) 37 38 Eficiência da Ethernet Efficiency of Ethernet at 10 Mbps with 512-bit slot times. Hub • Primeira geração - apareceu por volta de 1984 e era utilizada para conectar vários segmentos de rede local. • Segunda geração - com gerenciamento local e remoto dos segmentos de rede a ele conectados, permiti a interligação de arquiteturas diferentes de redes locais, como Ethernet e Token Ring. • Terceira geração - são os Hubs “inteligentes”. • Quarta geração - de Hubs é a dos chamados switch-hubs. Enviam os dados somente à porta correta 42 LANs 802.3 comutadas • Solução quando o tráfego cresce a um ponto que a rede satura • Comutador (switch) típico: – – – – Backplane de alta velocidade (> 1 Gbps) 4 a 32 cartões de linha Cada cartão com 1 a 8 conectores Conexão 10Base-T 44 Switch Switch • Funcionamento: – Para cada porta de entrada é mantido um buffer – Os quadros recebidos armazenados em RAM a medida que chegam – Após algum tempo na LAN monta a sua tabela de quadros na memória RAM – Verifica se o quadro recebido pertence àquela porta ou se destina a outra porta – Se pertence, o quadro é enviado diretamente para o destino – Se não pertence, o quadro é transmitido através de seu barramento interno para a porta correta. 45 46 Switch - aprendizado Switch - algoritmo • Um switch possui uma tabela de switch • Entrada na tabela do switch: – (endereço MAC, interface, marca de tempo) – Entradas expiradas na tabela são descartadas (TTL pode ser 60 min) • Switch aprende quais hospedeiros podem ser alcançados através de suas interfaces – Quando recebe um quadro, o switch “aprende” a localização do transmissor: segmento da LAN que chega – Registra o par transmissor/localização na tabela Quando um switch recebe um quadro: indexa a tabela do switch usando end. MAC de destino if entrada for encontrada para o destino then{ if dest. no segmento deste quadro chegou then descarta o quadro else encaminha o quadro na interface indicada } else flood Switches e roteadores • Ambos são dispositivos store-and-forward • Roteadores: dispositivos de camada de rede (examinam cabeçalhos da camada de rede) • Switches são dispositivos da camada de enlace • Roteadores mantêm tabelas de roteamento, implementam algoritmos de roteamento • Switches mantêm tabelas de switch, implementam filtragem, algoritmos de aprendizagem Gigabit Ethernet Gigabit Ethernet – 25m! • 25m = Distância que permite detecção de erro para transmissão de 64 bytes a 1Gbps • Padrão: aumento para 200m – Padding para 512B: eficiência de 9%! – Envio em rajadas • Na prática: conexão a switches – Não ocorre colisão – Alcance limitado pela atenuação Porque somente 25m de alcance? Características do padrão IEEE 802.3 • Possui um comportamento não determinístico o que faz com que o pior caso não seja conhecido a priori Na prática depende de como o padrão é implementado • Quadros não possuem prioridades Token ring • Não é adequado para aplicações de tempo real como o padrão foi proposto Na prática depende de como o padrão é implementado 53 Token ring • • • • 4-16 Mbps Desenvolvida pela IBM Suporta até 260 estações Desenhada para redes com tráfego frequente de dados Token ring • Regeneração do token: estação mestre • Número de tokens variável em redes mais rápidas Passagem de fichas atualmente • Redes de computadores – pouco uso – Domínio da Ethernet e do WiFi • Redes de automação industrial Topologias • Fim-a-fim: conexão um sensor com um controlador IEEE 802.11 Redes sem fio • Infraestruturada: – Backbone fixo, com fio – Dispositivos móveis comunicam diretamente com os pontos de acesso (AP) – Adequado para locais onde APs podem ser instalados Redes sem fio • Sem infraestrutura (ad hoc): AP: Access Point AP AP – Backbone sem fio – Dispositivos móveis comunicam diretamente entre si: AP Infraestruturada • Elementos são móveis e servem como roteadores – Fácil instalação Ad hoc 67 Pilha de protocolos 802.11 68 Wireless LANs A wireless LAN. (a) A transmitting. (b) B transmitting. IEEE 802.11 Problema da estação escondida • B transmite para A • C deseja transmitir para A • C não escuta transmissão de B Colisão B A C 71 IEEE 802.11 Problema da estação exposta • • • • A transmite para B C deseja transmitir para D C escuta transmissão de A C espera B A C D 72 MACA – RTS/CTS The MACA protocol. (a) A sending an RTS to B. (b) B responding with a CTS to A. 802.11 – Espaço entre quadros 802.11 - modos • DCF – contenção entre estações • PCF – sem contenção – Coordenador aloca transmissões – Beacon • Também serve para transmissão do SSID 802.11 - quadro IEEE 802.16 802.16 802.16 Bluetooth (IEEE 802.15.3) IEEE 802.15 e Bluetooth • Padrão Bluetooth: – Projetado para substituir cabos usados para conectar diferentes dispositivos como telefone, computador, câmera, impressora, máquinas de café, etc – Propõe uma solução (pilha) completa, i.e., da camada física à camada de aplicação – Bluetooth é uma rede ad hoc • Padrão IEEE 802.15: – Similar ao Bluetooth, exceto que trata apenas das camadas física e MAC 87 Piconet Bluetooth Topologia de rede • Exemplo de uma piconet onde os círculos M (master), S (slave), P (park) e Sb (standby) representam um rádio Bluetooth • Rádios estão conectados entre si numa piconet Piconet Scatternet • Piconet formada por um rádio mestre e até sete escravos 89 90 Formação de uma rede Formação de uma rede • Rádios Bluetooth são simétricos • Um dispositivo só pode ser o mestre em uma dada piconet – Qualquer rádio Bluetooth pode ser um mestre ou um escravo • Rádio Bluetooth precisa entender dois parâmetros para formar uma piconet: • A configuração da Piconet é determinada no momento de sua formação – Tipicamente, o rádio que estabelece a conexão é o mestre – A função de troca “mestre/escravo” permite que os papéis sejam trocados – “Padrão de pulo” (hopping pattern) do rádio que se deseja conectar – Fase dentro desse padrão 91 92 Formação de uma rede Formação de uma rede • Rádio Bluetooth possui um identificador global único que é usado para criar um padrão de pulo • Uma estação é mestre somente durante uma conexão • Ao se formar uma piconet, o rádio mestre – compartilha o identificador global com outros rádios, que passam a ter o papel de escravos – provê a todos os rádios o padrão correto de pulo • Mecanismos de gerenciamento de enlace permitem a unidades de rádio usar TDM e agir como pontes entre piconets, formando uma scatternet 93 94 Bluetooth – pilha de protocolos Formação de uma rede • Também existem mecanismos que permitem às estações (mestre e escravo) requisitarem e aceitarem novas conexões • Objetivo é permitir a criação de múltiplos “cabos virtuais” ao invés de uma substituição de um único cabo 95 Bluetooth - perfil Quadros do bluetooth Bridge Equipamentos: bridges, Switches... Bridge – diferentes quadros Ligação de redes com bridges Os equipamentos de uma rede...