Sei sulla pagina 1di 7

UNICAP

CCTCinciadaComputao
SistemasDistribudos
Prof.AlmirPires

ListadeExercciosCaptulo2
ModelosdeSistemas

1. Descreva e ilustre a arquitetura clienteservidor de duas aplicaes Internet


(porexemplo,webeemail).(CoulourisExerccio2.1)

Web:
Navegadores so clientes de servidores de nome de domnio (DNS) e
servidores web (HTTP). Alguns so intranets configurados para interpor um
servidorProxy.Osservidores proxypodemcumprirvriosfinsquandoesto
situados no mesmo site como o cliente, eles reduzem os atrasos de rede e
trfego de rede. Quando eles esto no mesmo local que o servidor, eles
formamumpostodeseguranaepodemreduziracargasobreoservidor.

Email:
O envio de mensagens: User Agent (programa de composio de email do
usurio)um clientedeumservidorSMTPlocalepassacadamensagemde
sada para o servidor SMTP para entrega. O servidor SMTP local utiliza
tabelas de roteamento de email para determinar um percurso para cada
mensagem e, emseguida, encaminha a mensagemparao prximo servidor
SMTP escolhido da rota. Cada servidor de SMTP processa e encaminha
cadamensagemquechega a menos queonomede domnio da mensagem
seja igual a da mquina local. Neste ltimo caso, ela tenta entregar a
mensagem para o destinatrio, armazenandoo em um arquivo de caixa de
emailemumservidordediscoouarquivolocal.
Leiturademensagens:UserAgent (programa de leituradeemaildousurio)
um cliente do servidor de arquivos local ou um cliente de um servidor de
entrega de email,comoumservidorPOPouIMAP.Noprimeirocaso,oUser
Agent l mensagens diretamente e cria o arquivode caixade emailem que
foram colocados durante a entrega da mensagem. Neste ltimo caso, o

usurio solicita ao Agent informaes sobre o contedodoarquivo de caixa


de email do usurio a partir de um servidor POP ou IMAP e recebe
mensagens a partir desses servidores para exibir ao usurio. POP e IMAP
so protocolos especificamente concebidos para apoiaracesso ao email em
reas amplas e conexes de rede lentas, de modo que um usurio pode
continuaraacessarsuacaixadeemailcasaenquantoviaja.

Netnews:
Publicao de artigos de notcias: User Agent (programadecomposio de
notcias do usurio)umcliente deum servidor local NNTP quepassacada
artigo de sada para o servidor NNTP para entrega. Cada artigo atribudo
um nico identificador. Cada Servidor NNTP mantm uma lista de outros
servidores NNTP para o qual um newsfeed esto inscritos para receber
artigos a partir dele. Ele periodicamente contacta cada um dos servidores
registrados e oferece todosos artigos novosesolicitaartigosquenopossui
(usando a identificao exclusiva dos artigos para determinar quais so).
Paragarantir a entrega de cadaartigoparatodososdestinosNetnews,deve
haver um caminho de conexes newsfeed que alcana todos os servidores
NNTP.
Navegao / leitura de artigos: User Agent (programa de leitura denotcias
do usurio) um cliente de um servidor NNTP local. O agente do usurio
solicita atualizaes para todos os grupos de notcias que o usurio est
vinculadoeexibe.

2. Para as aplicaes discutidas no exerccio anterior, mostre como os


servidores poderiam cooperar para prover o servio. (Coulouris Exerccio
2.2)

Web: servidores Web cooperam com servidores proxy para minimizar o


trfego de rede e latncia. Responsabilidade para consistncia feitapelos
servidores proxy que verifique as datas de modificao de pginas
freqentementecomoservidorwebdeorigem.

Mail: servidoresSMTP nomantemnecessariamente tabelas deroteamento


de distribuio de email para todos os destinos. Em vez disso, eles
simplesmente encaminham mensagens dirigidas a destinos desconhecidos
paraoutroservidorqueprovavelmentetemastabelas.

Netnews: Todos os servidores NNTP cooperam da maneira descrita acima


paraforneceromecanismodefeeddenotcias.

3. Discuta os tpicos particionamento e/oureplicao (ou caching)dedados


entre os servidores das aplicaes descritas no exerccio 1. (Coulouris
Exerccio2.3)

Web: Web page masters so mantidos em um sistema de arquivos em um


nico servidor. As informaes sobre a web como um todo , portanto,
divididoentremuitosservidoresweb.

A replicao no uma parte dos protocolos de web, mas um site muito


usado pode fornecer vrios servidores com cpias idnticas do sistema de
arquivos em questo, utilizando um dos meios conhecidos para replicar
slowlyalteraode dados.SolicitaesHTTPpodemsermultiplexadosentre
os servidores idnticos utilizando o (bastante bsico) mecanismo de
compartilhamento de carga DNS. Alm disso, os servidores proxy web
replicao apoio atravs do uso de rplicas em cache de pginas e
navegadores usados recentemente suportar a replicao atravs da
manutenodeumcachelocaldepginasacedidasrecentemente.

Mail:Asmensagenssoarmazenadassomenteem seusdestinos.Ouseja,o
serviode emailbaseadoprincipalmenteemparticionamento,emborauma
mensagemparavriosdestinatriosreplicadoemvriosdestinos.

Netnews:Cadagruporeplicadasomenteemlocaisqueexigemisso.

4. Sugira algumas aplicaes adequadas para o modelo de processos


peertopeer.(CoulourisExerccio2.5)
Trabalho cooperativo (groupware) aplicativos quefornecem um processo de
parespertodecadausurio.
Os aplicativos que precisam apresentar todos os usurios com estado
idntico compartilhada whiteboard, viso compartilhada de uma discusso
textual.
Menos consistncia: onde um grupo de usurios est trabalhando em um
documento compartilhado, masusuriosdiferentespodemacessardiferentes
partes ou talvez um usurio bloqueia parte do documento e aos outrosso
mostradosanovaversoquandoeleestiverterminada.
Alguns servios so efetivamente grupos de processos pares para fornecer
disponibilidade ou tolerncia a falhas. Se eles particionarem dados, ento
elesnoprecisamparamanterconsistenteemtudo.

5. Liste os tipos de recursos locais que esto vulnerveis a um ataque de um


programa no confivel que carregado de um site remoto e roda em um
computadorlocal.(CoulourisExerccio2.6)

Objetos no sistema de arquivos, como arquivos e diretrios, podem sofrer


leitua e escrita,epodemsercriados edeletadosusandoosdireitoslocais do
usurioqueexecutaoprograma.
A comunicao de rede: o programa pode tentar criar sockets, conectalos,
enviarmensagens,etc.
Acessoaimpressoras.

Tambm possvel se passar pelo usurio de vrias formas, como por


exemplo,enviandoerecebendoemail.

6. Dexemplosdeaplicaesemqueousodecdigomvelsejavantajoso.
(CoulourisExerccio2.7)

Fazendoacomputaoproximoaousurio,comonosApplets.
Casos em que os objetos sao enviados para um processo e o codigo
necessrioparatornalousvel.

7. Que fatores afetamotempoderespostadeumaaplicaoqueacessa dados


compartilhados gerenciadosporum servidor?Descreva medidasquepodem
serteispararesolvertaisproblemas.(CoulourisExerccio2.8)

Quando o cliente acessa um servidor, fazse uma invocao de uma


operao no servidor que esta rodando num computador remoto. As
seguintescausaspodemafetarotempoderesposta:
1. Servidorsobrecarregado
2. Latncia na troca de request e reply (devido a camadas do sistema
operacionaledomiddlewarenoclienteeservidor)
3. Carganarede
O uso de cache ajuda com todos os problemas acima, Em particularcache
noclientereduztodoseles.

8. Qualadiferenaentrebufferizaoecaching?(CoulourisExerccio2.9)

Buffer: uma tcnica para armazenar dados transmitidos a partir de um


processo de envio a um processo receptor em memria local ou
armazenamento secundrio at que o processo receptor esteja pronto para
usar. Por exemplo, ler dados de um arquivo ou transmisso de mensagens
atravs de uma rede, melhor para lidar com isso em grandes blocos. Os
blocos so mantidos em armazenamentodebuffernoespaodememriado
processo receptor. O buffer liberado quando os dados tiverem sido
consumidospeloprocesso.

Caching: uma tcnica para otimizar o acesso a objetos de dados remotos,


mantendo uma cpia deles na memria local ou em armazenamento
secundrio. Os acessos a partes do objecto remoto so traduzidos em
acessosao partes dacpialocalcorrespondente.Aocontrriodebuffering,a
cpialocalpodesermantidoenquantohouverlocaismemriadisponvelpara
armazenla. Um algoritmo degerenciamentode cache e uma estratgia de

liberao so necessrios para gerenciar o uso da memriaalocadaparao


cache.

9. D exemplosdefalhasdehardwareedesoftwarequepodem/nopodemser
toleradaspelousoderedundnciaemumsistemadistribudo.
(CoulourisExerccio2.10)

Falhas de Hardware: processadores, discos e conexes de rede


podem usar redundncia, por exemplo, rodar um processo em
mltiplos computadores, escrever em dois discos,ter doisroteadores
separadosnarededisponvel.
Galhas de software, crashes: Redundncia nao bom com erros,
porque eles podem ser replicados.Processos replicados ajudamcom
crashes que podem ocorrer devidos a bugs em partesindependentes
do sistema. Mensagens retransmitidas ajudam com o problema de
perdademensagens.

10. Considere um servidor simples que atende a requisies de clientes sem


acessar outros servidores. Explique por que geralmente no possvel
determinar um tempo limite de respostaparatalservidor. O que poderia ser
feito para que um tempo de resposta fosse estabelecido? (Coulouris
Exerccio2.11)

Ataxadechegadaderequestsdoclienteimprevisvel.
Se o servidor usa threads para executar requests de forma
concorrente, ele pode nao ser capaz de alocar tempo suficiente para
umrequestemparticularquetemumtempolimite.
Seo servidor colocaorequestnafila e vai tirando da filaumdecada
vez, eles podem esperar na fila por uma quantidade de tempo
ilimitada.
Para executar requests dentro de um periodo de tempo limitado, limite o
numero de clients para se adequar a sua capacidade. Para lidar com mais
clients, usa um servidor com mais processadores. Depois disso, ouemvez
disso,repliqueoservio.
Asoluopode sercarae, em alguns casos manter asreplicasconsistentes
pode levar teis ciclos de processamento, reduzindo os ciclos disponveis
paraexecuoderequests.

11. Considere a existncia de dois servios de comunicao, A e B, em um


sistema distribudo assncrono. No servio A, mensagens podem ser
perdidas, duplicadas ou atrasadas e checksums so utilizados apenas nos
cabealhos das mensagens. No servio B, mensagenspodemser perdidas,

atrasadas ou entregues muito rapidamente para o destinatrio, masaquelas


que so entregues tm o seu contedo correto. Descreva as classes de
falhas que esto presentes nos dois servios. Algum dos serviosdescritos
pode ser considerado um servio de comunicao confivel? (Coulouris
Exerccio2.14)

ServioApodeter:
Falhasarbitrrias:
checksum nao se aplicar ao corpo da mensagem, o corpo da
mensagempodesercorrompido.
mensagensduplicadas.
Falhasdeomisso(mensagensperdidas)
Uma vez que o sistema distribudo queusado de forma assincrona,
elenopodesofrerdefalhasdetemporizao.
Validadenegadopormensagensperdidas
Integridade negado por mensagens corrompidas ou
duplicadas
ServioBpodeter:
Filhasdeomisso(mensagensperdidas,mensagensdropadas)
Uma vez que o sistema distribudo queusado de forma assincrona,
elenopodesofrerdefalhasdetemporizao.
Passa no teste de integridade, mas no no de validade, por conta
disso,naopodeserconsideradoconfivel.

12. Considere um par de processos XeY que usaoservio de comunicao B


da questo anterior para trocar informaes entre si. Suponha que X um
clienteeYumservidorequeumainvocaoconsistedeumarequisiode
X para Y, seguida do processamento da requisio por Y, seguida de uma
mensagem de resposta de YparaX.Descreva asclassesdefalhasqueuma
invocaopodeapresentarnessemodelo.(CoulourisExerccio2.15)

Umainvocaopodesofrercomasseguintesfalhas:
Falhas de crash: X ou Y podem crashar, ento,umainvocaopode
sofrercomfalhasdecrash.
Falhas de omisso: se o servio B sofrer com falhas de omisso, a
mensagemderequestoureplypodeseperder.

Potrebbero piacerti anche