Por que os criadores do Protocolo da Internet decidiram usar endereços IP para identificar um computador específico?
Por que não apenas atribuir um ID exclusivo a cada computador na fabricação e usá-lo para identificação do computador?
Por que os criadores do Protocolo da Internet decidiram usar endereços IP para identificar um computador específico?
Por que não apenas atribuir um ID exclusivo a cada computador na fabricação e usá-lo para identificação do computador?
Respostas:
O IP não identifica um computador - um computador pode ter vários IPs e um único IP pode pertencer a vários computadores, desde que estejam em redes diferentes.
IP não é identificador, é parte do roteamento. Identifica um ponto final. E deve ser configurável para que um computador possa ser usado em redes diferentes - quando você altera sua rede, altera os endereços IP dos computadores. Se eles foram corrigidos, você não poderia ter o mecanismo de roteamento usado nas redes IP.
Por exemplo, seu nome pode ser seu identificador (fixo), mas seu endereço é para onde sua correspondência é entregue. O endereço é configurável aqui - se você se mudar, obterá um novo endereço e quem se mudar para o seu local antigo receberá seu endereço antigo. Se um nome de rua (configuração de rede) mudar, o seu endereço também será alterado. Mas o mecanismo de entrega permanece o mesmo.
Se todo computador tivesse um ID exclusivo, as tabelas de roteamento teriam que incluir todas as rotas para todos os dispositivos na Internet. Isso é impraticável.
É por isso que o TCP / IP usa uma abordagem em camadas.
Se o meu computador 1.1.1.1 quiser se comunicar com o 2.2.2.2, ele basicamente solicitará que o gateway encaminhe o pacote, assim ele se comunica com: 1.1.1.0, mas esse gateway também não sabe onde está o 2.2.2.2, e solicita ao gateway para encaminhar o pacote, o gateway 1.1.0.0 pega e solicita 1.0.0.0. 1.0.0.0 também não sabe onde 2.2.2.2 está, mas sabe onde está 2.0.0.0 (em sua tabela de roteamento); portanto, a solicitação diminui agora porque 2.0.0.0 sabe onde está 2.2.0.0 e encaminha o pacote, até o pacote atingir 2.2.2.2
(Esta é uma simplificação excessiva EXTREMA do que acontece e pode haver qualquer quantidade de saltos entre 1.0.0.0 e 2.0.0.0).
Essa abordagem em camadas com tabelas de roteamento facilita a localização de outro computador em uma rede. Mas também significa que deve haver um sistema sem o ID exclusivo, porque as tabelas de roteamento não podem conter todos os IDs e rotas de todas as máquinas conectadas à Internet.
Pela mesma razão, o serviço postal usa endereços em vez de nomes .
Os serviços postais (e outras transportadoras de pacotes) realmente não enviam pacotes para as pessoas. Eles são enviados para locais e permitem que as pessoas naquele local escolham qual pessoa realmente recebe o pacote. A razão pela qual eles fazem isso é que você não pode dizer de onde é a pessoa apenas a partir do nome dele, e não pode codificá-lo no nome sem torná-lo mutável .
A Internet não usa apenas um protocolo: na verdade, empilha vários protocolos, um sobre o outro. Não são protocolos que utilizam IDs únicas, e eles residem no nível mais baixo, chamado de camada de enlace . Ethernet (que usa endereços MAC) e PPP (que geralmente usa números de telefone) são dois exemplos populares de protocolos da camada de link. Mas a camada de link tem seus limites: você só pode receber um sinal entre computadores que estão diretamente conectados entre si , porque todos já precisam saber onde estão. Isso faz com que seja como as pessoas no destino do pacote: todo mundo já se conhece, para que possam decidir entre si quem realmente receberá o pacote.
O IP reside um passo acima, na camada de rede (às vezes chamada de camada da Internet ). O trabalho do IP é obter um sinal entre locais que não estão diretamente conectados . Outros já entraram no esquema de roteamento hierárquico usado, mas a maioria dos serviços postais usa sistemas hierárquicos semelhantes desde muito antes da Internet, ou mesmo computadores. Eles fazem isso porque é a maneira mais fácil de identificar locais diferentes e rotear as coisas entre eles.
Mas computadores e locais não são a mesma coisa. Computadores, como pessoas, podem se mover entre diferentes locais : por exemplo, você pode mover um laptop entre sua casa e seu local de trabalho. Mais de um computador pode residir em um determinado local : se você usa um roteador sem fio em casa, pode ter vários dispositivos conectados, mas todos compartilham um único endereço IP no que diz respeito ao mundo externo. É até possível que um único computador tenha mais de um endereço , em determinadas circunstâncias.
A Internet precisa ser capaz de lidar com todos esses casos. Para fazer isso de uma maneira simples e eficiente, eles usam endereços em vez de IDs. Dessa forma, o IP não precisa saber ou se importar com o que há em cada extremidade da conexão: existe apenas um sinal, um local de origem e um local para transportá-lo . Outros protocolos na pilha podem cuidar dos outros detalhes.
O endereço MAC é o que identifica um computador, ou melhor, seu hardware de rede.
O que um endereço IP faz é descrever onde está o hardware. Os roteadores o usam para descobrir onde rotear os pacotes para que eles cheguem ao destino correto.
Como um endereço MAC não muda quando você move o hardware, é impraticável usá-lo para roteamento, pois isso significaria essencialmente que todo roteador no mundo inteiro precisaria acompanhar a localização de cada endereço MAC. Os endereços IP funcionam da maneira que cada roteador não precisa de informações completas do destinatário para direcioná-los corretamente, eles sabem qual intervalo de IP enviar para onde. Dessa forma, apenas um roteador ou switch real precisa saber qual IP está localizado onde exatamente. Todos os outros roteadores precisam apenas de uma idéia muito geral.
Por que os criadores do Protocolo da Internet decidiram usar endereços IP para identificar um computador específico?
Eles não fizeram. Ele identifica uma conexão de rede, embora essa mesma conexão também possa ter outros endereços IP.
Por que não apenas atribuir um ID exclusivo a cada computador na fabricação e usá-lo para identificação do computador?
Por um lado, eles não identificam computadores como acima.
Ok, dizem que eles queriam fazer isso com adaptadores de rede. Eles teriam que convencer todos os fabricantes de adaptadores de rede a usar um identificador de um conjunto controlado por pessoas envolvidas neste plano específico para conectar redes que muitas pessoas não pensavam que funcionariam, antes que funcionasse. Boa sorte com isso.
Além disso, esses fabricantes de hardware de rede não se preocupavam com TCP / IP, eles se preocupavam com seus próprios protocolos de rede e talvez secundariamente com aqueles com os quais estavam competindo. Em alguns casos, ter uma camada no topo que fazia as diferenças entre, por exemplo, ethernet, ALOHAnet, token bus, etc. em vez disso) e as pessoas poderiam eventualmente migrar para aqueles que faziam exatamente o que o TCP / IP precisava e pouco mais (como a Ethernet). O TCP / IP foi um cavalo de tróia para essas empresas; brincando alegremente com eles, mas destruindo seus negócios ao mesmo tempo. Por que eles deveriam ajudar?
Além disso, algumas dessas tecnologias antecederam o TCP / IP e, portanto, não seriam capazes de interoperar e o TCP / IP não poderia ter sido usado em praticamente todos os tipos de rede.
Além disso, qual endereço onde? Atualmente, minha máquina possui um endereço 192.168.1.24 (entre outros), que também é usado por milhares de outras máquinas em outras redes. Não preciso de um endereço exclusivo porque não estou conectado diretamente à Internet. Com o IPv6, estamos começando a chegar a um ponto em que poderíamos ter uma identificação genuinamente única para cada máquina, se realmente quiséssemos, mas antes disso, isso seria limitador em número (quatro bilhões provavelmente pareceriam muito). de dispositivos na época, mas isso exigiria uma distribuição muito estreita de números; portanto, na prática, haveria muito menos, mesmo que isso fosse uma preocupação realista) e sem sentido; o ponto principal do IP não é a rede, mas a inter-rede; portanto, precisamos nos preocupar apenas com uma rede por vez quando se trata de identificadores,
Mas com um ID único como o MAC, ainda existe o problema de localizar o dispositivo em uma rede. É impossível ter todos os dispositivos interconectados e apenas procurar o destino, um por um, em todos os hosts do mundo. É o objetivo da invenção alguns endereços hierárquicos como IP.
A chave para entender o design original do Protocolo de Internetworking é que as redes já existiam, e o plano era unir redes usando a tecnologia existente , como DECnet. Exigir que as pessoas adicionassem um novo hardware com um identificador exclusivo teria prejudicado e não era necessário por qualquer motivo tecnológico. O sistema usado foi alocar um prefixo (como 8.0.0.0/24) a uma organização e, em seguida, tornar responsabilidade da organização atribuir endereços dentro desse intervalo.
Ele também permite que o administrador atribua vários IPs ao mesmo computador (para consolidação de serviços) ou, alternativamente, substitua o computador, mas continue a usar o mesmo endereço IP ou o mesmo endereço IP em uma rede de teste desanexada. em. Amarrar um hardware em particular seria limitador.
A Ethernet usa endereços MAC para distinguir os nós na mesma LAN, mas a Ethernet pós-data a Internet e se inspira: http://inventors.about.com/library/weekly/aa111598.htm afirma não antes de 1973, enquanto as primeiras RFCs da Internet são de 1969 ( http://www.ietf.org/download/rfc-index.txt ), aproximadamente ao mesmo tempo que o pouso na lua.