- ¿Por qué las computadoras tienen 65.535 puertos TCP?
- ¿De dónde viene este número?
- ¿Que representa?
Respuesta1
- "¿Por qué las computadoras tienen puertos TCP 65535?"
Las computadoras lo hacennotener puertos. El concepto de "puertos" al que te refieres está estrictamente relacionado con eltcpyUDPprotocolos de laPila de redes TCP/IP. Desde un punto de vista estrictamente técnico, tanto TCP como UDP están estructurados de tal manera que transportan varios tipos de información (puerto de origen, puerto de destino, número de secuencia, datos, etc.). Como tanto el "Puerto de origen" como el "Puerto de destino" están estructurados (dentro del paquete TCP y UDP) con un "campo" de 16 bits, estos son los límites: los puertos de origen y los puertos de destino pueden asumir todos los valores que se pueden representar con 16 bits (también conocido como: de 0 a 65535);
- "¿De dónde viene este número?"
Ver arriba: los puertos de origen y los puertos de destino pueden asumir valores que van de 0 a 65535 porque ambos están representados con un valor de 16 bits, dentro de los paquetes respectivos.
- "¿Qué representa realmente?"
En definitiva, tanto el "puerto origen" como el "puerto destino" juegan un papel muy importante, ya que permiten que un único "host" (un único "cliente", o un único "servidor") "ofrezca" diferentesservicioshacia los clientes de la red, a pesar de tener una única dirección IP. En otras palabras, sin "puertos", sería mucho más difícil tener un único "servidor" que ofreciera un servidor web (en el puerto TCP 80 para HTTP simple; en el puerto TCP 443 para HTTPS), un servidor de correo (en el puerto TCP 25 para SMTP entrante; en el puerto TCP 110 para acceso POP3; en el puerto TCP 143 para acceso IMAP), un servidor de base de datos (en TCP/puerto 3306 para MySQL), etc.
Los lectores "puristas" pueden no estar de acuerdo conmigo sobre la simplificación excesiva anterior y... estaránbien: en realidad, las direcciones IP y los PUERTOS juegan un papel muy importante que, para comprenderlo completamente, requiere una comprensión adecuada del "encapsulación"concepto (sin duda, el concepto más importante entre los presentados en esta misma respuesta). Desafortunadamente, esto generalmente requierelotesmuchas veces para ser "dominado" adecuadamente y... por eso, mi simplificación excesiva anterior :-)
Respuesta2
TCP, UDP y quizás otros servicios IP utilizan puertos para una comunicación discreta entre los procesos del cliente y del servidor entre hosts que utilizan una red IP.
Se puede encontrar información más detallada.en este artículo wiki.
Desde una perspectiva de arriba hacia abajo, los puertos representan conversaciones distintas entre dos hosts. Por ejemplo, un host realiza varias solicitudes DNS simultáneamente a su servidor designado, cada una usando un puerto de origen diferente al puerto de destino 53. A medida que el servidor obtiene las respuestas y atiende las solicitudes, enviará respuestas específicas al mismo puerto. , donde será recibido por el proceso distinto que espera respuesta.
Desde una perspectiva ascendente, los puertos son una forma de reservar una línea de comunicación IP de procesos separados por parte del sistema operativo de un host. Si bien puede haber varios procesos realizando solicitudes al mismo puerto de un host remoto, cada proceso utilizará un puerto de origen diferente para sus solicitudes. Esto garantiza que las respuestas se recibirán mediante el proceso adecuado.
Para los protocolos portados, hay 32 bits reservados en los encabezados de los paquetes: 16 bits para el puerto de origen y 16 bits para el puerto de destino. Para TCP y UDP, estos son los primeros 32 bits que siguen inmediatamente al encabezado IP; comienzan en el bit 192. Un número de 16 bits tiene valores entre 0 y 65535.
Respuesta3
65,536 es un número muy común en informática, porque es 2 elevado a 16 (2^16). 2^8 es 256 y 65,536 es el cuadrado de 256.
En otras palabras, un número binario de 16 bits puede representar 65.536 números enteros diferentes. Probablemente de ahí proviene su rango de 65,535.
Pero espera, piensas, ¡debo estar a un dígito de distancia porque 65,535 es 65,536 menos 1! Bueno, ¡no si empiezas a contar desde cero! Por ejemplo, una imagen de 8 bits codifica 256 valores, pero normalmente estos comienzan en 0 y llegan hasta 255. Es por eso que a menudo se ven números como 255 o 65,535 en informática.
Supongo que los puertos TCP se almacenaron originalmente como un número de 16 bits, de ahí su límite superior. No estoy seguro de si ese sigue siendo el caso. ¡Espero que eso ayude!