Sistemas_distribuidos Cap 1

download Sistemas_distribuidos Cap 1

of 96

Transcript of Sistemas_distribuidos Cap 1

  • 5/13/2018 Sistemas_distribuidos Cap 1

    1/96

  • 5/13/2018 Sistemas_distribuidos Cap 1

    2/96

    racterizacao deL.._ .. . .. . 1."'mas Distribuidos

    :/A"I!P,''',C;"'

    1 .1 l nt ro d uc a o1 . 2 E x emp lo s d e s is t ema s d i s tr ib u id o s1 .3 C o m pa rt il ha m en to d e r ec ur so s e a w e b1 .4 D es afio s1 .5 R esum o

    Um sistema distribuido e aquele no qual os componentes local izados em com-putadores inter ligados em rede secomunicam e coardenam suas a~6es ape-nas passando mensa gens. Essadefinicao leva asseguintes caracterist icas dos sis-temas distribuidos: c onco r r enc i a de component es, f al ta de um re l6gi o gl oba l efalhas de componentes independentes.

    Daremos tres exemplos de sistemas distribuldos: a Interne t; uma intranet, que e uma par te da Interne t gerenciada par uma organ iza-

  • 5/13/2018 Sistemas_distribuidos Cap 1

    3/96

    16 S I5 nM A S D IS T RI BU I DO S , C O N C EI TO S PROJ ETO

    1.1 IntroducaoAs r ed es de compu ta do re s e st iio p or t od a pa rt e. A I nt er ne t e uma de l as , a ss im como a s mu ita s re de sdas qua is e la e cornposta, Rcdes de telefones rnoveis, r edes corpo ra tivas, r edes de fab ri ca , r edes emcampus, redes dornesticas, redes dentro de vefculos, todas elas, tanto separadamente como em conjun-to, compart ilham as carac te rf st icas bas icas que as tornam assun tos relevan te s para estudo sob 0 titulosistemas distribufdos. Neste Iivro, queremos explicar as caractcrfsticas des computadores interligadosem rede que a fe tam osp rojet is ta s e desenvo lvedorcs de s is tema e apresen ta r os p rinc ipai s conce itos erecnicas que foram criadas para a juda r nas tarefas de p ro je to c imp le rnen tacj ln de s is temas que os te rnpor base.

    Def in imos um s is tema d is tr ibufdo como sendo aquele no qua l os cornponen te s de hardware Ollsof tware, local izados em compu tado res inter ligados em rede, sc comun icam e coordenam suas ayoesape na s en vi an do mens ag ens e nt re si , Es sa de fi ni ca o simp le s ab ra ng e t od a a gama de si stemas nosqua is compu tado res inter ligados em rede podem ser d is tr ibufdos de manei ra u ti l,

    Os compu tado res conec tados por meio de uma rede podem estar separados por qua lque r d is tan-c ia . E le s podem estar em con tinentes separados , no mesmo predio au na rnesma sala. Nossa def in icaode sistemas distr ibufdos tern as seguintes conscqtlencias importantes:

    Concorrencin; em uma rede de cornputadores , a execucao COil cor rente de p rogram as e a nor -ma. Pos so f az cr meu t ra ba lh o em meu computador, enquanto voce faz 0 seu em sua maquina ,compart ilhando recur sos como pag inas web ou a rquivos, quando necessa rio, A capae idade dos is tema de man ipular r ecur sos eompart ilhados pode SCI arnpliada pela adicao de rnais recursos( po r ex emp lo , e omput ad or es ) n a re de , Vamo s de sc reve r como e ss a ca pac idad e e xt ra p od e se rd is tr ibufda em rnu itos pon tos de manei ra u ti l, A coordenacao de p rogram as em execucao coneo r-r en te e que eompart ilham recur sos tambem cum assun to impor tante e recor rente.lnexisli!ncia de rel6gio global: quando os programas precisarn coopcrar, eles coordenam suasacoes trocando mensagcns.'A coordenacao frcqiientementc depende de urna nocao cornparti lhadado tempo em que as acces dos p rogram as oeo rrem . Ent re tanto, ver if ica- se que exi st em I imitespara a p reci sao com a qua l oscomputadores podern s incron izar seus relog ios em uma rede _ naoexi st e uma noyao g loba l i in ica do tempo cor re to . Essa e l ima conseql ienc ia d ir et a do fato de quea tinica comun icayao se da:por meio do env io de mensagens em l ima rede. Exemplos desses p ro -b lemas de s incron izacgo e suas solucoes ser fio descr itos no Cap itulo I I.Falhas independentes: to dos os si stemas d e comput ador pod em f al ha r e e responsabilidadc dosprojetistas de sistema pensar nas conseqtlencias das possfveis falhas. Nos sistemas distr ibufdos,a s falhas sao d iferen te s. Falhas na rede resul tam no iso lamento dos compu tado res que est fio co-ne ct ad os a e la , ma s is so na o s ig ni fi ca que e1e s pa ra rn de f un ci on ar . Na ve rd ade , o s p rogr am asneles exi st en te s t alvez nao consigam detec ta r sea rede falhou ou se to rnou demas iadamente len ta .Ana logamente, a falha de u rn compu tado r ou 0 t ermino inesperado de um program a em algumJugal ' no sistema (um colapso no sistema) nao e imediatamente percebida pel osoutros componen-tes com os quais ele se cornunica. Cada cornponente do sistema pode falhar independentemente,deixando os outros ainda em funeionamento. As consequencias dessa caracterfstica dos sistemasdistr ibufdos serao urn terna recorrente por todo 0 ivro.A motivayao para consrruir e usar sistemas distr ibufdos e proveniente do desejo de compartllhar

    recursos. 0 terrno "recurso" c bastante abstrato, mas caracteriza bern 0con junto de coi sa s que podemser compart iIhadas de manei ra u ti ! em urn s is tema decomputadores inter ligados em rede. E le abrangedesde componentes de hardware, como d iscos e impressoras , a te ent idades def in idas pelo sof tware,c omo ar qu iv os , ba nco s de d ad os e ob jet os de da dos d e to do s os t ip os . I ss o in cl ui 0 fluxo de quadrosd e VId eo pr ov en ie nt e de uma camer a d e vi de o di git al o u a co ne xa o d e au di o q ue uma ch amada detelefone movel representa,

    o objet ivo des re cap itulo e t ransmi ti r uma v isao c la ra da natureza dos s is temas d is tr ibufdos e dosdesaf io s que devem ser enf rentados para garan ti r que e le s sejam bem-suced idos . A Seyno 1 .2 forneceal guns e xempl os impor rant es de s is temas di st rib uf dos , os c ompone nt es a pa rt ir d os q ua is el es s aoconst ru fdos e seus objet ivos . A Secao 1 .3 exp lo ra 0 pro je to de s is temas com compart ilhamento de

    CAP[TULO 1 C AR ACT E R IZ A ~ AO D E S I S TE M A S D I ST R I BU lo o s 17

    d W IdWide Web A Se ca o I 4 de sc re ve os p ri nci pa is de sa fi os cn fr en tado s pe -recursos no contexto a or 1 " . . I bT t dlos projetistas de sistemas distr ibufdos: heter~geneidade, slste~as. abcrtos, seguranca, esca a 1 l( a e,tratamento de falhas, concorrencia e a necessidade de transparencia,

    1. 2 E x emp lo s d e s is tem a s d is tr ib u id o sNossos exemplos sao baseados em redes de compu tado res que nos sao famil ia re~ e a t~?lamen~e ~i-fundidas: a Interne t, int rane ts e a emergen te tecno logia das redes ~aseadas ~m ~ISPOSILIVOS movers.Eles foram planejados de modo a exemplificar a ampla gama de SerVly~S~ aplicacoes suportadas pclasredes de compu tado res e para inici ar a d iscussao sob re osp rob lemas tec rucos que fundamentam a suaimplementacao.

    1.2.1 A InternetA Internet e um con junto de redes de cornputadores , de mui to s t ipos d iferen te s, int er ligadas. A ~igu-ra I 1 i l us tr a um a parte tipica da In ter net . O s pr og ramas qu e es tao e ~ ex ec uc ao ?o s : omput a o r~

    . ela intera em enviando rn e nsagen s a t ra v es de um meio de comurucacao co~um.~~~j:~~a~~sc~nstruyao d~s rnecanisrnos de comunicacao cia Internet (os p~otocolos [nter~~t) sao un~are al iza ca o te cn ic a impo rt ant c, pe rmit indo q ue um p ro gr am a em exe cu ca o em qual quci uga r e nv iemensagens para program as em qualquer outro lugar, , . .

    A Internet c um s is tema di str ibui do mu it o gr an de . El a pe rmi te que o~ u~uano s, o~de q~el qu~. f de servicos como a Wor ld Wide Web , e -mai l e t ransferencia de arqutvos, a vel-estejam m.;am uso " .. . It' b .todade a ; ve ze s aw eb e c on fu nd id a como s en do a I nte rn et . 0 co nj un to d e s er vi ens da n~e rne: .~ . CI

    - e lc 'pode sel .'~mpl iado pela adiyao de compu tado res servido re s e novos t ipos de servI~~s. _ 19~a1 1 mos tr a ur n co nj un to de i nt ra ne ts - s ub -r ed es ope ra da s p or em~ re sa s e .o ut ras ~ rg al l1z~y~es . s~ovedores de services d e In te rn et (I SP s, do ingles Internet Service Providers) sao el~~lcs~S ~u.ef o rn ec em a tr av es de modem de l inha d iscada ou out ros tipos de conexoes, 0 acesso ~ usuanos m~lvl-

    duais, ou ~rganizar;oes, a Interne t. Esse acesso permi te qu~ as usuririos utili.zem os d~ferentes s~~~r~~disponibilizados pela Internet. Os provedores fornecem ainda al~uns servicos locals, ~o~~ e. 'hospedagem depaginas web . As int rane ts sao inter ligadas por meio de backbones. Urn ac onee um

    Computador de mesa: ~Servidor: iZ 1

    E nla ce d e re de : ~

    F ig ur a ' .1 Uma pa rt e t lp lc a d a I nt ern et .

  • 5/13/2018 Sistemas_distribuidos Cap 1

    4/96

    18 S IS T E M A S D I S TR I BU l oO S , C O N C E IT O S E P R O JE T O

    enlace de rede com urna alta capacidade de transmissao, empregando conexoes via sarelite, cabos def ibra dptica ou outros meios ffsicos de transmissao quepossuam uma grande largura de banda.

    Uma serie de services de multimfdia estao disponfveis na internet, permitindo aos usuaries aces-sarem dados de audio e vfdeo, 0 que inelui rmisica, radio, canais deTV e a manter conferencias viatelefone e vfdeo. Atualmente, a capacidade da Internet para tratar os requisitos especiais da comu-nicacao de da~os multimfdia e bastante lirnitada, pois ela nao fornece os recursos necessarios parareservar capacidade de rede para quefluxes dedados individuals sejam enviados e recebidos deformaadequada a dar uma boa qualidade de service. 0 Capitulo 17discute as nccessidades dos sistemasmultimfdia distribufdos,A implementacao daInternet e dos services queela suporta tem acarretado 0desenvolvimento de

    soluc;:.5esratica~ para muitos problemas dos sistemas distribuidos (incluindo a maior parte daquelesdefim~o~ na_Sec;:ao .4).Vamos destacar essas solucoes por todo 0 livro, apontando suaabrangencia esuas hmltac;:oes,onde for apropriado.

    1.2.2 IntranetsUma.intranet e uma parte da Internet adrninistrada separadarnente, cujo limite pode ser configuradop~r~irnpor plan~s de seguranca locais. A Figura 1.2 mostra uma Intranet tfpica, Ela e composta devanas redes locals (Loca l Are a Network s - LANs) interligadas por conexoes de backbone. A confi-guracao de.rede ~euma Intranet em particular e de responsabilidade da organizacao que a administrae pode vartar muito - desde uma LAN em urn tinico site ate um conjunto de LANs interconectadaspertcncentes as filiais deuma empresa ou Dutraorganizacao, em diferentes pafses,Uma Intranet e conectada a Internet por intcrmedio de urnroteador, 0 qual permite aos usuariesde dentro dessaIntranet utilizarern services que sao providos em outro lugar, como acesso a servido-res web ou de correio eletronico. Ela tarnbem permite que os usuaries de outras intranets acessem osservi~os que fornece. Muitas organizacoes precisam proteger seus proprios services contra uso naoauto~lzado.possivelmente por usuaries externosmal-intencionados. Por exemplo, uma empresa nao

    deseJ.aque informacoes sigilosas estejam acessfveis para usuaries de organizac;:5esconcorrcntes, e 11111hospital nao deseja que dados sigilosos dos pacientes sejam revelados, As empresas tambem queremse ~roteger de p~ogramasprejudiciais, como as virus queentram e atacam os cornputadores que estaona mtranet, pnssivelrnente, destruindo dados valiosos.

    o u t ra s p o r c o e sda in ternet

    Figura 1.2 Uma intranet tfpica.

    C A P I T U L O 1 C A R A C T E R I Z A ( A o DE S I S T EM A S D I S T R IB u l o o s 19

    A funcao de umfirewall e proteger umaintranet, impedindo a entrada au saida de mensagens naoautorizadas, Umfirewall e basicamente cornposto de mecanismos que realizam a filtragem de mensa-gens recebidas e enviadas, de acordo, par cxemplo, com sua origem ou destino, Umfir~wall poderia,por exernplo, na Intranet queprotege, permitir apenas a passagem das mensagens relacionadas a cor-reio eletronico e ao acesso ao servidor web.Algumas organizacoes nemquerem concctar suas redes internas naInternet, Por exemplo, a pelf-ciae outras agencias de seguranc;:ae do poder executivoprovavelmente podem terpelomenos algumasredes internas isoladas do mundo exterior. Algumas organizacces militares desconectam suas redesinternas da Internet em tempos de guerra. Mas, rnesrno essas organizacoes desejam tirar proveito daenorme variedade de aplicacdes e de softwares queempregam protocolos decomunicacao da Internet.A solucao normalmente adotada por tais organizacoes e implementar uma Intranet como a dcscritaanteriorrnente, massern conexfies com a Internet. TalIntranet pode dispensar 0 lISO de umfirewall; narealidade, dizendo de outra maneira, elaja possui utti firewall bastante eficaz: a ausencia de qualquerconexao ffsica com a InternetOs principais problemas quesurgcm no projelOde componentes para usa em intranets sao:

    Services de arquivo sao necessaries para perrnitir queos usuaries compartilhcm dados: 0seuprojeto sera discutido no Capitulo 8. Osfirewalls tendem a impedir 0acesso lcgftimo aosservices - quando 0compartilhamento derecursos entre usuaries internos e externos e necessario, os firewalis devem ser complcmenta-doscom 0usa de outros mecanismos de seguranca: issosera discutido no Capitulo 7. 0 custo da insta lacao desoftware e suporte e uma questao importante. Esses custos podemser reduzidos com 0 uso de arquiteturas de sistema, como cornputadores de rede e clientes"leves", descritos no Capftulo 2.

    1 .2 .3 C o mp uta ca o m o ve l e u b iq uaOs avances tecnologicos na miniaturizacao de dispositivos e interligacao em rede sem fiotern levadocada vczmais a integracao deequipamentos de computacao pequenos e portateis com sistemas distri-bufdos. Esses equipamentos incluem:

    Computadores notebook Aparelhos portateis, incluindo assistentes digitais pessoais (PDAs), telefones moveis, pagers,cameras de vfdeo e digitais Aparelhos acoplados aocorpo, como relogios depulso inteligentes com funcionalidade seme-lhante a deum PDA

    Dispositivos incorporados em aparelhos, como maquinas de lavar, aparelhos de som de altafidelidade, carros, geladeiras, etc.A portabilidade de muitos desses dispositivos, junto com sua capacidade de se conectar conve-nientemente com redes em diferentes lugares, tornam a compurac ii o nu i ve l possfvel, A computacfiomovel, tambern chamada de computaciio nomade [Kleinrock 1997], e a execucao de tarefas de com-putacao, enquanto 0 usuario esta se deslocando de urnlugar a outro 011 visitando lugares difcrcntes de

    sell ambiente usual. Na cornputacao movel, os usuaries qllc estiiolonge de suas intranets "de base" (aIntranet do trabalho ou de sua residencia) podem acessar recursos por intermedio dos equipamentosquecarregam consigo. Eles podem continual' a acessar a Internet, os recursos em sua Intranet de basee, cada vez mais, existem condicoes para que os usuaries utilizem recursos como impressoras, queestao convenientemente proxirnos, enquanto transitam. Esta ultima possibilidade tarnbem e conhecidacomo computaciio com reconhecimento de localizacao ou com reconhecimento de contexto.A computaciio ubiqua [Weiser 1993]. tambem denominada de computaciio pervasiva, e a utili-zacao de varies dispositivos computacionais pequenos e baratos, que estao presentes nos ambientesffsicos dos usuaries, inc1uindo suas casas, escritorios e ate na rua. 0 termo "pervasive" se destina asugerir que pequenos equipamentos de computacao finalmente se tornarao tao entranhados nos ob-jetos diaries que mal serao notados. Isto e, seu comportamento computacional sera transparente e

  • 5/13/2018 Sistemas_distribuidos Cap 1

    5/96

    20 S I ST E M A S D I S TR I B UI D O S , C O N C E IT O S E P R O JE T O C A P I T U L O 1 C A R A C T E RI Z A

  • 5/13/2018 Sistemas_distribuidos Cap 1

    6/96

    22 S I ST E M A S D I S TR I B U fD O S , C O N C E IT O S E P R O JE T O

    Mui tos s is temas d is tr ibufdos (mas cer tamente nao todos ) podem ser total rncn te const ru fdos naforma de c li en te s e de servido re s interag indo . A Wor ld Wide Web , 0e-mail c impressoras interligadasem rede sao exemplos que se encaixarn nesse modelo. D iscu ti re rnos a lt erna tivas para os s is temasc1iente-servidor no Capftulo 2.

    Um navegador web em execucao e um excmpl o de c 1i en te . 0 nav eg ad or w eb se comun ic a c omum servido r web para sol ic it ar pag inas web . Agora , examina remos a web com mais detalhes,

    1.3,1 A World WideWebA World Wide Web [www.w3.org r, Berners-Lee 1991] e urn s is tema em evo lucao para a pub li cacao epara 0acesso a recursos e services pela Internet. POI'meio de navegadores web (bmwsers) comumented isponfve is , a s usuar ie s recuperam e veem docurnentos de mui to s t ipos , ouvem f luxos de aud io , a ss is -te rn a f luxes de v fdeo e interagem com um vas to con junto de services,

    A web n as ce u no c en tr o e ur op eu de pe sq ui sa nuc lea r (CERN) , na Su fc a, em 1989 , c omo urnvefculo para troca de documentos entre uma comunidade de ffsicos conectados pela Internet [Berners-Lee 1999] . Uma carac te rf st ica impor tantc da web c : que e la fornece uma est ru tu ra de hipertexto entreos documcntos que arrnazena, refletindo a necessidade dos usuaries de organizar sew; conhecimentos.Isso significa que os documentos content links (ou hyperiinks) - referenclas para outros docurnenros erecur sos que tambern estao a rmazenados naweb.B fundamental para a exper ienc ia do usuar io da web que , ao cncon trar determinada imagem outcx to den tro de u rn documen to , i sso seja f reqi ientcrnente acompanhado de links p ar a do cumen t o s eoutros recursos relacionados. A estrutura de links pode ser a rb it ra ri amen te complexa e 0 conjunto derecursos que podem ser adicionados e i limi tado - a " te ia" (web ) de links e rea lmen tc mundial . Bush[1945] imaginou est ru tu ra s de h iper texto M mais de 50 anos; foi com 0 desenvolvimento da Internetque essa ide ia pode se man ifes ta r em escala mundial ,

    A web e um sistema aberto: e la pode ser a rnpl iada e imp lementada de novas manei ra s, sern per -turba r a funcional idade cxi st en te (ve ja a Sec ito 1 .4 .2 ). A ope racao da web e b as ead a em pa dr oe s decomun icacao e de documcn tos l iv remente pub li cados, Por cxe rnplo, exi st ern mui to s t ipos de navcga-dores , em mui to s casos , imp lementados em var ia s p la ta fo rmas ; e exi st em rnu it as imp le rnen tacoes deservido re s web . Qua lque r navegador pode recuperar r ecur sos de qua lque r servido r des de que ambosu ti li ze rn as mesmos pad roes em suas imp lementacoes, em out ros termos, nao impor ta como e le s saoimplemcntados mas sirn a que elcs implcmentam, Os usuar ie s t em acesso a navegadores na maior iados equ ipamen tos que u ti li zam, desde tel efones movei s a te compu tado res de mesa.

    A web e ab er ta no qu e di z re sp ei to ao s ti po s d e re cu rs os qu e ne la pod em se r p ub li ca do s c com-p ar ti lha dos , Em sua f orma mai s simpl es, um r ecu rs o da web e uma p agi na, au a lg um out re ti po deconteudo, qu e po ss a se r a rma ze na do em l im ar qu ivo e a pr es en ta do p ar a 0 usuario, como arquivosde p rogram a , a rquivos de mfd ia e documen tos em Pos tScr ip t ou Por table Documen t Forma t (pdf),S e a lguem i nv en ta r, d ig amo s, u rn n ovo f ormat e d e armaz cn ament o de imag em, en ta o a s image nsque tenham esse forma to poderao ser pub li cadas na web imediatamen te . Os usuaries necessitarnde mei os p ar a Ve l' i rn age ns n es se no vo f ormat o, mas a s n av ega do re s sa o pr oj et ad os de mane ir a aaco rncdar nova funcional idade de apresen tacao de con te tido , na forma de apl icat ivos "auxi li ar es" e"plug-ins".

    ~ ~eb j a f oi al er n de ss es re cu rs os d e d ad os s imp le s, e ho je a br an ge s er vi ces como a aqu is ica oe le tromca de bens. E la tem evo lu fdo sem rnuda r sua a rqui te tu ra bas ica. A web e baseada em t re s com-ponentes tecnol6gicos padrao principals;

    HTML (HyperText Markup Language) que e uma linguagem para especificar 0 conteiido eoleiau te de pag inas de forma que e la s possam ser exibidas pelos navegadores web .

    URLs (Uniform Resource Locators), que ident if icam as documen tos e out ro s recur sos anna-zenados como par te da web . 0 Cap itulo 9 d iscu ti ra out ra s for rnas de ident if icadores de recur -sos da web .

    Uma arqui te tu ra de s is tema c li en te -servido r, com reg ras pad rao para interacao (0 protocol aHTTP - HyperIext Transfer Protocol), por meio das qua is os navegadores e out ro s c li en te sbuscam documen tos e out ro s recur sos dos servido re s web . A Figura 1 .4 mos tr a a lguns nave-

    C A P i T U L O 1 CARACTERIZA{Ao D E S I S UM A S D I ST R IB U ID O S

    ..h t tp: / /www.google.com/search?q=k indberg tr.......JWw.goog/e.com D J~ ...~S e r vi d or e s w e b Navegadores-0. .h t tp: / /www.cdk4.net ..www.cdk4.net Q

    www.w3c .org O r - - DS istema de arquivos _ - ' ' / ' , , , ..ht tp: / /www.w3c .orgfProtocols fAc t i v i ty .html# int ro . .de www.w3c .org _' - P rotocdos " ,

    -,,' /_ ,_ '_ '__A_c t!v {ty_.~ 0'!1 z :Figura 1 .4 Servido re s e navegadores web .

    gadores rea li zando ped idos para servido re s web . B uma caracterfstica importante 0 fato dosusu ar ies po de rem l oca liz ar e ge re nc ia r s eu s pr op ri os s er vi do res w eb em qua lquc r par te daInternet.

    D iscu ti remos agora cada um desses componentes e , ao fazermos i sso, exp li ca rcmos 0 funciona-men to dos navegadores e servido re s web quando urn usuar io busca pag inas web e c li ca nos links nelasexistentes.HTML 0 A HyperText Markup Language [www.w3.org II] 6 usada para especificar 0 t ex to e as ima-gens que compoem 0 co nt eu do de uma p ag in a w eb e p ar a es pe ci fi ca r como e le s s ao d is po st os e fo r-matados para apresen tacao ao usuar io . Uma pag ina web con tem i tens est ru tu rados como cabecalhos,paragrafos, tabelas e imagens. A HTML tambem e usada para especificar links e os recur sos que cstaoassoci ados a eles,

    Os usuar ie s p roduzem c6d igo HTML manua l men te , a tr aves de l im edi to r de tex tos pad rao, Oll uti-l izando um editor wysiwyg(whatyou see is what you get) com reconhecimento deHTML, que gem c6-d igo HTML a par ti r deu rn lei au te c ri ado g ra fi camente, Urn tex to em HTML tfp ico apa rece a segui r:

    1

    2Welcome to Earth! Visitors may a lso be interested in taking a l ook at the 3Moon. 4 5Es se t ex to em HTML e a rmazenado em urn a rquivo local izado em urn lugar onde u rn servido r

    web pod e le -l o ~ di gamos q ue se ja a a rq ui vo n ome ado c omo earth.html gr av ado no d is co lo ca l doproprio servidor web. Urn navcgador recupera 0 con re iido dcsse a rquivo a par ti r de u rn servido r web- nes te caso espec ff ico, u rn servido r em urn compu tado r chamado www.cdkd .ne t . 0 navegador Ie 0con teudo retornado pelo servido r e 0 apresen ta como urn tex to forma tado com as imagcns que 0 COI11 -poe , d ispostos em uma pag ina web na fo rma em que estamos famil ia ri zados ave r. Apenas 0 navegador- e n ao 0 servidor - interpreta 0 t ex to em HTML. Mas 0 servidor informa ao navegador sobre 0 t ipo deconterido que esta retornando, para distingui-Io de, digamos, urn documento em PostScript. 0 servidorpode deduzir 0 t ipo de con te iido a par ti r da extensao de nome de a rquivo .ht rn l,

    Note que asd i re tivas HTML, eonhecidas como tags, sao inc lu fdas ent re s inai s de menor e maior ,c omo em

    . A l inha I do exemplo ident if ica u rn a rquivo con tendo uma imagem de apresen tacao,Seu URL e htfp:!lwww.cdk4.netlwebExamp/eilmagesleal.th.jpg.Aslinhas2e5possuemasdil.etivaspara inici ar e t ermina l' um parag ra fo , r espect ivamen te . As l inhas 3 e 4 con tem 0 t ex to a ser exibido napagina web, no forrnato padrao de paragrafo, .

    A l in ha 4 es pe ci fi ca um link na pag ina web . E le con te rn a palav ra Moon, c ir cundada por duasdiretivas HTML relacionadas e . 0 texto entre essas diretivas e 0 que apa rece no

    23

    http://www.google.com/search?q=kindberghttp://www.google.com/search?q=kindberghttp://www.goog/e.comhttp://..http//www.cdk4.nethttp://www.cdk4.net/http://www.w3c.org/http://www.w3c.org/http://www.cdkd.net./http://www.cdkd.net./http://www.w3c.org/http://www.w3c.org/http://www.cdk4.net/http://..http//www.cdk4.nethttp://www.goog/e.comhttp://www.google.com/search?q=kindberg
  • 5/13/2018 Sistemas_distribuidos Cap 1

    7/96

    r24 S IS T EM A S D IS T RI BU ID O S, ( ON C EI TO S E P R O J E T O CAPiTULO 1 C A RA Cn RI ZA < ;i iD D E S I S TE M AS D IS T RI BU l oo s

    link, quando ele e apresentado na pagina web. POI'padrao, a maioria dos navegadores e configurada demodo a mo st ra r a t ex to de links sublinhado; porianto, 0 que 0 usuario vera nesse paragrafo sera:

    Welcome toEarth! V is itor s may a lso be interes ted in tak ing a look a t the Moon.o navegador g rava a assoc iacao ent re 0 t ex to exibido do link e 0 URL con tido na d irct iva - neste caso:hltp:l/www.cdk4.net/webExample/mooll.htmlQuando 0 usuario c li ca no texto, 0 navegador reeupcra 0 recurso identil icado pelo URL C01Tes-

    pondente e 0 apresenta para 0 usuario, No exemplo, 0 r ecur so esta em urn a rquivo HTML que espec i-f ica uma pag ina web sobre a lua .URLs 0 0 objet ivo de um URL (Uniform Resource Locator) [www.w3.org III] c i dent if icar um re-c ur so , N a verdadc, 0 termo usado em documen tos de a rqui te tu ra da web e URI (Uniform Resourceldentifiers. mas nes te I iv ro 0 te rmo mai s c on he ci do , URL , se ra us ad o qu an do na o h ouv cr du vi daPOSSIVC!. Os navegadores examinam os URLs para acessar os recursos correspondentes. Os URLs saofor?ecidos por_um usuario no memento em qu e e1 e0 d ig it a no navegador web , porem, as situacfiesmars co~uns sao aquelas ~mque 0navegador pesquisu 0URL cor re spondentc quando 0 usuar io c li caem ur n ~l11k, quando s el c ci o na u rn URL de su a l ist a de bookmarks, ou quando 0 navegador b us ca u rnr ecur so incorpo rado em uma pag ina web , como uma imagem.

    Todo URL, em sua forma cornp le ta e absoluta, t em dois componentes de n fvel super io r:esquema: identificador-especifico-do-esquema

    . 0 primeiro com~onente, 0"esquema", dec la ra qua l eo t ipo dessc URL. Os URLs sao obr igadosa lde~tlficar uma ~a~ledade de recursos. Por exemplo, [email protected] identifica 0endereco dee -mai l de um usuar ro : f!p://ftp.downloadlt.com/sojtwa/,e!aProg.exe i dent if ica u rn a rquivo que deveser recuperado com 0 pro toco lo FTP (File Transfer Protocol), em vez do pro toco lo mais comumen teusado , HTTP. Out ros exe rnplos de esquemas sao "nn tp" (usado para espec if icar u rn g rupo de nor fc ia sda Usenet) e " mid" (usado para identificar uma mensagcm de e-mail). .

    A :v eb n ao t em re st ri coes com re la ca o a os t ip os d e r ec ur s os qu e po de us ar pa ra a ce ss o, gr ac; :a saos des lgna~ores de esquema prcsentes nos URLs. Se a lguem inven ta r um novo t ipo de rccur so , pOl'exernplo, widget= t alvez com sel l p ropr io esquema dc enderecamen to para local izar e lementos emuma janela g ra fi c~ e seu p ropr io p ro tocoJo para acessa- lo s - , entao 0 mundo podera comet ;; ar a usa rURLs ~a forma }~Idget: .... E c la ro que os navegadorcs devem ter a capac idade de usa r 0 novo proto-colo Widget, mas [SSOpode ser feito pela adic;:aode urn plug-ill.

    Os URLs com ur n d es ig na dor d e es quema do ti po HTTP sa o mai s c omuns p ar a ac es sa r re cu rs osweb . Urn URL HTTP tem duas tarefas p rinc ipai s a exccu ta r: ident if icar qua l servido r web man tem 0r ecur so e qu~Jdos recur sos esta seudo sol ic it ado a esse servido r. A F igura 1 .4 mos tr a I re s navegadoresfaz~ndo pedidos de recursos, gerenciados pOI'Ires servidores web. 0 navegador que esta rna is acimaesta fazendo U?1aconsulta em um mecanismo de busca, 0navegador do meio sol ic it a a pag ina pad raode um OLlt:OSIt? web. 0na veg ad or que es ta ma is ab ai xo s ol ici ta uma pa gi na web es pe ci fi ca da p orcompleto,_l11clulll~o um nome de caminho relativo para 0 servidor, Os arquivos de detcrminado servi-dor web sao m~ntld~s em uma ou mais subarvo res (di re to rios ) do s is tema de a rquivos desse servido r ccada recurso e identificado por urn nome e urn eaminho relative tpathname) nesse servidor.

    Em geral , o sURLs HTTP sao da seguinte forma :htlp://llol1ledoservidor [:porta] [momedetlaminho] [?consultaJ[ #.fragmellfo]

    - on.de os i t~ns ent re colchetes sao ~pc iona is . Urn URL HTTP completo sempre comeca COIll 0 stringh ttp. l0 seguido de um nome dese rv~dor , exp re~so como t im nome DNS (Domain Name Sys tem) (vejaa.Segao 9.2). 0 no[~e DNS ~o servl~or e , opc iona lmen te , seguido do mimero da por ta em que 0 ser-V idor recebe?s ped ld~s (ve ja 0Capitulo 4) - que, pOI'padrao, e a porta 80. Em se gu id a, a pa re ce u rnnome. d .ec~mll1,ho ~p~[ona l ~o recur so no servido r, Se e le est iver ausen te , entao a pag ina web padraodo servidor sera solicitada. Finalmente, 0URL termina, tarnbem opcionalmente, com urn componented e co nsu lta - por e xempl o, q ua nd o um us ua ri o en vi a e nt ra da s de um fo rmu la ri o, c omo a p ag in a de

    consu lt a de um mecan ismo debusca - c /ou l im ident if icador de f ragmen to , que ident if ica urn compo-nente de lim detenninado reeurso.

    Considere os URLs a seguir:http.t/www.cdkd.nethttp://www.w3.org/Protocols/Activity.htm# intrahttp://www.goog!e.com/search ?qekindbergEles podem ser subdivididos, como segue:

    ~ 1 & W f f e } ! lN _ ~ " ' 4 0 r ~ j t ~ i [ Q ! , " ' ! X p h ~ d d t ? f l i~ z f ! f 3 j~ , :q9 n~u . lf d~ )"F ; ;ag i }; e if t o .www.edk4.net (pndrao) (ncnhuma) (nenhum)www.w3.orgProtocols/Activity.html(nenhuma) intrawww.google.com search q=kindberg (nenhum)

    o prime iro URL des ign a a p a gi n a p a dr a o fornccida por www.cdkd.net. 0 seguinte identifica umfragmen to de um arquivo HTML cujo nome decaminho e Protocois/Activity.H'I'Mi; relative ao servi-dol' www.w3.org. 0 identificador do fragrnento (especificado apos 0caractere # no URL) e intro e urnnavegador procurara esse identificador de fragmento dentro do texto HTML, ap6s tel 'feito 0downloaddo arquivo inteiro. 0t er ce iro URL espec if ica uma consu lt a para u rn mecanisme de busca. 0caminhoident if ica um program a chamado sea rch e 0 string apos 0 caracterc ? codifica um string de consulLafornecido como argumento para esse programa.P u bl i ca n do u m r ec ur so : Embora 11 web tenha u rn modele c la ramente def in ido para acessar u rn re-curso 11 par ti r de sel l URL, os metodos exa tos para pub li cacao de recur sos dependem da implemen-tacao do servidor. 0met odo mai s simpl es d e pub lic ac ao de um rc cu rs o na web e colocar 0 arquivocorrespondentc ern urn diret6rio que 0 servido r web possa acessar , Sabendo 0 nome do servido r, S, elim nome de c ami nh o pa ra 0 arquivo, C. que 0 servidor possa reconhecer, 0 usuario constroi 0 URLcomo hffp://S/C. 0 us ua ri o ca l o ca es se URL em l im link de urn documento ja existente Oll inforrnaesse URL para out ro s usuar ie s de d iver sa s formas, como pOl 'cxemplo, por e -mai l.

    Exi st em cer ta s convencoes de nomc de caminho que os servido re s reconhccem. POI 'cxemplo,ur n nome d e c am in ho c or ne ca ndo com -joe esni, pOl'convencao, em urn subdiretorio public_htm'do dirctorio home do u su ri ri o jo e, Ana logamen te, ur n nome d e c ami nh o qu e te rmin a em um nome ded iretor io , em vez de termina r em um arquivo s imples , convenc iona lmcn le se re fe re a um arquivo nessediretorio, chamado index.html.

    Huang et al. [2000] fornece um modelo para inser ir con te tido na web com mfn ima intervencaohurnana. Isso e particularmente relcvante quando os usuaries precisam extrair conteudo de uma varic-dade de equ ipamen tos, como cameras , para pub li cacao em pag inas web .H T T P 0 0 protocolo HyperText Transfer Protocol Iwww.w3.org IV] def ine as manei ra s pelas qua isos navegadores e out ro s t ipos de c Ii en te interagcm com os servido re s web . 0Capitulo 4 examinara 0protocolo HTTP com rnais detalhes, mas destacarernos aqui suas principais caracterfsticas (restringin-do nossa discussao a recuperacao de referencias em arquivos):

    lnteracoes requisiciio-resposta: 0 protocolo HTTP e do tipo requisicao-resposta. 0cliente cnviauma mensagem de requi si cao para 0 servidor, eontendo 0URL do recurso solicitado. 0servidorpesqu isa 0 nome de carninho e , se e le exi st ir , env ia de vol ta para 0cliente 0 conteiido do arquivoem uma mens ag em d e re sp os ta . C as o c on tr ar io, el e e nvi a d e v ol ta uma r es pos ta d e e rr o, c omo aconhecida 404 Not Found.Tipos de conteiido: os navegadores nao sao necessa ri amen te capazes de man ipular todo t ipo decon teudo. Quando urn navegador faz 1 II lI a requ is icao , e le inc lu i uma l is ta dos t ipos de con te tidoque p re fe re - por exe rnplo, em princ tp io , e le poder ia exibi r i rnagens no forma to GIF , mas nao noformato IPEG. 0servido r podera levar iS50em con ta ao retorna r con teudo para 0 navegador. 0servidor inclui 0 ti po de c on te ii do n a men sa ger n de re sp os ta p ar a qu e 0 n av eg ado r s ai ba c omo

    25

    mailto:[email protected]://http.t/www.cdkd.nethttp://www.goog%21e.com/searchhttp://www.edk4.net/http://www.google.com/http://www.cdkd.net./http://www.w3.org./http://iwww.w3.org/http://iwww.w3.org/http://www.w3.org./http://www.cdkd.net./http://www.google.com/http://www.edk4.net/http://www.goog%21e.com/searchhttp://http.t/www.cdkd.netmailto:[email protected]
  • 5/13/2018 Sistemas_distribuidos Cap 1

    8/96

    26 S I ST E M A S D I S TR I BU [ D O S, C O N C E IT O S E P R O JE T O

    proccssa-Io. Os strings que denotam 0 ti po d e c on tc ti do s ao c hamados de t ipo s MIME e c st aopa dr oni zado s no RFC 1521 [F re ed e Bor ens tei n 19 96] . Por excmpl o, se 0 con teudo far de t ipotext/html, entao um navegador intcrpretara 0 texto como HTML e 0 exibira; SC0 corueudo forde tipo image/GIF,o navcgador 0 r ep re sentara como uma image rn no for rnato GIF ; se for do t ipoapp li ca tion /z ip , entao sao dados compactados no forma te z ip co navegador a tiva ra UI1l aplicativoaux il ia r externo para descompac ta -Io. 0 con junto de acocs a serem execu tadas pelo navegadorpara deterrninado tipo de contciido pode ser configurado e as Icitores devem verificar essas confi-guracoes em scus prriprios navegadores,Um recurso por requisici io: os c li en tes e sp ec if ic am l im r ec ur so po r re qu is ica o HITP. Sc urnapag ina web con tem, d igarnos, nove imagens , 0 navegador emi ti ra l im total de 10 requ is icoesseparadas para obter 0 con te iido intei ro da pag ina. Norma lmen te , o s navegadores fazern var io spedidos concorrentes, para reduzir 0 atraso global para 0 usuario,Controle de acesso simplif icado: por pad rao, qua lque r usuar io com conec tividade de rec Ie paraum s er vi do r web po de ac es sa r q ua lq ue r um de s eus re cu rs os p ubl ica do s, Se f or ne ce ss ar io re s-tringir 0 acesso a determinados recur sos, i sso pode ser fci ro con figu rando 0 servido r de modoa cmi ti r um ped ido de ident if icacao para qua lque r c1ien te que 0 sol ic it e. Entao , 0 usuar io cor -r esponden te p reci sa p rova r que tcm direi to de acessar 0 r ecur so , por exemplo , d ig it ando urnasenha.

    Paginas d l na rn i c as 0 Ale aqu i, descrevemos como os usuar ie s podern pub li ca r pag inas web e out rost ipos dc con teudos na web . Ent re tanto, g rande par te da exper ienc ia dos usuar ie s na web e a interacaocom services, em vez da s imples recuperacao de informacoes , Por exemplo , ao adqui ri r urn i tem emlIm~ loja on-line, o.usuario frequentemcnte preenche umfol"lllllldrio para forneccr sells detalhes pes-?oms o~pa ra especlfi?a.rexatamente 0 ql1~deseja adquirir, Um formulario web e uma pagina contendomstrucoes para 0usuano e e lementos de janela para ent rada de dados , como campos de tex to e caixas~e sele~a? Quando? usuar io env ia 0 formulario (normal mente, clicando sobre urn botao no pr6prioformulano ou prcss ionando a tec la refilm), 0 na ve ga dor en vi a u rn pe di do HTTP pa ra urn servidorweb, con tendo os valores inseridos pelo usuario,Como 0 r esul tado do ped ido depende da ent rada do usuar io , 0 servidor precisa processor a en -tr ad a do us ua ri o. P or ta nt o, 0 URL, o u s eu c ompon ent e in ic ia l, de si gn a ur n programa n o se rv id or cnao l im arquivo . Se os dados de ent rada fornecidos pelo usuar io forem razoave lmcn te cur to s, cntao ,normal mente eles serao enviados como 0componente de consu lt a do URL, apos urn caractere ?, casucon trar io , e le s ser fio env iados a par te . POl 'exemplo , um ped ido con tendo 0 URL a seguir ativa umprogram a chamado search no endereco www.google.com e espccifica 0 string de consulta kindberg:http://www.google.com/search ?q=kindbe rg.

    Ess e p ro gr ama se ar ch pr odu z t ex to em HTML na s af da e 0 usuar io vera u rna l is tagem das pag i-nas que contern a palavra kindberg. (0l ei to r pode inser ir uma consu lt a em seu mecan isme c Ie buscapredileto e observar 0 URL exibido pelo navegador , quando 0 resultado for retornado.) 0 scrvidorreto~na 0 t ex to em HTML gerado pelo p rogram a ,exalamen te como se t ives se s ido recuperado de umarqmvo: Em outras p.alav~as, a diferen

  • 5/13/2018 Sistemas_distribuidos Cap 1

    9/96

    28 S I ST E M A S D I S TR l 8U I D OS , C O N C E IT O S E P R O JE T O 29A P iT U lO 1 C A R AC T ER IZ A

  • 5/13/2018 Sistemas_distribuidos Cap 1

    10/96

    30 S I S T E M A S D I S TR I B U ID O S , C O N C E I T O S E P R O JE T O C A P i T U L O 1 C A R A C T ER I Z A ~i i. O D E S I ST E M A S D I S TR I B U I D O S 31discussoes, assirn como as cspecificacfies dos protocolos (pode-se obter c6pias dos RFCs no endcreco[www.ietf .org]) . Dessa forma, com a publicacao dos protocol os de comunicac;ao Internet, permitiu-sca const rucao de uma var iedade des i st emas e apl ieat ivos para a Interne t, inc lu indo a web . Os RFCs naosao os unicos meios de pub li cacao, Por exemplo , 0CORBA Cpub ii cado por intermedio de uma ser iede documen tos rccnicos, inc lu indo uma espec if lcacao cornp le ta das inter faces de seus service s (vc ja[www.omg.org]).

    Os s is temas p ro je tados a par ti r de pad roes p iibl icos sao cha rnados de sis temas distr ibuidos aber-tos, para reforcar 0 f ato de que e le s sao extensfve is , E le s podem ser ampliados em nfvcl de hardware,pela adic; ao de compu tado res em uma rede, e em nfvel de sof tware, pela int roducao de novos servicesOll pela reirnplementacao dos antigos, permitindo aos programas aplicativos compartilharem recursos,Uma vantagem adicional, freqtlcntemente mencionada para sistemas abcrtos, c sua independenc ia defornecedores individuais.Resumindo:

    g rande de ped idos scm sen ti do, que os usuar ie s ser ie s n iio sao capazes de usa -lo. I sso e chamadode ataque de negaciio de service. De tempos em tempos, surgem a taques de negacao de servicescon tra a lguns servicos c servido re s web bern conhecidos. A tualmente, t ai s a raques sao con trola-dos pela t en ta tiva de cap tu ra r e pun ir a s responsavei s apos a evento, mas essa nao e uma solucaogeral para 0problema. Med idas para se opor a i sso, baseadas em melho ri as no gerencial11en to dasredcs , c st ao sendo desenvo lv idas e i sso sera u rn assun to do Cap itulo 3 .Seguranca de c6digo movel : um c6d igo m6vel p reci sa ser man ipulado com cuidado . Considc rea lgue rn que receba u rn p rograma execu tave l como um anexo de cor re io e lc tron ico: os possive ise fe itos da execucao do program a sao imprevisfveis: por exemplo , pode parecer que e le apenasexiba uma figura interessante, mas, na realidadc, csta acessando recursos Iocais ou, talvcz, fazen-do p ar te d e ur n a taqu e de nc ga cao de s er vi ce . Al guma s medi da s pa ra t or na r s cg ur o um c6d ig omovel serao esbocadas no Cap itulo 7 .

    Os sistemas abertos sao caracterizados pelo Iato de suas principals interfaces serem puhlicadas, Os s is temas d is tr ibufdos abe rtos sao baseados na est ipulac iio de u rn mecan ismo de comun ica-c;aouniformc e em interfaces publicadas para acesso aos rccursos compartilhados.

    Os s is temas d is tr ibufdos abe rtos podem ser const ru fdos a par ti r de hardware e sof tware hetcro-geneo, possivelmente de diferentes fornecedores, Para que urn sistema funcione correramente,a compa tibi1idade de eada componcnte com 0 padriio publicado deve ser cuidadosamentetcstada e vcrificada,

    1.4.4 EscalabilidadeOs s is temas d is tr ibufdos funcionam de forma efe tiva e e fi caz em mui ta s e scalas d if eren tc s, var iandodcsde uma pcquena Int rane t a te a Interne t. Um s is tema c descrito como escaldvel se pennanece e fi -c iente quando haum aumen to s igni fi ca tivo no mimero de recu rsos e no rnimero de usuar ie s. A Interne te um ex emp lo d e l im s is tema di str ibuf do n o q ua l a mime ro d e c omput ad or es e s er vi ce s v em aumen -tando substancialrnente, A Figura 1.5 mostra 0 aumen to no mimero de compu tado res na Interne t du-ran te 24 anos, a te 2003, e a F igura 1 .6 mos tr a 0mimero cada vez maior de cornputadores e servidoresweb duran te os 10anos de h is t6 ri a da web (ve ja [zakon.org] ).o projeto de sistemas distr ibufdos escalaveis apresenta os seguintes desafios:

    Controlar 0 custo dos recursosfisicos: a mcdida que a demanda por l im recur so aumen ta , deve serpossfvel, a urn custo razoavel, ampliar 0 s is tema para a tende- la , POl 'exemplo , a f requencia comque os arquivos sao acessados em uma Intranet provavelmente vai crescer a medida quc 0rnirnerode usuar ie s e dc compu tado res aurnentar , Deve ser possive l adicionar servido rc s de a rquivos deforma a evitar 0 garga lo de desempenho que haver ia caso um t in ico servido r de a rquivos t ivcs scqu e t ra tar t od os os pe di dos de ac es so a a rq ui vo s. Em ge ra l, p ar a qu e ur n si st ema c om n usuariesseja c scalavel , a quant idade de recur sos f fs icos exigida para supor ta -los deve scr no max imo 0(11)- i sto e , p ro por ci on al a fl.Por exemplo , se u rn i in ico servido r de a rquivos pode supor ta r 20 lIS11a-r io s, entao doi s servido re s deverao supor ta r 40 usuar ie s. Embora i sso pareca LIInobjet ivo obv io ,como mos traremos no Cap itulo 8 , nao e necessariamente facil de atingi-Io.Controlar a perdu de desempenho: considcrc 0 gerenciamen to de u rn con junro de dados , cujotamanho e proporc iona l ao mimero de usuar ie s ou recur sos p re sentes no s is tema ; por cxe rnplo, at abela deco rrespondencia ent re a s nomes dedomfnio dos cornputadores e seus enderecos IP man-tidos pelo Domain Name Sys tem (DNS), que e usado principalmente para pesquisar nornes, comowww.amazon.com. Os algoritmos que utilizarn estruturas hierarquicas tern mclhor escalabilidaded o que aq uel es que us am es tru tu ra s 1i ne ar es . Mas, me sr no com as es tr ut ur as h ie ra rq ui ca s, umaumento no tamanho resultara em alguma perda de descmpenho: 0 t empo que leva para acessardados hicrarquicarnente estruturados CO(log 11), onde n e 0 t amanho do con junto de dados , Paraque u rn s is tema seja escalavel , a perda dedesempenho max ima n iio deve ser maier do que i sso.

    1.43 SequrantaMuit os rc cu rs os d e in fo rma ca o q ue s e t or nam di sp on fv ei s e sa o man ti do s em si st em as d is tri bu fd os ,t~m um alto valor int rfnseco para sel ls u suar ie s. Por tanto, sua seguranca e de conside ravc l impor ti in -!era, A .s:_guranc;ade recursos de informacao tem tres componcntes: confidencialidade (proteose contra~xposlc;ao para pessoas nao autorizadas), integridade (protecao contra alteracao ou dano) e disponibi-Iidade (protecao contra interferencia com os meios de acesso aos recursos).

    ~ Secao 1 .1 rnost rou que , embora a Interne t permi ta que um program a ern u rn compu tado r se co-mum que com urn program a em Ol~tI 'Oomputador, indcpendentemente de sua localizacao, exisrern ris-cos de seguranca assoc iados ao l iv re acesso a todos os reeur sos em Ulna In tr anet . Embora urn firewallpossa ser l I~a~o para fonna r uma bar re ir a em torno de uma intranet, restringindo 0 tri ifego que podeentrar ou sair, lSSO niio garante 0 l is a aprop ri ado dos recur sos pclos usuar ie s dedent ro da int rane t, nemo uso aprop ri ado dos rccur sos na In te rnet , que nao sao p ro tegidos pOl'jirewalls.

    Em um sis tema d is tr ibufdo , a s c li en te s env iam ped idos para acessar dados gerenciados por servi -dares, 0 que envolve 0 envio de informacoes em mensagens pOI'uma rede. POl'exemplo:

    1. ~m med ic o p od er ia s ol ici tar ac es so ao s dad os d os p ac ie nt es d e um hos pi tal ou en vi ar ma isinformacoes sobre esses paeientes.2 . No comercio e le tr6n ico enos services banca rios , o s usuar ie s env iam seus mimeros de car taode credito pela Internet.Nesses dois ex~mplos, 0 desaf io e env ia r infor rnacoes s ig ilosas em uma ou mais mensagens , por

    uma r ed e, de rn an er ra s egu ra . Mas a s eg ur an ca na o e apenas uma questao de ocu lt ar 0 conteiido demensagens - e la t ambern envolve saber com cer teza a ident idade do usuar io , ou out ro agente, em nomede quem uma rnensagern foi env iada . No prime iro exemplo , 0 servido r p reci sa saber se 0 usuario erealrnente um mediCO,e, no segundo exemplo, 0 usuar io p reci sa tel 'c er teza da ident idade da loja ou dobanco com 0 qua l e st a t ra tando. 0 segundo desaf io aqu i e identificar corretamente urn usuario ou outroagen.te remoto. Esses d~i~ desafios podem ser resolvidos com 0 uso de tecnicas de eriptografia desen-volvidas para esse p roposl tO . E la s sao amplamente usadas na Interne t e serao d iscu tidas noCapf tu lo 7 .

    Entretanto, dois desafios de seguranca, descritos a seguir, ainda nfioforam totalmente resolvidos:A1a~ue de negaciio = service (Denial of Sen/ice): o co rr e qua nd o um u su ar io i nt er romp e ur nservtco por algurn motive. Isso pode ser conseguido bombardeando 0 service COIll urn mirnero tao

    ~ - P f i .t c j : " i ;; . . . .Dez. de [979Julho de 1989Julho de [999Jan. de 2003

    , ~ ~ : " ~ t ; / i j y p { t X d i l ( ) 1 ' e s . , ~. . . . . '&~r~ld j j restve lJ. .[88 0

    130.000 056.2 I8.000 5.560.866171.638.297 35.424.956

    F ig ur a 1 .5 C o mp ut ad or es ( co m e nd er ec os I P r eg is tr ad os ) n a I nt er ne t.

    uniEVANGELlCA

    http://www.amazon.com./http://www.amazon.com./
  • 5/13/2018 Sistemas_distribuidos Cap 1

    11/96

    r I :' !l B UOT EC A C EN TR A lC A P IT U L O 1 C A R A C T E Rl Z A

  • 5/13/2018 Sistemas_distribuidos Cap 1

    12/96

    34 S I S T E M A S D I S T R IB U l o o s , C O N Cf lT O S E PROJETO C A P I T U LO 1 C A R A C TE R ll A (A o D E S I ST E M A S D I ST R IB U I D O S

    1.4.6 Concorrenda Transparencia de desempenho permite que 0 sistema seja reconfigurado para melhorar 0 desem-penho a medida que as cargas variarn,Transparencia de escaiabilidade permi te que a s is tema e os apl icat ivos se expandam em cscala,sern alterar a estrutura do sistema ou os algoritmos de aplicativo,As du as tr an sp ar en ci as mai s impor ta nt es sa o a de a ee ss o e a d e l ocal iza ca o: su a pr es en ca ou

    ausencia a fe ta mai s for temente a u ti li zacao de recur sos d is tr ibufdos, As vezes , e la s sao refer idas emconjunto como transparencia de rede.

    Como exemplo da transparencia de acesso, considere 0 us a de uma i nte rf ac e g ra fi ca em um s is -tema de arquivo que organiza diretorios e subdiretorios em pastas, 0que 0usuar io enxerga e a mesmacoi sa independente dos a rquivos serem con tidos em uma pas ta local ou remota. Out ro exemplo e umainter face de p rogramacao para a rquivcs que usa as mesmas opc racoes para acessar t an to a rquivos 10-cai s como remotos (ve ja 0Capftulo 8 ). Como cxcmplo de fal ta de t ranspa renc ia de acesso, conside reum si stema di st rib uf do qu e na o pe rmit e ac es sa r ar qu iv os em um eomput ador remot o, a n ao s er qu evoce utilize 0programa ftp para isso.

    Os nomes de r ec ur so na web, i st o e , os URL s, s ao t rans pa re nt es a l ocal izacao , poi s a par te doURL que identifica 0 n ome de um s er vi dor web s e r ef er e a um nome de compu ta do r em um domfni o,em vez de seu endereco JP.En tret an to , o s URLs nao sao t ranspa rentes a mobil idade, poi s se a pag inaweb de a lgue rn mudar para 0 seu novo local dc t raba lho, em urn domfn io d ifercn te , todos as referen -cias (links) nas outras paginas ainda apontarao para a pagina original.

    Em geral , ident if icadores como os URLs, que inc1uem os nomes de domfn io dos eompu tado res,impedem a t ranspa renc ia de rep li cacao. Embora 0DNS pe rr ni ta que um nome de d omfni o se re fi raa var ie s compu tado res, e le e scolhe apenas LImdc le s ao pesqu isar UITI nome. Como LImesquema dereplicacao geralmente precisa acessar todos os computadores partieipantcs, ele precisara acessar cadauma das ent radas de DNS pelo nome.

    Para ilustrar a transparencia de rede, considere 0 usa de um endereco deco rreio e le tron ico, comoFred.Flintstonetirstoneit.com. 0 end er ec o c on si ste em um nome d e us uar io e ur n n ome de domt ni o.Note que , embora os p rogramas deco rreio ace it em nomes deusua rio para usuar ie s locai s, e le s anexamo nome de domfn io local . 0envio de correspondencia para tal usuario nao envolve 0conhecimento desua local izacao f fs ica ou na rede . Nem 0 procedimento de env io deuma mensagem de cor re io dependeda localizacao do destinatario, Assim, 0 correio eletronico, dentro da Internet, oferece tanto transpa-rencia de local izacao como de acesso ( is to e , t ranspa renc ia de rede) ,

    A t ranspa renc ia a falhas tambem pode ser v is ta no con texto do cor re io e le rron ico, que f inal men tec e nt regu e, mesmo quan do os s er vi do re s ou o s e nl ac es de c omuni ca ca o f al ham. As f al ha s s ao ma s-caradas pela t en ta tiva de ret ransmi ti r a s mcnsagens , a te que e la s sejam env iadas com cxi to , mesmoque isso demore varies dias. Geralmente, 0middleware co nve rt c a s f al ha s de r ed es e pr oc es se s cmexcecoes em nfvel de p rogramacao (ve ja uma exp li cacao no Cap itulo 5 ).

    Para ilustrar a transparencia de mobilidade, considere 0caso dos tel efones movei s. Suponha quequem chama e quem e chamado estejam via jando de t rem em diferen te s par te s de um pai s. Conside -ramos 0 t el cfone de quem chama como c1ien te e 0 t el efone de quem foi chamado , como recur so . Osdoi s usuar ie s de tel efone que fazem a I igacao nao estao c ientes da mob i1 idade dos tel efones (0 clienteeo recurso).o uso dos d iferen te s t ipos de t ranspa rcnc ia ocu lt a e t rans fo rma em anonimos os recur sos que naotern relevancia d ir et a para a execucao de uma tarefa por par te deusua ri es e de p rogramadores de apl i-cat ivos . Por exemplo , geralmente e desejavel que recur sos de hardware semelhantes sejam a locadosde manei ra pennu tave l para execu ta r uma tarefa - a iden tidade dopracessado r usado para execu ta r u rnp rocesso geralmente f ica ocu lt a do usuar io e permanece anonima , Confo rme mencionado na Secao1 .2. 3, nem s empr e i ss o p od e s er a ti ng id o. POl ' ex emp lo , um vi aj an te qu e J ig a um no tebo ok n a re delocal de cada escrit6rio visitado, faz uso de services locais, como 0 envio de correio eletr6nico, usandod iferen te s servido re s em cada local . Mesmo den tro de u rn p redio, e norma l p repa ra r u rn documen topara que e le seja impresso em uma determinada impressora con figu rada no s is tema , norma l men te , aque esta mais proxima do usuario,

    Tanto os services como os aplicativos fornecem recurs os que podem ser compartilhados pelos clientesem urn s is tema d is tr ibufdo . Por tanto, exi st e a possibi lidade de que var ie s c li en te s t cn tem acessar u rnrecur so compart ilhado ao mesmo tempo . Par exe rnplo, uma cst ru tu ra de dados que reg is tr e l ances deurn leilao pode ser acessada com muita freqliencia, quando 0prazo final se aproximar.o processo que gerencia l im recur so compart iIhado poder ia ace it ar e t ra ta r um ped ido dc cJien teporvez. Mas essa est ra tegia l im ita 0 desernpenho do t ra tament o d e p ed id os . Po rt an to, os s er vi ce s eaplicativos geralmente pcrmitem que varies pedidos de c1iente sejam processados concorrentcmente,Pa ra t orn ar i ss o mai s c onc ret o, s up onh a q ue c ad a r ec ur so se ja e nca ps ul ad o c omo um obj eto e qu e ascha rnadas sejam execu tadas em diferen te s f luxes de execucao, p rocessos ou threads, concorrentes.Nessa s ituacao e possfve l que var ie s f luxes de execucao estejam s imul taneamen tc den tro de um objetoe , even tualmente, suas ope racoes podem ent ra r em confl ito e p roduzi r r esul tados inconsi st en te s. Parexemplo , se doi s l ances em urn lei lao forem Smi th : $122 e Jones : $111 e asoperacoes cor re sponden-tes fos se rn ent re lacadas sern nenhum con trole, c le s poder iam ser a rmazenados como Smi th : $111 eJones: $122.

    A moral dessa h is t6 ri a e que qua lque r objeto que rep re sente um recur so compart ilhado em umsis tema d is tr ibufdo deve ser responsavel por garan ti r que e le ope re cor re tamente em um amhiente con -cor rente. I sso se apl ica nao apenas aos servido re s, mas tarnbem aos objetos nos apl icat ivos , Por tanto,to do p ro gr amado r q ue impl emen te u rn ob je to qu e na o f oi des tin ad o pa ra uso em um s is tema di str i-bufdo, deve fazer 0 que for necessa rio para garan ti r que em um arnbien te conco rren tc c le nao assumaresultados inconsistentes,

    Para que um objeto man tenha coe renc ia em urn a rnbien te conco rren te , suas ope racoes devem SCIsincronizadas de tal maneira que sew; dados permanecarn eonsistentes. 1S50 pode ser obtido atravesde tecnicas pad rao, como semaforos , que sao d isponfve is na maior ia dos s is temas ope racionai s, Esseassun to e sua extensao para colecoes de objetos compart ilhados d is rr ibufdos, serao d iscu tidos nosCapftulos 6 e 13.

    1.4.7 IransparenciaA transpa renc ia e def in ida como sendo a ocu lt acao , para um usuar io f inal ou para u rn p rogramadorde apl icat ivos , da separacao dos componentes em urn s is tema d is tr ibufdo de modo que 0 sistema sejapercebido como um todo, em vez de uma colecao de componentes independentes , As imp licacoes datransparencia tern grande influencia sobre 0 projcto do software de sistema.oANSA Reference Manual [ANSA [989] eo RM-ODP (Reference Model for Open DistributedProcessing) da International Organiration for Standardization [ISO 1992] identificarn oito formas detransparencia. Parafraseamos as definicoes originais ciaANSA, substituindo transparencia de migra-c;:aopor transparencia de rnobilidade, cujo escopo e mais abrangente:

    Transparencia de acesso permi te que recur sos locai s e remotes sejam acessados com 0 usa deoperacoes identicas.Transparencia de localizaciio permi te que os recu rsos sejam aeessados sem conhecimento c Ie sualocal izacao f fs ica ou na rede (po r excmplo , qua l p redio ou endereco IP) .Transparencia de concorrencia permite que varies processos operem concorrentementc, usandorecursos cornparti lhados sem interferencia entre eles,Transparencia de replicaciio permi te que var ia s ins tanc ia s dos recur sos sejarn usadas para au-men ta r a con fiab il idade e 0 desernpenho , sem conhecimento das rep li ca s por par te dos usuar ie sou dos programadores de aplicativos.Transparencia defalhas permi te a ocu lt acao de falhas, possibi li tando que usuar ie s e p rogramasapl icat ivos concluam suas rarefas , a despe ito da falha de componentes de hardware ou sof tware.Transparencia de mobilidade permi te a mov imen tacao de recur sos e c1ien te s den tro de um s is te -ma, sem afe ta r a ope racao de usuar ie s ou programas .

    35

  • 5/13/2018 Sistemas_distribuidos Cap 1

    13/96

    ~ - - -- - -- - -- - -- - -- - -- - -- - -- -- - -- -- - -- - C~ A ~p ~ lr ~ UL ~ O~ l -- . -= C A~ A A~ C ~T ~ ER ~ IZ ~ A~ ~ A~ O ~D ~ E~ S ~I ~ _E _ M_ M_ D _I _S r _R _ IB U _I _ DO _ S_ ._ 3 _ 7 _6 S I S T E M A S D I S T R I B U l oo s ,C O N C E I T O S E P R O J E T O

    1.5 ResumoOs sistemas distribufdos esrao em toda parte. A Internet pcnnite que usuaries de todo 0 mundo aces-sem seus services onde quer que possam estar. Cada organizacao gereneia uma intranet, a qual forneeeservices locais e services Internet para usuaries locais e remotos. Sistemas distr ibuidos de pequenaescala podem ser construfdos a par ti r de cornputadores moveis e outros dispositivos computacionaisportateis interligados atraves de redes sem fio.

    a compart ilhamento de recur sos eo p rinc ipal f ator de mot ivacao para a const rucao de s is temasd is tr ibufdos. Recur sos como impressoras , a rquivos, pag inas web ou reg is tros de banco de dados saogerenciados por servido re s de t ipo aprop ri ado, pOI 'exemplo, servido re s web gerenciam pag inas web .a s recur sos sao acessados par c1ien te s e spec ff icos , por exemplo ; osc l ientes dos servido re s wcb geral -mente sao cham ados de navegadores.

    A construcao de sistemas distr ibuidos gera muitos desufios:Heterogeneidade: e le s devem ser const ru fdos a par ti r de uma var iedade de redes , s is temas ope -rac iona is , hardware e l inguagens de p rogramacao d iferen te s. Os p ro toco l os de cornunicacl io daInterne t masca ram a d iferenca exi st en te nas redes eo middle ware pode cuidar das outras diferen-cas,Sistemas abertos; os sistemas distr ibufdos devcm ser extensfvcis - 0prime iro passo e pub li ca r a sinterfaces dos componentes, mas a intcgracao de componentes escritos por difercntes programa-dores e um desaf io rea l.Seguranca: a c riptog ra fi a pode ser usada para p roporc iona r p ro tecao adcquada para os recur soscompart ilhados e para man te r informacoes s ig ilosas em seg redo , quando sao t ransmi tidas emmensagens por uma rede. AS a taques de negacao de service a inda sao um problema.Escalabilidade: urn s is tema d is tr ibuido e conside rado escalavel se 0 eus to da adi t; :aode um usu-a rio for u rn valor constan te , em termos dos recur sos que devem ser adicionados . a s a lgor itmosusados para acessar dados compart ilhados devem cvi ta r garga los de desempenho e os dados de-vern ser e st ru tu rados h ie ra rquicamente para se obter os rne lhores t empos de acesso. Os dadosacessados freqiientemente podem ser replicados,Tratamento defalhas: qualquer processo, computador ou rede pode falhar, independenternentedos out ro s. Por tanto, cada componentc p reci sa conhece r a s rnane ir as possfve is pelas qua is oscomponentes de que depende podern falha r e ser p ro je tado de forma a t ra ta r de cada u rna dessasfalhas apropriadamente.Concorrencia: a presenca de rmilt iplos usuarios em urn sistema distribufdo e urna Fonte de pedi-dos concorrentes para seus recursos, Em lim arnbiente concorrcnte, cada recurso deve ser projeta-do para man te r a consi st encia nos estados de seus dados .Transparencia: 0 objetivo c tornar certos aspectos da distr ibuicao invisfveis para 0programadorde apl icat ivos , para que este sep reocupe apenas com 0projeto de sell aplicativo em particular. Porexemplo , e le nao preci sa estar p reocupado com sua local izacao ou com os detalhes sob re comosuas ope racoes serao acessadas por out ro s componentes , nern se sera rep li cado ou mig rado . Asfalhas de rede e de p rocesses podem ser apresen tadas aos p rogramadorcs de apl icat ivos na formade excecoes -mas e la s devem ser t ra tadas.

    Exerc ic iosCite cinco tipos de recurso de hardware e recursos de dados ou software que possam ser cornparti-lhados com sucesso. De exemplos praticos de seu compartilhamento em sistemas distribufdos,

    pdginas 16, 20-22Com? o~rel6gios de dois cornputadores ligados por uma rede local podem ser sincronizados semreferencia auma fonte dehora extema? Quais fatores limitam a precisao doprocedimento que vocedescr~veu? C~mo os.relogios .de urn grande numero de computadores conectados pela Internetpodenam ser sincronizados? Discuta a precisao desse procedirnento. pdg in a 16

    Um usuar io chega a uma estacao de [ rem que nunca hav ia v is it ado, por tando urn PDA capaz deinrerligacao em rede sem fio.Sugira como a usuririo poderia receber informacoes sobre os serviceslocais e comodidades dessa cstacao, sern digiiar 0nome ou os atributos ciaestagao. Quais desafiostecnicos devern ser superados? pdgina /9-20Qua is sao as van tagens e desvantagcns das tecno logias bas icas HTML, URLs e HTfP para nave-gacao em inforrnacoes? Alguma dessas tecnologias e conveniente como base para a computacaocliente-servidor em geral? oagina 22Usc a web como exemplo para ilustrar 0conccito decomparti lhamento de recursos, cliente e ser-vidor.Os recursos naweb e out ros service s sao nomeados por URLs. 0 que denotam as in ic ia is URL? Decxernplos detres diferentes tipos de rccursus da web que podem ser norneados por URLs.

    pdgina 20-211 .6 C ite u rn exemplo deURL HTTP.

    L is te os p rinc ipai s componentes de um URL HTTP, d izcndo como seus l im ites sao denotados eilustrando cada urn, a partir de seu excmplo.Ate que ponto um URL HTIP tern transparencia de localizacao? pdgina 20-2/Um programa servidor escrito em uma linguagem (por cxernplo, C++) forncce a implernentacao deum objeto BLOB destinado a ser accssado pOl'clientes que podem ser escritos em uma linguagemdifercnte (por excmplo, Java). as computadores cliente e servidor podem ter hardware diferente,mas estao ligados a uma rede. Descreva osproblemas causados por cada um dos cinco aspectos daheterogeneidade queprecisam ser resolvidos para tornar possfvel que um objeto c1iente invoque ummetoda no objeto servidor, pdgina 28-29UITIsistema distribufdo aberto permite que novos services de compartilhamento de recursos, comoo objeto BLOB do Exercfcio 1.7, scjarn adicionados e accssados pOl'l ima variedade de programasclientes. Discuta, no contexte desse exemplo, ate que ponto a necessidade de sistema aberto difereda ncccssidade de heterogeneidade. pagina 29Suponha que as operacfies do objeto BLOB sejam separadas em duas categorias - operacoes pii-blicas, que estao disponfveis para todos os usuaries, e operacoes protegidas, que esrao disponfveisapenas para certos usuaries nomeados. Mencione todos os problemas envolvidos para se garantirque apenas os usuaries norneados possam usar uma operacao protegida, Supondo que 0 acesso auma operacao protegida forneca informacries que nao devem ser reveladas a todos os usutirios,quais outros problemas surgem? pdgina 29-30a service INFO gerencia urn conjunto derecursos potencialmente muito grande, cada urn dos quaispodendo ser acessado por usuaries de toda a Internet pOI'interrnedio de urna chave (urn nome destring). Diseuta uma estrategia para 0projeto dos nomes dos recursos que de uma perda de dcsem-penho minima a medida que 0nurnero de recursos no servico aumenta. Sugira a tnaneira como 0service INFO pede ser implementado de modo a evitar gargalos de desempenho quando 0numcrode usuaries se tornar muito grande. pagina 30-3/Liste os tres principals cornponentes de software que podcrn falhar quando urn proccsso c1iente in-vocar urn metodo emurn objeto servidor, De umexemplo defalha para cada caso. Sugira a maneiracomo oscornponentes podem ser feitos para tolerar asfalhas uns dos outros. pdgina 32-33Urn processo servidor mantem urn objeto de inforrnacoes compartilhadas, como 0 objeto BLOBdo Exercfcio 1.7.Dc argurncntos a favor e contra 0 fato dos pedidos de cliente serem executadosconcorrenternente pelo servidor. No caso de eles serem executados concorrentemente, de urnexem-plo de uma possfvel "interferencia" que possa ocorrer entre operacoes solicitadas pOI'diferentesclientes. Sugira 0modo como tal interferencia pode ser evitada. pdgina 34

    1.13. Um service e implementado pOl'varies servidores. Explique por que recursos poderiam ser trans-. . . . . feridos entre eles. Seria sutisfatorio que os clientes fizessern uma difusao seletiva (multicast) detodos os pedidos para 0 grupo de servidores como uma maneira de se obter transparencia de 010-bilidade? pdgina 34

    . 1 . . 1 .

    1.8

    1.9

    1.10

    1.12

  • 5/13/2018 Sistemas_distribuidos Cap 1

    14/96

    C A P i T U L O 2 MODELOS D E S I ST E M A 39

    2.1 lntroducaoOs sistemas destinadas a usa em ambientes do mundo real devem scr projetadas para funcionar cor-retamente na maior variedade possfvel de circunstancias e perante muitas dificuldades e ameacaspossfveis (para alguns exemplos, veja 0 quadro abaixo). A discussao e os exernplos do Capftulo Isugerem que sistemas distribuidos de diferentes tipos compartilham importantes propriedades subja-centes e dao origem a problemas deprojeto comuns. Neste capitulo, apresentamos as propriedades eproblemas comuns de projeto de sistemas distribufdos, naforma de modelos descritivos. Cada modeloe destinado a fornecer uma descricao abstrata e simplificada, masconsistente, deurn aspecto relevantedo projeto de urnsistema distribufdo.

    Urn modelo de arquitetura define a forma pela qua]os cornponentes dos sistemas interagcm e amaneira pela qual eles saomapeados emuma rede de computadores subjacente. Na Secao 2.2, descre-veremos a estrutura em camadas de software de urnsistema distribufdo e os principais modelos de ar-quitetura quedeterminam as localizacfies e as interacoes doscomponentes. Discutiremos as variantesdo modclo cliente-servidor, incluindo aque1as relacionadas ao uso de c6digo movel. Consideraremosas caracteristicas de urn sistema distribufdo no qual os dispositivos m6veis podem ser adicionadosou removidos convenientemente. Finalmente, veremos os requisites gerais de projeto para sistemasdistribufdos.Na Secao 2.3, apresentaremos tres modelos fundamentais que ajudam a revelar aspectos impor-tantes para os projetistas de sistemas distribufdos. 0 objetivo de1es e especificar os principais pro-blemas, dificuldades e arneacas que devem ser considerados no desenvolvimento de sistemas distri-buidos para que esses executem suas tarefas corretamente, de forma confiavel e segura. Os model osfundamentais fornecem vis5es abstratas das caracterfsticas dos sistemas distribufdos que afetam suadependabilidade" - correcao, confiabilidade e seguranga.

    2 .1 l nt ro du ra o2. 2 Modelos de arqu ite tu ra de s is temas distr ibuldos2 .3 Mode lo s f undamentai s2.4 R esumo

    Um modele de arquitetura de um sistema distr ibufdo envolve 0posicionamen-to de suaspartes e os relacionamentos entre elas. Exemplos incluem 0mode-10 cliente-servidor e 0 modele peer-to-peer. 0 modele c lien te -servido r pode sermodificado dasseguintes maneiras:

    pelo particionamento dos dados ou pela replicacao de servidores colabora-tivos; pela colocacao dos dados em cache por meio deserv idores proxies e dien-tes; pel o u so de c6d igo e de agent es m6vei s; pelo requisi to de adicionar e remover d isposi ti vos m6veis de manei ra con-veniente.Os modelos fundamentais envolvem uma descricao mais formal das proprie-

    dades comuns a todos os modelos de arquitetura.Nao existe a nocao de rel6g io g loba l em um s is tema d is tr ibufdo ; por tanto,

    os rel6gios de diferentes computadores nao fornecem necessariamente a mesmahora. Toda cornunicacao entre processos e obt ida po r mei o de t roca de mensa-gens. A comunkacao por t roca mensagens em uma rede de computadores podeser a fe tada por a trasos , pode sof re r uma var iedade de falhas e e vulneravel a ata-ques contra a seguranc;a. Essesproblemas sao tratados por tres modelos:

    0 model o de i nt er acao que t rat a do desempenho e da di fic ul dade de es -tabelecer l imites de tempo em um sis tema d is tr ibufdo , par exemplo , paraentrega de mensagens. 0 modelo de falha que v isa fornecer uma espec if icacao precisa das falhasque podem ser exibidas par processos e canais de cornunicacao. Eledefinea nocao de cornunicacao confiavel e da correcao dos processos.

    0 modelo de sequranca que d iscu te asposs fveis a rneacas aos processos eaos canals de cornunicacao. Eleapresenta 0conceito de canal seguro, quee protegido dessas arneacas.

    * N. de R.T.: Dependabilidade e urn neologisrno ernpregado nas areas de tolerancia a falhas, sistemas de tempo real e sistemasdisrribuldos como traducao para 0 termo ingles dependability e signi fica a garan tia (confiauca) que urn sistema oferece nopro-v imento deurn service ou tarefa.

  • 5/13/2018 Sistemas_distribuidos Cap 1

    15/96

    40 S I ST E M A S D I S TR I BU I D O S , ( O N C EI T O S E P R O JE T O

    E 2 . 2.AJ\FII}I],

    ]1

    Mo d e l o5 d e a r qu it et ur a d e s is te m a s d is tr ib u id o sA arqui te tu ra de um s is tema e sua est ru tu ra em termos de componcntes espec if icados separadumen te .o objet ivo g loba l e garan ti r que a est ru tu ra a tenda as demandas a tuai s e , p rovave lmen te , a s futurasimpos ta s sob re e la . As maiores p reocupacoes sao torna r 0 sistema confiavel, gerenciavel, adaptavel eren tave l, 0 p ro je to a rqui te t6nico deu rn p redio tern aspec tos s im ilarcs - e le dctermina nao apenas suaapa renc ia , mas tambern sua est ru tu ra geral e sel l e st ilo a rqui te tonico (go ti co , neoclas si co , moderno )fornecendo urn padrao de referenda consistente para seu projeto.

    Nes ta scgao , vamos descrever osp r incipa is model os de a rqui te tu ra empregados nos s is temas d is -t ribu fdos - os est ilos a rqui te tonicos desses s is temas. Const ru fmos nossos modelos de a rqui te tu ra emtorno dos conce itos de p rocesso e objeto apresen tados no Cap itulo I. 0modelo de arquitetura de umsistema distribufdo primeiramente simplifiea e abstrai as fungoes dos componentes individuals de urnsistema distribufdo e, em scguida, considera:

    0 posicionamento dos componentes em uma rode de computadores - buscando definir pudrfiespara a d is tr ibuicao de dados e da carga de t raba lho;

    os inter -r el ac ionamentos ent re oscomponen te s - i sto e , seus papei s funcionai s e os pad roes decornunicacao entre elcs,Uma simplificacao inicial e obtida por meio da classificacao dos processos como processos servi-

    dares, processes clientes e processos peer-to-peer- sendo estes i il rimos os p rocessos que colaboram ese comunicam de maneira simetrica para realizar uma tarefa, Essa classificacao de processos identificaas responsab il idades de cada u rn e , a ss im , nos a juda a ava li ar suas cargas de t raba lho e a determina ro impa ct o d as f al ha s em c ad a ur n de le s, Os re su lt ad os d es sa an al is e po dem en tao se r u sa dos par a e s-pecificar 0 pos ic ionamento dos p rocesses de uma manei ra que a tenda os objet ivos de desernpenho econfiabilidade do sistema resultante.

    A lguns s is temas mais d inamicos podem ser const ru fdos como var iacoes do modelo c li en te -ser -vidor; A po ss ib ili da de de mov er c 6d ig o de urn processo para outro permite que urn processo dcleguetarefas ; por exemplo , o s c li en te s podem fazer 0download de c 6di go a pa rt ir d e s er vi dor es cexecu ta -Io localmente. Essa possibi lidade reduz osa t ra sos no acesso a e le e rninimiza 0 trafe-go de comunicacao,

    A lguns s is temas d is tr ibufdos sao p ro je tados de forma que eompu tado res e out ro s d isposi tivosm6vei s sejam adicionados ou remov idos de forma t ranspa rente, permi tindo que esses descu -b ram os services d isponfve is , ou que o feregam scus services para aos demais.

    Exi st em var ie s pad roes amplamente usados para a d iv isao de tarefas em urn s is tema d is tr ibuidoque tern urn impacto importante sobre 0desempenho e a eficiencia do sistema resultante. 0posiciona-men to dos p rocessos que const ituem urn s is tema d is tr ibuido em uma rede de compu tado res tambcrn ei nf luenciado por p roblemas de desempenho, con fi ab il idade, seguranca e cus to . Os modelos de a rqui -tetura aqui descritos oferecem uma visao simplificada dos padroes mais importantes.

    2 .2 .1 C am ad as d e s oftw ar eOriginalmente, 0 termo arquitetura de software se referia a esr ru tu racao do sof tware em camadas oum6dulos em urn r in ico cornputador e , mai s reeen temente, em termos de services o fe recidos e sol ic i-t ados ent re p rocessos local izados em um mesmo compu tado r ou em compu tado res d iferen te s. Essav is ao or ie nt ad a pa ra p ro ce ss o e s er vi ce po de s er exp re ss a em t ermos d e camadas de service. Apre-sen tamos essa v isao na F igura 2.1 e a d es env ol vemos , ca da vez c om mai s de ta lh es , n os C apf tul os 3 a6 . Urn servidor e urn p rocesso que ace it a ped idos de out ro s p rocessos . Urn servico d is tr ibufdo podeser fornecido por u rn ou mais p rocessos servido re s, int erag indo uns com os out ros e com processosc li en te s para man te r uma v isao consi st en te em nfvel de s is tema dos recur sos do service . Por exemplo ,o se rv ic e d e si nc ro ni za ca o do s r el 6g io s d e c omput ad or es e imp lemen ta do n a I nt ern et c om b as e noprotocolo NTP (Network Time Protocol) a t raves de p rocesses servido re s que execu tam em diver sos

    C A P I T U l O 2 M O D E LO S D E S I S TE M A 41

    Plataforma

    Figura 2 .1 C am ad as d e s of tw ar e e h ard wa re e m s er vi ce s d e s ist em as d ist ri bu ld os .

    cornputadores em toda a Interne t. Esses servido re s fornecem a ~~ra a tual para qua lque r . c1 .i en teque asol ic it e e ace rt a sua hora a tual como resul tado de interacoes rea li zadas com os out ros set :Idores._

    A Figura 2 .1 apresen ta doi s t ermos impor tantes , plataforma e middleware, os quais definimoscomo segue:Plataforma 0 As camad as de ha rdwar e e s of twar e de mais baixo nfvel sao freqtient~me~te de~o-minadas de plataforma para s is temas e apl icat ivos d is tr ibufdos. Essas cam~da~ de mats ~aJ~o mv_clfornecem services para ascamadas que estao acima delas de forma a levar a inter face de p !Ogl~ma~aodo sistema a urn nfvel que facil ita a comunicacao e ~coord_enagao entrc.proc~ssos. Intel x8~0Vmd~ws,Intel x86/Solaris , Powerf'C'Mac OS X, Intel x86fLmux sao exernplos importantes de plataformas.M;ddleware 0 0middleware foi def in ido na Segao 1 . 4. I como uma c :mada de ~of tware. cujo o .b -jetivo e masca ra r a heterogeneidade e fornece r u rn mode1o de p rogramacao convc ruen te pat~ os P I O -gram adores de aplicativos. Um middleware e composto por u rn con junto de p rocess~s o~ obJe~os , en~urn ru 0 de compu tado res, que interagem ent re si de for~a. a i~plementar CO~UlllC~g~o e 0 ereceisup ;r t/pa ra compart ilhamento de recur sos a apl icat ivos d is tr ibufdos, E le se des tina a foi n~~er b locosbas icos de const rucao para a mon tagem de componcntes de sof tware que p~ssaJ~ t raba lhm Jun tos e li -urn sistema distribufdo, Em particular, ele simplifica as atividades de comurucacao de pro~ram_as ap 1-cat ivos por meio do supor te de abs tr acoes como a invocacao a metodos :c~no tos, a com~lmcagao ~n~eurn glUpo de processos a notificacao de eventos, 0particionamento, poslc~onamento e lecupera9~0 eobjetos de dados com~artilhados entre computadores, a replicacao de objetos de dados ,compartl lh~-d os e a t ra nsmis sa o de da do s mul timi di a em tempo re al . A comun ic ac ao em g ru po s er a , ap re se ~ta ano Cap itulo 4 e t ra tada com detalhes nos Capftulos 12e 15. A not if icacao de eventos sera d~scl '1 ta deC 'II 5 0 C ap it ul o 1 0 d es cr ev er a a s e st ra te gi as pa ra 0eompart ilhamento de g randes conJu .n to s eo :fe1 t: s ~n~re var ie s compu tado res. A rep li cacao de dados sera d iscu tida no Cap itulo 15 C os sistemasmultimfdia no.Capftulo 17. PC) SunOs pacotes de chamada de p rocedimentos remotos (Remote Proce~ure C~ll- R ,_co:~~~ losRPC (Capi tu lo 5 ), e os s is temas de comun icacao em grupo , como 0I SI S (~a pl tul o . 15 ), s ao _ .' pdos p rime iros t ipos de middleware. Atualmente ha var ie s p rodu tos e pad roes de middleware orienta-dos a objetos sendo amplamente empregados, eles inc1uem, entre outros:

    CORBA; RMIJava; s er vi ces web (web services); DCOM (Distributed Component Object Model) da Microsoft; 0RM-ODP (Reference Modelfor Open Distributed Processing) do ISO/ITU-T.

  • 5/13/2018 Sistemas_distribuidos Cap 1

    16/96

    42 S IS T EM A S D I ST R IB U I D O S , ( O N C E IT O S E P R O JE T O

    o RMI Java, o s servicos web e CORBA ser iio descr itos nos Capftulos 5 , 19e 20; detalhes sob reDeOM e RM-ODP podem SCl" encon trados em Redmond [1997] e B la ir e S te fani [1997J.omiddleware tambern pode fornecer serv ices a serem usados p ur p rogramas ap li c at iv os , E s scn c ia l -mente,. elcs sao s~rvivos de infra-cstrutura fortemente vinculados ao modele de programacao distribufdafOrneCl?O~elo tniddleware. ~or exemplo, 0CORRA oferece lima variedade de servic,;osque fornecema~s aplicativos recnrsos q~e incluem, ~~trc ~utros, atribuicao de nomes (nomeacso), scguranca, transa-coes, armazenamento pcrsistentc e notificacao de evenros, Alguns dos services CORBA serao discutidosno eapi~l~o 20. Os servi.c,;os_que estao ~a~amada super io r da F igura 2 .1 sao irnplcrnentados com basen a s p n rmnva s de cornurucacao e dos p ro p no s s er vi ce s o f er ec id o s p el o middleware cmprcgado.Lim.jt~~6esdo mi~d{eware: ~uil~S aplicativos d i st r ibu fdos se ba sei a rn complctamcnte nos services~fclecldos pelo middleware disponfvel p31:aa~ender suas necessidades de comunicacjto e cornpar-t ilhamento de dados , Por exemplo , um apl icat ivo que segue u rn modelo c li en te -servido r, como um?an co d~d ad o~ de n ome s e e nd er ec os , p od e s cr co ns tr uf do com um mlddleware que forncca apenasmvocacao a metodos rernotos.

    Po~ meio?o desen~ol~im~nto de middlewares, muito se rem conseguido na simplificacao ciapro-gr~mar;ao de sistemas distr ibufdos, mas alguns aspectos de depcndabilidade dos sistemas distr ibufdosexigem suporte em n fv el d e aplicativo.

    Considerc ~ tr~n~fel~enc~ad~ grandes mensagens de correio eletr6nico, do compurador do reme-tente ao do de~tlIla~ano. A pnmerra VIsta, essa e lima simples aplicacao do pro toco lo dc transmissao ded~d~s TCP ~dlscutIdo no Cap~tulo 3). Mas considere 0problema de um usuario que t en ta t ransferi r LImarqurvo mll l. to g rande P?r meio de uma rede potencialmente nao confiavel . 0 p ro toco lo TCP forncce. u~~.adcter~mnada cap~cldade de dete~c,;a~ c corrcc,;~o de erros, mas nfio se recupera de problemas maissenos na rede, 0 servlr;~ de transferencia de correio eletronico acrescenta outro nivel de tolerancia afalhas _mantendo um registro do andarnenro da t rans fe renc la e retomandn a t ransmissao em uma novaconexao TCP, caso a original se desfaca,

    l!m artigo .c1assico. de Saltz~r, ~ee~ e Clarke [Saltzer et al. 1984] menciona um ponto valioso arespelto_ do projeto de sistemas distribufdos, 0que eles charnararn de princfpio fim-a-fim. C i ta nd o s u acolocar;ao:Algumas funcoes relaciona?as it comunicacao podem ser completa e corrctamente implcmen-

    t~das apcnas com. 0 c~nhecI lnen to e a ajuda do aplicativo que esta nos p o nt es e x tr em e s de umsistema d~ cOI~ulllcar;ao. Portanto, fornecer essa fUIlf,:aocomo urn recurso proprio de urn sistema~.ecornurucacao n~m :e~pre c sensate. (UI~~ versao mais s imples de l ima funcao fornecida pelos is tema de comumcacao as vezcs pode ser iitil pa ra a melhoria do desempenho),

    . . Po~e~se notar que esse ~rincfpio .vai~ontra a visao de que todas as atividades de comunicncao podems et a b sn a fd a s d~.pr~graI1la1tao de.apl!c~II~OS pela in t roducao de carnadas de middleware apropriadas,o ponto pl.IllClp~1desse pr.lIlclplO e que 0 comportamento correto em programas distr ibufdosdependc de ver if icacoes, mecan ts rnos de cor recao de e rro e rnedidas dc seguranca em rnu itos n fvei s,alguns dos q~UI~eXIg1l1~?ac:_sso a dados den~'o?o ~spavo de endercc;:amcnto do aplicativo, Qualquert en ta tl~a de. l~ahza r : enhcar ;oes den tro do propno s is tema de coruunicncan garan ti ra apenas par te c iacorr~r;ao exigida. POItanto, 0me smo t ra b al ho p ro v av e lm e nr e s cr ri f ei to em p rogramas ap li c at iv os des-perdicando esforco de prograrnacao e, 0mais importante, acrescentando complexidade desnecessanne executando operacoes redundantes .. Na? M e~~ar;o aqui para deralhar melhor os argumentos que embasam 0 princfpio fim-a-fim; 0

    ~ltlgO clt~do ~.f~rle.mente recomendado para I ei tu r a - e le e st a repleto de exemplos esclarecedores. Ur n?s. auto! e s ongmars t~ostrou, recenremente, que os ben ef fci os subsranc i ai s t razido pelo uso do prin-ClpIOfil~-a-fim no projeto da Internet sao colocados em risco pelas atuais mudancas na especializar;aodos servicos de rede para atender os requisites dos aplicativos atuais [www.reed.comJ.2 .2 .2 A r qu it et ur as d e s is te maA divisao d bilid d .. e resp~ns? ~ 1 a es ent re oscomponen te s de um s is tema (ap li ca tivos, servido re s e out ro spi?~essos) e a a.tnbUIc;:a~destes n?s ~iversos computadores de urna rede ralvez seja 0 aspecto maiseVI enle do proJe to de s Is temas d ls tnbu idos . I sso tem implicac; :6es impor tantes no desempenho, na

    C A P i T U L O 2 M O D EL O S D E S I S TE M A 43

    confiabi1idade e na seguranca do sistema resultante, Nesta secao, destacaremos os principais modclosde a rqui te tu ra que servem como base para se rea li za r e ssa d is tr ibuicao de rcsponsab il idadcs e a a tr i-buicao de componentes a computadores.

    Em urn s is tema d is tr ibufdo , os p rocessos possuem responsab il idades bem def in idas e interagempara realizar uma atividade uti I.Nesta segao, nossa atencao se voltara a atribuicao d os p ro ce ~s os acompu tado res como, por exempIo , sc vena F igura 2 .2 , que mos tr a a d isposicao de p rocessos (cl ip se s)nos compu tado res (ca ixas c inza ). Usamos os rermos invocacao e resul tado para rotular a s mensagcns- e la s poder iam igualmente ser rotuladas como ped ido e resposta

    Os doi s t ipos p rinc ipai s de modelos de a rqui te tu ra estao i lu st rados nas F iguras 2 .2 e 2 .3 , e e st aodeseritos a seguir.Cliente-servidor 0 Essa e a arquitetura mais citada quando os sistemas distribufdos sao discutidos.Historicamente ela e a mais impor tante e con tinua sendo amplamente ernpregada. A Figura 2.2 ilustraa est ru tu ra s imples na qua l os p rocessos c li en te s interagern com processes servido rc s, local izados emdistintos computadores hospedeiros, para acessar as recurs os cornparti lhados que estes gerenciam,

    Os servido re s podem, por sua vez , set "cl icntes de out ro s servido re s, con fo rrne a figura indica. Porexcmplo, um servidor web e freqiientemente um cliente de um servidor de arquivos local que gerenciaos a rquivos nos qua is a s paginas web estao arrnazenadas, Os servido re s web , e a maior ia dos outrosservice s Interne t, s ao c li en te s do service DNS, que rnape ia nomes de domfn io Interne t a enderecosde rede (IP). Outro exemplo relacionado it web d iz respe ito aos mecanistnos de husca, os qua is per -rnitern aos usuaries pesqu isar r esumos de informacoes disponfveis em paginas web, em s it es de to daa Internet. Esses resumes sao feitos por program as chamados web crawlers", que sao cxecutados emsegundo plano (background; em urn s it e de mecan ismo de busca , u sando ped idos HTTP para acessars er vi dor es w eb em to da a In te rn et . As sim, ur n mec ani sme d e b us ca e t ant o ur n s crv id or como umcliente: ele r esponde as consu lt as de c li en te s navegadores e execu ta web crawlers que a tuam comoclientes de outros servidores web. Nessc cxemplo, as tarefas do servidor (responder a s consultas dosusuar ie s) e as t a re fa s do web crawler ( faze r ped idos para out ro s servido re s web) sao totalmente inde-pen dentes; ha pouca necessidade de sincroniza-las e elas podem ser executadas concomitantemente,Na verdade, urn mecan ismo de busca tfpico, normalmente, e feito p o r mu it as threads concorrentes,algumas servindo seus clientes e outras executando web crawlers. No Exercfcio 2.4, 0 leitor e convi-d ad o a refletir sobre 0problema de sincronizacao que surge para um mecan ismo de busca concorrentedo tipo aqui esbocado.

    L e g e n d a : r:">P r oc e ss o: \ ._ _ _ _ _ / C o rn p u ta d o r: ~

    F ig ur a 2 .2 O s c lie nte s realizam pedidos a servidores.

    * N. deR.T. : Tambem denominados de spiders (aranhas) em analogia aofato deque passeiam sabre a web (leia); entretanto, ebastante comum 0uso do termo web c r aw l er e, por isso, preferimos nao traduzi-l0.

  • 5/13/2018 Sistemas_distribuidos Cap 1

    17/96

    44 r (,",uto 2 M O O E t O S " S I S T E M A 45I - - - - - - - - - - - - - - - - - - - - ~ ~ , ~ ~ ~ ~ ~IS IS T EM A S D IS T RI BU fD O S, ( O NC EI TO S E P R O J ET OPeer-to-peer* 0 Nessa a rqui te tu ra , todos os p rocess os envolvidos em uma tarefa ou a tividade de-sempenham funcfies semelhantes, interagindo cooperativamente como pares (peers), sem distincaoentre process os c li en te s e servidores, nem entre os comput ad or es em qu e s ao executados. Emboraa modelo cliente-servidor ofereca uma estrategia direta e relativarnente simples para 0 cornpartilha-mento de dados e out ro s recur sos, e ie nao e f texfve l em termos de escalabilidade, A cen tral izacao dofornecimento e gerenciamen to de servicos, aca rret ada pela colocacao de um service em urn unicocomputador, nao favorece urn aumento de escala, alem daquela limitada pela capacidade do cornpura-d ar qu e co nt em a se rv ice e da la rg ur a de b and a de su as c on ex oes d e r ed e,

    Na proxima secao, descreveremos diversas variacoes da arquitetura clicnte-servidor que evoluframcomo uma resposta a esse p roblema, mas nenhuma delas t ra ta do problema fundamental - a necessida -de de d is tr ibui r r ecur sos compart ilhados de uma forma mais ampla para d iv id ir a s cargas de compu ta -r ;aoe de comun icac jto ent re u rn mimero mui to g rande de compu tado res e de concxoes de rede.A capac idade do hardware e a funcional idade do s is tema ope racional dos compu tado res do t ipodesktops a tuai s u lt rapassam aquelas dos servido re s ant igos e a inda , a maior ia desses cornputadores,esta equ ipada com conexoes de rede de banda larga e sernp re a tivas. 0objetivo da arquitetura peer-la-peer e exp lo ra r os recur sos ( tanto dados como de hardware) de um grande mimero de compu tado respara 0 cumpr imen to de uma dada tarefa ou a tividadc . Tem-se const ru fdo, com sucesso , apl icat ivos esistemas peer-la-peer que permi tem a dezenas , ou mesmo , cen tenas de milha re s de compu tado res,fo rn ec er em ace ss os a da dos e a ou tr os r ecu rs os q ue el es ar rnaz en am c ge re nc iam co let iv amenr e, aexemplo rnais antigo, e conhecido, desse tipo de arquiterura C 0aplicativo Napster, empregado para 0compart ilhamento de a rquivos de rmisica d ig it al . Embora tenha se tornado famoso par out ro mot ivosque nao a sua a rqui te tu ra , sua demunst raef in de exequ ib il idade resul tou no desenvo lv imen to dessemodelo de arquitetura em muitas direcoes importantes.

    A F igura 2 .3 i lu st ra a Forma to de u rn apl icat ivo peer-to-peer. as ap lic at ivos s ao c ompos to s d egrandes mimeros de processos (peers) exeeu tados em dis tintos compu tado res e 0 padrao de cornuni-cagao ent re des depende intei ramente do que 0apl icat ivo faz , Nessa f igura, u rn g rande mirne ro de ob-jetos de dados sao compart ilhados e u rn compu tado r ind iv idua l con tc rn apenas u rna pcquena par te deurn banco de dados desse aplicativo, 0que faz com que as cargas de a rmazenamen to , p rocessamen to ccomunicagao para acessar diferentes objetos sejam distribufdas por rnuitos computadores e conexoesde rede. Cada objeto pode ser rep li eado em var ie s compu tado res para d is tr ibui r rne lhor a carga e parap roporc iona r res il ienc ia , no caso de desconexao de compu tado res ind iv idua is ( is so e inevi tave l emredcs g randes e heterogeneas para os qua is a s s is temas peer-la-peer se des tinam) , A necessidadc decolocar objetos ind iv idua is , de recupera- lo s e man te r r ep li ca s ent re mui to s cornputadorcs torna essaarquitetura substancialmente mais complexa do que a arquitetura cliente-servidor.o desenvolvimento de aplicativos peer-fo-peer e de middlewares para suporta-los sera descritocom pro fund idade no Capftulo 10.

    P e e r s 5 . . . . N

    P e e r 2

    Objetoscompartihaves

    Figura 2.3 Um aplicativo distribufdo baseado em arquitetura peer-to-peer.

    para fornece r um service para p rocesses c li en te s (Figu ra 2 .4 ). Os servido re s podem p~t ic io~a~~:con iunto de obietos nos qua is 0 service e baseado e distribuf-Ios entre des me:mo: o~ po .em, am ,ma~te r cop ia s ~up li cadas deles em var ie s out ro s hospede iros . Essas duas opcoes sao i lu st radas pelosexeml l:~~ ~~~~~~eurn exemplo comum de par ti cionamen to de dados no qua l cada servi~o r ~eb ~e-rencia seu p ropr io con junto de recu rsos , Urn usuar io pode usa r u rn navegador para acessai mn recut soqualquer urn desses servidores. . .) dem I d . b do em dados replicados e 0NIS (Network Information Service aUrn cxemp 0 e servico asea C d vidor NISSun, u sa do po r compu ta do re s em uma r ed e