Mudanças entre as edições de "RED1-EngTel (página)"
Linha 1 006: | Linha 1 006: | ||
==25/10/13: Camada de Rede == | ==25/10/13: Camada de Rede == | ||
− | * | + | * Rede datagrama |
+ | * Rede Circuito Virtual | ||
==28/10/13: == | ==28/10/13: == |
Edição das 15h29min de 25 de outubro de 2013
Ementa e referências bibliográficas
Diário de aula de RED - 2013-2 - Prof. Tiago Semprebom | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Diário de aula de RED - 2013-2 - Prof. Tiago SemprebomInstrutorProfessor: Tiago Semprebom, Dr. Eng.
Material de apoio
Curiosidades
16/08/13: Apresentação da disciplina
19/08/13: Introdução à Redes de Computadores
23/08/13: Introdução à Redes de Computadores
24/08/13: (Sábado Letivo)
26/08/13: Introdução à Redes de Computadores
30/08/13: Comutação de circuitos
02/09/13: Arquitetura em Camadas
06/09/13: Arquitetura em Camadas
Ver Capítulo 27 do livro Comunicação de Dados e Redes de Computadores, 4a ed., de Behrouz Forouzan. Na arquitetura de redes da Internet, são as aplicações que se comunicam, gerando dados no transmissor e consumindo-os no receptor.
Aplicações são processos que se comunicam através da rede (lembre lá de ICO que processos são programas em execução). Exemplos de aplicações são navegadores web (Firefox, Chrome) e bate-papo (Skype, GTalk). A comunicação pode ser feita de diferentes formas, de acordo com o modelo de comunicação adotado pela aplicação em questão. O modelo de comunicação define o papel de cada participante da comunicação, e por consequência acaba determinando como a comunicação acontece (quem a inicia, quando se transmitem e recebem mensagens). Três modelos conhecidos são:
Cada aplicação usa diretamente os serviços da camada de transporte, e indiretamente os de camadas inferiores. Assim, para uma aplicação é a camada de transporte que envia e recebe suas mensagens. Como visto na aula passada, um serviço importante da camada de transporte é classificar e separar os pacotes recebidos de acordo com a aplicação que deve recebê-los, e para isso se um número chamado de port. O número de port pode ser entendido como um endereçador de aplicações dentro de um mesmo host. Vimos também que a camada de transporte na Internet apresenta dois protocolos, e ambos usam números de port para separar os pacotes de acordo com a comunicação que os contém:
O estudo das aplicações da Internet inicia com WWW, que foi responsável por popularizar a Internet nos anos 90 e ainda é a aplicação mais difundida e acessada. WWW e protocolo HTTPWWW (World Wide Web) é um sistema de documentos em hipermidia que são ligados e acessados na Internet (FONTE: Wikipedia). Tendo início em 1990 como uma aplicação experimental desenvolvida por Tim Berners-Lee, que então trabalhava no CERN, na Suíça, em pouco tempo caiu no gosto de demais usuários e se difundiu. WWW se tornou tão popular que para muitos passou a ser sinônimo de Internet (equivocadamente). Por trás da sua rápida aceitação há um protocolo de aplicação simples e funcional, além claro do modelo de informação em hipermidia que agradou as pessoas. Se o WWW é um sistema de documentoshipermidia online mantido de forma distribuída na Internet, o protocolo HTTP (Hypertext Transfer Protocol) é o protocolo usado para acessá-los. Esse protocolo segue o modelo cliente-servidor, e as comunicações são feitas com mensagens de pedido e resposta. Um cliente (navegador web) envia uma mensagem HTTP de pedido a um servidor web, que a responde com uma mensagem de resposta contendo o conteúdo solicitado. O protocolo HTTP usa o protocolo TCP para transmitir suas mensagens. Mensagens de pedido HTTPMensagens HTTP de pedido possuem a seguinte estrutura: Método URI HTTP/versão_do_protocolo
Cabeçalho1: valor do cabeçalho1
Cabeçalho2: valor do cabeçalho2
Cabeçalho3: valor do cabeçalho3
CabeçalhoN: valor do cabeçalhoN
corpo da mensagem
A primeira linha usa o campo método para indicar o tipo de pedido a ser realizado. O método HTTP pode ser entendido como um comando a ser realizado pelo servidor. Os métodos mais comuns são:
O campo URI (Uniform Resource Indicator) identifica o documento que o servidor deve acessar. Ele se aparenta com um caminho de arquivo (pathname), porém possui algumas extensões para poder enviar informação adicional. Os cabeçalhos servem para complementar o pedido, informando ao servidor mais detalhes sobre o que está sendo requisitado. Por fim, o corpo da mensagem é opcional, podendo conter dados a serem enviados ao servidor quando necessário. Tendo entendido os componentes de um pedido HTTP, segue abaixo um exemplo de uma requisição real (note que ela não possui corpo de mensagem): GET /wiki/ HTTP/1.1
Host: wiki.sj.ifsc.edu.br
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Cookie: wiki2010UserID=614; wiki2010UserName=Msobral; wiki2010Token=4ed97239498a2fc74596b0f0a62331b5; wiki2010_session=f4e6b1hl4ctlkbpe5gc5gkosi4
Connection: keep-alive
If-Modified-Since: Mon, 20 May 2013 00:38:20 GMT
Mensagens de resposta HTTPMensagens HTTP de resposta possuem a seguinte estrutura: HTTP/versão_do_protocolo status info
Cabeçalho1: valor do cabeçalho1
Cabeçalho2: valor do cabeçalho2
Cabeçalho3: valor do cabeçalho3
CabeçalhoN: valor do cabeçalhoN
corpo da mensagem
A linha inicial informa o resultado do atendimento do pedido (se teve sucesso ou não), contendo um código numérico de status seguido de uma breve descrição. Os códigos numéricos e info mais comuns são:
Após a linha inicial há os cabeçalhos, usados da mesma forma que em pedidos HTTP. Por fim, pode haver o corpo da mensagem (opcional). Um exemplo de mensagem de resposta segue abaixo: HTTP/1.1 200 OK
Date: Thu, 23 May 2013 20:43:31 GMT
Server: Apache
Last-Modified: Fri, 10 May 2013 14:09:58 GMT
ETag: "757236-40-4dc5db8df272a"
Accept-Ranges: bytes
Content-Length: 64
Vary: Accept-Encoding
Connection: close
Content-Type: text/plain; charset=UTF-8
Este é um pequeno arquivo de teste, sem informação útil ...
09/09/13: Camada de Aplicação
13/09/13: Camada de Aplicação
O serviço DNS (Domain Name System) pode ser comparado a um grande catálogo telefônico, que possibilita que se descubra o endereço IP (nessa analogia, equivalente ao número de telefone) associado a um determinado nome de domínio (comparável ao nome de uma pessoa ou empresa). A ideia é poder endereçar máquinas com nomes mais fáceis de lidar e memorizar, ao contrário de usar endereços numéricos. Lembre que:
A seção a seguir descreve esse serviço fundamental da Internet. Uma breve descrição sobre DNSO texto abaixo foi obtido de Como funcionam os servidores de domínio (DNS).
Quando você navega na internet ou manda uma mensagem de e-mail, você estará utilizando um nome de domínio. Por exemplo, a URL "http://www.hsw.com.br" contém o nome de domínio howstuffworks.com. Assim como o endereço de e-mail "iknow@howstuffworks.com." Nomes como “howstuffworks.com” são facilmente lembrados pelas pessoas, mas não ajudam em nada as máquinas. Todas elas usam endereços de IP para se referirem umas às outras. A máquina a que as pessoas se referem como "www.hsw.com.br", por exemplo, possui o endereço IP 216.183.103.150. Toda vez que se usa um nome de domínio, os servidores de domínios da internet (DNS) estarão traduzindo os nomes de domínio legíveis em endereços de IP reconhecidos pelas máquinas. Durante um dia de navegação e envio de e-mails, os servidores de domínios podem ser acessados inúmeras vezes. Os servidores de domínios traduzem nomes de domínios em endereços de IP. Isto parece uma tarefa simples, e seria, exceto por cinco razões:
O sistema DNS é uma base de dados, e nenhuma outra em todo o globo recebe tantas requisições. É a única, também, modificada por milhões de pessoas todos os dias. Isso é o que faz o sistema DNS tão singular. Endereços IPPara manter todas as máquinas da Internet em perfeito funcionamento, cada uma delas é associada a um único endereço chamado endereço de IP. IP significa protocolo da Internet, e é um número de 32 bits normalmente apresentado como quatro “octetos” em um “número decimal pontuado.” Um endereço de IP comum se parece com esse: 216.183.103.150
Os quatro números em um endereço de IP são chamados de octetos por possuírem valores entre 0 e 255 (256 possibilidades por octeto). Toda máquina na Internet possui seu próprio endereço de IP (na verdade, tem ao menos UM endereço). Um servidor tem um endereço IP estático, que raramente muda. Uma máquina doméstica, que se conecta através de um modem, muitas vezes possui um endereço de IP designado pelo provedor no momento da conexão. Este endereço IP é único a cada sessão e pode mudar na próxima vez que houver uma conexão. Considerando isto, um provedor precisa apenas de um endereço IP para cada modem que dá suporte, ao invés de um para cada cliente (isso vale para ADSL ou conexões 3G também). Se você estiver usando um computador com sistema operacional Linux, você pode ver seu endereço IP por meio do seguinte comando: aluno@M2:~$ ifconfig
eth0 Link encap:Ethernet Endereço de HW 84:2b:2b:7c:54:f5
inet end.: 172.18.80.251 Bcast:172.18.127.255 Masc:255.255.128.0
endereço inet6: fe80::862b:2bff:fe7c:54f5/64 Escopo:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:3634552 erros:0 descartados:145885 excesso:0 quadro:0
Pacotes TX:608253 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:888269786 (888.2 MB) TX bytes:195176030 (195.1 MB)
IRQ:21 Memória:f7fe0000-f8000000
No exemplo acima, a interface de rede eth0 (que é o dispositivo de hardware ou software que liga o computador fisicamente a Internet) possui o endereço IP 172.18.80.251. As demais informações descrevem outros parâmetros e características da interface de rede, e serão estudados em momento oportuno (mas não agora ;-). Para que as máquinas acessem a Internet, é necessário apenas um endereço de IP para se conectar a um servidor. Você poderia digitar em seu navegador, por exemplo, a URL http://200.135.190.28 e alcançaria a máquina que contém o servidor web do IFSC. Porém essa forma de endereçar servidores na Internet é pouco prática. Nomes de domínio são estritamente usados para a nossa conveniência. Nomes de domíniosSe precisássemos lembrar de todos os endereços de IP das páginas da Web que visitamos diariamente, ficaríamos malucos. Seres humanos não são bons em lembrar séries de números. No entanto, somos bons na lembrança de palavras, por isso usamos os nomes de domínios. Você possui, provavelmente, vários nomes de domínios guardados em sua cabeça. Como por exemplo:
As partes COM, EDU e UK destes servidores são chamadas de domínios principais ou domínios de primeiro nível. Existem vários domínios principais, incluindo COM, EDU, GOV, MIL, NET, ORG e INT, assim como as singulares combinações de duas letras para cada país (em inglês). Em cada domínio principal existe uma enorme lista de domínios secundários. No domínio principal COM, por exemplo, tem-se:
Cada nome no domínio principal COM precisa ser único, mas podem existir réplicas entre os domínios. Por exemplo, howstuffworks.com e howstuffworks.org são duas máquinas completamente diferentes. No caso de bbc.co.uk, este é um domínio terciário. São possíveis até 127 níveis, no entanto, mais do que quatro são raros. A palavra mais à esquerda, como www ou encarta, é nome de hospedagem, que determina o nome de uma máquina específica (com um endereço de IP próprio) em um domínio. Um domínio concedido pode conter milhões de nomes de hospedagem desde que sejam únicos. Por causa desta determinação de todos os nomes em um domínio serem únicos, é necessário que uma entidade controle a lista destes servidores e garanta que nenhuma duplicação aconteça. O domínio COM, por exemplo, não pode conter dois nomes iguais e uma empresa chamada Network Solutions (em inglês) é a responsável por manter esta lista. Ao registrar um nome de domínio, o processo passa por um dos inúmeros registradores que trabalham na Network Solutions para adicionar nomes à lista. Ao mesmo tempo, é mantida uma base de dados chamada whois (em inglês) que contém informações sobre o proprietário e o servidor de cada domínio. Se você acessar o formulário whois (em inglês), encontrará informações acerca de qualquer domínio existente. Apesar de ser importante possuir uma autoridade central cuidando da base de dados referente aos nomes no domínio principal COM (e nos outros), você pode não querer centralizar a base de dados de todas as informações do domínio. A Microsoft, por exemplo, tem inúmeros endereços de IP e de nomes de hospedagens. Esta empresa quer manter seu próprio servidor de domínio pelo microsoft.com. Similarmente, a Grã-Bretanha quer administrar os domínios principais uk e a Austrália os domínios au, assim como nós brasileiros queremos administrar os domínios br. Por esta razão, o sistema DNS é um sistema partilhado. A Microsoft é completamente responsável pela manutenção do servidor microsoft.com: ela mantém as máquinas que implementam sua parte do sistema DNS, podendo mudar a base de dados de seu domínio sempre que necessitar, pois possui seus próprios servidores de domínio. Todo domínio possui um servidor em algum lugar, responsável por lidar com as requisições, onde há uma pessoa mantendo os registros deste DNS. Esta é uma das partes mais extraordinárias deste sistema: ele está completamente espalhado por todo o planeta em milhões de máquinas, administradas por milhões de pessoas e, ainda assim, se comporta como uma base de dados única e integrada. Servidores DNSServidores DNS fazem duas coisas o tempo todo:
Quando uma solicitação chega, o servidor pode exercer uma das quatro opções:
Ao digitar uma URL em seu navegador, o primeiro passo que este faz é converter o nome do domínio e da hospedagem em um endereço IP, para que o navegador solicite uma página da web à máquina que possui esse endereço de IP. Para fazer esta conversão, o navegador se comunica com um servidor DNS. Ao configurar seu computador para se conectar a Internet, você (ou o software instalado para se conectar ao seu provedor) precisa informar ao computador qual o servidor DNS que deve ser usado para a conversão de nomes de domínios em endereços de IP. Para ver qual o servidor DNS configurado em seu computador (assumindo que ele esteja com Linux), use o comando nslookup: aluno@M2:~$ nslookup www.ifsc.edu.br
Server: 200.135.37.65
Address: 200.135.37.65#53
Non-authoritative answer:
Name: www.ifsc.edu.br
Address: 200.18.10.13
A estrutura das informações mantidas no DNSComo deve ter ficado claro na seção anterior, DNS (Domain Name System) é uma base de dados distribuída e hierárquica. Nela se armazenam informações para mapear nomes de máquinas da Internet para endereços IP e vice-versa, informação para roteamento de email, e outros dados utilizados por aplicações da Internet. A informação armazenada no DNS é identificada por nomes de domínio que são organizados em uma árvore, de acordo com as divisões administrativas ou organizacionais. Cada nodo dessa árvore, chamado de domínio, possui um rótulo (na seção anterior isso foi denominado hospedagem). O nome de domínio de um nodo é a concatenação de todos os rótulos no caminho do nodo até a raiz. Isto é representado como uma string de rótulos listados da direita pra esquerda e separados por pontos (ex: ifsc.edu.br, sj.ifsc.edu.br). Um rótulo precisa ser único somente dentro do domínio pai a que pertence. Por exemplo, um nome de domínio de uma máquina no IFSC pode ser mail.ifsc.edu.br, em que br é o domínio do topo da hierarquia ao qual mail.sj.ifsc.edu.br pertence. Já edu é um subdomíno de br, ifsc um subdomínio de edu, e mail o nome da máquina em questão. Por razões administrativas, o espaço de nomes é dividido em áreas chamadas de zonas, cada uma iniciando em um nodo e se estendendo para baixo para os nodos folhas ou nodos onde outras zonas iniciam. Os dados de cada zona são guardados em um servidor de nomes, que responde a consultas sobre uma zona usando o protocolo DNS. Clientes buscam informação no DNS usando uma biblioteca de resolução (resolver library), que envia as consultas para um ou mais servidores de nomes e interpreta as respostas. (tirado do manual do BIND9) Ver também o livro sobre DNS e BIND da O'Reilly. Você pode consultar a IANA para conhecer as delegações dos top-level domains como o .br, por exemplo. A IANA é responsável por coordenar estas delegações em confirmidade com suas políticas. Consulte: top-level domains Registros DNSCada rótulo na hierarquia DNS possui um conjunto de informações associadas a si. Essas informações são guardas em registros de diferentes tipos, dependendo de seu significado e propósito. Cada consulta ao DNS retorna assim as informações do registro pedido associado ao rótulo. Por exemplo, para ver o registro de endereço IP associado a www.ifsc.edu.br pode-se executar o comando dig (o resultado teve alguns comentários removidos): tisemp@M1:~$ dig sj.ifsc.edu.br mx
;; QUESTION SECTION:
;sj.ifsc.edu.br. IN MX
;; ANSWER SECTION:
sj.ifsc.edu.br. 3600 IN MX 10 hendrix.sj.ifsc.edu.br.
;; AUTHORITY SECTION:
sj.ifsc.edu.br. 3600 IN NS ns.pop-udesc.rct-sc.br.
sj.ifsc.edu.br. 3600 IN NS ns.pop-ufsc.rct-sc.br.
sj.ifsc.edu.br. 3600 IN NS hendrix.sj.ifsc.edu.br.
;; ADDITIONAL SECTION:
hendrix.sj.ifsc.edu.br. 3600 IN A 200.135.37.65
ns.pop-ufsc.rct-sc.br. 11513 IN A 200.135.15.3
ns.pop-udesc.rct-sc.br. 37206 IN A 200.135.14.1
Cada uma das informações acima mostra um determinado registro e seu conteúdo, como descrito na tabela abaixo:
Obs: TTL é o tempo de validade (em segundos) da informação retornada do servidor de nomes, e classe é o tipo de endereço (no caso IN equivale a endereços Internet). Os tipos de registros mais comuns são:
Uma zona assim é composta de um conjunto de registros com todas as informações dos domínios nela contidos. O conteúdo de uma zona, contendo o domínio example.com, pode ser visualizado abaixo: example.com 86400 IN SOA ns1.example.com. hostmaster.example.com. (
2002022401 ; serial
10800 ; refresh
15 ; retry
604800 ; expire
10800 ; minimum
)
IN NS ns1.example.com.
IN NS ns2.smokeyjoe.com.
IN MX 10 mail.another.com.
IN TXT "v=spf1 mx -all"
ns1 IN A 192.168.0.1
www IN A 192.168.0.2
ftp IN CNAME www.example.com.
bill IN A 192.168.0.3
fred IN A 192.168.0.4
16/09/13: Camada de Aplicação (Laboratório Redes I)Experimento 1: Comunicação de dadosA comunicação dados pode ser entendida como troca de informação entre dois dispositivos através de algum meio de comunicação. A comunicação ocorre no âmbito de um sistema de telecomunicações, composto por equipamentos (hardware) e programas (softwares). Um sistema básico de comunicação de dados se constitui de cinco componentes:
Neste experimento, vamos interagir com um servidor web e identificar esses cinco componentes.
Experimento 2: transmissão de mensagens de aplicaçãoNeste experimento, serão observadas as mensagens transmitidas entre um navegador e um servidor web, e com base nelas devem ser identificados:
Experimento 3: pacotes que passeiam pela redeNeste experimento, deve-se evidenciar a transmissão de pacotes desde o transmissor até o receptor, que pode estar em outra rede. Como já foi discutido, para que isso seja possível deve haver uma forma de transmitir esses pacotes para dispositivos intermediários na rede, que os encaminham para seus destinos. Quer dizer, os pacotes devem ser roteados até seu receptor.
Experimento 4: Aplicação Web e o protocolo HTTPNas atividades abaixo sempre use o wireshark para observar as comunicações realizadas. Preste atenção aos encapsulamentos realizados e os protocolos envolvidos, assim como as informações mantidas por esses protocolos. Em particular, observe o endereço IP (mantido pelo protocolo IP na camada de rede) e números de port (mantidos por protocolos TCP e UDP na camada de transporte).
Para pensar
Considerações finaisOs experimentos realizados buscaram introduzir alguns mecanismos envolvidos na comunicação através de uma rede de computadores. Tais mecanismos são implementados por alguns protocolos, lembrando que um protocolo especifica o formato dos pacotes transmitidos e as regras de comunicação para intercâmbio desses pacotes. Durante os experimentos, teve-se contato com alguns protocolos importantes envolvidos em comunicações na Internet, assim como algumas das principais informações definidas e usadas por esses protocolos. A visualização da hierarquia em que operam esses protocolos buscou mostrar o modelo de camadas da Internet, que define como deve funcionar um sistema que se comunica nesse tipo de rede. Para pensar:
20/09/13: Camada de Aplicação (Laboratório Redes I)Atividade: Serviço de Nomes (DNS)
23/09/13: Camada de TransporteAté o momento nos concentramos nos serviços de rede (Camada de Aplicação). Afinal, são elas que usamos para nos comunicarmos através das redes de computadores. No entanto, aplicações dependem de outros protocolos para poderem se comunicar, os quais cuidam dos detalhes envolvidos na transmissão e recepção de mensagens em uma rede vasta como a Internet. As aplicações se comunicam por meio de mensagens. Cada protocolo de aplicação (HTTP, POP3, DNS, IMAP, SMTP, SIP, ...) tem seu formato de mensagem. Essas mensagens podem ser pequenas (ex: DNS, SIP) ou por vezes grandes (ex: SMTP, HTTP, POP3). De qualquer forma, a aplicação precisa que suas mensagens sejam transmitidas para o outro participante da comunicação, que está em um computador remoto. Para isso ela usa um protocolo de transporte.
Como já discutido, mais de uma aplicação pode existir em um mesmo computador. Por isso, uma das principais atribuições de um protocolo de transporte é identificar de qual aplicação é uma mensagem a ser transmitida, e para qual aplicação se destina uma mensagem recebida. Deve-se ter em mente que uma aplicação é representada por um programa em execução em um computador, portanto um protocolo de transporte possibilita a comunicação entre processos que estão sendo executados usualmente em computadores diferentes. Em nossas discussões anteriores chamamos isso de classificação das mensagens, mas o termo usado para expressar essa capacidade dos protocolos de transporte é multiplexação. No caso específico dos protocolos de transporte da Internet (TCP e UDP), um número de port é usado para fazer essa distinção, e por isso essa função é denominada multiplexação baseada em port. Uma comunicação entre aplicações é composta basicamente de duas informações principais: endereços dos hosts participantes
e números de port dos processos. Os endereços são responsabilidade da Camada de Rede (onde há o protocolo IP), e os números
de port são usados na Camada de Transporte (onde estão os protocolos TCP e UDP).
Mas por que existem dois protocolos de transporte ? Talvez ajude a esclarecer essa questão se compararmos as necessidades das aplicações:
Durante o projeto e aperfeiçoamento dos protocolos da Internet, convergiu-se para a definição de dois protocolos de transporte:
Curiosidade: veja os anos em que foram publicados as especificações desses protocolos ... As diferenças entre eles serão melhor detalhadas nas próximas aulas. Hoje farems alguns experimentos para ter uma ideia de como se comportam as comunicações feitas com esses protocolos. AtividadeAs atividades de hoje buscarão mostrar as características básicas de comunicações com protocolos de transporte. Aplicações e protocolos de transporteFaça uma rápida pesquisa e descubra que protocolos de transporte (e que ports) são usados por estas aplicações:
Que protocolo de transporte predomina nesse conjunto ? Tipos de protocolos de transporte: TCP x UDPNestes experimentos, serão evidenciadas diferenças entre os protocolos TCP e UDP. Experimento 1Ambos protocolos de transporte podem ser usados por aplicações que precisem se comunicar. Porém cada um deles têm certas propriedades, então a escolha precisa ser feita dependendo do tipo de comunicação a ser feita pela aplicação. Por exemplo, o que aconteceria se um arquivo fosse transferido de um computador a outro com ambos protocolos ?
Experimento 2Transferências usando cada um desses protocolos podem apresentar características bem distintas. Neste segundo experimento, serão feitas transferências simultâneas de arquivos a partir de um mesmo servidor, comparando-se o resultado obtido com TCP e UDP. Essas transferência ocorrerão entre os computadores do laboratório e um servidor externo ao laboratório, como mostrado na figura abaixo:
27/09/13: Correio eletrônico
O correio eletrônico (email) é ainda um dos principais serviços na Internet. De fato foi o primeiro serviço a ser usado em larga escala. Trata-se de um método para intercâmbio de mensagens digitais. Os sistemas de correio eletrônico se baseiam em um modelo armazena-e-encaminha (store-and-forward) em que os servidores de email aceitam, encaminham, entregam e armazenam mensagens de usuários. Funcionamento do emailOs componentes da infraestrutura de email são:
A figura abaixo ilustra uma infraestrutura de email típica. Os protocolos envolvidos são:
EndereçamentoEndereços de email estão intimamente ligados ao DNS. Cada usuário de email possui um endereço único mundial, definido por um identificador de usuário e um domínio de email, escritos usando-se o símbolo especial @ (lê-se at, do original em inglês) para conectá-los: tele@ifsc.edu.br Nesse exemplo, o identificador de usuário é tele, e o domínio é ifsc.edu.br. Os domínios de email tem correspondência direta com domínios DNS, mas isso é um assunto para mais adiante ... por enquanto basta saber que um domínio representa um conjunto de endereços de email tratados administrativamente da mesma forma. Mensagens de emailUma mensagem de correio eletrônico se divide em duas partes:
Received: from zeus.das.ufsc.br (zeus.das.ufsc.br [150.162.12.8])
by mx.google.com with ESMTP id e12si8422753vcx.66.2010.04.25.07.40.18;
Sun, 25 Apr 2010 07:40:19 -0700 (PDT)
Received: from submissoes.sbc.org.br (submissoes.sbc.org.br [143.54.31.12])
by zeus.das.ufsc.br (Departamento de Automacao e Sistemas (DAS-UFSC)) with ESMTP id BA97E7BD90
for <tele@ifsc.edu.br>; Sun, 25 Apr 2010 11:30:00 -0300 (BRT)
Received: from submissoes.sbc.org.br (localhost [127.0.0.1])
by submissoes.sbc.org.br (8.14.3/8.14.3/Debian-4) with ESMTP id o3PEZ70L029107
for <tele@ifsc.edu.br>; Sun, 25 Apr 2010 11:35:07 -0300
Received: (from www-data@localhost)
by submissoes.sbc.org.br (8.14.3/8.14.3/Submit) id o3PEZ7kH029104;
Sun, 25 Apr 2010 11:35:07 -0300
Date: Sun, 25 Apr 2010 11:35:07 -0300
Message-Id: <201004251435.o3PEZ7kH029104@submissoes.sbc.org.br>
From: WTR 2010 <lbecker@das.ufsc.br>
To: "Telê Santana" <tele@ifsc.edu.br>
Subject: Final version and registration
MIME-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
Dear Coach,
Please remember to upload the camera-ready version of your paper and to
register in the competition by April 27.
See you in Spain,
FIFA World Cup Staff - Spain - 1982
Na mensagem acima, os cabeçalhos são as linhas iniciais. Os cabeçalhos terminam quando aparece uma linha em branco, a partir de que começa o corpo da mensagem. Atividade 1
Mensagens de emailUma mensagem de correio eletrônico se divide em duas partes:
Received: from zeus.das.ufsc.br (zeus.das.ufsc.br [150.162.12.8])
by mx.google.com with ESMTP id e12si8422753vcx.66.2010.04.25.07.40.18;
Sun, 25 Apr 2010 07:40:19 -0700 (PDT)
Received: from submissoes.sbc.org.br (submissoes.sbc.org.br [143.54.31.12])
by zeus.das.ufsc.br (Departamento de Automacao e Sistemas (DAS-UFSC)) with ESMTP id BA97E7BD90
for <tele@ifsc.edu.br>; Sun, 25 Apr 2010 11:30:00 -0300 (BRT)
Received: from submissoes.sbc.org.br (localhost [127.0.0.1])
by submissoes.sbc.org.br (8.14.3/8.14.3/Debian-4) with ESMTP id o3PEZ70L029107
for <tele@ifsc.edu.br>; Sun, 25 Apr 2010 11:35:07 -0300
Received: (from www-data@localhost)
by submissoes.sbc.org.br (8.14.3/8.14.3/Submit) id o3PEZ7kH029104;
Sun, 25 Apr 2010 11:35:07 -0300
Date: Sun, 25 Apr 2010 11:35:07 -0300
Message-Id: <201004251435.o3PEZ7kH029104@submissoes.sbc.org.br>
From: WTR 2010 <lbecker@das.ufsc.br>
To: "Telê Santana" <tele@ifsc.edu.br>
Subject: Final version and registration
MIME-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
Dear Coach,
Please remember to upload the camera-ready version of your paper and to
register in the competition by April 27.
See you in Spain,
FIFA World Cup Staff - Spain - 1982
Na mensagem acima, os cabeçalhos são as linhas iniciais. Os cabeçalhos terminam quando aparece uma linha em branco, a partir de que começa o corpo da mensagem. Acesso a caixas de mensagens: protocolos POP3 e IMAPPOP3 (Post Office Protocol) e IMAP (Internet Message Access Protocol) são protocolos criados para acessar mensagens armazenadas em caixas de mensagens de usuários. Em ambos os casos, um programa servidor é executado no computador onde estão armazenadas as mensagens (quer dizer, eles seguem o modelo cliente-servidor). Esse programa aceita conexões vindas de programas clientes, e por meio desses protocolos possibilita acessos às caixa de entrada de usuários. Programas clientes são leitores de email, usados por pessoas para lerem suas mensagens (ex: Mozilla Thunderbird, Microsoft Outlook, e webmail em geral). As operações típicas possíveis de serem feitas com esses protocolos são obter uma cópia de uma mensagem (transferi-la para o programa cliente), listar as mensagens existentes e apagar uma mensagem. O protocolo POP3 foi criado primeiro (sua última revisão ocorreu em 1996). Suas mensagens são textuais, com comandos simples para obter mensagens, listar mensagens e apagá-las (há outros, mas esses são os principais). Quando ele foi criado, a maioria das pessoas acessava a Internet com acesso discado, que é lento e caro. Por isso esse protocolo foi feito para baixar as mensagens para o computador do usuário, e removê-las do servidor. Isso quer dizer que, para um usuário saber o assunto de uma mensagem, ou quem a enviou, ele terá primeiro que copiá-la inteira para seu computador. Quando o uso de correio eletrônico aumentou, e também a quantidade e tamanho das mensagens (com seus arquivos anexados), surgiu a necessidade de um protocolo de acesso a mensagens que possibilitasse manipulá-las diretamente no servidor. Dessa iniciativa surgiu o protocolo IMAP. IMAP (última revisão em 2003) é um protocolo de acesso a mensagens razoavelmente complexo, com muitas possibilidades de pesquisa e transferência parcial ou completa de mensagens. Além das operações suportadas pelo POP3, ele é capaz de fornecer listagens de mensagens incluindo seus cabeçalhos (evitando ter que copiar mensagens completas para saber do que se tratam), fazer pesquisas nas mensagens com base em seus cabeçalhos (ex: mensagens enviadas por uma determinada pessoa), e transferir parcialmente mensagens (ex: transferir somente um arquivo anexado). Atualmente é a forma mais usada de acessar mensagens em servidores, mesmo com webmail. Atividade 2Usando novamente o servidor de correio eletrônico do laboratório, vamos fazer experiências com acessos a caixas de mensagens.
30/09/13: Camada de Aplicação
04/10/13: Camada de Transporte
07/10/13: Camada de Transporte
11/10/13:14/10/13:15/10/13: Avaliação de Recuperação de RED
18/10/13:19/10/13: (Sábado Letivo)21/10/13:
25/10/13: Camada de Rede
28/10/13:01/11/13: Seminário de RED
04/11/13: Aula com Prof. Roberto Matos (MIC)
08/11/13:11/11/13:15/11/13:18/11/13:22/11/13:25/11/13:29/11/13:02/12/13:06/12/13:09/12/13:13/12/13:
16/12/13: Encerramento da Disciplina |