Baixe o app para aproveitar ainda mais
Prévia do material em texto
Fisiologia Redes de Computadores I DIREÇÃO SUPERIOR Chanceler Joaquim de Oliveira Reitora Marlene Salgado de Oliveira Presidente da Mantenedora Wellington Salgado de Oliveira Pró-Reitor de Planejamento e Finanças Wellington Salgado de Oliveira Pró-Reitor de Organização e Desenvolvimento Jefferson Salgado de Oliveira Pró-Reitor Administrativo Wallace Salgado de Oliveira Pró-Reitora Acadêmica Jaina dos Santos Mello Ferreira Pró-Reitor de Extensão DEPARTAMENTO DE ENSINO A DISTÂNCIA Manuel de Souza Esteves Gerência Nacional do EAD Bruno Mello Ferreira Gestor Acadêmico Diogo Pereira da Silva FICHA TÉCNICA Direção Editorial: Diogo Pereira da Silva e Patrícia Figueiredo Pereira Salgado Texto: Tatiane Aparecida Gomes Pereira Revisão Ortográfica: Rafael Dias de Carvalho Moraes Projeto Gráfico e Editoração: Antonia Machado, Eduardo Bordoni, Fabrício Ramos e Victor Narciso Supervisão de Materiais Instrucionais: Antonia Machado Ilustração: Eduardo Bordoni e Fabrício Ramos Capa: Eduardo Bordoni e Fabrício Ramos COORDENAÇÃO GERAL: Departamento de Ensino a Distância Rua Marechal Deodoro 217, Centro, Niterói, RJ, CEP 24020-420 www.universo.edu.br Ficha catalográfica elaborada pela Biblioteca Universo Campus Niterói Redes de Computadores I P436r Pereira, Tatiane Aparecida Gomes. Redes de computadores I / Tatiane Aparecida Gomes Pereira ; revisão de Rafael Dias de Carvalho Moraes. – 1. ed. – Niterói, RJ: UNIVERSO: Departamento de Ensino à Distância, 2017. 199 p. : il. 1. Redes de computadores. 2. Redes locais de computadores. 3. Internet - História. 4. Correio eletrônico. 5. Redes (Computadores) - Protocolos. 6. Ensino à distância. I. Moraes, Rafael Dias de Carvalho. II. Título. CDD 004.68 Bibliotecária responsável: Elizabeth Franco Martins - CRB 7/4990 Informamos que é de única e exclusiva responsabilidade do autor a originalidade desta obra, não se responsabilizando a ASOEC pelo conteúdo do texto formulado. Acompanhando as necessidades de um mundo cada vez mais complexo, exigente e necessitado de aprendizagem contínua, a Universidade Salgado de Oliveira (UNIVERSO) apresenta a UNIVERSO EAD, que reúne os diferentes segmentos do ensino a distância na universidade. Nosso programa foi desenvolvido segundo as diretrizes do MEC e baseado em experiências do gênero bem-sucedidas mundialmente. São inúmeras as vantagens de se estudar a distância e somente por meio dessa modalidade de ensino são sanadas as dificuldades de tempo e espaço presentes nos dias de hoje. O aluno tem a possibilidade de administrar seu próprio tempo e gerenciar seu estudo de acordo com sua disponibilidade, tornando-se responsável pela própria aprendizagem. O ensino a distância complementa os estudos presenciais à medida que permite que alunos e professores, fisicamente distanciados, possam estar a todo momento ligados por ferramentas de interação presentes na Internet através de nossa plataforma. Palavra da Reitora Além disso, nosso material didático foi desenvolvido por professores especializados nessa modalidade de ensino, em que a clareza e objetividade são fundamentais para a perfeita compreensão dos conteúdos. A UNIVERSO tem uma história de sucesso no que diz respeito à educação a distância. Nossa experiência nos remete ao final da década de 80, com o bemsucedido projeto Novo Saber. Hoje, oferece uma estrutura em constante processo de atualização, ampliando as possibilidades de acesso a cursos de atualização, graduação ou pós-graduação. Reafirmando seu compromisso com a excelência no ensino e compartilhando as novas tendências em educação, a UNIVERSO convida seu alunado a conhecer o programa e usufruir das vantagens que o estudar a distância proporciona. Seja bem-vindo à UNIVERSO EAD! Professora Marlene Salgado de Oliveira Redes de Computadores I 5 Apresentação da disciplina ...................................................................................................... 7 Plano da Disciplina ..................................................................................................................... 9 Unidade 1 - Conhecendo a Rede de Computadores ....................................................... 11 Unidade 2 - Camada de Aplicação ....................................................................................... 45 Unidade 3 - Camada de Transporte ..................................................................................... 71 Unidade 4 - Camada de Rede ................................................................................................ 97 Unidade 5 - Endereçamento ...............................................................................................121 Unidade 6 - Roteamento ......................................................................................................155 Considerações finais ..............................................................................................................187 Conhecendo o autor ..............................................................................................................189 Anexos ...................................................................................................................................193 Sumário Redes de Computadores I 6 A constante evolução da tecnologia e o avanço do uso de computadores e suas tecnologias, sobretudo, no mercado de trabalho fez surgir a necessidade de interconexão de diversas máquinas para facilitar o acesso e compartilhamento tanto de equipamentos quanto informações. Esse tipo de procedimento que visa conectar diversos equipamentos de forma a permitir o compartilhamento de dispositivos, recursos, softwares e informações. A utilização de redes de computadores é um importante mecanismo para a interconexão de hardware e software, permitindo, assim, a disseminação e o compartilhamento de ambos de forma a melhorar o desempenho no uso destes. Assim, o compartilhamento tanto de dispositivos quanto de recursos em uma rede é essencial para as empresas, pois permite que todos os envolvidos no processo tenham tais recursos à sua disposição para o acesso e sua utilização. Assim, torna-se necessário o conhecimento de redes de computadores a fim de entendermos como se dá a interligação de todos os recursos dentro de uma rede e como são o acesso e o compartilhamento de todos os tipos de recursos disponíveis nesta rede de computadores. Desta forma, será possível entender o funcionamento de uma rede de computadores, conhecer sua estrutura e compreender como se dá o compartilhamento de hardware, software e informações nesta rede. Tal mecanismo, a rede de computadores, é indispensável no mundo globalizado, pois este tipo de tecnologia facilita a comunicação, a interação e o compartilhamento, assim podemos fazer uso desde uma rede de computadores doméstica, no trabalho ou uma rede mundial, como é o caso da Internet. As inúmeras possibilidades de interconexão para a interação no espaço das redes de computadores permite-nos o uso de recursos de comunicação que interligam diversos tipos de equipamentos, contribuindo para a obtenção de respostas mais rápidas e precisas conforme a dinâmica atual. Apresentação da disciplina Redes de Computadores I 7 Neste estudo, iremos conhecer a estrutura de uma rede de computadores, recurso tão presente atualmente em nossas vidas, pois hoje, é comum a interligação de dois ou mais equipamentos e recursos, seja em casa, no comércio ou no trabalho. Assim, torna-se importante conhecer como é possível fazer a interconexão de diversosequipamentos em uma única rede de computadores para assim ser possível o acesso e compartilhamento tanto de recursos quanto de informações, por isso iremos ao longo deste livro conhecer o funcionamento da maior rede de computadores da qual se tem notícias, a Internet, entendendo o seu funcionamento e os meios de transmissão de dados nesta rede. Será possível ainda compreender a configuração, a utilização de protocolos para transmissão e transferência de dados na rede Internet. Ao longo do estudo, aprenderemos sobre os protocolos utilizados na rede que permitem a interação entre máquina cliente e máquina servidor, a partir da qual é possível que o cliente possa buscar recursos e informações que estão disponíveis na máquina servidor. Outro ponto importante é conhecer as diversas camadas de uma rede de computadores, entender a função de cada uma destas camadas, analisar como é o funcionamento de todas as camadas da rede e, por fim conhecer os protocolos utilizados para a interconexão da rede e transmissão de dados dentro da rede. Bons estudos! Plano da Disciplina 8 Redes de Computadores I 1 Conhecendo a Rede de Computadores Redes de Computadores I 9 Nesta unidade, conheceremos um pouco da história da mais famosa rede de computadores, a Internet. A Internet é uma rede de computadores mundial, que permite a interligação de diversos computadores ao redor do mundo e a comunicação entre estes computadores, mesmo que os dispositivos estejam distantes geograficamente. Além disso, na Internet é possível disseminar e compartilhar informações, além da interação e comunicação de inúmeras máquinas dispersas por diversos pontos da rede, em diversas partes do mundo. Objetivos da unidade: Conhecer a história da rede mundial de computadores, a Internet; Compreender os recursos disponíveis nesta rede; Analisar a transmissão e o fluxo de dados dentro da rede; Aprender sobre as camadas de protocolos; Discutir as entidades na camada de rede. Plano da unidade: • Histórico da Internet • Rede de Computadores e a Internet • Periferia da rede • Núcleo da Rede • Redes de Acesso e meios físicos • Atraso e perda em redes de comutação de pacotes • Camada de protocolos e seus modelos de serviço • Entidades na camada de rede Redes de Computadores I 10 Bons estudos! A Internet surgiu no período da Guerra Fria que aconteceu entre 1945 e 1991, onde as duas potências mundiais estavam envolvidas – Estados Unidos e a ex União Soviética (URSS). Divididos nos blocos socialista e capitalista, estas potências disputavam poderes e hegemonias. Os Estados Unidos temendo que a Rússia o atacasse desenvolveu um sistema de compartilhamento de informações, que seria utilizado de modo a facilitar as estratégias de guerra do país, o bloco capitalista. Assim, iniciou-se a Arpanet – Advanced Research Projects Agency, o primeiro protótipo da Internet. Em 29 de outubro de 1969 estabeleceu-se a primeira conexão através desta rede entre a Unidade da Califórnia e o Instituto de Pesquisa de Standford, momento em que foi enviado o primeiro e-mail no mundo. Criada em 1958, pelo Departamento de Defesa dos Estados Unidos, a Arpa surgiu com a função de angariar recursos para pesquisa no campo universitário a fim de adquirir importantes conquistas na seara tecnológica. Segundo Manuel Castells A ARPA foi formada em 1958 pelo Departamento de Defesa dos Estados Unidos com a missão de mobilizar recursos de pesquisa, particularmente do mundo universitário, com o objetivo de alcançar superioridade tecnológica militar em relação à União Soviética na esteira do lançamento do primeiro Sputnik em 1957. A Arpanet não passava de um pequeno programa que surgiu de um dos departamentos da ARPA, o Information Processing Techniques Office (IPTO), fundado em 1962 com base numa unidade preexistente. O objetivo desse departamento, tal como definido por seu primeiro diretor, Joseph Licklider, um psicólogo transformado em cientista da computação no Massachusetts Institute of Technology (MIT), era estimular a pesquisa em computação interativa. Como parte desse esforço, a montagem da Arpanet foi justificada como uma maneira de permitir aos vários centros de computadores e grupos de pesquisa que trabalhavam para a agência compartilhar on-line tempo de computação. Para montar uma rede interativa de computadores, o IPTO valeu-se de uma tecnologia revolucionária de transmissão de telecomunicações, a comutação por pacote, desenvolvida independentemente por Paul Baran na Rand Corporation (um centro de pesquisas californiano que frequentemente Histórico da Internet Redes de Computadores I 11 trabalhava para o Pentágono) e por Donald Davies no British National Physical Laboratory. O projeto de Baran de uma rede de comunicação descentralizada, flexível, foi uma proposta que a Rand Corporation fez ao Departamento de Defesa para a construção de um sistema militar de comunicações capaz de sobreviver a um ataque nuclear, embora esse nunca tenha sido o objetivo por trás do desenvolvimento da Arpanet. O IPTO usou essa tecnologia de comutação por pacote no projeto da Arpanet. (CASTELLS, 2003, p.13-14) Nesta rede, a Universidade da Califórnia em Los Angeles, o SRI, a Universidade da Califórnia em Santa Barbara e a Universidade de Utah, localizavam os primeiros nós, tal feito aconteceu em 1969. Dois anos mais tarde, em 1971, a rede contava com 15 nós. Citando ainda Manuel Castells, o autor informa que O projeto da Arpanet foi implementado por Bolt, Beranek and Newman (BBN), uma firma de engenharia acústica de Boston que passou a realizar trabalhos em ciência da computação aplicada; fundada por professores do MIT era integrada em geral por cientistas e engenheiros dessa instituição e de Harvard. Em 1972, a primeira demonstração bem-sucedida da Arpanet teve lugar numa conferência internacional em Washington. O passo seguinte foi tornar possível a conexão da Arpanet com outras redes de computadores, a começar pelas redes de comunicação que a ARPA estava administrando, a PRNET e a SATNET. Isso introduziu um novo conceito: uma rede de redes. Em 1973, dois cientistas da computação, Robert Kahn, da ARPA, e Vint Cerf, então na Universidade Stanford, escreveram um artigo delineando a arquitetura básica da Internet. Basearam-se nos esforços do Network Working Group, um grupo técnico cooperativo formado na década de 1960 por representantes dos vários centros de computação ligados pela Arpanet, como o próprio Cerf, Steve Crocker e Jon Postel, entre outros. Para que pudessem falar umas com as outras, as redes de computadores precisavam de protocolos de comunicação padronizados. Isso foi conseguido em parte em 1973, num seminário em Stanford, por um grupo liderado por Cerf, Gerard Lelann (do grupo de pesquisa francês Cyclades), e Robert Metcalfe (então no Xerox PARC), com o projeto do protocolo de controle de transmissão (TCP). Em 1978 Cerf, Postel e Crocker, trabalhando na Universidade da Califórnia do Sul, dividiram o TCP em duas partes, acrescentando um Redes de Computadores I 12 protocolo intrarrede (IP), o que gerou o protocolo TCP/IP, o padrão segundo o qual a Internet continua operando até hoje. A Arpanet, no entanto, continuou por algum tempo a operar com um protocolo diferente, o NCP. Em 1975, a Arpanet foi transferida para a Defense Communication Agency (DCA). Para tornar a comunicação por computador disponível para os diferentes ramos das forças armadas, a DCA decidiu criar uma conexão entre várias redes sob seu controle. Estabeleceu a chamada Defense Data Network, operando com protocolos TCP/IP. Em 1983 o Departamento de Defesa, preocupado com possíveis brechas de segurança, resolveu criar a MILNET,uma rede independente para usos militares específicos. (CASTELLS, 2003, p. 14) A Arpanet transformou-se em uma rede dedicada à pesquisa e ganhou o nome de Arpa-Internet e em 1988 passou a ser utilizada como backbone pela Fundação Nacional de Ciências, o NSF, que possuía sua própria rede de comunicação de computadores desde 1984. A Arpanet saiu de operação em 1990 por ser nessa época uma rede já obsoleta. Segundo informações do livro “A Galáxia da Internet” de Manuel Castells, a partir de 1990, a internet não tinha mais cunho militar e passou a ser administrada pelo NSF, conforme informa Manuel Castells: [...]o controle da NSF sobre a Net durou pouco. Com a tecnologia de redes de computadores no domínio público, e as telecomunicações plenamente desreguladas, a NSF tratou logo de encaminhar a privatização da Internet. O Departamento de Defesa decidira anteriormente comercializar a tecnologia da Internet, financiando fabricantes de computadores dos EUA para incluir o TCP/IP em seus protocolos na década de 1980. Na altura da década de 1990, a maioria dos computadores nos EUA tinha capacidade de entrar em rede, o que lançou os alicerces para a difusão da interconexão de redes. Em 1995, a NSFNET foi extinta, abrindo caminho para a operação privada da Internet. (CASTELLS, 2003, p. 15) Isso porque o crescimento do número de nós e usuários da Arpanet e o enfraquecimento da Guerra Fria, a Arpanet perdeu seu caráter militar, mas por seu grande potencial, a rede foi dividida em 1983, criando a MILNET, que passou a ter a função de cuidar da parte bélica do país e a Arpanet continuou cuidando das questões científicas. Em 1989, um cientista, físico e professor britânico chamado Tim Berners- Redes de Computadores I 13 Lee desenvolveu o que revolucionou a Internet, um navegador ou borwser. Tim Berners-Lee propôs um projeto de hipertextos para que se dinamizasse a troca de texto de maneira mais rápida e dinâmica em um sistema que foi batizado como WWW – World Wide Web, a rede mundial de computadores. Para entender melhor a história da Internet, insta dizer que em 1977, deuse mais um importante passo ao desenvolvimento e avanço da Internet, dois estudantes de Chicago escreveram um programa que recebeu o nome de Modem, com este programa era possível realizar a transferência de arquivos entre os computadores pessoais dos desenvolvedores. No ano seguinte desenvolveram o Computer Bulletin Board System, cuja função era armazenar e transmitir mensagens. Tanto o modem quando o Computer Bulletin Board System foram liberados para o domínio público. Já em 1983, Tom Jennings criou o programa o FIDO e iniciou a rede FIDONET, que é uma rede de comunicação entre computadores barata e acessível, em que os PC’s se conectam por ligações de linhas telefônicas convencionais. Já no ano 2000, esta rede compreendia mais de 40.000 nós e uma média de três milhões de usuários. Um fator importante para o avanço desta tecnologia na construção de redes de computadores foi o software livre, mais precisamente o UNIX, sistema operacional desenvolvido nos Laboratórios Bell. Este sistema foi liberados para universidades em 1974, com o seu código-fonte, o que permitia a alteração do programa e seu melhoramento. No livro de Manuel Castells, descrevese que o Unix [...]tornou-se a língua franca da maior parte dos departamentos de ciência da computação, e os estudantes logo se tornaram peritos na sua manipulação. Depois, em 1978, o Bell distribuiu seu programa UUCP (UNIX-to-UNIX copy) permitindo a computadores copiar arquivos uns dos outros. Com base no UUCP, em 1979, quatro estudantes na Carolina do Norte (Truscott, Ellis, Bellavin e Rockwell) projetaram um programa para comunicação entre computadores UNIX. Uma versão aperfeiçoada desse programa foi distribuída gratuitamente numa conferência de usuários de UNIX em 1980. Isso permitiu a formação de redes de comunicação entre computadores — a Usenet News — fora do backbone da Arpanet, ampliando assim consideravelmente a prática da comunicação entre computadores. No verão de 1980, a Usenet News chegou ao departamento de ciência da computação na Universidade da Califórnia em Berkeley, onde um grupo brilhante de Redes de Computadores I 14 estudantes de pós-graduação (entre os quais Mark Horton e Bill Joy) trabalhava com adaptações e aplicações do UNIX. Como Berkeley era um nó da Arpanet, esse grupo de estudantes desenvolveu um programa para fazer uma ponte entre as duas redes. Dali em diante, a Usenet ficou vinculada à Arpanet, as duas tradições gradualmente se fundiram e várias redes de computadores passaram a poder se comunicar entre si, muitas vezes partilhando o mesmo backbone (cortesia de uma universidade). Finalmente essas redes se congregaram na forma da Internet. Outro desenvolvimento notável que resultou da tradição dos usuários do UNIX foi o “movimento da fonte aberta” — uma tentativa deliberada de manter aberto o acesso a toda a informação relativa a sistemas de software. No capítulo 2 analisarei em maior detalhe o movimento da fonte aberta e a cultura dos hackers como tendências essenciais na configuração social e técnica da Internet. Mas preciso referirme brevemente a isso neste relato sumário da sequência de eventos que levou à formação da Internet. Em 1984, Richard Stallman, programador no Laboratório de Inteligência Artificial do MIT, numa reação à decisão da AT&T de reivindicar direitos de propriedade sobre o UNIX, lançou a Free Software Foundation, propondo a substituição do copyright pelo que chamou de “copyleft”. Por “copyleft”, entendia-se que qualquer pessoa que usasse um software gratuito deveria, em retribuição, distribuir pela Net o código daquele software aperfeiçoado. Stallman criou um sistema operacional, o GNU, como alternativa ao UNIX, e o tornou disponível na Net sob uma licença que permitia seu uso desde que respeitada a cláusula do copyleft. Em 1991, pondo esse princípio em prática, Linus Torvalds, um estudante de 22 anos da Universidade de Helsinki, desenvolveu um novo sistema operacional baseado no UNIX, chamado Linux, e o distribuiu gratuitamente pela Internet, pedindo aos usuários que o aperfeiçoassem e enviassem os resultados obtidos de volta para a Net. O resultado dessa iniciativa foi o desenvolvimento de um robusto sistema operacional Linux, constantemente aperfeiçoado pelo trabalho de milhares de hackers e milhões de usuários, a tal ponto que o Linux é agora geralmente considerado um dos sistemas operacionais mais avançados do mundo, em particular para a computação baseada na Internet. Outros grupos de desenvolvimento cooperativo de software com base em fonte aberta brotaram da cultura dos usuários do UNIX. Assim, em 2001, mais de 60% dos servidores da www no mundo estavam rodando com Apache, Redes de Computadores I 15 que é um programa de servidor de fonte aberta desenvolvido por uma rede cooperativa de programadores do UNIX. (CASTELLS, 2003, p. 17) Então, na década de 90 surgiram muitos provedores de serviços de Internet que montavam suas próprias redes e estabeleciam suas portas de comunicação em base comercial. Com tais avanços, a internet passou a ser uma rede global de computadores, a partir do projeto da Arpanet que possuía arquitetura em múltiplas camadas, era descentralizada e contava com protocolos para comunicação. Manuel Castells acrescenta que Nessas condições a Net pôde se expandir pela adição de novos nós e a reconfiguração infinita da rede para acomodar necessidades de comunicação. Mas a Arpanet não foi a única fonte da Internet tal como a conhecemos hoje. O formato atual da Internet é também o resultado de uma tradição de base de formação de redes de computadores. Um componente dessa tradição foi o bulletin board systems (BBS), ou sistema de quadro de avisos, um movimento quebrotou da interconexão de computadores pessoais no final da década de 1970. Em 1977, dois estudantes de Chicago, Ward Christensen e Randy Suess, escreveram um programa, que batizaram de MODEM, que permitia a transferência de arquivos entre seus computadores pessoais; em 1978 fizeram um outro, o Computer Bulletin Board System, que permitia aos computadores armazenar e transmitir mensagens. Liberaram ambos os programas para o domínio público. Em 1983, Tom Jennings, um programador que na época trabalhava na Califórnia, criou seu próprio programa de BBS, o FIDO, e iniciou uma rede de BBSs, a FIDONET. Até hoje a FIDONET é a rede de comunicação por computadores mais barata e mais acessível no mundo, baseando-se em PCs e ligações por linhas telefônicas convencionais. Em 2000, compreendia mais de 40.000 nós e cerca de três milhões de usuários. Embora isso represente apenas uma minúscula fração do uso total da Internet, a prática dos BBSs e a cultura exemplificada pela FIDONET foram fatores influentes na configuração da Internet global. Em 1981, Ira Fuchs, na Universidade Municipal de Nova York, e Greydan Freeman, em Yale, iniciaram uma rede experimental com base no protocolo RJE da IBM, montando assim uma rede para usuários de IBM, em sua maioria baseados em universidades, Redes de Computadores I 16 que se tornou conhecida como BITNET (BIT de “Because it's there” em referência ao slogan da IBM; representa também “Because it's time”). Quando a IBM deixou de subvencioná-la em 1986, a rede passou a ser sustentada por taxas pagas pelos usuários. Ela ainda arrola 30.000 nós ativos. (CASTELLS, 2003, p. 15-16) Mas foi Tim Berners-Lee que, utilizando a estrutura já existente da Arpanet, conseguiu implementar um software que permitia tanto a aquisição quanto acrescentar informação de e para qualquer um dos computadores que estivessem conectados por meio da Internet, utilizando os protocolos HTTP, MTML e o URI, que mais tarde passou a ser denominado URL. Mais tarde, Tim Berners-Lee e Robert Cailliau construíram um navegador/editor que passou a ser chamado de sistema de hipertexto da WWW. Ressalte-se que O software do navegador da web foi lançado na Net pelo CERN em agosto de 1991. Muitos hackers do mundo inteiro passaram a tentar desenvolver seus próprios navegadores a partir do trabalho de Berners-Lee. A primeira versão modificada foi o Erwise, desenvolvido no Instituto de Tecnologia de Helsinki em abril de 1992. Pouco depois, Viola, na Universidade da Califórnia em Berkeley, produziu sua própria adaptação. Dessas versões modificadas da www, a mais orientada para o produto foi o Mosaic, projetado por um estudante, Marc Andreessen, e um profissional, Eric Bina, no National Center for Supercomputer Applications da Universidade de Illinois. Eles incorporaram ao Mosaic uma avançada capacidade gráfica, tornando possível captar e distribuir imagens pela Internet, bem como várias técnicas de interface importadas do mundo da multimídia. Divulgaram seu software na Usenet em janeiro de 1993. Depois disso, Andreessen passou a trabalhar como programador numa pequena firma de Palo Alto. Enquanto estava lá, foi procurado por um destacado empresário do Vale do Silício, Jim Clark, que estava deixando a companhia que fundara, a Silicon Graphics, à procura de novas aventuras empresariais. Clark recrutou Andreessen, Bina e seus colegas de trabalho para formar uma nova companhia, a Mosaic Communications, que mais tarde foi obrigada a mudar seu nome para Netscape Communications. A companhia tornou disponível na Net o primeiro navegador comercial, o Netscape Navigator em outubro de 1994, e despachou o primeiro produto no dia 15 de dezembro de 1994. Em 1995, lançaram o software Redes de Computadores I 17 Navigator através da Net, gratuitamente para fins educacionais e ao custo de 39 dólares para uso comercial. (CASTELLS, 2003, p.18) 18 Redes de Computadores I O avanço da Internet se deu graças ao desenvolvimento da WWW. Programa de compartilhamento de informação. A Internet, portanto, é uma grande rede de computadores. É a rede mundial de computadores na qual é possível trocar informações com diversos computadores espalhados pelo mundo afora. Pela Internet, é possível o compartilhamento e disseminação de informações. Manuel Castells declara que A Internet é um meio de comunicação que permite, pela primeira vez, a comunicação de muitos com muitos, num momento escolhido, em escala global. Assim como a difusão da máquina impressora no Ocidente criou o que MacLuhan chamou de a “Galáxia de Gutenberg”, ingressamos agora num novo mundo de comunicação: a Galáxia da Internet. O uso da Internet como sistema de comunicação e forma de organização explodiu nos últimos anos do segundo milênio. No final de 1995, o primeiro ano de uso disseminado da world wide web, havia cerca de 16 milhões de usuários de redes de comunicação por computador no mundo. No início de 2001, eles eram mais de 400 milhões; previsões confiáveis apontam que haverá cerca de um bilhão de usuários em 2005, e é possível que estejamos nos aproximando da marca dos dois bilhões por volta de 2010, mesmo levando em conta uma desaceleração da difusão da Internet quando ela penetrar no mundo da pobreza e do atraso tecnológico. A influência das redes baseadas na Internet vai além do número de seus usuários: diz respeito também à qualidade do uso. Atividades econômicas, sociais, políticas, e culturais essenciais por todo o planeta estão sendo estruturadas pela Internet e em torno dela, como por outras redes de computadores. De fato, ser excluído dessas redes é sofrer uma das formas mais danosas de exclusão em nossa economia e em nossa cultura. (CASTELLS, 2003, p. 8) A partir dos anos 90, a Internet passou a se popularizar no mundo todo, assim aconteceu o desenvolvimento de novos browsers como o Internet Explorer, Mozilla Firefox e outros como vemos hoje em dia. Além disso, o aumento do número de usuários torna esta uma rede de grande alcance, se tornando uma rede de computadores global. Destaca-se, que a Internet é uma grande rede de computadores conectados em que é possível realizar o compartilhamento de informações. Estes computadores se comunicam por meio de protocolos de comunicação específicos como o TCP/IP. TCP Redes de Computadores I 19 significa Transmission Control Protocol – Protocolo de Controle de Transmissão e IP é Internet Protocol - Protocolo de Internet. Possui grande escala de alcance interligando computadores no mundo todo para o compartilhamento de todo o tipo de informações: texto, vídeo, áudio e imagem. O surgimento e avanço da Internet revolucionou o mundo, justamente por permitir o acesso de qualquer pessoa que esteja conectada à rede a todo o tipo de informação que esteja disponível. É atualmente um importante meio de comunicação e interação entre pessoas geograficamente distantes. E sua principal característica, é a arquitetura aberta e descentralizada. A Internet, portanto, é o conjunto de inúmeras outras redes de computadores capazes de se comunicarem a partir da utilização dos protocolos TCP/IP. Neste conjunto, englobam-se tanto redes públicas quanto privadas. (Correia, 2007). A figura 1 mostra-nos a estrutura a rede Internet. Figura 1: Estrutura de funcionamento da Internet. Redes de Computadores I 20 Fonte: KUROSE, James. F; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem topdown/ 6. ed. – São Paulo: Pearson Education do Brasil, 2013, p. 2. Nesta rede, há a comutação de pacotes, meio que permite o compartilhamento de um caminho ou partes de um caminho com múltiplos sistemas finais comunicantes. Sua estrutura de interconexão é hierárquica, onde os sistemas finais estão conectados aos servidores de Internet, os ISPs (InternetService Provider) através de redes de acesso. Esta rede de acesso pode ser local, sendo de uma empresa ou universidade, pode ser uma linha telefônica acoplada a um modem ou ainda uma rede de acesso com alta velocidade dedicada ou comutada. Os provedores de acesso local conectam- se a provedores de acesso regionais, que se conectam a provedores de acesso internacionais, neste caso, os ISPs tanto nacionais quanto internacionais correspondem ao nível mais alto de hierarquia desta rede. (CORREIA, 2007). A Internet é atualmente a maior rede de conexão existente no mundo, é um importante sistema em que milhões de computadores estão conectados e com uma imensa quantidade de usuários que se conectam por diversos equipamentos: PCs, laptops, tables, smartphones, televisões e outros. Assim, pode-se dizer que a Internet é uma ampla rede com imensa capacidade de utilização. Os equipamentos conectados à Internet são chamados de hospedeiros ou sistema finais, que são conectados entre si por enlaces, os links de comunicação, e, por comutadores de pactos, os switches. (KUROSE; ROSS, 2013). Segundo James F. Kurose e Keith W. Ross (2013, p.4) Enlaces diferentes podem transmitir dados em taxas diferentes, sendo a taxa de transmissão de um enlace medida em bits por segundo. Quando um sistema final possui dados para enviar a outro sistema final, o sistema emissor segmenta esses dados e adiciona bytes de cabeçalho a cada segmento. Os pacotes de informações resultantes, conhecidos como pacotes no jargão de rede de computadores, são enviados através da rede ao sistema final de destino, onde são remontados para os dados originais. Um comutador de pacotes encaminha o pacote que esta chegando a um de seus enlaces de comunicação de entrada para um de seus enlaces de comunicação de saída. Ha comutadores de pacotes de todos os tipos e formas, mas os dois mais proeminentes na Internet de hoje são roteadores e Rede de Computadores e a Internet Redes de Computadores I 21 comutadores de camada de enlace. Esses dois tipos de comutadores encaminham pacotes a seus destinos finais. Os comutadores de camada de enlace geralmente são utilizados em redes de acesso, enquanto os roteadores são utilizados principalmente no núcleo da rede. A sequência de enlaces de comunicação e comutadores de pacotes que um pacote percorre desde o sistema final remetente até o sistema final receptor e conhecida como rota ou caminho através da rede. E difícil de estimar a exata quantidade de tráfego na Internet, mas a Cisco [Cisco VNI, 2011] estima que o tráfego global da Internet esteve perto do 40 exabytes por mês em 2012. 1 Os serviços finais se conectam aos ISPs para acessar a Internet. Os ISPs podem ser residenciais, corporativos, universidades e aqueles que fornecem acesso sem fio. Tais ISPs são redes de comutadores de pactos e enlaces de comunicação e oferecem acesso à rede por banda larga como modem, a cabo ou linha digital de assinantes (DSL), além do acesso por rede local (LAN) de alta velocidade, acesso sem fio e por modem discado. Podem ainda, oferecer acesso para provedores de conteúdo ao conectar sites à Internet. James F. Kurose e Keith W. Ross (2013, p.3-4) informam que Esses ISPs de nível mais baixo são interconectados por meio de ISPs de nível mais alto, nacionais e internacionais, como Level 3 Communications, AT&T, Sprint e NTT. Um ISP de nível mais alto consiste em roteadores de alta velocidade interconectados com enlaces de fibra ótica de alta velocidade. Cada rede ISP, seja de nível mais alto ou mais baixo, e gerenciada de forma independente, executa o protocolo IP (ver adiante) e obedece a certas convenções de nomeação e endereço. O envio e recebimento de informações se dá mediante à execução de protocolos. Estes protocolos são executados pelos sistemas finais, pelos comutadores e por outras peças da Internet. Neste caso, o protocolo é o já citado TCP que é o protocolo de controle de transmissão e pelo protocolo IP, o protocolo da Internet, responsável por determinar o formato dos pacotes enviados e recebidos entre roteadores e sistemas finais. Para o desenvolvimento da Internet tornou-se necessário o estabelecimento de padrões da Internet, neste caso tem-se o IETF (Internet Engineering Task Force – Força 1 Grifos do autor Redes de Computadores I 22 de Trabalho de Engenharia de Internet) que possui documentos que definem os padrões do IETF, estes documentos são os RFCs (Request For Comments – Pedido de Comentários), que a princípios solicitavam comentários para solucionar problemas da arquitetura do sistema anterior à Internet. No RFC estão definidos os protocolos TPC, IP, HTTP (Web) e SMTP (e-mail). (CORREIA, 2007) A Internet é também uma infraestrutura para serviços e aplicações, aplicações tais como correio eletrônico, navegação Web, redes sociais, mensagens instantâneas, VoIP (Voz sobre IP), vídeo em tempo real, jogos distribuídos, compartilhamento de arquivos ponto a ponto (peer-to-peer ou P2P), televisão pela Internet, login remoto e tantas outras aplicações. Destarte, os sistemas finais conectados à Internet oferecem uma API (Interface de Programação de Aplicação), um conjunto de regras que devem ser cumpridas pelo software emissor de forma a possibilitar que a Internet consiga enviar os dados ao destino, esta API determina como o programa executado no sistema final solicita a infraestrutura da Internet para enviar dados a um programa destino específico, que está sendo executado em um outro sistema final. (KUROSE; ROSS, 2013) Os sistemas finais conectados à Internet encontram-se na periferia desta rede. Estão inclusos neste rol os computadores de mesa, os servidores Web e de e-mail, por exemplo, e computadores móveis. Tais sistemas também denominados de hospedeiros ou hosts já que guardam programas de aplicação, programa servidor da Web e servidor de e-mail. Estes sistemas finais são subdivididos em clientes (PCs, computadores portáteis e outros) e servidores, máquinas com maior poder para armazenamento e distribuição de páginas Web, vídeo em tempo real, e-mails e inúmeras outras funções, estes servidores localizam-se em datacenters, que comportam centenas de servidores. O núcleo da rede refere-se à rede de comutadores de pacote e enlaces que tem a função de realizar a interconexão dos sistemas finais. A troca de mensagens entre os sistemas finais é um serviço de aplicação de rede. Estas mensagens podem, por Periferia da rede Redes de Computadores I 23 exemplo, ter a função de controle ou conter dados, como uma imagem ou um áudio. Para que aconteça o envio desta mensagem entre sistemas finais, o sistema final de origem fragmenta tal mensagem em mensagens menores com dados menores, os chamados pacotes. Na figura 2, pode-se visualizar os núcleos da rede em destaque: Figura 2: Núcleo da rede Fonte: KUROSE, James. F; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem top- down/ 6. ed. – São Paulo: Pearson Education do Brasil, 2013, p. 17. Durante o tráfego entre o sistema final de origem e o sistema final destino, cada pacote percorre enlaces de comunicação e comutadores de pacotes, estes podem ser Núcleo da Rede Redes de Computadores I 24 roteadores ou comutadores de camada de enlace. Conforme esclarece James F. Kurose e Keith W. Ross Pacotes são transmitidos por cada enlace de comunicação a uma taxa igual a de transmissão total. Assim, se um sistema final de origem ou um comutador de pacotes estiver enviando um pacote de L bits por um enlace com taxa de transmissão de R bits/s, então o tempo para transmitir o pacote e L/R segundos. (KUROSE; ROSS, 2013, p. 16) Alguns comutadores de pacotes fazem a transmissão armazena-e-reenvia (store- and-forward) nas entradas do enlace. Na transmissão armazena-e-reenvia,o comutador de pacotes recebe-o inteiro antes de começar a transmitir o primeiro bit para o enlace de saída. Um roteador em geral terá muitos enlaces incidentes, pois sua função e comutar um pacote que chega para um enlace de saída; neste exemplo simples, o roteador tem a tarefa de transferir um pacote de um enlace (entrada) para o único outro enlace conectado. Aqui, a origem tem três pacotes, cada um consistindo em L bits, para enviar ao destino. [...] Como emprega a transmissão armazena -ereenvia, nesse momento, o roteador não pode transmitir os bits que recebeu; em vez disso, ele precisa primeiro manter em buffer (isto e, “armazenar”) os bits do pacote. Somente depois que o roteador tiver recebido todos os bits, poderá começar a transmitir (isto e, “reenviar”) o pacote para o enlace de saída. Para ter uma ideia da transmissão armazena-e-reenvia, vamos agora calcular a quantidade de tempo decorrido desde quando a origem começa a enviar ate que o destino tenha recebido o pacote inteiro. (KUROSE; ROSS, 2013, p. 17-18) 25 Redes de Computadores I A figura 3 mostra como funciona a transmissão armazena-e-reenvia: Figura 3: Comutação pelo método armazena-e-reenvia. Fonte: KUROSE, James. F; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem topdown/ 6. ed. – São Paulo: Pearson Education do Brasil, 2013, p. 17. A transmissão começa na origem a partir do tempo 0. No tempo L/R segundos, já terá acontecido a transmissão do pacote inteiro. Tal pacote é recebido e armazenado no roteador. Então no tempo L/R segundos, o roteador terá recebido todo o pacote e então começa a transmiti-lo para o enlace de saída para o destino. O roteador terá realizado a transmissão do pacto inteiro no tempo 2L/R, momento em que o destino terá recebido todo o pacote. Assim, o atraso total é 2L/R. A rede de acesso é uma rede física em que se conecta um sistema final ao roteador de borda, construindo um caminho de um sistema final ao outro. Existem diversos tipos de redes de acesso: redes de ambientes doméstico, corporativo e móvel sem fio. Uma rede doméstica pode se dar mediante a conexão por linha digital assinante (DSL), por cabo, por FTTH, discado e via satélite. No ambiente residencial, os tipos mais comuns de rede de acesso é o DSL ou a cabo. A rede DSL é fornecida por empresa de serviço telefônico local com fio. Cada cliente utiliza um modem DSL, que utiliza a linha telefônica para trocar dados com um multiplexador digital que permite acessar a linha do assinante. Redes de Acesso e meios físicos Redes de Computadores I 26 O modem DSL da casa apanha dados digitais e os traduz para sons de alta frequência, para transmissão pelos fios de telefone ate a CT; os sinais analógicos de muitas dessas residências são traduzidos de volta para o formato digital no DSLAM. A linha telefônica conduz, simultaneamente, dados e sinais telefônicos tradicionais, que são codificados em frequências diferentes: • um canal downstream de alta velocidade, com uma banda de 50 kHz a 1 MHZ; • um canal upstream de velocidade media, com uma banda de 4 kHz a 50 kHz; • um canal de telefone bidirecional comum, com uma banda de 0 a 4 kHz. Essa abordagem faz que a conexão DSL pareça três conexões distintas, de modo que um telefonema e a conexão com a Internet podem compartilhar a DSL ao mesmo tempo. (KUROSE; ROSS, 2013, p.10) O cliente, que é consumidor, recebe o sinal de Internet que é separado do sinal telefônico por um distribuidor e conduz o sinal de Internet com os dados ao modem DSL. As taxas de transmissão no padrão DSL são de 12 Mbits/s em downstream e 1,8Mbtis/s upstream [ITU, 1999] as taxas são 24 Mbits/s downstream e 2,5 Mbits/s upstream [ITU, 2003], essa diferenciação de taxas de trasmissão define o acesso como assimétrico . A figura 4 mostra como é a composição dessa rede de acesso: Figura 4: Rede de acesso DSL Fonte: KUROSE, James. F; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem topdown/ 6. ed. – São Paulo: Pearson Education do Brasil, 2013, p. 10. Redes de Computadores I 27 Já na rede de acesso a cabo, o acesso à Internet se dá por meio da infraestrutura da TV a cabo. Assim, o usuário usa a rede de acesso de sua televisão para obter acesso à Internet. Para este tipo de acesso, é necessária a utilização de modems a cabo, que é um aparelho externo que fará a conexão do computador residencial por uma porta Ethernet. A rede Híbrida de Fibra-Coaxial (HFC) é dividida em dois canais sendo um de transmissão (douwnstream) e um de recebimento (upstream), o acesso geralmente é assimétrico. Uma característica importante do acesso a cabo e o fato de ser um meio de transmissão compartilhado. Em especial, cada pacote enviado pelo terminal viaja pelos enlaces downstream ate cada residência e cada pacote enviado por uma residência percorre o canal upstream ate o terminal de transmissão. Por essa razão, se diversos usuários estiverem fazendo o download de um arquivo em vídeo ao mesmo tempo no canal downstream, cada um recebera o arquivo a uma taxa bem menor do que a taxa de transmissão a cabo agregada. Por outro lado, se ha somente alguns usuários ativos navegando, então cada um poderá receber paginas da Web a uma taxa de downstream máxima, pois esses usuários raramente solicitarão uma pagina ao mesmo tempo. Como o canal upstream também e compartilhado, e necessário um protocolo de acesso múltiplo distribuído para coordenar as transmissões e evitar colisões. (KUROSE; ROSS, 2013, p. 11) A figura 5 mostra a estrutura da rede HFC: Figura 5: Rede de acesso FHC Redes de Computadores I 28 Fonte: KUROSE, James. F; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem topdown/ 6. ed. – São Paulo: Pearson Education do Brasil, 2013, p. 11. Outro modelo de rede de acesso é por meio FTTH ( Fiber To The Home), que possui maior velocidade que as anteriores. É uma rede que oferece o caminho de acesso por meio de fibra ótica do centro de transmissão à residência. Uma forma de distribuição é com a fibra direta, cuja fibra da central telefônica é compartilhada com diversas residências e depois é dividida em fibras individuais para cada cliente. Existem ainda duas arquiteturas desta rede de distribuição ótica: redes óticas ativas (AONs): semelhante à Ethernet comutada e, redes óticas passivas (PONs): as redes PONs são compostas tanto de fibras óticas quanto de dispositivos óticos e sistema, neste caso têm-se o ONUs, OLTs, filtros, divisores passivos e ainda lasers. A figura 6 mostra a rede PON: Figura 6: Rede TFFH na arquitetura PON Fonte: <http://www.teleco.com.br/tutoriais/tutorialropassiva1/pagina_3.asp> Há ainda rede de acesso Ethernet e Wi-Fi. Na rede Ethernet, os usuários fazem uso de um par de fios de cobre trançado para realizar a conexão com o comutador Ethernet. Esse comutador está conectado a uma rede Internet maior. A taxa neste tipo de rede é consideravelmente pequena, os usuário da Ethernet tem acesso a 100Mbits/s enquanto servidores de acesso possuem alcançam até 10 Gbit/s. A figura 7 representa uma rede Ethernet Redes de Computadores I 29 Figura 7: Rede Ethernet Fonte: TANENBAUM, Andrew S.; WETHERALL, David. Redes de computadores. Tradução Daniel Vieira. São Paulo: Pearson Prentice Hall, 2011, p.13. Conforme informa Andrew S. Tanenbaum e David Wetherall A topologia de muitas LANs com fios é embutida a partir de enlaces ponto a ponto. O IEEE 802.3, popularmente chamado Ethernet, é de longe o tipo mais comum de LAN com fios. A Figura 1.6(b) mostra uma topologia de exemplo da Ethernet comutada. Cada computador troca informações usando o protocolo Ethernet e se conecta a um dispositivo de rede chamado switch, com um enlace ponto a ponto. Daí onome. Um switch tem várias portas, cada qual podendo se conectar a um computador. A função do switch é repassar os pacotes entre os computadores que estão conectados a ela, usando o endereço em cada pacote para determinar para qual computador enviá-lo. 2 (TANENBAUM; WETHERALL, 2011, p.12) Atualmente, o modo mais comum de acesso é a rede Wi-Fi, sem fio. Neste tipo de rede dentro de uma LAN, os usuários conseguem transmitir e receber pacotes de e para um ponto de acesso que está conectado à rede local que está conectada à Internet com fio. A rede Wi-Fi funciona por ondas de rádio, que são transmitidas de um adaptador, conhecido como roteador. Este roteador recebe sinas, decodifica-os e 2 Grifos do autor Redes de Computadores I 30 os emite a partir de uma antena. Para acessar esta rede é necessário estar próximo ao hotspot. Outra forma de acesso é o sem fio a longa distância. Mais recentemente tem o 4G. Este tipo de tecnologia é mais comum em Iphones, Blackberrys e outros. Esta tecnologia utiliza a infraestrutura sem fio da telefonia de celular, podendo assim enviar e receber pacotes por uma estação-base controlada pela operadora do celular. Atrasos Para entender melhor como é o funcionamento de um comutador, note a explicação de James F. Kurose e Keith W. Ross A cada comutador de pacotes estão ligados vários enlaces. Para cada um destes, o comutador de pacotes tem um buffer de saída (também denominado fila de saída), que armazena pacotes prestes a serem enviados pelo roteador para aquele enlace. Os buffers de saída desempenham um papel fundamental na comutação de pacotes. Se um pacote que esta chegando precisa ser transmitido por um enlace, mas o encontra ocupado com a transmissão de outro pacote, deve aguardar no buffer de saída. Desse modo, alem dos atrasos de armazenagem e reenvio, os pacotes sofrem atrasos de fila no buffer de saída. Esses atrasos são variáveis e dependem do grau de congestionamento da rede. Como o espaço do buffer e finito, um pacote que esta chegando pode encontra-lo lotado de outros que estão esperando transmissão. Nesse caso, ocorrera uma perda de pacote — um pacote que esta chegando ou um dos que já estão na fila e descartado. 3(KUROSE; ROSS, 2013, p.18) Em uma rede simples de comutação de pacotes, os pacotes são como placas, sendo que a largura da placa corresponde à quantidade de bits deste pacote. Assim, ao envia-los com o mesmo tamanho na camada de enlace Ethernet de 10 Mbits/s até 3 Grifos do autor Atraso e perda em redes de comutação de pacotes Redes de Computadores I 31 o primeiro comutador que tem a função de encaminhá-los ao enlace de 1,5 Mbits/s, se em um intervalo de tempo, a taxa de chegada destes pacotes ao roteador for superior a 1,5 Mbits/s acontecerá um congestionamento no roteador, assim os pacotes ficarão em fila no buffer de saída do enlace até serem transmitidos ao enlace. (KUROSE; ROSS, 2013). A figura 8 mostra o funcionamento da comutação de pacotes: 32 Redes de Computadores I Figura 8: Comutação de pacotes em rede simples Fonte: KUROSE, James. F; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem topdown/ 6. ed. – São Paulo: Pearson Education do Brasil, 2013, p. 19. A transferência de um pacote se dá desde o seu sistema final de origem, passando por vários roteadores até chegar ao sistema final destino. Durante essa transferência, acontecem diversos tipos de atrasados em cada nó, como: atraso de processamento nodal, atraso de fila, atraso de transmissão e atraso de propagação. Estes atrasos juntos formam o atraso nodal total. As funções de aplicações na Internet são afetadas pelos atrasos. (KUROSE; ROSS, 2013) O atraso de processamento nodal corresponde ao tempo exigido para que se examine o cabeçalho do pacote e então seja determinada qual a sua direção. Pode haver neste tipo de atraso fatores adicionais, como o tempo que será gasto para verificar erros em bits que podem estar no pacote e que tenham acontecido no momento da transmissão dos bits do nó anterior ao roteador final. Estes atrasos se Redes de Computadores I 33 dão em ordem de microssegundos e, após o processamento nodal, o roteador consegue direcionar o pacote para a fila que precede o enlace com o roteador final. O atraso de fila ocorre quando um pacote fica esperando para ser transmitido ao enlace. James F. Kurose e Keith W. Ross declaram que O tamanho desse atraso dependa da quantidade de outros pacotes que chegarem antes e que já estiverem na fila esperando pela transmissão no enlace. Se a fila estiver vazia, e nenhum outro pacote estiver sendo transmitido naquele momento, então o tempo de fila de nosso pacote será zero. Por outro lado, se o trafego estiver intenso e houver muitos pacotes também esperando para ser transmitidos, o atraso de fila será longo. (KUROSE; ROSS, 2013, p.27) Este tipo de atraso pode ser na ordem de micro a milissegundos. O pacote não é transmitido imediatamente ao próximo nó, ele tem que passar pela fila, que pode já conter outros pacotes aguardando para serem transmitidos, neste caso os atrasos podem ser maiores. Há ainda o atraso de transmissão. Neste caso há que se considerar que os pacotes são transmitidos segundo a ordem de chegada. O atraso de transmissão é o tempo necessário para transmitir todos os bits do pacto para o enlace. E o outro tipo de atraso é o de propagação, é o tempo necessário para que o bit se propague no meio de transmissão, ou seja, ao lançar um bit no enlace, este irá se propagar até o roteador do sistema final destino. Portanto, o tempo gasto para propagar o bit do início do enlace até o roteador final, é o que se denomina de atraso de propagação. A taxa de propagação depende do meio físico da rede, estando na faixa de “2 ∙ 108 m/s a 3 ∙ 108 m/s”, ou seja, a velocidade de propagação aproximasse da velocidade da luz. Em redes WAN, a taxa de atraso de propagação está na ordem de milissegundos. Perda de pacote Atraso e perda em redes de comutação de pacotes Redes de Computadores I 34 A perda de pacote acontece porque a fila que precede um enlace tem tamanho finito, ou seja, tem um limite de aceitação de pacotes; assim, havendo um atraso na transmissão destes pacotes é possível acontecer a perda do pacote que chegar por último e encontrar a fila lotada. Neste sentido, James F. Kurose e Keith W. Ross (2013, p.30) informam que A capacidade da fila que precede um enlace e finita, embora a sua formação dependa bastante do projeto e do custo do comutador. Como a capacidade da fila e finita, na verdade os atrasos de pacote não se aproximam do infinito quando a intensidade de trafego se aproxima de 1. O que acontece de fato e que um pacote pode chegar e encontrar uma fila cheia. Sem espaço disponível para armazena-lo, o roteador o descartará; isto e, ele será perdido.4 O sistema final, porém, entende que o pacote perdido foi transmitido para o núcleo de rede, mas este pacote não emergiu dele no destino. A quantidade de pacotes perdidos pode ser maior se o tráfego for ou estiver intenso. Importante considerar é que o desempenho do nó pode ser medido tanto pelo atraso quando pela probabilidade de perda de pacote. A Internet é organizada em uma arquitetura de camadas que permite reduzir a complexidade do projeto. A organização por camadas permite que cada camada ofereça um serviço à camada superior, isolando-as da implementação dos recursos. As camadas neste tipo de rede são: Camada de protocolo; Camada de aplicação; Camada de transporte; Camada de rede; Camada de enlace e Camada física. Na camada de protocolo, hardware e software são os executores. Cada protocolo pertence a uma camada, que é executada no software ou no hardware, ou ainda em uma combinaçãodestes dois. Os protocolos desta camada são: HTTP e SMTP, estes protocolos geralmente são realizados no software no sistema final. Os autores James F. Kurose e Keith W. Ross (2013, p.37) esclarecem que O sistema de camadas de protocolos tem vantagens conceituais e estruturais [RFC 3439]. Como vimos, a divisão Camada de protocolos e seus modelos de serviço Redes de Computadores I 35 em camadas proporciona um modo estruturado de discutir componentes de sistemas. A modularidade facilita a atualização de componentes de sistema. Devemos mencionar, no entanto, que alguns pesquisadores e engenheiros de rede se opõem veementemente ao sistema de camadas [Wakeman, 1992]. Uma desvantagem potencial e que uma camada pode duplicar a funcionalidade de uma inferior. Por exemplo, muitas pilhas de protocolos oferecem serviço de recuperação de erros para cada enlace 4 Grifos do autor e também de fim a fim. Uma segunda desvantagem e que a funcionalidade em uma camada pode necessitar de informações (por exemplo, um valor de carimbo de tempo) que estão presentes somente em outra, o que infringe o objetivo de separação de camadas. Quando tomados em conjunto, os protocolos das varias camadas são denominados pilha de protocolos. A pilha de protocolos da Internet e formada por cinco camadas: física, de enlace, de rede, de transporte e de aplicação[...]4 Na camada de aplicação estão as chamadas aplicações de rede e os seus protocolos. Em se tratando de camada de aplicação da Internet, é composta por diversos protocolos como: HTTP; SMTP e o FTP. O protocolo HTTP é o responsável por promover a requisição e também transferência de documentos pela Web; o protocolo SMTP, no entanto, faz a transferência de mensagem de correio eletrônico enquanto o protocolo FTP é responsável pela transferência de arquivos entre dois sistemas finais. Um protocolo desta camada é distribuído pelos sistemas finais e, esta aplicação utiliza o protocolo como meio de troca de pacotes de informação com a camada de aplicação de outro sistema final. A camada de transporte carrega mensagens da camada de aplicação entre o cliente e o servidor de uma aplicação. Nesta camada existem dois protocolos, o TCP e o UDP, ambos podem levar as mensagens da camada. O protocolo TCP é responsável por serviços orientados à conexão para as aplicações equivalentes, os serviços são: 4 Grifos do autor Redes de Computadores I 36 entrega garantia da mensagem da camada de aplicação para o destino, faz ainda o controle de fluxo e ainda fragmenta as mensagens mais longas em fragmentos curtos, provendo mecanismo de controle de congestionamento a fim de que a origem reduza a velocidade de transmissão sempre que a rede estiver congestionada. Já o protocolo UDP, tem a função de prover serviço não orientado à conexão para as aplicações, este tipo de serviço garante segurança, sem controle de fluxo e de congestionamento. (KUROSE; ROSS, 2013). Enquanto isso, a camada de rede da Internet deve movimentar pacotes da camada de rede, de um hospedeiro a outro. Esses pacotes são chamados de datagramas. Segundo James F. Kurose e Keith W. Ross A camada de rede da Internet e responsável pela movimentação, de um hospedeiro para outro, de pacotes da camada de rede, conhecidos como datagramas. O protocolo de camada de transporte da Internet (TCP ou UDP) em um hospedeiro de origem passa um segmento da camada de transporte e um endereço de destino à camada de rede, exatamente como você passaria ao serviço de correios uma carta com um endereço de destinatário. A camada de rede então prove o serviço de entrega do segmento à camada de transporte no hospedeiro de destino. (KUROSE; ROSS, 2013, p.38) Na camada de rede, o protocolo utilizado é o IP que irá definir nos datagramas, os campos e o modo como os sistemas finais e roteadores agirão nestes campos. Para James F. Kurose e Keith W. Ross (2013, p.38) “Embora a camada de rede contenha o protocolo IP e também numerosos outros de roteamento, ela quase sempre e denominada apenas camada IP, refletindo o fato de que ele e o elemento fundamental que mantém a integridade da Internet.” Todos os componentes da Internet que possuem essa camada de rede devem possuir protocolos de roteamento, responsáveis por determinar as rotas que os datagramas seguirão entre o sistema final de origem e destino. A camada de rede depende dos serviços da camada de enlace. Já a camada de enlace, os protocolos garantem a entrega entre enlaces, desde o transmissor até o receptor, passando por um só enlace, assim, os serviços de enlace dependem do protocolo utilizado na camada. Redes de Computadores I 37 Note que esse serviço confiável de entrega e diferente do de entrega garantida do TCP, que prove serviço de entrega garantida de um sistema final a outro. Exemplos de protocolos de camadas de enlace são Ethernet, Wi-Fi e o protocolo DOCSIS da rede de acesso por cabo. Como datagramas normalmente precisam transitar por diversos enlaces para irem da origem ao destino, serão manuseados por diferentes protocolos de camada de enlace em diversos enlaces ao longo de sua rota, podendo ser manuseados por Ethernet em um e por PPP no seguinte. A camada de rede recebera um serviço diferente de cada um dos variados protocolos de camada de enlace. Neste livro, pacotes de camada de enlace serão denominados quadros. (KUROSE; ROSS, 2013, p.38) Essa camada, portanto, tem a função de transferir um datagrama de um nó a outro adjacente sobre um enlace. E a camada física possui os requisitos necessários para proceder ao transporte no meio físico, dos bits que formam o quadro da camada de enlace. James F. Kurose e Keith W. Ross explicam melhor: Enquanto a tarefa da camada de enlace e movimentar quadros inteiros de um elemento da rede até um elemento adjacente, a da camada física e movimentar os bits individuais que estão dentro do quadro de um no para o seguinte. Os protocolos nessa camada de novo dependem do enlace e, além disso, do próprio meio de transmissão do enlace (por exemplo, fios de cobre trancado ou fibra ótica monomodal). Por exemplo, a Ethernet tem muitos protocolos de camada física: um para par de fios de cobre trancado, outro para cabo coaxial, mais um para fibra e assim por diante. Em cada caso, o bit atravessa o enlace de um modo diferente. (KUROSE; ROSS, 2013, p.39) Esta camada corresponde a um conjunto de operações implementados por protocolo mediante uma interface, sendo oferecido à camada superior. Os serviços desta camada são utilizados por aplicações distintas, sendo possível, que uma aplicação utilize vários serviços, como por exemplo, o HTTP, SHTTP e o DNS. Entidades na camada de rede Redes de Computadores I 38 Esta camada possui serviços que podem ser orientados à conexão ou não. Os serviços relacionados ao TCP são orientados à conexão, já os serviços do protocolo UDP não são orientados à conexão. As entidades desta camada correspondem aos elementos de hardware ou software, placas ou processos, respectivamente, que atuam nesta camada. As entidades desta camada residem em máquinas diferentes e são denominadas pares. Na camada de rede se duas entidades possuem um número de rede igual significa que estas entidades estão na mesma rede IP, que estão no mesmo domínio de broadcast, significa ainda que estão em uma mesma rede lógica. Tais entidades podem comunicar-se sem auxílio de outra entidade da rede. Porém se estas entidades possuem números de rede distintos significa que elas estão em redes IP diferentes e só podem comunicar-se mediante o processo de roteamento necessitando assim, do auxílio de outra entidade de rede, o roteador. Estamos encerrando a unidade. Sempre que tiver uma dúvida entre em contato com seututor virtual através do ambiente virtual de aprendizagem e consulte sempre a biblioteca do seu polo. É hora de se avaliar Lembre-se de realizar as atividades desta unidade de estudo. Elas irão ajudá-lo a fixar o conteúdo, além de proporcionar sua autonomia no processo de ensino-aprendizagem. Redes de Computadores I 39 1. As características: I. Protocolo sem estado e cliente-servidor orientado à transação; II. Uso típico na comunicação entre o navegador e o servidor Web; III. Utiliza o TCP para garantir a confiabilidade. São pertinentes a: a) URI. b) HTML. c) URL. d) HTTP. e) UAS. 2. O protocolo TCP: I. executa o empacotamento, fragmentando os dados em pacotes menores, numerando-os, garantindo que cada pacote seja entregue no destino em segurança e na ordem adequada; II. pertence à camada de transporte; III. executa o endereçamento e o roteamento; IV. pertence à camada de rede. Está correto o que se afirma APENAS em: a) I e IV. b) I e IV. c) I e II. d) II e III. e) III. Exercícios – Unidade 1 Redes de Computadores I 40 3. Na comunicação TCP/IP, usando o protocolo TCP para o transporte de dados, têm-se: I. Serviço orientado por conexão; uma sessão é estabelecida entre os hosts; II. Garantia da entrega através do uso de confirmações e entrega sequenciada dos dados; III. Maior rapidez que o UDP, necessitando de baixa sobrecarga e podendo oferecer suporte à comunicação ponto a ponto e ponto a vários pontos; É correto o que consta em: a) I e II, apenas. b) I e III, apenas. d)II e III, apenas. e)I, II e III. 4. Em relação à Internet I-É uma grande rede de computadores; II- É a rede mundial de computadores na qual é possível trocar informações com diversos computadores espalhados pelo mundo afora; III- É um protocolo de comunicação; IV- A Internet é um meio de comunicação que permite, pela primeira vez, a comunicação de muitos com muitos, num momento escolhido, em escala global. As afirmativas corretas são: a)Apenas em I. b)I,II,III. c)Todas as alternativas. d)Apenas I e IV. e)I,II e IV. Redes de Computadores I 41 5. Em relação aos tipos de atrasos e perda em redes. Marque a alternativa correta. a) O atraso de fila ocorre quando um pacote fica esperando para ser transmitido ao enlace. b) Atraso se refere ao momento em que a transmissão cai. c) Atraso de fila se refere ao momento em que se há um congestionamento na camada de transmissão. d) Atraso nodal se refere à não capacidade de decidir se a transmissão será transportada. e) O atraso se caracteriza pelo acesso momentâneo de vários usuários a um mesmo site. 6. Todas estão corretas exceto: a) A perda de pacote acontece porque a fila que precede um enlace tem tamanho finito, ou seja, tem um limite de aceitação de pacotes. b) A organização por camadas permite que cada camada ofereça um serviço à camada superior, isolando-as da implementação dos recursos. c) O atraso de transmissão é o tempo necessário para transmitir todos os bits do pacto para o enlace. d) A camada de protocolo é executada no núcleo da rede. e) Na camada de aplicação estão as chamadas aplicações de rede e os seus protocolos. 7. Em relação à camada de redes é correto afirma que: I - As camadas de redes são: Camada de protocolo; Camada de aplicação; Camada de transporte; Camada de rede; Camada de enlace e Camada física. II- Os protocolos: HTTP e SMTP pertencem a camada de protocolos. Redes de Computadores I 42 III- A camada de transporte carrega mensagens da camada de aplicação entre o cliente e o servidor de uma aplicação IV-Para fazer a transmissão pela camada de transporte utiliza-se os protocolos UDP e HTTP. a) Somente a alternativa IV é a correta. b) As alternativas I e II são as únicas incorretas. c) As alternativas II e III são as únicas corretas. d) I,II e III são as alternativas corretas. e) Todas as alternativas são corretas. 8. Em relação aos protocolos, marque a alternativa que define a quais camadas cada um pertence, respectivamente: TCP, IP, HTTP, UDP a)Protocolo-Aplicação- Rede-Transporte. b)Transporte- Rede-Enlace-Transporte. c)Transporte- Rede- Protocolo- Transporte. d)Protocolo- Aplicação- Rede- Protocolo. e)Aplicação-Rede-Enlace-Aplicação. 9. Explique o que é a Perda de Pacote: ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ Redes de Computadores I 43 ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ 10. Fale sobre os meios de acesso à Internet: ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ 44 Redes de Computadores I 2 Camada de Aplicação Redes de Computadores I 45 Nesta unidade, conheceremos os protocolos existentes na camada de aplicação que permitem que a camada realize diversos serviços. As aplicações são essenciais para as redes e, assim movem a rede Internet. Diversas são as aplicações existentes como aplicações de textos, correio eletrônico e outros. Objetivos da unidade: Entender seu funcionamento da camada de aplicação; Conhecer os protocolos existentes nesta camada; Analisar as aplicações disponíveis na camada de aplicação. Plano da unidade: • Camada de aplicação • Protocolos da camada de aplicação • WWW / HTTP • Web Cache ( servidores Proxy ) • FTP • Correio Eletrônico ( SMTP, POP3 e IMAP ) • DNS Bons estudos! A popularização da Internet seu deu inclusive pela criação de aplicações que tornaram o acesso e uso muito mais fácil e interessante. As aplicações da Internet se popularizaram entre 1970 e 1980, neste período surgiram aplicações de textos, correio eletrônico, acesso remoto, transferência de arquivos e grupos de discussão. Redes de Computadores I 46 Algumas importantes aplicações são: a WWW – World Wide Web, onde é possível navegar na Internet, utilizar o correio eletrônico e outros; e a partir da WWW a mensagem instantânea, compartilhamento de arquivos Peer to Peer; e nos últimos anos aplicações de voz e vídeo, que tem feito enorme sucesso no mundo virtual da Internet, neste caso pode-se citar a Voz sobre IP (VoIP), videoconferência sobre IP, distribuição de vídeo como no Youtube, filmes por demanda, jogos online além das aplicações para redes sociais, como facebook, Twiter e outros. Toda essa variedade de aplicações foi criada em cima darede de roteadores e elances de comunicação da Internet. A figura 9 contém os protocolos utilizados na camada de aplicação para cada tipo de aplicação. Figura 9: Protocolos da camada de aplicação e sua respectiva aplicação. Aplicação Protocolo de camada de aplicação Correio eletrônico SMTP [ RFC 5321 ] Acesso a terminal remoto Telnet [ RFC 854 ] Web HTTP [ RFC 2616 ] Transferência de arquivos FTP [ RFC 959 ] Multimídia em fluxo contínuo HTTP (por exemplo, Youtube) Telefonia por Internet SIP [ RFC 3261 ], RTP [ RFC 3550 ] ou proprietária (por exemplo, Skype) Fonte: KUROSE, James. F; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem topdown/ 6. ed. – São Paulo: Pearson Education do Brasil, 2013, p. 70. A camada de aplicação faz uso de protocolos que são responsáveis por definir como os processos daquela aplicação, que estão funcionando em sistemas finais Protocolos da camada de aplicação Camada de Aplicação Redes de Computadores I 47 diferentes, conseguem trocar mensagens entre si. Um protocolo nesta camada é capaz de definir os tipos de mensagens trocadas; a sintaxe dos variados tipos de mensagens; a semântica dos campos e as regras que determinam quando e como o processo enviará e responderá as mensagens. (CANTÚ, 2009) Os protocolos HTTP e SMTP são componentes da camada da Web e são de domínio público. Enquanto outros protocolos são próprios não estando assim disponíveis para o domínio público, como é o caso do protocolo utilizado para o Skype. Já a aplicação de correio eletrônico possui como protocolo o SMTP (Simple Mail Transfer Protocol) Na camada de aplicação da Web um dos protocolos existente é o HTTP, cuja função é definir tanto o formato quanto a sequência de mensagens passadas entre navegador e servidor. Até a década de 1990, a Internet era conhecida somente por comunidades acadêmicas e de pesquisa, somente no início dos anos 1990, surgiu a WWW, aplicação que modificou o meio de interação das pessoas de modo geral. Um importante atrativo da Internet atualmente é o seu funcionamento por demanda, em que os usuários recebem o que querem e no momento que quiserem. Mas, esta aplicação possui como comonentes ainda o HTML (Hyper Text Markup Language), navegadores Web, servidores de páginas Web (por exemplo: Apache do sistema operacional Linux), além do protocolo HTTP já citado. (CANTÚ, 2009) O protocolo HTTP (Hyper Text Transfer Protocol) ou protocolo de transferência de hipertexto que é executado nos sistemas finais cliente e servidor e mesmo sendo executados em sistemas finais diferentes conversam entre si através de troca de mensagens HTTP. Este protocolo é responsável por definir a estrutura das mensagens trocadas entre os sistemas finais cliente e servidor, bem como o modo como será a troca entre o cliente e o servidor. James F. Kurose e Keith W. Ross informa que Os servidores Web, que executam o lado servidor do HTTP, abrigam objetos Web, cada um endereçado por um URL. São WWW / HTTP Redes de Computadores I 48 servidores Web populares o Apache e o Microsoft Internet Information Server. O HTTP define como os clientes requisitam paginas aos servidores e como eles as transferem aos clientes.[...] Quando um usuário requisita uma pagina Web (por exemplo, clica sobre um hiperenlace), o navegador envia ao servidor mensagens de requisição HTTP para os objetos da pagina. O servidor recebe as requisições e responde com mensagens de resposta HTTP que contem os objetos. O HTTP usa o TCP como seu protocolo de transporte subjacente (em vez de rodar em cima do UDP). O cliente HTTP primeiro inicia uma conexão TCP com o servidor. Uma vez estabelecida, os processos do navegador e do servidor acessam o TCP por meio de suas interfaces de socket. [...], no lado cliente a interface socket e a porta entre o processo cliente e a conexão TCP; no lado servidor, ela e a porta entre o processo servidor e a conexão TCP. O cliente envia mensagens de requisição HTTP para sua interface socket e recebe mensagens de resposta HTTP de sua interface socket. De maneira semelhante, o servidor HTTP recebe mensagens de requisição de sua interface socket e envia mensagens de resposta para sua interface socket. Assim que o cliente envia uma mensagem para sua interface socket, a mensagem sai de suas mãos e passa a estar “nas mãos” do TCP.5 (KUROSE; ROSS, 2013, p. 72-73) Este protocolo garante um serviço totalmente confiável para transferência de dados, assim, as mensagens emitidas pelo processo cliente será recebida pelo servidor intacta e, igualmente, a mensagem emitida pelo processo servidor chegará intacta ao cliente. Importante destacar que o HTTP não preocupa com os dados perdidos, essa tarefa é do TCP e dos protocolos de camadas inferiores da pilha de protocolos, que deve se recuperar da perda de dados ou reordená-los na rede. Como este protocolo tem por base tanto a requisição quanto a resposta, existe para o seu funcionamento dois tipos de mensagem, uma de requisição e uma de resposta. Note a estrutura da mensagem de requisição ou request: Figura 10: Formato da mensagem de requisição HTTP 5 Grifos como nos originais Redes de Computadores I 49 GET /diretório/pagina.html Host: www.ifsc.edu.br Connection: close User-agent: Mozilla/4.0 Accept-language: pt (extra carriage return, line feed) Fonte: CANTÚ, Evandro. Redes de computadores e a Internet.Santa Catarina: IFES Campus São José, 2009, p.24 A mensagem de requisição tem uma estrutura básica: na primeira linha, há um comando básico que faz a requisição de uma determinada página Web, onde consta parte do URL da página solicitada, o que indica o caminho e o nome do objeto desejado (GET/diretório/pagina.html);na segunda linha, consta o nome do computador em que reside o objeto solicitado (HOST:www.universo.edu.br), na terceira linha consta o comando para fechar a conexão assim que a resposta for enviada (Connection: close), já na quarta linha está indicado o tipo do agente de usuário (User-agent:MOzzila/4.0), na linha cinco indica a língua preerencial (Acceptlanguage:pt). Apesar de toda essa estrutura da requisição feita pelo usuário, o mesmo só consegue enxergar o endereço URL que o mesmo digitou no navegador, todo esse processo é transparente ao usuário. (CANTÚ, 2009) O outro tipo de mensagem é a de resposta ou response. Veja sua estrutura apresenta na figura 11: Figura 11: Estrutura da resposta à solicitação do usuário HTTP/1.1 200 OK Connection: close Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 09:23:24 GMT Content-Length: 6821 Content-Type: text/html (data data data data data . . .) Redes de Computadores I 50 Fonte: CANTÚ, Evandro. Redes de computadores e a Internet. Santa Catarina: IFES Campus São José, 2009, p.24 A resposta enviada ao usuário possui três partes: a primeira linha informa o estado da solicitação, possui ainda seis linhas de cabeçalho e os dados que compõem o objeto requisitado. Na primeira linha é indicada a versão do protocolo, o código e o estado da mensagem (HTTP/1.1 200 ok), na segunda linha está a indicação para o encerramento da conexão (Connection: close), na terceira linha é informada a data da última modificação no objeto que foi solicitado, é utilizada pelo servidor Proxy (Date: Thu, 28 jun 2017 11:00:55 GMT), a quarta linha trata do tipo de servidor (Server: Apache/2.520 (Unix)), a quinta linha contém a indicação do tamanho do objeto em bytes (Content-Length: 6821) e na sexta linha é informado o conteúdo da mensagem (Content-Type: text/HTML). Em seguida vêm os dados. Neste tipo de mensagem de resposta o estado pode ser variado, seguem alguns códigos que representam estes estados:
Compartilhar