Você está na página 1de 7

UNIVERSIDADE INDEPENDENTE DE ANGOLA

FACULDADE DE CIÊNCIA E TECNOLOGIA


LICENCIATURA EM ENGENHARIA INFORMÁTICA

TRABALHO DE INVESTIGAÇÃO EM GRUPO DE SISTEMAS DISTRIBUIDOS

TEMA: SOCKETS TCP VS UDP

Grupo Número 10

Turma: A1

Turno: Manhã

Docente: Maria Teca

Luanda 2019
UNIVERSIDADE INDEPENDENTE DE ANGOLA
FACULDADE DE CIÊNCIA E TECNOLOGIA
LICENCIATURA EM ENGENHARIA INFORMÁTICA

TRABALHO DE INVESTIGAÇÃO EM GRUPO DE SISTEMAS DISTRIBUIDOS

TEMA: SOCKETS TCP VS UDP

DISCENTES:

Zenilda Sebastião - 171500

Aurora da Fonte - 170611


INTRODUÇÃO
Para estabelecer a Comunicação Interprocesso nos Sistemas Distribuídos, para permitir
que processos se comuniquem na troca de dados ou acessos a recursos ou serviços em
processadores remotos, se faz necessário o uso de um mecanismo de serviços de
transporte.

Um dos mecanismos mais utilizado é o Socket. Sockets é a maneira mais popular de


utilizar as funcionalidades de comunicação TCP/IP.

Todos os mecanismos Sockets são gerenciados pela camada de transporte. Existem


diversas APIs Sockets (Application Program Interface) e as mais populares são do
ambiente Unix, bem como a WinSock do Windows.
FUNDAMENTAÇÃO DA TEORIA

Socket
Um Socket é um ponto final (endpoint) de um canal bidirecional de comunicação entre
dois programas rodando em uma rede;

 Cada Socket tem os seguintes endereços de endpoint:


 Endereço local (número da porta) que refere-se ao endereço da porta de
comunicação para camada de transporte;
 Endereço global (nome host) que refere-se ao endereço do computador (host) na
rede.

SOCKETS E PORTAS

CONEXÃO

O servidor apenas fica “ouvindo” o Socket aguardando um pedido de conexão do


cliente;

O cliente sabe o nome do host e qual porta está associada à aplicação servidora;

Assim que o servidor aceitar a conexão, este cria um novo Socket (e conseqüentemente
o associa a uma nova porta) e pode ficar esperando novas conexões no Socket original
enquanto atende às requisições do cliente pelo novo Socket.
Protocolos TCP e UDP

 Protocolos de Transporte TCP e UDP;


 Ambos utilizam a camada IP como camada de Rede.

Protocolos UDP

User Datagram Protocol (UDP):

 Protocolo não orientado à conexão;


 Não há garantia de entrega dos dados (não há mensagens de confirmação);
 Perdas durante as transmissões não são tratadas por este protocolo;
 Usado em redes com alta confiabilidade, onde as taxas de perda são baixas;

Exemplo

Vamos a um exemplo comum. Imaginem que vão usar streaming de vídeo e áudio
através da Internet e usam o Skype como aplicação. Se estabelecerem uma ligação com
um amigo vosso, vão notar que existem muitos pacotes na transmissão que se perdem…
ouvem aquele barulho normal aquando das transmissões…”bluuup” ou a perda/bloqueio
de imagem por alguns ms (milisegundos), o que é perfeitamente aceitável.

Não teria muita lógica que a meio dessa transmissão a vossa aplicação parasse o
streaming e fosse solicitar ao recetor pacotes perdidos, simplesmente começávamos
uma conversa e a meio iríamos receber informações provavelmente daquilo que falamos
no início.

Não é muito normal encontrar aplicações que usem exclusivamente o protocolo UDP,
usando o exemplo do streaming existe sempre o recurso ao TCP para trocar informações
de controlo, libertando o UDP apenas para o envio da informação.
Protocolos TCP

 Transmission Control Protocol (TCP):


 Protocolo orientado à conexão;
 Para haver a transmissão dos dados, uma fase de conexão entre as duas entidades
que se comunicam precisa ser feita;
 Fase de Conexão → Fase de Transmissão dos Dados → Fase de Desconexão;

Exemplo

Considerem por exemplo que querem transmitir um filme ou um ficheiro com um jogo
que ocupa 800 MB. Esse ficheiro terá de ser partido em partes mais pequenas
(fragmentação), para que seja viável a sua transferência para outro PC. Recorrendo ao
protocolo TCP existe a garantia que todos os pacotes serão entregues e ordenados
do outro lado (uma vez que podem seguir caminhos diferentes).

Além disso, por cada pacote ou conjunto de pacotes (previamente definido), a máquina
de destino confirma que recebeu essa informação ao emissor e, no caso de falha de
algum pacote, a máquina de destino procede ao emissor o pedido de retransmissão do(s)
pacote(s) em falta.

Já pensaram se na transmissão do ficheiro do filme ou jogo de (800 MB) faltassem por


exemplo apenas 2 k???? … o recetor simplesmente não iria conseguir abrir esse ficheiro
recebendo provavelmente a mensagem “ficheiro corrompido”.

Comunicação Cliente/Servidor

É necessário um protocolo que, utilizando um mecanismo de transporte (e.g. TCP ou


UDP), permita a conversação entre cliente e servidor.

Servidor:

 Efetua a criação de um Socket;


 Associa o Socket a um endereço local;
 Aguarda por conexões da parte cliente;
 Aceita conexões;
 Lê requisições;
 Opcionalmente envia resposta;
 Fecha o Socket.

Cliente:

 Efetua a criação do Socket;


 Estabelece a conexão;
 Envia a requisição;
 Opcionalmente aguarda resposta;
 Fecha o Socket.
CONCLUSÃO

Concluímos que uma das tecnologias/mecanismos mais comuns para comunicação entre
máquinas é os sockets. Socket é um mecanismo de comunicação, usado normalmente
para implementar um modelo cliente/servidor, que permite a troca de mensagens entre
os processos de uma máquina/aplicação servidor e de uma máquina/aplicação cliente.

Um dos mecanismos mais utilizado é o Socket. Sockets é a maneira mais popular de


utilizar as funcionalidades de comunicação TCP/IP ondetTodos os mecanismos são
gerenciados pela camada de transporte.

Você também pode gostar