Descrição: Livro de redes de computadores Kurose 5 ed
Resumo Capitulo 5 - Kurose
Descripción: Redes de Computadores
Tecnologias e Redes de Computadores: estudos aplicados / Organizadores: Vanderlei Freitas Junior … [et. al.] . -- Sombrio: Instituto Federal Catarinense - Campus Avançado Sombrio, 2015. …Descrição completa
Descrição: Redes Computadores Manual Curso Técnico de Informática
Redes de computadresDescrição completa
excelente apostila sobre redes de computadores de autoria da UNITINSDescrição completa
Descrição: ipv6
redes
Redes de ComputadoresDescrição completa
Material didático de apoio ao curso Gerência de Redes de Computadores, elaborado pela Escola Superior de Redes. O curso aborda a análise das necessidades, gestão da estrutura e utilização das princ...Full description
Material didático de apoio ao curso Gerência de Redes de Computadores, elaborado pela Escola Superior de Redes. O curso aborda a análise das necessidades, gestão da estrutura e utilização da…Descrição completa
breve introdução em conteúdo de Redes
Material didático de apoio ao curso Gerência de Redes de Computadores, elaborado pela Escola Superior de Redes. O curso aborda a análise das necessidades, gestão da estrutura e utilização da…Descrição completa
Descrição: Material didático de apoio ao curso Gerência de Redes de Computadores, elaborado pela Escola Superior de Redes. O curso aborda a análise das necessidades, gestão da estrutura e utilização das princ...
Material didático do curso de Interconexão de redes de computadores da Escola Superior de Redes.Full description
rede computadores questoesDescrição completa
Descrição: Curso de tecnologia para concursos
Descripción: Apostila de introdução a redes de computadores do IFMT.
Material didático de apoio ao curso Gerência de Redes de Computadores, elaborado pela Escola Superior de Redes. O curso aborda a análise das necessidades, gestão da estrutura e utilização da…Descrição completa
bowAttooico.
REDES DE COMPUTADORES E A INTERNET S' edição
KUROSE ROSS
----PEARSON
Companion
Website
bowotto4ico.
bow4tto4ic~
REDES DE COMPUTADORES E A INTERNET S'ediçiio Uma Abordagem Top·Down
PearsonEducation
EMPRESA CIDAD ~
bowotto4ico.
bow4tto4ic~
KUROSE • ROSS
REDES DE COMPUTADORES E A INTERNET 5 e dição 1
Uma Abordagem Top-Down
Tradução Opporwnil)' Tr
Revisão Té<:nlc.a Wc1gner Lvil Zucclti Professor Doutor do Departamento de Sistemas Eletrônicos da Escola Politécnica da Universidade de São Pau los
----PEARSON São Paulo
Brasil
Argen tina
Colômbia
Costa Rica
Chile
Espanha
Guatelamala
México
Peru
Porto Rico Venezuela
bow4tto4ic~
() 201 O Pearson Education do Brasil Título original: Computer networking: a top-dmvn appmacl1 (eaturing lhe fnwrnet, fifth editio11 () 201O Pearson Education, Inc. Traduc;Jo autorizada a partir da edição original em ingl&s, publ1cada pela Pearson Education, Inc., sob o selo Addison Wesley. Todos os di reitos reservados. Nenhuma parte desta publicação poderá ser reproduzida ou transmitida de qualquer modo ou por qualquer outro meio, eletrônico ou mecânico, incluindo fotocópia, gravação ou qualquer outro tipo de sistema de arm.11cnamento c transmiss;io de informaç~o, sem prévia autori1-aç.io, por escrito, da Pearson Eduution do Brasil.
Diretor editorial: Roger Trimer Cerente de editorial: Sabrina Cairo Supervisor de produção editori,JI: Marcelo Françozo Editoras: G4lbriela Trevisan e TI1elma l~abaoka Revisão: Ma ri a Aiko Nish ijima C.1p.1: Casa de Idéias, sobre projeto origina l de Joyce Cosentino Wells fmagem de capa: O Reutersljean-Phillipe Arbs/Londres ldícoraçiio eletrônica: Casa de Idé ias
Dados Internacionais de Catalogação na Publicação (CIP} (Câmara Brasileira do l iv ro, SP, Brasil) Kvrose, James F. Redes de computadores e a Internet : uma abordagem top-down I James F. Kurose e Keith W. Ross ; tradução Opportunity translations ; revisão técnica Wagner Zucchi. •• 5. ed. - S.io Paulo: Addison Wesley, 2010. Tíwlo original: Computer networking fifth edition a top·down approach featuri ng the Internet. Bibliografia. ISBN 978-85·88639· 97· 3 I. Inte rne t 2. Redes de computadores I. Ross, Keith W. 11. Titulo. CDD-004.67
09· 10003 indices para catálogo sistemático:
I. Internet : Redes de computadores : Processamento de da dos 004.()7
2009 Direitos exclusivos para a língua portuguesa cedidos à Pearson Eduution do Brasil, uma empresa do grupo Pearson Education Av. Ermano Marchetti, 1435 CEP: 05038-001 , São Paulo - SP Fone: (11) 21 78-8686 - Fax: (11) 2178-8688 e-mail: [email protected]
bowotto4ico.
Pcmtjulic c nossas trls J>rCCiosiclculrs: Cl1ris, Charlic c Ninei
JFK
l'mcr miultct mMcwilllosa esposa Vt'roniqur
c 11ossas três filhas: Ctcilc, Clah·c r Katic KWR
bowotto4ico.
bow4tto4ic~
Sumário
Capitulo 1 Red es d e computadores e a lntemet ...................................................................... 1 1.1 O que~ a hucnlct? .................................................................................................................................2 1. 1.1
1.2
1.3
l .4
1.5
Uma descrição dos componentes da rede ................................................................................... 2
1.1.2
Uma dcscnção do sçrviço ...........................................................................................................4
1.1.3
O que é um protocolo? ...............................................................................................................5
A pcrircna da lntcmet ............................................................................................................................. 7 1.2.1
Programas clientes c set'\-;dorcs .................................................................................................. 7
1.2.2
Redes de acesso ..........................................................................................................................8
O nüclco da rede ................................................................................................................................... 18 1.3.1
Comutação de circuitos e comutação de pacotes ..................................................................... 18
1.3.2
Corno os pacotes percorrem as redes de comutadores de pacotes? ........................................24
1.3.3
ISPs c b:u:kboncs da lntcrneL ..................................................................... ...............................25
i\ traso, perda e vazão em redes de comutação de pacotes .................................................................... 26 1.4.1
Uma visl'lo geral ele atraso em redes de comutação de pacote:s .................................................27
1.4.2
Atraso de nla c perda de pacote ................................................................................................29
1.4 .3
Atraso fim n fim ........................................................................................................................31
1.4 .4
Vaz~io
nas redes de computadores ................................... .........................................................33
C:1madas de protocolo e seus modelos de serviço ................................................................................ 35 1.5.1 Arquitetura de camadas ............................................................................................................35 1.5.2
Mensagens, segmentos, datagramas e quad ros ......................................................................... 40
1.6
Redes sob ameaça ..................................................................................................................................41
1.7
I hs tóna das redes de computadores e da Lntemet ................................................................................45 1.7 . I
Descnvolvimcmo da comutação de pacotes: 1961-1972 ..........................................................45
1.7.2
Redes proprietárias e trabalho em rede: 1972-1980 .................................................................46
1.7.3
Prolircraç;\o de redes: 1980-1990............................................................................................. .47
bow4tto4ic~ Redes de com putod ores e o Inle;.; r n;.;e.;.t_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
1.8
1.7.4
A explos:\o da Internet: a dé~-ada de 1990 ................................................................................-18
Capítulo 2 Camada de aplicação ............................................................................................. 6 1 2.1
Prmcípios de aplicações de rede ...........................................................................................................61
2.1. 1 Arquheturas de a plicação de rede .............................................................................................62 2. 1.2 Comunicaç-Jo entre processos ................................................................................................... 64 2. 1.3 Serviços de transporte disponíveis para aplicações .................................................................66 2.1.4 Serviços de transporte providos pela lmernet ..........................................................................68 2. 1.5 Protocolos de camada de aplicação ...........................................................................................71 2. 1.6 Aplicações de rede abo rd adas neste livro .................................................................................72 2.2 A Vvcb c o 11TTP ......................................................................................................................... ..........72 2.2.1 Dcscriçilo gemi do HTTP .......................................................................................................... 72 2.2.2 Conexões persistentes e não persistentes ................................................................................. 74 2.2.3 Formato da mens.'lgem HTTP ................................................................................................... 76 2.2.4 lntcra(,'fto usuário-servidor: cookies ..........................................................................................80 2.2.5 Cachcs Wcb ..............................................................................................................................81 2.3 2.4
2.5
2.6
2.7
2.8 2.9
2.2.6 GET condicional .......................................................................................................................84 Transferência de arquivo: FTP ..............................................................................................................85 2.3.1 Comandos c respostas FTP .......................................................................................................87 Correio cletrOnico n:~ Internet ..............................................................................................................87 2.4.1 SMTP .........................................................................................................................................89 2.4.2 Comp;1rnçilo com o HTTP.........................................................................................................91 2.4.3 Fonnatos de mcns.1gem de c:orreio e MlME .............................................................................92 2.4.4 Protocolos de ;~cesso ao correio ................................................................................................92 DNS: o serviço de diretório da Internet ................................................................................................96 2.5. 1 Serviços fornecidos pelo DNS ...................................................................................................96 2.5.2 Visao gcrnl do modo de funcionamento do DNS .....................................................................98 2.5.3 Registros c mensagens DNS .................................................................................................... J02 ApiKaçOes P2P .................................................................................................................................... 1Oó 2.6. 1 Dis tribuiçilo de arquivos P2P ....................................................... ...........................................107 2.6.2 Ois trlbuted 1-tash Tables (OHTs) ............................................................................................ 111 2.6.3 Estudo de caso: telefonia por I ntcrnct P2P com Skypc .......................................................... 115 Progmmação c desenvolvimen to de aplicações com TCP ...................... ............................................ 116 2. 7.1 Progmmar."do de aplicações com TCP ..................................................................................... 11 7 2.7.2 Um exemplo de aplicaçflo cliente-servidor emJ:tva ............................................................... ll8 PrognunaÇt1o de sockets com UOP ...................................................................................................... 123 Resumo ................................................................................................................................................ 129
Capitulo 3 Camada de transporte ......................................................................................... 140 3.1
Introdução e serviços de camada de transporte .................................................................................. l40 3. 1.1
Relação entre as camadas de trnnsporte e de rede .................................................................. 142
3.1.2
Visão geral da camada de uansporte na Internet ................................................................... 143
bow4tto4ic~ Sumário
3.2
IX
Multlplexaç-.lo c demultíplexaç;\o........................................................................................................ l44
3.3 Transporte m\o orientado para conexão: UDP.................................................................................... 150 3.3.1
Estrutura do segmcmo UDP ................................................................................................... 152
3.3.2 Soma de vcrificaç;lo UDP ........................................................................................................ 153 3.4
Princ1píos da transfe rfncia cottfiávcl de dados ................................................................................... l 54 3.4.1
Construindo um protocolo de transferência confiável de dados ............................................ 155
3.4.2
Protocolos de transfcrcncia confiá,•cl de dados com paralelismo .......................................... 163
3.5 Transporte orientado pa ra conexão: TCP ........................................................................................... 174 3.5. 1 A COIICXl'IO TCP ....................................................................................................................... 174
3.6
3.5.2
Estr utura do segmento TCP .................................................................................................... l 76
3.5.3
E.'ltimativa do tempo de viagem d e ida e volta c de esgot;uue tllo de tcmporizaç:\o ............... l80
3.5.4
Transferfncia confh\vcl de dados ............................................................................................ l 83
3.5.5
Cont role de nu xo .................................................................................................................... 189
3.5.6
Gerenciamento da conexão TCP............................................................................................. L90
Príndpios de controle de congestionamen to ...................................................................................... l 96
3.(>.1 t\s causas c os custos do congestionamento ........................................................................... 196 3.6.2
Mecanismos de controle de congestionamemo ......................................................................201
3.6.3
Exemplo dt controle de congestionamento assistido pela rede: controle de congcstionamcmo ATM ABR............................................................................................. 202
3.7
Con trole de congestionamento no TCP ..............................................................................................203 3.7. 1 Equidade..................................................................................................................................210
Modelos de serviço de rede ..................................................................................................... 232
Redes de circuitos virtuais e de d atagramas ........................................................................................ 234 4 .2.1 Redes de circuitos virtuais ..................................................................................................... 234
4.3
4.4
4.2.2
Redes de d:nagm mas ............................................................................................................... 236
4.2.3
Origens das redes de circuitos virtuais c d e datagrnnms ........................................................ 238
O que há den tro de um roteador? .......................................................................................................239 4.3. 1
Port:1s de emrada.....................................................................................................................240
4.3.2
Elemento de comutaç;lo ..........................................................................................................242
4.3.3
Port:IS de saida......................................................................................................................... 244
4.3.4
Onde ocorre formação de fila? ................................................................................................244
O Protocolo da lmernct ( IP): repasse c endereçamen to na lntcrnet. .................................................247 4.4. 1 Formato do datagrama ............................................................................................................ 247 4.4.2
Uma breve invcsúd a em scgumnça IP ....................................................................................269
Algoriunos de rotcamento ................................................................................................................... 270 4.5. 1 O algontmo de ro teamento d e estado de enlace (LS) ............................................................273
-1.6
4.7
4.8
4.5.2
O algontmo d e ro teamento d e vetor de disu\ncias (DV)........................................................ 276
Capitulo 5 Camada de enlace e redes locais ......................................................................... 3 ) 8 5. 1
5.2
5.3
Camad:~
de enl:tcc: introdução e serviços ...........................................................................................318
5.1.1
Os scrvi\'OS fornecidos pela camada de cnlacc........................................................................319
5. 1.2
Onde a
carn:~da
de enlace é implementada? ...........................................................................32 1
Técnicas de clctecç;\o c corre\"âO de erros ...........................................................................................323 5.2. I
Vcrific;lÇões de paridade .........................................................................................................32-4
5.2.2
Métodos de soma de verificação .............................................................................................326
5.2.3
Verificação de rc:dundãncia cíclica (CRC) .............................................................................. 326
Protocolos de acesso múltiplo .............................................................................................................328 5.3. 1 Protocolos de divisão de canal ................................................................................................330
5.4
5.5
5.3.2
Pro tocolos de acesso aleatório ................................................................................................331
5.3.3
Protocolos de rcve;tamcnto ..................................................................................................... 336
Endereçamento na camada de enlacc.................................................................................................. 338 5.4. l
Endereços MAC ...................................................................................................................... 338
5.4.2
ARP ( protocolo de resolução de endereços) ........................................................................... 339
Eth crnct ...............................................................................................................................................343 5.5. l
[;strutum do quadro Ethcrnct .................................................................................................344
5.5.2
CSMNCD: o protocolo de acesso múltiplo da Eth cm ct ........................................................346
5.6 Comutadores de camada de enlace ......................................................................................................35 1 5.6.1 Repasse c l'iltmgem.....................................................................................................................35 1
5.7
5.6.3
Propriedades de comutação da camada de enlace ..................................................................353
5.6.4
Comutadores versus roteadorcs ............................................................................................. .353
5.6.5
Rede local vi rtual
(Vinual Local Arca Nc tworkl) ....................................................355
PPP: o protocolo ponto a ponto ..........................................................................................................358 5. 7.1
5.8
(VL\~s
Enquadramento de dados PPP ............................................................................................... .359
Virtualização de enlace: uma rede como camada de enlace ...............................................................361
bow4tto4ic~ Sumário
5.9 5. 10
XI
Um dia na vida de uma solícitaçào de página Web ............................................................................363 Resumo ..............................................................................................................................................367
Capítulo 6 Redes sem fio e redes móveis ............................................................................... 3 77 6. 1
Carnctcrlsucas de enlaces e redes sem Íto ...........................................................................................380 6.2. 1 COMA ..................................................................................................................................... 383
6.3
\Vi-F•: LANs sem fio 802.11 ............................................................................................................... 385
6.3. 1 A arquitelurn 802.11 ...............................................................................................................387 6.3.2 O protocolo MAC 802. 11 .......................................................................................................389 6.3.3 O quadro IE EE 802.11 ............................................................................................................394 6.3.4 Mobilidade na mesma sub-rede IP.............................................. ............................................39ó
6.4
6.3.5
Recursos Avançados em 802.11 ... ,.............................................. ............................................397
6 .3.6
M;~is
Acesso cel ular ;\ lnlcrnet .....................................................................................................................401
6.4.1 Uma 6 .5
além de 802. 11: Bluctooth c \ViMAX .............................................................................398 vi~\o
geral da arquitemra celular ................................................................................... 402
Gerenciamen1o da mobilidade: princípios .......................................................................................... 405
Rolcamento para um nó móvcl ............................................................................................... 409
6.6
IP móvel. ..............................................................................................................................................412
6.7
Gerenciamento de mobilidade em redes cclularcs ................................................................................ l5 6. 7. 1
Rateando chamadas para um usuário móvel ............................................................................ 17
6.8 Sem f'l o c mobilidade: impac1o sobre protocolos de camadas supcriorcs ...........................................420 6.9 Resumo ................................................................................................................................................422
Fornecendo garantias de qualidade de serviços...................................................................... ............ 478 7.6. 1 Um exemplo molivador .................................................................................... ........................ 478 7.6.2 Reserva de recurso, admissão de chamada c configumç•\o de chanmda .................................. 479 7.6.3
7.7
QoS gum ntida na Internet: ln tscrv c RSVP ............................................................................. 482
Capitulo 8 Segurança em redes de computadores ...................................................... ........... 492 8 .1 O que é segurança na rede? ................................................................................................................493 8.2
Prinefpios de crip10gmfia .................................................................................................................... 494
Criptograf'ia de chave públíc:a .................................................................................................500
lntegndadc d e mensagem c autenticação do ponto f'inai.. ..................................................................S04 8.3. 1 Funções de hash criptogrãf'icas ...............................................................................................S05 8.3.2
Código de autemicaç-.lo da mcnsagcm ....................................................................................506
Capitulo 9 Gerenciamento de red e ........................................................................................ 553 9. 1 O q ue é gerenciamento de red e? ........................................................................................................ .553 9.2 A inrrnestrut ura do ge renciamento de rede ....................................................................................... .556 9.3
A estru1urn d e gerenciamento padrJo da Imerne1..............................................................................560 9.3. 1
$~11
(Estruturo d e lnrormações de Gerenciamento) ...............................................................561
9.3.2 Base de ínrormações de gcrenciamcnto: Ml8.......................................................................... 564 9.3.3
Op<:rnçõcs do protocolo SNMP c mapeamentos de trnnsportc .............................................. 565
9.3.4
Scgu ra nçn c admin is~rnçào ...................................................................................................... S68
Referências ........ ................ ..................................................................................................... 578 indice ................................. ............... ........................ ..................................................... ......... 603 Sobre os autor es ..................................................................................................................... 615
bowotto4ico.
bow4tto4ic~
Prefácio
B
em-vindo 1\ quinta cdiçi\o de Rrdes clt computa(/ons e a ln tl'm t l : 1111111 abordagem cop-tlowu. Desde a publiC':lç-3o da primeiro cdiç;\o, M nove anos, nosso livro foi adowdo em centenas de un iversidades c instituições de ensino superior, traduzido pammais de dez id1omas c utilizado por ma1~ de cem nul l'Studilntes e profiss ionais no mu ndo inteiro. Muitos desses leitores entraram em contato conosco c fiC:l mos cxtrcm:uncntc satisfeitos com sua reaçdo positi\"a. Acreditamos que um;1 importante razão para esse sucesso é que o livro oferece uma abord:~gem moderna do ensino de redes de computadores. Vcxt poderia perguntar: por que é necessária uma abordagem moderna? . os llltimos anos, testemunhamos duas mudancas rcvoluciom\rias no l'3rnpo das redes - mudanças que não cslào renctidas nos livros sobre o assumo publicados entre as décadas de 1980 c 1990. Em primcíro lugar. a Internet dominou o universo das redes de computadores. Atualmen te. em qualquer discuss.'lo séria sobre redes. é obrigatório ter a Internet em mente. Em segundo lugar. o maior crescimento nessa área ocorreu no :\mbito dos serviços e das aplicações, o que pode ser confirmado pelo desenvolvimento da Wcb, pela utilização dos serviços de e-mail por milhares de usuários ao mesmo tempo, pela reccpç;\o de áudio e vldeo, pelo telefone por Internet, pelos scn·iços de m('nsagcrn instantãn(':l, pdas aplicações P2P c pelo comércio ('ICtrõnieo.
Quais são os novidades desta quinto edição? Fizemos mutl:mças nesta quinta edição, mas mantive mos Inalterados os ttspe~: tos que acreditamos ser (c os professores c estudantes que utilizaram nosso li\'ro c:onrlrmaram) os mais importantes deste livro: a abordagem top-down, o roco n:1 In ternet, a menção que demos aos princípios, à prática c sua abordage m e aos estilos acessíveis do ensino de redes de computadores. Contudo. Ozcrnos muitas mudanças significati vas nesta edição. lnlcl:mdo pelo Caprtulo 1, atualizamos a in uoduç;lo rdcremc a redes e atualizamos c expandimos noss.1 ::~bordagcm sobre redes de acesso (particularmente, o uso de redes a cabo, OSL c fiber-to-the-horne corno redes de acesso :\ Internet pliblic:1). No Capítulo 2, retiro mos o material sobre a pesquisa ponto a pomo que se tornou rora de uso para d:u esp.1ço a uma nova seção sobre d1stnbutcd hash tables. A apresentação do contro le de congestionamento TCP no Capítulo 3 é agora baseada em uma representaç;'\o gmfka (máquina de estado fimto) de TCP. estnuurando c esclarecendo nossa abordagem. O Olprtulo 5 roi estendido significati\·amente. com seções novas sobre as redes locais virtll
bow4tto4ic~ Redes de tom putod ores e o Interne~1------------------------c:1pflulos. No Capitulo 6, rerno,•cmos um pouco da "sopa de lctrlnhas~ de padrões c protocolos da telefonia celular c acrescentamos unm nova scçJo sobre a arquitetura de redes de celular e como a rede de celular e a Internet operam em COIIJUIIIO para prover serviços da Internet a a pRrelhos móveis como o Blackbcrry c o iPhonc. ossa abordagem sobre a scguranç;1 da rede, no Capfwlo 8, sofreu uma rcvislo signilka uva. O conteúdo sobre a autcntica<;:io do ponto de chegada, encadeamento de blocos de cifras c criptograna da chave pública foi revisado, c o material sobre o IPsec foi reescrito e estendido para incluir as redes vtrtuais privadas (VPNs, do ingl~ virtual pnvatc n ctworks). Ao longo de todo o lhrro, incluímos exemplos modernos c refertncms atualizadas.
Público ·oIvo Este livro destina-se a um estudo inicial de redes de computadores. Pode ser usado em cursos de cicncia da computação c de engenharia elétrica. Em termos de linguagem de programação, requer q ue os estudantes conheçam :~s linguagens C, C++ ottjava (mas apenas em <1lguns lug
Oque há de singular neste livro? O as:.unto rede de computadores é bastantt vasto e complexo c envolve muitos conceitos, protocolos c tecnologias que se cntrelaç;un inexuícavelmentc. Para dar coma desse escopo c complcx1d:tde. muitos li\'l'OS sobre redes são, em geral, organizados de acordo com as ~camadas· de uma arquitetura de rede. Com a org;mizaç:io em camadas, os estud:mtes podem vislumbrar a complexidade das redes de computadores - eles aprendem os conceitos e os protocolos diStintos de uma parte da arquitetura c. ao mesmo tempo. \1Suahzam o grande quadro da interconcxiio entre as camadas. Do ponto de vista pedagógico, nossa cxpcrifncia pessoal connnna que css:\ abordagem em camadas é, de f:~to, muito bo01. Entretanto, achamos que a abordagem tmdtcional, a bouom-up- da camada frsica para a camada de aplicaç-.1o - . n:lo é a melhor abordagem pam um curso moderno de redes d e computadores.
Uma abordagem top·down Na primeira edição, propusemos uma inovação adotando uma \•ls.'\o top·down l-amada de aplkaç:\o c descendo até a camada física.
Isto é, começando na
A abordagem top-down orerece diversos benerfeios importames. Em primeiro lugilr, o livro dá enfasc à cam:1da de apli<:ação. que tem sido a área de ·gr<'ndc crescimento~ das red es de computadores. De fmo, muitas das recen tes revoluções nesse ramo- incluindo a \Veb, o cornpartilhamcmo de arquivos P2P c o nuxo continuo de mldi:1 - tivera m lugar nessa camada. Essa abordagem ele ênfase inicial à camada de :1plicaç:\O é diferente das seguidas por muitos outros lh·ros, que têm apenas pouco material sobre aplicações de redes, seus requisitos. paradigm:1s da camada de aplícaç-.lo (por exemplo, clieme-servidor c ponto a ponto) c interfaces de programaçr•o d e aplicação. Em segundo lugar, nossa experiência como professores (c a de mui tos outros que utilizaram este li\'ro) connrma que ensinar a plicações de rede logo no infcio do curso é uma poderosa ferramenta moti\"adora. Os estudantes Ocam mais entusiasmados ao aprender corno funcionam as aplicações de rede- aplicações como o e-mail c a Wcb, que a maioria deles usa diariamente.. Entendendo as aplicações, o estudante pode cmcndcr os serviços de rede necessários ao suporte de tais aplirnçõcs. Pode tam~m . por sua \'CZ, examin:~r as ,·árias maneiras como esses serviços são fornecidos c implementados nas camadas mais baixas. Assm1, a discussão das aplicações logo no início fornece a motivação necessária para os demais assuntos elo livro. Em terceiro lugar, essa abordagem top-down habilita o professor a apresentar o desenvolvimento de aplicações de rede no estágio inicial.
bow4tto4ic~ Prefócio
XVII
Os estudantes n:lo apenas vcem como funcionam aplícações c protocolos populares, como também aprendem que é fácil criar suas próprias aplit"ações c protocolos de aplicaç-.\o de rede. Com a abordagem top-
Um foco no Internet Continu:unos a ut ilizar a arquiteturn e os protocolos da lntcrnet corno veículo pmnorelial p:tra estudar conceitos fundamemals de redes de computadores. É claro que t:un bêm inelufmos conceitos c protocolos de omr:LS arqultCtltr.\S de rede. Mas os holofotes estão claramente dirigidos:'\ Internet, fato rene tido na orga niza~·ào elo livro, que gim em torno da arqui tctum de cinco t:arnadas ela Internet: aplícaç;lo, transporte, rede, enlace e física. OlHro bcneffcio de colot<1r a I ntcrnct sob os holofotes é que a maioria dos est udantes de ci~ncia d<~ compuwç:\o e de engenharia elétrica está ávida por conhecer a Internet e seus protocolos. r!lcs sabem que a Internei é uma tecnologia revolucionária c inov:1dora c podem constatar que da es tá provocando uma profunda transformaçao em nosso mundo. Dada a enorme releviincia da Internet, os eswdantes cst:lo nnturnlmcnte curiosos em saber o que h:\ por tr.is dela. Assim, fic-.t f:lcíl para um professor manter seus ;~I unos interessados nos princípios básicos, usando a Internet como guia.
Ensinando princípios de rede Duas das caractcnsucas exclusivas deste livro -sua abordagem top·do\m c seu foco na Internet- aparecem no tflulo c submulo. Se pudéssemos. teria mos acrescentado uma tcrcclrn palavm ao subtítulo- principios. O campo d:lS redes agom está suficientemente maduro para que uma quamidadc de assuntos de importância fundamental possa ser 1denuficada. Por exemplo, na camada de transporte, cmre os assuntos importames esu'lo a comunicação confiá,·el por uma catnada de rede não confiá,•cl. o estabclecimcntolenccrramento de conexões c mútua aprescntaç;'lo, o controle de congestionamento c de Ouxo c a muhiplcxaçilo. Na camada de red e, dois assuntos muito import.1ntcs s:lo: como determinar "bons" caminhos entre dois roteadores c como intcrconectar um grande n(unero de redes hcterogcncas. Na camada de enlace. um problema fundamental é como cornpanilltar um canal de acesso múltiplo. N:t segurança de rede, técnicas para prover sigtlo, autenticaç'lo e integridade de mensagens s.'\o bascad:ts em fundamentos da criptografia. Este livro identifica as questões fundamcmais ele redes c s os padrões c protocolos de rede de hoje tornarem-se obsoletos, os prindpios que ele incorpora continuarão importantes e releva ntes. Acrcdit:11nos que o uso da Internet para apre-se ntar o assunto aos estudantes e a t:nrasc dada 11 abordagem das questões c d
Material de apoio Comprion
Websitl
No si te de apolo do livro (www.aw.com/kurose_br) . proressores e cswdantcs podem acessar matenais adte1onais em qualquer dia, dur:lntc 2't horas.
Para professores: Fornecemos um pacote de suplementos para amdliar o ensino do conteúdo deste h vro. Manual de soluções (em ingl~). O site do livro oferece um manual de soluções, em mgl~. para os exercícios apresentados ao final de cada capítulo.
bow4tto4ic~ Redes de computadores e o lnte ;.;rn;.;e;.;.t_________________________
Aprcscmaçôes em PowcrPoim. O sitc do livro apresenta s lides em PowcrPoint para todos os nove capnulos. Os slides d<\o detalhes completos sobre cada capitulo e neles us:unos gráficos e animações - c não apenas marcadores- para tomar sua aula visua lmente interessante c atraente. Fornecemos os slidcs originais aos pro fessores para que eles poss;un personalizá-los do modo que mclhor a tenda às suas necessidades de ensino. Alguns desses slides foram fo rnecidos por professores que utilizaram nosso hvro em seus cursos. Material de aprendizagem interativo. O si te Web contém dtvcrsos applcts Java imcrativos, que animam muitos dos princip:tis conceitos de redes. O site também possui quizzes interativos que permitem que o aluno verifique sua compreensão básica sobre o assunto. Os professores podem completar essas c:aracterfsticas interativas com aulas ou usá-las como minilabs. Materi:ll tccníco adicional. Removemos a abordagem de alguns assuntos existentes para deixar o li vro com um \'O lume razoável. Por exemplo, para abrir espaço para o novo conteúdo desta edição, retiramos o m:nerial sobre as redes ATM c pesquisas ponto a ponto. Esse material pode ser encontrado no site Wcb do livro. Tarefas ele progranH.\ç;,o. O s ite Wcb também prov~ divc~s tardas de programaçJo detalhadas. que induem construir um servidor Web multitarefa, constr uir um cliente de e- nmil com uma interface GUI, progr-.unnr os lados remetentes c dc.s tínatliri os de um protocolo de transporte de d~dos conllávcl, programar um algoritmo de rotc.'lmcnto clis tribufdo c muito mais. Wircshark l:1bs. A comprecns;\o sobre protocolos de rede pode ser extremamente aprofundada ao o~rvá-los em ar;.lo. O sile \Vcb pro\'1:! dí\'crsas tardas Wiresh:trk que permitem que os eswdames observem a sequ~ncia ele mensagens trocadas cmrc duas entidades de protocolos. O sitc \.Veb inclui Wircshark labs distintos em l'ITTP. ONS, TCP, UOP, IP, ICMP. Ethernet, ARP, W1-Fi, SSL e no rastreamento de todos os protocolos envolvidos em satisf:tZcr a solicita~.;:io para buscar uma págin;l Wcb. ovos labs ser.lo adicionados com o tempo. Esse nrall'lral t de a>o CYclush·o poro professores e CSld prorcgulo por $('11/ra Para rrr ll(CSSO a t'l~. ex profrswres que ad01am o lh.ro dl'\cm cnrrar C'tll conraro com~~~ reprcSi!manre Pearwn ou em·lar e-maU pora tmhc!lilarios(i!pearsmred.com.
Para estuda ntes: Exercfctos on-li nc autocorriglveis. Teste seus conhecimentos com exercícios de múltipla escolha c, se quiser, envie o rcsu hado para seu professor.
Características pedagógicas Há quase 20 anos da mos aulas ele redes de computadores. Adicionamos n este livro uma experiência agregada ele mais de 45 anos de ensin o para milhares de estudantes. Durante esse perfodo, també m t>Mticipamos ativa men te na área de pesquisas sobre redes de computadores. (De fa to. J lm c Keith se conheceram qttando fazia m mestrado, frequentando um curso sobre redes d e computadores mi nistrado por Mischa Schwanz. em 1979, na Universidade de Colümbia.) Achamos q ue isso nos d:1 u ma boa perspectiva do que foi a rede e de qual será, provavelmente, seu futuro . Nào obstante, resistimos às ten tações de dn r ao material deste livro um viés que favorecesse nossos projetos ele pesquisa prediletos. Se voct csuver interessado em nossas pesquisas, consulte nosso sitc Wcb pessoal. Este li vro é sobre redes de computadores modernas - é sobre protocolos c tecnologias contemporJneas. bem como sobre os princlpios subj~lccntcs a esses protocolos c tecnologias. Também achamos que aprender (e ensinar! ) redes pode ser divertido. Esperamos que um certo senso de humor c a uti lizaçao de analogias e exemplos do mundo real que apa recem neste livro tornem este material ainda mais divertido.
bow4tto4ic~ Prefócio
X IX
Adendos, princípios na prática e segurança em foco O campo das redes de compumdores tem uma história rka c fascinante. Fizemos, neste livro. um esforço espcc.al para contar a história das redes de computadores, o qual se matcr.ahzou em uma sc~lo hislórica especial no Cap1tulo 1 c em 12 adendos históricos espalhados pelos demais cap1tulos. esses artigos históricos, apresentamos a invenc;Jo da comutaç-lo de p:~cotes. a evolução da Internet, o nascimento de importantes empresas gig:~ntes de redes, como a Cisco c a 3Com, e muitos outros e,·entos rcle,·antes. Os estudantes certamente se sentinlo estimulados por esses acontecimentos históricos. Em cada caprtulo, inclurmos um adendo especial que acentua um princ1pio importante de rede de computadores. Esses adendos auxiliarão o estudante a compreender alguns dos conc:citos fundamemais que esti\o sendo aplicados às redes modernas. Um pouco de nossa abordagem mais abrangente sobre segurança da rede aparece nos textos complementares · segurança em foco~ em cada um dos eaphulos principais deste livro.
Entrevistos Inserimos um:1 outra ctmctcrfstica odgimtl que inspiraram c rnotivanun os leitores- entrc,•istas com inovadores famosos no campo de redes. Apresentamos entrevistas com Leonard Klei nrock, Elram Cohen, Sally Floyd. Vi111on G. Ccrf, Slmon S. ltlm, Charlie Perkins, Hcnning Schulzrinne, Ste,•en M. Bcllovin c Jcff C.'lse.
O primeiro capitulo deste livro apresema um apanhado geral sobre redes de computadores. Com a introdução de muitos conceilos c tcmlinologias fundamemais, ele monta o cenário para o restante do li\•ro. Todos os outros capftulos dependem diretamente desse primeiro. Recomendamos que os professores, após o terem complet:~do. percorram em sequ<:ncia os caprtulos 2 ao 5, segumdo nossa Olosona top-down. Cad:t um dos cinco primeiros capftulos utiliza material dos capClUios prcccdcmes. Após ter com pletado os cinco primeiros caphulos, o professor terá bastante Oexibilidadc. Não há interdependência entre os quatro ultimos capCtulos, de modo que eles podem ser ensinados em qualquer ordem. Conhecemos profe-ssores que, após ensinar o capítulo introdutório, ensmam o Capítulo 5 e depois trabalham de baixo para cima, ou até mesmo professores que começam a ensinar pelo meio (Capítulo 4) e depo1s não seguem nenhuma ordem. Contudo. cada um dos quatro depende de material dos cinco primeiros. Muitos professores ensinam os primciros dnco cap11ulos c entào um dos quatro llhjrnos para arrematar.
Uma nota final: gostaríamos que vocês entrassem em contato conosco lncem ivamos professores c estudantes a nos enviarem e·mails (em inglês) com qualquer comentário que possam ter sobre o 11\·ro. Incentivamos os professores, tmnb~m. a nos enviar novos problemas (c soluções) que complementem os problemas existentes. Publkarcmos tudo isso no espaço para professores no site Web. Recomendamos aos professores c alunos que criem novas ap li<:açOes Java que ilustrem os c.:onccitos e protocolos apresentados neste livro. Se voe~ ti,•cr uma aplicação que j ulgue apropriada para este li ,rro, :tprcsemc-a, llOr gentileza, aos au tores (em inglês). Se a aplicação ( incluindo nota<;t\o c terminologia) for adequada, teremos o prazer de inclui-la no sitc Wcb do livro em ingles (www.aw.conv'kurose-ross), com a devida refer~ncia :1 seus autores. Não deixem de nos enviar URls imeressames ou de discordar de qualquer uma de nossas afirmações e nos inform:tr o que funciona c o que mlo funciona. Digam-nos, ainda, o que poderia (ou o que n11o deveria) ser inciUJdo na próxima cdiç'lO. Enviem seus e-mails para [email protected] c [email protected]. AI~ a data de publicaç~o deste li\•ro, todos os URLs mencion:~dos no texto csta\'õ\111 funcíonando. Devido ao caráter din11mico da Internet, porém, alguns d eles podem mudar ou deixar de existir. Para tentar encontmr os s itcs c mformaçOcs mencionados. use uma fermmcma de bltsca como www.googlc.com ou www.yahoo.com.
bowotto4ico.
bow4tto4ic~
Agradecimentos
esde o infdo deste projeto. em l996, muitas pessoas nos der;un inestimável auxilio e i nn uenciar:~m nossas ide ias sobre como melhor organizar e ministmr um curso sobre redes. Nosso MUITO OBRIGADO a todos os que nos ajudar:~m, sobretudo às cemenas de estudantes, acad~micos c: proHssionais que nos enviaram sugestões c comenta rios sobre as edições anreriores e sugestões pam futu ras edições deste livro. Nossos agradecimentos especiais par:~:
D
AI Aho (Columbm Univcrsily)
Vi nton Cerf (Googlc)
Hisha m Al-Mub;ud (Umvcrsity of Hous ton-Clcar Lakc)
Shamiul Azom (Arizona State University) ü chun llao (Univers ity of ulifornia at lrvine)
Edmundo A. de Souza c Silva (Universidade Federal d o Rio de Janeiro)
Paul Barford (Unh•crsity of Wisconsin)
Philippe Dccuctos (Eur!!com lnstitute)
Bobby Bhauacharjee (U niversit)' o f Maryland)
Chris lOphe Diot (Thomson Research)
Stcvc n Bcllovin (Columbia Univcrsity)
Pritllllla Dhu nghcl ( Polytcchnic lnslitutc of NYU)
Pravin
Bh~gwat
(Wibhu)
Supr.uik Bh:utaehuryya (previo usly at Sprint)
Bram Cohen (Bi tTorrcnt. Inc.)
Míchalis F::~ lo utsos (U niverslty of Callforni:J m Rivcrsidc)
Erns t Biersack (Eurécom lnstitute)
\Vu-chi Fcng (O rcgo n Graduatc lns titutc)
Shahicl Bokhari (U rtivcrsi t)' of Engineering & Tcehnology. Lnhorc)
Sally Floyd (ICIR, University of Berkelcy)
Jean Bolo t (Sprint)
Paul Fr:~ncis (Max Planck lnstitutc)
Daniel Brus htC}'tt (ex-aluno da Univcrsity of Pennsylvanh•) Kcn Calvert (U mversity o f Kentucky)
C::~líforn ia
ar
lixin Gao (Universi ty o f Massac husetts)
JJ Garcia-Luna-Ace\•es (Unwc rsity of California at Santa Cruz) Mario Geria (Univcrsity o f California at Los Angcles)
E\·andro Cantu (Univcrs•dacle Federal d e S.1111a Catarina)
Oav1d Goodman (Polytechmc Uni,•ershy)
Jeff Case (SNMP Research lnternational)
Tim Griffin (Cambridge Um versily)
jeff Chaltas (Sprint)
Max Hailperin (G ustavus Adolphus College)
bow4tto4ic~ Agrodedmentos
XXIII
Gostaríamos de agradecer a Honggang Zhang, da Suffolk Univcrsity, por revisar e aperfeiçoar alguns problemas presentes nesta ediç.lo. Queremos agradecer, também. a toda a equ•pc da Addison-Wesley- em panicular. a Michael Hirsch, Marilyn Uoyd c Stcphanie Sellinge r - que fizeram um trabalho realmente notável nesta quinta cdiç.lo (c que teve de suportar dois autores muito complicados c quase sempre atrasados). Agmdecemos aos artistas gráficos J anet Theurer e Patrice Rossi Calkin, pelo trnbalho que executarnm nas figuras deste livro, c a esbitt Graphics. i"larry Oruding e Rose Kc:rnan, pelo maravilhoso trabalho de produção desta ediç:lo. Finalmente. um agradecimento muito especial a Susan Hartm;m, noss.1 antiga editora na Addison-Wcsley, c, mais uma vez, a Michael I hrsch, nosso editor na Addison-Wcsler. Este livro n
Nota do Revisor Técnico Mais uma
vez foi com imcns."' satisfaç;\o que pude apreciar c rever a
tradu~~\o
do material apresentado em
Recles (Jc comrmtculorcs r ct Internet: unw ctbordogcm IOJ>-
wu
bowotto4ico.
bow4tto4ic~
1 Redes de computadores e a Internet
Internet de hoje~ prov:wclmemc o maior sistema de engenharia já criado pela hum:midadc, com centenas de compmadorcs conectados. lmks de comunicação e commadores: centen:lS de milhares de usuários que se conectam esporadicamente por meio de telefones celulares c PDAs; c dtsposilivos como sensores, webc
A
O primeiro caprtulo apresenta um panorama de redes de comp~ttadorcs c da Internet. Nosso objetivo é pi n1:1r um quadro amplo que nos permita ve r a norcsta por entre as árvores. Cobriremos u m terr eno bastante extenso neste capitulo de introduç;lo c d iscutiremos várias peças de uma rede ele computadores, sem perder de vista O CJ Ltad i'O geral. Este capitulo Jan~~l as rund ações para O resta nte do livrO. O panora ma geral de redes de computadores que apresentaremos neste c:lpltlllo scn1 estru turado como segue. Após aprcsentnrmos breve mente a termino logia e os cotwcilos fund:~ mc lllOliS, ex~mt ilmrcmos p rimei rame nte os componentes básicos de hardware c sortwarc que compõem uma rede. Part iremos da periferia dn rede e exami nare mos os sistemas fi nais e aplicações de rede executados nela. Considcmrcmos os scn•iços de transporte rornecidos a essas aplicações. Em seguida exploraremos o cerne de uma rede de computadores examinando os enlaces c comutadores que transportam dad os. bem como as redes de acesso c meios flsicos que conectam sistemas fina•s ao nucleo da rede. Aprenderemos que a Internet é u ma rede de redes c observaremos como ess:\S redes se conectam umas com as outras. Após concluirmos essa revisão sobre a periferia c o mlclco de uma rede de computadores. adotaremos uma visão matS ampla c mais abstrata na segunda metade deste capnulo. Examinaremos as causas do atraso de transferênCia de dados c das perdas em uma rede de computadores c forneceremos modelos quantllauvos stmplcs para o atraso fim a fim . modelos que le,·a m em con ta atrasos de transrniss.lo. propagaç.lo c fi la. Depois apresentaremos
bow4tto4ic~ Redes de tom putod ores e o Interne~1-------------------------
alguns princípios fundamentais de arquitetura em redes de computadores. a saber: protocolos em camadas c modelos de scrvaço. Aprenderemos. tamtxm. que as redes de computadores s:lo vulncrá\'cis a diferentes tipos de ameaças: analisaremos algumas dessas ameaças e como a rede de computadores pode se tornar mais segura. Finalmente, encerraremos este capítulo com um breve histórico da computação em rede.
1.1
Oque é a Internet?
Neste lavro, usamos a Internet pública, uma rede de computadores cspccrnca, como o \'Caculo pnncipal para discutir ~lS redes de comptuadores c sellS protocolos. Mas o que é a Internet? Há di\·ersas maneiras de responder a essa qucsti\o. Primeiro, podemos descrever detalhadamente os aspectos principais da Internet, ou seja, os componentes de software c hardware básicos que a formam. Segundo, podemos dcscre,•cr a Internet em termos de uma infraestrutura ele redes que fornece ser\'iços para aplkaçõcs distribuídas. Iniciaremos com a descriçâo dos componentes, lllilizando a Figura 1.1 como ilustração para a nossa díscussâo.
1.1 .1 Uma descrição dos componentes da rede A Lntcrnct é uma rede de computadores que interconecta mjlharcs de dispositivos computacionais ao redor
do mundo. Há pouco tempo, esses disposili"os er-4\m basicamente computadores de mesa. estações de trabalho Urmx, c os assim chamados servidores que armazenam e trllnsmitcm inforrmt~·õcs, como p:lginas da Web e mensagens de c-ma iI. 1 o entanto, cada •cz mais sistemas finais modernos dn Internet. como TVs, laptops, consoles para jogos. telefones celulares, webcams, automóveis, dispositivos de Sensoriamento ambiental, quadros de imagens, e sistemas internos tlétricos c de segurança. estão sendo conectados i\ rede. Realmeme, o termo rl'dt: dl' cornputatl(li.:S está começando a soar um tamo desatualizado, dados os muitos equapamcntos n:\o tradicionais que csuio sendo ligados .I Internet. No jargão da Internet, todos esses cquip.tmentos são dcnommados hospedeiros ou sistemas Onai<;. Em julho de 2008. havia aproximadamente 600 milhões de sistemas finais ligados :'1 Internet IISC, 20091, sem contar os telefones cclulares,laptops c outros daspositivos que s:lo conectados à rede de maneira intermitente. Sistemas finaas s.1o conectados entre si por enlaces (links) de comunicaç•lo c comutadores de pacotes. Na Scç;lo 1.2. veremos que há muitos tipos de enlaces de comunicaçl\0. que sJo constitufdos de diferentes tipos de meios físicos. entre eles cabos coaxiais, fios de cobre, Obras óticas c ondas de rádio. Enlaces dlrercntes podem Lransmuir dados em taxas dHeremcs. sendo a ta;'
bow4tto4ic~ Capítulo 1