A ARPANET inicial tornou-se então na Internet que conhecemos. O conceito de Internet baseia-se na ideia de que existiriam muitas redes independentes, cada uma delas com o design mais apropriado às funções a desempenhar. A ARPANET foi a pioneira rede de comutação de pacotes (packet switching), juntaram-se-lhe as redes por satélite (packet satellite networks), as redes sem fios (packet radio networks) e outras.
A Internet, a que utilizamos diariamente, incorpora uma ideia chave – arquitectura de rede aberta. Neste tipo de arquitectura não existe a obrigação de adoptar uma determinada tipologia ou design para a rede, pode ser escolhida livremente pelo construtor que possibilita, dentro do próprio design, a capacidade desta rede conseguir comunicar com outras redes desenhadas de forma diferente.
Até esta altura só existia uma forma das redes estabelecerem comunicação entre si, pelo método tradicional – comutação de circuitos – em que conectavam ao nível dos circuitos, passando bits individualmente entre duas localizações pré-definidas, da mesma forma que usamos o telefone para ligar a alguém. É bom recordar que Leonard Kleinrock havia mostrado, em 1961, que a comutação de pacotes era um método de comutação mais eficiente.
Numa arquitectura de rede aberta as redes individuais podem ser desenvolvidas e desenhadas separadamente, cada uma poderá ter o seu interface próprio que pode ser oferecido aos utilizadores e a outros, mesmo ISPs (Fornecedores de Serviço Internet, tal como Telepac, Sapo, etc.). Cada rede pode ser desenhada de acordo com a sua funcionalidade, com as necessidades dos utilizadores, mesmo com as características geográficas do local onde será implantada.
A ideia de arquitectura de rede aberta foi introduzida por Bob Kahn pouco tempo após chegar à DARPA em 1972. O trabalho fazia parte do Packet Radio Program, posteriormente tornou-se num programa distinto. Na altura chamava-se Internetting, procurava fazer com que as comunicações sem fios fossem fiáveis, ultrapassando os constrangimentos provocadas pelas inúmeras interferências que sofriam ao utilizarem este tipo de suporte, utilizando um bom protocolo.
Bob Kahn pensou em desenvolver um protocolo apenas para a Packet Radio Network, já que se fosse um protocolo local o preveniria de lidar com inúmeros sistemas operativos, podendo continuar a utilizar o NCP (Network Control Protocol).
With the pressure to get something working and the general confusion as to how to achieve the high generality we all aspired to, we punted and defined the first set of protocols to include only Telnet and FTP functions.
In December 1969, we met with Larry Roberts in Utah, and suffered our first direct experience with ‘redirection’. Larry made it abundantly clear that our first step was not big enough, and we went back to the drawing board. Over the next few months we designed a symmetric host-host protocol, and we defined an abstract implementation of the protocol known as the Network Control Program.Along with the basic host-host protocol, we also envisioned a hierarchy of protocols, with Telnet, FTP and some splinter protocols as the first examples. If we had only consulted the ancient mystics, we would have seen immediately that seven layers were required.
– Stephen D. Crocker, RFC 1000, The Request For Comments Reference Guide.
O NCP foi o primeiro protocolo de rede standardizado na ARPANET. Foi completado e posto em funcionamento em Dezembro de 1970 pelo Network Working Group (NWG), liderado por Steven Crocker, que foi também o inventor do Request For Comments. O NCP deu o formalismo necessário ao interface da ARPANET, tornando mais simples agregar novos sites à rede. Em Outubro de 1971, todos os sites da ARPANET se validaram uns nos outros (com uma excepção), através do NCP, durante uma reunião no Massachusetts os Technology. No final de 1971 existiam 15 sites a usar o NCP na Net:
– Bolt Baranek and Newman
– Carnegie Mellon University
– Case Western Reserve University
– Harvard University
– Lincoln Laboratories
– Massachusetts Institute of Technology
– NASA em AMES
– RAND Corporation
– Stanford Research Institute
– Stanford University
– System Development Corporation
– University of California em Los Angeles
– University of California em Santa Barbara
– University of Ilinois em Urbana
– University of Utah
Os RFC que descrevem o NCP estão descritos abaixo:
RFC 33; Crocker, S.; Carr, S.; Cerf, V.; New HOST-HOST Protocol; 12 Feb 1973.
RFC 36; Crocker, S.; Protocol Notes; 16 Mar 1970 .
RFC 78; Harslem, E.; Heafner, J.; White, J.; NCP Status Report: UCSB/RAND; Nov 1970.
Contudo, o NCP não possuía a capacidade de endereçar para redes fora da ARPANET, o que obrigava a mudar o próprio NCP (presumia-se que a ARPANET não poderia ser modificada a este nível). O NCP confiava à ARPANET a sua fiabilidade, se alguns pacotes se perdessem o protocolo (e as aplicações que suportava) seria interrompido, isto é, o sistema parava. Neste modelo o NCP não estava preparado para que existissem erros entre remetentes e destinatários (computadores anfitriões), porque havia sido desenhado na suposição de que a ARPANET seria a única rede, de ele próprio ser tão fiável que não havia necessidade de controlar eventuais erros por parte das máquinas anfitriãs.
Assim sendo, Kahn decidiu desenvolver uma nova versão deste protocolo, uma que estivesse à altura de uma arquitectura de rede aberta. Este protocolo viria mais tarde a chamar-se o Transmission Control Protocol/Internet Protocol (TCP/IP). Enquanto o NCP tendia a comportar-se como um driver de um dispositivo, o novo protocolo seria mais um protocolo de comunicação.
Quatro regras básicas foram fundamentais para os desenvolvimentos de Kahn:
– Cada rede deveria ser auto-suficiente e não seriam necessárias modificações internas para que se conseguisse ligar à Internet.
– As comunicações far-se-iam na base do melhor esforço. Se um pacote não chegasse ao destino final seria retransmitido pelo remetente.
– Seriam usadas caixas pretas para ligar as redes; estas seriam mais tarde apelidadas de gateways e routers. Não seria retida, pelos gateways (portais), informação individual dos pacotes que por ele passassem.
– Não haveria controle global ao nível das operações.
Kahn começou o seu trabalho debruçando-se sobre um conjunto de princípios comunicacionais para sistemas operativos enquanto trabalhava na BBN. Este trabalho ficou documentado num memorando interno da BBN chamado “Communications Principles for Operating Systems”. Neste ponto havia percebido ser necessário apreender os detalhes de implementação de cada sistema operativo para que tivesse a possibilidade de incluir nos mesmos qualquer protocolo novo.
Assim, no ano de 1973, após começar a pesquisa referida anteriormente, Bob Kahn contactou Vint Cerf (na altura em Stanford) para que este trabalhasse com ele no design do novo protocolo. Cerf já tinha estado envolvido no desenho e desenvolvimento do NCP e já possuía o conhecimento para realizar a adaptação para os vários sistemas operativos. Juntou-se a arquitectura de Kahn às comunicações de Cerf e desta equipa nasceu o que viria a ser o TCP/IP.Correu tudo bem e a versão 7 do protocolo foi apresentada e distribuída num encontro especial do International Network Working Group que havia sido criado em Setembro de 1973 numa conferência na Universidade de Sussex. Cerf fora convidado para dirigir este grupo e usou a ocasião para reunir os membros do INWG que estavam na conferência de Sussex.
Alguns princípios básicos surgiram desta colaboração entre Kahn e Cerf:
– As comunicações entre dois processos consistiriam logicamente de uma longa fileira de bytes (chamaram-lhe octetos). A posição de qualquer octeto na fileira seria utilizada para o identificar.
– O controlo de fluxo (flow control) seria realizado utilizando sliding windows e acknowledgments (acks). O destino poderia escolher fazer o acknowledgment e cada ack devolvida seria cumulativa para todos os pacotes recebidos até esse instante.
– Foi deixado em aberto a forma como remetente e destinatário concordariam nos parâmetros de windowing a serem usados. Os parâmetros por defeito foram utilizados no inicio.
Apesar da Ethernet estar então em desenvolvimento no Xerox PARC nessa altura a proliferação das LAN (Land Area Networks) não era tida em conta, muito menos a dos PC. O modelo original eram as redes de computação a nível nacional, tal como a ARPANET, em que se esperava que existisse apenas um pequeno número no futuro. Sendo assim um endereço IP de 32 bits seria usado, os primeiros 8 bits correspondiam à rede e os restantes 24 bits designavam o computador anfitrião dessa rede. Esta previsão, de que 256 redes seriam suficientes para o futuro, precisou de ser revista quando as LAN começaram a aparecer em força nos finais dos 70 do século XX.
O documento original de Cerf e Kahn sobre a Internet descrevia um protocolo, o TCP, que providenciava todos os serviços de transporte e reencaminhamento na Internet. Kahn pretendia que o protocolo TCP suportasse um conjunto de serviços de transporte, desde a sequência totalmente fiável de transmissão dos dados (modelo de circuito virtual) até um serviço em datagrama em que a aplicação utilizaria directamente o serviço de rede subjacente, que poderia implicar perda, corrupção ou reordenação ocasional dos pacotes.
Contudo, o esforço inicial de implementação do TCP resultou numa versão que permitia apenas circuitos virtuais. Este modelo funcionava bem para a transferência de ficheiros e login remoto em aplicações, mas algum do trabalho antigo nas aplicações avançadas de rede, em particular o packet voice nos anos 70, tornou claro que em alguns casos a perda de pacotes não deveria ser corrigida pelo TCP, antes deveria deixar-se a aplicação lidar com o problema. Isto levou à repartição do TCP original em dois protocolos, o IP, mais simples, que se destinava apenas ao endereçamento e reencaminhamento de pacotes individuais, e o TCP, que se preocupava com especificações do serviço, tais como o controlo de fluxo e recuperação de pacotes perdidos. Para aquelas aplicações que não queriam os serviços do TCP surgiu uma alternativa, o User Datagram Protocol (UDP), que permitia o acesso directo ao serviço básico do IP.
TCP/IP Digest Wednesday, 14 Oct 1981 Volume 1 : Issue 2
From: POSTEL at USC-ISIF
Subject: NCP-to-TCP TransitionIt is really very important for everyone to notice the deadline for
completing the cutover to IP/TCP and the elimination of NCP from use
in the ARPANET. The deadline is: 1 January 1983. That is 14 and a half months from now. Really not much more than a year.–jon.
Uma motivação inicial da ARPANET e Internet foi a possibilidade de partilhar recursos – por exemplo permitir aos utilizadores das redes sem fios acederem aos sistemas time-sharing da ARPANET. Ligar os dois tornava-se mais económico do que duplicar o número de computadores. Contudo, apesar da transferência de ficheiros e o login remoto (Telnet) serem aplicações muito importantes, o correio electrónico teve um impacto tremendo nas inovações desse tempo. O Email era uma nova forma de comunicação entre as pessoas, mudou o significado da palavra colaborar, primeiro na construção da própria Internet e depois da própria sociedade.
TCP/IP Digest Wednesday, 11 Nov 1981 Volume 1 : Issue 6
From: POSTEL at USC-ISIF
Subject: Disabling NCPsThere has been some talk of “forcing” the move to TCP by various administrative and policy measures. There was also a claim that there was no technical way to force the abandonment of NCP. It should be pointed out that a quite simple modification to the IMP program would enable the IMPs to filter out and discard all NCP traffic. As far as i know, there has been no decision to do this, but you should be aware that it is technical feasible.
Jon
Existiram outras aplicações a serem propostas nesta altura, incluindo comunicação áudio através da rede de pacotes (um precursor da Voz sobre IP), vários modelos para partilha de discos e ficheiros, e mesmo programas Worm que mostravam já o que seriam agentes electrónicos (e, claro, os vírus). Um conceito chave da Internet é que ela não foi desenhada para apenas uma aplicação, antes como uma infra-estrutura na qual novas aplicações poderiam ser concebidas, tal como foi posteriormente ilustrado pelo nascimento da World Wide Web. É a natureza geral e abrangente do TCP/IP que torna tudo isto possível.
Informação adicional sobre o TCP/IP poderá ser encontrada nos seguintes locais:
IEN 151; Vinton Cerf; Final Report of the Stanford University TCP Project; 1 April 1980.
RFC 760; Jon Postel; DoD Standard Internet Protocol; Jon Postel; January 1980.
RFC 761; Jon Postel; DoD Standard Transmission Control Protocol; Jan, 1980.
RFC 801; Jon Postel; NCP/TCP Transition Plan; Nov 1981.
RFC 1180; T. Socolofsky, C. Kale; A TCP/IP Tutorial; Jan 1991.
RFC 3449; H. Balakrishnan, V. N. Padmanabhan, G. Fairhurst, M. Sooriyabandara; TCP Performance Implications of Network Path Asymmetry; December 2002; BCP 69.
TCP/IP Frequently Asked Questions
IPV6 – Alguns RFC sobre o novo protocolo:
RFC 1886; DNS Extensions to support IP version 6; S. Thomson, C. Huitema; December 1995.
RFC 2460; Internet Protocol, Version 6 (IPv6) Specification; S. Deering; December 1998.
RFC 2893; Transition Mechanisms for IPv6 Hosts and Routers; R. Gilligan; August 2000.
RFC 3316; Internet Protocol Version 6 (IPv6) for Some Second and Third Generation Cellular Hosts; J. Arkko, G. Kuijpers, H. Soliman, J. Loughney, J. Wiljakka; April 2003.
RFC 3513; Internet Protocol Version 6 (IPv6) Addressing Architecture; R. Hinden; S. Deering; April 2003.
Texto traduzido e adaptado de “A Brief History of the Internet” de Barry M. Leiner, Vinton G. Cerf, David D. Clark, Robert E. Kahn, Leonard Kleinrock, Daniel C. Lynch, Jon Postel, Larry G. Roberts e Stephen Wolff.
Hello, you post interesting posts on your page, you can get much more visits, just type in google for – augo’s
tube traffic