HTTPS使用TCP还是UDP?

HTTPS使用TCP还是UDP?

HTTPS可以运行在任何可靠的stream传输协议上。 通常这是TCP,但也可能是SCTP。 它不会运行在UDP上,这是一种不可靠的数据报协议(事实上,这不是它的正式名称,这是记住它是什么的好方法)。

UDP的IANA分配是历史性的; 当时,几乎每个协议都被分配了TCP和UDP端口号,即使预期它只会使用一个。 已经讨论过合并端口号registry,并且从这里开始只将一个端口分配给一个协议。 这是为了更容易部署将来需要自己的注册pipe理机构的未来传输协议。 我不知道这个讨论是如何结束的。

它使用TCP。 如果没有数据包的保证,就很难在UDP上运行。 如果数据包没有到达,encryption的数据将不可辨认。

下一次,如果您想知道是否在tcp或udp上运行了默认的端口服务,您可以在linux机器上查看/ etc / services。

OSI模型允许更高层的协议运行在提供正确服务的任何底层协议上。 HTTPS是使用SSL / TLS安全性的HTTP。 SSL / TLS 通常运行在TCP之上,但没有什么可阻止您在UDP,SCTP或任何其他传输层协议上运行它。

事实上,TCP和UDP上的HTTPS都被IANA定义为“众所周知的”并且具有保留的端口号。

有关“官方”端口/协议组合,请参阅http://www.iana.org/assignments/port-numbers