Modelo osi tcp ip e protocolos

1.232 visualizações

Publicada em

0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.232
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
30
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Modelo osi tcp ip e protocolos

  1. 1. 43 Modelo OSI, TCP/IP e outros protocolos de comunicação
  2. 2. 44 O Modelo OSI Para que sistemas diferentes possam comunicar em rede, é necessário garantir que todos eles respeitem as mesmas regras. Para isso, algumas organizações mundiais são responsáveis por criar modelos e padrões que são reconhecidos e seguidos pelos fabricantes de hardware e software. Uma dessas organizações é a International Standards Organization (ISO). Foi daqui que surgiu o modelo OSI (Open Systems Interconnection). Este, é um modelo teórico de uma arquitectura em camadas. Numa arquitectura em camadas a informação passa de um nível de processamento para outro. Isto é, a informação é tratada a um nível e só depois passa para o nível seguinte. Por outras palavras, uma camada só faz o seu trabalho de processamento após a camada anterior ter feito o seu. Os protocolos de comunicação são um exemplo de funcionamento por camadas. (por exemplo, o protocolo TCP/IP). O modelo OSI propõe uma aproximação de várias camadas às redes com a qual cada camada executa um papel determinado na circulação de dados de uma máquina para outra. Numa transmissão de dados entre computadores, cada camada “comunica” com a mesma camada da outra máquina à qual está ligada. Cada camada do modelo engloba um ou mais protocolos específicos para essa camada – protocolos esses que iremos ver um pouco mais à frente. Arquitectura - Um conjunto de camadas e protocolos é chamado de arquitectura de rede.A definição de uma arquitectura deve conter informações suficientes para permitir que se desenvolva um programa ou construa o hardwarede cada camada, de forma que ela obedeça corretamente ao protocolo adequado. Basicamente, arquitectura é o desenho de alguma coisa, as regras e especificações que dizem como algo deve ser construído e como deve funcionar.
  3. 3. 45 As camadas do modelo OSI são: 7 - Aplicação é a camada mais alta do modelo fornece serviços directamente às aplicações do utilizador/sistema local suporte de aplicações 6 - Apresentação faz conversões de formatação ou códigos, preservando o conteúdo da informação soluciona os problemas de sintaxe que possam existir entre o transmissor e o receptor representação de dados 5 - Sessão gere o correcto funcionamento da sessão estabelecida entre duas máquinas regras de comunicação 4 - Transporte assegura que todos os dados são enviados para o receptor na devida ordem nesta camada opera o protocolo TCP controlo de transporte dos dados 3 - Rede fornece os endereços para os dados escolhe o melhor caminho entre o emissor e o receptor o protocolo IP trabalha nesta camada gestão do endereçamento 2 - Ligação de Dados responsável pela correcta transmissão de dados através da camada física assegura que os dados chegam correctamente ao destino controlo de transmissão 1 - Física camada mais baixa (mais próxima da transmissão dos sinais) define aspectos físicos da transferência de dados (por exemplo, os níveis eléctricos que correspondem ao 0 e ao 1) define a interface de hardware entre a máquina e os cabos (placa de rede, switch, etc..) ligação física
  4. 4. 46 Funcionamento do modelo OSI Como vimos, o modelo OSI compreende sete camadas funcionais e os respectivos protocolos. Os utilizadores do modelo são os processos das aplicações colocados nas máquinas que estão a comunicar, a que vamos denominar de sistemas locais. Quando um processo ‘A’ de uma máquina pede o estabelecimento de comunicação com o processo ‘B’ de outra máquina, fornece alguns parâmetros (dados...) necessários para essa comunicação. Esses parâmetros podem ser: identificação do processo de destino, taxa de erros aceitável, etc... O ‘sistema local ‘A’, antes de iniciar a comunicação, vê qual a disponibilidade do ambiente OSI e requisita o estabelecimento de uma ligação à camada de aplicação (a mais alta) A camada de aplicação, por sua vez, envia essa solicitação ao nível imediatamente abaixo, e assim sucessivamente até chegar à camada física (a mais baixa). Quando o pedido de comunicação chega à camada física, é feita uma ligação com o ‘sistema local B’, ao nível da sua camada física. Então, a camada imediatamente acima – ligação de dados – é notificada e é estabelecida uma relação lógica através do protocolo de ligação de dados ao nível destas camadas em ambos os sistemas. De seguida, a camada de rede é notificada e o protocolo de rede – protocolo IP – estabelece uma ligação com a camada de rede do outro sistema. É, então, estabelecida uma ligação através da comutação (troca) de pacotes de rede (pacotes são conjuntos de dados). Quando a notificação chega à camada de transporte, é estabelecida uma ligação entre as camadas de transporte dos dois sistemas (utilizando os protocolos respectivos). Da mesma forma, todas as camadas seguintes utilizam o(s) seu(s) protocolo(s) específicos para estabelecer ligação com a camada do mesmo nível em ambos os sistemas. Após ser estabelecida ligação entre as sete camadas, pode ser iniciada a comunicação entre os dois processos. Note-se que o modelo OSI é um modelo teórico, logo, a sua aplicação pode não ser tão “directa” e tão obrigatória como se possa pensar. Resumindo, os dados são colocados em pacotes, aos quais vai sendo acrescentada informação necessária ao envio desse mesmo pacote através da rede. A informação é acrescentada em cada camada da rede, passando depois à camada seguinte. Quando chegam à camada física, os pacotes estão prontos a ser enviados através do meio físico (cabo ou wireless). Do lado do emissor, os pacotes seguem o caminho inverso. Ou seja, começam na camada física e vão sendo “abertos” e retirada a informação até que chega à camada de aplicação.
  5. 5. 47 Quando um computador tem informação para enviar, executa um pedido de envio dessa informação para a camada de topo, ou seja, a camada de aplicação. O protocolo que está na camada de aplicação executa o pedido e transfere-o para a camada inferior. As restantes camadas inferiores executam as suas operações até enviarem a informação para o computador seguinte através da camada física. No computador que recebe a informação, o processo é feito de forma inversa, ou seja, da camada inferior para a superior. Na figura abaixo, mostra-se um exemplo de comunicação em “ambiente OSI” entre dois sistemas diferentes (Windows e Linux). Comunicação Computador 1 Computador 2 Fluxo de Informação Ethernet
  6. 6. 48 Protocolos de Comunicação Já vimos antes que é necessário utilizar protocolos comuns ao emissor e ao receptor, de forma que eles se consigam comunicar. Em redes de computadores existe uma grande variedade de protocolos que são responsáveis por garantir que as diversas fases de uma comunicação sejam executadas correctamente (seja no envio de um email, na partilha de ficheiros ou na consulta de uma página na Web, por exemplo) Protocolos orientados ou não orientados à ligação (conexão) Em telecomunicações, “orientado à conexão” refere-se a um meio de transmitir dados em que os dispositivos utilizam um protocolo para estabelecer uma ligação do tipo início-fim entre emissor e receptor, antes de ser iniciado o envio dos dados. Neste caso, os dados são enviados seguindo sempre o mesmo caminho e há uma confirmação prévia de que o receptor está pronto a receber os dados. Este tipo de protocolos garante uma comunicação fiável, em que há um controlo dos dados transmitidos, de modo a garantir que todos os dados chegam em condições. No caso se protocolos não orientados à ligação, os dados são enviados de um lado para o outro sem que a transmissão seja “preparada” anteriormente. Isto é, não há uma confirmação de que o receptor esteja pronto a receber os dados. Eles são simplesmente enviados - é claro que as transmissões que utilizam estes protocolos estão mais sujeitos a erros.. Veremos mais adiante alguns protocolos orientados e outros não orientados à ligação.
  7. 7. 49 TCP/IP É um conjunto de protocolos de comunicação entre computadores em rede. Este nome vem dos dois protocolos mais importantes do conjunto: o TCP (Transmission Control Protocol - Protocolo de Controle de Transmissão) e o IP (Internet Protocol - Protocolo de Internet). Como podemos perceber pelo nome, os protocolos mais importantes deste conjunto são o TCP e o IP. TCP (Transmission Control Protocol) - é um dos protocolos sob os quais assenta a Internet nos dias de hoje. A versatilidade e robustez deste protocolo tornou-o adequado tanto para redes locais como para redes globais, já que este verifica se os dados são enviados de forma correcta, na sequência apropriada e sem erros, pela rede (é, portanto, um protocolo orientado à ligação). A maioria das aplicações de acesso à rede utilizam este protocolo (por exemplo, os browsers que permitem aceder à Web...) Características - orientado à ligação - ligação entre dois pontos - utiliza várias técnicas para garantir que os pacotes de dados são entregues correctamente e na ordem correcta - transmissão full-duplex - caso a transmissão falhe, os dados são enviados novamente IP (Internet Protocol) – é um protocolo utilizado entre duas máquinas em uma rede para fazer o encaminhamento dos dados, ou seja, para indicar o caminho que os dados devem seguir na rede. Os dados numa rede são enviados em blocos chamados de pacotes ou datagramas (estes últimos são utilizados pelo protocolo UDP – ver adiante). Funcionamento Quando se configura um computador para trabalhar em rede, é necessário que o mesmo tenha um nome para que seja identificado pelos outros utilizadores da rede. Por exemplo, “comp1” ou “PC1”. Sendo o TCP/IP um conjunto de protocolos que permitem a interligação de computadores, ele permite que, além do nome, os computadores (e outros dispositivos) numa rede tenham um número, chamado de endereço IP. Assim, o nome do computador e o endereço IP ficam associados. Esta associação entre o nome e o endereço fica guardada em uma tabela o que permite que os computadores se possam identificar e comunicar entre si.
  8. 8. 50 As camadas do TCP/IP Tal como no modelo OSI, este conjunto de protocolos pode ser visto como um modelo de camadas, onde cada camada é responsável por um grupo de tarefas, fornecendo um conjunto de serviços bem definidos para o protocolo da camada superior. As camadas mais altas estão logicamente mais perto do utilizador (chamada camada de aplicação), e as camadas mais baixas estão mais próximas dos meios físicos da rede. As camadas do conjunto de protocolos TCP/IP são semelhante às do modelo OSI (7 camadas), mas no TCP/IP estão previstas apenas 4 camadas. Vejamos quais são, e quais os protocolos associados a cada uma. Camada Protocolos 4. Aplicação HTTP, SMTP, FTP, DHCP, DNS, SSH, RTP, Telnet, SIP, RDP, IRC, SNMP, NNTP, POP3, IMAP, BitTorrent, Ping... 3. Transporte TCP, UDP, SCTP, DCCP... 2. Internet IP (v4 e v6), ICMP, IPSec... 1. Ligação (acesso à rede) ARP, MAC (Acesso de Controlo ao Meio: Ethernet, FDDI, RDIS, Frame Relay), 802.11, HDLC, Token Ring,... Comparação entre o modelo OSI e o TCP/IP Embora, teoricamente, o modelo OSI e o TCP/IP partilhem algumas camadas, os dois modelos não combinam exactamente. Por exemplo, as três camadas mais acima do modelo OSI (aplicação, apresentação e sessão) são combinadas numa única camada no TCP/IP (aplicação). Relembro que estes modelos são modelos teóricos e nem sempre é possível aplicar na prática todos os aspectos neles referidos. OSI TCP/I Aplicação Aplicação Apresentação Sessão Transporte Transporte Rede Ligação de dados Internet Física Ligação (acesso à rede)
  9. 9. 51 Outros protocolos do modelo TCP/IP Segue-se uma lista de outros protocolos existentes no conjunto TCP/IP. Estes protocolos estão presentes nas redes de computadores e, por isso, é importante saber para que servem. Estes protocolos são usados tanto pelos computadores de uma rede como por outros dispositivos como switches e routers, por exemplo, seja para determinar quais os dispositivos que estão ligados à rede como para determinar o caminho para enviar os dados ou simplesmente manter a ligação. HTTP (Hyper Text Transfer Protocol) É o protocolo utilizado na comunicação entre um servidor de Internet e um browser. Quando se abre uma página da Internet, vemos texto, imagens, links ou outros serviços associados à Internet ou a uma intranet. O HTTP é o protocolo que permite tudo isto, é o responsável por redireccionar os serviços, por exemplo, quando seleccionamos uma “opção” numa página Web. SMTP (Simple Mail Transfer Protocol) Como o nome indica, este protocolo serve para efectuar a transferência de emails entre servidores. O servidor de email utiliza o serviço POP (Post Office Protocol) ou o IMAP (Internet Mail Access Protocol) para enviar mensagens de email aos utilizadores. FTP (File Transfer Protocol) Permite a transferência de ficheiros entre computadores, mesmo com sistemas operativos diferentes. O “ftp” também é um comando que permite a ligação de um cliente a um servidor FTP de forma a transferir dados via Internet ou intranet. Normalmente, é necessário um programa que permita fazer a ligação ao servidor FTP, embora em alguns casos também seja possível utilizar um browser. Por exemplo, para colocarmos a nossa página Web num servidor de forma a permitir que seja acedido por qualquer pessoa na Internet, utilizamos este protocolo para copiar os ficheiros (através da aplicação/browser). Um endereço de FTP poderá ser do tipo: ftp://paginas.clix.pt (repara no ftp:// em vez de html://). Exemplos de aplicações FTP: FileZilla e SmartFTP. SNMP (Simple Network Management Protocol) É um procotolo de comunicação que permite recolher informação sobre todos os componentes que estão na rede – switches, routers, bridges e computadores.
  10. 10. 52 UDP (User Datagram Protocol) É um protocolo de transporte, tal como o TCP, mas não é tão confiável. Isto é porque o UDP não é orientado à conexão, não estabelece um caminho prévio antes de enviar os dados nem confirma se eles foram bem entregues. Os dados são simplesmente enviados, o que o torna mais rápido que o TCP (mas menos eficiente...). Algumas aplicações utilizam UDP para garantir uma maior velocidade, mesmo podendo haver perda de dados (nem sempre é fundamental obter TODOS os dados – por exemplo, numa comunicação de vídeo, pode-se admitir “saltos” nas imagens). ARP (Address Resolution Protocol) O ARP estabelece uma ligação entre o endereço físico da placa de rede (o endereço MAC) e o endereço IP. Uma placa de rede contém uma tabela onde está registada a associação entre endereços IP (lógicos) e endereços MAC (físicos) de todos os dispositivos da rede. Quando um computador, por exemplo, quer comunicar com outro na rede, verifica essa tabela para saber se o computador está presente na rede. Se estiver, envia os dados e o tráfego na rede é diminuído (pois os dados são enviados directamente para o endereço correcto). Caso não encontre o outro computador, tem de enviar um sinal chamado de pedido ARP para determinar o seu endereço. ICMP (Internet Control Message Protocol) O ICMP trabalha em conjunto com o IP e serve para enviar mensagens para responder a pacotes de informação que não foram entregues correctamente. Quando isto acontece, é enviada uma mensagem ICMP e os dados voltam a ser enviados. Os routers e gateways devem estar programados para enviar mensagens ICMP quando receberem datagramas que provoquem algum erro. As mensagens ICMP geralmente são enviadas automaticamente em uma das seguintes situações: • Um pacote IP não consegue chegar ao seu destino (i.e. Tempo de vida do pacote expirado) • O Gateway não consegue retransmitir os pacotes na frequência adequada (i.e. Gateway congestionado) • O router indica uma rota melhor para a máquina a enviar pacotes. Exemplos de ferramentas usadas em Windows baseadas nesse protocolo são: - ping - tracert
  11. 11. 53 DHCP (Dynamic Host Configuration Protocol) Dynamic Host Configuration Protocol, é um protocolo (que faz parte do conjunto de protocolos TCP/IP) que oferece configuração dinâmica de terminais. Por exemplo, concede endereços IP, máscaras de rede e outros parâmetros de configuração aos clientes (nós) da rede. O DHCP usa um modelo cliente-servidor, no qual o servidor DHCP mantém a gestão dos endereços IP usados na rede. Normalmente, um router como os utilizados em casa utiliza este protocolo para atribuir os IPs aos computadores da rede. Resumidamente, o DHCP opera da seguinte forma: • Um cliente envia um pacote de dados UDP em broadcast (ou seja, destinado a todas as máquinas) com um pedido DHCP • Os servidores DHCP que capturarem este pacote irão responder com um pacote de configurações onde constará, pelo menos, um endereço IP, uma máscara de rede e outros dados opcionais, como o gateway, servidores de DNS, etc. Critérios de atribuição de IPs O DHCP oferece três tipos de atribuição (alocação) de endereços IP: • Atribuição manual (IP estático) - existe uma tabela de associação entre o endereço MAC do cliente e o endereço IP a fornecer. Esta associação é feita manualmente pelo administrador da rede (por exemplo, configurando o router para isso); por conseguinte, apenas os clientes cujo MAC consta nesta lista poderão receber configurações desse servidor; os endereços das placas de rede dos computadores têm de ser configuradas manualmente. • Atribuição automática - Onde o cliente obtém um endereço de um espaço de endereços possíveis, especificado pelo administrador. Geralmente qualquer endereço MAC é aceite. • Atribuição dinâmica - neste caso, é necessário que um computador ou outro dispositivo (tipicamente, um router) que faça a atribuição dos endereços. Este dispositivo utiliza o protocolo DHCP para atribuir IPs aos computadores da rede que os requisitem. Para isso, os computadores deverão estar configurados para requisitar um IP ao servidor de DHCP.
  12. 12. 54 Na figura abaixo podemos ver a janela de configuração do endereço IP no sistema operativo Windows XP. Repara nas duas opções de cima: “obter automaticamente um endereço IP” (para pedir ao servidor DHCP um endereço) e “utilizar o seguinte endereço IP” (para definir manualmente o endereço na caixa respectiva). Nesta janela é possível configurar outros endereços, como o Gateway (ver adiante) e os servidores DNS (como já vimos, o protocolo DHCP também é capaz de atribuir estes endereços). Configuração de endereços IP (Windows XP) endereço da máquina (da sua placa de rede) máscara de sub-rede endereço do Gateway (ver adiante) endereço dos servidores DNS (normalmente são disponibilizados pelo fornecedor de Internet)
  13. 13. 55 DNS Domain Name System (Sistema de Nomes de Domínios), é um sistema que utiliza um protocolo de gestão de nomes cuja função é traduzir os endereços escritos “por palavras” em endereços IP escritos em números. Ou seja, os servidores DNS, contêm listas de endereços onde os nomes estão relacionados com endereços IP. Por exemplo, o endereço (URL) www.google.com pode corresponder, num servidor DNS, ao endereço IP 64.68.92.29. Funcionam como uma espécie de Páginas Amarelas gigante, com listas de milhares de endereços de servidores existentes. Existem inúmeros servidores DNS “espalhados pela Internet”; normalmente, os fornecedores de Internet têm os seus próprios servidores DNS, e os seus clientes têm de configurar a sua rede de forma a obter os IPs a partir desses servidores. Funcionamento Por exemplo, ao escrevermos www.google.com no browser, o nosso “pedido” vai para um servidor DNS, que procura na sua lista o IP correspondente (por exemplo, 64.68.92.29) e o devolve ao nosso browser. A partir daí, o browser liga-se automaticamente a esse endereço IP. Normalmente, ao configurar uma rede/host é necessário definir o endereço IP do servidor DNS. Se este não for automaticamente atribuído por DHCP, então, teremos de saber esse endereço. Uma vez mais, na nossa rede doméstica, poderemos perguntar ao fornecedor de Internet quais os endereços dos seus servidores DNS para configurarmos a nossa rede (ou, então o nosso router obtém automaticamente esses endereços a partir dos servidores do fornecedor de Internet).
  14. 14. 56 IPX/SPX Este protocolo é um protocolo proprietário (não é aberto/livre como o TCP/IP) desenvolvido pela empresa Novell. IPX é o protocolo de um sistema operativo para redes cliente-servidor chamado Netware. Fornece aos clientes serviços de partilha de ficheiros, impressão, comunicação, fax, segurança, funções de correio eletrónico, etc. O IPX/SPX tornou-se importante durante o início dos anos 80 como uma parte integrante do Netware, da Novell. O NetWare tornou-se um padrão de facto para o Sistema Operativo de Rede (SOR), da primeira geração de Redes Locais. A Novell complementou o seu SOR com um conjunto de aplicações orientada para negócios, e ferramentas para ligação das máquinas cliente. NetBeui É um protocolo de transporte de dados. É uma versão melhorada de um outro protocolo – NETBIOS - usado por sistemas operativos de rede tais como: LAN Manager, LAN Server, Windows for Workgroups, Windows 95 e Windows NT. O NetBIOS foi desenvolvido para a IBM PC Network. O NetBEUI foi melhorado pela IBM para o seu PC LAN Program e pela Microsoft para o MS-NET em 1985. Mais tarde, a Microsoft e a Novel melhoraram-no para os seus sistemas operativos de rede, LAN Manager e Netware. O NetBEUI tem sido trocado pelo TCP/IP. Ao contrário do TCP/IP, o NetBEUI foi concebido para ser usado apenas em pequenas redes, e por isso acabou por se tornar um protocolo extremamente simples, que tem um bom desempenho e não precisa de nenhuma configuração manual, como no TCP/IP. Em compensação, o NetBEUI pode ser usado em redes de no máximo 25 máqunas e não é permitido interligar duas redes com ele. É possível manter o NetBIOS activo juntamente com o TCI/IP ou outros protocolos; neste caso os clientes tentarão comunicar usando todos os protocolos disponíveis (se vires as propriedades de uma ligação de rede no Windows, ainda podes encontrar o NetBEUI, juntamente com o TCP/IP). Apesar de suas limitações, o NetBEUI ainda é usado em pequenas redes, por ser fácil de instalar e utilizar, e ser razoavelmente rápido.

×