REDES DE COMPUTADORES II Máscara de Rede Um termo que você encontrará com facilidade ao configurar redes baseadas no protocolo TCP/IP é a mascara de rede. A máscara é formada por 32 bits no mesmo formato que o endereçamento IP e cada bit 1 da máscara informa a parte do endereço IP que é usada para o endereçamento da rede e cada bit 0 informa a parte do endereço IP que é usada para ao endereçamento das máquinas. Dessa forma, as máscaras padrões são: Classe A: 255.0.0.0 Classe B: 255.255.0.0 Classe C: 255.255.255.0 REDES DE COMPUTADORES II Máscara de Rede A máscara é usada fora de seus valores padrão quando há necessidade de segmentação da rede. Por exemplo, um endereço IP classe C 200.123.123.0 e pretendemos usar esse endereço para distribuí-lo em quatro redes: uma rede local e três redes situadas em outros locais, sendo a nossa necessidade a seguinte: Rede local: 31 endereços IP de 200.123.123.1 a 200.123.123.31, máscara 255.255.255.224. Rede 1: 32 endereços IP de 200.123.123.32 a 200.123.123.63, máscara 255.255.255.224. REDES DE COMPUTADORES II Máscara de Rede Rede 2: 64 endereços IP de 200.123.123.64 a 200.123.123.127, máscara 255.255.255.192. Rede 3: 127 endereços IP de 200.123.123.128 a 200.123.123.254, máscara 255.255.255.128. O valor da máscara é a diferença entre 256 e o número de IPs disponíveis na sub-rede em questão. Nessa conta você deve levar em consideração os endereços 0 e 255, apesar de eles não poderem ser usados para o endereçamento de máquinas. REDES DE COMPUTADORES II Máscara de Rede O protocolo TCP/IP é roteável, isto é, ele foi criado pensando-se na interligação de diversas redes, culminando na rede mundial que hoje conhecemos por internet. Por isso, ele utiliza um esquema de endereçamento lógico chamado de endereçamento IP. Esse endereço permite identificar o dispositivo e a rede na qual ele pertence. REDES DE COMPUTADORES II Máscara de Rede Neste caso, configuramos os roteadores com uma máscara fora do padrão, para que ele não precise enviar pacotes desnecessariamente para as redes que não a de destino do pacote. Por exemplo, na figura anterior um pacote destinado ao endereço 200.123.123.200 será recusado pelos roteadores 2 e 3, mas aceito pelo roteador 4,que irá transmiti-lo para a rede 3. Se a máscara de rede não fosse usada, os roteadores 2 e 3 enviariam esse pacote desnecessariamente para as redes 1 e 2, congestionando essas redes sem necessidade, já que o destino encontra-se na rede 3. REDES DE COMPUTADORES II ARP (Address Resolution Protocol) Como acabamos de ver, as redes baseadas no protocolo TCP/IP baseiam-se inteiramente em um endereço virtual, chamado endereçamento IP. Acontece que as placas de rede das máquinas conectadas á rede operam com esquema de endereçamento MAC. O protocolo ARP é responsável por fazer a conversão entre os IPs e os endereços MAC de uma rede. Em uma rede grande, os pacotes TCP/IP são encaminhados até a rede de destino através dos roteadores. Ao chegar na rede de destino, o protocolo ARP entra em ação para detectar o endereço da placa de rede para a qual o pacote deve ser entregue, já que no pacote há somente o endereço IP de destino e não o endereço da placa de rede. REDES DE COMPUTADORES II ARP (Address Resolution Protocol) O ARP funciona mandando primeiramente uma mensagem de broadcast para a rede perguntando, a todas as máquinas, qual responde pelo endereço IP para o qual pretende-se transmitir um pacote. Então, a máquina que corresponde a tal endereço responde, identificando-se e informando o seu endereço MAC para que a transmissão de dados entre essas máquinas possa ser estabelecida. REDES DE COMPUTADORES II ARP (Address Resolution Protocol) O ARP funciona mandando primeiramente uma mensagem de broadcast para a rede perguntando, a todas as máquinas, qual responde pelo endereço IP para o qual pretende-se transmitir um pacote. Então, a máquina que corresponde a tal endereço responde, identificando-se e informando o seu endereço MAC para que a transmissão de dados entre essas máquinas possa ser estabelecida. REDES DE COMPUTADORES II ARP (Address Resolution Protocol) Para não ocupar a rede muitas vezes, já que, para saber quem é responsável por um endereço IP o ARP tem de enviar uma mensagem para todas as máquinas, o dispositivo transmissor armazena os endereços IP recentemente acessados e seus endereços MAC correspondentes em uma tabela na memória; assim ele não precisará fazer um broadcast se precisar acessar um endereço IP já conhecido. REDES DE COMPUTADORES II O protocolo IP O protocolo IP é um protocolo não orientado á conexão, isto é, ele não verifica se o datagrama chegou ou não ao destino. Isso é feito pelo protocolo TCP, que pega os datagramas que estão chegando e os coloca em ordem, pedindo uma retransmissão dos datagramas que estão faltando. REDES DE COMPUTADORES II O protocolo IP Um datagrama IP consiste em uma parte de cabeçalho e uma parte de texto. O cabeçalho tem uma parte fixa de 20 bytes e uma parte opcional de tamanho variável. Ele é transmitido em uma ordem big endian: da esquerda para a direita, com o bit de mais alta ordem do campo Version aparecendo primeiro. Nas maquinas little endian, é necessária a conversao de software na transmissão e na recepção. REDES DE COMPUTADORES II O protocolo IP O campo Version controla a versão do protocolo à qual o datagrama pertence. Incluindo-se a versão em cada datagrama, é possível verificar a transição entre as versões, o que pode levar meses ou até mesmo anos, com algumas máquinas executando a versão antiga e outras executando a nova versão. Atualmente, está ocorrendo uma transição entre o IPv4 e o IPv6, que já acontece há anos e nem sequer está próxima de terminar. Algumas pessoas pensam até que ela nunca acontecerá . A propósito da numeração, o IPv5 foi um protocolo de fluxo em tempo real experimental, e nunca foi amplamente utilizado. REDES DE COMPUTADORES II O protocolo IP Como o tamanho do cabeçalho não é constante, existe um campo no cabeçalho, IHL, que informa seu tamanho em palavras de 32 bits. O valor mínimo é 5, quando não há nenhuma opção presente. O valor máximo desse campo de 4 bits é 15, o que limita o cabeçalho a 60 bytes e o campo Options a 40 bytes. Para algumas opções, como a que registra a rota percorrida pelo pacote, 40 bytes é muito pouco, o que torna a opção inútil. REDES DE COMPUTADORES II O protocolo IP Como o tamanho do cabeçalho não é constante, existe um campo no cabeçalho, IHL, que informa seu tamanho em palavras de 32 bits. O valor mínimo é 5, quando não há nenhuma opção presente. O valor máximo desse campo de 4 bits é 15, o que limita o cabeçalho a 60 bytes e o campo Options a 40 bytes. Para algumas opções, como a que registra a rota percorrida pelo pacote, 40 bytes é muito pouco, o que torna a opção inútil. REDES DE COMPUTADORES II O protocolo IP O campo Type of service é um dos poucos campos que tiveram seu significado (ligeiramente) modificado ao longo dos anos. Ele foi e ainda é destinado a distinguir entre diferentes classes de serviço. São possíveis várias combinações de confiabilidade e velocidade. Em se tratando de voz digitalizada, a entrega rápida vence a entrega segura. Para a transferência de arquivos, uma transmissão sem erros é mais importante do que uma transmissão rápida. REDES DE COMPUTADORES II O protocolo IP O campo Total length inclui tudo o que há no datagrama — cabeçalho e dados. O tamanho máximo é de 65.535 bytes. Atualmente, esse limite superior é tolerável, mas com as futuras redes de gigabits serão necessários datagramas maiores. O campo Identification é necessário para permitir que o host de destino determine a qual datagrama pertence um fragmento recém-chegado. Todos os fragmentos de um datagrama contêm o mesmo valor de Identification. REDES DE COMPUTADORES II O protocolo IP Em seguida, há um bit não utilizado e dois campos de 1 bit. DF significa Don’t Fragment (não fragmentar). Trata-se de uma ordem para os roteadores não fragmentarem o datagrama, porque a máquina de destino é incapaz de juntar os fragmentos novamente. Todas as máquinas são obrigadas a aceitar fragmentos de 576 bytes ou menos. MF significa More Fragments (mais fragmentos). Todos os fragmentos, exceto o último, têm esse conjunto de bits, necessário para se saber quando chegaram todos os fragmentos de um datagrama. REDES DE COMPUTADORES II O protocolo IP O campo Fragment offset informa a que ponto do datagrama atual o fragmento pertence. Todos os fragmentos de um datagrama, com exceção do último, devem ser múltiplos de 8 bytes, a unidade elementar de fragmento. Como são fornecidos 13 bits, existem no máximo 8192 fragmentos por datagrama, resultando em um tamanho máximo de datagrama igual a 65.536 bytes, um a mais que o campo Total length. REDES DE COMPUTADORES II O protocolo IP O campo Time to live é um contador usado para limitar a vida útil dos pacotes. Esse campo conta o tempo em segundos, permitindo uma vida útil máxima de 255 s. Esse contador deve ser decrementado a cada hop e supõem-se que ele seja decrementado diversas vezes quando estiver enfileirado durante um longo tempo em um roteador. Na prática, ele simplesmente conta os hops. Quando o contador chega a zero, o pacote é descartado e um pacote de advertência é enviado ao host de origem. Esse recurso evita que os datagramas fiquem vagando indefinidamente, algo que aconteceria se as tabelas de roteamento fossem danificadas. REDES DE COMPUTADORES II O protocolo IP O campo Header checksum confere apenas o cabeçalho. Esse total de verificação é útil para a detecção de erros gerados por palavras de memória incorretas em um roteador. Observe que Header checksum deve ser recontado a cada hop, porque pelo um campo sempre se altera (o campo Time to live), mas existem artifícios que podem ser usados para acelerar o cálculo. REDES DE COMPUTADORES II O protocolo IP Os campos Source address e Destination address indicam o número da rede e o número do host. O campo Options foi projetado para permitir que versões posteriores do protocolo incluam informações inexistentes no projeto original, possibilitando a experimentação de novas idéias e evitando a alocação de bits de cabeçalho para informações raramente necessárias. Existem opções de tamanhos variáveis. Cada uma começa com um código de um byte identificando a opção. O campo Options é preenchido até alcançar um múltiplo de quatro bytes. REDES DE COMPUTADORES II O protocolo IP