Pedro Victor
Gerente de projetos na CEOS, EJ da ciência da computação UFC.
Redes de Computadores Integrantes: Antônio Anderson - 422029 Felipe Barros - 412983 Gustavo Marques - 414465 João Batista - 414644 Pedro Víctor - 417338
Cliente Servidor
P2P
Cliente Servidor
Cliente Servidor
ex:
Peer to Peer (P2P)
Peer to Peer (P2P)
ex:
Processos
Programas que são executados nos sistemas finais
Processos Clientes e processos Servidores
No contexto de uma sessão de comunicação entre um par de processos, aquele que inicia a comunicação é rotulado de Cliente.
O que espera ser contatado para iniciar a sessão é o servidor.
Socket
Interface entre a camada de aplicação e a de transporte dentro de um hospedeiro.
É também denominado interface de programação da aplicação (API) entre a aplicação e a rede
ex:
Um servidor Web é identificado pelo número de porta 80.
Um processo servidor de correio (usando o protocolo SMTP) é identificado pelo número de porta 25.
Protocolos da camada de transporte têm a responsabilidade de levar as mensagens de uma API a outra.
Muitos protocolos disponíveis, quais escolher?
Necessidades da Aplicação
X
Serviços disponíveis no protocolo
Analisar:
Analogia
Necessidade: Se deslocar do CC à Humberto Monte
Protocolos: Pegar o interno, ir a pé
Interno: Mais rápido, 7% de chances de ir sentado
A pé: Mais calmo, brisa do Açude da Agronomia
Quais serviços podem ser oferecidos?
Serviços de protocolos divididos em quatro dimensões
Transferência confiável de dados
Vazão
Temporização
Segurança
Transferência confiável de dados
Um pacote pode esgotar um buffer, ser descartado por um host ou um roteador
Ex.: aplicações financeiras, dados não podem ser perdidos
Recebimento de dados é garantido
O processo remetente é passado a API com a absoluta certeza de que chegará ao processo destinatário sem erros
Aplicações tolerantes a perda não
precisam desse serviço
Vazão
Vazão é a taxa pela qual o processo remetente pode enviar bits ao processo destinatário em bits/s.
No serviço de vazão, a aplicação exige uma taxa específica disponível.
Aplicações sensíveis a largura de banda
Podem usar técnicas para se adaptar a vazão disponíveis
Aplicações elásticas não
precisam desse serviço
Temporização
Exige um tempo mínimo de deslocamento de informações entre aplicações
Ex: Jogos Multiplayer
Segurança
Capaz de codificar todos os dados transmitidos entre o remetente e o destinatário
Sigilo, integridade de dados, autenticação do ponto terminal, entre outros serviços
Ex: Whatsapp, Telegram
A Internet disponibiliza dois protocolos de transporte para aplicações:
TCP
UDP
Cada um deles oferece um conjunto diferente de serviços para as aplicações solicitantes.
Qual protocolo usar?
Orientado a Conexão
Troca de informações de controle entre Cliente e Servidor (Apresentação)
Conexão só é feita após essa apresentação
Conexão Full Duplex
Conexão é interrompida quando o envio de mensagens é encerrado
Transporte Confiável
Envio de dados sem erro
Os dados chegam na ordem correta
Controle de Congestionamento
Não orientado à Conexão
Não há apresentação entre Cliente e Servidor
Não há controle da comunicação
Leve e Simplificado
Não há controle de congestionamento
Não há garantia da entrega dos dados
Dados podem chegar em qualquer ordem
Sem confiabilidade de transferência de dados
Vazão
Temporização
Garantia de entrega
Segurança
SSL
Originalmente, não são providos pelo TCP e UDP:
Email
Acesso à terminal remoto
Web
Transferências de arquivos
Multimídia em fluxo contínuo (Youtube)
TCP
UDP
Telefonia por internet (Skype)
Aprendemos que processos em redes comunicam-se via sockets. Mas...
Esses protocolos definem como um processo de uma aplicação em um End System passa mensagens para outros
Em espacial tais protocolos definem:
O tipo de mensagem trocada, se é de requisição (request) ou resposta (response)
A sintaxe da mensagem, como os campos que devem conter, e a semântica
Regras que determinam como os processos devem se comunicar
Alguns procolos da camada de aplicação são especificadas pela RFC (Request for Comments Internet Engineering Taskforce) e portanto são de domínio público.
Por exemplo, o HTTP (protocolo para Web), se um browser foi desenvolvido seguindos os padroes HTTP RFC, este browser estará apto a fazer requisições por paginas web
É importante notar que alguns protocolos são feitos com o propósito de não serem feitos para domínio público.
Por exemplo os protocolos de transferência de arquivos P2P.
Um protocolo da camada de aplicação é apenas um pedaço da rede de aplicação
Exemplos:
Um protocolo da camada de aplicação é apenas um pedaço da rede de aplicação
A Web é uma aplicação cliente-servidor que nos permite solicitar documentos, possui seu padrão de documentos (HTML), Browsers, Servidores e protocolo HTTP
O serviço de email possui servidores de envio, de recebimento e armazenamento (mailboxes), seus leitores e criadores de email e procolo SMTP (Simple Mail Transfer Protocol)
Redes de Computadores Integrantes: Antônio Anderson - 422029 Felipe Barros - 412983 Gustavo Marques - 414465 João Batista - 414644 Pedro Víctor - 417338
By Pedro Victor