Lorsque vous allez quelque part en utilisant un navigateur et en spécifiant un port, vous essayez d’établir une connexion (TCP) avec ce port.
Lorsque vous exécutez un service (comme un serveur Web, par exemple), il s'exécute sur un port spécifique. Si vous essayez de vous connecter à une machine et qu'aucun programme en cours d'exécution n'est associé à ce port (le terme correct est lié au port) ou s'il est protégé par un pare-feu, le délai expire.
Lorsque vous avez accédé à Google sur le port 8000, il n'y avait aucun service en cours d'exécution, donc le délai a expiré. (Il essaie en fait de se connecter plusieurs fois au cas où il y aurait une erreur les premières fois pour rendre les choses plus robustes)
Lorsque vous avez accédé à Google sur le port 443, vous avez réussi à établir une connexion, car 443 est généralement utilisé pour HTTPS, c’est-à-dire des connexions sécurisées. Comme vous n'avez pas établi de connexion sécurisée conformément au protocole HTTPS, Chrome et Firefox se sont comportés de cette manière.
Réponse avancée
Lorsque vous établissez une connexion sur TCP, il existe une "négociation à 3 voies" - le client envoie un paquet "SYN" au serveur. Le serveur le reçoit et, en supposant qu'un programme est en cours d'exécution, il renvoie un accusé de réception "SYN-ACK", puis le client envoie un paquet "ACK" au serveur. Les systèmes ont alors établi une connexion.
Dans le cas d'une connexion au port 8000, le client n'obtient pas de réponse au paquet SYN. Il essaie donc plusieurs fois, puis abandonne et expire.
Dans le cas d'une connexion au port 443, une connexion est établie au niveau TCP. À ce stade, le serveur s'attend à négocier une connexion SSL pour la sécurité (car il est configuré pour le faire sur le port 443). Vous ne savez pas parler SSL, cela a donc échoué.
Points bonus
Si TELNET est installé (la plupart des systèmes le font, vous pouvez prétendre être un navigateur (ou un client de messagerie ou autre, si vous connaissez le protocole), en procédant comme suit.
1. type "telnet www.google.com 80"
(wait for a few seconds)
2. Type GET / HTTP/1.1<enter>
host www.google.com<enter><enter>
L'étape 1 indique à Telnet de créer une connexion TCP avec le serveur Googles sur le port 80 et l'étape 2 indique ce qu'il faut obtenir (GET / signifie obtenir le fichier racine), et la ligne "hôte" indique le serveur auquel vous souhaitez vous connecter - vous besoin parce que beaucoup de sites Web partagent un seul serveur - la deuxième ligne indique au serveur quel site. Vous appuyez deux fois sur Entrée pour indiquer que vous avez fini d'envoyer votre en-tête, puis vous recevez une réponse HTTP. (Si vous étiez un navigateur Web, vous enverriez beaucoup plus d'informations, y compris les détails du navigateur, les cookies, etc., mais ceci n'a pas été expliqué.)