pesquisa e desenvolvimento. E, com cada expansao, novos desafios surgiram. As primeiras implementacoes de TCP foram feitas por sistemas como Tenex e TOPS 20. Quando os microcomputadores apareceram, alguns acharam que TCP foi grande e complexo demais para rodar neles. David Clark e seu grupo de pesquisa no MIT trabalharam para mostrar que poderia haver uma simples e compacta implementacao de TCP. Eles produziram esta implementacao, primeiro para o Xerox Alto (a primeira estacao de trabalho pessoal desenvolvida em Xerox PARC) e depois para o IBM PC. Esta implementacao foi completamente inter-operavel com outros TCPs, mas foi feita sob medida para microcomputadores, e mostrou que estacoes de trabalho, tanto quanto sistemas de grande porte, poderiam tornar-se parte da Internet. Em 1976, Kleinrck publicou o primeiro livro sobre ARPANET, com enfase na complexidade dos protocolos e nas dificuldades que eles introduzem. Este livro foi importante na divulgacao da crenca nas redes com trocas de pacotes para uma grande comunidade. O desenvolvimento generalizado de LANs, PCs e estacoes de trabalho na decada de 80 permitiu a prosperidade da Internet que nascia. A tecnologia Ethernet, desenvolvida por Bob Metcalfe em 1973 na Xerox PARC e agora provavelmente a tecnologia de rede dominante na Internet e os PCs e estacoes de trabalho sao os computadores dominantes. A mudanca entre poucas redes com pequeno numero de servidores (o modelo original ARPANET) e muitas redes resultou num numero de novos conceitos e mudancas na tecnologia basica. Primeiro, isso resultou na definicao de tres classes de rede (A, B e C) para acomodar o alcance das redes. A classe A passou a representar redes de grande escala nacional (pequeno numero de redes com grande numero de servidores). A classe B passou a representar redes de escala regional. E a classe C passou a representar redes locais (grande numero de redes com relativamente poucos servidores). Uma grande mudanca ocorreu como resultado do aumento da escala da Internet e os assuntos gerenciais associados. Para facilitar o uso da rede, nomes foram atribuidos a servidores para que nao fosse necessario lembrar enderecos numericos. Originalmente, o numero de servidores foi limitado e, portanto, foi possivel manter uma tabela unica de todos os servidores e seus nomes e enderecos. A mudanca para o grande numero de redes independentemente gerenciadas (por exempo, LANs) significou o fim da tabela unica de servidores, e o Domain Name System (DNS) foi inventado por Paul Mockapetris, da USC/ISI. O DNS permitiu um mecanismo escalarmente distribuido para resolver nomes de servidores hierarquicos (por exemplo, www.acm.org) num endereco Internet. O crescimento da Internet tambem desafiou a capacidade dos roteamentos. Originalmente existiu um unico algoritmo distribuido para roteamento que foi implementado uniformemente por todos os roteadores na Internet. Quando explodiu o numero de redes na Internet e o desenho inicial de roteamento nao expandiu o suficiente, este foi substituido por um modelo hierarquico de roteamento com um Interior Gateway Protocol (IGP) usado dentro de cada regiao da Internet e um Exterior Gateway Project (EGP) usado para ligar as regioes. Este desenho permitiu que diferentes regioes usassem diferentes IGPs, de forma que diferentes