Skip to content

About

Atividade: Comunicação com Sockets: UDP vs. TCP

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Calculadora Remota (UDP, TCP, Protobuf)

Implementação de um serviço cliente-servidor de operações matemáticas utilizando Sockets em Python para Atividade: Comunicação com Sockets: UDP vs. TCP.

Pré-requisitos

  • Python 3.8+
  • Compilador protoc instalado na máquina
  • Biblioteca protobuf para Python: pip install protobuf

1 - Execução Parte 3: Experimento e Análise

Executar e registrar as saídas geradas:

Teste 1 (UDP 0% de perda):

  1. Servidor: python calc_server_udp.py --loss-rate 0.0
  2. Cliente: python calc_client_udp.py

Teste 2 (UDP 10% de perda):

  1. Servidor: python calc_server_udp.py --loss-rate 0.1
  2. Cliente: python calc_client_udp.py

Teste 3 (UDP 30% de perda):

  1. Servidor: python calc_server_udp.py --loss-rate 0.3
  2. Cliente: python calc_client_udp.py

Teste 4 (TCP Padrão):

  1. Servidor: python calc_server_tcp.py
  2. Cliente: python calc_client_tcp.py

2 - Execução Parte 4: Implementação com Protocol Buffers (protobuf)

Antes de iniciar o servidor e o cliente, é obrigatório gerar o código Python a partir do esquema .proto.

  1. Compilar o Protobuf:
protoc --python_out=. calc.proto

(Isso gerará o arquivo calc_pb2.py no seu diretório)

  1. Executar o Servidor (Protobuf):
python calc_server_proto.py
  1. Executar o Cliente (Protobuf):
python calc_client_proto.py

3 - Resultados Da Execução:

Parte 3: Experimento e Análise

Execute o cliente 3 vezes contra o servidor UDP, variando a taxa de perda simulada: 0%, 10%,30%. Depois, execute uma vez contra o servidor TCP.

Para cada execução, registre:

Métrica / Registro 0% 10% 30% TCP PROTO
Tempo total da sequência completa 0.03 s 1.53 s 5.54 s 0.01 s 0.01 s
RTT médio 1.44 ms 76.48 ms 276.86 ms 0.08 ms 0.10 ms
RTT máximo 14.01 ms 512.45 ms 1507.05 ms 0.48 ms 0.59 ms
Número de retransmissões (apenas UDP) 0 3 11 x x
Requisições perdidas definitivamente (esgotou tentativas) 0 0 0 x x

Parte 4: Meça e registre o tamanho médio das mensagens (em bytes) e compare com o Protocolo textual da Parte 2.

tamanho médio das mensagens Parte 2: 39.85 bytes

tamanho médio das mensagens Parte 4: 41.80 bytes

About

Atividade: Comunicação com Sockets: UDP vs. TCP

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages