Escolar Documentos
Profissional Documentos
Cultura Documentos
Objetivos
Módulo 1
Camada de Aplicação
Com o modelo OSI cada um pode fornecer seu serviço específico dentro de x camada, gerando
vários fornecedores, competividade e liberdade ao cliente em escolher o produto. Adequando
sua rede com o que quer.
Arquitetura TCP/IP: inicialmente uma rede que se comunicava com bases militares no país.
Sobrevivendo qualquer evento, como guerra nuclear, sabendo se reconfigurar, encontrar
novos caminhos e funcionar de forma eficiente.
Protocolo nível de rede IP, função: encontrar os caminhos na rede e chegar ao seu destino.
Protocolo de transporte (TCP): dar confiabilidade. Tornando o caminho que o IP dará seguro.
Rede: fornecer serviço ao usuário. Estruturado em camadas, e cada camada fornece serviços à
camada superior.
Camada de Aplicação: fornece mecanismo para o Dev desenvolver aplicações. Funcionar como
Interface. Ponto de Entrada para os usuários. São executados os processos dos usuários.
Mais alto nível do modelo OSI, faz interface do sistema com o usuário.
Arquiteturas de Aplicações
Uma aplicação a ser executada em rede tem que possuir comandos/funções para comunicação
em rede pela linguagem de programação.
Servidor: oferece serviço, executando tarefas solicitadas, enviando uma resposta ao cliente.
Atender o requerimento caso esteja ocioso; Gerar um processo-filho(processo se duplica e
entrega sua cópia) para ser atendida mais tarde; Enfileirar a solicitação para ser atendida mais
tarde; Cria thread para o atendimento.
É recomendável servidores terem alto MTBF (mais confiável o dispositivo, evitando falhas). O
tipo de software instalado define se é cliente ou servidor. Um processo pode atuar como
cliente e servidor ao mesmo tempo.
As vezes o servidor vai precisar pegar uma informação em um BD externo. Ele enviará uma
mensagem ao servidor de BD. Atuando como cliente do servidor de bd.
Baseado na arquitetura peer-to-peer, este sistema permite que seus usuários compartilhem
arquivos sem haver a necessidade de eles estarem armazenados em um servidor.
Módulo 2
Para que uma aplicação possa trocar dados com a outra, é necessário definir um protocolo de
aplicação.
Protocolo de camada de aplicação define como processos de uma aplicação passa mensagens
entre si(sistemas diferentes).
Algoritmo da camada de aplicação dita o que fazer no ambiente local, o seu protocolo diz o
que é necessário para a aplicação trocar mensagens.
Protocolos públicos da internet são especificados por RFCs (Documentos públicas guardados
pela IETF, internet enginnering task force, grupo que identifica e propõe soluções a internet,
propõem padronização de tecnologias e protocolos. Qualquer pessoa pode acessar as
especificações dos protocolos e modificar, adicionar os próprios softwares.
HTTP (Hypertext Transfer Protocol): protocolo HTTP, serviço web. Protocolo padrão para
transferência de arquivos que compõem páginas web. Por meio dele que os dados transferem
entre você e os servidores.
Em 91, CERN idealizou uma maneira de diversos cientistas colaborarem por meio de
informações em hiterpextos. Conferência de Hypertext 91, demonstração pública.
Como funciona?
Etapa 1: Página web, documento em HTML. Pode conter imagens, vídeos(com ou sem som),
áudios etc. Se entra em uma pág web através de um hiperlink ou digitando. Para isso ocorrer,
tem o protocolo Cliente-servidor, onde um solicita o serviço, outro oferece o serviço e analisa
a solicitação.
HTTP é carregado pelo protocolo TCP, para garantir a chegada dos dados livre de problemas.
Solicitações:
Textos em formato ASCII(sinais gráficos, letras, pontuação, símbolos).
Inicia-se com a palavra GET(o host);
Insere página solicitada, protocolo e servidor a ser contatado.
Ao receber a solicitação, o servidor busca a página web solicitada, a transfere para o cliente e,
após confirmada a entrega, encerra a conexão.
TCP tem vários protocolos, por isso o cliente informa a versão quando for usar
Como o HTTP utiliza o TCP, não é necessário se preocupar com questões de confiabilidade na
entrega dos dados. Ele é um protocolo em constante evolução, havendo atualmente várias
versões em uso. Por isso, o cliente deve informar a versão do protocolo a ser usado quando
solicita uma página web.
Correio Eletrônico (E-mail)
MIME (Multipurpose internet Mail Extensions) solucionou esses problemas. Usa o formato RFC
822, nova estrutura para o corpo da msg, definiu outras regras para mensagens especiais.
Protocolo de Transmissão Simple Mail Transfer Protocol (SMTP) definido pela RFC 5321,
enquanto o formato da mensagem é pela RFC 5322.
1 – Agente do Usuário: programa que faz a interface do usuário com o sistema de correio
eletrônico.
Exemplo prático:
Usuário1 escreve sua mensagem em seu Agente do Usuário e envia a mensagem. Do Agente
do Usuário, vai para o Agente de Transferência de Mensagem, que recebe e analisa a
mensagem, para mandar ao Agente de Usuário de Usuário2. Quando a mensagem chega ao
Agente de Usuário, ela fica armazenada em sua caixa de mensagem.
POP3 (Post Office protocol Version 3): baixa as mensagens que estão no emailbox do
destinatário. Pode usar a mensagem caso ela estiver no mesmo sistema e offline. Permite
download seletivo.
IMAP(Internet Message Access Protocol): da acesso às mensagens guardadas em sua caixa
postal. IMAP permite a leitura das mensagens diretamente do servidor, sem precisar fazer
download.
WEBMAIL NÃO É PROTOCOLO, mas permite ler sua mensagem do emailbox diretamente do
site.
Domínio controla a cria de subdomínios. Permissão do domínio principal para criar outro.
Pode ter vários subdomínios. Letra maiúsculas e minúsculas são os mesmos. Pode ter até 63
caracteres o componente, mas o caminho completo não pode passar de 255.
DNS implementado sobre o protocolo UDP (User Datagram Protocol), nível transporte, mas
não garante que os dados cheguem ao destino. DNS garante então, uma comunicação
confiável.
Resolução de Nomes – Espaços de nomes divididos em zonas e possuem um “servidor de
nomes”.
Servidor de nomes principal: ele faz o repasse das zonas para os servidores de nomes
secundários;
Servidor de nomes secundário: Responde pelas zonas caso haja uma falha do servidor
de nomes principal.
Servidores de aplicações podem estar espalhados por todo o mundo, cada um deles com o
próprio endereço. Dessa forma, o protocolo da camada de aplicação não pode determinar em
qual endereço de rede o servidor está localizado.
O HTTP é o protocolo utilizado para transferência de páginas web. Ele não é usado como
protocolo de correio eletrônico.
Camada de Transporte
Promove um serviço confiável; ela faz comunicação entre as aplicações; Comunicação do tipo
lógica; não importa a distância, as aplicações podem ser comunicar, isso inclui roteadores,
switches, ISP’s, redes. Seus protocolos são implementados nos sistemas finais.
Essa camada pega dados (segmentos) da camada superior e, esses segmentos vão para a
camada de rede e inseridas em datagramas (bloco de informações).
Serão enviadas e irão se comunicar nos roteadores, enlaces e navegarão pela rede, estes que
leem os datagramas.
Quando os dados chegam, é o datagrama que será extraído ao usuário, pela rede do
destinatário, extração essa que traz consigo os segmentos, da camada de transporte, que vão
ser destinados aos processos corretos, por meio das informações do cabeçalho.
Serviço de Transporte
OBS: ESTAMOS USANDO COMO BASE, A ARQUITETURA TCP/IP, QUE NÃO CONTÉM AS
CAMADAS SESSÃO E APRESENTAÇÃO.
Para isso, ela utiliza serviços oferecido pela camada de Rede. Serviço de Transporte Orientado
à Conexão contém três fases:
A rede oferece um serviço um protocolo que pode vir com erros pelo melhor desempenho, de
forma rápida e simples. O com conexão pode acontecer um “overhead” (sobrecarga no
sistema), pois se tiver erros, vai ficar retransmitindo, acumulando etc.
Telefonia em rede é melhor usar Serviço de Transporte sem conexão. É pior ter atraso na
transmissão.
Endereçamento: solicita algo a um servidor, sistema envia mensagem a aplicação, ela executa
em um host remoto.
Endereçamento no nível de transporte: determina o tipo de aplicação a mensagem vai ser
destinada.
Multiplexação e demultiplexação
Multiplexação
Um processo pode ter um ou mais endereços de transporte (portas), dados passam pela rede
para o processo.
TCP pode identificá-las. Quando o browser envia uma solicitação a um servidor web, o TCP
coloca na informação enviada o número de porta 11278.
Módulo 4
UDP: simples e ótimo quando a aplicação requer uma entrega rápida. Trás boa agilidade de
entrega.
TCP (Protocolo de transporte completo): Garante que as mensagens sejam entregues livres de
erros, em ordem, dando confiabilidade, não importando qualidade da rede.
Porta origem e destino: identificar os processos nas máquinas origem e destino. Quando uma
aplicação A deseja enviar dados para uma B, o UDP coloca o número da porta da aplicação
origem (A) no campo “porta origem” e o de porta da aplicação (B) em “porta destino”. É por
meio disso que o UDP realiza a multiplexação e demultiplexação.
“Para tanto, o UDP calcula o CRC dela e o envia neste campo. No destino, o CRC é novamente
calculado e comparado. Se ambos forem iguais, a mensagem é considerada livre de erros e
entregue na aplicação destino.”.
Aplicações que utilizam UDP podem ter garantia de entrega. Programador cuida disso.
DNS
SNMP
TFTP
RPC
TCP: orientado a conexão, para aplicações para trocar grandes quantidades de dados por meio
de uma rede com múltiplos roteadores.
Oferece fluxo de bytes, pode ser usado em redes de baixa qualidades, pode dividir até
64Kbytes em datagrama IP diferentes. Quando eles chegam com dados TCP ao hospedeiro
final, TCP restaura o seu fluxo ao original.
Conexão TCP
Ponto a Ponto: ligação direta entre 2 hospedeiros apenas. Ex: celular conextar-se em um pc.
Apenas eles podem se falar por meio do cabo de dados para trocar informações.
Uma conexão TCP é um fluxo de dados, e não de mensagens. Caso aplicação manda dados
para a entidade TCP, ela pode enviar logo ou guardar em um buffer (aloca dados na memória
temporária).
Quando envia um segmento, aciona um temporizador, caso não haja confirmação do TCP
receptora, para retornar um segmento, o segmento transmissor será retransmitido.
Selective Repeat: repetição repetitiva. Ex: se tiver 3 falhas e elas são reconhecidas, select vai
retransmitir.
Go back n: sempre que houver um erro, e o transmissor perceber esse erro, ele volta todos os
dados e transfere tudo novamente. Transferência maior de dados.
Cabeçalho TCP: formato fixo de 20bytes com opções. Depois das opções, pode ter 65.515
bytes de dados.
Conexões TCP usam o método “three way handshake”. De um lado espera e do outro, solicita
uma conexão especificando o endereço de rede (IP) e a portal com a qual quer se conectar.
TCP bitSYN, bit ACK, bit RST
Os segmentos SYN e SYN+ACK não podem transportar dados, porém consomem um número
de segmento.
Apesar de conseguir fazer esse transporte, ACK só consumirá tal número quando ele surgir.
Encerrar conexão é só enviar um segmento com bit FIN ativado. Os dados continuarão fluindo
em outra direção. Quando as duas direções da conexão são desativadas, ela, por fim, é
encerrada.
Portas Conhecidas: Aplicação acessar outra, remota, tem que conhecer o endereço do
hospedeiro. Como o protocolo de transporte do destino consegue saber para qual de suas
aplicações deve entregar a mensagem? A resposta é o conceito de porta, que é responsável
por identificar a aplicação no destino.
Identificar porta
2 saídas:
1-