Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Apostila Redes, Notas de estudo de Cultura

ApostilaRedes.pdf

Tipologia: Notas de estudo

2012

Compartilhado em 08/10/2012

renato-felix-11
renato-felix-11 🇧🇷

1 documento

1 / 93

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
SANTA CATARINA
Campus São José
Redes de Computadores e a Internet
Evandro Canu
Instituto Federal de Santa Catarina
Campus ao Jos´e
Agosto de 2011.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d

Pré-visualização parcial do texto

Baixe Apostila Redes e outras Notas de estudo em PDF para Cultura, somente na Docsity!

SANTA CATARINA Campus São José

Redes de Computadores e a Internet

Evandro Cant´u

Instituto Federal de Santa Catarina Campus S˜ao Jos´e [email protected]

Agosto de 2011.

Apresenta¸c˜ao

O objetivo desde texto ´e servir de material de apoio para um curso introdut´orio de redes de computadores, voltado para a disciplina de Redes de Computadores I do CST em Sistemas de Telecomunica¸c˜oes e para a disciplina de Redes de Computadores do Curso T´ecnico de Teleco- munica¸c˜oes do Instituto Federal de Santa Catarina, Campus S˜ao Jos´e.

As redes de computadores s˜ao estudadas tomando como referˆencia a arquitetura Internet, estudada em torno de seus principais protocolos, o TCP/IP.

A principal referˆencia bibliogr´afica utilizada na constru¸c˜ao deste material foi o livro de KUROSE e ROSS, Redes de Computadores e a Internet: Uma abordagem top-down, no qual os autores abordam os conceitos de redes de computadores, iniciando pelas aplica¸c˜oes e depois descendo pelas demais camadas que formam a arquitetura Internet. As RFCs (Request for comments), que constituem os padr˜oes para a Internet, tamb´em foram consultadas e sempre que poss´ıvel foram inclu´ıdos ilustra¸c˜oes e desenhos constantes nestes documentos.

O texto est´a organizado em cinco cap´ıtulos. O primeiro faz uma introdu¸c˜ao `as redes de com- putadores e a arquitetura Internet, dando uma vis˜ao ampla das redes e dos principais conceitos envolvidos. O segundo cap´ıtulo apresenta os protocolos e as aplica¸c˜oes de rede, apresentando em particular a aplica¸c˜ao WWW, o correio eletrˆonico e a transferˆencia de arquivos e a aplica¸c˜ao DNS. O terceiro cap´ıtulo apresenta os protocolos de transporte da Internet, UDP e TCP. O quarto cap´ıtulo aparesenta os protocolos de rede da Internet, cujo principal componente ´e o protocolo IP. Finalmente, o quinto cap´ıtulo apresenta as redes locais e os protocolos de enlace, com destaque para a tecnologia Ethernet.

Evandro Cant´u, agosto de 2011.

  • 1 Introdu¸c˜ao as redes de computadores e a Internet
    • 1.1 A Rede Internet
    • 1.2 Formas de conectividade em rede
    • 1.3 Classifica¸c˜ao das redes quanto a abrangˆencia geogr´afica
    • 1.4 Comuta¸c˜ao de pacotes X comuta¸c˜ao de circuitos
    • 1.5 Tipos de roteamento em redes de comuta¸c˜ao de pacotes
    • 1.6 Vaz˜ao, atraso e perda de pacotes
    • 1.7 Suporte a servi¸cos comuns para as aplica¸c˜oes
    • 1.8 Padroniza¸c˜ao na ´area de redes de computadores
    • 1.9 Arquitetura de redes
    • Protocolos de Aplica¸c˜ao 2 Aplica¸c˜oes Internet e
    • 2.1 Protocolos de aplica¸c˜ao
    • 2.2 Clientes e servidores
    • 2.3 Portas e comunica¸c˜ao atrav´es da rede
    • 2.4 Endere¸camento das aplica¸c˜oes
    • 2.5 Agente usu´ario
    • 2.6 Servi¸cos de transporte utilizados pelas aplica¸c˜oes
    • 2.7 Protocolo HTTP
    • 2.8 Protocolo FTP
    • 2.9 Protocolo SMTP
    • 2.10 Telnet e SSH
    • 2.11 DNS
  • 3 Camada de Transporte da Internet
    • 3.1 O servi¸co de multiplexa¸c˜ao e demultiplexa¸c˜ao de aplica¸c˜oes
    • 3.2 UDP (User Datagram Protocol )
      • 3.2.1 Checksum
    • 3.3 TCP (Transmission Control Protocol )
      • 3.3.1 Mecanismo de transmiss˜ao Garantida
      • 3.3.2 Segmento TCP
      • 3.3.3 N´umeros de sequˆencia e reconhecimento no TCP
      • 3.3.4 O servi¸co transferˆencia de dados garantida no TCP
      • 3.3.5 Gerenciamento de conex˜oes no TCP
      • 3.3.6 Controle de fluxo
      • 3.3.7 Temporiza¸c˜ao no TCP
      • 3.3.8 Controle de congestionamento no TCP
  • 4 Camada Rede
    • 4.1 Protocolo IP (Internet protocol )
      • 4.1.1 Datagrama IP
      • 4.1.2 Fragmenta¸c˜ao do IP
    • 4.2 Endere¸camento IP
      • 4.2.1 Classes de endere¸camento de IP
      • 4.2.2 Divis˜ao em sub-redes
      • 4.2.3 Endere¸cos IP privados
    • 4.3 NAT (Network Address Translation)
    • 4.4 protocolo DHCP
    • 4.5 Protocolo ARP
    • 4.6 Protocolo ICMP
    • 4.7 Roteamento
      • 4.7.1 Roteamento est´atico e protocolos de roteamento
    • 4.8 Protocolo IPv6
      • 4.8.1 Estrutura do datagrama IPv6
      • 4.8.2 ICMPv6
      • 4.8.3 Autoconfigura¸c˜ao
      • 4.8.4 Transi¸c˜ao de IPv4 para IPv6
  • 5 Protocolos de Enlace e Redes Locais
    • 5.1 Protocolos de enlace
      • 5.1.1 Servi¸cos oferecidos pelos protocolos de enlace
      • 5.1.2 Protocolos de enlace ponto-a-ponto
      • 5.1.3 Protocolos de enlace de m´ultiplo acesso
    • 5.2 Redes Locais
      • 5.2.1 Topologia de redes locais
      • 5.2.2 Placas adaptadoras
      • 5.2.3 Endere¸cos f´ısicos
      • 5.2.4 Ethernet
    • 5.3 Hubs, pontes e switches
      • 5.3.1 Hubs
      • 5.3.2 Pontes
      • 5.3.3 Switches

Cap´ıtulo 1

Introdu¸c˜ao as redes de

computadores e a Internet

1.1 A Rede Internet

A rede Internet ´e hoje a principal redes de computadores no mundo e ser´a utilizada como exemplo principal no nosso estudo sobre redes de computadores.

A Internet ´e na verdade uma “rede de redes”, interligando milh˜oes de dispositivos computacionais espalhados ao redor do mundo, cuja topologia b´asica est´a ilustrada na figura 1.1.

A maioria dos dispositivos que comp˜oem a Internet ´e formada por computadores pessoais, esta¸c˜oes de trabalho, ou servidores, que armazenam e transmitem informa¸c˜oes, como por exemplo, p´aginas Web, arquivos de texto ou mensagens eletrˆonicas. Todos estes dispositivos s˜ao chamados hospedeiros (hosts) ou sistemas terminais.

As aplica¸c˜oes de rede, como por exemplo, pagina¸c˜ao na Web, transferˆencia de arquivos ou correio eletrˆonico, rodam nos sistemas terminais.

Os sistemas terminais, assim como os principais componentes da Internet, precisam de protocolos de comunica¸c˜ao, que servem para controlar o envio e a recep¸c˜ao das informa¸c˜oes na Internet. O TCP (Transmission Control Protocol ) e o IP (Internet Proto- col ) s˜ao os principais protocolos da Internet, da´ı o fato de a Internet ser tamb´em conhecida como rede TCP/IP.

Os sistemas terminais s˜ao conectados entre si por meio de enlaces de comunica¸c˜ao, que por sua vez podem ser de diferentes tipos, como por exemplo, um enlace ponto-a-ponto (tipo o PPP) ou multiponto (como uma rede local Ethernet). Os enlaces de comunica¸c˜ao, por sua vez, s˜ao suportados por um meio f´ısico, os quais podem ser cabos coaxiais, fios de cobre, fibras ´opticas ou o ar a partir do uso do espectro de freq¨uˆencia de r´adio.

Na Internet, nem todos os computadores s˜ao diretamente conectados, neste caso, utilizam-se dispositivos de chaveamento intermedi´ario, chamados roteadores (routers ou ainda gateways).

Em cada roteador da Internet as mensagens que chegam nos enlaces de entrada s˜ao armazenadas e encaminhadas (store-and-forward ) aos enlaces de sa´ıda, seguindo de

Figura 1.1: Rede Internet (KUROSE; ROSS, 2006a).

roteador em roteador at´e seu destino. Neste processo, a t´ecnica de comuta¸c˜ao utilizada ´e conhecida como comuta¸c˜ao de pacotes, em contraste com a comuta¸c˜ao de circuitos que ´e comumente utilizada nos sistemas telefˆonicos.

Na comuta¸c˜ao de pacotes, as mensagens que ser˜ao transmitidas s˜ao fragmentadas em pacotes menores, os quais viajaram na Internet de forma independente uns dos outros.

O protocolo IP define o formato dos pacotes na Internet, os quais ser˜ao encaminha- dos segundo uma rota estabelecida por protocolos de roteamento na malha de roteadores da Internet. Esta rota ´e constru´ıda tendo como base o endere¸co de destino de cada pacote, conhecido como endere¸co IP.

Al´em de um endere¸co IP, um nome tamb´em pode ser associado a um sistema terminal a fim de facilitar sua identifica¸c˜ao por n´os humanos. Por exemplo, 200.135.37.65 ´e o endere¸co IP e www.sj.ifsc.edu.br ´e o nome do servidor Web do Campus S˜ao Jos´e do IF- SC. A aplica¸c˜ao DNS (domain name system) associa dinamicamente nomes a endere¸cos IP.

Em outras palavras, pode-se dizer que a Internet ´e uma rede de redes, interconectando redes de computadores p´ublicas e privadas, as quais devem rodar o protocolo IP em conformidade com a conven¸c˜ao de endere¸cos IP e nomes da Internet.

A topologia da Internet ´e hier´arquica, onde os sistemas terminais s˜ao conectados a provedores locais (ou ISP – Internet Service Provider ), que por sua vez s˜ao conectados a provedores regionais, e estes ´ultimos a provedores nacionais ou internacionais.

Figura 1.3: Rede chaveada.

1.3 Classifica¸c˜ao das redes quanto a abrangˆencia ge-

ogr´afica

Uma forma de classificar as redes de computadores ´e quanto a sua abrangˆencia geogr´afica. Dois exemplos bem conhecidos s˜ao as rede locais (ou LANs – local area networks) e as redes geograficamente distribu´ıdas (ou WANs – wide area networks). As LANs geralmente est˜ao limitadas ao espa¸co de uma institui¸c˜ao. As WANs, por sua vez, tˆem alcance global, como a Internet.

Al´em da quest˜ao do tamanho, este tipo de classifica¸c˜ao tamb´em tem rela¸c˜ao com a tecnologia utilizada para interconex˜ao em rede. Por exemplo, uma rede local geralmente conecta diretamente seus hospedeiros por um enlace multiponto, como descrito na sess˜ao anterior. As WANs, por outro lado, geralmente s˜ao formadas pela interconex˜ao de v´arias redes por meio de elementos de chaveamento, como roteadores.

Outras redes s˜ao ainda classificadas como redes metropolitanas (MANs – metro- politan area networks), as quais tem abrangˆencia de uma regi˜ao metropolitana. Quanto as tecnologias empregadas nas redes MANs, podem ser tanto a interconex˜ao de redes por meio de elementos de chaveamento e utilizando um backbone comum, como tamb´em as novas tecnologias redes sem fio, como as redes WiMax.

Outra denomina¸c˜ao utilizada s˜ao as redes pessoais (PAMs – personal area network ), as quais tem a abrangˆencia de uma sala, como as redes Bluetooth (IEEE802.15), as quais permitem interconectar diversos disposistivos por meio de enlaces sem fio.

1.4 Comuta¸c˜ao de pacotes X comuta¸c˜ao de circuitos

Nas redes de computadores se utiliza a comuta¸c˜ao de pacotes como tecnologia de comunica¸c˜ao no n´ucleo da rede, em contraste com as redes telefˆonicas tradicionais que usam a comuta¸c˜ao de circuitos.

Na comuta¸c˜ao de circuitos, quando dois sistemas terminais desejam se comunicar a rede estabelece um circuito dedicado fim-a-fim entre os dois sistemas. E por exemplo o´ que acontece numa liga¸c˜ao telefˆonica. A partir do n´umero discado, a rede estabelece um caminho entre os dois interlocutores e reserva um circuito para possibilitar a conversa¸c˜ao. O circuito ficar´a reservado durante todo o tempo em que durar a comunica¸c˜ao.

A comuta¸c˜ao de circuitos se mostrou ineficiente para ser aplicada nas redes de compu-

tadores devido as caracter´ısticas do tr´afego nestas redes. Nas primeiras redes de compu- tadores as aplica¸c˜oes t´ıpicas eram o acesso remoto e a transferˆencia de arquivos, nas quais o tr´afego consistia de um fluxo espor´adico de dados, com curtos intervalos de atividade espa¸cados no tempo, diferente do fluxo cont´ınuo do tr´afego telefˆonico.

Na comuta¸c˜ao de pacotes, os recursos da rede n˜ao s˜ao reservados. As mensagens usam os recursos da rede na medida da necessidade, compartilhando os recursos na forma de uma “multiplexa¸c˜ao estat´ıstica”, como mostra a figura 1.4. Considere, por exemplo, o que acontece quando um computador deseja enviar um pacote de dados a outro computa- dor da rede. Como na comuta¸c˜ao de circuitos, o pacote ser´a transmitido sobre uma s´erie de diferentes enlaces de comunica¸c˜ao, todavia, n˜ao haver´a uma reserva de um circuito fim-a-fim. O pacote ser´a encaminhado de roteador em roteador, e caso o enlace de sa´ıda de um roteador de sua rota esteja ocupado, o pacote dever´a ser armazenado e aguardar a libera¸c˜ao do enlace em uma fila, sofrendo um atraso.

Figura 1.4: Comutacao de Pacotes (KUROSE; ROSS, 2006a).

Os defensores da comuta¸c˜ao de pacotes sempre argumentam que a comuta¸c˜ao de circuitos ´e ineficiente, pois reserva o circuito mesmo durante os per´ıodos de silˆencio na co- munica¸c˜ao. Por exemplo, durante uma conversa telefˆonica, os silˆencios da conversa¸c˜ao, ou as esperas para chamar uma outra pessoa, n˜ao podem ser utilizados para outras conex˜oes. Al´em disto, os tempos necess´arios para o estabelecimento de circuitos fim-a-fim s˜ao gran- des, al´em de ser uma tarefa complicada e requerer esquemas complexos de sinaliza¸c˜ao ao longo de todo o caminho da comunica¸c˜ao.

Por outro lado, os opositores da comuta¸c˜ao de pacotes argumentam que a mesma n˜ao seria apropriada para aplica¸c˜oes tempo real, como por exemplo conversas telefˆonicas, devido os atrasos vari´aveis em filas de espera, dif´ıceis de serem previstos. Todavia, com o desenvolvimento de t´ecnicas espec´ıficas e o aumento da velocidade dos enlaces, observa-se uma tendˆencia em dire¸c˜ao `a migra¸c˜ao dos servi¸cos telefˆonicos tamb´em para a tecnologia de comuta¸c˜ao de pacotes.

1.5 Tipos de roteamento em redes de comuta¸c˜ao de

pacotes

H´a duas classes de redes de comuta¸c˜ao de pacotes, as redes baseadas em datagramas, como a Internet, e as redes baseadas em circuito virtual. A diferen¸ca b´asica destas duas redes est´a na forma como os pacotes s˜ao roteados em dire¸c˜ao ao destino.

Roteamento em redes baseadas em circuito virtual

Nas redes baseadas em circuito virtual, a rota para os pacotes ´e estabelecida a priori, numa fase de estabelecimento do circuito virtual. Uma vez estabelecido o circuito virtual, todos os pacotes seguem pela mesma rota, cada um deles carregando a informa¸c˜ao de qual circuito virtual o mesmo deve tomar em cada roteador. Os exemplos de redes que utilizam esta t´ecnica incluem as redes X.25, as redes frame-relay e as redes ATM (asynchronous transfer mode).

O processo de estabelecimento de um circuito virtual ´e similar ao estabelecimento de conex˜ao nas redes de comuta¸c˜ao de circuitos, entretanto, os enlaces individuais n˜ao ficam reservados de forma exclusiva para uma ´unica conex˜ao, podendo, durante uma transmiss˜ao, serem compartilhados por outras transmiss˜oes.

Roteamento em redes baseadas em datagrama

Nas redes baseadas em datagramas, n˜ao h´a estabelecimento de conex˜ao ou circuito virtual. Os pacotes s˜ao encaminhados em fun¸c˜ao do endere¸co do destino.

Em muitos aspectos as redes baseadas em datagramas s˜ao an´alogas aos servi¸cos pos- tais. Quando algu´em vai enviar uma carta a um destinat´ario, o mesmo coloca a carta em um envelope e escreve o endere¸co do destino sobre o envelope. O endere¸co tem uma estrutura hier´arquica, incluindo, no caso do Brasil, o pa´ıs, o estado, a cidade, a rua e o n´umero da casa. Por exemplo, se algu´em enviar uma carta da Fran¸ca para sua casa, o correio da Fran¸ca primeiro vai direcionar a carta para o centro postal do Brasil (por exemplo, situado em S˜ao Paulo). O centro postal do Brasil vai ent˜ao direcionar a carta para Santa Catarina, estado destino da carta (na agˆencia central de Florian´opolis, por exemplo). A agˆencia de Florian´opolis vai ent˜ao direcion´a-la a agˆencia de sua cidade, que por sua vez vai repassar ao carteiro para entregar a carta emsua casa.

Na rede baseada em datagrama, cada pacote atravessa a rede contendo no cabe¸calho o endere¸co do n´o destino, que como o endere¸co postal, tem uma estrutura hier´arquica. Quando o pacote chega a um roteador, o mesmo examina uma parte do endere¸co e o encaminha ao roteador adjacente. No pr´oximo roteador o processo se repete.

Na Internet a comuta¸c˜ao de datagramas ´e implementada pelo protocolo IP, o qual ´e o respons´avel por estabelecer a rota pela qual seguir´a cada pacote na malha de roteadores. Esta rota ´e constru´ıda tendo como base o endere¸co de destino de cada pacote, conhecido como endere¸co IP.

O servi¸co de comunica¸c˜ao por datagramas oferecido pelo protocolo IP ´e conhecido

como servi¸co “melhor esfor¸co” (best effort), uma vez que n˜ao h´a garantia que o dado chegue ao destino. Este servi¸co envolve cada roteador no caminho entre o computador origem e o destino da comunica¸c˜ao.

A figura 1.6 ilustra, na forma de um mapa conceitual, uma taxonomia das redes de telecomunica¸c˜oes, mostrando as diferentes formas de comuta¸c˜ao e multiplexa¸c˜ao utiliza- das.

Figura 1.6: Taxonomia das redes de telecomunica¸c˜oes.

1.6 Vaz˜ao, atraso e perda de pacotes

Segundo Peterson e Davie (2004) a performance das redes de pacotes pode mensurada de dois modos principais:

  • Vaz˜ao (throughput), tamb´em chamada de largura de banda (bandwith);
  • Atraso (delay).

A vaz˜ao ´e definida como o n´umero de bits que podem ser transmitidos sobre a rede num dado tempo, sendo expressa em bits/segundo (bps). Por exemplo, numa rede Ether- net podemos ter como vaz˜ao 10Mbps. Muitas vezes usa-se o termo taxa de transmiss˜ao para se referir a vaz˜ao.

O atraso ´e o tempo que um pacote leva para atravessar uma rede desde a origem at´e o destino, passando pelos roteadores e enlaces intermedi´arios. O atraso ´e medido em termos de tempo. Por exemplo, uma rede transcontinental pode ter um atraso de 20 milisegundos, isto ´e, um pacote leva 20 ms para atravessar a rede.

Ao percorrer uma rede, um pacote sofre uma s´erie de atrasos em cada um dos n´os do caminho. Este atraso em cada n´o da rede tem quatro componentes principais: o atraso de processamento, o atraso de fila, o atraso de transmiss˜ao e o atraso de propaga¸c˜ao (KUROSE; ROSS, 2006b).

Intuitivamente, podemos ver a rede como provendo um canal l´ogico de comunica¸c˜ao para que os processos de aplica¸c˜ao cliente e servidor possam se comunicar. Para usar este canal de comunica¸c˜ao, os programas de aplica¸c˜ao cliente enviam seus pedidos atrav´es de uma “porta”, que conecta o cliente ao servidor, e atrav´es da qual ele espera a resposta do servi¸co ´e requisitado.

Dois tipos comuns de servi¸co solicitado pelas aplica¸c˜oes `a rede s˜ao:

  • Servi¸co tipo pedido/resposta (request/reply);
  • Servi¸co tipo fluxo de dados tempo real (audio/video streaming).

A pagina¸c˜ao na Web ´e um exemplo de servi¸co tipo pedido/resposta, onde um processo cliente solicita uma informa¸c˜ao e um processo servidor fornece a informa¸c˜ao solicitada. N˜ao h´a restri¸c˜oes de tempo entre o pedido e a resposta, entretanto, ´e necess´ario que a informa¸c˜ao transmitida seja livre de erros.

Uma conversa telefˆonica via Internet ´e um exemplo de fluxo de dados em tempo real, neste caso h´a restri¸c˜oes temporais na transmiss˜ao, por outro lado, um pequeno silˆencio ocasionado por um erro ou ru´ıdo pode n˜ao ser um problema grave para o entendimento geral da conversa.

Para estes dois tipos de requisi¸c˜oes de servi¸cos, muitas redes de computadores disp˜oem de dois tipos de servi¸cos de transporte:

  • Servi¸co orientado a conex˜ao, com transmiss˜ao de dados garantida;
  • Servi¸co n˜ao orientado a conex˜ao, com transmiss˜ao de dados tipo “melhor esfor¸co” (best effort).

Quando uma aplica¸c˜ao usa o servi¸co orientado a conex˜ao o cliente e o servidor tro- cam pacotes de controle entre si antes de enviarem os pacotes de dados. Isto ´e chamado de procedimento de estabelecimento de conex˜ao (handshaking), onde se estabelecem os parˆametros para a comunica¸c˜ao. Uma vez conclu´ıdo o handshaking a conex˜ao ´e dita es- tabelecida e os dois sistemas terminais podem trocar dados. O servi¸co de transferˆencia garantida, que assegura que os dados trocados s˜ao livres de erro, o que ´e conseguido a partir de temporiza¸c˜oes, mensagens de reconhecimento e retransmiss˜ao de pacotes. Por exemplo, quando um sistema terminal B recebe um pacote de A, ele envia um reconheci- mento; quando o sistema terminal A recebe o reconhecimento ele sabe que o pacote que ele enviou foi corretamente recebido; caso A n˜ao recebe confirma¸c˜ao, ele assume que o pacote n˜ao foi recebido por B e retransmite o pacote.

No servi¸co n˜ao orientado a conex˜ao n˜ao h´a handshaking. Quando um lado de uma aplica¸c˜ao quer enviar pacotes ao outro lado ele simplesmente envia os pacotes. Como o servi¸co ´e n˜ao garantido, tamb´em n˜ao h´a reconhecimento, de forma que a fonte nunca tem certeza que o pacote foi recebido pelo destinat´ario. Como o servi¸co ´e mais simples, os dados podem ser enviados mais rapidamente.

Na Internet, o servi¸co orientado a conex˜ao ´e implementado pelo protocolo TCP (Transmission Control Protocol ) e o servi¸co n˜ao orientado a conex˜ao ´e implementado

pelo protocolo UDP (User Datagram Protocol ). As aplica¸c˜oes conhecidas como o tel- net, correio eletrˆonico, transferˆencia de arquivos e WWW usam o TCP. Outras aplica¸c˜oes usam o UDP, como o DNS (domain name system) e aplica¸c˜oes multim´ıdia como voz sobre Internet e aplica¸c˜oes de ´audio e v´ıdeo.

1.8 Padroniza¸c˜ao na ´area de redes de computadores

Durante os primeiros tempos das redes de computadores os diversos fabricantes trabalha- ram de forma separada no desenvolvimento de suas tecnologias, muitas delas incompat´ıveis entre si. Com o intuito de estabelecer uma padroniza¸c˜ao e permitir uma integra¸c˜ao en- tre as diversas tecnologias, a ISO (International Standard Organization – www.iso.org), juntamente com o ITU (International Telecommunication Union – www.itu.int), or- ganismos respons´aveis pelo estabelecimento de normas e padr˜oes em telecomunica¸c˜oes, definiram um modelo de referˆencia com sete camadas de protocolos. Este modelo fi- cou conhecido como modelo OSI (open system interconnection), no qual cada camada deveria criar um n´ıvel de abstra¸c˜ao diferente, devendo realizar uma fun¸c˜ao bem definida a camada superior, omitindo detalhes quanto a sua implementa¸c˜ao.

As sete camadas do modelo OSI, apresentadas na figura 1.7, tiveram muito sucesso na literatura de redes de computadores, sendo uma referˆencia para a sistematiza¸c˜ao e descri¸c˜ao protocolos de rede. Todavia, o modelo OSI n˜ao teve sucesso comercial, uma vez que poucos produtos seguiram a risca as recomenda¸c˜oes do modelo.

Aplicação

Transporte

Rede

Enlace Física

Sessão

Apresentação

Camada 1

Camada 2

Camada 3

Camada 4

Camada 5

Camada 6

Camada 7

Figura 1.7: As sete camadas do modelo OSI.

Outro importante organismo de padroniza¸c˜ao na ´area de redes de computadores ´e o IETF (Internet Engineering Task Force – www.ietf.org), o qual coordena a pradoniza¸c˜ao dos protocolos para a Internet. Cada padr˜ao ´e publicado atrav´es de documentos conheci- dos como RFCs (Request For Comments – www.ietf.org/rfc.html), os quais cont´em a descri¸c˜ao de cada protocolo padr˜ao utilizado na Internet.

Na ´area de redes locais de computadores os esfor¸cos de padroniza¸c˜ao s˜ao coordenados pelo IEEE (Institute of Electrical and Electronics Engineers – www.ieee.org), atrav´es dos padr˜oes IEEE802. Dentre as tecnologias conhecidas para redes locais em uso atual- mente, destaca-se a redes Ethernet, padronizadas como IEEE802-3, as redes locais sem fio IEEE802-11, as redes metropolitanas sem fio IEEE802-16, entre outras.

um servi¸co apropriado para que os processos de aplica¸c˜ao troquem mensagens. Por fim, camada superior poderia definir as regras para a troca de mensagens entre os processos de aplica¸c˜ao espec´ıficos.

Programas de aplicação Canais processo a processo Conectividade host a host Comunicação sobre hardware

Figura 1.9: Exemplo de arquitetura em camadas.

No caso dos canais de comunica¸c˜ao l´ogicos fim a fim entre os processos de aplica¸c˜ao, para atender aos dois tipos de aplica¸c˜oes descritos na se¸c˜ao 1.7 (aplica¸c˜oes tipo pedido/- resposta e aplica¸c˜oes tipo fluxo de dados tempo real), poder-se-ia ter dois canais distintos, como mostrado na figura 1.10, um oferecendo um servi¸co orientado a conex˜ao e garantido, e outro oferecendo um servi¸co n˜ao orientado a conex˜ao. Esta arquitetura de redes, com quatro camadas de protocolos, ´e muito pr´oxima do modelo utilizado pela Internet.

Programas de aplicação

Conectividade host a host Comunicação sobre hardware

Canal tipo pedido/resposta

Canal tipo fluxo de dados

Figura 1.10: Arquitetura em camadas com alternativas de servi¸cos em uma dada camada.

Na arquitetura Internet os diversos protocolos est˜ao organizados em quatro camadas chamadas: a camada de aplica¸c˜ao, a camada de transporte, a camada rede^1 e a camada enlace/f´ısica^2. A figura 1.11 mostra uma ilustra¸c˜ao da pilha de protocolos Internet.

Camada de Aplica¸c˜ao

Os protocolos da camada de aplica¸c˜ao definem as regras e o formato das mensagens que s˜ao trocadas entre as aplica¸c˜oes de rede, por exemplo, a aplica¸c˜ao WWW (world wide web) ´e governada pelas regras do protocolo de aplica¸c˜ao HTTP (hiper text transfer protocol );

(^1) O modelo de referˆencia da arquitetura Internet define esta camada como camada inter-rede, en- tretanto, muitos autores se referem `a ela simplesmente como camada rede. (^2) O modelo Internet n˜ao especifica claramente o que acontece abaixo da camada rede; alguns autores, como Tanenbaum (2003), se referem a esta camada como camada host/rede; outros autores, como Kurose e Ross (2006a), a dividem em camada enlace e camada f´ısica, como no modelo OSI.

Figura 1.11: Camadas da arquitetura Internet.

o correio eletrˆonico envia as mensagens usando o protocolo de aplica¸c˜ao SMTP (simple mail transfer protocol ); a transferˆencia de arquivos usa o protocolo de aplica¸c˜ao FTP (file transfer protocol ). As mensagens trocadas entre as entidades da camada aplica¸c˜ao utilizam os canais disponibilizados pelos protocolos da camada inferior.

Camada de Transporte

Os protocolos da camada de transporte garantem um canal de comunica¸c˜ao l´ogico fim- a-fim entre os processos rodando no lado do cliente e no lado do servidor, para que as aplica¸c˜oes possam trocar mensagens entre si. Esta camada oferece dois tipos de servi¸cos `as aplica¸c˜oes:

  • Um servi¸co orientado a conex˜ao, fornecido pelo protocolo TCP (Transmission Con- trol Protocol ), utilizado por aplica¸c˜oes tipo pedido/resposta;
  • Um servi¸co de datagrama, n˜ao orientado a conex˜ao, atrav´es do protocolo UDP (User Datagram Protocol ), utilizado por aplica¸c˜oes tipo fluxo de dados em tempo real.

Como em cada computador da rede podemos ter diferentes processos de aplica¸c˜ao rodando, por exemplo, v´arias se¸c˜oes de navegadores Web, um dos servi¸cos oferecidos pela camada de transporte ´e a multiplexa¸c˜ao/demultiplexa¸c˜ao de aplica¸c˜oes, entregando as mensagens em “portas” espec´ıficas para cada processo.

Camada rede

A camada rede ´e fundamentada num servi¸co n˜ao-orientado a conex˜ao, no qual as men- sagens s˜ao fragmentadas em pacotes, chamados datagramas, os quais atravessam a rede de roteador em roteador, desde o computador origem at´e o computador destino usando a t´ecnica de comuta¸c˜ao de pacotes. Nesta viagem, uma das tarefas dos protocolos da ca- mada rede ´e definir a rota que seguir˜ao os datagramas. Na Internet o principal protocolo da camada rede ´e o protocolo IP (Internet Protocol ).

Os componentes principais da camada rede s˜ao:

  • O protocolo IP, que define o formato do datagrama e a forma de endere¸camento;
  • Os protocolos e algoritmos de roteamento.