Почему порт 80 был выбран в качестве порта HTTP по умолчанию, а порт 443 - в качестве порта HTTPS по умолчанию?

61

Почему порт 80 был выбран в качестве порта HTTP по умолчанию, а порт 443 - в качестве порта HTTPS по умолчанию?

Есть ли причина или это было определено именно так?

Самуил Александр
источник
4
Из-за моего героя, Джона Постеля, основателя системы RFC и IANA. en.wikipedia.org/wiki/Jon_Postel faqs.org/rfcs/rfc2468.html (Я помню IANA, автор Vint Cerf).
Фрэнк Томас

Ответы:

78

Управление по присвоению номеров в Интернете (IANA) является подразделением ICANN, некоммерческой частной американской корпорации, которая осуществляет надзор за глобальным распределением IP-адресов, системой доменных имен (DNS), известными портами и другими символами и номерами, связанными с протоколом Интернета.

В марте 1990 года они опубликовали документ RFC1060, в котором перечислены известные порты того времени. В этом списке не было протокола, назначенного порту 80. Он перешел с 79 на 81:

79       FINGER     Finger                                
81       HOSTS2-NS  HOSTS2 Name Server                     

Итак, в то время порт 80 был официально свободен.

В 1991 году Тим Бернерс-Ли выпустил первую версию HTTP в документе о HTTP 0.9, где он заявил:

If the port number is not specified, 80 is always assumed for HTTP.

Затем в июле 1992 года был опубликован RFC 1340, который устарел RFC 1060, где появляется:

   finger           79/tcp    Finger                            
   finger           79/udp    Finger                            
   www              80/tcp    World Wide Web HTTP               
   www              80/udp    World Wide Web HTTP               

Этот документ делает официальный порт 80 как www или http. Однако в этом документе ничего не говорится о 443.

В октябре 1994 года появляется RFC 1700, где впервые появляется это:

https           443/tcp    https  MCom
https           443/udp    https  MCom
#                          Kipp E.B. Hickman <kipp@mcom.com>

Похоже, что об этом попросил Кипп Э.Б. Хикман, который в то время работал в Mosaic, первой компании по разработке графических интерфейсов, которая впоследствии стала Netscape.

Непонятно, почему был выбран 443, однако в предыдущем RFC был промежуток от 374 до 512, и в этом RFC было заполнено пространство от 375 до 451 . Весьма вероятно, что цифры были просто указаны в порядке запроса.

jcbermu
источник
5
Вероятно, нет никакой причины, кроме «443 не был назначен», я выбираю сервисные порты все время без какой-либо конкретной причины для номера.
Джонни
3
Некоторые протоколы (FTP является одновременно наиболее очевидным и единственным примером, который я могу себе представить) используют два порта. Может быть, они хотели оставить пробелы для возможных будущих расширений существующих протоколов?
Йорг Миттаг
14
"17 ЦИТАТА Цитата дня" Это важный порт!
Almo
2
@AL есть пробел, вы, вероятно, просматривали список номеров протоколов, а не список номеров портов
Марк Роттвил
6
Одна вещь, которую следует учесть, это то, что когда эти порты были назначены, разработка протокола транспортного уровня была быстрой и яростной, когда ученые во всех штатах работали над тем или иным проектом. Редактор RFC (Джон Постел) очень требователен в своих стандартах к принятым окончательным версиям спецификации, поэтому они знали о текущих проектах, которые находились в разработке, но которые могли или не могли когда-либо достичь официального статуса RFC, а затем могли быть включенным в список портов IANA. Кроме того, можно было запрашивать определенные номера портов, если они не были зарезервированы, поэтому они не расположены по порядку номеров.
Фрэнк Томас
11

В ответе jcbermu упоминается, что у RFC 1340 (назначенные номера) было неиспользуемое количество портов от 374 до 512, а 443 находится посередине.

assert https_port == (374 + 512) / 2 == 443

adriaticc
источник