632
LEITURA INDICADA SOMENTE PARA FINS EDUCACIONAIS. NÃO DISPENSA A AQUISIÇÃO DO LIVRO ORIGINAL

Andrew s. tenenbaum rede de computadores

Embed Size (px)

Citation preview

  • 1. LEITURA INDICADA SOMENTE PARA FINS EDUCACIONAIS.NO DISPENSA A AQUISIO DO LIVRO ORIGINAL

2. Redes de computadoresQuarta edio Andrew S. TanenbaumVrije UniversiteitAmsterdam, HolandaTraduo: Vandenberg D. de SouzaAnalista de sistemas e tradutorEditora CampusRedes de computadores, quarta edio, a introduo ideal s redes de hoje e s redes deamanh. Este best-seller clssico foi completamente atualizado para refletir as tecnologias maisnovas e mais importantes de redes, com nfase especial em redes sem fios, incluindo 802.11,Bluetooth, comunicao sem fios de banda larga, redes ad hoc, i-mode e WAP. Porm as redesfixas no foram ignoradas, com cobertura de ADSL, Internet via cabo, Ethernet de gigabit, redesno hierrquicas, NAT e MPLS. Alm disso, existe grande quantidade de material novo sobreaplicaes, inclusive mais de 60 pginas sobre a Web, e ainda rdio na Internet, voz sobre IP evdeo por demanda. Por fim, a cobertura de segurana de redes foi revista e expandida parapreencher um captulo inteiro.Autor, educador e pesquisador, Andrew S. Tanenbaum, vencedor do ACM Karl V. KarlstromOutstanding Educator Award, explica cuidadosamente como as redes funcionam do lado de dentro,desde o hardware subjacente na camada fsica at a camada de aplicao de nvel superior.Tanenbaum focaliza todos estes temas e muitos outros: Camada fsica (cobre, fibra ptica, redes sem fios, satlites e Internet via cabo) Camada de link de dados (conceitos fundamentais de protocolos, verificao de protocolos, HDLC, SLIP e PPP) Subcamada MAC (Ethernet de gigabit, 802.11, comunicao sem fios de banda larga e comutao) Camada de rede (algoritmos de roteamento, controle de congestionamento, QoS, lPv4 e IPv6) Camada de transporte (programao de soquetes, UDP, TCP, RTP e desempenho de redes) Camada de aplicao (e-mail, a Web, PHP, Web sem fios, MP3 e streaming audio) Segurana de redes (AES, RSA, criptografia quntica, IPsec e segurana da Web)O livro fornece descries detalhadas dos princpios associados a cada camada e apresenta muitosexemplos extrados da Internet e de redes sem fios. 3. NDICEPrefcio .......................................................................................................................................... ..15Captulo 1. Introduo ......................................................................................... ............................18 1.1 Usos de redes de computadores ...................................................................19 1.1.1 Aplicaes comerciais ............................................................................19 1.1.2 Aplicaes domsticas ............................................................................21 1.1.3 Usurios mveis .....................................................................................24 1.1.4 Questes sociais .....................................................................................26 1.2 Hardware de rede .........................................................................................27 1.2.1 Redes locais ............................................................................................29 1.2.2 Redes metropolitanas .............................................................................30 1.2.3 Redes geograficamente distribudas ......................................................31 1.2.4 Redes sem fios ........................................................................................33 1.2.5 Redes domsticas ...................................................................................35 1.2.6 Inter-redes ..............................................................................................36 1.3 Software de rede ..........................................................................................37 1.3.1 Hierarquias de protocolos ......................................................................37 1.3.2 Questes de projeto relacionadas s camadas........................................40 1.3.3 Servios orientados a conexes e servios sem conexes .....................41 1.3.4 Primitivas de servio...............................................................................42 1.3.5 O relacionamento entre servios e protocolos .......................................44 1.4 Modelos de referncia ..................................................................................44 1.4.1 O modelo de referncia OSI ...................................................................45 A camada fsica ............................................................................................45 A camada de enlace de dados ......................................................................46 A camada de rede .........................................................................................46 A camada de transporte ...............................................................................47 A camada de sesso .....................................................................................47 A camada de apresentao ...........................................................................47 A camada de aplicao .................................................................................47 1.4.2 O modelo de referncia TCP/IP ..............................................................47 A camada inter-redes ...................................................................................48 A camada de transporte ...............................................................................49 A camada de aplicao .................................................................................49 A camada host/rede ......................................................................................49 1.4.3 Uma comparao entre os mo delos de referncia OSI e TCP/IP ..........49 1.4.4 Uma crtica aos protocolos e ao modelo OSI .........................................51 Momento ruim ..............................................................................................51 Tecnologia ruim ............................................................................................52 Implementaes ruins ..................................................................................52 Poltica ruim .................................................................................................52 1.4.5 Uma crtica ao modelo de referncia TCP/IP .........................................53 1.5 Exemplos de redes ........................................................................................53 1.5.1 A Internet ...............................................................................................54 A ARPANET ..................................................................................................54 NSFNET........................................................................................................57 Utilizao da Internet ...................................................................................59 Arquitetura da Internet.................................................................................60 1.5.2 Redes orientadas a conexes: X.25, Frame Relay e ATM ......................61 X.25 e Frame Relay ......................................................................................62 ATM (Asynchronous Transfer Mode) ...........................................................62 Circuitos virtuais do ATM .............................................................................63 O modelo de referncia ATM ........................................................................64 1.5.3 Ethernet ..................................................................................................65 4. 1.5.4 LANs sem fios: 802.11 ............................................................................67 1.6 Padronizao de redes ..................................................................................69 1.6.1 Quem quem no mundo das telecomunicaes ....................................69 1.6.2 Quem quem no mundo dos padres internacionais ............................71 1.6.3 Quem quem no mundo dos padres da Internet .................................72 1.7 Unidades mtricas ........................................................................................73 1.8 Viso geral dos outros captulos do livro ......................................................74 1.9 Resumo .........................................................................................................75 Problemas ...........................................................................................................76Captulo 2. A camada fsica ............................................................................... ..............................78 2.1 A base terica da comunicao de dados .....................................................79 2.1.1 Anlise de Fourier...................................................................................79 2.1.2 Sinais limitados pela largura de banda ..................................................79 2.1.3 Taxa mxima de dados de um canal .......................................................81 2.2 Meios de transmisso guiados ......................................................................82 2.2.1 Meios magnticos ...................................................................................82 2.2.2 Par tranado ...........................................................................................83 2.2.3 Cabo coaxial ...........................................................................................84 2.2.4 Fibra ptica ............................................................................................84 Transmisso de luz na fibra .........................................................................85 Cabos de fibra ..............................................................................................86 Redes de fibra ptica ....................................................................................87 Comparao entre fibras pticas e fios de cobre .........................................88 2.3 Transmisso sem fios ....................................................................................89 2.3.1 O espectro eletromagntico ...................................................................90 2.3.2 Transmisso de rdio .............................................................................92 2.3.3 Transmisso de microondas....................................................................93 A poltica do espectro eletromagntico ........................................................93 2.3.5 Transmisso por ondas de luz ................................................................95 2.4 Satlites de comunicaes ............................................................................96 2.4.1 Satlites geoestacionrios ......................................................................97 2.4.2 Satlites terrestres de rbita mdia .......................................................99 2.4.3 Satlites terrestres de baixa rbita ......................................................100 Iridium ........................................................................................................100 Globalstar....................................................................................................101 Teledesic......................................................................................................101 2.4.4 Comparao entre satlites e fibra ptica ...........................................102 2.5 A rede pblica de telefonia comutada ........................................................103 2.5.1 Estrutura do sistema telefnico ...........................................................103 2.5.2 A poltica das companhias telefnicas .................................................105 2.5.3 O loop local: modems, ADSL e redes sem fios .....................................107 Modems ......................................................................................................108 Linhas digitais do assinante .......................................................................112 Loops locais sem fios...................................................................................115 2.5.4 Troncos e multiplexao .......................................................................117 Multiplexao por diviso de freqncia ...................................................117 Multiplexao por diviso de comprimento de onda .................................118 Multiplexao por diviso de tempo...........................................................119 SONET/SDH ...............................................................................................122 2.5.5 Comutao ............................................................................................124 Comutao de circuitos ..............................................................................124 Comutao de mensagens ..........................................................................125 Comutao de pacotes ...............................................................................126 2.6 O sistema de telefonia mvel ......................................................................128 5. 2.6.1 Telefones mveis de primeira gerao: voz analgica .........................129 AMPS (Advanced Mobile Phone System) ...................................................129 Canais .........................................................................................................131 Gerenciamento de chamadas .....................................................................131 2.6.2 Telefones mveis de segunda gerao: voz digital ..............................132 D-AMPS (Digital Advanced Mobile Phone System) ....................................132 GSM (Global System for Mobile Communications).....................................133 CDMA (Code Division Multiple Access) .....................................................135 2.6.3 Telefones mveis de terceira gerao: voz e dados digitais ................139 2.7 Televiso a cabo ..........................................................................................141 2.7.1 CATV (Community Antenna Television) ................................................141 2.7.2 Internet por cabo...................................................................................142 2.7.3 Alocao do espectro ............................................................................143 2.7.4 Modems a cabo .....................................................................................144 2.7.5 ADSL versus cabo .................................................................................146 2.8 Resumo .......................................................................................................147 Problemas .........................................................................................................147Captulo 3. A camada de enlace de dados ...................................................................... ...............150 3.1 Questes de projeto da camada de enlace de dados ..................................151 3.1.1 Servios oferecidos camada de rede .................................................151 3.1.2 Enquadramento ....................................................................................153 3.1.3 Controle de erros...................................................................................156 3.1.4 Controle de fluxo ..................................................................................157 3.2 Deteco e correo de erros .....................................................................157 3.2.1 Cdigos de correo de erros ...............................................................157 3.2.2 Cdigos de deteco de erros ..............................................................160 3.3 Protocolos elementares de enlace de dados ...............................................163 3.3.1 Um protocolo simplex sem restries ..................................................166 3.3.2 Um protocolo simplex stop-and-wait ....................................................167 3.3.3 Um protocolo simplex para um canal com rudo ..................................169 3.4 Protocolos de janela deslizante ..................................................................172 3.4.1 Um protocolo de janela deslizante de um bit .......................................174 3.4.2 Um protocolo que utiliza go back n ......................................................176 3.4.3 Um protocolo que utiliza retransmisso seletiva .................................181 3.5 Verificao de protocolos ...........................................................................185 3.5.1 Modelos de mquinas de estados finitos ..............................................185 3.5.2 Modelos de rede de Petri .....................................................................187 3.6 Exemplos de protocolos de enlace de dados ..............................................189 3.6.1 HDLC High-level Data Link Control .................................................189 3.6.2 A camada de enlace de dados na Internet............................................191 PPP Point-to-Point Protocol ....................................................................192 3.7 Resumo .......................................................................................................195 Problemas .........................................................................................................195Captulo 4 - A subcamada de controle de acesso ao meio .............................................. ...............198 4.1. O problema de alocao de canais ............................................................199 4.1.1. Alocao esttica de canais em LANs e MANs ...................................199 4.1.2 Alocao dinmica de canais em LANs e MANs ..................................200 4.2 Protocolos de acesso mltiplo ....................................................................201 4.2.1 ALOHA ..................................................................................................201 ALOHA puro ...............................................................................................201 Slotted ALOHA ...........................................................................................203 4.2.2 Protocolos CSMA (Carrier Sense Multiple Access) ..............................204 CSMA persistente e no persistente ..........................................................204 CSMA com deteco de colises ................................................................205 6. 4.2.3 Protocolos livres de coliso ..................................................................207 Um protocolo de mapa de bits ...................................................................207 Contagem regressiva binria .....................................................................208 4.2.4 Protocolos de disputa limitada .............................................................209 O protocolo adaptativo de percurso em rvore .........................................210 4.2.5 Protocolos WDMA .................................................................................211 4.2.6 Protocolos de LANs sem fios ................................................................213 MACA e MACAW ........................................................................................215 4.3 Ethernet ......................................................................................................216 4.3.1 Cabeamento Ethernet ..........................................................................216 4.3.2 Codificao Manchester .......................................................................218 4.3.3 O protocolo da subcamada MAC Ethernet ...........................................2194.3.4 O algoritmo de recuo binrio exponencial................................................... ..........................221 4.3.5 Desempenho da Ethernet .....................................................................222 4.3.6 Ethernet comutada ...............................................................................223 4.3.7 Fast Ethernet ........................................................................................224 4.3.8 Ethernet de gigabit ..............................................................................227 4.3.9 O padro IEEE 802.2: LLC (Logical Link Control) ...............................229 4.3.10 Retrospectiva da Ethernet ..................................................................230 4.4 LANs sem fios .............................................................................................231 4.4.1 802.11: a pilha de protocolos ...............................................................231 4.4.2 802.11: a camada fsica ........................................................................232 4.4.3 802.11: o protocolo da subcamada MAC ..............................................233 4.4.4 802.11: estrutura de quadro ................................................................237 4.4.5 Servios ................................................................................................237 4.5 Redes sem fios de banda larga ...................................................................239 4.5.1 Comparao entre o 802.11 e o 802.16 ...............................................239 4.5.2 802.16: a pilha de protocolos ...............................................................240 4.5.3 802.16: a camada fsica ........................................................................241 4.5.4 802.16: o protocolo da subcamada MAC ..............................................242 4.5.5 802.16: estrutura de quadro ................................................................243 4.6 Bluetooth ....................................................................................................244 4.6.1 Arquitetura do Bluetooth ......................................................................245 4.6.2 Aplicaes do Bluetooth .......................................................................245 4.6.3 A pilha de protocolos do Bluetooth ......................................................246 4.6.4 A camada de rdio do Bluetooth .......................................................247 4.6.5 A camada de banda base do Bluetooth ................................................248 4.6.6 A camada L2CAP do Bluetooth .............................................................248 4.6.7 A estrutura de quadro do Bluetooth .....................................................248 4.7 Comutao na camada de enlace de dados ................................................249 4.7.1 Pontes entre LANs 802.x e 802.y .........................................................251 4.7.2 Interligao de redes locais .................................................................252 4.7.3 Pontes de rvores de amplitude ...........................................................254 4.7.4 Pontes remotas .....................................................................................255 4.7.5 Repetidores, hubs, pontes, switches, roteadores e gateways ..............255 4.7.6 LANs virtuais ........................................................................................257 O padro IEEE 802.1Q ...............................................................................261 4.8 Resumo .......................................................................................................263 Problemas .........................................................................................................264Captulo 5. A camada de rede....................................................................................................... ..267 5.1 Questes de projeto da camada de rede ....................................................267 5.1.1 Comutao de pacotes store-and-forward.............................................267 5.1.2 Servios oferecidos camada de transporte .......................................268 5.1.3 Implementao do servio sem conexes ............................................269 7. 5.1.4 Implementao do servio orientado a conexes .................................2705.1.5 Comparao entre sub-redes de circuitos virtuais e de datagramas ...2715.2 Algoritmos de roteamento ..........................................................................2725.2.1 O princpio de otimizao .....................................................................2735.2.2 Roteamento pelo caminho mais curto ..................................................2745.2.3 Inundao .............................................................................................2765.2.4 Roteamento com vetor de distncia .....................................................277O problema da contagem at infinito .........................................................2795.2.5 Roteamento por estado de enlace ........................................................280Conhecendo os vizinhos .............................................................................280Como medir o custo da linha ......................................................................281Como criar pacotes de estado de enlace ....................................................282Distribuio dos pacotes de estado de enlace ...........................................282Como calcular as novas rotas .....................................................................2835.2.6 Roteamento hierrquico .......................................................................2845.2.7 Roteamento por difuso .......................................................................2865.2.8 Roteamento por multidifuso................................................................2875.2.9 Roteamento para hosts mveis ............................................................2895.2.10 Roteamento em redes ad hoc .............................................................291Descoberta de rota .....................................................................................291Manuteno de rotas ..................................................................................2935.2.11 Pesquisa de ns em redes no hierrquicas ......................................2945.3.1 Princpios gerais do controle de congestionamento ............................2995.3.2 Polticas de preveno de congestionamento ......................................3005.3.3 Controle de congestionamento em sub-redes de circuitos virtuais .....3015.3.4 Controle do congestionamento em sub-redes de datagramas .............302O bit de advertncia ...................................................................................302Pacotes reguladores ...................................................................................303Pacotes reguladores hop a hop ..................................................................3035.3.5 Escoamento de carga ...........................................................................304Deteco aleatria prematura ....................................................................3055.3.6 Controle de flutuao............................................................................3065.4 Qualidade de servio ..................................................................................3075.4.1 Requisitos .............................................................................................3075.4.2 Tcnicas para se alcanar boa qualidade de servio ...........................308Superdimensionamento ..............................................................................308Armazenamento em buffers .......................................................................308Moldagem de trfego .................................................................................309O algoritmo de balde furado ......................................................................309O algoritmo de balde de smbolos ..............................................................310Reserva de recursos ...................................................................................313Controle de admisso .................................................................................314Roteamento proporcional ...........................................................................316Programao de pacotes ............................................................................3165.4.3 Servios integrados ..............................................................................317RSVP Resource reSerVation Protocol ....................................................3175.4.4 Servios diferenciados .........................................................................319Encaminhamento expedido ........................................................................320Encaminhamento garantido .......................................................................3205.4.5 Troca de rtulos e MPLS3.....................................................................3215.5 Interligao de redes...................................................................................3235.5.1 Diferenas entre redes .........................................................................3245.5.2 Como as redes podem ser conectadas .................................................3255.5.3 Circuitos virtuais concatenados ...........................................................326 8. 5.5.4 Interligao de redes sem conexes ....................................................327 5.5.5 Tunneling ..............................................................................................328 5.5.6 Roteamento inter-redes ........................................................................329 5.5.7 Fragmentao .......................................................................................330 5.6 A camada de rede na Internet ....................................................................333 5.6.1 O protocolo IP .......................................................................................334 5.6.2 Endereos IP ........................................................................................337 Sub-redes ...................................................................................................338 CIDR Classless InterDomain Routing ....................................................340 NAT Network Address Translatiom .......................................................342 5.6.3 Protocolos de controle da Internet .......................................................345 ICMP (Internet Control Message Protocol) ...............................................346 ARP (Address Resolution Protocol) ............................................................346 RARP, BOOTP e DHCP ................................................................................348 5.6.4 OSPF Interior Gateway Routing Protocol ........................................349 5.6.5 BGP O protocolo de roteamento de gateway exterior .....................353 5.6.6 Multidifuso na Internet .......................................................................354 5.6.7 IP mvel ................................................................................................355 5.6.8 IPv6 .......................................................................................................357 O cabealho principal do IPv6 ....................................................................358 Cabealhos de extenso .............................................................................361 Controvrsias .............................................................................................362 5.7 Resumo .......................................................................................................364 Problemas .........................................................................................................364Captulo 6. A camada de transporte ...................................................................... ........................368 6.1 O servio de transporte ..............................................................................369 6.1.1 Servios oferecidos s camadas superiores .........................................369 6.1.2 Primitivas do servio de transporte .....................................................370 6.1.3 Soquetes de Berkeley ...........................................................................372 6.1.4 Um exemplo de programao de soquetes: um servidor de arquivos da Internet ..........................................................................................................373 6.2 Elementos de protocolos de transporte ......................................................376 6.2.1 Endereamento ....................................................................................377 6.2.2 Estabelecimento de conexes ..............................................................379 6.2.3 Encerramento de conexes ..................................................................383 6.2.4 Controle de fluxo e uso de buffers .......................................................386 6.2.5 Multiplexao .......................................................................................389 6.2.6 Recuperao de desastres ....................................................................390 6.3 Um protocolo de transporte simples ..........................................................392 6.3.1 Exemplo de primitivas de servio ........................................................392 6.3.2 Exemplo de entidade de transporte .....................................................393 6.3.3 O exemplo sob a forma de mquina de estados finitos ........................397 6.4 Os protocolos de transporte da Internet: UDP ...........................................399 6.4.1 Introduo ao UDP ...............................................................................399 6.4.2 Chamada de procedimentos remotos ...................................................400 6.4.3 O RTP (Real-time Transport Protocol) ..................................................402 6.5 Os protocolos de transporte da Internet: TCP ...........................................404 6.5.1 Introduo ao TCP ................................................................................405 6.5.2 O modelo de servio do TCP .................................................................405 6.5.3 O protocolo TCP ...................................................................................407 6.5.4 O cabealho de segmento do TCP ........................................................407 6.5.5 O estabelecimento de conexes TCP ....................................................410 6.5.7 Modelagem do gerenciamento de conexes do TCP ............................411 6.5.8 Poltica de transmisso do TCP ............................................................413 9. 6.5.9 Controle de congestionamento do TCP ................................................416 6.5.10 Gerenciamento de timers do TCP ......................................................418 6.5.11 TCP e UDP sem fios ............................................................................420 6.5.12 TCP transacional ................................................................................422 6.6 Questes de desempenho ...........................................................................423 6.6.1 Problemas de desempenho em redes de computadores ......................424 6.6.2 Medio do desempenho da rede .........................................................425 Certifique-se de que o tamanho da amostra grande o bastante .............426 Certifique-se de que as amostras so representativas ..............................426 Tenha cuidado ao usar o clock do computador ..........................................426 Certifique-se de que nenhum evento inesperado est ocorrendo durante os testes ..........................................................................................................426 O uso de caches pode arruinar as medies ..............................................427 Entenda o que est medindo ......................................................................427 Tenha cuidado para no extrapolar os resultados .....................................427 6.6.3 Projeto de sistemas para obter melhor desempenho ...........................427 Regra n 1: A velocidade da CPU mais importante que a velocidade da rede ............................................................................................................428 Regra n 2: Reduza o nmero de pacotes para reduzir o overhead do software ......................................................................................................428 Regra n 3: Minimize as mudanas de contexto .......................................428 Regra n 4: Minimize o nmero de cpias ................................................429 Regra n 5: Voc pode adquirir mais largura de banda, mas no um retardo mais baixo ...................................................................................................430 Regra n 6: Prevenir o congestionamento melhor do que remedi-lo .. .430 Regra n 7: Evite os timeouts ....................................................................430 6.6.4 Processamento rpido de TPDUs .........................................................430 6.6.5 Protocolos para redes de gigabits ........................................................433 6.7 Resumo .......................................................................................................435 Problemas .........................................................................................................436Captulo 7. A camada de aplicao ...................................................................................... ..........439 7.1 DNS Domain Name System ....................................................................439 7.1.1 O espao de nomes do DNS .................................................................440 7.1.2 Registros de recursos ...........................................................................441 7.1.3 Servidores de nomes ............................................................................444 7.2 Correio eletrnico .......................................................................................445 7.2.1 Arquitetura e servios ..........................................................................447 7.2.2 O agente do usurio .............................................................................448 O envio de mensagens de correio eletrnico .............................................448 Leitura de correio eletrnico .....................................................................449 7.2.3 Formatos de mensagens .......................................................................450 RFC 822 ......................................................................................................450 MIME Multipurpose Internet Mail Extensions ......................................451 7.2.4 Transferncia de mensagens ................................................................456 SMTP Simple Mail Transfer Protocol .....................................................456 7.2.5 Entrega final .........................................................................................458 POP3 ...........................................................................................................458 IMAP ...........................................................................................................460 Caractersticas de entrega .........................................................................461 Webmail ......................................................................................................462 7.3 A World Wide Web ......................................................................................462 7.3.1 Viso geral da arquitetura ....................................................................463 O lado cliente..............................................................................................465 O lado servidor ...........................................................................................468 10. URLs Uniform Resource Locators ..........................................................471 Ausncia de estados e cookies ...................................................................473 7.3.2 Documentos estticos da Web ..............................................................475 HTML HyperText Markup Language .....................................................476 T4] Formulrios ..........................................................................................480 XML e XSL ..................................................................................................483 XHTML eXtended HyperText Markup Language ...................................486 7.3.3 Documentos dinmicos da Web ............................................................486 Gerao dinmica de pginas da Web do lado servidor .............................486 Gerao dinmica de pginas da Web do lado cliente ...............................489 7.3.4 HTTP HyperText Transfer Protocol ..................................................493 Conexes ....................................................................................................493 Mtodos ......................................................................................................493 Cabealhos de mensagens .........................................................................495 Exemplo e utilizao do HTTP ...................................................................496 7.3.5 Aperfeioamentos de desempenho .......................................................497 Armazenamento em cache .........................................................................497 Replicao de servidores ............................................................................499 Redes de entrega de contedo ...................................................................499 7.3.6 A Web sem fios .....................................................................................501 WAP Wireless Application Protocol ........................................................501 I-Mode ........................................................................................................503 Web sem fio da segunda gerao ...............................................................507 7.4 Multimdia ..................................................................................................509 7.4.1 Introduo ao udio digital ..................................................................509 7.4.2 Compactao de udio .........................................................................511 7.4.3 udio de fluxo .......................................................................................513 7.4.4 Rdio da Internet .................................................................................515 7.4.5 Voz sobre IP ..........................................................................................517 H.323 ..........................................................................................................518 SIP Session Initiation Protocol ...............................................................520 Comparao entre H.323 e SIP ..................................................................522 7.4.6 Introduo ao vdeo ..............................................................................522 Sistemas analgicos ...................................................................................522 Sistemas digitais ........................................................................................524 7.4.7 Compactao de vdeo ..........................................................................525 O padro JPEG ............................................................................................525 O padro MPEG ..........................................................................................528 7.4.8 Vdeo por demanda ...............................................................................531 Servidores de vdeo ....................................................................................532 A rede de distribuio ................................................................................534 7.4.9 MBone Multicast Backbone .............................................................536 7.5 Resumo .......................................................................................................539 Problemas .........................................................................................................539Captulo 8. Segurana de redes ......................................................................................... ............543 8.1 Criptografia ................................................................................................545 8.1.1 Introduo criptografia .....................................................................545 8.1.2 Cifras de substituio ...........................................................................547 8.1.3 Cifras de transposio ..........................................................................548 8.1.4 Chave nica ..........................................................................................549 Criptografia quntica .................................................................................550 8.1.5 Dois princpios fundamentais da criptografia ......................................552 Redundncia ...............................................................................................553 Atualidade ..................................................................................................554 11. 8.2 Algoritmos de chave simtrica ...................................................................5548.2.1 DES Data Encryption Standard ........................................................555DES triplo ...................................................................................................5578.2.2 AES Advanced Encryption Standard ................................................557Rijndael ......................................................................................................5588.2.3 Modos de cifra ......................................................................................560O modo Electronic Code Book ....................................................................560Modo de encadeamento de blocos de cifras ..............................................561Modo de feedback de cifra .........................................................................561Modo de cifra de fluxo ................................................................................562Modo de contador ......................................................................................5638.2.4 Outras cifras .........................................................................................5648.2.5 Criptoanlise ........................................................................................5648.3 Algoritmos de chave pblica ......................................................................5658.3.1 RSA .......................................................................................................5668.3.2 Outros algoritmos de chave pblica .....................................................5678.4 Assinaturas digitais ....................................................................................5678.4.1 Assinaturas de chave simtrica ............................................................5688.4.2 Assinaturas de chave pblica ...............................................................5698.4.3 Sumrios de mensagens .......................................................................570MD5.............................................................................................................571SHA-1 .........................................................................................................5718.4.4 Ataque de aniversrio ...........................................................................5738.5 Gerenciamento de chaves pblicas ............................................................5748.5.1 Certificados ..........................................................................................5758.5.2 X.509 ....................................................................................................5768.5.3 Infra-estruturas de chave pblica ........................................................577Diretrios ...................................................................................................578Revogao ..................................................................................................5788.6 Segurana da comunicao ........................................................................5798.6.1 IPsec .....................................................................................................5798.6.2 Firewalls ...............................................................................................5828.6.3 Redes privadas virtuais ........................................................................5848.6.4 Segurana sem fios ..............................................................................585Segurana de redes 802.11 ........................................................................585Segurana do Bluetooth .............................................................................587Segurana do WAP 2.0 ...............................................................................5888.7 Protocolos de autenticao .........................................................................5888.7.1 Autenticao baseada em uma chave secreta compartilhada .............5898.7.2 Como estabelecer uma chave compartilhada: A troca de chaves deDiffie-Hellman ...............................................................................................5938.7.3 Autenticao com o uso de um centro de distribuio de chaves ........5948.7.4 Autenticao com a utilizao do Kerberos .........................................5978.7.5 Autenticao com a criptografia de chave pblica ..............................5988.8 Segurana de correio eletrnico ................................................................5998.8.1 PGP Pretty Good Privacy ..................................................................5998.8.2 PEM Privacy Enhanced Mail ............................................................6028.8.3 S/MIME ................................................................................................6038.9.1 Ameaas ...............................................................................................6038.9.2 Nomenclatura segura ...........................................................................604Spoofing de DNS ........................................................................................604DNS seguro ................................................................................................606Nomes de certificao automtica .............................................................6088.9.3 SSL Secure Sockets Layer ...............................................................609 12. 8.9.4 Segurana do cdigo mvel .................................................................612 Segurana de miniaplicativos Java .............................................................612 ActiveX .......................................................................................................613 JavaScript ...................................................................................................613 Vrus ...........................................................................................................613 8.10 Questes sociais .......................................................................................614 8.10.1 Privacidade .........................................................................................614 Repostadores annimos .............................................................................614 8.10.2 Liberdade de expresso .....................................................................616 Esteganografia ...........................................................................................617 8.10.3 Direitos autorais..................................................................................619 8.11 Resumo .....................................................................................................620 Problemas .........................................................................................................621Captulo 9.Sugestes de leitura e bibliografia ............................................................................... .624 9.1 Sugestes de leitura adicional ....................................................................624 9.1.1 Introduo e trabalhos genricos .........................................................625 9.1.2 A camada fsica .....................................................................................626 9.1.3 A camada de enlace de dados...............................................................627 9.1.4 A subcamada de controle de acesso ao meio .......................................628 9.1.5 A camada de rede .................................................................................629 9.1.6 A camada de transporte .......................................................................629 Bibliografia em ordem alfabtica......................................................................632 13. DedicatriaA Suzanne, Barbara, Marvin e memria de Bram e Sweetie 14. Outros ttulos de sucesso de Andrew S. TanenbaumDistributed Systems: Principles and ParadigmsEsse novo livro, em co-autoria com Maarten van Steen, aborda tanto os conceitos fundamentaisquanto os paradigmas dos modernos sistemas distribudos. Na primeira parte, ele focaliza emdetalhes os princpios de comunicao, processos, nomenclatura, sincronizao, consistncia ereplicao, tolerncia a falhas e segurana. Em seguida, na segunda parte, se aprofunda emdiferentes paradigmas utilizados para elaborar sistemas distribudos, inclusive sistemas orientadosa objetos, sistemas de arquivos distribudos, sistemas orientados a documentos e sistemasbaseados em coordenao. Numerosos exemplos so discutidos extensivamente.Modern Operating Systems, 2 edioEsse texto completo estuda em detalhes os conceitos fundamentais Sistemas operacionaismodernos e os ilustra com numerosos exemplos reais.Aps um captulo introdutrio, os cinco captulos seguintes lidam com os conceitos bsicos:processos e threads, impasses(deadlocks), gerenciamento de memria, entrada/sada e sistemasde arquivos. Os prximos seis captulos lidam de material mais avanado, incluindo sistemas demultimdia, sistemas de vrios processadores, segurana. Por fim, so apresentados dois estudosde casos detalhados: UNIX/Linux e Windows 2000.Structured Computer Organization, 4 edioEsse clssico, um grande sucesso que est agora em sua quarta edio, oferece a introduo ideal arquitetura de computadores. Ele aborda o assunto com uma estratgia de fcil compreenso,estudando-o de baixo para cima. H um captulo sobre lgica digital para iniciantes, seguido porcaptulos sobre microarquitetura, sobre o nvel de arquiteturas de conjuntos de instrues, sistemasoperacionais, linguagem assembly e arquiteturas de computadores paralelos.Operating Systems: Design and Implementation, 2 edioEsse texto popular sobre sistemas operacionais, escrito em parceria com Albert S. Woodhull onico livro que abrange os conceitos fundamentais de sistemas operacionais e tambm suaaplicao a um sistema real. Todos os tpicos tradicionais de sistemas operacionais so estudadosem detalhes. Alm disso, os conceitos bsicos so cuidadosamente ilustrados com o MINIX, umsistema operacional gratuito baseado no POSIX, semelhante ao UNIX, para computadores pessoais.Cada exemplar inclui um CD-R OM gratuito, contendo o sistema MINIX completo, inclusive todo ocdigo-fonte. O cdigo-fonte est listado em um apndice do livro e explicado em detalhes notexto.Sobre o autorAndrew S. Tanenbaum bacharel em cincias pelo M.I.T e Ph.D. pela University of California emBerkeley. Atualmente, professor de cincia da computao na Vrije Universiteit em Amsterdam,Holanda, onde lidera o Computer Systems Group. Ele tambm decano da Advanced School forComputing and Imaging, um programa interuniversitrio em nvel de ps-graduao, quedesenvolve pesquisas sobre sistemas paralelos avanados, distribudos e de imagens. No entanto,Tanenbaum vem tentando de todas as formas no se tornar um burocrata.No passado, ele desenvolveu pesquisas sobre compiladores, sistemas operacionais, interligao deredes e sistemas distribudos locais. Sua rea de pesquisa atual tem como foco principal o projeto ea implementao de sistemas geograficamente distribudos que alcanam um bilho de usurios.Essa pesquisa, que est sendo realizada em conjunto com o professor Maarten van Steen, descrita em www.cs.vu.nl/globe. Em conjunto, todos esses projetos de pesquisa j produziram maisde 100 artigos em peridicos cientficos e conferncias, alm de cinco livros.O professor Tanenbaum tambm j produziu um considervel volume de software. Ele foi o principalprojetista do Amsterdam Compiler Kit, um kit de ferramentas para o desenvolvimento decompiladores portteis amplamente utilizado, como tambm do MINIX, um pequeno clone do UNIX,destinado ao uso em laboratrios de programao para estudantes. Esse sistema forneceu ainspirao e a base sobre a qual foi desenvolvido o Linux. Juntamente com seus alunos do curso dedoutorado e outros programadores, ele ajudou a desenvolver o sistema operacional distribudo 15. Amoeba, um sistema operacional distribudo baseado na utilizao de um microkernel de altodesempenho. Agora, os MINIX e Amoeba esto disponveis gratuitamente na Internet.Aps conclurem o curso, geralmente seus alunos de doutorado seguem carreiras ainda maisbrilhantes, o que o deixa muito orgulhoso.O professor Tanenbaum membro do conselho da ACM, membro do conselho do IEEE e membro daRoyal Netherlands Academy of Arts and Sciences; em 1994, ele recebeu da ACM o Karl V. KarlstromOutstanding Educator Award. Tanenbaum tambm recebeu em 1997 da ACM/SIGCSE o Award forOutstanding Contributions to Computer Science Education e o prmio Texty de 2002 por excelnciaem livros didticos. Ele tambm faz parte da lista Whos Who in the World. Sua home page na WorldWide Web est no URL http://www.cs.vu.nl/~astPrefcioEste livro j est em sua quarta edio. Cada edio correspondeu a uma fase distinta na formacomo as redes de computadores eram utilizadas. Quando a primeira edio americana foi lanadaem 1980, as redes eram uma curiosidade acadmica. Em 1988, ano da segunda edio, as redesestavam sendo usadas por universidades e grandes empresas. Na poca em que a terceira ediofoi lanada, em 1996, as redes de computadores, especialmente a Internet, j haviam se tornadouma realidade diria para milhes de pessoas. O novo item na quarta edio o rpidocrescimento das redes sem fio, em suas muitas formas.O quadro das redes mudou radicalmente desde a terceira edio. Em meados da dcada de 1990,existiam numerosos tipos de LANs e WANs, alm de vrias pilhas de protocolos. Em 2003, a nicaLAN instalada com ampla utilizao era a Ethernet, e virtualmente todas as LANs estavam naInternet. De acordo com isso, foi removida deste livro um a grande quantidade de material sobreessas redes mais antigas.Entretanto, tambm h uma grande quantidade de novos desenvolvimentos. O mais importante oenorme crescimento das redes sem fios, incluindo 802.11, loops locais sem fios, redes celulares 2Ge 3G, Bluetooth, WAP, i-mode e outras. Acompanhando essa tendncia, foi inclu da neste volumeuma grande quantidade de material sobre redes sem fios. Outro tpico que se tornou importanterecentemente a segurana; assim, foi acrescentado um captulo inteiro sobre esse assunto.Apesar de o Captulo 1 ter a mesma funo introdutria que tinha na terceira edio, o contedofoi completamente revisado e atualizado. Por exemplo, so dadas nesse captulo introdues Internet, Ethernet e LANs sem fios, juntamente com um pouco de histria e fundamentos bsicos. Ocaptulo tambm discute brevemente as redes domsticas.O Captulo 2 foi um tanto reorganizado. Aps uma breve introduo aos princpios decomunicao de dados, h trs sees importantes sobre transmisso (meios guiados, sem fios epor satlite) seguidos por trs outros em exemplos importantes (o sistema de telefonia pblicacomutada, o sistema de telefonia mvel e a televiso a cabo). Entre os novos tpicos abordadosneste captulo esto ADSL, difuso sem fios, MANs sem fios e acesso Internet atravs de cabo eDOCSIS.O Captulo 3 sempre tratou dos princpios fundamentais de protocolos ponto a ponto. Essas idiasso essencialmente atemporais e no mudaram durante dcadas. assim, a srie de exemplos detalhados de protocolos apresentados neste captulo permanece em grande parte inalterada desde aterceira edio.Em contraste, a subcamada MAC tem sido uma rea de grande atividade nos ltimos anos; assim,muitas mudanas esto presentes no Captulo 4. A seo sobre Ethernet foi expandida para incluiro gigabit Ethernet. Completamente novas, so as sees importantes sobre redes sem fios, difusosem fios, Bluetooth e comutao da camada de enlace de dados, inclusive MPLS.O Captulo 5 tambm foi atualizado, com a remoo de todo o material sobre ATM e a incluso dematerial adicional sobre a Internet. A qualidade do servio tambm agora um tpico importante,incluindo discusses de servios integrados e servios diferenciados. As redes sem fios tambmesto presentes aqui, como uma discusso do roteamento em redes ad hoc. Outros tpicos novosincluem NAT e redes no hierrquicas (peer-to-peer). 16. O Captulo 6 ainda trata da camada de transporte, mas tambm h grandes mudanas. Entre elasencontra-se um exemplo de programao de soquetes. Um cliente de uma pgina e um servidor deuma pgina so apresentados em C e discutidos. Juntos, eles fornecem um servidor primitivo dearquivos remotos ou da Web, disponvel para experimentao. Outros novos tpicos incluemchamada de procedimentos remotos, RTP e transaction-TCP.O Captulo 7, que descreve a camada de aplicao, ficou mais nitidamente concentrado. Apsuma curta introduo ao DNS, o restante do captulo lida com apenas trs tpicos: e-mail, a Web emultimdia. Porm, cada tpico tratado com muitos detalhes. A descrio do funcionamento daWeb tem agora mais de 60 pginas, cobrindo uma ampla variedade de tpicos, inclusive pginas daWeb estticas e dinmicas, HTTP, scripts da CGI, redes de entrega de contedo, cookies e cachesda Web. Tambm h material sobre como escrever pginas da Web modernas, incluindo brevesintrodues a XML, XSL, XTML, PHP e muito mais, todas com exemplos que podem se r testados. AWeb sem fios tambm discutida, focalizando o i-mode e o WAP. O material sobre multimdia incluiagora MP3, streaming audio, rdio pela Internet e voz sobre IP.A segurana se tornou to importante que agora foi expandida para ocupar um captulo completocom mais de 100 pginas. Ele abrange os princpios de segurana (algoritmos simtricos e dechave pblica, assinaturas digitais e certificados X.509) e as aplicaes desses princpios(autenticao, segurana de correio eletrnico e segurana na Web). O captulo ao mesmo tempoamplo (variando desde criptografia quntica at censura governamental) e profundo (por exemplo,com detalhes sobre o funcionamento do SHA-1).O Captulo 9 contm uma lista totalmente nova de leituras sugeridas e uma bibliografia completa,com mais de 350 citaes sobre a literatura atual. Mais de 200 dessas citaes se referem a artigose livros escritos a partir do ano 2000.Os livros de informtica esto repletos de acrnimos. E este no exceo. Quando tiver concludoa leitura deste volume, todas estas siglas tero um sentido claro para voc: ADSL, AES, AM PS,AODV, ARP, ATM, BGP, CDMA, CDN, CGI, CIDR, DCF, DES, DHCP, DMCA, FDM, FHSS, GPRS, GSM,HDLC, HFC, HTML, HTTP, ICMP, IMAP, ISP, ITU, LAN, LMDS, MAC, MACA, MIME, MPEG, MPLS, MTU,NAP, NAT, NSA, NTSC, OFDM, OSPF, PCF, PCM, PGP, PH P, PKI, POTS, PPP, PSTN, QAM, QPSK, RED,RFC, RPC, RSA, RSVP, RTP, SSL, TCP, TDM, UDP, URL, UTP, VLAN, VPN, VSAT, WAN, WAP, WDMA,WEP, WWW e XML. Mas no se preocupe. Cada um desses acrnimos ser cuidadosamente definidoantes de ser usado.Para ajudar os instrutores a utilizarem este livro como um texto para um curso de treinamento, oautor preparou os seguintes complementos para auxlio ao ensino, incluindo: Um manual de solues de problemas. Arquivos contendo as figuras em vrios formatos. Transparncias do PowerPoint para um curso com a utilizao do livro. Um simulador (escrito em C) para os exemplos de protocolos do Captulo 3. Uma pgina da Web com links para muitos tutoriais, organizaes, FAQs etc.O manual de solues est disponvel diretamente na Prentice Hall (mas somente para instrutores,no para alunos). Todo o material restante encontra-se no Web site do livro:http://www.prenhall.com/tanenbaum.Quando estiver l, clique na capa do livro.Muitas pessoas me ajudaram durante o curso da quarta edio. Gostaria de agradecerespecialmente s seguintes pessoas: Ross Anderson, Elizabeth Belding- Royer, Steve Bellovin,Chatsc hik Bisdikian, Kees Bot, Scott Bradner, Jennifer Bray, Pat Cain, Ed Felten, Warwick Ford, KevinFu, Ron Fulle, Jim Geier, Mario Gerla, Natalie Giroux, Steve Hanna, Jeff Hayes, Amir Herzberg, PhilipHomburg, Philipp Hoschka, David Green, Bart Jacobs, Frans Kaashoek, Steve Kent, Roger Kermode,Robert Kinicki, Shay Kutten, Rob Lanphier, Marcus Leech, Tom Maufer, Brent Miller, ShivakantMishra, Thomas Nadeau, Shlomo Ovadia, Kaveh Pahlavan, Radia PerIman, Guillaume Pierre, WaynePleasant, Patrick Po well, Thomas Robertazzi, Medy Sanadidi, Christian Schmutzer, HenningSchulzrinne, Pa ul Sevinc, Mihail Sichitiu, Bernard Sk lar, Ed Skoudis, Bob Strader, George Swallow,George Thiruvathukal, Peter Tomsu, Patrick Verkaik, Dave Vittali, Spyros Voulgaris, Jan-Mark Wams,Ruediger Weis, Bert Wijnen, Joseph Wilkes, Leendert van Doorn e Maarten van Steen.Agradecimentos especiais a Trudy Levine, por provar que as avs so capazes de fazer um 17. excelente tr abalho de reviso de material tcnico. Shivakant Mishra elaborou muitos prob lemasdesafiantes para os finais de captulos. Andy Dornan sugeriu leituras ad icionais para o Captulo 9.Jan Looyen forneceu hardware essencial em um momento crtico. O dr. F. de Nies fez um timotrabalho de recorte e colagem, ex atamente quando foi necessrio. Minha editora na Prentice Hall,Mary Franz, me ofereceu mais material de leitura do que eu havia consumido nos sete anosanteriores, e tambm foi til em vrios outros aspectos.Por fim, chegamos s pessoas mais importantes: Suzanne, Barbara e Marvin. A Suzanne, por seuamor, sua pacincia e seus almoos no campo. A Barbara e Marvin por serem divertidos e alegres otempo todo (exceto quando reclamavam de alguns terrveis livros didticos da faculdade, o que memanteve sempre atento). Obrigado. 18. Captulo 1. IntroduoCada um dos trs sculos anteriores foi dominado por uma nica tecnologia. O Sculo XVIII foi apoca dos grandes sistemas mecnicos que acompanharam a Revoluo Industrial. O Sculo XIX foia era das mquinas a vapor. As principais conquistas tecnolgicas do Sculo XX se deram no campoda aquisio, do processamento e da distribuio de informaes. Entre outros desenvolvimentos,vimos a instalao das redes de telefonia em escala mundial, a inveno do rdio e da televiso, onascimento e o crescimento sem precedentes da indstria de informtica e o lanamento dossatlites de comunicao.Como resultado do rpido progresso tecnolgico, essas reas esto convergindo rapidamente e socada vez menores as diferenas entre coleta, transporte, armazenamento e processamento deinformaes. Organizaes com centenas de escritrios dispersos por uma extensa rea geogrficapodem, com um simples apertar de um boto, examinar o status atual de suas filiais mais remotas. medida que cresce nossa capacidade de colher, processar e distribuir informaes, torna-se aindamaior a de manda por formas de processamento de informaes ainda mais sofisticadas.Apesar de a indstria de informtica ainda ser jovem em comparao a outros setores industriais(por exemplo, o de automveis e o de transportes areos), foi simplesmente espetacular oprogresso que os computadores conheceram em um curto perodo de tempo. Durante as duasprimeiras dcadas de sua existncia, os sistemas computacionais eram altamente centralizados,em geral instalados em uma grande sala com paredes de vidro, atravs das quais os visitantespodiam contemplar, embevecidos, aquela maravilha eletrnica. Uma empresa de mdio 2porte ouuma universidade contava apenas com um ou dois computadores, enquanto as grandes instituiestinham, no mximo, algumas dezenas. Era pura fico cientfica a idia de que, em apenas 20 anos,haveria milhes de computadores igualmente avanados do tamanho de um selo postal.A fuso dos computadores e das comunicaes teve uma profunda influncia na forma como ossistemas computacionais eram organizados. O conceito de "centro de computao" como uma salacom um grande computador ao qual os usurios levam seu trabalho para processamento agoraest completamente obsoleto. O velho modelo de um nico computador atendendo a todas asnecessidades computacionais da organizao foi substitudo pelas chamadas redes decomputadores, nas quais os trabalhos so realizados por um grande nmero de computadoresseparados, mas interconectados. A estrutura e a organizao dessas redes so os temas destelivro.Ao longo do livro, utilizaremos a expresso "rede de computadores" quando quisermos mencionarum conjunto de computadores autnomos interconectados por uma nica tecnologia. Doiscomputadores esto interconectados quando podem trocar informaes. A conexo no precisa serfeita por um fio de cobre; tambm podem ser usadas fibras pticas, microondas, ondas deinfravermelho e satlites de comunicaes. Existem redes em muitos tamanhos, modelos e formas,como veremos mais adiante. Embora possa parecer estranho para algumas pessoas, nem aInternet nem a World Wide Web uma rede computadores. No final deste livro, dever ficar claro omotivo dessa afirmao. A resposta simples que a Internet no uma nica rede, mas um a redede redes, e a Web um sistema distribudo que funciona na Internet.Existe na literatura uma considervel confuso entre uma rede de computadores e um sistemadistribudo. A principal diferena entre eles que, em um sistema distribudo, um conjunto decomputadores independentes parece ser, para usurios, um nico sistema coerente. Em geral, eletem um nico modelo ou paradigma que apresenta aos usurios. Com freqncia, uma camada desoftware sobre o sistema operacional, chamada middleware, responsvel pela implementaodesse modelo. Um exemplo bem conhecido de sistema distribudo a World Wide Web, na qualtudo tem a aparncia de um documento (uma pgina da Web).Em uma rede de computadores, essa coerncia, esse modelo e esse software esto ausentes. Osusurios ficam expostos s mquinas reais, sem qualquer tentativa por parte do sistema de fazeras mquinas parecerem e atuarem de modo coerente. Se as mquinas tiverem hardware diferentee sistemas operacionais distintos, isso ser totalmente visvel para os usurios. Se quiser executarum programa em uma mquina remota, o usurio ter de efetuar o logon nessa mquina eexecutar o programa l.Na prtica, um sistema distribudo um sistema de software instalado em uma rede. O software dao sistema um alto grau de coeso e transparncia. Conseqentemente, o software (e em 19. particular o sistema operacional) que determina a diferena entre uma rede e um sistemadistribudo, no o hardware.Apesar disso, h uma considervel sobreposio entre os dois assuntos. Por exemplo, os sistemasdistribudos e as redes de computadores precisam movimentar arquivos. A diferena est em quem o responsvel pela movimentao, o sistema ou o usurio.Embora este livro seja basicamente dedicado a redes, muitos tpicos tambm so importantes emsistemas distribudos. Para obter mais informaes sobre sistemas distribudos, consulte(Tanenbaum e Van Steen, 2002).1.1 Usos de redes de computadoresAntes de iniciarmos o exame detalhado das questes tcnicas, vale a pena 4dedicar algum tempo aexplicar por que as pessoas esto interessadas em redes de computadores e com que finalidadeessas redes podem ser usadas. Afinal, se ningum estivesse interessado em redes decomputadores, poucas delas seriam elaboradas. Comearemos com os usos tradicionais emempresas e para indivduos, e depois passaremos aos desenvolvimentos mais recentesrelacionadas a usurios mveis e a redes domsticas.1.1.1 Aplicaes comerciaisMuitas empresas tm um nmero significativo de computadores. Por exemplo, uma empresa podeter computadores se parados para monitorar a produo, controlar os estoques e elaborar a folhade pagamento. Inicialmente, cada um desses computadores funcionava isolado dos outros mas, emum determinado momento, a gerncia deve ter decidido conect-los para poder extrair ecorrelacionar informaes sobre a empresa inteira.Em termos um pouco mais genricos, a questo aqui o compartilhamento de recursos, e oobjetivo tornar todos os programas, equipamentos e especialmente dados ao alcance de todas aspessoas na rede, independente da localizao fsica do recurso e do usurio. Um exemplo bvio ebastante disseminado um grupo de funcionrios de um escritrio que compartilham umaimpressora comum. Nenhum dos indivduos realmente necessita de uma impressora privativa, euma impressora de grande capacidade conectada em rede muitas vezes mais econmica, maisrpida e de mais fcil manuteno que um grande conjunto de impressoras individuais.Porm, talvez mais importante que compartilhar recursos fsicos como impressoras, scanners egravadores de CDs, seja compartilhar informaes. Toda empresa de grande e mdio porte emuitas empresas pequenas tm uma dependncia vital de informaes computadorizadas. Amaioria das empresas tem registros de clientes, estoques, contas a receber, extratos financeiros,informaes sobre impostos e muitas outras informaes on-line. Se todos os computadores de umbanco sofressem uma pane, ele provavelmente no duraria mais de cinco minutos. Uma instalaoindustrial moderna, com uma linha de montagem controlada por computadores, no duraria nemisso. Hoje, at mesmo uma pequena agncia de viagens ou um a firma jurdica com trs pessoasdepende intensamente de redes de computadores para permitir aos seus funcionrios acessareminformaes e documentos relevantes de forma instantnea.No caso de empresas menores, todo s os computadores provavelmente se encontram em um nicoescritrio ou talvez em um nico edifcio; porm, no caso de empresas maiores, os computadores efuncionrios podem estar dispersos por dezenas de escritrios e fbricas em muitos pases. Apesardisso, um vendedor em Nova York s vezes poderia ter necessidade de acessar um banco de dadosde estoque de produtos localizado em Cingapura. Em outras palavras, o mero fato de um usurioestar a 15.000 quilmetros de distncia de seus dados no deve impedi-lo de usar esses dadoscomo eles fossem dados locais. Resumindo, trata-se de uma tentativa de pr fim "tirania dageografia".No mais simples dos termos, possvel imaginar que o sistema de informaes de uma empresaconsiste em um ou mais bancos de dados e em algum nmero de funcionrios que precisamacess-los remotamente. Nesse modelo, os dados so armazenados em poderoso s computadoreschamados servidores. Com freqncia, essas mquinas so instaladas e mantidas em um localcentral por um administrador de sistemas. Em contraste, os funcionrios tm em suasescrivaninhas mquinas ma is simples, chamadas clientes, com as quais eles acessam dadosremotos, por exemplo, para incluir em planilhas eletrnicas que esto elaborando. (Algumas vezes,faremos referncia ao usurio humano da mquina cliente como o "cliente", mas deve ficar claro a 20. partir do contexto se estamos nos referindo ao computador ou a seu usurio.) As mquinas clientese servidores so conectadas entre si por uma rede, como ilustra a Figura 1.1. Observe quemostramos a rede como uma simples elipse, sem qualquer detalhe. Utilizaremos essa formaquando mencionarmos uma rede no sentido abstrato. Quando forem necessrios mais detalhes,eles sero fornecidos.Figura 1.1 - Uma rede com dois clientes e um servidorTodo esse arranjo chamado modelo cliente/servidor. Ele amplamente usado e constitui abase da grande utilizao da rede. Ele aplicvel quando o cliente e o servidor esto ambos nomesmo edifcio (por exemplo, pertencem mesma empresa), mas tambm quando esto muitodistantes um do outro. Por exemplo, quando uma pessoa em sua casa acessa uma pgina na WorldWide Web, empregado o mesmo modelo, com o servidor da Web remoto fazendo o papel doservidor e o computador pessoal do usurio sendo o cliente. Sob a maioria das condies, um nicoservidor pode cuidar de um grande nmero de clientes.Se examinarmos o modelo cliente/servidor em detalhes, veremos que h dois processos envolvidos,um na mquina cliente e um na mquina servidora. A comunicao toma a forma do processocliente enviando uma mensagem pela rede ao processo servidor. Ento, o processo cliente esperapor uma mensagem em resposta. Quando o processo servidor recebe a solicitao, ele executa otrabalho solicitado ou procura pelos dados solicitados e envia de volta uma resposta. Essasmensagens so mostradas na Figura 1.2.Figura 1.2 - O modelo cliente/servidor envolve solicitaes e respostasUm segundo objetivo da configurao de uma rede de computadores est relacionado s pessoas,e no s informaes ou mesmo aos computadores. Uma rede de computadores pode oferecer umeficiente meio de comunicao entre os funcionrios. Agora, virtualmente toda empresa que temdois ou mais computadores tem o recurso de correio eletrnico (e-mail), que os funcionriosutilizam de forma geral para suprir uma grande parte da comunicao diria. De fato, osfuncionrios trocam mensagens de e-mail sobre os assuntos mais corriqueiros, mas grande partedas mensagens com que as pessoas lidam diariamente no tem nenhum significado, porque oschefes descobriram que podem enviar a mesma mensagem (muitas vezes sem qualquer contedo)a todos os seus subordinados, bastando pressionar um boto.Contudo, o e-mail no a nica forma de comunicao otimizada que as redes de computadorestornaram possvel. Com uma rede, fcil duas ou mais pessoas que trabalham em locais muitodistantes escreverem juntas um relatrio. Quando um trabalhador faz uma mudana em umdocumento on-line, os outros podem ver a mudana imediatamente, em vez de esperarem vriosdias por uma carta. Tal acelerao facilita a cooperao entre grupos de pessoas distantes entre si,o que antes era impossvel.Outra forma de comunicao auxiliada pelo computador a videoconferncia. Usando essatecnologia, funcionrios em locais distantes podem participar de uma reunio, vendo e ouvindo uns 21. aos outros e at mesmo escrevendo em um quadro-negro virtual compartilhado. A videoconferncia uma ferramenta eficiente para eliminar o custo e o tempo anteriormente dedicado s viagens.Algumas vezes, dizemos que a comunicao e o transporte esto disputando uma corrida, e atecnologia que vencer tornar a outra obsoleta.Um terceiro objetivo para um nmero cada vez maior de empresas realizar negcioseletronicamente com outras em presas, em especial fornecedores e clientes. Por exemplo,fabricantes de automveis, aeronaves e computadores, entre outros, compram subsistemas dediversos fornecedores, e depois montam as peas. Utilizando redes de computadores, osfabricantes podem emitir pedidos eletronicamente, conforme necessrio. A capacidade de emitirpedidos em tempo real (isto , conforme a demanda) reduz a necessidade de grandes estoques eaumenta a eficincia.Um quarto objeto que est comeando a se tornar mais importante o de realizar negcios comconsumidores pela Internet. Empresas areas, livrarias e lojas de discos descobriram que muitosclientes apreciam a convenincia de fazer compras em casa. Conseqentemente, muitas empresasfornecem catlogos de suas mercadorias e servios on-line e emitem pedidos on-line. Espera-seque esse setor cresa rapidamente no futuro. Ele chamado comrcio eletrnico (e-commerce).1.1.2 Aplicaes domsticasEm 1977, Ken Olsen era presidente da Digital Equipment Corporation, ento o segundo maiorfornecedor de computadores de todo o mundo (depois da IBM). Quando lhe perguntaram por que aDigital no estava seguindo a tendncia do mercado de computadores pessoais, ele disse: "No hnenhuma razo para qualquer indivduo ter um computador em casa". A histria mostrou ocontrrio, e a Digital no existe mais. Por que as pessoas compram computadores para usar emcasa? No incio, para processamento de textos e jogos; porm, nos ltimos anos, esse quadromudou radicalmente. Talvez agora a maior motivao seja o acesso Internet. Alguns dos usosmais populares da Internet para usurios domsticos so:1. Acesso a informaes remotas.2. Comunicao entre pessoas.3. Entretenimento interativo.4. Comrcio eletrnico.O acesso a informaes remotas tem vrias formas. Ele pode significar navegar na World Wide Webpara obter informaes ou apenas por diverso. As informaes disponveis incluem artes,negcios, culinria, governo, sade, histria, passatempos, recreao, cincia, esportes, viagens emuitos outros. A diverso surge sob tantas formas que no podemos mencionar, e tambm seapresenta em outras formas que melhor no mencionarmos.Muitos jornais so publicados on-line e podem ser personalizados. Por exemplo, s vezes possvelsolicitar todas as informaes sobre polticos corruptos, grandes incndios, escndalos envolvendocelebridades e epidemias, mas dispensar qualquer notcia sobre esportes. Algumas vezes, atmesmo possvel transferir os artigos selecionados por download para o disco rgido enquanto vocdorme ou imprimi-los na sua impressora pouco antes do caf da manh. medida que essatendncia continuar, ela causar desemprego macio entre os jovens entregadores de jornais, masas empresas jornalsticas gostam dela, porque a distribuio sempre foi o elo mais fraco na cadeiade produo inteira.A prxima etapa alm de jornais (e de revistas e peridicos cientficos) a biblioteca digital on-line.Muitas organizaes profissionais, como ACM (www.acm.org) e IEEE Computer Society(www.computer.org), j tm muitos peridicos e anais de conferncias on-line. Outros grupos estoseguindo com rapidez essa tendncia. Dependendo do custo, tamanho e peso de notebooks comdimenses de livros, os livros impressos podero se tornar obsoletos. Os cticos devem observar oefeito que a mquina de impresso teve sobre os manuscritos medievais com iluminuras.Todas as aplicaes anteriores envolvem interaes entre uma pessoa e um banco de dadosremoto repleto de informaes. A segunda grande categoria de utilizao de redes acomunicao entre pessoas, basicamente a resposta do Sculo XXI ao telefone do Sculo XIX. Ocorreio eletrnico (e-mail) j usado diariamente por milhes de pessoas em todo o mundo e seuuso est crescendo rapidamente. Em geral, ele j contm udio e vdeo, alm de texto e imagens.O odor talvez demore um pouco mais. 22. Hoje em dia, qualquer adolescente fantico pela troca de mensagens instantneas. Esse recurso,derivado do programa talk do UNIX, em uso desde aproximadamente 1970, permite que duaspessoas digitem mensagens uma para a outra em tempo real. Uma verso dessa idia para vriaspessoas a sala de bate-papo (ou chat room), em que um grupo de pessoas pode digitarmensagens que sero vistas por todos.Newsgroups (grupos de notcias) mundiais, com discusses sobre todo tpico concebvel, j socomuns entre grupos seletos de pessoas, e esse fenmeno crescer at incluir a populao emgera l. O tom dessas discusses, em que uma pessoa divulga uma mensagem e todos os outrosparticipantes do newsgroup podem ler a mensagem, poder variar de bem-humorado a inflamado.Diferentes das salas de bate-papo, os newsgroups no so de tempo real, e as mensagens sogravadas. Assim, por exemplo, quando algum voltar das frias, todas as mensagens publicadasdurante esse perodo estaro bem guardadas, esperando para serem lidas.Outro tipo de comunicao entre pessoas recebe freqentemente o nome de comunicao nohierrquica (peer-to-peer), com o objetivo de distingui-la do modelo cliente/servidor (Parameswaranet al., 2001). Nessa forma de comunicao, indivduos que constituem um grupo livre podem secomunicar com outros participantes do grupo, como mostra a Figura 1.3. Em princpio, toda pessoapode se comunicar com uma ou mais pessoas; no existe nenhuma diviso fixa entre clientes eservidores.Figura 1.3. Em um sistema no hierrquico no existem clientes e servidores fixosA comunicao no hierrquica realmente alcanou o auge por volta de 2000 com um serviochamado Napster que, em seu pico, teve mais de 50 milhes de fs de msica trocando todos ostipos de msicas, constituindo aquilo que provavelmente foi a maior violao de direitos autoraisem toda a histria registrada (Lam e Tan, 2001; Macedonia, 2000). A idia era bastante simples. Osassociados registravam em um banco de dados central mantido no servidor Napster a msica quetinham em seus discos rgidos. Se queria uma cano, cada associado verificava no banco de dadosquem tinha a cano e ia diretamente at o local indicado para obt-la. Por no manter de fatonenhuma msica em suas mquinas, a Napster argumentou que no estava infringindo os direitosautorais de ningum. Os tribunais no concordaram e fecharam o site e a empresa.Porm, a gerao seguinte de sistemas no hierrquicos eliminou o banco de dados central,fazendo cada usurio manter seu prprio banco de dados local, alm de fornecer uma lista deoutras pessoas prximas associadas ao sistema. Um novo usurio pode ento ir at qualquerassociado para ver o que ele tem e obter uma lista de outros associados, com a finalidade deexaminar outras msicas e outros nomes. Esse processo de pesquisa pode ser repetidoindefinidamente, at constituir em um local um grande banco de dados do que existe fora desselocal. Essa atividade seria tediosa para as pessoas, mas especialmente adequada paracomputadores.Tambm existem aplicaes legais para comunicao no hierrquica. Por exemplo, aficionados quecompartilham msicas de domnio pblico ou amostras de faixas liberadas por novos conjuntosmusicais para fins de publicidade, famlias que compartilham fotografias, filmes e informaessobre a rvore genealgica, e adolescentes que participam de jogos on-line com vrias pessoas. Defato, uma das aplicaes mais populares de toda a Internet, o correio eletrnico, inerentementeno hierrquica. Espera-se que essa forma de comunicao venha a crescer consideravelmente nofuturo. 23. O crime eletrnico no se restringe a infraes de direitos autorais. Outra rea agitada a dosjogos de apostas eletrnicos. Os computadores tm simulado vrios tipos de atividades durantedcadas. Por que no simular mquinas caa- nqueis, jogos de roleta, mesas de vinte-e-um eoutros equipamentos de jogos? Bem, porque isso ilegal em muitos pases. O grande problema que o jogo legal em muitos outros lugares (na Inglaterra, por exemplo) e os donos de cassinosperceberam o potencial para jogos de apostas pela Internet. Ento, o que acontecer se o jogador eo cassino estiverem em pases diferentes, com leis 13conflitantes? Essa uma boa pergunta.Outras aplicaes orientadas a comunicaes incluem a utilizao da Internet para realizarchamadas telefnicas, alm de videotelefonia e rdio pela Internet, trs reas de rpidocrescimento. Outra aplicao o ensino distncia (telelearning), que significa freqentar aulas s8 da manh sem a inconvenincia de ter de sair da cama. No final das contas, o uso de redes paraaperfeioar a comunicao entre os seres humanos pode se mostrar mais importante que qualquerdos outros usos.Nossa terceira categoria o entretenimento, uma indstria enorme e que cresce mais e mais acada dia. A aplicao fundamental nesse caso (aquela que dever orientar todas as outras) ovdeo por demanda. Dentro de aproximadamente uma dcada talvez seja possvel selecionarqualquer filme ou programa de televiso, qualquer que seja a poca ou pas em que tenha sidoproduzido, e exibi-lo em sua tela no mesmo instante. Novos filmes podero se tornar interativos eocasionalmente o usurio poder ser solicitado a interferir no roteiro (Macbeth deve matar Duncanou aguardar o momento propcio?), com cenrios alternativos para todas as hipteses. A televisoao vivo tambm poder se tornar interativa, com os telespectadores participando de programas deperguntas e respostas, escolhendo entre concorrentes e assim por diante.Por outro lado, talvez a aplicao mais importante no seja o vdeo por demanda, mas sim os jogos.J temos jogos de simulao em tempo real com vrios participantes, como os de esconder em umlabirinto virtual, e simuladores de vo em que os jogadores de uma equipe tentam abater osjogadores da equipe adversria. Se os jogos forem praticados com culos de proteo e imagenstridimensionais de qualidade fotogrfica e movimentos em tempo real, teremos uma espcie derealidade virtual compartilhada em escala mundial.Nossa quarta categoria o comrcio eletrnico no sentido mais amplo do termo. A atividade defazer compras em casa j popular e permite ao usurio examinar catlogos on-line de milhares deempresas. Alguns desses catlogos logo oferecero a possibilidade de obter um vdeo instantneosobre qualquer produto com um simples clique no nome do produto. Aps a compra eletrnica deum produto, caso o cliente no consiga descobrir como us-lo, poder ser consultado o suportetcnico on-line.Outra rea em que o comrcio eletrnico j uma realidade o acesso a instituies financeiras.Muitas pessoas j pagam suas contas, administram contas banc