tecnologias www protocolos e aplicações

72
e-Commerce, Systems Performance Evaluation, and Experimental Development Laboratory Tecnologias WWW Tecnologias WWW Protocolos e Protocolos e Aplicações Aplicações Wagner Meira Jr.

Upload: dean

Post on 07-Jan-2016

23 views

Category:

Documents


0 download

DESCRIPTION

Tecnologias WWW Protocolos e Aplicações. Wagner Meira Jr. Protocolos. Acordo sobre comunicação Especifica Formato de mensagens Significado de mensagens Regras de intercâmbio Procedimentos em caso de problemas. Necessidade de Protocolos. Hardware é baixo nível - PowerPoint PPT Presentation

TRANSCRIPT

  • ProtocolosAcordo sobre comunicaoEspecificaFormato de mensagensSignificado de mensagensRegras de intercmbioProcedimentos em caso de problemas

  • Necessidade de ProtocolosHardware baixo nvelVrios problemas podem ocorrerDados corrompidos ou destrudosPacotes perdidosPacotes duplicadosPacotes chegam fora de ordem

  • Necessidade de Protocolos (2)Necessidade de um mecanismo para distinguir entre:Vrios computadores na redeVrias aplicaes em um computadorVrias cpias de uma aplicao em um computador

  • Conjuntos de protocolosCooperamCada protocolo resolve parte do problema de comunicaoOrganizado em nveis

  • Pilha de Protocolos OSINvel 1: FsicoPlataforma hardwareNvel 2: EnlaceQuadros de hardwareNvel 3: RedeEnvio de pacotesNvel 4: TransporteConfiabilidade

  • Pilha de Protocolos OSI (2)Nvel 5: SessoLogin e senhasNvel 6: ApresentaoRepresentao de dadosNvel 7: AplicaoPrograma de aplicao individual

  • Nveis e Software de ProtocolosSoftware de protocolos segue o modelo de nveisUm mdulo de software por nvelMdulos cooperamFluxo de dados passa de um mdulo para outroConjunto de mdulos conhecido como pilha

  • Princpio da Pilha

    Software implementando nvel N no destino recebe exatamente a mensagem enviada pelo software que implementa o nvel N na fonte.

  • Controle de FluxoJustificativa:Taxa de envio maior que taxa de recebimentoAplicao emissora mais rpida que aplicao receptoraRelacionada a buffering

  • Controle de Fluxo ``Stop-and-GoEmissorTransmite um pacoteEspera o sinal do recipienteReciptorRecebe e processa o pacoteSinaliza o emissorIneficiente: Latncia pode ser alta.

  • Controle de Fluxo atravs deJanela DeslizanteReceptor:Disponibiliza mltiplos buffers e avisa emissorEmissor:Transmite pacotes para todos os buffersApenas espera se no houver sinalizao aps a transmisso ser completadaReceptor:Sinaliza medida que pacotes chegam

  • CongestionamentoProblema fundamental em redesCausado por trfego, no falha de hardwareAnlogo a congestionamentos em estradasCausa bsica de atrasos

  • Evitando CongestionamentosControle de taxaRestringir taxa de transmissodo computador emissorda redeControle de taxa de redeMonitorar trfego de entradaDescartar pacotes acima da taxa aceitaTraffic shaping

  • Motivao para InternetLANsBaixo custoCobertura limitadaWANsAlto custoCobertura ilimitada

  • Heterogeneidade inevitvel

    Nenhuma tecnologia de redes a melhor para todas as necessidades.

  • Servios universaisConceito fundamental em redesPrecursor: sistema de telefoniaPares arbitrrios de computadores podem comunicarDesejvelDifcil em um mundo heterogneo

  • Heterogeneidade e Servios UniversaisIncompatibilidades entre redes:Propriedades eltricasSinalizaoCodificao de dadosFormato de pacotesEndereamento

  • ConsequnciaEmbora servios universais sejam desejveis, incompatibilidades entre o hardware de rede e enderaamento fsico impedem uma organizao de construir uma rede que inclua tecnologias arbitrrias.

  • Uma InternetInicia com redes heterogneasConecta as redes fsicasImplementa software que faz o sistema parecer homogneo

  • Conectando Redes HeterogneasSistema computacionalDedicadoEspecializadoTrabalha com LANs e WANsExemplosRoteadoresGateways

  • Arquitetura InternetObjetivosImperceptvelUniformePropsito geralUniversalAbstrato

  • Abstraindo HeterogeneidadeCriar rede virtualDetermineEsquema de endereamentoEsquema de assinalamento de nomesImplemente via software de protocolo tanto em mquinas quanto roteadores

  • Protocolo InternetAplicaoTransporteInternetInterfaces de redeFsico

  • Nveis TCP/IPNvel 1: FsicoHardware de redeNvel 2: Interface de RedeFormato de quadro MACEndereamento MACInterface entre o computador e a redeNvel 3: InternetFacilita enviar pacotes por caminhos que passam por mltiplos roteadores.

  • Nveis TCP/IPNvel 4: TransporteComunicao entre aplicaesNvel 5: AplicaoRestante...

  • Internet Protocol (IP)nico protocolo no nvel 3Pea fundamentalDefineEndereamentoFormato de pacotesRoteamento

  • Endereamento IPAbstraoIndependente do endereamento de hardwareUtilizado porProtocolos de nveis superioresAplicaes

  • Endereo IPVirtual: apenas significativo para softwareUsado para toda a comunicaoInteiro de 32 bitsValor nico para cada mquina

  • Motivao para pacotes IPUma vez que ele pode conectar redes heterogneas, um roteador no pode transmitir uma cpia do quadro que chega de uma rede atravs da outra. Para acomodar a heterogeneidade, uma Internet deve definir um formato de pacote independente de hardware.

  • Pacotes InternetAbstraoCriados e interpretados apenas por softwareContem endereos de origem e destinoTamanho depende dos dados sendo transmitidosChamado de datagrama IP

  • Tabelas de Roteamento

  • Roteamento de DatagramasExtrair o endereo de destino DVerificar D na tabela de roteamentoDeterminar prximo destino NEnviar datagrama para N

  • Conceito fundamentalO endereo de destino de um datagrama sempre se refere ao destino final. Quando um roteador envia o pacote para outro roteador, o endereo dos roteadores no consta do pacote.

  • Semntica IPIP um protocolo sem conexoDatagrama contem a identidade do destinoCada datagrama tratado independentementeRotas podem mudar a qualquer momento

  • Semntica IPIP permite que datagramas sejamatrasadosduplicadosperdidosrecebidos fora de ordemperdidosBest effort delivery: acomodar os vrios tipos de redes

  • Resolvendo EndereosHardware s reconhece endereos MACIP utiliza apenas endereos IPConsequncia:Software deve executar traduo !!

  • Resolvendo EndereosProtocolo nvel 2Dados:Uma rede NUm endereo IP C de uma mquina em NEncontrar o endereo MAC de CTcnica: Protocolo ARP

  • Protocolo ARP

  • Protocolos de TransporteNvel separado da pilha de protocolosConceitualmente entre:Aplicao IP

  • Funcionalidades de Protocolos de TransporteIdentifica aplicaes que enviam e recebemOpcionalmente prov:ConfiabilidadeControle de fluxoControle de congestionamento

  • User Datagram Protocol (UDP)Envio no confivelMinimiza:OverheadComputaoComunicaoIdeal para aplicaes LAN

  • Detalhes UDPInterface orientada a mensagens: protocolo sem conexoMensagem encapsulada em um datagramaCabealho UDP identifica:Aplicao emissoraAplicao receptora

  • Identificando uma aplicaoNo h como estender o endereo IPNo pode utilizar recursos dependentes de sistema operacional:Processo IDNmero de tarefaDeve funcionar em todos os sistemas

  • Identificando uma aplicaoNova abstrao:Usada apenas com TCP/IPIdentifica emissor e receptor unicamenteTcnica:Cada aplicao associada a um inteiro nico chamado porta.

  • Portas de protocoloServidorSegue padroSempre usa o mesmo nmero de portaUsa nmeros de porta baixosClienteObtem portas livres do software de protocoloUsa nmeros de porta altos

  • Transmission Control Protocol (TCP)Protocolo de transporte mais popular na InternetTransferncia confivel.

  • TCP: CaractersticasServio orientado conexoPonto-a-pontoComunicao full duplexInterface StreamSegmentaoUtiliza portas para identificar aplicaes

  • Relacionamento entre Protocolos

  • Aplicaes: FuncionalidadesNvel de transporte e abaixo:Comunicao bsicaConfiabilidadeNvel de aplicaoAbstraes (arquivos, nomes)Nomes

  • TarefasRedeTransfere dados em resposta a uma requisio de aplicaoAplicaesO que enviarQuando enviarPara onde enviarSignificado dos dados

  • Modelo Cliente-ServidorServidor: o primeiro a iniciarEspera por conexesClienteInicia execuo posteriormenteConecta-se ao servidor

  • Caractersticas do ClienteAplicao arbitrriaAtua como cliente de forma temporriaExecuta outras tarefasExecutado pelo usurioAtiva a conexo com o servidor

  • Caractersticas do ServidorPrograma privilegiado e altamente especializadoDedicado a um servioAtende a mltiplos clientesExecuta de forma pereneAceita conexes de clientes arbitrrios

  • Identificando um ServioCada servio associado a uma nica portaServidorInforma SO da utilizao de uma porta PEspera requisies chegarClienteMonta requisioEnvia requisio na porta P

  • Portas: Uso tericoPortas so apenas inteirosQualquer servidor pode utilizar qualquer porta

  • Portas: Uso PrticoNmeros das portas so usados como identificadores de servioDemanda numerao uniforme:Cliente sempre acessa servio na mesma portaEvita criao de diretriosNmeros de portaUniformizados Atribudos por organismos reguladores

  • Interface SocketOriginalmente:BSD UnixUso restrito a protocolos TCP/IPAtualmente:Padro de indstriaDisponvel em vrios sistemas operacionais

  • SocketAbstrao do sistema operacionalCriado dinamicamentePersiste apenas enquanto a aplicao executaReferenciado por um descritor

  • Socket: Cliente-Servidor

  • NomesComunicaes Internet requerem IPsNomes so preferveisDNS: sistema automtico para traduzir nomes para endereos

  • Obtendo um nomeOrganizaoEscolhe o nome, que deve ser nicoRegistra o nome na autoridade centralColocado sobre um domnio de primeiro nvelRestries legaisMarcas registradasDireitos autorais

  • Resoluo de NomeAplicaoEnvia requisio para o servidor DNSServidorSe sabe a resoluo, respondeSe no sabe, envia a requisio para servidor imediatamente superior

  • Exemplo de Hierarquias DNS

  • Replicao de NomesServidor sempre armazena as respostasCliente pode armazenar as respostasCaching:Melhora a eficinciaElimina buscas desnecessriasTrabalha bem baseado em localidade de referncia

  • Transferncia de ArquivosCpia de arquivos completosProtocolo: File Transfer Protocol (FTP)Usa TCPTransferncias binrias ou textoAt 1995 era a maior fonte de pacotes na Internet

  • Paradigma FTPInterface de linha de comandoUsurio: Cria conexo de controle com servidorRegistra no servidorEnvia comandos de controleServidorEstabelece uma conexo de dados por transferncia

  • HTTPProtocolo de transferncia de dados ASCIIMtodosGETHEADPOSTDELETEPUT

  • HTTPNo h noo de estado: requisies so independentesUma conexo TCP por requisioHTTP/1.1 - Conexes persistentesCdigos de erro estilo FTP

  • Requisio HTTPGET /index.html HTTP/1.0Accept: text/htmlIf-modified-since: Sat, 29 Oct 1994 19:43:31 GMTReferrer: www.org/index.html

  • Resposta HTTPHTTP/1.0 200 OKDate: Wed, 31 Jan 1996 20:45:17 GMTServer: NCSA/1.5Content-type:text/htmlContent-language: enLast-Modified: Wed, 31 Jan 20:00:00 GMT

    .....

  • Apache: Arquitetura