Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Aula 5 - Modelos de comunicação em redes: RM-OSI e TCP/IP
	
	
	Apresentação
	Nesta aula, você vai aprender um assunto muito importante e que vai até lhe ajudar no próprio processo de aprendizagem sobre redes. É que estudaremos o modelo de referência OSI, e, como você verá, ele divide as funções de uma rede em grupos, os quais são chamados de camadas. Sempre que se comenta sobre algum protocolo de rede ou sobre algum equipamento é comum se fazer referência a qual camada do modelo OSI ele trabalha. Desse modo, já se sabe um pouco sobre as funções que ele desempenha. Essa estruturação em camadas facilita bastante o processo de entendimento do funcionamento de uma rede.
		
	Objetivos
	 
	Ao final desta aula, você será capaz de: 
entender o que é o modelo de referência OSI;
conhecer quais as funções específicas de cada camada;
identificar em qual camada do modelo OSI cada equipamento de rede trabalha;
entender o modelo TCP/IP, saber quais protocolos ele utiliza, e como esse modelo se relaciona com o modelo OSI.
	 
	Visão da estrutura em camadas do RM-OSI
	Se você der uma olhada rápida na Aula 1, na seção histórico das redes, verá que falamos do surgimento em 1984 do modelo de referência OSI. Mas, o que seria esse modelo? Esse modelo foi uma proposta da ISO (International Standard Organization) para facilitar o desenvolvimento de padrões para a interconexão de sistemas. O modelo é chamado de Modelo de Referência OSI (de Open Systems Interconection), pois ele trata da interconexão de sistemas abertos – no sentido de que não impõe a utilização de nenhuma implementação ou tecnologia específica. Chamaremos de agora em diante apenas de OSI, para simplificar.
O modelo OSI divide todas as tarefas relacionadas às redes em sete camadas, conforme vemos no Quadro 1 a seguir. Cada camada é responsável por um subconjunto das funções que devem ser realizadas por uma rede. Para isso, cada camada tem seus próprios protocolos e manipula uma unidade de dados que é chamada de Unit Protocol Data (Unidade de Dados do Protocolo - PDU). Entenda a PDU como o conjunto de informações, ou o pacote, gerado por uma camada. 
	
No 
	Camada
	PDU
	7
	Aplicação
	Mensagem
	6
	Apresentação
	Mensagem
	5
	Sessão
	Mensagem
	4
	Transporte
	Segmento
	3
	Rede
	Pacote
	2
	Enlace
	Quadro
	1
	Físico
	Bit
Quadro 1 - Camadas do modelo de referência OSI com suas respectivas PDUs1
1 Protocolo Data Unit – Unidade de Dados do Protocolo. 
No transmissor, as informações descem da camada 7 até a camada 1 e no receptor elas são recebidas pela camada 1 e sobem até a camada 7. À medida que os dados descem nas camadas, a camada inferior trata os dados recebidos da camada superior como uma caixa preta, colocando-os no seu campo de dados. Desse modo, a PDU é formada por um campo de dados que corresponde aos dados recebidos da camada superior, acrescido de alguns campos adicionais que são inseridos pela própria camada para que possa realizar suas tarefas. Esses campos adicionais são chamados de cabeçalhos. Na máquina receptora, à medida que as informações sobem nas camadas, cada camada lê as informações do cabeçalho da sua PDU (gerada pela mesma camada na origem), processa essas informações, e as retira do pacote passando apenas o conteúdo da parte de dados para a camada superior. O conteúdo desse campo de dados é, evidentemente, a PDU da camada superior. Explicaremos quais informações são exatamente esses cabeçalhos quando descrevermos cada camada individualmente.
Na Figura 1, podem-se ver as PDUs ao lado de cada camada. As PDUs de aplicação e apresentação estão delimitadas por uma linha oval. Observe que os cabeçalhos adicionados por cada camada são representados por um retângulo cinza dentro da PDU com a letra inicial da camada. A parte branca (sem nenhuma cor) de cada PDU corresponde ao seu campo de dados. Veja que eles são exatamente a PDU da camada superior. Isso mostra que quando uma PDU é passada para uma camada inferior, seu conteúdo é tratado apenas como uma sequência de bytes a serem transferidos por essa camada, sem que ela se preocupe com seu significado.
	
	Figura 1 – Transmissão de dados no modelo OSI 
Fonte: autoria própria
	É importante perceber que o modelo OSI propriamente dito não é uma arquitetura de rede, já que não especifica os serviços e os protocolos exatos que devem ser usados em cada camada. Ele apenas informa o que cada camada deve fazer e não como deve fazer.
Ter uma arquitetura baseada em camadas é útil para entendermos sistemas complexos, pois ela provê modularidade, tornando muito mais fácil resolver problemas e modificar a forma como os serviços são implementados por cada camada. Modificações podem ser feitas em uma camada, mas ela deve continuar fornecendo o mesmo serviço para a camada superior e usando os mesmos serviços que são oferecidos pela camada inferior. O interessante de tudo isso é que o restante do sistema permanece inalterado, nem mesmo precisa tomar conhecimento das mudanças. 
Vamos agora dar uma olhada em quais são as funções de cada uma das camadas do modelo OSI. Mas, antes é importante você saber que algumas camadas são relacionadas ao hardware (as camadas 1 e 2) e outras a software (3 a 7). Naturalmente, os equipamentos de rede implementam uma ou mais dessas camadas. Fique sabendo que quando se diz que um dado equipamento implementa a camada X, na verdade, ele implementa as camadas de 1 a X. Costuma-se dizer que o equipamento “É” da camada X. Também é comum usar a palavra nível como sinônimo de camada, e usar o número da camada ao invés do seu nome. Desse modo, “camada 1”, “camada física”, ”nível 1” e ”nível físico” significam todos a mesma coisa.
		 
	Cada camada comunica-se com a camada equivalente (de mesmo nível) na máquina destino e as duas precisam falar o mesmo protocolo.
	 
	Camada física
	Essa é a camada mais baixa na hierarquia do modelo de referência OSI, conforme você pode ver na Figura 1. É aqui onde ocorre realmente todo o processo de transmissão de dados. Essa camada é a responsável por transformar os bits (0s e 1s) que representam as informações a serem transmitidas pelos meios de transmissão (cabos de par trançado, cabos coaxiais etc.) em forma de pulsos elétricos ou em forma de sinais de luz (caso das fibras ópticas). No receptor, a camada física desfaz o processo, ou seja, transforma esses sinais recebidos em bits novamente. Como foi mostrado no Quadro 1, a PDU da camada física é o bit, pois essa camada se preocupa apenas em transmitir os bits individualmente, sem se importar com o que eles significam em conjunto.
Como as principais funções da camada física, podemos citar: i) definir como os bits 0 e 1 serão representados no enlace durante a transmissão; ii) a quantidade de tempo dado em nano segundos que um bit deve durar; iii) especificar se a transmissão pode ocorrer nos dois sentidos, simultaneamente, conforme você aprendeu na Aula 2; iv) a quantidade de pinos dos conectores, e qual será a finalidade de cada pino etc.
Desse modo, como a camada física é responsável por essas questões, a especificação dos tipos de cabeamento e conectores que podem ser utilizados em uma dada rede é determinado por essa camada. Saiba que o esquema de codificação e decodificação dos bits, ou seja, a forma como os 0s e 1s são representados através dos sinais elétricos ou pulsos de luz, tem influência direta na taxa de transmissão da rede. Na próxima aula, quando estudarmos os padrões Ethernet, você verá que existem diferentes possíveis implementações de nível físico para essas redes, tanto para suportarem tipos de cabos diferentes quanto para oferecerem taxas de transmissão mais elevadas.
		 
	O repetidor é um equipamento da camada Física, pois ele apenas transmite bits. O mesmo se pode dizer do hub (até porque o hub é um repetidor multiporta).
	 
		
	Atividade 1
	 
	 
	 
	1. Pesquise sobre o padrão RS232 e descubra para que ele é utilizado.
	 
	2. O queé feito quando uma unidade de informação é mandada de uma camada para outra?
	 
	 
	Camada de enlace
	Você já sabe que uma rede consiste de algum mecanismo para permitir que diversas máquinas enviem informações umas para as outras, e que o nível físico é capaz de enviar bits através de um enlace. Lembre-se também de que os serviços de uma camada no modelo OSI são construídos utilizando os serviços oferecidos pela camada inferior. Portanto, a camada de enlace irá utilizar os serviços de transmissão de bits oferecidos pela camada física para fornecer seus próprios serviços. A camada de enlace, juntamente com a camada física, é responsável por permitir a troca de informações entre máquinas, de modo que elas duas juntas constituem uma rede.
Quais são as funções que você acha que uma rede deve realizar para permitir essa troca de informações? Pense um pouco e vamos então estudar quais são essas funções.
	Formação dos quadros (encapsulamento dos dados)
	Suponha que uma máquina A queira enviar a mensagem “Boa Noite” para uma máquina B. Será que basta enviar apenas os bits referentes a esse texto pelo cabo? Isso o nível físico seria capaz de fazer! Portanto, a resposta é não! Junto com a mensagem propriamente dita que desejamos enviar, no caso, “Boa Noite”, precisamos transmitir também informações adicionais que indicam quem está transmitindo e para quem a mensagem é destinada. Alem disso, podem ocorrer erros durante a transmissão dos bits pelo nível físico e precisamos detectar se isso aconteceu. Se considerarmos os bits a serem transmitidos como um grupo de bits, é possível inserir bits de redundância que permitem a detecção e eventual correção de erros. 
Dessa forma, as redes transmitem as suas informações em quadros, que são compostos de diversos campos. O quadro é o nome dado a PDU da camada de enlace, e o termo campo corresponde ao que chamamos de cabeçalhos, quando explicamos no Quadro 1. O número e o tipo desses campos são específicos para cada tecnologia de rede, mas tipicamente existe um campo de dados, que contém a mensagem que se deseja transmitir, e vários campos com informações para permitir que a camada de enlace realize suas funções, como campos de endereço e um campo para verificação de erros. 
Quando a camada de enlace recebe informações da camada de rede para serem transmitidas, essas informações podem ser colocadas em apenas um quadro ou serem divididas em vários quadros. A camada de enlace é que toma essa decisão e realiza a montagem dos quadros.
Existem redes que utilizam quadros de tamanho fixo, ou seja, todos os quadros transmitidos têm sempre o mesmo tamanho, e redes que usam quadros de tamanho variável, de modo que o tamanho de cada quadro vai depender da quantidade de informações a serem transmitidas. Observe que mesmo quando o tamanho é variável, normalmente existe um controle sobre o tamanho máximo e mínimo do quadro.
Os campos de endereço que citamos a pouco indicam que a camada de enlace precisa definir um endereço para cada máquina. Na verdade, como a camada de enlace é implementada quase na sua totalidade na placa de rede, o endereço de enlace é um endereço contido na placa de rede. Realmente, precisa ser assim, porque máquinas que pertencem a mais de uma rede precisam ter uma placa de rede (e um endereço) para cada rede. Cada tecnologia de rede utiliza seu próprio formato de endereço, mas lembre-se de que ele é apenas um identificador para cada placa de rede existente.
Você acha que o formato do quadro tem algum impacto na velocidade da rede? Tem sim! E claro que a taxa de transmissão em termos de bits por segundo não muda. Mas, o que realmente importa é quanto da taxa de transmissão de uma rede é utilizada para transmitir os dados dos usuários. Ter uma rede de 100Mbps significa que ela transmite 100.000.000 de bits por segundo. Mas, uma parte desses bits corresponde aos cabeçalhos dos quadros. Portanto, quanto maior o tamanho dos cabeçalhos menos banda de rede disponível sobra para os dados dos usuários. Fazendo uma conta simples, se a soma do tamanho dos campos de cabeçalhos para uma dada rede fosse 40 bytes, e o tamanho do campo de dados fosse também 40 bytes, a velocidade realmente disponível para o usuário seria reduzida pela metade. Para a rede de 100Mbps, essa velocidade seria de apenas de 50Mbps! E olha que estamos falando apenas dos cabeçalhos da camada de enlace, mas na verdade os cabeçalhos de todas as outras camadas também precisam entrar nessa conta. Por isso, é importante que o tamanho do campo de dados seja bem maior que o tamanho de todos os cabeçalhos somados.
	Controle de acesso ao meio
	Quando a placa de rede termina de montar um quadro, é natural pensarmos que ela vai enviar o quadro no meio de transmissão (cabo ou o ar). Isso está correto, mas será que ela o envia imediatamente após criá-lo? A resposta vai depender do tipo de rede, pois o enlace pode ser compartilhado por diversas outras máquinas. Desse modo, é necessário que existam regras que determinem o instante em que uma dada placa (ou seja, a camada de enlace) possa enviar um quadro no enlace. Sem essas regras, várias máquinas poderiam transmitir ao mesmo tempo e os sinais enviados por cada uma delas iria interferir nos demais, de modo que nenhuma das transmissões seria bem sucedida. Essas regras se chamam de Protocolo de Acesso ao Meio e cada tecnologia de rede possui o seu próprio protocolo.
Existem protocolos projetados especificamente para enlaces ponto a ponto e protocolos para enlaces multiponto. Pode acontecer, entretanto, de protocolos para enlaces multiponto acabarem sendo utilizados em enlaces ponto a ponto devido à introdução de switches na rede. Estudaremos alguns desses protocolos nas Aulas 6 e 7. Sobre os protocolos para enlaces multiponto, é importante observar que eles podem ser divididos em dois grupos: ordenados e baseados em contenção. 
Nos protocolos baseados em contenção, podem ocorrer colisões na rede e não há reserva do meio para nenhuma máquina. Assim sendo, não existe como garantir uma determinada banda de transmissão para nenhuma delas. Ou seja, não se pode determinar quantos quadros uma determinada máquina vai conseguir transmitir por segundo, pois o tempo decorrido entre o instante em que ela gera um quadro e o momento em que ela tem o direito de transmiti-lo, é imprevisível, e pode ser diferente a cada quadro gerado. 
Nos protocolos ordenados por outro lado, as colisões nunca ocorrem, porque existem esquemas que reservam a rede temporariamente para que apenas uma máquina transmita por vez. Essa reserva pode ser implementada de diversas formas. Por exemplo, pode ser através da utilização de uma máquina especial que fica perguntando a cada uma das outras máquinas se elas desejam transmitir (esquema chamado de pooling), ou através da passagem de uma permissão (token) entre as máquinas, de modo que quem tiver de posse do token em um dado instante tem o direito de transmitir (esquema chamado de passagem de permissão). Como existe reserva, é possível dar garantias a respeito do tempo decorrido entre a geração dos quadros e a sua transmissão. Em algumas redes, esse tempo é constante para todos os quadros, e para outras pode-se pelo menos prever o pior caso, ou seja, o tempo Máximo para se ganhar acesso ao meio. 
Essas questões referentes às garantias de tempo para se ter acesso ao meio são de fundamental importância para que a rede forneça um suporte adequado a aplicações que precisam transmitir dados a uma taxa constante, como é o caso da transmissão de voz e vídeo. 
		
	Atividade 2
	 
	 
	 
	1. Pesquise sobre o Protocolo ALOHA. Entenda seu funcionamento diga se ele é Ordenado ou Baseado em Contenção. 
<http://pt.wikilingue.com/es/ALOHAnet> (Site que contém bastante informação sobre o assunto, incluindo sua história)
	 
	2. Pesquise sobre o método de Pooling e procure identificar suas desvantagens. 
<http://www.tiosam.net/enciclopedia/?q=Modelo_OSI> (Nesse site, há informações sobre o assunto que lhe permitirão respondera questão).
	 
	 
	Controle de erros
	Quando explicamos a tarefa de criação dos quadros, dissemos que a camada de enlace insere um campo no quadro com bits de redundância, de modo que possa detectar se ocorreram erros durante a transmissão dos quadros pelo nível físico. Esse campo se chama genericamente de Frame Check Sequence (FCS), mas pode assumir outros nomes de acordo com o algoritmo utilizado, como é o caso das redes Ethernet, onde ele é chamado de CRC (Cyclic Redundancy Check – Checagem de Redundância Cíclica). 
O procedimento consiste em calcular um valor que depende dos bits do quadro e inserir esse valor no campo FCS. O cálculo normalmente é aplicado sobre o campo de dados e os campos de cabeçalhos. Quando uma máquina recebe o quadro, ela recalcula o valor considerando os mesmos campos utilizados para o cálculo pelo transmissor e compara o resultado obtido com o valor do campo FCS. Se forem iguais, não houve erro, se forem diferentes, algum erro aconteceu. Nesse caso, o quadro é descartado.
O tamanho do campo FCS está relacionado com a qualidade do método aplicado, ou seja, quanto mais bits são adicionados significa que mais bits com erro no quadro podem ser detectados. Lembre-se, entretanto, que quanto maior o tamanho total dos campos de cabeçalho, mas banda de rede é desperdiçada. Portanto, deve-se atingir um equilíbrio entre o número de bits do FCS e a qualidade da detecção de erros. Você verá na Aula 6 que as redes Ethernet usam um FCS de 32 bits. Também é possível corrigir os erros, mas como isso acaba sendo uma operação mais cara, normalmente, é realizada apenas a detecção.
Você acabou de ver que é possível saber se um quadro foi recebido com erro ou não. Isso permite a camada de enlace ter um serviço confiável ou não, ou seja, ela pode garantir que seus quadros são entregues ou apenas tentar entregá-los. Chamamos isso de serviço confiável e serviço não-confiável.
No serviço confiável, o receptor envia quadros especiais informando se o quadro foi recebido com sucesso ou não. Essas confirmações podem ser para cada quadro individualmente, ou feitas por grupos de quadros de cada vez, para reduzir o tráfego adicional gerado na rede.
O serviço não-confiável não informa se os quadros foram recebidos com sucesso ou com erros. O receptor apenas descarta os quadros com erro. Em princípio, você pode estar achando que uma rede assim não vai funcionar, mas lembre-se de que existem as camadas superiores e em alguma dessas camadas alguém vai se preocupar em tornar o serviço confiável, quando isso for necessário.
	 
		 
	Fique sabendo que as redes Ethernet utilizam o serviço não-confiável!
	 
		
	Atividade 3
	 
	 
	 
	Pesquise sobre a técnica de paridade e responda por que ela não é utilizada nas redes de computadores.
<http://www.inf.pucrs.br/~titocastro/redesi/assuntos/camada-enlace/enlace.html>.
	 
	 
	 
	Controle de fluxo
	Quando os quadros são recebidos pela camada de enlace, eles ficam armazenados até que sejam processados. Embora isso ocorra rapidamente, pode acontecer dos quadros estarem chegando pela rede mais rapidamente do que são processados. Isso implica na falta de espaço para armazená-los. Para evitar tal situação, o receptor pode informar ao transmissor para reduzir a frequência com que está enviando os quadros (ou até mesmo suspender temporariamente o envio). À medida que os quadros forem sendo processados, o receptor informa ao transmissor para aumentar a frequência de envio deles. 
Esse processo chama-se controle de fluxo e é de fundamental importância quando existem máquinas na rede com velocidades de transmissão diferentes, ou quando uma determinada máquina é o destino dos quadros enviados por diversas outras.
Embora seja muito importante, essa característica não é obrigatória para a camada de enlace. Existem redes que não a implementam. Nessas redes, quando não existe mais espaço de armazenamento no receptor, os quadros são descartados.
		 
	As bridges e os Switches são equipamentos da camada de enlace.
	 
	Camada de rede
	Como você acabou de estudar na sessão anterior, as camadas físicas e de enlace juntas formam uma rede, ou seja, permitem que diferentes máquinas se comuniquem. Naturalmente, diferentes empresas possuem cada uma sua própria rede, e é natural que diferentes empresas precisem que suas redes estejam interligadas, pois elas podem desejar trocar informações entre si. Como já mencionamos, a Internet nada mais é do que a interconexão de diversas redes. 
Você acha que podemos interligar as redes de duas empresas com um switch?
Não podemos, porque assim elas formariam uma única rede! Para não restar dúvidas disso, lembre-se de que, se qualquer máquina enviasse um quadro para o endereço de broadcast2, ele atingiria todas as máquinas das duas empresas!  
2 Processo pelo qual se transmite ou difunde determinada informação para todos os dispositivos da rede ao mesmo tempo. 
Precisamos de um equipamento que separe o tráfego das diferentes redes que conecta, deixando passar para outra rede apenas o que for realmente destinado a ela. Esse equipamento também deve permitir a interligação de redes com tecnologias (níveis físico e de enlace) diferentes. Além disso, se estendermos o problema para várias empresas, podemos ter várias redes ligadas umas às outras. Portanto, o equipamento precisa também ser capaz de encontrar o caminho até a rede de destino. 
Você já estudou na Aula 3 que o equipamento utilizado para fazer a ligação entre redes é o roteador. Agora, você entenderá que ele consegue realizar essa tarefa porque implementa a camada de rede. Desse modo, podemos dizer que as principais funções da camada de rede são:
interconectar redes diferentes (que podem ser da mesma tecnologia ou não);
localizar o caminho até uma determinada rede;
encaminhar os dados entre duas redes quaisquer.
Observe que o nível de enlace permite que duas máquinas se comuniquem desde que estejam ligadas ao mesmo enlace. O nível de rede deve permitir que as máquinas estejam separadas por diversas redes, de modo que precisa estabelecer um caminho através de diversos enlaces. Isso pode ser feito utilizando comutação de circuitos ou pacotes, como você já estudou na aula 4.
Deve estar claro para você que para que as máquinas de diversas redes possam se comunicar elas precisam “falar o mesmo protocolo” na camada de rede, incluindo aí os roteadores que interligam as redes. Dissemos que a camada de rede permite que redes de tecnologias diferentes (camadas física e enlace) se comuniquem. Mas, se as redes usarem tecnologias diferentes, como uma máquina vai dizer para quem ela quer enviar as informações, se ela não conhece nem o formato do endereço da rede de destino? A camada de rede define um novo tipo de endereço, que diferentemente do endereço da camada de enlace é um endereço lógico. Esse endereço também é associado a cada placa de rede, mas ele não o substitui. Assim, as máquinas possuem dois endereços (para cada placa), um da camada de enlace (o endereço MAC – Camada de Acesso ao Meio) e o endereço da camada de rede. Como todas as máquinas das diversas redes que desejam se comunicar usam o mesmo protocolo de rede, elas podem agora informar o endereço da máquina de destino usando o endereço da camada de rede. 
O usuário informa o endereço de rede da máquina com a qual quer se comunicar e existem protocolos que automaticamente traduzem o endereço de rede para o endereço de enlace da máquina de destino. Os pacotes (PDUs da camada de rede) são então enviados dentro da parte de dados do quadro de enlace. Caso a máquina de destino esteja em uma rede diferente da máquina de origem, o pacote é enviado para o roteador da rede de origem e será encaminhado de roteador em roteador até atingir a máquina de destino. Em cada roteador intermediário, a placa de rede extrai o pacote (PDU da camada de rede), analisa o endereço de rede do destino e calcula qual o próximo roteador no caminho. O pacote é então colocadonovamente em outro quadro da camada de enlace e encaminhado até o roteador escolhido. Observe que o quadro entra por uma interface de rede e sai por outra, que é a interface que conecta o roteador processando o quadro ao próximo roteador no caminho. Observe que a mesma PDU que foi gerada na camada de rede da origem chega até a camada de rede do destino. Ao longo do caminho, ela é transmitida dentro de quadros da camada de enlace que liga cada par de roteadores vizinhos.  Você vai estudar em detalhes como ocorre esse encaminhamento dos quadros através dos roteadores na Aula 10.
		 
	Os roteadores são equipamentos da camada de rede.
	 
	Modelos de serviço
	Quando falamos ao descrever de forma genérica o modelo de camadas, dissemos que as camadas fornecem serviços umas às outras. Assim, resta-nos saber quais serviços a camada de rede oferece. Para identificarmos esses serviços, devemos ter em mente algumas perguntas, tais como: quando a camada de transporte de um computador remetente entrega o pacote para a camada de rede (do mesmo computador), a camada de rede se encarrega mesmo de entregar esse pacote ao destino? Quando são enviados vários pacotes, a camada de rede os entrega na ordem em que foram enviados? A rede fornecerá algum tipo de informação sobre congestionamento na rede? 
Vejamos uma amostra dos serviços que a camada de rede pode prover, na situação expressa acima, onde a camada de transporte de um computador remetente passa um pacote para a camada de rede. Assim, alguns dos serviços seriam:
Entrega garantida – Garante que o pacote chegará ao destino, mais cedo ou mais tarde;
Entrega garantida com atraso limitado – Além de garantir a entrega do pacote, especifica um atraso máximo que pode ocorrer durante a entrega;
Entrega de pacotes na ordem – Esse serviço garante que pacotes chegarão ao destino na ordem em que foram enviados;
Largura de banda mínima garantida – Esse serviço emula o comportamento de um enlace de transmissão com uma taxa de bits especificada (XMbps) entre os computadores origem e destino (mesmo que existam vários roteadores entre eles ligando vários enlaces);
Jitter máximo garantido – Esse serviço garante que a quantidade máxima de tempo entre a transmissão de dois pacotes sucessivos no remetente seja igual à quantidade de tempo entre o recebimento dos dois pacotes no destino (ou que esse espaçamento não mude mais do que algum valor especificado).
Serviço de segurança – Através do uso de criptografia3 (Será visto quando estudarmos a parte de Segurança nesse curso) os computadores de origem e destino tornam as comunicações seguras, podendo ser lidas apenas por eles.
3 É uma técnica usada para fazer com que as informações sejam transformadas da sua forma original para outra ilegível, de modo que apenas o remetente e o destinatário consigam ler. 
		 
	Na Aula 8 estudaremos em detalhes o protocolo IP, que é o protocolo de camada de rede utilizado por todas as máquinas da Internet.
	 
	Camada de transporte
	Até agora, as funções implementadas pelas camadas estudadas (física, enlace e rede) estavam preocupadas em fazer a informação transmitida chegar à máquina destino. Como você viu, o serviço fornecido pela camada de rede permite o envio de informações entre duas máquinas em rede diferentes. Se você observar as informações de cabeçalho adicionadas em cada camada, verá que eram tratadas sempre pelo próximo equipamento no caminho. A camada de transporte é a primeira camada (olhando de baixo para cima) onde as informações de cabeçalhos adicionadas serão analisadas apenas na máquina de destino. 
O objetivo da camada de transporte é permitir que as aplicações usem os serviços oferecidos pela camada de rede. Quando se escreve um programa que transmite informações pela rede, utilizam-se funções para interagir com a camada de transporte. Assim como a camada de rede, a camada de transporte é um software instalado na máquina.
Se a mensagem passada para ser transmitida pela camada de transporte for muito grande, a camada pode optar por dividi-la em partes menores para que sejam transmitidas separadamente. Lembre-se de que a camada de rede pode ou não garantir a entrega dos pacotes e pode ou não entregá-los na ordem. Desse modo, é função da camada de transporte fornecer esses recursos caso eles sejam necessários, podendo também realizar controle de fluxo. Veja que controle de erros e de fluxo também podem ser serviços oferecidos na camada de enlace, mas lá essas operações eram realizadas para um enlace isoladamente, enquanto aqui ela é realizada fim a fim. 
Uma mesma máquina pode ter mais de uma implementação (protocolo) de camada de transporte instalada e cada aplicação pode usar o protocolo que quiser. Isso é importante porque as aplicações têm características diferentes. Para uma aplicação, a perda de um pacote pode não ser importante, como é o caso de aplicações que transmitem voz, mas para outras aplicações isso seria inaceitável, de modo que o pacote perdido precisaria ser retransmitido. Naturalmente, uma aplicação só consegue se comunicar com outras que utilizem a mesma camada de transporte.
Até agora, falamos sempre em endereços para identificar máquinas (ou placas), mas precisamos de uma forma de identificar para qual aplicação as informações transmitidas são destinadas. Existem, evidentemente, várias aplicações sendo executadas em cada máquina, de modo que quando ela recebe um pacote precisa saber para qual das aplicações deve entregá-lo. A PDU da camada de transporte possui um dos seus campos de cabeçalho destinado a essa finalidade. Conforme foi mostrado no início da aula no Quadro 1, a PDU da camada de transporte se chama segmento.
	Camada de sessão
	Vamos a mais uma camada do modelo OSI e suas funções. Essa é uma camada que, na prática, no modelo usado na Internet (TCP/IP), do qual iremos falar ainda nesta aula, não é implementado. Assim, essa camada existe apenas no âmbito conceitual, do modelo de referência OSI. Vamos então ver seus objetivos e funções.
O objetivo da camada de sessão é dá suporte para que os usuários consigam fazer a sincronização de seus diálogos e gerenciar a troca de informações. Para possibilitar que esses diálogos ocorram, ela cria uma conexão lógica, chamada de conexão de sessão que fica responsável por fornecer vários serviços que irão estruturar o diálogo entre as aplicações.
Assim, a camada de sessão tem a capacidade de proporcionar que dois computadores diferentes rodando aplicações possam estabelecer uma sessão de comunicação. Durante essa sessão, as aplicações “conversam” e decidem como será feita a transmissão dos dados e colocam pequenas marcações nos dados que serão transmitidos. Como nós sabemos, pode haver falha na rede durante a transmissão. Então, o que ocorre? Terá que ser feita a transmissão desde o início? A resposta é não. Lembra das marcações colocadas nos dados? Elas serão usadas para saber até onde as informações já foram transmitidas, sendo assim, a transmissão recomeça do ponto onde parou, ou seja, da última marcação.
A camada de sessão oferece então serviços importantes, pontos de controles periódicos (as marcações), que são usados para a recuperação da comunicação da rede em casos de problemas com a mesma.
	Camada de apresentação
	Os computadores representam as informações através de códigos binários. A tabela ASCII, por exemplo, define um valor inteiro de um byte para cada possível caractere. Mas, existem outras formas de representação, como o EBCDIC. Portanto, Uma máquina pode utilizar a tabela ASCII enquanto outra utiliza o esquema EBCDIC. Desse modo, uma mesma sequência de bits vai significar um valor se for considerada como um código ASCII e outra se for considerada como EBCDIC. Problemas semelhantes também ocorrem para tipos de dados numéricos com mais de um byte. Um inteiro em uma máquina pode ter 2 bytes enquanto em outra pode ter 4 bytes. Além disso, a forma como esses bytes são armazenados na memória do computador pode ser diferente.
		
	Atividade4
	 
	 
	 
	Pesquise o que são e qual a diferença entre os esquemas big-endian e little-endian?
Sugestão de pesquisa: <http://pt.wikipedia.org/wiki/Extremidade_(ordenação)>
	 
	 
	Uma das funções da camada de apresentação é evitar que as máquinas precisem conhecer os esquemas de codificação utilizados pelas outras máquinas. Para isso, as informações são transmitidas usando um formato padrão de representação. Caso o formato utilizado pelo transmissor seja diferente desse formato, ele realiza uma operação de conversão antes da transmissão. Do mesmo modo, caso o formato do receptor seja diferente do formato padrão, ele converte as informações recebidas para seu formato.
Além dessa operação, a camada de apresentação também pode realizar a compressão dos dados, de modo a gastar menos banda de rede, e a criptografia, para proteger as informações transmitidas contra a leitura indevida e adulteração.
	Camada de aplicação
	Você sabe que existem vários tipos de programas na Internet, como os browsers, os servidores web, os clientes de e-mail, e os servidores de e-mail, por exemplo. Talvez você já tenha notado que existem vários programas diferentes para cada um desses tipos. Como exemplo de browsers, podemos citar o Internet Explorer, o Firefox e o Chrome, e como exemplos de servidores Web, podemos citar o Apache e o IIS. Você não acha interessante o fato de que qualquer browser consegue se comunicar com qualquer servidor web? O mesmo vale para todas as outras aplicações, como e-mail, por exemplo. Antes que você se pergunte, saiba que provavelmente as pessoas que desenvolveram o Firefox, provavelmente nunca falaram com as pessoas que desenvolveram o IIS. 
A resposta para isso é que as aplicações que se comunicam em rede devem especificar quais mensagens elas vão trocar, quais os formatos dessas mensagens, e a ordem em que podem ser trocadas. Isso é um protocolo de aplicação. Desse modo, os programas são apenas implementações desses protocolos. Não importa qual é o nome do programa, ou seja, quem o escreveu, tudo que ele transmite e recebe deve seguir esse padrão. Assim, mesmo que tenhamos dois browsers diferentes enviando requisições para acessar o mesmo servidor web, as mensagens enviadas pelos dois serão idênticas.
A camada de aplicação corresponde à definição desses protocolos. Com ela, os programas passam a ser apenas a implementação dos protocolos, permitindo, assim, que programas escritos por diferentes pessoas possam se comunicar. Existem protocolos de aplicação para e-mail, web, transferência de arquivos, tradução de nomes de máquinas para endereços numéricos, entre vários outros. Você vai estudar alguns desses protocolos em detalhes na Aula 7 desta disciplina.
	Visão da estrutura em camadas TCP/IP
	Acabamos de estudar todas as camadas do modelo OSI e vimos as funções de cada uma delas, mas não estudamos ainda nenhum protocolo de nenhuma camada. Você já sabe que para duas máquinas se comunicarem elas precisam usar os mesmos protocolos em cada uma das camadas. Portanto, é necessário que exista uma arquitetura real que implemente os protocolos para cada camada. A arquitetura que apresentaremos agora é a utilizada na Internet e se chama TCP/IP. O conjunto dos protocolos de todas as camadas juntas é normalmente referenciado como pilha de protocolos. O Quadro 2 mostra as camadas da arquitetura TCP/IP.
	Aplicação
	Transporte
	Rede
	Enlace
	Físico
Quadro 2 - Camadas do modelo TCP/IP
Existem duas coisas muito importantes a serem observadas no Quadro 2. A primeira é que não existem as camadas de sessão e apresentação. Entretanto, atualmente muitas das funções dessas camadas são implementadas ou na camada de aplicação (como é o caso da compressão) ou na camada de transporte (como é o caso da criptografia). A segunda coisa importante é que embora apareçam os níveis físico e de enlace, o modelo TCP/IP não propõe nenhuma implementação para essas camadas. Isso foi feito porque a proposta do TCP/IP é ser utilizado sobre qualquer tecnologia de rede existente. Por causa disso é que a Internet consegue ser uma rede de dimensões globais, ou seja, formada por redes espalhas por todo o planeta. Desse modo, o TCP/IP é utilizado sobre redes Ethernet, ATM, Token Ring etc. Essas redes constituem os níveis físico e de enlace.
Como exemplos de protocolos da camada de aplicação do modelo TCP/IP, podemos citar: DNS, HTTP, SMTP, POP3, IMAP, FTP e NFS.  A camada de transporte fornece dois protocolos principais: TCP e o UDP. O TCP implementa controle de erros e de fluxo, além de realizar a segmentação (divisão em várias partes) e remontagem das mensagens, reordenando os segmentos que chegam fora de ordem. É utilizado pela maior parte das aplicações. O UDP é um protocolo mais simples que não fornece garantia de entrega das mensagens. O UDP é mais utilizado em aplicações que transmitem fluxos (streaming) de áudio e vídeo. Na camada de rede, é utilizado unicamente o protocolo IP. Conforme estudaremos a partir da Aula 8, o IP é o grande responsável pelo sucesso da Internet. Você pode observar que o nome da arquitetura leva o nome dos dois protocolos mais importantes da pilha de protocolos: o IP e o TCP. 
	Leituras complementares
	<http://www.teleco.com.br/tutoriais/tutorialosi/pagina_3.asp>
<http://www.networkexperts.com.br/CursoRedes/LivroCisco.htm>
<http://pt.wikipedia.org/wiki/Modelo_OSI>
Em cada um dos endereços mencionados, você irá encontrar informações importantes que podem complementar os estudos da camada OSI, além de informações sobre as outras camadas do modelo OSI.
<http://pt.wikilingue.com/es/EBCDIC>
Nesse site, você encontra mais informações a respeito do código EBCDIC.
	Resumo
	Nesta aula, você aprendeu que as funções de uma rede são divididas em sete camadas através do modelo de referência OSI da ISO. Viu que esse modelo foi criado principalmente para facilitar o desenvolvimento de novos padrões de rede, uma vez que torna as tarefas mais independentes uma das outras. Estudou que cada camada não determina como as coisas devem ser feitas, mas apenas limita o que deve ser feito em cada camada. Analisou detalhadamente as funções de cada uma das camadas. Como o modelo em camadas precisa de protocolos que implementem as funções das camadas, ao final da aula vimos os protocolos utilizados pelo TCP/IP, que é o modelo utilizado na Internet. 
		Autoavaliação
	 
	1. Quais os objetivos de se organizar as funções de uma rede em camadas?
	2. Relacione os equipamentos de rede que você conhece e a camada do modelo OSI com a qual eles trabalham.
	3. O que é uma PDU?
	4. Por que o modelo TCP/IP não especifica as camadas física e de enlace?
	5. Cite as principais funções de cada camada do modelo OSI.
	 
	 
	
	Aula 6 - Padrões de redes e as redes Ethernet
	 
	
	Apresentação
	Na aula passada, você estudou que as funções de uma rede são divididas em sete camadas, segundo o modelo OSI. Pôde observar também que as funções necessárias para transmitir informação de uma máquina para outra de uma mesma rede fazem parte apenas da camada física e da camada de enlace. Como existem várias formas de realizar as tarefas dessas camadas, para que máquinas diferentes consigam se comunicar elas precisam realizar cada uma dessas tarefas da mesma forma. Por isso, existem os padrões de rede, que iremos começar a estudar agora. Nesta aula, você vai estudar detalhadamente o padrão Ethernet, e na próxima aula estudará brevemente diversos outros padrões.
		
	Objetivos
	 
	Ao final desta aula, você será capaz de: 
entender o que é um padrão de rede;
entender como funcionam as redes Ethernet;
compreender as diferenças entre as variações do padrão Ethernet;
identificar características avançadas referentes ao funcionamento dos switches. 
	 
	Padrões de redes
	Como você viu na aula passada, quando duas aplicações executadas em máquinas diferentes estão se comunicando, podemos dizer que todas as camadas domodelo OSI são envolvidas. Apesar disso, você viu que apenas as camadas, física e de enlace, estão realmente envolvidas no processo de transferir fisicamente as informações de uma máquina para outra. Falamos que roteadores interligam redes, que podem ser do mesmo tipo ou de tipos diferentes, mas que o roteador pertence (possui uma placa de rede) a cada uma das redes que interligam. Portanto, as informações são passadas sempre de uma máquina para outra máquina da mesma rede.
Mas, como fazer para que todas as máquinas de uma mesma rede se comuniquem, se existem diversas funções realizadas pela camada de enlace e cada uma pode ser feita de diversas maneiras? Ou seja, existem vários tipos de endereço, vários protocolos de acesso ao meio diferentes, e assim por diante. Se as máquinas utilizarem, por exemplo, protocolos de acesso ao meio diferentes, elas não vão conseguir se “falar”. O mesmo ocorre para o nível físico, pois se duas máquinas utilizarem par trançado, mas não estiverem de acordo sobre qual o sinal que vão enviar em cada fio do cabo, a comunicação jamais vai ser bem sucedida. 
A solução para isso é fazer com que todas as máquinas executem cada uma das tarefas dos níveis físicos e de enlace exatamente do mesmo modo, definindo um padrão de rede. Desse modo cada padrão vai determinar o protocolo de controle de acesso ao meio, o tipo de endereço, o mecanismo de controle de erro, o formato dos quadros, o mecanismo de controle de fluxo, que serão utilizados na rede. O mesmo aplica-se ao nível físico, definindo, por exemplo, quais tipos de cabos podem ser utilizados e como os sinais são transmitidos. Evidentemente, existem diversos padrões, como Ethernet, ATM, e Token Ring, por exemplo, e cada um funciona de um modo diferente, sendo incompatíveis entre si. Portanto, todas as máquinas de uma rede devem ser do mesmo padrão de rede. 
		 
	Como praticamente todas as funções da camada de enlace são implementadas dentro da placa de rede, ela é quem determina o tipo da sua rede.
	 
	Para ilustrar, suponha que existem dois laboratórios na sua escola, um deles utiliza o padrão Ethernet, de modo que todas as máquinas têm que ter uma placa de rede Ethernet. O outro laboratório usa o padrão Token Ring, de modo que todas as máquinas devem possuir uma placa Token Ring. Caso desejássemos interligar os dois laboratórios, teríamos que colocar um roteador interligando os dois.
		
	Atividade 1
	 
	 
	 
	1. O roteador, mencionado no exemplo acima, deverá ter quantas placas de rede e qual(is) o(s) padrão(ões) dela(s)?
	 
	2. As máquinas de uma rede conseguem enviar mensagens para as máquinas da outra rede?
	 
	 
	Você pode estar se perguntando qual dos padrões de rede existentes e o melhor? Ou, talvez, por que existem tantos padrões? A resposta é que cada padrão acaba sendo mais indicado para certo tipo de ambiente, que pode ser o ambiente físico, mas, normalmente, se refere às aplicações que serão executadas sobre a rede. Portanto, dependendo da aplicação para qual a rede será utiliza, um padrão é mais indicado que outro.
Nas aulas anteriores, falamos que a comparação entre redes de diferentes padrões (ou tecnologias, como havíamos nos referido) deve considerar fatores como custo, desempenho, confiabilidade, tolerância a falhas, garantia do retardo de transmissão, entre outras. Portanto, quando for decidir o padrão de rede a utilizar, você deverá considerar quais dessas características são mais importantes no seu caso. Entretanto, como atualmente a maioria das redes são utilizadas para executarem aplicações dos mais variados tipos, cada uma com requisitos diferentes, a grande maioria das empresas utiliza o padrão Ethernet, pois ele oferece um bom equilíbrio entre todas as características citadas (custo, desempenho etc.).
Falamos sobre padrões, mas não dissemos quem os define. Na aula passada, você conheceu a ISO e viu que existem diversas organizações subordinadas a ela. O Institute of Electrical and Eletronics Engineers (IEEE) é uma dessas organizações, e possui grupos de trabalho (chamados 802) responsáveis pela definição dos padrões para redes locais (LANs) e Metropolitanas (MANs).
A Tabela 1 mostra os principais grupos de trabalho 802, em que se pode ver que todos eles recebem como prefixo do nome o termo 802.
Tabela 1 - Padrões 802 do IEEE
	
Padrão 802
	Descrição do Padrão
	802.1b
	Gerência de Rede
	802.1d
	Controle de acesso ao meio
	802.2
	Atua no LLC (Controle de Link Lógico)
	802.3
	CSMA/CD
	802.5
	Especificações do método de acesso Token Ring da camada física
	802.7
	Mans de banda larga
	802.6
	Fibra óptica
	802.9
	Integração de Redes Locais
	802.10
	Protocolo para provimento de segurança em uma MAN
	802.11
	Lans sem fio
	
	
		
	Atividade 2
	 
	 
	 
	Pesquise e descreva cada um dos padrões 802 citados na tabela acima.
Sugestão de pesquisa: http://pt.wikipedia.org/wiki/IEEE_802
	 
	 
	Redes Ethernet
	As redes Ethernet surgiram na década de 70 e ao longo desses 40 anos ela se firmou como a tecnologia de rede mais utilizada, dominando completamente o mercado das redes locais de computadores (LANs). Isso aconteceu graças a sua simplicidade de instalação e administração e ao surgimento de variações do padrão Ethernet original que garantiram sempre uma melhora no desempenho da rede de modo a atender as demandas de cada época. Inicialmente, estudaremos o padrão Ethernet original e depois analisaremos essas variações, que são conhecidas como Fast Ethernet, Gigabit Ethernet e 10 Giga.
A camada de enlace é dividida nas subcamadas de Controle do Link Lógico (Logic Link Control - LLC) e Controle de Acesso ao Meio (Media Access Control - MAC). As principais funções da LCC são: fazer a interação com a camada superior, e permitir a interoperabilidade entre diferentes tecnologias de rede. A subcamada MAC é que realmente realiza as principais tarefas, como montar e desmontar os quadros e controlar o acesso ao enlace. No nível físico, naturalmente, as principais tarefas são a codificação/decodificação dos bits (como os 0s e 1s são representados) e a transmissão/recepção desses sinais no enlace. 
Antes de continuar a leitura, pare e pense um pouco a respeito do que será que vamos explicar sobre as redes Ethernet. Pensou? Ora, se uma tecnologia de rede, como é o caso da Ethernet, compreende apenas as funções do nível físico e de enlace, vamos explicar como a Ethernet realiza cada uma das tarefas dessas camadas. Isso vale para qualquer tecnologia de rede que você for estudar, como, por exemplo, ATM e Token Ring, das quais falaremos na próxima aula.
	Endereçamento
	Você já sabe que para que se possa identificar quem transmitiu um quadro e para quem ele é destinado as placas de rede possuem um endereço. Nas redes Ethernet, esse endereço é de 48 bits (6 bytes) e já vem gravado na própria placa de rede. Por isso, muitas vezes é chamado de endereço de hardware ou endereço MAC. Cada endereço Ethernet é único no mundo, ou seja, não podem existir duas placas com o mesmo endereço. Para isso, cada fabricante recebe um código de três bytes e utiliza os outros três para identificar suas placas. Portanto, os três primeiros bytes de um endereço Ethernet identificam o fabricante e os outros três identificam cada placa feita pelo fabricante. A Figura 1 ilustra um endereço Ethernet. Veja que eles são representados como 12 dígitos hexadecimais.
	
	Figura 4 – Endereço Ethernet
	Essa aparente divisão serve apenas para evitar a repetição de endereços. Durante a operação da rede, essa divisão não é considerada, de modo que os endereços são utilizados como um único identificador de 6 bytes. Por isso, os endereços de uma placa não possuem relação nenhuma com qualquer outro endereço. Dizemos que o endereçamento é plano (significando o oposto de hierárquico).
		 
	Veja a lista dos códigos utilizados pelos fabricantes de placas Ethernet em: <http://standards.ieee.org/regauth/oui/oui.txt>Os endereços Ethernet podem ser unicast, multicast, ou broadcast, significando, respectivamente, que o quadro deve ser entregue a uma única máquina, a um grupo de máquinas ou a todas as máquinas da rede. Os endereços multicast e broadcast possuem o último bit do byte mais significativo sendo 1. Esse byte corresponde aos dois dígitos mais a esquerda da representação hexadecimal de um endereço Ethernet. Na Figura 1, esse byte seria 3C. Nos endereços broadcast, todos os bits do endereço são 1s, de modo que o endereço broadcast em uma rede Ethernet é FF:FF:FF:FF:FF:FF. Naturalmente, a maioria dos quadros transmitidos em uma rede utilizam endereços unicast, uma vez que são destinados a apenas uma das máquinas da rede.
Você acha que os quadros com endereços multicast e broadcast são repassados de modo diferente pelos swicthes? Se respondeu sim, acertou. Enquanto quadros com endereços unicast são encaminhados apenas na porta onde a estação de destino está conectada, esses quadros são encaminhados por todas as portas do switch. Portanto, mesmo que sua rede utilize apenas switches, lembre-se, um quadro enviado para um endereço de broadcast irá ocupar toda a rede, pois será retransmitido por todas as portas de todos os switches! Desse modo, embora os endereços broadcast sejam importantes para diversas aplicações, se utilizados em excesso, eles podem comprometer o desempenho da rede. Isso é um dos fatores que faz com que as pessoas evitem criar redes com um número muito alto de máquinas, preferindo dividir a rede em várias redes menores.
Como uma última colocação sobre endereços Ethernet, saiba que embora eles já venham gravados nas placas de rede, é possível redefinir esse endereço através de software, utilizando comandos do sistema operacional. Isso, entretanto, não altera o endereço gravado na placa, o comando precisa ser aplicado cada vez que o equipamento é ligado.
	Formato do quadro
	Uma questão de extrema importância em qualquer tecnologia de rede é o formato do quadro transmitido pelas placas de rede. Cada tecnologia diferente tem seu próprio formato. Em algumas redes, o tamanho do quadro é fixo e em outras é variável, ou seja, cada quadro transmitido pode ter um tamanho diferente. As redes Ethernet utilizam a segunda abordagem, pois a parte de dados do quadro pode conter um número variável de bytes. Isso é importante, pois permite que o tamanho do quadro se ajuste à quantidade de informações a serem transmitidas. 
Apesar de possuir um tamanho variável, o quadro deve possuir pelo menos 64 bytes e não pode ser maior que 1518 bytes. Você vai entender o porquê do tamanho mínimo em breve, quando estudar o protocolo de acesso ao meio. A definição de um tamanho Máximo é importante para garantir um justo compartilhamento do canal de transmissão e evitar problemas de espaço nos buffers dos switches. A Figura 2 mostra o formato do quadro Ethernet. Embora o CRC seja adicionado no final do quadro, também podemos considerá-lo como um campo de cabeçalho.
	
	Figura 2 – Formato do quadro Ethernet.
	Como era de se esperar, um quadro contém, além do campo para colocar os dados que se deseja transmitir, campos adicionais que possibilitam a rede realizar suas funções. A seguir, listamos todos os campos do quadro e descrevemos sua finalidade.
Campo de dados - Esse campo contém as informações que a camada de rede passou para serem transmitidas. Em redes que utilizam o protocolo IP, esse campo corresponde a um datagrama IP1. Lembre-se de que o tamanho mínimo do quadro como um todo é 64 bytes e o tamanho máximo é 1518. Desse modo, como a soma do tamanho dos campos de endereço (12 bytes) com os campos de tamanho/tipo (2 bytes) e o CRC (4 bytes) é 18 bytes, o tamanho mínimo desse campo é 48 bytes e seu tamanho máximo é 1500 bytes. Se as informações a serem transmitidas forem maiores que 1500 bytes, elas serão divididas em mais de um quadro. Se as informações forem menores que 46 bytes, bytes de enchimento são colocados no quadro para ele atingir o tamanho mínimo. Os bytes de enchimento são retirados no destino de modo a não comprometer a informação transmitida.
Campos de endereço de origem. Este campo contém o endereço de origem (6 bytes), são os 6 bytes que formam o endereço MAC da placa de rede da máquina que está transmitindo o quadro.
Campos de endereço de destino. Este campo contém o endereço de destino (6 bytes) da máquina que deve receber o quadro, mas pode ser também um endereço multicast ou broadcast. 
O campo de tipo. Nas primeiras versões da Ethernet, o campo de tipo inicialmente era na verdade um campo de tamanho que indicava quanto bytes tinham no campo de dados. Posteriormente, passou a ser utilizado para indicar o tipo da informação contida no campo de dados. Como o conteúdo do campo de dados na verdade é um pacote da camada de rede, o campo de tipo contém o identificador do protocolo da camada de rede que o gerou. Isso é necessário porque uma máquina pode ter mais de um protocolo de rede instalado, como o IP e o IPX, por exemplo. Assim sendo, quando uma placa Ethernet recebe um quadro, ela precisa passar seu conteúdo para o protocolo da camada de rede igual ao que gerou o quadro na máquina transmissora, e o campo de tipo é quem diz qual é esse protocolo. Cada um dos possíveis protocolos de rede possui um código específico. O código do protocolo IP, por exemplo, é 0800 (em hexadecimal). 
Cyclic Redundancy Check (Verificação de Redundância Cíclica - CRC). Possui um código de 4 bytes, calculado através do algoritmo CRC-32, utilizado para verificar se houve erros durante a transmissão do quadro. Explicaremos melhor como esse campo é utilizado posteriormente. 
Existe também um campo chamado preâmbulo que não foi mostrado na Figura 2, porque embora ele seja transmitido junto com o quadro, na frente do endereço de destino, podemos dizer que ele não faz parte do quadro. Esse campo, que contém sempre o mesmo valor, é inserido pelo nível físico e é utilizado para sincronização das máquinas. Esse sincronismo é necessário para que os bits possam ser lidos pelo receptor no momento exato. Para isso, o campo é composto por 8 bytes, onde os 7 primeiros possuem o valor 10101010 (em binário), e o último 10101011 (em binário). Os primeiros sete bytes avisam as outras máquinas que um quadro está sendo transmitido e permitem que elas realizem o sincronismo. Veja que esses bits são uma sequência de 0s e 1s alternados. O oitavo byte, que termina com os bits 11, informa que no próximo byte começa a transmissão do quadro propriamente dito. 
O valor do campo CRC é calculado no transmissor e recalculado quando uma máquina recebe o quadro. Caso os valores do campo CRC contido no quadro e do CRC calculado sobre o quadro sejam diferentes, o quadro apresenta erro e é, portanto, descartado. 
1 O datagrama IP é a unidade básica de dados no nível IP. Um datagrama está dividido em duas áreas, uma área de cabeçalho e outra de dados.
	Controle de acesso ao meio
	Você já sabe que após a camada de enlace montar o quadro, ela precisa obedecer às regras que determinam quando ela pode enviar o quadro pelo meio de transmissão ao qual a placa está conectada (um cabo ou o ar), e que isso se chama protocolo de controle de acesso ao meio. O protocolo utilizado pelas redes Ethernet se chama Carrier Sense Multiple Access with Collision Detection (CSMA/CD). Apesar desse nome complicado, ele é bem simples de entender, pois de certo modo parece com as regras que nós, pessoas comuns, utilizamos para conversar.
Procure entender o CSMA/CD por partes. Para nossa explicação, assuma que você está em uma sala conversando com mais algumas pessoas. 
Vamos entender o Multiple Access(MA)? O meio por onde as suas vozes vão ser transmitidas é o ar, que é compartilhado por todas as pessoas. Ainda nesta aula você estudará os possíveis tipos de cabos e topologias utilizados nas redes Ethernet, mas saiba que inicialmente elas eram redes em barra formadas por cabos coaxiais. Depois de algum tempo, passou-se a utilizar Hubs e finalmente os switches.Portanto, o CSMA/CD foi criado para permitir a comunicação de várias máquinas através de um meio compartilhado. Desse modo, o Multiple Access (MA) significa que várias máquinas podem acessar o meio.
E agora, entendendo o Carrier Sense (CS)! Voltando ao nosso exemplo, o que você faz quando quer falar? Como tenho certeza que você é bem educado, aposto que primeiro você escuta para ver se já tem alguém falando. Se não tiver, ou seja, se o meio estiver livre, você fala. Se estiver alguém falando, você espera um pouco. O Carrier Sense (CS) significa que a máquina primeiro escuta o meio antes de transmitir, caso ele esteja ocupado por outra transmissão, a máquina vai esperar certo tempo antes de tentar novamente. 
Veja que se todas as máquinas que tentaram transmitir enquanto outra estava utilizando o meio ficassem esperando ele ser liberado e iniciassem imediatamente suas transmissões neste instante, todas iriam tentar transmitir simultaneamente. Para diminuir as chances disso acontecer, cada máquina gera um tempo de espera aleatório, quando detecta o meio ocupado. Caso o meio também esteja ocupado nessa outra tentativa, a máquina volta a esperar, só que agora gera um tempo de espera ainda maior. A cada tentativa mal sucedida, o tempo cresce exponencialmente até um valor limite. Após atingir esse valor, são feitas mais algumas tentativas e caso não se consiga detectar o meio livre, a transmissão desse quadro é encerrada e o quadro é descartado. O tempo de espera cresce a cada tentativa para que quando a rede estiver muito sobrecarregada as máquinas passem a transmitir temporariamente com menos intensidade. Esse algoritmo é chamado de backoff exponencial.
Vamos falar agora sobre o Collision Detection(CD). Ainda considerando nosso exemplo, por mais que você seja educado, e escute antes de falar, pode acontecer de ninguém estar falando em um dado momento e você e outra pessoa quererem falar ao mesmo tempo. Então, os dois vão começar a falar ao mesmo tempo. Evidentemente, enquanto falam vocês escutam e, ao perceberem que outra pessoa está falando ao mesmo tempo, vocês param de falar.
Nas redes Ethernet, nas quais temos um meio compartilhado, isso se chama colisão, evidentemente compromete todos os sinais transmitidos. Portanto, o CD significa que é feita a detecção de colisão, ou seja, a detecção de transmissões simultâneas. Desse modo, após uma placa conseguir transmitir um quadro, ela continua escutando o meio até a conclusão da sua transmissão. Caso outra máquina comece a transmitir antes que ela termine sua transmissão, ambas irão detectar que houve colisão, parar suas transmissões, e utilizar o algoritmo de backoff exponencial antes de tentar transmitir novamente. A máquina que detectar primeiro a colisão gera um sinal de reforço de colisão para que todas as máquinas percebam que ocorreu uma colisão.
Quando falamos sobre o formato dos quadros Ethernet, dissemos que ele tinha que ter um tamanho mínimo de 64 bytes. Ter um tamanho mínimo é necessário para que se possa fazer a detecção de colisão. Não entraremos em detalhes de porque 64 bytes, mas isso tem a ver com a velocidade de transmissão e o tamanho máximo do cabo, ou seja, a distância entre as duas máquinas mais distantes da rede. O fato importante é que o tempo que a placa de rede demora transmitindo um quadro deve ser maior que o tempo para o primeiro bit do quadro atingir o ponto mais distante da rede, e o sinal de reforço de colisão gerado por aquela máquina, caso ela ocorra, ser recebido pelo transmissor.
	Controle de erros
	Você viu que o quadro Ethernet tem um campo para detecção de erros chamado CRC. O cálculo do CRC utiliza divisão de polinômios, mas nós não entraremos nesses detalhes. O mais importante para você saber é quais campos do quadro entram no cálculo do CRC e qual o tamanho do valor gerado. Você já viu que esse tamanho é de 4 bytes? O cálculo do CRC considera os seguintes campos: endereço de destino, endereço de origem, tipo e dados. Observe que o preâmbulo não entra no cálculo! Portanto, ele é calculado não apenas na parte dos dados como também nos campos de controle. Isso é importante porque, por exemplo, a ocorrência de um erro em um bit do endereço de destino pode fazer com que o quadro seja entregue a máquina errada.
O valor do CRC é calculado no transmissor e colocado no último campo do quadro (CRC). O receptor recalcula o CRC considerando os mesmos campos que o transmissor e compara o valor obtido com o valor contido no campo CRC. Se forem iguais, o quadro é aceito, em caso contrário, o quadro é descartado. Observe que nenhuma mensagem é enviada para o transmissor dizendo se o quadro foi aceito ou descartado. Portanto, a camada de enlace da rede Ethernet não garante a entrega de quadros. Se esse tipo de confiabilidade é necessário, ele deve ser implementado pelas camadas superiores, como a camada de transporte, por exemplo.
	Transmissão de um quadro por uma máquina
	O processo de transmissão de um quadro basicamente compreende a montagem do quadro e a aplicação do protocolo de acesso ao meio para determinar quando ele pode ser enviado no enlace. Lembre-se de que, durante a formação do quadro, o campo de tipo é preenchido com o número do protocolo da camada de rede que passou o pacote para ser transmitido pela camada de enlace.
	Recebimento de um quadro por uma máquina
	Quando uma máquina recebe um quadro através de sua placa de rede, o endereço do campo endereço de destino do quadro é analisado. Caso ele seja igual ao endereço da própria placa de rede ou ao endereço de broadcast, o quadro é recebido e processado pela máquina, caso contrário, é descartado. É possível, entretanto, configurar uma placa de rede para aceitar todos os quadros recebidos. Isso pode ser feito com boas intenções, como, por exemplo, para identificar o tipo de tráfego mais comum na rede, ou com má intenção, como tentar ler informações sigilosas de outro usuário. 
Quando o quadro é aceito, o campo de tipo é então utilizado para identificar para qual implementação de protocolo de rede os dados contidos no quadro devem ser passados.
	Padrões 802.3
	A tecnologia Ethernet foi criada no centro de pesquisas da Xerox (Palo Alto Research Center – PARC) e, posteriormente, foi padronizada pelo IEEE como o padrão 802.3. Para permitir a utilização do 802.3 com diferentes tipos de cabeamento, foram definidas quatro tipos de camada física diferentes, gerando as seguintes especificações: 10Base2, 10Base5, 10BaseT e 10BaseF. O 10 se refere ao fato da velocidade da rede ser de 10Mbps. Base se refere ao fato de utilizar banda básica, que significa que a rede envia os próprios sinais digitais no enlace, ou seja, não realiza modulação. A seguir, você pode ver mais algumas características de cada uma dessas especificações.
10Base2 – conhecidas também como Thin Ethernet. São redes em barra que utilizam cabos coaxiais finos e as máquinas se conectam utilizando os conectores BNC (vistos na aula 1). O 2 (em 10Base2) refere-se ao fato de que o comprimento máximo do cabo, sem usar repetidores, é de aproximadamente 200 metros (na verdade, o comprimento máximo é de 185 metros). As primeiras redes Ethernet foram dessa categoria. Os principais problemas dessas redes eram: i) o baixo desempenho causado pelo fato do meio ser compartilhado, permitindo que apenas uma máquina transmitisse por vez; ii) como a rede era formada por um único e longo cabo, onde todas as máquinas estavam conectadas, os problemas no cabo frequentemente deixavam toda a rede sem comunicação. Apesar desses problemas, seu baixo custo e facilidade de instalação ajudaram a tornar essas redes bastante populares. A conexão das estações ao cabo coaxial é feita por um dispositivo chamado transceptor, que é um TRANSmissor e um reCEPTOR, daí seu nome. O transceptor, que também realiza a tarefa de detectar as colisões, pode ser um dispositivo externo ou interno à máquina. A maioria das redes utilizava transceptores internos, que eram, portanto, integrados na própria placa de rede.
10Base5– conhecidas também como cabo coaxial grosso. Foi o primeiro padrão Ethernet a surgir e utilizar cabo coaxial grosso, com transceptores externos localizados junto a esse cabo. A ligação da placa de rede ao transceptor utilizava um cabo diferente com uma interface conhecida como AUI (Attachment Unit Interface).
10BaseT –  São redes que utilizam o par trançado para ligar as máquinas a hubs, formando uma topologia física em estrela. A principal vantagem dessas redes foi reduzir os problemas decorrentes de falhas no cabeamento, uma vez que cada máquina utiliza um cabo exclusivo para a sua ligação ao hub. Outra vantagem do hub é que ele tornou possível a utilização de mais de um tipo de cabo nas redes. 
10BaseF – São padrões Ethernet que suportam a utilização de fibras óticas. Existem o 10BaseFB, o 10BaseFP e o 10BaseFL. Esse último faz uso de hubs para interligar as máquinas e o comprimento dos cabos pode chegar a 2km, sem o uso de repetidores. 
Como a topologia em estrela mostrou-se a mais vantajosa, o padrão 10BaseT acabou sendo o padrão dominante. Entretanto, observe que um hub podia ter portas de mais de um padrão, como, por exemplo, diversas portas para par trançado e uma porta para fibra ótica para realizar a interligação entre dois hubs diferentes.
	Fast Ethernet
	É natural que as aplicações exijam cada vez maiores taxas de transmissão. Desse modo, o padrão Ethernet precisou evoluir para fornecer maiores velocidades. As modificações no padrão Ethernet, para que ele suportasse velocidades de 100Mbps, geraram um novo padrão chamado Fast Ethernet. Como compatibilidade é uma questão fundamental, o Fast Ethernet utiliza o mesmo protocolo de acesso ao meio (CSMA/CD), o mesmo formato de quadro e possui as mesmas restrições de tamanhos mínimo e máximo dos quadros que o Ethernet de 10Mbps. 
Uma característica importante adicionada juntamente com o Fast Ethernet foi a autonegociação, que permite a um dispositivo que pode trabalhar a 100Mbps baixar sua velocidade para 10Mbps, caso o dispositivo na outra extremidade do enlace suporte apenas essa velocidade.
No que diz respeito aos tipos de cabeamento, ou de nível físico suportados, o Fast Ethernet define as seguintes especificações: 100BaseTX, 100BaseFX e 100BaseT4. O 100BaseTX especifica a utilização com cabos de par trançado de categoria 5 ou 5e, onde são utilizados dois pares do cabo. O 100BaseFX utiliza cabos de fibra ótica. O 100BaseT4 foi definido para permitir o aproveitamento dos cabeamento categoria 3 já instalado nas empresas, e utiliza os 4 pares do cabo. Naturalmente, em novas instalações não é recomendado a utilização do 100BaseT4.
	Gibabit Ethernet
	Após o Fast Ethernet, a evolução seguinte no padrão Ethernet se chamou Gigabit Ethernet, naturalmente, porque a velocidade desse novo padrão é 1 Gbps (ou 1000Mbps). Como antes, procurou-se manter compatibilidade com os padrões Ethernet anterior. 
As principais especificações para a camada física são:
1000BaseT – Utiliza o mesmo cabeamento par trançado categoria 5e das redes Fast Ethernet, porém utiliza os quatro pares do cabo. Suporta distâncias de até 100 metros.
100BaseCX – Foi o primeiro padrão para Gigabit Ethernet que permitia sua utilização com cabos de cobre. Utiliza cabo par trançado blindado e possui um alcance de no máximo 25 metros. 
1000BaseSX – Suporta a utilização de fibras óticas monomodo e multímodo, mas normalmente utiliza essas últimas por serem mais baratas. Permite uma distância máxima de 550 metros.
100BaseLX – Também suporta a utilização de fibras óticas, mas pode ser utilizada em distâncias de até 5 km. Pode ser utilizada apenas com fibras monomodo e é uma tecnologia mais cara que a 100BaseSX. 
Outra diferença entre os diversos padrões Ethernet, mas que não entraremos em detalhes sobre esse assunto, é a forma como eles codificam e decodificam os bits. Cada um utiliza um esquema diferente. Enquanto a Ethernet padrão utiliza um esquema chamado Manchester, a Fast Ethernet utiliza 4B/5B e o Gigabit utiliza 8B/10B.
Após o Gigabit Ethernet já surgiu o padrão 10Gigabit Ethernet. Como você pode observar, cada nova evolução do padrão multiplica a velocidade de transmissão por 10.
Tipicamente, os padrões de velocidades mais elevadas são utilizados para formar o backbone2 da rede, e os de velocidade um pouco inferior para interligar os demais equipamentos ao backbone, e as máquinas dos usuários a esses equipamentos. Atualmente, é muito comum utilizar Gigabit para o backbone e Fast Ethernet para as demais ligações. Quando o preço dos equipamentos for reduzindo, será comum utilizar os backbones a 10Gigabit e as demais ligações no padrão Gigabit.
2 Infraestrutura central da Internet. 
		
	Atividade 3
	 
	 
	 
	1. Nas redes locais que existem nos campus das universidades e nas empresas, quais tipos de cabos e velocidades são mais comuns de serem encontrados?
	 
	2. Pesquise e defina o que é uma fibra monomodo e uma fibra multímodo.
	 
	 
	Aprendendo um pouco mais sobre os switches
	Nós já falamos sobre switches na aula 3, em que mostramos qual sua função, qual a diferença entre ele e um hub e a relação que ele tem com as pontes (bridges). Agora, nós iremos nos aprofundar um pouco mais nesse equipamento de camada dois (enlace) e que é de vital importância nas redes de computadores. 
Sabemos que os switches podem ter diversos números de portas a depender do modelo, sendo os mais comuns os de 4, 8, 16 e 24 portas, e, em geral, eles apresentam uma, duas ou quatro portas com velocidades maiores que as demais, as quais são usadas para fazer as interligações entre os switches. E que interligação é essa? Como dissemos, a quantidade de portas dos switches mais comuns são de até 24 portas, e muitas vezes em nossas redes o número de computadores é bem superior ao número de portas dos switches, então, surge a dúvida: o que fazer para ligar todos os computadores na mesma rede se um único switch não comporta todas as máquinas? Teremos de interligar os switches (essa interligação também pode ser chamada de cascateamento entre switches). Bem, podemos interligá-los de algumas formas. Se ligarmos um cabo de rede de uma porta qualquer de um switch para outra porta qualquer do outro switch, eles já estarão interligados e poderemos adicionar máquinas em ambos que elas terão capacidade de se comunicar, fazendo parte da mesma rede. Como dito antes, existem portas no switch com velocidades maiores e é bastante comum utilizarmos essas portas para fazer essa ligação entre eles, o que permitirá uma maior velocidade de transferência de dados entre os switches, fato necessário, pois todo o tráfego gerado pelas máquinas de cada switch fluirá apenas por esse cabo. Vale salientar que essa interligação de switches usando cabo de rede só permite a interligação de até cinco switches.
Já vimos que podemos interligar switches usando um cabo normal ligando uma ponta em cada switch, e que, em geral, se usam as portas mais rápidas. Mas, se quisermos que a velocidade de transmissão dos dados entre os switches seja ainda maior, podemos fazer essa ligação usando mais de um cabo para formar esse link entre os switches, e esse processo chama-se agregação de links (é necessário configurar as portas de cada switch que participarão desse compartilhamento (trunk) com a opção de port trunk), assim as velocidades das portas serão somadas. Por exemplo, se foram usados três cabos ligando portas de 100 Mbps para essa interligação, a velocidade de transmissão entre os switches será de 300 Mbps (soma das velocidades das três portas), além disso, essa ligação servirá de redundância, pois se uma das portas der algum problema e parar de funcionar, o tráfego entre os switches fica dividido entre as outras duas portas que permanecerem funcionando, agora a 200Mbps (soma das velocidades das duas portas que restaram funcionando).
Alguns tipos de switches, os melhores e mais caros, têm portas feitas especialmente para interligar switches que usam cabos específicos para isso e que têm umavelocidade muito superior a das portas normais.
	Modos de operação dos switches
	Você já sabe que a função do switch é interligar as máquinas da rede, permitindo que todas elas se comuniquem entre si. Veremos agora que eles podem trabalhar em quatro diferentes modos de operação: cut-through, store-and-forward, adaptative cut-through e ainda o fragment-free. Mas, nós só abordaremos os dois primeiros modos, pois eles é que são usados na prática.
No modo cut-through, o switch já começa a retransmitir os pacotes para o endereço de destino assim que recebe a parte do pacotes em que estão os endereços de origem e destino (cabeçalho do quadro). Perceba que aqui o switch não faz análise alguma no pacote, repassando-o para a porta de destino, da mesma forma que recebeu. Uma vantagem desse modo de operação é que o pacote fica pouco tempo dentro do switch, já que é repassado assim que chega, e isso reduz a latência3, pois diminui o trabalho executado pelo switch.
Já no modo store-and-forward, o switch recebe o pacote da porta de origem, armazena-o na memória, faz alguns tipos de checagem e depois o encaminha para a porta de destino. Isso lhe dá a possibilidade de descartar os quadros inválidos, bem como solicitar a retransmissão dos quadros defeituosos. Quais as vantagens que esse modo oferece em relação ao outro? Bem, ele oferece mais estabilidade e um uso mais eficaz da rede e ainda permite que os switches trabalhem com as portas em diferentes velocidades, sem ter que diminuir a velocidade da porta de maior velocidade para ficar compatível com a de menor velocidade.
3 Período de inatividade entre um estímulo e a resposta por ele provocada. 
	Capacidade do blackplane
	O circuito interno do switch responsável por fazer a movimentação dos pacotes entre as portas deverá ter uma capacidade de transferir dados muito superior à velocidade das portas do switch, pois ele precisa encaminhar ao mesmo tempo todos os dados que estão chegando ou saindo do switch de cada porta ao mesmo tempo. Assim, a relação que existe da velocidade do blackplane de um switch é que ele seja pelo menos a metade da soma das taxas máximas de transmissão de todas as portas do switch, para o caso delas serem half duplex.  Quando as portas estiverem operando no modo full duplex, a capacidade de repasse dos pacotes deverá ser igual ou maior à soma das taxas máximas de transmissão das portas do switch.
	Capacidade de aprendizagem de endereços MAC
	Como já falamos, os switches são equipamentos “inteligentes”, pois eles têm a capacidade de aprender os endereços MAC e as portas de origem dos equipamentos que estão ligados a ele. Essa aprendizagem é feita por meio de uma tabela, onde o switch armazena todos os endereços MACs conhecidos da rede. Assim, os switches implementam o repasse dos quadros baseados nas informações contidas nessa tabela, checando o endereço de destino e o endereço MAC de cada quadro. Bem, toda vez que um quadro chega ao switch é checado se o endereço MAC já está na tabela, caso não esteja, esse quadro é enviado para todas as portas. Perceba que isso funciona como um broadcast, e aumenta o tráfego na rede. Então, quando o equipamento receber esse quadro e o responder, será armazenado seu MAC na tabela SAT (Source Address Table) do switch.
	Protocolo IEEE 802.1D Spanning Tree
	É necessário ter bastante cuidado quando interligamos vários switches para não criamos loops entre eles. As pontes e os switches mais recentes implementam o protocolo IEEE 802.1d, que é usado para tentar evitar a ocorrência desses loops, bem como encontrar e desabilitar os caminhos menos eficientes, ou que apresentam uma largura de banda menor, além de habilitar um dos caminhos menos eficientes, caso o mais eficiente venha a falhar.
Esse protocolo é especificado e padronizado pelo IEEE e faz parte do conjunto de normas IEEE 802.1d.
	Dividindo a rede física em redes virtuais: VLANs
	Dando seguimento ao nosso estudo, falaremos agora sobre o conceito de Vlan (Virtual Lan), artifício usado para melhorar a forma de gerenciar as redes. O padrão que descreve essa tecnologia é o 802.1Q e que estudaremos agora.
Criar vlans em um switch é dividi-lo logicamente (não fisicamente) de forma que ele “pareça” ser dois ou mais equipamentos distintos. As portas de cada parte dessa divisão lógica não podem se comunicar diretamente, visto que estarão isoladas pela configuração empregada nas portas do switch. Para cada vlan que eu crio, eu associo algumas portas e apenas as portas que estiverem associadas a essa vlan conseguirão se comunicar. Chamamos a atenção novamente, pois é como se dividíssemos o switch fisicamente, mas que tudo é feito logicamente por software. Vamos exemplificar para que fique mais fácil de entender. Suponha que criamos uma vlan e atribuímos o número 10 a ela (pois as vlans têm números como identificadores sendo de 0 a 4096), e associarmos a essa vlan as portas 1,2,3,4 e 5 e as portas restantes associamos a vlan 11.
Dessa forma, nenhum equipamento que esteja nas portas da vlan 10 poderão se comunicar (enviar pacotes) diretamente para a vlan 11 e vice-versa. Assim, perceba que a função das vlans é isolar grupos de computadores na rede. Elas permitem que computadores conectados em vários switches diferentes façam parte da mesma rede (vlan). Além disso, cada par de switches pode estar conectado por um único cabo, ou seja, não é necessário um cabo para cada vlan.
	Tipos de VLAN
	Existem algumas formas de se criar vlans, mas abordaremos apenas as mais usadas.
Vlan por porta – O administrador da rede especifica a qual vlan cada porta irá pertencer. Os equipamentos que forem ligados nessas portas farão parte daquela vlan especificada. Esse é o tipo mais utilizado de vlan.
Vlan por MAC address – Essa forma oferece algumas vantagens, mas é muito trabalhosa, pois o administrador tem que pegar os MACs de cada equipamento e cadastrar no switch como fazendo parte de uma determinada vlan. Assim, mesmo que o equipamento mude de porta, ele continuará na mesma vlan, pois não estará atrelada à porta e sim ao MAC.
Vlan por autenticação 802.1x – Nesse método, só após ser autenticado na rede, o usuário poderá fazer alguma coisa. E podem ser criados vários tipos de configuração para os usuários, de modo que mesmo que pessoas diferentes se loguem na mesma máquina, cada uma obterá recursos diferentes. É importante entendermos que para que os equipamentos que fazem parte de vlans diferentes possam se comunicar, se faz necessário o uso de um roteador (conectado às varias vlans) que roteará os pacotes entre as redes, assim como acontece com as redes separadas fisicamente.
	Resumo
	Nesta aula, você aprendeu sobre os padrões de rede. Viu que cada padrão de rede define características diferentes de protocolos, de dispositivos e funciona a velocidades diferentes. Você também estudou sobre o padrão Ethernet, que foi o padrão original, e que evoluiu para o Fast Ethernet e já evoluiu para o padrão Gigabit Ethernt, bastante usado, e que também já evoluiu para o padrão 10 Gigabit Ethernet, já em uso, embora mais restritamente, devido a detalhes como preço ainda alto dos equipamentos que suportem essa velocidade. Além disso, você viu com mais detalhes as características dos switches e os modos em que eles podem operar. Abordamos, ainda, como podemos dividir a rede de maneira lógica, como se estivéssemos fazendo de maneira física, com o uso de vlans.
		Autoavaliação
	 
	1. Descreva quais são as diferenças entre o padrão de Ethernet original e o Fast Ethernet que temos atualmente.
	2. Dê dois exemplos em que seria interessante o uso de vlans.
	3. Para um sistema de rede sem fio de um campus universitário, onde centenas ou até milhares de alunos precisam ter acesso a uma rede sem fio, qual o melhor tipo de vlan utilizar?
	4. Descreva quais as principais diferenças entre um hub e um switch.
	5. Como se chama o protocolo da camada de enlace que é manipulado pelos switches?
	 
	 
	Protocolos ponto a pontoO padrão Ethernet é uma tecnologia para interligação de diversas máquinas em rede. Algumas vezes, entretanto, queremos interligar apenas dois equipamentos. Os dois principais cenários onde isso acontece são: i) conectar um usuário ao provedor através de um modem (acesso discado, ou modem a cabo, por exemplo); ii) interligar duas redes remotas (matriz e filial) conectadas através de seus roteadores, usando um link de uma operadora de telecomunicações.
Em ambos os casos, são utilizados modens e, portanto, a grosso modo, podemos dizer que temos a nossa disposição apenas uma camada física. Qual será então a camada de enlace a ser utilizada? Nesses casos, a camada de enlace não estará contida no hardware (como é o caso do Ethernet), mas, precisa, ao invés disso, ser definida através de software, ou seja, de um protocolo.
Os dois protocolos mais utilizados nesses cenários são o Point to Point Protocol (PPP), e o High Level Data Link Control (HDLC). O PPP é utilizado nos dois cenários, enquanto o HDLC tipicamente é utilizado apenas no segundo (interligar matriz e filiais). Vale ressaltar que o HDLC também suporta conexões multiponto, embora normalmente não seja utilizado para essa finalidade.
Esses protocolos evidentemente definem o formato dos quadros de enlace e as regras que controlam as suas transmissões. Suportam também mecanismos para efetuar a autenticação das duas partes (equipamentos) que estão se comunicando.  Tipicamente eles irão transmitir pacotes do protocolo IP vindos da camada de rede.
	Frame Relay
	Existe uma tecnologia de rede que também é utilizada para interligar redes remotas, que se chama Frame Relay. Uma rede Frame Relay consiste em uma rede mantida pela operadora onde cada rede remota de uma empresa contrata uma ligação a essa rede, e a operadora cria uma espécie de circuito virtual (um link virtual) entre esses pontos. Cada empresa diferente terá seus circuitos virtuais diferentes de modo que os de uma empresa não têm acesso aos de outra.
Como a rede é compartilhada por diversas empresas, normalmente, os links não têm uma capacidade fixa (por exemplo, 1 Mbps), como é o caso dos links dedicados. Cada link é determinado por uma velocidade mínima e outra máxima, de modo que a velocidade vai sempre estar entre esses dois valores, dependendo do tráfego na rede como um todo em cada instante.
Enquanto as ligações ponto a ponto utilizam uma interface diferente no roteador para se ligar a cada rede remota, o Frame Relay utiliza apenas uma interface em cada equipamento, pois essa interface o conecta à rede, e não ao destino diretamente.
Uma grande vantagem dessa tecnologia é permitir a conexão direta entre todas as redes remotas de uma empresa que estão conectadas à rede Frame Relay. Se o número de filiais é muito grande e elas precisam se comunicar constantemente, utilizar enlaces ponto a ponto seria muito complicado.
Apesar dessas características, como em muitas empresas o número de filiais não é tão grande, ou o fluxo de comunicação é, em sua maior parte, entre cada filial e a matriz, a maior parte das empresas preferem utilizar enlaces ponto a ponto.
	Outras tecnologias (ATM e Token Ring)
	Como o Ethernet não oferece nenhuma garantia de que os quadros serão entregues, nem o tempo em que os quadros são entregues, surgiram diversas outras tecnologias de rede visando principalmente suprir essas deficiências. Entretanto, a simplicidade do Ethernet, o baixo custo, e o bom desempenho, entre outros fatores, mantiveram essa tecnologia como a mais usada até hoje.
As redes ATM foram criadas visando fornecer suporte a aplicações que precisam de QoS, como é o caso da transmissão de voz e vídeo. Porém, como os seus quadros (chamados células) são de tamanho muito pequeno, acabaram não se mostrando muito eficientes para a transmissão de pacotes IP.
Uma outra tecnologia de rede foi a Token Ring, que utilizava uma topologia em anel. Nessas redes, o método de controle de acesso ao meio consistia de passagem de permissão, que era um quadro especial que ficava sendo repassado de estação para estação. Quem estivesse de posse desse quadro transmitia seu quadro de dados e em seguida enviava a permissão novamente na rede. Embora essas redes proporcionem um certo determinismo no tempo em que os quadros são entregues, o gerenciamento do quadro de permissão introduz uma certa complexidade à rede.
	Resumo
	Nesta aula, você viu que existem diversas outras tecnologias de rede além do Ethernet. Aqui, você estudou detalhadamente o padrão 802.11, que consiste de uma rede sem fio onde normalmente se utiliza um (ou mais) Ponto de Acesso (AP) no qual as estações dos usuários se associam. Você aprendeu que o protocolo de controle de acesso do 802.11 se chama CSMA/CA, e que devido a impossibilidade de detectar as colisões nessas redes, ele procura que elas aconteçam.  Viu também a utilização dos quadros RTS e CTS para resolver o problema das estações escondidas. Ainda sobre o 802.11, aprendeu que embora tenha sido criado para conexões multiponto, pode ser utilizado como enlace ponto a ponto para interligar redes remotas. Também conheceu brevemente outras tecnologias sem fio, como Bluetooth, WiMAX e as redes de telefonia celular, e outras tecnologias para redes cabeadas, como o ATM e o Token Ring. Além disso, estudou que os protocolos PPP e HDLC são utilizados para enlaces ponto a ponto.
		Autoavaliação
	 
	1. Quais são os tipos de quadros utilizados em uma rede 802.11?
	2. O que é um Beacon e em que tipo de quadro ele é enviado?
	3. Qual a relação entre o campo Duração de um quadro 802.11 e o NAV?
	4. Quais as camada físicas suportadas pelo 802.11 e quais suas velocidades?
	5. Quais os protocolos que podem ser utilizados em um enlace ponto a ponto ligando os roteadores da matriz de uma empresa com sua filial?
	 
	 
	
	Aula 8 - Arquitetura Internet – Parte I 
	
	
	Apresentação
	Na Aula 6, falamos que a Internet utiliza a pilha de protocolos TCP/IP e mostramos os principais protocolos de cada camada. Você deve lembrar que na camada de rede existe apenas um protocolo que é o protocolo IP (Internet Protocol). Nesta aula, você vai aprender como esse protocolo funciona e porque ele é a parte principal da arquitetura da Internet.
		
	Objetivos
	 
	Ao final desta aula, você será capaz de: 
compreender porque a Internet consegue interligar redes por todo o mundo;
entender como uma empresa pode se ligar à Internet;
entender o que é um provedor de acesso à Internet;
entender como é o esquema de endereçamento do protocolo IP.
	 
	Arquitetura da Internet 8.1
	O objetivo da arquitetura TCP/IP é permitir que todas as redes consigam se comunicar independentemente de sua tecnologia, ou seja, que todas elas juntas formem uma única rede. Como a camada de rede é a responsável pela tarefa de encaminhar os pacotes entre as diversas redes, para que essa comunicação pudesse ocorrer, a estratégia utilizada foi simplesmente fazer com que todos os equipamentos utilizassem um único protocolo na camada de rede – o protocolo IP. Vamos aprender um pouco mais sobre esses protocolos?
	Protocolos 8.1.1
	Para que duas máquinas possam se comunicar, além do protocolo IP na camada de rede, elas precisam utilizar os mesmos protocolos nas camadas de transporte e aplicação (lembre-se de que a partir de agora estamos falando do modelo TCP/IP e não do modelo OSI, e por isso não citamos as camadas de sessão e apresentação). Entretanto, como durante uma transmissão essas camadas são utilizadas apenas na máquina do transmissor e do destino da mensagem, esses protocolos não precisam estar instalados em todos os equipamentos no caminho entre essas duas máquinas.
Já falamos várias vezes que a Internet é apenas uma grande rede formada pela interligação de diversas redes espalhadas por todo o mundo. Agora, você pode acrescentar a essa definição o fato de que todas essas redes utilizam a pilha de protocolos TCP/IP. Portanto, todas as máquinas (e todos os roteadores)utilizam o protocolo IP na camada de rede.
		 
	O IP atualmente funciona em duas versões, a versão 4 que é comumente conhecida apenas como IPv4, e a versão 6, que também é abreviada, sendo chamada apenas de IPv6. Nesse material, iremos nos referir ao IPv4 apenas, pois ainda é a versão mais utilizada mundialmente.
	 
	Backbones 8.1.2
	Suponha que você é o responsável pela área de informática de uma empresa e o seu chefe lhe pede para conectar a rede da empresa à Internet. O que você faria? O que significa realmente se conectar à Internet? Como a Internet é apenas um conjunto de diversas redes, se conectar à Internet é apenas se conectar a outra rede que já está conectada à Internet. Tecnicamente, isso é praticamente a mesma coisa de conectar as redes da matriz e da filial de uma empresa, pois são utilizados os mesmos equipamentos, protocolos e tipos de link. A questão é: “Qual é essa outra empresa à qual eu devo me conectar e que já esteja interligada à Internet?” 
Embora se fale que a Internet não tem dono, isso não significa que não existe nenhum tipo de organização. Em cada país, existem empresas encarregadas de formar backbones1 cobrindo parte do país, aos quais outras empresas podem se conectar. Algumas empresas se conectam a um backbone apenas para que ela própria tenha acesso à Internet, enquanto outras se conectam para venderem o serviço de acesso à Internet para outras empresas (e pessoas). Veja que, nesse último caso, essas empresas atuam como intermediárias e se chamam de provedores de acesso à Internet, ou, simplesmente, provedor. A Figura 1a ilustra o primeiro caso e a Figura 1b mostra o exemplo de um provedor. Vamos representar os roteadores por um “círculo” azul com setas brancas. 
1 O backbone (traduzido do inglês, como "espinha dorsal") é uma rede principal por onde passam os dados dos clientes da Internet.
	
	Figura 1 – a) Empresa conectada a um backbone para uso próprio. b) Provedor de acesso à Internet. 
Fonte: autoria própria.
	Podemos citar como alguns dos principais backbones nacionais os seguintes: Rede Nacional de Pesquisa - RNP <http://www.rnp.br>, Embratel <http://www.embratel.com.br> e Oi/Telemar <http://www.oi.com.br>. Esses backbones possuem ligações entre si, ou seja, as suas redes são interligadas em vários pontos dentro do Brasil. Essas conexões são chamadas pontos de troca de tráfego. Além disso, esses backbones nacionais possuem ligações com backbones de outros países, principalmente dos Estados Unidos e de países da Europa.
		
	Atividade 1
	 
	 
	 
	1. Acesse o site de uma ou mais das empresas citadas acima e observe a topologia de sua rede e as velocidades dos links. Você verá que por se tratar de WANs não existe uma topologia bem definida, como barra estrela ou anel. Identifique também as conexões internacionais.
	 
	 
	
Provedores de Acesso
	Você viu que quando nos referimos a ter uma conexão com a Internet isso significa que precisamos ter uma conexão com um dos backbones do país e que essa conexão pode ser direta entre nossa empresa e o backbone, ou indireta, onde nossa empresa se liga a um provedor de acesso que por sua vez está ligado ao backbone. Sendo assim, por que você acha que alguém iria preferir se ligar ao backbone através de um intermediário (provedor) ao invés de se ligar diretamente?
Observe que um provedor pode ter como cliente outra empresa ou uma pessoa, como você, que deseja ter acesso à Internet a partir de sua casa. Os provedores de acesso surgiram em 1995 quando foi liberada a comercialização do acesso à Internet no Brasil. Antes disso, apenas as universidades e outras instituições de pesquisa tinham acesso à essa rede. Nessa época, as operadoras de backbone não tinham autorização para atenderem diretamente pessoas, ou seja, seus clientes tinham que ser empresas. Desse modo, o principal serviço dos provedores era fornecer acesso à Internet para a residência dos usuários, utilizando conexões discadas através das linhas telefônicas. Mesmo após as operadoras de backbone terem a liberação de fornecerem serviços aos usuários finais, esse tipo de atividade ainda continuou sendo dominado pelos provedores de acesso que passaram a utilizar tecnologias mais modernas que o acesso discado, como redes de TV a Cabo, xDSL e redes sem fio, para fazer a conexão entre a residência do usuário e o provedor. Criar e manter esse tipo de infraestrutura de rede de acesso não é o foco de negócio das operadoras de backbone.
Voltando a nossa pergunta, você sabe que uma pessoa vai sempre se ligar à Internet através de um provedor de acesso. Mas, e uma empresa, deve se ligar através do provedor ou diretamente ao backbone?
Como você pode observar na Figura 1b, um provedor tem vários clientes. Portanto, o link de conexão entre o provedor e o backbone será compartilhado por todos eles. Desse modo, quando se contrata um link de uma velocidade X com o provedor, isso não significa necessariamente que você terá essa velocidade também para o acesso à Internet. Uma coisa é a velocidade do link entre você e o provedor, outra é quanto da capacidade do link entre o provedor e o backbone estará disponível para você. Veja que não estamos falando que os provedores não agem de forma correta. Eles podem manter essas duas velocidades iguais, por exemplo, garantindo que a velocidade da conexão dele com o backbone é maior ou igual à soma das velocidades das conexões de todos os seus clientes. A Figura 2 mostra tal situação, em que a capacidade do link Z é maior ou igual à soma dos links A,B,C e D. Alguns provedores podem não manter essa relação para baratear o preço oferecido aos clientes. Mas, isso não significa necessariamente que alguém saia prejudicado, porque embora os clientes contratem um link com uma velocidade X, provavelmente, eles não utilizam essa capacidade 24 horas por dia.
	
	Figura 2 – Proporção entre o link do provedor e os links oferecidos aos seus clientes. Fonte: autoria própria.
	Dessa discussão, a resposta para a pergunta anterior é que o provedor de acesso pode sim ser a melhor escolha para uma empresa se ligar à Internet, pois ele pode oferecer preços mais vantajosos, com uma eventual penalização no desempenho. Deve-se apenas tomar cuidado com a velocidade real que vai ser oferecida no acesso à Internet. Além disso, junto com o serviço de conexão, os provedores podem oferecer pacotes de serviços, como hospedagem de páginas Web e servidores de e-mail, que muitas vezes são bastante interessantes para as empresas, pois reduzem o custo que ela teria para manter esses serviços em suas próprias instalações.
		 
	Você viu que ligar uma empresa à Internet, tecnicamente, é a mesma coisa de ligar uma matriz e uma filial. Porém, o preço desses dois tipos de ligação são bem diferentes! A questão é que o preço da ligação à Internet, além de considerar a conexão entre duas empresas, deve incluir o custo de usar o link Internet da outra (seja o provedor de acesso ou a própria empresa de backbone). 
	 
	Características do protocolo IP
	O protocolo IP utiliza comutação de pacotes para realizar o encaminhamento das informações. Uma vez que você já estudou na aula 4 como funcionam as redes baseadas em comutação por pacotes, já deve saber muito sobre o funcionamento do IP. Assim sendo, vamos descrever brevemente algumas das características do protocolo IP.
As informações a serem transmitidas são divididas em partes e colocadas em pacotes, os quais contêm, entre outras informações de cabeçalho, o endereço da máquina que gerou a informação e o endereço da máquina para quem ela é destinada.
Os pacotes destinados a uma máquina em uma rede diferente da máquina que o gerou são enviados inicialmente para o roteador da rede de origem. São transmitidos, então, de roteador em roteador, até atingirem a rede de destino, quando são entregues á máquina de destino. Esse processo se chama roteamento.
O roteamento de cada pacote é feito independentemente dos demais pacotes. Portanto, caso uma máquinaA envie 1.000 pacotes para uma máquina B, cada roteador no caminho entre A e B ao receber o pacote para ser encaminhado irá calcular a rota (próximo roteador no caminho) como se nenhum outro pacote entre A e B houvesse passado por ali antes. Como consequência disso, cada pacote pode seguir um caminho diferente.
O protocolo IP não garante que os pacotes serão entregues nem que os que forem entregues serão entregues na ordem em que foram transmitidos. Portanto, o protocolo IP passa os pacotes (apenas a parte de dados do pacote) para a camada de transporte na ordem em que são recebidos.
Cada pacote transmitido pode demorar um tempo diferente do pacote anterior. Ou seja, o IP não oferece nenhuma garantia sobre o atraso que cada pacote sofre ao longo do caminho.
	Formato do Quadro IP
	Você sabe que cada camada da pilha de protocolos adiciona seus próprios cabeçalhos, e com o protocolo IP, que implementa a camada de rede, não seria diferente. A Figura 3 mostra os campos do cabeçalho de um pacote IP (ou datagrama IP). O pacote evidentemente ainda possui um campo de dados após esse cabeçalho que irá conter as informações recebidas da camada de transporte.
	
	Figura 3 – Formato do pacote IP.
	A seguir, faremos uma breve descrição sobre cada um dos campos. 
Versão - Este campo indica a versão do protocolo IP sendo utilizado. Atualmente, a maioria das redes utiliza a versão 4 do protocolo, mas já existe a versão 6, que um dia irá substituir a versão 4.
HLEN (Header Len – tamanho do cabeçalho) - Conforme o nome já sugere, o campo opções pode ser utilizado para incluir campos opcionais no cabeçalho. Mas, muitas vezes ele não é utilizado. Isso faz com que o tamanho do cabeçalho seja variável. Desse modo, o HLEN contém o tamanho do cabeçalho em palavras de 32 bits. Ou seja, multiplique o valor de HLEN por 4 para obter o tamanho do cabeçalho IP em bytes. O tamanho máximo do cabeçalho IP é 60 bytes, mas observe que sem as opções ele possui 20 bytes.
TOS (Type of Service – tipo de Serviço). Para compensar o fato de que o protocolo IP utiliza comutação de pacotes, e, portanto, não garante taxa constante de transmissão, esses bits indicam o tipo de dados contidos no pacote e com isso os roteadores podem dar prioridades na hora de encaminhá-los. Os pacotes podem, por exemplo, serem marcados solicitando prioridade, requerendo assim um baixo atraso, uma alta vazão ou maior confiabilidade durante sua transmissão.
Tamanho - Esse campo indica o tamanho em bytes do pacote IP (incluindo o cabeçalho e os dados) e como possui 16 bits significa que o tamanho máximo é 65.535 bytes. Na prática, o tamanho da maioria dos pacotes não ultrapassa os 1500 bytes. 
Identificação, Flags e Fragmentação - Esses três campos são utilizados para realizarem a fragmentação dos pacotes IP, os quais estudaremos mais a frente nesta aula.
TTL (Time To Live – tempo de Vida) - Caso ocorra algum problema no roteamento, um pacote pode ficar circulando eternamente na rede. Para evitar que isso ocorra, esse campo contém um contador que vai sendo decrementado ao passar por cada roteador. Quando chega a zero, o roteador o descarta. Tipicamente, quem gera o pacote coloca o valor 255 nesse campo. Observe que não se utiliza realmente nenhuma medição de tempo para realizar essa função.
Protocolo - Esse campo indica o protocolo da camada de transporte para o qual a parte de dados do pacote deve ser passada quando chegar ao destino. Evidentemente, o protocolo indicado será o mesmo utilizado na origem. Veja que esse código só é analisado na máquina de destino, pois não tem nenhuma utilidade para os roteadores no caminho. Existem códigos padronizados para cada protocolo de transporte. O do TCP é 6 e do UDP é 17. A função desse campo é a mesma do campo de tipo do quadro Ethernet: indicar o protocolo da camada superior (no caso rede), que deve receber a parte de dados do quadro.
Checksum do cabeçalho - Esse campo tem a mesma função do CRC (Cyclic Redundancy Check - Verificação de Redundância Cíclica) nas redes Ethernet, ou seja, identificar erros. Entretanto, existem duas diferenças principais em relação ao CRC. A primeira é que o cálculo do checksum é feito apenas sobre os bytes do cabeçalho, a parte de dados não é considerada. A segunda diferença é que o algoritmo utilizado aqui é muito mais simples. Basicamente, ele agrupa cada dois bytes do cabeçalho como um número e soma esses números utilizando complementos aritméticos de 1. A razão para essas diferenças é acelerar o cálculo do checksum, uma vez que ele precisa ser recalculado em cada roteador do caminho, já que alguns campos do cabeçalho são alterados, como é o caso do TTL. Além disso, a parte de dados do pacote normalmente já é protegida contra erros pelos protocolos de transporte, que incluem seus próprios checksum.
Endereço IP de Origem - Contém o endereço IP da máquina que gerou o pacote. Esse campo não é alterado ao longo do caminho entre a origem e o destino.
Endereço IP de destino - Contém o endereço IP da máquina de destino. Esse campo não é alterado ao longo do caminho entre a origem e o destino.
Opções - São campos opcionais com a finalidade de depuração e testes, mas que normalmente não são utilizados.
		 
	Veja que, embora a Figura 3 mostre o cabeçalho com várias linhas, lembre-se de que ele na verdade é uma sequência de bytes. Portanto, um pacote IP é composto pelos bytes de todos os campos do cabeçalho, seguidos pelos bytes da parte de dados.
	 
	Princípios de roteamento
	Agora que você já viu como é a arquitetura da Internet, e entendeu que ela nada mais é do que uma interligação de várias redes menores somando-se até atingir níveis globais, aproveitamos para fazer uma pergunta: você sabe quem é o responsável por fazer a interligação dessas redes? Espero que sim, pois já falamos ao longo desta disciplina e também desta aula. É o roteador que atua na camada de rede do modelo OSI. 
Vamos então começar a entender em mais detalhes como esse processo de encaminhamento dos pacotes ocorre. Você viu na Figura 1 da nossa Aula 5 como as camadas tratam suas PDUs (Unit Protocol Data - Unidade de Dados do Protocolo). Lá vimos que em um host2 que está transmitindo, à medida que a informação vem descendo nas camadas, a camada inferior vai encapsulando a PDU que ela recebe da camada superior. Assim, teremos que na camada de rede vão estar os dados que já foram encapsulados por cada uma das camadas superiores, e esta, por sua vez, acrescenta o cabeçalho IP, gerando a PDU da camada de rede. Essa PDU, que se chama pacote IP, é passada à camada de enlace para ser encapsulada em um quadro (PDU da camada de enlace) e transmitida até o próximo roteador do percurso a ser percorrido até o destino. 
Mas, agora surge outra pergunta: como um roteador sabe para qual dos vários roteadores existentes na rede ele deverá enviar o quadro? Em cada roteador, existe uma tabela, chamada de tabela de roteamento, que é consultada na hora em que o quadro chega ao roteador, para que seja determinado qual será o próximo roteador, para onde o quadro deverá ser enviado. 
Como seria impossível ter uma entrada nessa tabela para cada possível máquina da Internet, o esquema de endereçamento IP (que você vai estudar na próxima sessão) agrupa todas as máquinas de uma rede física em uma mesma rede IP, e atribui um endereço a essa rede. Desse modo, as tabelas de roteamento contêm entradas para as redes onde as máquinas estão, ao invés de uma entrada para cada máquina individual. Assim, com apenas uma entrada na tabela, é possível localizar todas as máquinas de uma mesma rede. 
Quando um roteador recebe um pacote, ele verifica em sua tabela de roteamento à qual das redes o endereço IP de destino do pacote pertence, e encaminha o pacote para o roteador indicado. Esse processo de consulta nas tabelas vai acontecendo roteador a roteador (hop-by-hop) até que o quadro chegue ao destino. A Figura 4 mostra uma tabela de roteamento simplificada. Na próxima aula, você verá que ela contém mais alguns campose aprenderá exatamente como verificar se um endereço pertence a uma dada rede. 
2 Qualquer máquina ou computador conectado a uma rede.
	
	Figura 4 – Tabela de roteamento
	Observe que as informações que são transmitidas são quadros da camada de enlace (transmitidos como bits pelo nível físico). Esse quadros vão sendo passados de roteador para roteador (pode haver vários entre a origem e o destino) até chegar ao destino. Cada roteador “abre” o quadro e obtém um pacote IP, uma vez que trabalham na camada de rede. Após analisar o pacote IP e consultar sua tabela de roteamento, o roteador coloca o pacote em outro quadro e o envia para o próximo roteador. 
Entretanto, temos um problema. A tabela de roteamento identifica o próximo roteador pelo seu endereço IP, mas precisamos do endereço MAC (Media Access Control - Controle de Acesso ao Meio) de sua placa de rede para podermos enviar um quadro para ele. Portanto, alguém tem que descobrir o endereço MAC de uma placa a partir do seu endereço IP. Quem faz essa tarefa é um protocolo conhecido como ARP (Address resolution Protocol) o qual iremos estudar na próxima aula.
	Endereçamento
	Vamos falar agora de uma das partes mais interessantes da camada de rede, que é o endereçamento IP. Entender de endereçamento IP é fundamental porque quando se cria uma rede em uma empresa, normalmente se divide essa rede em várias redes menores, e é necessário decidir como distribuir os endereços. Além disso, a forma como os endereços são distribuídos tem um impacto direto em como o roteamento vai ser realizado. Um esquema de endereçamento bem feito simplifica muito a tarefa de configuração do roteamento e permite que essa tarefa seja feita de forma mais eficiente. 
Dando continuidade, temos que na Internet os hosts conseguem se comunicar, graças aos endereços IPs atribuídos a cada host que fizer parte da rede. Esse endereço identifica individualmente cada host na rede. Os endereços IPs, são compostos por duas partes distintas: a parte que identifica a rede a qual o host faz parte e a parte que identifica o próprio host. Naturalmente, a parte de rede dos endereços de todas as máquinas de uma mesma rede IP é igual. Alguns exemplos de endereços IPs são: 10.1.1.3, 173.10.10.21 e 200.241.100.10. 
Percebam que os IPs são formados por quatro octetos, cada um contendo 8 bits, o que dará um tamanho de 32 bits. Existem, portanto, 232 possíveis endereços. Veja também que os números são representados no formato decimal separados por um ponto a cada octeto. Devemos salientar que os números IPs são representados nesse formato decimal para facilitar a nossa vida na hora de lembramos os endereços, mas na prática os computadores trabalham com todos esses números no formato binário. Assim, os endereços citados acima ficariam no formato binário mostrado na Figura 5:
	
	Figura 5 – Formatos de endereços IP (Decimal e Binário)
	Dissemos que o endereço IP tem uma parte que identifica a rede e uma parte que identifica a máquina. Quando se estava criando esse esquema de endereçamento, surgiu a seguinte questão: quantos bytes deixar para rede e quantos para as máquinas? Deixar muitos bytes para rede significa que poderiam existir muitas redes, mas que elas teriam poucas máquinas. Deixar muitos bytes para máquinas permite redes grandes, mas limita muito o número de redes existentes. A solução encontrada foi dividir todos os 232 possíveis endereços em classes onde cada classe tem um número de bytes diferentes para a parte de rede. Assim, conforme mostra a Figura 6, foram criadas três classes de endereçamento chamadas de classe A, classe B e classe C. Além dessas, foi criada uma classe para utilização com aplicações multicast e outra classe que ficou reservada para uma utilização posterior.
	
	Figura 6 – Classes de endereços IP.
Fonte: autoria própria.
	Como podemos ver na Figura 6, cada classe aloca uma parte dos 32 bits para representar a rede e o restante para host (máquina). Essa quantidade de bits significará o total de redes e máquinas que poderemos ter em cada classe. O cálculo para descobrirmos a quantidade de redes e máquinas que teremos em cada classe é feito baseado no sistema binário. Assim, na classe A, temos 8 bits alocados para representar a rede (espaço em amarelo), porém, como visto na Figura 6, o primeiro bit é definido para zero, logo, restam sete bits, o que resulta em 128 redes possíveis (27 combinações que será igual a 128) e 24 bits para máquinas (224 combinações que é igual a 16.777.216). A quantidade de redes e de hosts de cada classe está citada na tabela a seguir.
A Figura 7 mostra os intervalos dos IPs de cada classe:
	
	Figura 7 – Classes de endereços IP
	Endereços reservados - Existem classes de endereços chamadas de classes especiais que não podem ser usadas em computadores na Internet e são reservadas. Como exemplo, temos a classe formada pelos endereços de 127.0.0.0 a 127.255.255.255, que é usada para testes na máquina local, e as redes 10.0.0.0 (classe A), 172.16.0.0 (classe B) e 192.168.0.0 (classe C), que são usadas em redes privadas (as redes das empresas ou que usamos em casa e que não são ligadas à Internet diretamente). 
Como você viu, o endereço IP identifica individualmente um host na rede, qualquer host que faça parte dessa rede física precisa ter um endereço IP para poder se comunicar, seja essa rede do tipo Token Ring, Ethernet etc.
		
	Atividade 2
	 
	 
	 
	1. Faça uma pesquisa e liste as classes de endereços reservadas e para que foram reservadas.
	 
	 
	 
	Sub-Redes
	Você já sabe que o endereço IP é dividido em uma parte para identificar a rede e outra para identificar a máquina, e que isso foi feito para permitir que os roteadores precisem ter rotas apenas para as redes e não para as máquinas individualmente. Desse modo, todos os endereços de uma rede IP precisam ser utilizados na mesma rede física. Ou seja, se você tiver duas redes físicas, você precisa de duas redes IP. 
Antes de continuarmos, queremos saber se está claro para você o que é uma rede física. Para responder, lembre-se de que o roteador é o delimitador de uma rede, portanto, não importa quantos switches e hubs estejam interligados, todas as máquinas interligadas por eles formam uma única rede física. Agora, se você tiver dois laboratórios, cada um com 50 máquinas interligadas através de dois switches e dois hubs, e tiver um roteador interligando esses dois laboratórios, você terá duas redes físicas.
Suponha então que você tem a sua disposição a rede de classe B 150.1.0.0 para utilizar nos laboratórios. Como a classe B utiliza dois bytes para a parte de máquinas, você tem 216 endereços disponíveis, ou seja, 65.535 endereços. Se você tem apenas 100 máquinas, parece que o problema é simples. Acontece que todos os seus endereços IP são da mesma rede IP e precisam ser utilizados na mesma rede física. Ou seja, dos 65.535, você vai utilizar 50 endereços em um laboratório e vai deixar sem uso todos os outros. Mesmo que sua rede fosse classe C, você ainda desperdiçaria aproximadamente 200 endereços. 
Como você pode observar, mesmo o esquema de classes A, B e C não foi suficiente para evitar o desperdício de endereços. Para reduzir esse problema, foi criado o conceito de máscara de rede, que permite dividir uma faixa de endereços IP (endereços de uma rede IP) em várias sub-redes menores. De modo geral, a máscara de rede permite uma flexibilidade ao esquema das classes, pois permite utilizarmos quantos bits desejarmos para a parte de rede (e consequentemente para a parte de máquina).
Máscara de Rede - Uma máscara de rede ou como também pode ser chamada, net mask,é um número de 32 bits separados em quatro octetos, em geral, representado no formato decimal pontilhado (quatro conjuntos de números que variam entre 0 e 255) e que é usada para que possamos identificar a porção de rede e de host de um endereço IP da rede. A máscara possui 1 nos bits da parte de rede e 0 nos bits da parte de máquina. Cada classe tem sua máscarapadrão, conforme mostrado na Figura 8.
	
	Figura 8 – Classes de Rede com as máscaras padrão.
	A máscara permite identificar a rede a qual um endereço IP pertence. Para isso, basta realizar a operação AND binário entre o endereço IP e a máscara. O resultado, que terá 4 bytes, é o endereço de rede. Observe que tudo que essa operação faz é colocar 0 em todos os bits na parte de máquina do endereço IP e manter os valores dos bits relativos à parte da rede.
	Mascara de sub-rede
	Muitas vezes, podemos querer dividir a nossa rede (de uma empresa, por exemplo) em várias redes menores (lembre-se do problema dos dois laboratórios que citamos anteriormente). Esse processo chama-se criação de sub-redes, que trará como benefício um tráfego de rede reduzido, administração simplificada e melhor desempenho da rede.
Vamos dá um exemplo do uso de máscara de rede e também de criação de sub-redes.
Suponha que você tenha uma empresa formada por quatro setores (atendimento, suporte, financeiro, gerência) e que lá exista uma única rede de computadores que usa uma das faixas de endereços reservadas para rede privada: a rede 192.168.1.0/24 (uma rede de classe C). O /24 é outra forma de representar a máscara 255.255.255.0, pois ele indica o numero de bits 1 na máscara. Essa rede com essa máscara é composta dos seguintes endereços: 192.168.1.0 até o 192.168.1.255, ou seja, 255 IPs. Porém, não poderemos usar nem o primeiro nem o último endereço (192.168.1.0 e o 192.168.1.255), pois eles são usados para representar a própria rede e o endereço de broadcast, respectivamente. Mas, o que isso significa? Bem, o endereço de rede identifica toda a rede, conforme já falamos anteriormente, ou seja, todos os hosts da rede, e o endereço de broadcast é usado quando se deseja enviar informações para todos os hosts na rede.
Com o passar do tempo, você decide separar a sua rede por setor, fazendo com que cada setor tenha sua própria rede. Então, como faremos essa divisão? Bem, nós precisaremos modificar a máscara de rede. Como você viu na Figura 8, uma rede de classe C, tem na sua máscara padrão, 24 bits definidos como 1 em binário, o que em decimal seria: 255.255.255.0. Para criarmos as sub-redes, precisaremos pegar alguns bits da parte de host e colocarmos na parte de rede. Na literatura, é com comum usar o termo “pegar emprestado” bits para criarmos as sub-redes. Mas, como saberemos quantos bits são necessários? Veja, se pegarmos um bit faremos 21 = 2 sub-redes, se pegarmos 2 bits faremos 22 = 4 e se pegarmos 3 bits teremos 23 = 8 sub-redes e assim por diante. No nosso exemplo, como queremos criar 4 sub-redes, devemos pegar 2 bits da parte de host, que antes tinha 8 bits para endereçar os hosts dando um total de 256 endereços, agora, ficará apenas com 6 endereços, e a máscara de rede que tinha 24 bits definidos em 1 ficará agora com 26. Na Figura 9, a parte na cor cinza representa a parte de rede do endereço IP, a parte verde representa as 4 sub-redes possíveis usando dois bits e a parte amarela é a parte usada para endereçar os hosts de cada sub-rede. Como temos 6 bits, teremos um total de 26 Ips por sub-rede, mas lembre-se de que não podemos usar nem o primeiro nem o último IP de cada sub-rede, conforme mostramos antes, por se tratarem do endereço de rede e de broadcast. 
	
	Figura 9 – Sub-redes (representação em binário e em decimal). 
Fonte: autoria própria.
	A Figura 10 mostra as variações de IPs possíveis, representados em decimal, para cada sub-rede. Os números em azul representam as 4 sub-redes. Lembre-se de que cada endereço de rede tem 4 bytes, de modo que os endereços das subredes são: 192.168.1.0, 192.168.1.64, 192.168.1.128 e 192.168.1.192. Observe também que cada rede agora tem apenas 64 endereços (incluindo os de rede e broadcast). Isso é natural, pois criar as subredes não aumenta os endereços disponíveis.
 
	
	Figura 10 – Endereços das 4 sub-redes em decimal
		
	Atividade 3
	 
	 
	 
	1. Suponha que você tenha a seguinte rede classe C: 192.168.100.0/24 e quer dividi-la em 8 sub-redes. Sendo assim, responda as questões a seguir. 
a. Quantos bits você precisará usar para criar as sub-redes?
b. Qual o endereço de rede e de broadcast de cada sub-rede?
c. Qual é a nova máscara de sub-rede?
	 
	 
	Quem fornece os endereços IP
	Até agora, não dissemos quais endereços você deve colocar na sua empresa ou na sua casa. Nós não podemos colocar os endereços que desejarmos nas nossas máquinas porque os roteadores na Internet precisam saber onde esses endereços estão, ou seja, o caminho para chegar a eles. Assim, grupos de endereços são distribuídos para cada país e ficam sob a responsabilidade de uma organização encarregada de fazer sua distribuição. Após isso, parte desses endereços são distribuídos para as operadoras de backbone do país, que por sua vez distribuem parte dos endereços recebidos para as empresas que se ligam a elas. Quando essa empresa é um provedor, ele repete o processo. Ou seja, distribui uma parte dos endereços dele para os seus clientes. Desse modo, quando você conecta no provedor, você recebe um dos endereços do provedor.
	Leitura complementar
	<http://pt.wikipedia.org/wiki/Endereço_IP>
Nesse site, você encontrará uma boa definição de endereçamento, classes de endereços Ips, além de outras informações.
<http://www.juliobattisti.com.br/artigos/windows/tcpip_p3.asp>
Este site faz uma introdução ao endereçamento IP e mostra como são feitos os cálculos em binário.
<http://www.subnet-calculator.com/>
<http://jodies.de/ipcalc>
Nos dois últimos endereços, você acessará ferramentas que auxiliarão nos cálculos para criação de sub-redes.
	Resumo
	Nesta aula, você aprendeu que a estrutura da Internet, na verdade, é formada pela interconexão de redes espalhadas pelo mundo. Todas as máquinas dessas redes, e os roteadores que as interligam, utilizam o protocolo IP na camada de rede. Vimos que em cada país existem empresas com redes de ampla cobertura geográfica (backbones) que podem fornecer acesso à Internet a outras empresas. Discutimos o esquema de endereçamento IP e vimos que um endereço IP possui uma parte que identifica a rede e outra que identifica as máquinas da rede. Você aprendeu também que os roteadores possuem tabelas que contêm informações a respeito das redes existentes e qual o próximo roteador no caminho para cada uma delas.
		Autoavaliação
	 
	1. Defina qual é a função de um provedor de acesso à Internet.
	2. Qual é a função das tabelas de roteamento nos roteadores?
	3. Para que serve a máscara de rede?
	4. Quantos hosts uma rede classe C com sua máscara padrão poderá endereçar?
	5. Suponha que você tem a seguinte rede: 19.168.100.0/24 e queira dividi-la em 6 sub-redes, responda: 
a. Qual será a nova máscara de rede?
b. Qual o endereço de broadcast da primeira e da última sub-rede?
c. Quantos bits da parte de host você usou para criar as sub-redes?
d. Como fica a nova máscara de rede no formato decimal?
	 
	
	Aula 9 - Arquitetura da Internet Parte II – Roteamento
	 
	
	Apresentação
	Na aula passada, você aprendeu como duas máquinas que utilizam o protocolo IP, e estão em uma mesma rede, se comunicam. Você estudou também que o protocolo IP utiliza comutação de pacotes e viu rapidamente que a comunicação entre máquinas que estão em redes diferentes requer o reencaminhamento dos pacotes através dos roteadores, em um processo que se chama roteamento. Nesta aula, você estudará o processo de roteamento em detalhes e aprenderá como as tabelas de roteamento são criadas e como realizar o projeto de endereçamento de modo a simplificar o roteamento.
		
	Objetivos
	 
	Ao final desta aula, você será capaz de: 
entender como duas máquinas em rede diferentes conseguem se comunicar;
compreender como os pacotes são reencaminhados pelos roteadores;
entender como as tabelas de roteamento são criadas e utilizadas.
	 
	Roteamento
	Em um projeto de rede, uma questão fundamentalé determinar a forma como os pacotes serão roteados da origem até o destino, pois as máquinas que se comunicam podem estar em rede distintas que são interligadas por outras redes. Esse roteamento de pacotes é baseado em tabelas que são configuradas dentro do roteador. Essas tabelas podem ser configuradas de forma estática pelo administrador de redes, que raramente se modificam, ou criadas dinamicamente através de programas que são executados em todos os roteadores da rede. A tabela é utilizada para cada pacote que chega ao roteador.
Quando falamos de roteamento, naturalmente pensamos logo em roteadores, mas lembre-se de que também precisamos entender como a camada de rede trabalha nas máquinas, ou seja, o que ela faz quando recebe um quadro da camada de transporte (máquina de origem) para ser enviado e quando recebe um quadro da camada de enlace (máquina de destino).
	Tabela de roteamento
	A tabela de roteamento funciona como um mapa que guia os roteadores para acharem a rede de destino. Na verdade, cada roteador isoladamente não precisa conhecer o caminho completo até cada rede de destino, basta que ele conheça o próximo roteador nesse caminho. Desse modo, os principais campos de uma tabela de roteamento são: endereço IP e uma máscara de rede (que juntos identificam a rede de destino), o endereço IP do próximo roteador no caminho para essa rede (chamado de Gateway), e a interface por onde enviar os pacotes para atingir o Gateway. Cada linha na tabela é chamada de uma rota.
Além das rotas para outras redes, a tabela de roteamento contém informações a respeito das redes às quais o roteador pertence. A diferença é que essas rotas não possuem Gateway, pois os pacotes precisam ser enviados diretamente para a o destino.
		 
	Embora estejamos falando de tabela de roteamento para roteadores, na verdade, qualquer equipamento IP tem uma tabela de roteamento, o que incluem as máquinas dos usuários. A diferença é que os roteadores encaminham pacotes que eles recebem, mas que não foram gerados por eles, enquanto as máquinas usam a tabela apenas para enviar pacotes gerados por elas mesmas.
	 
	Para redes pequenas e médias, as tabelas de roteamento podem ser criadas manualmente pelo administrador da rede, pois ele conhece a topologia da rede e sabe como todas elas estão interligadas. Para redes grandes, normalmente, é mais interessante utilizar um software que constrói a tabela automaticamente. Esse software é executado em cada roteador e faz com que eles troquem informações a respeito das redes à quais estão conectados. Com essas informações, o próprio roteador é capaz de criar sua tabela sozinho.  
	Rota padrão
	Lembre-se de que um roteador precisa ser capaz de encaminhar pacotes para qualquer rede na Internet. Desse modo, precisaria existir uma linha (entrada) na tabela de roteamento de cada roteador para cada rede existente na Internet. Isso evidentemente é impossível!  Para evitar essa situação, criou-se o conceito de rota padrão, que é uma rota que será utilizada quando não existir nenhuma rota na tabela de roteamento específica para a rede de destino do pacote. Essa rota especifica o IP do Gateway, que deve ser utilizado para esses casos e a interface por onde o Gateway é alcançado. Os campos de endereço de destino e a máscara são preenchidos com 0. 
Dada a rede da Figura 1, a tabela de roteamento da máquina1 e do roteador 1 são mostradas na Figura 2. 
	
	Figura 1 – Rede exemplo para tabelas de roteamento
Fonte: autoria própria.
	
	Figura 2 – Tabelas de roteamento para a) Máquina1 e b) Roteador1.
		 
	Quando você for configurar a tabela de roteamento de cada roteador de uma dada empresa, quais rotas deve colocar? Uma boa forma é identificar qual é o próximo roteador no caminho até o roteador que conecta a rede da empresa à Internet, e então cadastrar esse roteador na rota padrão. Daí coloque uma entrada na tabela para cada uma das outras redes da empresa cujo próximo roteador no caminho para ela é diferente do roteador padrão. Evidentemente, além dessas rotas, a tabela conterá rotas para as redes em que o roteador está diretamente conectado. Esse foi o procedimento utilizado para criar a tabela do roteador1, mostrada na Figura 2.
	 
	Consultando a tabela de roteamento
	Dissemos que a tabela de roteamento é utilizada para determinar como encaminhar cada pacote. Mas, como ela é realmente utilizada? A ideia é simples, para cada pacote o roteador percorre a tabela da primeira até a última linha e verifica se o endereço de destino pertence à rede indicada naquela rota. Essa verificação é feita aplicando-se a máscara (fazendo um AND binário entre os dois valores) de rede daquela linha da tabela ao endereço IP de destino do pacote e comparando se o resultado é igual ao valor do campo IP. Caso esse teste seja verdadeiro, o pacote é enviado para roteador indicado na coluna Gateway. Quando a coluna Gateway está vazia, é porque o destino faz parte de uma rede ligada ao roteador e o pacote deve ser entregue diretamente. Você verá como isso acontece em detalhes ainda nesta aula. Observe que o teste sempre será verdadeiro para a linha da rota padrão, pois a aplicação da máscara 0.0.0.0 em qualquer endereço IP terá como resultado 0.0.0.0 (pois se trata de um AND binário). Desse modo, se não houver nenhuma rota para a rede de destino do pacote, ele será encaminhado pela rota padrão.
Como exemplo, imagine que o roteador 1 da Figura 1 recebe um pacote IP com endereço de destino 10.1.4.3, que pertence à rede 3. Ele aplica a máscara da primeira linha da tabela (255.255.255.0) ao endereço de destino (10.1.4.3) e obtém como resultado 10.1.4.0. Ao comparar esse valor com o campo IP dessa linha (10.1.1.0), o teste é falso, pois são diferentes. Repete o processo para os valores da segunda linha. Ao aplicar a máscara daquela linha (255.255.255.0), obtém 10.1.4.0, que é diferente de 10.1.2.0. O processo se repete até que na linha 4, ao aplicar a máscara (255.255.255.0) e obter 10.1.4.0, ele verifica que esse valor é o mesmo do campo IP daquela linha. O pacote é então encaminhado através da interface 3 do roteador 1, para o roteador com IP 10.1.3.1 (roteador 2). Evidentemente, o processo se encerra e as demais linhas não são mais analisadas.
	Configuração IP de uma máquina
	Para que uma máquina funcione em uma rede TCP/IP, ela precisa ter a pilha de protocolos instalada (isso inclui os protocolos ARP, IP, ICMP, TCP e UDP). Normalmente, isso é feito quando se instala o Sistema Operacional. Os protocolos de aplicação não são obrigatórios e devem ser instalados os que se pretende utilizar. Evidentemente, não basta ter o software instalado, algumas coisas precisam ser configuradas para que a máquina funcione na rede. Pense um pouco, quais parâmetros você acha que precisam ser configurados?
Tudo que precisamos informar para que a máquina consiga enviar pacotes IP para outras máquinas é:
o endereço IP da máquina;
a máscara de rede;
a rota padrão;
como nós, pessoas, não vamos conseguir lembrar o endereço IP de todas as máquinas que acessamos, existe um serviço de rede que associa nomes (como www.metropoledigital.ufrn.br) ao endereço IP da máquina. Estudaremos esse serviço em outra disciplina, mas agora tudo que você precisa saber é que devemos informar o endereço IP da máquina que realiza essa tarefa de tradução. Esse parâmetro se chama servidor de nomes (ou servidor DNS).
	Analisando o roteamento em detalhes
	Nosso objetivo é entender como os pacotes são encaminhados entre duas máquinas. Existem, portanto, três cenários possíveis dependendo da localização de cada uma das máquinas, que são: i) máquinas na mesma rede; ii) máquinas em redes diferentes, mas ligadas ao mesmo roteador; iii) máquinas em redes diferentes, ligadas através de outras redes. 
Para nossos exemplos, vamos sempre assumir que as redes são todas Ethernet para simplificar o texto. Caso a rede fosse de outra tecnologia, como Token Ring, por exemplo, os quadros criados na camada de enlaceseriam, evidentemente, dessa outra tecnologia.
Cenário 1: máquinas na mesma rede
Quando as máquinas de origem e destino estão na mesma rede, conforme mostrado na Figura 3, a comunicação se dá de forma direta, ou seja, o roteador não é utilizado. 
	
	Figura 3 –Comunicação entre máquinas de uma mesma rede 
Fonte: autoria própria.
	Os seguintes passos são realizados para duas máquinas dessa rede se comunicarem.
Na máquina de origem, quando o pacote é passado da camada de transporte para a camada de rede, ela consulta sua tabela de roteamento e verifica que o endereço IP de destino do pacote está localizado na sua mesma rede (como possui uma interface nessa rede, a rota na tabela de roteamento é uma rota direta – não possui gateway). 
Traduz o endereço IP de destino para o MAC equivalente. Isso é feito através do ARP (Address Resolution Protocol). Portanto, caso o endereço IP não esteja na tabela ARP, uma nova mensagem ARP é enviada.
Cria um quadro Ethernet, colocando como endereço MAC de destino o endereço obtido no passo anterior, e na parte de dados do quadro o pacote IP. Após isso, envia o quadro (utilizando o protocolo de acesso ao meio do Ethernet – CSMA/CD).
Quando a placa de rede da máquina destino recebe o quadro, ela verifica se o endereço MAC de destino é o seu. Como é o caso, ela recebe o quadro, retira o conteúdo da parte de dados (que é o pacote IP) e o passa para a camada de rede. Lembre-se de que ela sabe que o conteúdo é um pacote IP por causa do campo de tipo do quadro Ethernet, que contém o código do protocolo IP.
A camada de rede da máquina destino analisa o pacote IP e verifica se o endereço IP de destino é igual ao seu endereço.  Se for, ela repassa o conteúdo da parte de dados do pacote IP para a camada indicada no campo de protocolo do pacote IP. Tipicamente será a camada de transporte TCP ou a UDP. Quando o endereço de destino não for o da própria máquina (normalmente isso não vai acontecer), ela descarta o pacote – pois essa máquina não está atuando como um roteador. 
Normalmente, a máquina de destino vai enviar alguma informação de volta à máquina de origem (pense que a origem é você e o destino é um servidor web a quem você pediu uma página). Desse modo, todo o processo se repete, apenas invertendo as funções de quem é a origem e quem é o destino.
Cenário 2: máquinas em redes diferentes, mas ligadas ao mesmo roteador
Vamos agora discutir como ocorre a transmissão de pacotes quando existem duas redes interligadas por um mesmo roteador, conforme mostrado na Figura 4.
	
	Figura 4 – Roteamento entre duas redes vizinhas
Fonte: autoria própria.
	Assuma que a tabela de roteamento de cada máquina possui apenas uma entrada para a rede a qual está ligada e a rota default (que aponta para o roteador). Os passos a seguir são realizados.
Na máquina de origem, quando o pacote é passado da camada de transporte para a camada de rede, ela consulta sua tabela de roteamento e verifica que o endereço IP de destino do pacote NÃO está localizado na sua mesma rede (pois NÃO possui uma interface nesta rede), então, irá utilizar a rota default. Para isso, é preciso ler o endereço IP indicado como gateway na rota default (vamos chamá-lo de IPgateway). 
Traduz o endereço IPgateway para  o MAC equivalente. Isso é feito através do ARP, como você já estudou. Portanto, caso o endereço IP não esteja na tabela ARP, uma nova mensagem ARP é enviada.
Cria um quadro Ethernet, colocando como endereço MAC de destino o endereço obtido no passo anterior e na parte de dados do quadro o pacote IP. Após isso, envia o quadro (utilizando o protocolo de acesso ao meio do Ethernet – CSMA/CD).
Quando a placa de rede do roteador recebe o quadro, ela verifica se o endereço MAC de destino é o seu. Como é o caso, ela recebe o quadro, retira o conteúdo da parte de dados (que é o pacote IP) e o passa para a camada de rede. 
O roteador então reinicia o processo, como se ele mesmo tivesse gerado o pacote. Desse modo, consulta sua tabela de roteamento e verifica que o endereço IP de destino do pacote está localizado em uma das redes à qual está conectado (como o roteador possui uma interface nessa rede, a rota na tabela de roteamento é uma rota direta – não possui gateway).
Como o destino está na mesma rede do roteador, ele pode enviar o quadro diretamente. Desse modo, traduz o endereço IP de destino do pacote para o MAC equivalente. Isso é feito através do ARP. Portanto, caso o endereço IP não esteja na tabela ARP, uma nova mensagem ARP é enviada.
O roteador cria um quadro Ethernet, colocando como endereço MAC de destino o endereço obtido no passo anterior, e na parte de dados do quadro o pacote IP. Após isso, envia o quadro (utilizando o protocolo de acesso ao meio do Ethernet – CSMA/CD) pela interface indicada na rota da tabela de roteamento. Veja que essa interface por onde o quadro é enviado será uma interface diferente da que foi recebida. 
Quando a placa de rede da máquina destino recebe o quadro, ela verifica se o endereço MAC de destino é o seu. Como é o caso, ela recebe o quadro, retira o conteúdo da parte de dados (que é o pacote IP) e o passa para a camada de rede. 
A camada de rede da máquina destino analisa o pacote IP e verifica se o endereço IP de destino é igual ao seu endereço.  Se for, ela repassa o conteúdo da parte de dados do pacote IP para a camada indicada no campo de protocolo do pacote IP. Tipicamente será a camada de transporte TCP ou a UDP. Do mesmo modo que no cenário 1, quando o endereço de destino não for o da própria máquina (normalmente isso não vai acontecer), ela descarta o pacote – pois essa máquina não está atuando como um roteador. 
		 
	Uma coisa importante que você deve observar é que o endereço de destino do pacote IP nunca é alterado. Os quadros são enviados para o roteador apenas colocando o endereço MAC do roteador no campo Ethernet de destino.
	 
	Embora o roteador decremente o valor do campo TTL (e descarte o pacote se o valor atingir zero), e recalcule o checksum, não vamos comentar essas questões aqui.
Cenário 3: máquinas em redes diferentes, ligadas através de outras redes
A situação mais complexa é quando as máquinas estão se comunicando em redes distantes umas das outras, ou que exista pela menos uma rede entre a rede de origem e a rede de destino. Nesse caso, os pacotes são encaminhados de roteador em roteador, até atingir a rede de destino. A Figura 5 mostra redes interligadas de acordo com esse cenário.
	
	Figura 5 –Camadas de rede e as interligações entre as diversas redes
Fonte: autoria própria
	Os passos a serem seguidos nesse cenário são praticamente os mesmos do cenário anterior com apenas duas diferenças.
Os passos 6, 7 e 8 são executados em cada roteador, mas enquanto os passos 6 e 8 são executados exatamente como mostrado no exemplo anterior, o passo 7 só é executado daquele modo no roteador da rede de destino. Nos demais roteadores, o passo 7 ainda seria realizado, mas a rota obtida ao se consultar a tabela de roteamento seria diferente, conforme descrito no próximo item.
Em todos os outros roteadores do caminho (com exceção do roteador da rede de destino), no passo 7 seria utilizada a rota default (ou uma rota específica para a rede de destino), pois o roteador não estaria ligado diretamente à rede onde a máquina de destino de encontra. Desse modo o quadro é enviado para o endereço MAC equivalente ao IP que consta como gateway na rota utilizada, que é o IP do próximo roteador no caminho até a rede destino. No exemplo da Figura 3, quando a máquina Host_01 envia um pacote para Host_02, a rota utilizada no passo 7 para Roteador_01 teria como Gateway Roteador_02 e  a rota utilizada no passo 7 para Roteador_02 teria como Gateway Roteador_04.
Vamos analisar mais detalhadamente a Figura 5. Vemos uma rede com diversos roteadores e dois hosts (computadores) Host_01 e Host_02, que estão separados por alguns desses roteadores. Suponha que o computador Host_01 está enviando uma mensagem para o Host_02e veja como se dá o processo levando em consideração a camada de rede. A camada de rede em Host_01 pegará segmentos que vem da camada de transporte, encapsula cada segmento em um datagrama (PDU - também conhecida como pacote na camada de rede) e esse datagrama trafegará pela rede em direção ao roteador vizinho Roteador_01, e esse o encaminha para o próximo roteador Roteador_02 que faz o mesmo reenviando para o Roteador_04, que entrega o datagrama para o Host_02 (como esse processo é feito, será explicado ao longo desta aula). A camada de rede do Host_02 ao receber o datagrama da camada de rede do Roteador_04, extrai os segmentos de transporte e os entrega à camada de transporte do Host_02. Perceba que a função principal do roteador é repassar os datagramas de enlaces de entrada para enlaces de saída. Veja que na Figura 5 não mostramos as sete camadas, mas apenas até a camada de rede, pois não é função dos roteadores trabalharem com os protocolos das camadas superiores, já que eles atuam na camada 3, do modelo. 
		 
	Uma nota sobre roteadores.
Saiba que um roteador pode ser qualquer equipamento que tenha duas (ou mais) interfaces de rede e implemente as funções de roteamento da camada de rede. Portanto, é muito comum a utilização de computadores atuando como roteadores para separar redes dentro das empresas.  Existem também switchs que implementam a função de roteamento e são conhecidos como switchs de nível 3. Na verdade, esses swicths são a forma mais indicada para separar as redes internas das empresas, mas os computadores têm a vantagem principal de serem mais baratos. Os roteadores (hardware específico para essa finalidade) são mais utilizados para interligar redes entre empresas (ou matriz e filiais).
	 
		
	Atividade 1
	 
	 
	 
	O que precisa ser informado para que uma máquina consiga enviar pacotes IP para outras máquinas?
	 
	 
	Fragmentação do datagrama IP
	Como já falamos ao longo das nossas aulas, existem vários tipos de redes, assim como há vários tipos de protocolos. Assim, diferentes tipos de protocolos de camada de enlace são capazes de transportar pacotes de dados de tamanhos diferentes. Existem protocolos capazes de transportar grandes datagramas e outros que só conseguem transportar datagramas menores. O tamanho máximo que um quadro Ethernet pode transportar é de 1.500 bytes, porém, alguns enlaces de dados de longa distância não conseguem transportar pacotes desse tamanho, pois seu tamanho máximo é de 576 bytes. Essa quantidade máxima de dados que um quadro de camada de enlace pode transportar é chamada de unidade máxima de transmissão (MTU – Maximum Transmission Unit). Lembre-se de que os datagramas IP são carregados de um roteador até o próximo roteador encapsulados nos quadros de camada de enlace, o que faz com que a MTU dessa camada determine o tamanho máximo do datagrama IP que pode ser usado naquele enlace. Você pode está pensando: “sim e daí, o que isso quer dizer?” Bem, como cada enlace pode ter uma MTU diferente, o que acontece quando um datagrama maior, de 1.500 bytes, por exemplo, chega a um enlace que só consegue transportar datagramas de 576 bytes? Acho que você já deve ter pensado na resposta imediatamente: “quebra esse datagrama em vários”, foi isso que você pensou? É isso mesmo, e a esse processo dar-se o nome de fragmentação.
Vamos tentar entender como acontece esse processo com um exemplo real do dia a dia. Suponha que você tem uma transportadora e estamos fazendo a mudança de uma pessoa de Natal que está se mudando para Manaus, no estado do Amazonas. Para Sair de Natal, você colocou toda mudança numa carreta enorme (equivalente a um pacote de tamanho X). Digamos que você viajou de carreta até alguma cidade perto de Manaus (esse percurso seria equivalente a um enlace cuja MTU máxima seria a capacidade da carreta), até que chegou a um ponto que terá de continuar de barco. Porém, só há barcos pequenos, e a sua carga terá de ser dividida em várias viagens (fragmentada no tamanho máximo que o barco pode transportar – equivalente a MTU do barco). Dessa forma, cada viagem que o barco fizer, ele saberá que aquela parte da mudança faz parte de um pacote de mudança maior, e após várias viagens de pequenas porções ele terá transportado toda mudança. Claro que a pessoa do barco precisou identificar a qual mudança pertencia cada uma de suas viagens para que pudesse, ao final, está completo o “pacote” da mudança.
	
	Figura 6 –Fragmentação e reconstrução de datagrama IP
Fonte: Adaptado de Kuroze (2010).
	No caso dos datagramas IP, para que um host destinatário possa reconstruir um datagrama original, ele faz uso de alguns campos do protocolo IP, como o campo identificação, flag e deslocamento. Quando um host remetente cria um datagrama, ele marca esse datagrama com um número de identificação e também acrescenta o endereço de origem e de destino. O host remetente incrementa o número de identificação para cada datagrama que envia. Sempre que um roteador precisar fragmentar um datagrama, cada novo datagrama resultante (datagrama de tamanho menor – fragmento) recebe o endereço de origem, o endereço de destino e o número de identificação do datagrama original. Assim, quando um destinatário recebe vários datagramas de um mesmo remetente, ele examina os números de identificação dos datagramas, a fim de detectar quais deles são fragmentos de um mesmo datagrama de tamanho maior. O último datagrama resultante da fragmentação de um datagrama maior recebe um flag setado (marcado) para 0, a fim de indicar que esse é o último datagrama que forma o datagrama original, já os demais datagramas têm esse flag setado para 1. De posse dessas informações, o destinatário é capaz de remontar o datagrama original.
ICMP – Protocolo de Mensagens de Controle da Internet 
A camada de Rede, do modelo TCP/IP que é utilizado na prática da Internet, é composta basicamente de três componentes: O protocolo IP, os protocolos de roteamento e o ICMP, que discutiremos agora.
Esse protocolo é utilizado pelos hosts e roteadores da rede e servem para reportar informações da camada de rede entre eles. A maior utilização do ICMP é para reportar erros de comunicação. Exemplos clássicos do uso desse protocolo é quando estamos tentando acessar um servidor FTP1 ou mesmo um servidor web e recebemos uma mensagem que a rede de destino está inalcançável, ou que foi esgotado o tempo limite do pedido, dentre outras. Todas essas mensagens são originadas pelo ICMP. O fato da rede está indisponível se deve à falha em algum lugar, entre a origem e o destino, e assim o último roteador que recebeu o pacote e não conseguiu entregar ao próximo roteador emite uma mensagem ao host remetente explicando que dali para frente existe algum problema que impede que ele entregue o pacote ao destinatário. 
As mensagens ICMP têm alguns campos e dentre eles estão os campos Tipo e campo Código, conforme você pode ver no Quadro 1.
	
Tipo de msg ICMP
	Código
	Descrição
	0
	0
	Resposta de eco do ping
	3
	0
	Rede de destino inalcançável
	3
	6
	Rede de destino desconhecida
	3
	3
	Porta de destino inalcançável
	10
	0
	Descoberta do roteador
	9
	0
	Anúncio do roteador
Quadro 1 - Tipos de mensagens ICMP
Para vermos na prática as respostas das mensagens ICMP, vamos fazer um teste com o comando ping2 e o comando tracert3 (para uma máquina Windows). Você deve se orientar pelos seguintes passos em sua máquina rodando uma versão do Sistema Operacional Windows.
1 – Clicar no botão Iniciar, depois em Executar e na caixa que aparece digitar cmd (comando que abrirá uma tela preta, que é prompt de comando do Windows – local onde você poderá executar comandos).
2 – Uma vez no prompt (tela preta), digite o comando ping <www.ufrn.br> e você deverá obter uma tela semelhante a da Figura 7: 
1 Chama-se servidor FTP (File Transfer Protocol) um servidor que fornece, através de uma rede de computadores, um serviço de acesso de usuários a um disco rígido ou servidor atravésdo protocolo de transferência de arquivos.
2 Ping é um comando básico (usa o protocolo ICMP) que verifica se um servidor/PC está respondendo corretamente.
3 O comando TRACERT (Trace Route) é um utilitário de rastreio de rotas usado para determinar o caminho percorrido por um pacote IP até chegar a um destino.
	
	Figura 7 –Resposta do comando ping
Fonte: Prompt de comando do Windows
	Você poderá fazer outro teste muito comum entre os administradores de rede com o comando tracert (Windows) que traça uma rota desde o seu host até o destino, mostrando todos os roteadores por onde ele passou, inclusive mostra o tempo que cada roteador demorou para repassar o pacote.
		
	Atividade 2
	 
	 
	 
	1. Faça uma pesquisa sobre outros comandos que podemos usar para testar a funcionalidade da rede (ping, net, ipconfig, netstat, net)
Use os endereços abaixo como ponto de partida: 
<http://pt.kioskea.net/faq/1319-comandos-ip-relativos-a-redes-no-windows>
<http://bobdicas.blogspot.com/2007/10/comandos-de-rede-mais-utilizados.html>
	 
	 
	 
	IPV 6 – Internet Protocolo versão 6
	Na Aula 8, nós falamos sobre endereçamento IP, e falamos que iríamos nos deter à versão 4 do protocolo IP, conhecido por todos apenas como IPv4, mas não podemos deixar de apresentar, embora que rapidamente, a versão 6 do protocolo IP, mais conhecida como IPv6.
No início da década de 90, o crescimento da Internet era enorme e cada novo host colocado na rede necessita de mais um IP. A rede crescia muito rapidamente de maneira que os engenheiros do IETF4 (Internet Engineering Task Force) perceberam que os IPs disponíveis no espaço de endereçamento fornecido pela versão 4 do protocolo IP que é composta de 32 bits não iria ser suficiente por muito tempo. Assim, eles começaram a estudar e a pensar numa nova versão do IP que fosse capaz de satisfazer as necessidades de endereços IPs e ainda fazer alguns ajustes em relação à versão 4 desse protocolo.
4 IETF é uma comunidade internacional (técnicos, agências, fabricantes, fornecedores, pesquisadores) preocupada com a evolução da arquitetura da Internet, eles têm como missão identificar e propor soluções a problemas relacionados à utilização da Internet, além de propor padronização das tecnologias e protocolos envolvidos. 
	A Figura 8 mostra o formato do datagrama da versão 6 do protocolo IP.
	
	Figura 8 –Formato do datagrama IPv6
	A seguir, listamos as principais mudanças ocorridas no IPv6 em relação ao IPv4.
Capacidade de endereçamento foi expandida – O tamanho do endereço IPv6 é de 128 bits, enquanto o IPv4 era de apenas 32 bits. Com o novo tamanho, dizem que daria para colocar um IP para cada grão de areia da terra.
Cabeçalho aprimorado de 40 bytes – Foram descartados ou se tornaram opcionais alguns campos do IPv4. O tamanho do cabeçalho agora é fixo de 40 bits, o que torna o processamento dos datagramas IP mais veloz.
Rotulação de fluxo e prioridade – Permite rotular fluxos particulares para os quais o remetente requisita um tratamento diferenciado, como um serviço de qualidade diferente do padrão ou ainda um serviço de tempo real, por exemplo.
Versão – Nesse campo, vem a versão do protocolo, e deve vir o número 6 representando a sua versão.
Classe de tráfego – Tem função semelhante ao campo TOS do IPv4 (visto na Aula 8).
Rótulo de fluxo – É usado para identificar um fluxo de datagramas e é composto de 20 bits.
Comprimento da carga útil – Esse campo tem 16 bits e é tratado como um campo sem sinal que fornece o número de bytes do datagrama e vem antes do cabeçalho, cujo tamanho é 40 bytes.
Próximo cabeçalho – Identifica o protocolo ao qual o conteúdo do datagrama deve ser entregue. (Semelhante ao IPv4).
Limite de Saltos – O valor deste campo é decrementado de um para cada roteador que o datagrama passa pela rede. Se o valor chegar a zero e o pacote não alcançar o destino, ele será descartado.
Endereço de fonte e de destino – Fornece os endereços de origem e destino do datagrama.
Dados – Parte da carga útil. Quando um datagrama chega ao seu destino, sua carga útil é extraída e repassada para o protocolo que está especificado no campo próximo cabeçalho.
	Transição do IPv4 para IPv6
	Agora que você sabe que o IPv6 foi criado porque o IPv4 estava se tornando insuficiente e que o IPv6 deverá se tornar o padrão, como será que as coisas funcionarão durante o tempo em que as duas versões coexistirem? Os sistemas que estão preparados para trabalhar com o IPv6 conseguem  manipular (enviar, receber e rotear) os datagramas IPv4, mas os sistemas que utilizam IPv4 não conseguem trabalhar com datagramas IPv6.
	Resumo
	Durante esta aula, você aprendeu mais sobre a arquitetura da Internet. Entendeu como é feito o roteamento de pacotes entre as redes, viu como construir uma tabela de rotemanto e quais são as configurações necessárias para fazer com que uma máquina possa se comunicar na rede. Você foi apresentado a cenários de rede diferentes e percebeu que os equipamentos e as configurações variam de acordo com o cenário. Foi visto ainda durante esta aula alguns comandos que são usados para testar as funcionalidades da rede, assim como as da própria máquina. Você aprendeu ainda as diferenças entre o IPv4 e o IPv6 e conheceu mais detalhes do datagrama IPv6.
		Autoavaliação
	 
	1. Qual a função de uma tabela de roteamento de um roteador?
	2. Explique para que serve a rota padrão.
	3. Explique com suas palavras para que serve um endereço IP.
	4. Quando um roteador executa a fragmentação de datagramas?
	 
	 
	
	Aula 10 - Exercitando o que aprendemos
	 
	
	Apresentação
	Ao longo das nove aulas passadas, nós discutimos sobre os assuntos que cercam o estudo de sistemas de conectividade. Aprendemos sobre os tipos de meios físicos e suas capacidades de transmissão, sobre os equipamentos, suas características, suas funções e a camada na qual se encaixam dentro do modelo OSI. Aprendemos que existem técnicas para fazer a comutação dos pacotes, que existem perdas ao longo do caminho, que existem limites para os comprimentos dos cabos, e que existem vários padrões e tipos de meios de transmissão. Assim, nesta aula iremos trabalhar na forma de exercícios. Começaremos desde a definição de uma rede bem simples, até chegar ao endereçamento IP e à ligação dessa rede com a Internet, através de um roteador.
		
	Objetivos
	 
	Ao final desta aula, você será capaz de: 
pensar mais claramente em tudo que é necessário para montar e configurar uma rede de computadores;
entender o funcionamento de cada elemento da rede;
compreender como esses elementos se relacionam uns com os outros;
criar uma pequena rede de computadores.
	 
	Considerações iniciais
	Lembre-se de que para utilizar uma máquina é normal ter que se identificar com um usuário e uma senha, e que essa identificação é utilizada para controlar quais atividades um usuário pode realizar. Existem usuários que têm permissões especiais e podem executar qualquer tarefa. Portanto, para executar as tarefas mostradas nesta aula é necessário que você esteja conectado na máquina com um usuário que tenha esse tipo de permissão. 
No caso do Linux, quando for fazer as configurações através da digitação de comandos (e não da interface gráfica), você pode utilizar o comando “sudo su” para se tornar o usuário root, que tem permissão total na máquina. Vale ressaltar que será pedida a sua senha e que nem todos os usuários da máquina têm permissão para executar esse comando. 
	Definindo uma rede
	Suponha que na sua casa existam três computadores, sendo, por exemplo, um Desktop (Computador de mesa) e dois Notebooks. Imaginemos ainda que no Desktop roda o Sistema Operacional Linux Ubuntu 9.10 e que nos dois Notebooks rodam o Windows XP Professional.
Como vez por outra, você precisa pegar arquivos que estão em um dos outros computadores, você resolveu criar uma pequena rede para facilitar esse trabalho e ainda tornar possíveis várias outrascoisas, como por exemplo, jogar em rede. Vamos ver então o que será necessário e como configurá-la. Como são três computadores ligados em rede precisaremos de um hub (ou switch), de cabos de rede e uma placa em cada um dos equipamentos. Na Figura 1, você vê como ficará a topologia da rede. Você percebe que deverá ligar cada computador ao Hub com um cabo de rede? Pois bem, vamos continuar. Como são apenas três máquinas, não faz muita diferença se você utiliza um hub ou switch. Portanto, iremos usar um hub, que é mais barato, mas se fosse utilizado um switch nada mudaria em termos das tarefas que terá que fazer. Os cabos devem ser Par Trançado com conectores RJ45.
	
	Figura 1 –Topologia da rede usando 3 computadores e um hub
Fonte: autoria própria.
	Vamos ver como fazer para configurar as interfaces de rede de cada um dos computadores.
Para as máquinas com Windows XP, a mesma configuração servirá para os dois Notebooks, precisando apenas colocar um endereço IP diferente em cada uma. Com o computador ligado e na tela inicial do Windows, você deverá se orientar pelo seguintes passos para configurar a rede: clique no Botão “Iniciar” > “Configurações” > “Painel de Controle” e escolha a opção “Conexões de Rede”. Lá, você verá todos os adaptadores (placas) de rede que estão instalados na sua máquina, conforme a Figura 2.
	
	Figura 2 – Configuração IP no Windows
Fonte: Windows XP
	Você deverá clicar com o botão direito do Mouse sobre o ícone de “Conexão de Rede Local” e escolher a opção “Propriedades” da conexão local que se parecerá com a Figura 3. 
	
	Figura 3 –Configuração IP no Windows
Fonte: Windows XP
	Após isso, selecione a opção “Protocolo TCP/IP Versão 4”, de acordo com a Figura 3, e depois clique novamente no botão Propriedades, e você terá acesso à tela onde poderá definir uma série de informações sobre o TCP/IP, que é mostrada na Figura 4. Selecione a opção “Usar o seguinte endereço IP” e defina o endereço 192.168.100.2 e na máscara de rede coloque: 255.255.255.0. A opção de “Gateway padrão” e Servidores DNS Preferencial e DNS secundários não precisa ser usada para esse exercício. A configuração do Gateway será vista no próximo exercício, enquanto a configuração dos servidores de DNS será vista apenas em outra disciplina, quando estudarmos o que é o DNS. Faremos outro exercício em que precisaremos colocar essa opção.
	
	Figura 4 –Configuração IP no Windows
Fonte: Windows XP
	Você deverá repetir esse procedimento para o outro computador que está com o Windows XP, trocando apenas o final do endereço IP de “2” para “3”. Após isso, os computadores já poderão se comunicar. Para testar, use o comando “ping”. Supondo que você esteja na máquina cujo final do IP é “2” vá para o “prompt de comando” (conforme mostramos na Aula 9) e digite o seguinte comando: ping 192.168.100.3 e você deverá ter uma resposta de que todos os pacotes foram recebidos.
Agora, vamos ver como fazemos a configuração no Desktop que usa o sistema Operacional Linux (Ubuntu).
Ao iniciar o Sistema Operacional, vá na opção Sistema > Preferências e depois clique Conexões de Redes, de acordo com a Figura 5.
	
	Figura 5 –Configurando endereço IP no Linux
Fonte: Ubuntu
	Ao selecionar “Conexões de rede”, aparecerá a tela mostrada na Figura 6. Selecione a opção “Com Fio”, depois clique na sua placa de rede (eth0) e então clique no botão “Editar”. No Linux, as placas de rede Ethernet são chamadas de ethX, onde X, que começa em 0 (zero), é o número da placa, para o caso de existir mais de uma placa no computador. Como na sua máquina só existe uma placa de rede, ela se chama eth0. A palavra “Auto” junto de eth0 é apenas para dizer que a placa será configurada automaticamente quando a máquina for ligada.
	
	Figura 6 –Configurando endereço IP no Linux
Fonte: Ubuntu
	Será aberta a janela mostrada na Figura 7. Escolha a opção “configuração IPv4” e depois selecione a opção “Manual”.
	
	Figura 7 – Configurando endereço IP no Linux
Fonte: Ubuntu
	Mais uma tela será aberta, conforme mostrado na Figura 8. Calma, estamos quase terminando. Clique no botão “Adicionar” e preencha os campos “Endereço” e “Máscara de rede”, conforme indicado. Clique em “Aplicar” e terminamos. 
	
	Figura 8 –Configurando endereço IP no Linux
Fonte: Ubuntu
	Mas, e agora, como fazemos para testar? Bem, da mesma forma que fizemos no Windows. Você poderá ir para uma das máquinas Windows já configuradas e testar com o comando “ping”, como fez antes, ou digitar o comando na própria máquina Linux. Lembre-se apenas de utilizar no comando ping o endereço IP da outra máquina com a qual quer se comunicar (e não o seu próprio endereço). Esse comando é comum aos dois sistemas!
		 
	Você pode verificar a configuração IP de uma placa de rede no prompt de comando através do comando “ifconfig” no Linux, e “ipconfig” no Windows. Além do endereço IP da placa, esses comandos também mostram seu endereço Ethernet.
	 
	Uma curiosidade é que nas versões mais antigas do Windows era necessário reiniciar a máquina após trocar seu endereço IP. Nas versões atuais, isso não é mais necessário. No Linux nunca foi necessário!
No Linux, quando se deseja trocar o endereço IP apenas temporariamente (a modificação será perdida após a reinicialização da máquina), utiliza-se o comando ifconfig. A sintaxe é: ifconfig <interface> <endereço_ip> netmask <máscara>. Por exemplo, para se colocar o endereço 192.168.1.2, com máscara 255.255.255.0, na interface eth0, o comando seria: ifconfig eth0 192.168.2.1 netmask 255.255.255.0.
		Atividade 1
	 
	Tente criar uma rede com dois computadores seguindo os passos mostrados nesse exercício. Veja que se você não tiver como conseguir um hub ou um switch você pode interligar duas máquinas em rede utilizando um cabo cross-over.
	 
	Interligando duas redes locais com um roteador
	Imagine agora que você tem uma empresa, uma escola de informática onde existem dois laboratórios de informática. Cada um tem uma rede independente e você deseja interligar essas redes. Para isso, irá utilizar um roteador. Como idealmente em cada andar de uma empresa deve existir uma sala especial (chamaremos de “sala de informática”) para concentrar todo o cabeamento do andar, vamos localizar nosso roteador nesta sala. A Figura 9 mostra esse cenário. Para exemplificar como fazer a configuração vamos assumir que o roteador é uma máquina (PC) com Linux. Caso fosse um roteador propriamente dito (equipamento específico), mudaria apenas a forma de fazer a configuração (por exemplo, nome do comando diferente), mas os valores utilizados seriam os mesmos.
	
	Figura 9 –Interligação de duas redes através de um roteador
Fonte: autoria própria
	Antes de ler o próximo parágrafo, pense em quais endereços você iria colocar em cada máquina e no roteador!
Para configurar esse ambiente, precisamos de duas faixas de rede IP diferentes. Vamos utilizar 192.168.1.0 com máscara 255.255.255.0 para o laboratório 1, e 192.168.2.0 com máscara 255.255.255.0 para o laboratório 2. Como você pode observar, cada placa de rede do roteador (etho e eth1) está ligada a um laboratório diferente. Portanto, como a placa eth0 do roteador pertence à rede do laboratório1, ela deve ter um endereço IP dessa rede, de modo que utilizaremos 192.168.1.1. Do mesmo modo, como a placa eth1 do roteador pertence à rede do laboratório2, ela deve ter um endereço IP dessa rede, utilizaremos 192.168.2.1. 
		 
	Veja que é comum utilizarmos o primeiro endereço de cada rede IP para o roteador da rede! 
	 
	As demais máquinas de cada rede terão os endereços seguintes, de modo que no laboratório 1 teremos: A (192.168.1.2), B (192.168.1.3) e C (192.168.1.4). Do mesmo modo, no laboratório 2 teremos D (192.168.2.2), E (192.168.2.3), F (192.168.2.4), e G (192.168.2.5). 
No exercício anterior você aprendeu como colocar esses endereços nas máquinas. Para o caso do roteador, como iriam aparecer duas placas (eth0 e eth1),você faria a configuração para cada uma delas.
Observe que o fato de uma máquina ter duas placas de rede não significa necessariamente que ela deve reencaminhar pacotes. Embora não seja muito comum, às vezes pode-se desejar estar conectado diretamente a duas redes diferentes para acessar os recursos de cada uma, mas não querer atuar como roteador entre elas. Como dissemos, essa situação é difícil de ocorrer. O normal é que os equipamentos que estão conectados a mais de uma rede atuem como roteadores, encaminhando pacotes entre essas redes. O que importa saber é que o fato de existir essa possibilidade de escolha de atuar ou não como roteador significa que devemos ativar o roteamento quando ele for desejado. Para isso, edite o arquivo sysctl.conf,  que está no diretório /etc, e descomente (retirar o caractere # do início da linha) a seguinte linha:
#net.ipv4.ip_forward=1 
Salve o arquivo e reinicie a máquina. Para ativar o roteamento sem a necessidade de reiniciar a máquina, digite o seguinte comando:
echo 1 > /proc/sys/net/ipv4/ip_forward 
Observe que o comando acima perde o efeito após reinicar a máquina. Por isso, normalmente além do comando, também é necessário fazer a alteração no arquivo sysctl.conf descrita acima.
Ainda falta colocar a “rota default” em cada máquina. Para isso, em máquinas Linux, após configurar o endereço IP da máquina, na tela mostrada na Figura 8, clique em “Rotas” nessa mesma tela. Aparecerá a tela mostrada na Figura 10. Para as máquinas do laboratório 1, clique em adicionar e nos campos “Endereço”, “Máscara de Rede”, “Gateway” e “Métrica” coloque, respectivamente, “0.0.0.0”, “0.0.0.0”, “192.168.1.1” e “1”. Para as máquinas do laboratório 2, repita os mesmos valores, apenas trocando o “Gateway” para “192.168.2.1”. 
	
	Figura 10 –Criação de rotas
Fonte: Ubuntu
		 
	Você pode verificar a tabela de roteamento da máquina no prompt de comando através do comando “route -n” no Linux, e “route print” no Windows. 
	 
	As tabelas de rotas de todas as máquinas do laboratório 2 da Figura 9 deveriam se parecer com o seguinte:
	
Destino 
	Máscara 
	Gateway 
	Interface 
	192.168.2.0 
	255.255.255.0 
	
	eth0 
	0.0.0.0 
	0.0.0.0 
	192.168.2.1 
	eth0 
Quadro 1 - Rotas do laboratório 2
A primeira linha indica que a máquina possui uma interface na rede 192.168.2.0, e por isso mesmo a coluna Gateway é vazia. A segunda linha representa a rota default, de modo que qualquer pacote que não seja para as redes indicadas nas linhas anteriores do Quadro 1 (nesse caso, apenas a rede 192.168.2.0) será enviado para o gateway 192.168.2.1. Lembre-se de que nesse contexto Gateway é a mesma coisa que roteador.
	Interligando duas redes remotas
	Imagine agora que sua empresa está se expandindo na cidade e criou uma filial. Ela comprou um novo prédio em outro bairro onde irá funcionar essa filial, e o laboratório 2 foi levado para lá. Além disso, a rede da matriz foi interligada com a Internet. A Figura 11 mostra como fica esse novo cenário.
	
	Figura 11 –Ligação de redes remotas (matriz e filial)
Fonte: autoria própria
	Observe que como a matriz e a filial estão fisicamente distantes uma da outra, a ligação entre as redes está sendo feita através de um link alugado de alguma operadora, e, portanto, se faz uso de modems para interligar os roteadores. Antes de ler o próximo parágrafo, analise a figura e pense em como seria a configuração IP desse novo ambiente. 
A principal diferença desse cenário para o anterior é que o roteador da matriz possui uma conexão com a Internet, e que existe uma nova rede, ligando os roteadores R1 e R2. 
Podemos manter a mesma configuração para as máquinas do laboratório 1 e para a interface eth0 do roteador R1. Portanto, eles irão formar a rede 192.168.1.0 com máscara 255.255.255.0, e o endereço IP da interface eth0 do roteador R1 será 192.168.1.1. As máquinas do laboratório 2 também continuarão com a mesma configuração, formando a rede 192.168.2.0 com máscara 255.255.255.0. A diferença é que o IP 192.168.2.1 será agora o endereço da interface eth1 do roteador R2. As rotas default das máquinas do laboratório 1 e do laboratório 2 continuam como antes, ou seja, apontam, respectivamente, para 192.168.1.1 e 192.168.2.1.
A rede entre R1 e R2 será 192.168.3.0. Como essa rede terá apenas os dois roteadores, são necessários apenas quatro endereços: um para cada roteador, mais o endereço de rede e o de broadcast (que não são colocados em nenhuma máquina, mas precisam existir). Desse modo, usaremos a máscara 255.255.255.252, que inclui os endereços 192.168.3.0 (endereço de rede), 192.168.3.1, 192.168.3.2 e 192.168.3.4 (endereço de broadcast). Colocaremos o endereço 192.168.3.1 na interface eth1 de R1 e 192.168.3.2 na interface eth0 de R2.
		 
	Observe que assim como os switchs (que são equipamentos do nível 2) não precisam de endereços IP para funcionarem, os modems (que são equipamentos do nível 1) também não.
	 
	A tabela de rotas do roteador R2 deveria se parecer com o seguinte:
	
Destino 
	Máscara 
	Gateway 
	Interface 
	192.168.3.0 
	255255255252 
	
	eth0 
	192.168.2.0 
	255.255.255.0 
	
	eth1 
	0.0.0.0 
	0.0.0.0 
	192.168.3.1 
	eth0 
Quadro 2 - Rotas do roteador R2
Observe que naturalmente existem rotas representando as duas redes nas quais ele está ligado e a rota default, que nesse caso deve apontar para o próximo roteador no caminho até a Internet, que é o roteador R1. O IP de R1 a ser utilizado deve ser o da rede na qual R2 também está ligado.
A tabela de rotas do roteador R1 deveria se parecer com o seguinte:
	
Destino 
	Máscara 
	Gateway 
	Interface 
	192.168.3.0 
	255255255252 
	
	eth0 
	192.168.1.0 
	255.255.255.0 
	
	eth1 
	192.168.2.0 
	255.255.255.0 
	192.168.3.2 
	eth1 
	0.0.0.0 
	0.0.0.0 
	X.X.X.X
	eth0 
Quadro 3 - Rotas do roteador R1
Observe que naturalmente existem rotas representando as duas redes nas quais ele está ligado e a rota default, que neste caso deve apontar para o roteador da empresa que está fornecendo a conexão à Internet. Essa empresa fornecerá esse endereço (que representamos por X.X.X.X)e o endereço da Interface eth2 de R1, que fazem parte de uma mesma rede. A terceira linha da tabela é muito importante e ensina a R2 como chegar à rede 192.168.2.0. Rotas como essa são chamadas de rotas estáticas. Para saber quais rotas criar em um roteador, siga a regra mostrada a seguir.
		 
	Para cada roteador de uma rede, defina sua rota default como sendo o próximo roteador no caminho para a Internet (vamos chamá-lo de rot_i). Todas as outras redes cujo próximo roteador no caminho até elas não seja através de rot_i devem ser cadastradas. O roteador a ser utilizado na coluna gateway é o próximo roteador no caminho até a referida rede, e o IP desse roteador deve ser o IP da interface onde o roteador sendo configurado também está conectado.
	 
		Atividade 2
	 
	Tente se reunir com alguns colegas que estão estudando esta disciplina para tentar criar uma rede semelhante a da Figura 11. Para que vocês não precisem de hubs nem modems, podemos fazer uma rede bastante semelhante àquela apenas com computadores. Vocês vão precisar de quatro computadores. Dois deles vão atuar como os roteadores e precisam ter uma placa de rede Ethernet e uma placa wireless. As placas wireless são utilizadas para criar uma rede sem fio Ad Hoc entre esses dois computadores de modo a substituir o link que utiliza os modems na Figura 11. Os outros dois computadores precisam ter apenas uma placa de rede cada, de modo que cada um desses computadores será ligado a um dos computadores que está atuando como roteador. Utilize cabos cross-over para essa ligação. 
Lembre-se de que uma rede Ad Hoc é uma rede sem fio que não requer a utilização de Access Points. Para ver como criar uma rede desse tipo no Linux acesse: 
<http://forum.arenaig.ig.com.br/showthread.php?41432-[TUTORIAL]-Criando-rede-wireless-AD-HOC-no-Linux>Utilizando VLANs
	Imagine agora um cenário semelhante ao da seção “Interligando duas redes locais com um roteador”. Imagine, entretanto, que ao invés de Laboratório1 e Laboratório2, temos duas salas, e em cada uma delas existem máquinas para os funcionários utilizarem e máquinas para alunos utilizarem. Queremos ter duas redes independentes e interligadas através de um roteador, pois desse modo podemos controlar o que os alunos podem acessar na rede dos funcionários através de filtros no roteador (como utilizar esses filtros não faz parte desta disciplina!). 
Como queremos utilizar o menor número de switchs possível para economizar no custo da rede, iremos ligar cada máquina ao switch mais próximo a ela. Tente resolver esse problema utilizando VLANs. Adiantamos que a solução tipicamente iria utilizar mais um switch na “sala de informática”. Olhe a Figura 12 e, antes de ler os próximos parágrafos, tente imaginar como ficaria a configuração das VLANs e dos endereços IP para essa nova rede. As máquinas A1, A2, A3 e A4 são máquinas para os alunos, e as máquinas F1, F2 e F3, para funcionários. Cada número junto às linhas é a identificação da portas do switch onde o cabo está conectado.
	
	Figura 12 –Utilizando VLANs para criar redes virtuais.
Fonte: autoria própria
	Tudo que temos de fazer é criar duas VLANs em cada switch e definir quais portas pertencem a cada vlan. O processo de criar as vlans nos switchs é bem simples e basicamente consiste em atribuir um número e um nome à vlan. A forma exata de fazer isso depende do modelo do switch. O importante é que se use o mesmo número e o mesmo nome em todos os switchs para cada vlan. Criar a VLAN “Alunos” que terá a VLAN 1 e a VLAN Funcionários que será a VLAN 2.
		 
	Normalmente, se configura um switch gerenciável acessando o seu servidor web interno através de um browser. O endereço IP do switch pode já vir definido de fábrica ou ser configurado manualmente após se conectar nele usando um cabo serial.
	 
	Lembre-se de que uma porta pode pertencer a mais de uma vlan, e que para cada porta deve ser especificado se ela encaminha ou não quadros marcados com o código da vlan. Se ela encaminha quadros com o código da vlan, ela é dita “Tagged”, caso contrário, é dita “unTagged” (esse nome pode mudar dependendo do fabricante do swicth). 
Para o nosso problema, as portas dos switchs onde existem máquinas conectadas devem ser definidas como untagged, e devem pertencer a apenas uma das vlans. O mesmo se aplica às portas onde as interfaces do roteador estão conectadas. As portas interligando dois switchs devem pertencer às duas vlans e são do tipo Tagged. A tabela a seguir mostra a configuração de cada porta dos switchs.
	
Swicth
	Porta
	VLAN
	Tipo da porta
	Switch1 
	1 
	1 e 2 
	Tagged
	
	2 e 3 
	1 
	Untagged
	
	4 
	2 
	Untagged
	Switch2 
	1 e 2 
	1 e 2 
	Tagged
	
	3 
	1 
	Untagged
	
	4 
	2 
	Untagged
	Switch3 
	1 
	1 e 2 
	Tagged
	
	2 
	1 
	Untagged
	
	3 
	2 
	Untagged
	Switch4 
	1 
	1 
	Unttaged
	
	2 
	2 
	Untagged
	
	3 e 4 
	1 e 2 
	Tagged
Quadro 4 - Configuração das VLANs para a rede da Figura 11.
A configuração IP é a mesma do cenário da seção “Interligando duas redes locais com um roteador”, se considerarmos o Laboratório 1 sendo a VLAN “Alunos” e o Laboratório 2 a VLAN “Funcionários”, pois a utilização de VLANs não tem influência na configuração IP! Desse modo, as máquinas da rede “Alunos” utilizariam a faixa de endereços 192.168.1.0 com máscara 255.255.255.0, e as da rede “Funcionários” utilizariam a faixa de endereços 192.168.2.0 com máscara 255.255.255.0. O IP da interface eth0 do roteador seria 192.168.1.1, e esse endereço seria a rota default das máquinas dessa rede. De modo semelhante, o IP da interface eth1 do roteador seria 192.168.2.1, e esse endereço seria a rota default das máquinas dessa rede.
Como tínhamos apenas duas vlans, não houve problema em utilizar uma interface diferente do roteador para cada uma das redes. Mas, imagine se tivéssemos 10 ou 15 vlans na nossa rede! Nesse caso, poderíamos utilizar uma única placa de rede no roteador que tivesse suporte a VLANs (atualmente, isso é muito comum), e criar as diversas vlans nessa placa. Elas funcionariam como placas de rede virtuais. Desse modo, iríamos utilizar apenas um cabo para ligar o roteador ao switch. A solução mais indicada, entretanto, seria utilizar como switch4 um modelo de switch que fosse de nível três do modelo OSI (ou seja, que suporta roteamento IP). Isso eliminaria a necessidade do roteador externo.
	Resumo
	Nesta aula, você aprendeu como configurar uma rede utilizando o protocolo IP, dando um enfoque mais prático aos conhecimentos adquiridos ao longo desta disciplina. Inicialmente, vimos como fazer a configuração de máquinas Linux e Windows. Depois, você aprendeu como configurar duas pequenas redes interligadas por um roteador. Após isso, vimos um cenário mais complexo onde interligamos uma matriz com sua filial e acrescentamos acesso à Internet à rede da matriz. Finalmente, vimos como utilizar vlans para dividir as máquinas de uma empresa em redes diferentes. Juntando o cenário das VLANs com o da interligação da matriz e filial, você terá a base de conhecimentos necessários para configurar diversas redes que encontrará em muitas empresas reais.
		Autoavaliação
	 
	1. Como se configura o endereço IP e máscara de rede em uma máquina Windows?
	2. No Windows XP e no Linux é necessário reiniciar a máquina após trocar seu endereço IP?
	3. Qual o comando no Linux para colocar o endereço 10.1.2.3 com máscara 255.255.0.0 na interface eth1?
	4. Quais os comandos no Linux e no Windows para verificar a tabela de roteamento?
	5. O que significa uma rota na tabela de roteamento cujo endereço de destino e a máscara são 0.0.0.0 ?

Mais conteúdos dessa disciplina