You are on page 1of 3

Lista 03 – Sistemas Distribuídos

Lucas Mesquita R. Ferreira

1. O DNS (Domain Name System) utiliza o UDP, tendo em vista que se conecta
diferentes servidores para buscar um endereço solicitado, assim, a utilização do
protocolo diminui o custo que haveria em caso de realização de conexão com
cada um dos servidores consultados. Já o VOIP se utilizar do UDP no intuito de
aproveitar sua velocidade, uma vez que não se preocupa com a perda de alguns
pacotes através da realização de chamadas, visto que a perda não influencia de
forma significativa na compreensão das informações. O DHCP (Dynamic Host
Configuration Protocol) também se utiliza do UDP, onde sua utilização para
definição de IP em grande escala e em redes com constantes alterações na
topologia não necessita de conexões para envios de várias requisições por parte
dos clientes.

2.

a. Número de sequência, número de confirmação e TCP flags.

b. O UDP não implementa a ordenação dos pacotes no destino, e também


não confirma a chegada dos mesmos, sendo desnecessários tais campos
nesse protocolo. Sem esses campos, o UDP não possui a confiabilidade
que o TCP apresenta, ao ordenar e confirmar a chegada de pacotes.

3. A utilização de servidores de nomes ou de associação evita o problema que


ocorreria caso o serviço mudasse de nome e o cliente continuasse referenciando
o mesmo nome, através da transformação dos nomes em localizações quando em
execução.

4. Não, apesar de os dois protocolos serem não confiáveis, o IP pertence à camada


de rede, e tem como finalidade somente a entrega do pacote, enquanto o UDP
pertence à camada de transporte e encapsula o mesmo, com o UDP realizando a
soma de verificação, enquanto o IP não a realiza.

5. Os processos não podem compartilhar a mesma porta em uma mesma máquina,


isto é, cada processo utiliza a porta por vez, porém, um processo pode utilizar
diferentes portas e vários processos podem utilizar a mesma porta, aguardando
por sua liberação. Os endereços IP são referentes à dispositivos conectados à
rede, onde por conta da escalabilidade da rede, é definido um grande número de
endereços, a fim de responder a essa demanda, já as portas se referem a serviços
oferecidos, onde somente as 1000 primeiras são destinadas a serviços padrão,
estando as demais livres para uso.

6. A utilização de UDP é uma estratégia para minimizar o volume de dados de


resposta, visto que não ocorre a troca de mensagens para o estabelecimento de
um fluxo, bem como não há confirmação no que diz respeito ao recebimento dos
pacotes, já que o envio da resposta já funciona como confirmação, assim, a
ausência de tais mensagens minimiza o volume de dados. No RR, é armazenada
a resposta que o servidor dará ao cliente, já no RRA, há uma entrada adicional
que acusa o recebimento da resposta dada pelo servidor, que o permite apagar
deletar entradas referentes a essa solicitação de seu histórico, logo, nota-se que o
RRA utiliza maior armazenamento em prol de uma maior confiabilidade.

7. Não, já que na RPC comum o cliente e o servidor ficam bloqueados até a


resposta do servidor, já no exemplo proposto, o cliente ficaria livre para a
execução de outras requisições. Da mesma forma, no RPC comum, o servidor
não espera por aceitação do cliente quanto o recebimento da resposta.

8. Seriam alocados buffers no cliente e no servidor para o envio e recebimento das


mensagens, o que tornaria a comunicação assíncrona, uma vez que os processos
não ficariam bloqueados até a finalização das requisições.

9. A comunicação é mais direta, haja vista que não há pedido de conexão e nem
aceitação por parte de clientes e servidores. A comunicação consiste na
definição de um socket com IP e porta definidos no servidor e cliente, e a
realização de operações de envio e recebimento de solicitações e respostas, onde
não há um canal para a realização de várias requisições por parte de um cliente.

10. Sim, uma vez que há portas definidas com serviços padrão, onde diversos
processos podem realizar requisições com a utilização de tal porta, contudo, há
um custo inerente a utilização da mesma porta por vários processos, visto que a
utilização da porta é exclusiva, onde os processos devem aguardar para utilizá-
la.

11. Cliente:

Argumentos: 5ms

Send/receive: O cliente irá realizar um envio e receber uma resposta por


requisição => 0,5 ms x 2 = 1

Empacotamento/ Desempacotamento: O cliente irá realizar o


empacotamento e desempacotamento => 0,5 ms x 2 = 1

Total no cliente: 5 + 1 + 1 = 7 ms

Total no servidor: 10 ms

Transporte: Realizar o transporte de uma solicitação e uma resposta => 3 ms x 2


= 6 ms

Total por requisição: 7 + 10 + 6 = 23 ms

Como são realizadas duas requisições: 23 x 2 = 46 ms

12. O identificador de requisição é importante pois marca uma requisição com um


ID exclusivo, o que permite que em caso de demora do servidor para realizar a
resposta, requisições duplicadas realizadas pelo cliente sejam identificadas, onde
não são executadas por parte do servidor. A restrição ligada ao identificador de
requisição é que seu tempo de vida deve ser bem menor que o tempo no qual
seria possível esgotar o número de inteiros.

You might also like