Почему создатели интернет-протокола решили использовать IP-адреса для идентификации конкретного компьютера?
Почему бы просто не иметь уникальный идентификатор, назначенный каждому компьютеру при изготовлении, а затем использовать этот идентификатор для идентификации компьютера?
history
internet
ip-address
Джерри Роквелл
источник
источник
Ответы:
IP не идентифицирует компьютер - один компьютер может иметь несколько IP-адресов, а один IP-адрес может принадлежать нескольким компьютерам, если они находятся в разных сетях.
IP не является идентификатором, это часть маршрутизации. Он идентифицирует конечную точку. И он должен быть настраиваемым, чтобы один компьютер мог использоваться в разных сетях - когда вы меняете свою сеть, вы меняете IP-адреса компьютеров. Если бы они были исправлены, у вас не было бы механизма маршрутизации, который используется в IP-сетях.
Например, ваше имя может быть вашим (фиксированным) идентификатором, но ваш адрес - это место, куда доставляется ваша почта. Адрес настраивается здесь - если вы переезжаете, вы получаете новый адрес, а тот, кто переезжает на старое место, получает ваш старый адрес. Если меняется название улицы (конфигурация сети), меняется и ваш адрес. Но механизм доставки остается прежним.
источник
Если бы у каждого компьютера были уникальные идентификаторы, таблицы маршрутизации должны были бы включать все маршруты ко всем устройствам в Интернете. Это непрактично.
Вот почему tcp / ip использует многоуровневый подход.
Если мой компьютер 1.1.1.1 хочет связаться с 2.2.2.2, он в основном просит шлюз переслать пакет, поэтому он связывается с: 1.1.1.0, но этот шлюз также не знает, где находится 2.2.2.2, поэтому он запрашивает его шлюз для пересылки пакета шлюз 1.1.0.0 поднимает его и запрашивает 1.0.0.0. 1.0.0.0 тоже не знает, где находится 2.2.2.2, но он знает, где находится 2.0.0.0 (в своей таблице маршрутизации), поэтому запрос теперь не работает, потому что 2.0.0.0 знает, где находится 2.2.0.0, и пересылает пакет, это все, пока пакет не достигнет 2.2.2.2
(Это КРАЙНЕЕ упрощение того, что происходит, и между 1.0.0.0 и 2.0.0.0 может быть любое количество прыжков).
Этот многоуровневый подход с таблицами маршрутизации обеспечивает эффективное обнаружение другого компьютера в сети. Но это также означает, что должна существовать система без уникального идентификатора, поскольку таблицы маршрутизации не могут содержать все идентификаторы и маршруты всех компьютеров, подключенных к Интернету.
источник
По той же причине почтовая служба использует адреса, а не имена .
Почтовые службы (и другие перевозчики посылок) на самом деле не отправляют посылки людям. Они отправляют в разные места и позволяют людям в этом месте выяснить, кто на самом деле получит посылку. Причина, по которой они это делают, заключается в том, что вы не можете определить, где находится человек, по его или ее имени, и вы не можете закодировать это имя, не изменяя его .
Интернет не использует только один протокол: он фактически объединяет несколько протоколов, один поверх другого. Там находитесь протоколы , которые используют уникальные идентификаторы, и они находятся в самом низком уровне, называется канального уровня . Ethernet (который использует MAC-адреса) и PPP (который чаще всего использует телефонные номера) являются двумя популярными примерами протоколов канального уровня. Но у канального уровня есть свои ограничения: вы можете получать сигнал только между компьютерами, которые напрямую связаны друг с другом , потому что каждый уже должен знать, где все находятся. Это делает его похожим на людей в пункте назначения пакета: все уже знают друг друга, поэтому они могут разобраться между собой, кто на самом деле получит пакет.
IP находится на один шаг выше этого, на сетевом уровне (иногда называемом интернет-уровнем ). Работа IP заключается в том, чтобы получать сигнал между точками, которые не связаны напрямую . Другие уже вошли в схему иерархической маршрутизации, которую она использует, но большинство почтовых служб использовали подобные иерархические системы задолго до Интернета или даже компьютеров. Они делают это, потому что это самый простой способ идентифицировать различные места и прокладывать маршрут между ними.
Но компьютеры и локации - это не одно и то же. Компьютеры, как и люди, могут перемещаться между различными местами : например, вы можете перемещать ноутбук между вашим домом и вашим рабочим местом. В одном месте может находиться несколько компьютеров : если вы используете беспроводной маршрутизатор дома, то у вас может быть несколько подключенных устройств, но все они имеют общий IP-адрес, если речь идет о внешнем мире. В некоторых случаях даже один компьютер может иметь более одного адреса .
Интернет должен уметь обрабатывать все эти случаи. Чтобы сделать это простым и эффективным способом, они используют адреса, а не идентификаторы. Таким образом, IP не должен знать или заботиться о том, что находится на каждом конце соединения: есть только сигнал, место, откуда он исходит, и место, куда его можно перенести . Другие протоколы в стеке могут позаботиться о других деталях.
источник
MAC-адрес - это то, что идентифицирует компьютер, а точнее его сетевое оборудование.
Что делает IP-адрес, так это описывает, где находится аппаратное обеспечение. Маршрутизаторы используют его, чтобы выяснить, куда направить пакеты, чтобы они прибыли в правильный пункт назначения.
Поскольку MAC-адрес не изменяется при перемещении аппаратного обеспечения, его нецелесообразно использовать для маршрутизации, поскольку это по сути означает, что каждому маршрутизатору во всем мире необходимо отслеживать местоположение каждого MAC-адреса. IP-адреса работают таким образом, что каждому маршрутизатору не требуется полная информация о получателе для правильной маршрутизации, они знают, какой диапазон IP-адресов куда отправлять. Таким образом, только один реальный маршрутизатор или коммутатор должен знать, где именно находится IP. Каждому другому маршрутизатору нужна только общая идея.
источник
Они не Он идентифицирует сетевое соединение, хотя у этого же соединения могут быть и другие IP-адреса.
Во-первых, они не идентифицируют компьютеры, как указано выше.
Хорошо, скажем, они хотели сделать это с помощью сетевых адаптеров. Им пришлось бы убедить каждого изготовителя сетевого адаптера использовать идентификатор из набора, контролируемого людьми, участвующими в этом конкретном плане, для подключения сетей, которые, как многие думали, не будут работать, прежде чем он сможет работать. Удачи с этим.
Кроме того, эти производители сетевого оборудования не заботились о TCP / IP, они заботились о своих собственных сетевых протоколах и, возможно, о тех, с которыми они конкурировали. В некоторых случаях наличие надстройки, которая делала различия между, например, Ethernet, ALOHAnet, шиной токена и т. Д., Было плохой вещью для некоторых технологий в долгосрочной перспективе, потому что некоторые из них делали менее полезными (TCP / IP мог сделайте это вместо этого), и люди могут в конечном итоге перейти к тем, кто делает только то, что нужно TCP / IP, и немного больше (как это делал Ethernet). TCP / IP был троянским конем для этих компаний; счастливо играя с ними, но разрушая их бизнес в то же время. Почему они должны помочь.
Кроме того, некоторые из этих технологий предшествовали TCP / IP, и поэтому они не могли взаимодействовать, а TCP / IP не мог использоваться практически на всех типах сетей.
Кроме того, какой адрес где? Моя машина в настоящее время имеет адрес 192.168.1.24 (среди прочих), который также используется тысячами других машин в других сетях. Мне не нужен уникальный адрес, потому что я не подключен напрямую к Интернету. С IPv6 мы начинаем переходить к точке, где мы могли бы иметь по-настоящему уникальный идентификатор для каждой машины, если бы мы действительно этого хотели, но до этого это было бы ограниченным числом (четыре миллиарда, вероятно, показались бы очень большими устройств в то время, но это потребовало бы очень жесткого распределения чисел, так что на практике их было бы намного меньше, даже если бы это было реальной проблемой) и бессмысленно; весь смысл IP заключается не в сети, а во взаимодействии, поэтому нам нужно беспокоиться только об одной сети за раз, когда дело доходит до идентификаторов,
источник
Но с таким уникальным идентификатором, как MAC, по-прежнему существует проблема размещения устройства в сети. Невозможно соединить все устройства и просто искать пункт назначения один за другим по всем хостам в мире. Это цель изобретения некоторых иерархических адресов, таких как IP.
источник
Ключом к пониманию оригинального дизайна протокола межсетевого взаимодействия является то, что сети уже существуют, и планировалось объединить сети, используя существующие технологии, такие как DECnet. Требование, чтобы люди добавили новое оборудование с уникальным идентификатором, сделало бы это недостатком, и не требовалось по какой-либо технологической причине. Система использовалась для выделения префикса (такого как 8.0.0.0/24) для организации, а затем возложить на эту организацию ответственность за назначение адресов в этом диапазоне.
Это также позволяет администратору назначать несколько IP-адресов одному и тому же компьютеру (для консолидации служб) или, в качестве альтернативы, заменять компьютер, но продолжать использовать тот же IP-адрес, или использовать тот же IP-адрес в отдельной тестовой сети и т. Д. на. Привязка к конкретному оборудованию будет ограничением.
Ethernet использует MAC-адреса, чтобы различать узлы в одной и той же локальной сети, но Ethernet делает постер в Интернете и черпает вдохновение из этого: http://inventors.about.com/library/weekly/aa111598.htm утверждает, что не ранее 1973 года, в то время как первые интернет-RFC были сделаны в 1969 году ( http://www.ietf.org/download/rfc-index.txt ), примерно в то же время, что и при посадке на Луну.
источник