Você está na página 1de 8

TRABALHO SOBRE PROTOCOLOS DE REDE

Marcelo de Agostini Junior

Londrina 2011

Protocolo HTTP HTTP significa Hypertext Transfer Protocol ou Protocolo de Transferncia de Hipertexto. um protocolo baseado no TCP / IP que utilizado para transferir praticamente todos os tipos de arquivos e outros dados, coletivamente chamados de recursos, na World Wide Web. Esses recursos poderiam ser arquivos HTML, arquivos de imagem, os resultados de uma consulta ou qualquer outra coisa. Um navegador funciona como um cliente HTTP porque ele envia pedidos para um servidor HTTP, que chamado de servidor Web. O servidor de Hospedagem de sites envia respostas de volta para o cliente. A porta padro para servidores HTTP a porta 80, mas pode ser alterado para qualquer outra porta como 8080, etc. H trs coisas importantes sobre HTTP que devemos saber: Conexo HTTP: Depois de uma solicitao ser feita, o cliente se desconecta do servidor e aguarda uma resposta. O servidor deve restabelecer a conexo depois de processar o pedido. HTTP mdia independente: Qualquer tipo de dados pode ser enviado por HTTP, o cliente e o servidor devem saber como lidar com o contedo dos dados. Isto determinado pela especificao MIME. HTTP stateless: O servidor web e o cliente esto cientes entre si, apenas durante uma requisio. Posteriormente, cada um "esquece" do outro. Por esta razo, nem o cliente nem o navegador podem reter a informao entre diferentes requisies atravs das pginas da web. A estrutura das mensagens Como a maioria dos protocolos de rede, HTTP utiliza o modelo cliente-servidor: um cliente abre uma conexo HTTP e envia uma mensagem de solicitao para um servidor HTTP, o servidor retorna uma mensagem de resposta que geralmente contm o recurso que foi solicitado. Depois de entregar a resposta, o servidor fecha a conexo. Protocolo ARP Podemos definir o protocolo ARP, um acrnimo de Address Resolution Protocol,ele e um protocolo usado para encontrar um endereo Ethernet (MAC) a partir do endereo IP,em outras palavras quem caracteriza e relaciona o endereo IP ao endereo MAC. Como ele funciona: Consiste no envio de um frame em broadcasting com endereo IP do destino, o qual responde com um datagrama contendo o seu endereo IP e o endereo fsico. A mquina que gerou o broadcasting passa a usar o endereo fsico do destino para enviar seus datagramas. O emissor difunde em broadcast um pacote ARP contendo o endereo IP de outro host e espera uma resposta com um endereo MAC respectivo. Cada mquina mantm uma tabela de resoluo em cach para reduzir a latncia e carga na rede. O ARP permite que o endereo IP seja independente do endereo Ethernet, mas apenas funciona se todos os hosts o suportarem. O ARP pode trabalhar com outras camadas de enlace, alm do Ethernet e outras camadas de rede, alm do Protocolo IP. A alternativa para as mquinas que no suportem ARP um pr-mapeamento (esttico) dos endereos. Ao processo inverso d-se o nome de RARP (Reverse ARP). Cache ARP: Em uma rede de grande porte e ocupada, o envio de pacotes em broadcasting interromper todos os hosts para que eles processem cada pacote da rede. Essa interrupo prejudicar de maneira significativa a eficincia da rede e a tornaria mais lenta. Para reduzir os broadcasts, os hosts de redes que necessitam utilizar o ARP mantm uma lista de endereos IP e Ethernet que correspondem a eles obtidos por solicitaes anteriores. Isto listado como Cache ARP e atualizado sempre que uma solicitao for enviada. Depois de algum tempo o endereo no ARP Cache removido, independentemente de estar sendo usado ou no. Isto chamado de Aging. ARP As mensagens ARP devem ser transmitidas nos frames. Para identificar se os frames ARP esto carregando o pedido (request) ou a resposta, o campo do tipo do cabealho (header) recebe um valor

especfico, e a mensagem ARP enviada no campo dos dados. Quando o frame recebido, o host checa o tipo de frame para determinar seu contedo. Protocolo IP IP um acrnimo para a expresso inglesa "Internet Protocol" (ou Protocolo de Internet), que um protocolo usado entre duas mquinas em rede para encaminhamento dos dados. Os dados numa rede IP, so enviados em blocos referidos como pacotes ou datagramas (os termos so basicamente sinnimos no IP, sendo usados para os dados em diferentes locais nas camadas IP). Em particular, no IP nenhuma definio necessria antes do host tentar enviar pacotes para um host com o qual no comunicou previamente. O IP oferece um servio de data gramas no confivel (tambm chamado de melhor esforo); ou seja, o pacote vem quase sem garantias. O pacote pode chegar desordenado (comparado com outros pacotes enviados entre os mesmos hosts), tambm podem chegar duplicados, ou podem ser perdidos por inteiro. Se a aplicao precisa de confiabilidade, esta adicionada na camada de transporte. Os routers so usados para reencaminhar datagramas IP atravs das redes interconectadas na segunda camada. A falta de qualquer garantia de entrega significa que o desenho da troca de pacotes feito de forma mais simplificada. (Note que se a rede cai, reordena ou de outra forma danifica um grande nmero de pacotes, a performance observada pelo utilizador ser pobre, logo a maioria dos elementos de rede tentam arduamente no fazer este tipo de coisas - melhor esforo. Contudo, um erro ocasional no ir produzir nenhum efeito notvel.) O IP o elemento comum encontrado na internet pblica dos dias de hoje. descrito no RFC791 da IETF, que foi pela primeira vez publicado em Setembro de 1981. Este documento descreve o protocolo da camada de rede mais popular e atualmente em uso. Esta verso do protocolo designada de verso 4, ou IPv4. O IPv6 tem endereamento de origem e destino de 128 bits, oferecendo mais endereamentos que os 32 bits do IPv4. Formato do Cabealho do IPv4 O primeiro campo do header (ou cabealho) de um datagrama IPv4 o campo de version (ou verso) de 4 bits. O segundo campo, de 4 bits, o IHL (acrnimo para Internet Header Length, ou seja, Comprimento do Cabealho da Internet) com o nmero de words de 32 bits no cabealho IPv4. Como o cabealho IPv4 pode conter um nmero varivel de opes, este campo essencialmente especifica o offset para a poro de dados de um datagrama IPv4. Um cabealho mnimo tem 20 bytes de comprimento, logo o valor mnimo em decimal no campo IHL seria 5. No RFC791, os 8 bits seguintes so alocados para um campo tipo de Servio (ToS) agora DiffServ e ECN. A inteno original era para um host especificar uma preferncia para como os datagramas poderiam ser manuseados assim que circulariam pela rede. Por exemplo, um host pode definir o campo de valores do seu ToS dos datagramas IPv4 para preferir pequeno desfaamento de tempo (ou "delay"), enquanto que outros podem preferir alta fiabilidade. Na prtica, o campo ToS no foi largamente implementado. Contudo, trabalho experimental, de pesquisa e desenvolvimento se focou em como fazer uso destes oito bits. Estes bits tm sido redefinidos e mais recentemente atravs do grupo de trabalho do DiffServ na IETF e pelos pontos de cdigo do Explicit Congestion Notification (ECN) codepoints (ver RFC 3168). O campo de 16 bits seguinte do IPv4 define todo o tamanho do datagrama, incluindo cabealho e dados, em bytes de 8 bits. O datagrama de tamanho mnimo de 20 bytes e o mximo 65535. O tamanho mximo do datagrama que qualquer host requer para estar apto para manusear so 576 bytes, mas os hosts mais modernos manuseiam pacotes bem maiores. Por vezes, as subredes impem restries no tamanho, em cada caso os datagramas tm que ser fragmentados. A fragmentao manuseada quer no host quer no switch de pacotes no IPv4, e apenas no host no caso do IPv6. O campo seguinte de 16 bits um campo de identificao. Este campo usado principalmente para identificar fragmentos identificativos do datagrama IP original. Alguns trabalhos experimentais sugerem

usar o campo IP para outros propsitos, tais como adicionar pacotes para levar a informao para datagrama, de forma a que ajude a pesquisar datagramas para trs com endereos fonte falsificados. O campo de 3 bits que segue usado para controlar ou identificar fragmentos. O campo offset do fragmento tem 13 bits, e permite que um receptor determine o stio de um fragmento em particular no datagrama IP original. Um campo de 8 bits, o TTL (time to live, ou seja, tempo para viver) ajuda a prevenir que os datagramas persistam (ex. andando aos crculos) numa rede. Historicamente, o campo TTL limita a vida de um datagrama em segundos, mas tornou-se num campo de contagem de hops. Cada switch de pacotes (ou router) que um datagrama atravessa decrementa o campo TTL em um valor. Quando o campo TTL chega a zero, o pacote no seguido por um switch de pacotes e descartado. Um campo de Protocolo de 8 bits segue-se. Este campo define o protocolo seguinte usado numa poro de dados de um datagrrama IP. A Internat Assigned Number Authority mantm uma lista de nmeros de protocolos. Os protocolos comuns e os seus valores decimais incluem o Protocolo ICMP (Internet control message protocol, ou seja, Protocolo de controlo de mensagens da Internet) (1), o Protocolo TCP (Transmission Control Protocol, ou seja, Protocolo de controlo de transmisso) (17). O campo seguinte um campo de verificao (checksum) para o cabealho do datagrama IPv4. Um pacote em trnsito alterado por cada router (hop) que atravesse. Um desses routers pode comprometer o pacote, e o checksum uma simples forma de detectar a consistncia do cabealho. Este valor ajustado ao longo do caminho e verificado a cada novo hop. Envolve apenas verificao do cabealho (no dos dados). Encapsulamento IP: O endereo de origem no cabealho IP ir indicar ir indicar a quem dever ser enviada a resposta do protocolo encapsulado neste caso o TCP. A seguir ao campo de verificao, seguem-se os endereo de origem e de destino, de 32 bits cada um. Note que os endereos IPv6 de origem e destino so de 128 bits cada. Campos do cabealho adicionais (chamados de options, opes) podem seguir o campo do endereo de destino, mas estes no so normalmente usados. Os campos de opo podem ser seguidos de um campo de caminho que assegura que os dados do utilizador so alinhados numa fronteira de words de 32 bits. (No IPv6, as opes movem-se fora do cabealho standard e so especificados pelo campo Next Protocol, semelhante funo do campo "Protocolo" no IPv4.) Endereamento IPv4 e routing Talvez os aspectos mais complexos do IP sejam o endereamento e o routing. O endereamento define como os endereos IP dos hosts finais so atribudos e como as subredes dos endereos de IP dos hosts so divididos e agrupados. O routing IP feito por todos os hosts, mas mais comumente por routers de rede, que tipicamente usam quer protocolos IGP (do ingls, Interior Gateway Protocol) ou protocolos EGP (do ingls, External Gateway Protocol) para ajudar na leitura de datagramas IP que reencaminhem decises atravs de IPs em redes ligadas. Talvez o aspecto mais complexo do protocolo Internet (IP) sejam o endereamento e routing. DNS O DNS (Domain Name System) e um esquema de gerenciamento de nomes, hierrquico e distribudo. O DNS define a sintaxe dos nomes usados na Internet, regras para delegao de autoridade na definio de nomes, um banco de dados distribudo que associa nomes a atributos (entre eles o endereo IP) e um algoritmo distribudo para mapear nomes em endereos. O DNS e especificado nas RFCs 882, 883 e 973. As aplicaes normalmente utilizam um endereo IP de 32 bits no sentido de abrir uma conexo ou enviar um datagrama IP. Entretanto, os usurios preferem identificar as maquinas atravs de nomes ao invs de nmeros. Assim e necessrio um banco de dados que permita a uma aplicao encontrar um endereo, dado que ela conhece o nome da maquina com a qual se deseja comunicar. Um conjunto de servidores de nomes manterem o banco de dados com os nomes e endereos das maquinas conectadas a Internet.

Na realidade este e apenas um tipo de informao armazenada no domin system (sistema de domnios). Note que e usado um conjunto de servidores interconectados, ao invs de um nico servidor centralizado. Existem atualmente tantas instituies conectadas a Internet que seria impraticvel exigir que elas notificassem uma autoridade central toda vez que uma maquina fosse instalada ou trocasse de lugar. Assim, a autoridade para atribuio de nomes e delegada a instituies individuais. Os servidores de nome formam uma rvore, correspondendo estrutura institucional. Os nomes tambm adotam uma estrutura similar. Um exemplo tpico e o nome chupeta.jxh.xyz.br. Para encontrar seu endereo Internet, pode ser necessrio o acesso a ate quatro servidores de nomes. Inicialmente deve ser consultado um servidor central, denominado servidor raiz, para descobrir onde esta o servidor br. O servidor br e o responsvel pela gerencia dos nomes das instituies/empresas brasileiras ligadas a Internet. O servidor raiz informa como resultado da consulta o endereo IP de vrios servidores de nome para o nvel br (pode existir mais de um servidor de nomes em cada nvel, para garantir a continuidade da operao quando um deles para de funcionar). Um servidor do nvel br pode ento ser consultado, devolvendo o endereo IP do servidor xyz. De posse do endereo de um servidor xyz e possvel solicitar que ele informe o endereo de um servidor jxh, quando, finalmente, pode-se consultar o servidor jxh sobre o endereo da maquina chupeta. O resultado final da busca e o endereo Internet correspondente ao nome chupeta.jxh.xyz.br Cada um dos nveis percorridos e referenciado como sendo um domnio. O nome completo chupeta.jxh.xyz.br e um nome de domnio. Na maioria dos casos, no e necessrio ter acesso a todos os domnios de um nome para encontrar o endereo correspondente, pois os servidores de nome muitas vezes possuem informaes sobre mais de um nvel de domnio o que elimina uma ou mais consultas. Alm disso, as aplicaes normalmente tem acesso ao DNS atravs de um processo local (servidor para as aplicaes e um cliente DNS), que pode ser implementado de modo a guardar os ltimos acessos feitos, e assim resolver a consulta em nvel local. Essa abordagem de acesso atravs de um processo local, simplifica e otimiza a tarefa das aplicaes no que tange ao mapeamento de nomes em endereos, uma vez que elimina a necessidade de implementar, em todas as aplicaes que fazem uso do DNS, o algoritmo de caminhamento na arvore de domnios escrito anteriormente. O DNS no se limita a manter e gerenciar endereos Internet. Cada nome de domnio e um no em um banco de dados, que pode conter registros definindo varias propriedades. Por exemplo, o tipo da maquina e a lista de servios fornecidos por ela. O DNS permite que seja definido um alias (nome alternativo) para o no. Tambm e possvel utilizar o DNS para armazenar informaes sobre usurios, listas de distribuio ou outros objetos. O DNS e particularmente importante para o sistema de correio eletrnico. No DNS so definidos registros que identificam a maquina que manipula as correspondncias relativas a um dado nome, identificado assim onde um determinado usurio recebe suas correspondncias. O DNS pode ser usado tambm para definio de listas para distribuio de correspondncias Protocolo RTP

O RTP (Real-time Transfer Protocol) um protocolo de transporte implementado na camada de aplicao. Para aplicaes multimdia em tempo real foi criado um protocolo genrico para as diversas aplicaes de udio e vdeo. O RTP executado sobre o UDP, que um protocolo rpido, simples, sem conexo e que combinado com o RTP capaz de multiplexar os diversos fluxos de informaes multimdia, sobre um nico fluxo de pacotes UDP. O RTP um protocolo que prov o transporte fim-a-fim das informaes multimdia, fazendo uma interface entre a camada de aplicao e de transporte. Os cabealhos dos protocolos de transporte no fornecem nenhuma informao sobre o tempo de transmisso dos pacotes. Essas informaes possibilitam ao receptor tentar compensar atrasos, tais como o jitter e a latncia.

O RTP tem no seu cabealho tem um campo especifico para as informaes de tempo (timestamp), em destaque na figura a seguir. Essas informaes so usadas para determinar o jitter e outros atrasos na rede.

Figura 8: Cabealho RTP. Para monitorar a qualidade de servio o RTP faz uso de um protocolo de controle chamado RTCP (Real Time Control Protocol). Esse protocolo no transporta quaisquer dados e a sua principal funo fornecer feedback sobre as informaes de propriedade de rede (controle de fluxo e congestionamento) para os participantes de uma conferncia multimdia. Os pacotes de controle carregam uma identificao (CNAME - canonical name) que associa os dados transferidos aos seus participantes. Para tornar o controle mais eficiente todos os participantes da conferncia enviam pacotes RTCP periodicamente, sendo que o consumo de banda desses pacotes no deve superar 5% da banda consumida pela sesso (Gouveia, 2003). O RTCP usa o mesmo mtodo de envio dos pacotes RTP, porm em porta UDP diferente. Esse protocolo envia periodicamente aos participantes de uma sesso as informaes de controle. As fontes RTP podem usar essa informao para ajustar a sua taxa de comunicao, enquanto que outros receptores podem determinar se os problemas na qualidade do servio so locais ou gerais. A combinao RTP e RTCP no garante a entrega de pacotes e nenhum mecanismo de qualidade de servio, no entanto possibilita o controle da qualidade observada na rede. Permite acompanhar o fluxo de bits, a quebra dos blocos de dados em pacotes, a transmisso pela rede, a reproduo do fluxo de bits no receptor e, para minimizar o nmero de pacotes perdidos, o protocolo transporta informaes de temporizao possibilitando que o receptor tente compensar o atraso.

Protocolo SIP

O SIP (Session Initiation Protocol) um protocolo de controle para criao, modificao e finalizao de sesses multimdia e chamadas telefnicas com um ou mais participantes. Os participantes podem ser convidados para sesses do tipo unicast e multicast. O SIP pode convidar usurios para participar de uma nova sesso ou para uma sesso multimdia j existente. Ele tambm incorpora o conceito de nmeros de portas fixas para todos os dispositivos e permite o uso de servidores Proxy, com a preocupao de segurana da rede interna. O SIP baseado em texto o que permite sua fcil implementao com linguagens como: Java, Pearl e outras. O SIP tem arquitetura similar ao protocolo HTTP (Cliente/Servidor), ou seja, todas as requisies geradas pelos clientes so enviadas ao servidor. O servidor processa as requisies e ento envia as respostas aos clientes. Os servios do SIP para o estabelecimento e encerramento de sesses incluem:

Localizao de Usurio: como um usurio pode se movimentar por toda a rede, ele precisa ser
localizado antes de efetivamente iniciar uma comunicao. Este procedimento determina a localizao do usurio e a viabilidade dele ser usado para a comunicao;

Capacidades do Usurio: este procedimento utilizado para determinar as capacidades de mdia


dos usurios envolvidos na comunicao e para determinar os parmetros de mdia que devem ser usados;

Disponibilidade do Usurio: aps um usurio ser localizado, necessrio saber se ele est
disponvel para uma nova comunicao. Este procedimento determina se o usurio possui recursos disponveis para iniciar uma nova comunicao;

Configurao de Chamada: o processo de definio dos parmetros que sero utilizados para
o estabelecimento da chamada;

Controle da Chamada: o processo de gerenciamento da chamada, incluindo processos de


transferncia e encerramento de ligaes. O SIP implementado atravs das seguintes entidades:

UA (User Agent): um agente de usurio um sistema-fim que age em nome de um usurio. Ele
consiste de duas partes: um cliente e um servidor;

UAC (User Agent Client): a poro cliente do UA que responsvel pelo inicio da comunicao
entre um cliente e o servidor. Esta comunicao se inicia atravs de uma solicitao, mensagem do tipo REQUEST, que estabelece o inicio de uma transao SIP;

UAS (User Agent Server): a poro do servidor UA que responsvel por processar uma
mensagem do tipo REQUEST enviado pelo UAC;

Multimedia Session: uma sesso multimdia a troca de fluxos de informaes entre


transmissores e receptores multimdias;

Server: aplicao que responsvel em receber as mensagens do tipo REQUEST dos


usurios e enviar mensagens do tipo RESPONSE. Na prtica o Server um hardware que implementa funes de proxy server,redirect server e a parte UAS. Figura 4: Entidades SIP. Destaque: UA. O Proxy Server um servidor proxy que pode atuar como um Servidor ou um Cliente. Ele responsvel por receber mensagens e encaminhar para outros Servidores, e capaz de fazer a traduo de endereos, reescrever uma mensagem antes de encaminh-la, aplicar regras de segurana e at rotear as mensagens.

Figura 5: Entidades SIP. Destaque: Proxy Server. O Redirect Server responsvel por fornecer a um cliente a lista de endereos possveis para alcanar um cliente destino. Ele capaz de fazer o mapeamento de um endereo em nenhum, ou em outros novos endereos, para alcanar o cliente de destino.

Figura 6: Entidades SIP. Destaque: Redirect Server. O Registrar (ou Registration) Server um servidor que recebe e aceita mensagens de registro, que so utilizadas para armazenar o local corrente dos usurios. Essas informaes so compartilhadas com outros servidores da rede. O SIP define dois tipos de mensagens: REQUEST e RESPONSE. Uma mensagem do tipo REQUEST enviada de um cliente a um servidor e apresenta o formato indicado a seguir:

As mensagens REQUEST podem ter vrios mtodos (Method), e cada mtodo representa uma ao requerida, conforme os exemplos apresentados a seguir:

REGISTER: uma mensagem com este mtodo envia informaes sobre identificao e
localizao do usurio;

INVITE: este mtodo utilizado quando se deseja convidar um novo participante para uma
sesso j existente ou para uma nova sesso;

BYE: mtodo utilizado para encerrar a participao numa sesso; ACK: Uma mensagem com este mtodo enviada por um usurio que mandou um INVITE para
avisar que uma mensagem do tipo RESPONSE foi recebida. Portanto, para toda mensagem com um ACK deve existir uma mensagem anterior com INVITE. O campo REQUEST URL um SIP URL e usado dentro da mensagem para indicar quem originou a mensagem (From), qual o destino corrente da mensagem (Request URL) e qual o destino final (To). Alguns exemplos de SIP URL:

sip:usurio@dominio.com sip:usurio@10.1.1.1 sip:paulo@unicamp.com;transport=udp


O campo SIP version utilizado para indicar qual verso de SIP que est sendo usada, para garantir a interpretao correta da mensagem SIP.

Figura 7: Mensagem do tipo REQUEST com o mtodo INVITE. Uma mensagem do tipo RESPONSE enviada aps uma mensagem do tipo REQUEST ter sido recebida e processada, e apresenta o formato indicado a seguir:

O campo SIP version da mensagem RESPONSE possui a mesma funo da mensagem REQUEST. Portanto, garante a interpretao correta das mensagens SIP. O campo Status code possui um nmero inteiro que identifica o resultado do processamento da mensagem REQUEST a qual a mensagem RESPONSE se refere. Esse campo apresenta as seguintes informaes:

INFORMATIONAL: informa que a mensagem REQUEST foi recebida e esta sendo processada; SUCCESS: informa que a mensagem foi recebida, entendida, processada e aceita; CLIENT ERROR: informa que o servidor no pode processar a mensagem REQUEST, devido
algum problema interno;

GLOBAL FAILURE: informa que a mensagem REQUEST no pode ser processada em nenhum
servidor disponvel. O campo Reason phrase uma frase textual com o objetivo de informar de forma resumida o significado do valor do campo Status code.

Você também pode gostar