Disponible la nueva versión "donationware" 7.3 de OrganiZATOR
Descubre un nuevo concepto en el manejo de la información.
La mejor ayuda para sobrevivir en la moderna jungla de datos la tienes aquí.

Notas sobre Internet

[Home]  [Inicio]  [Índice]


N.11:  Números de puertos


En las redes que utilizan los protocolos TCP/IP ( A3.1) y UDP/IP [1], cuando un programa cliente necesita de un servicio particular de un servidor,  además del tipo de servicio y localización del servidor, debe indicar el puerto por el que se establecerá la conexión.  En este sentido, un puerto es un extremo de una conexión lógica [2].  Los puertos se indican por números, y cuando los servicios se refieren a la Web, van incluidos en la sintaxis de la mayoría de las ULRs ( Ap. G).  Para que sea posible utilizar un servicio de un servidor es necesario que el puerto correspondiente del servidor sea el correcto y que esté habilitado.  Coloquialmente diríamos que el servidor debe estar "escuchando" por dicho puerto.

El sistema se comprende mejor considerando que cada paquete de una conexión TCP/IP tiene una cabecera  con los siguientes datos:

  • Dirección IP de origen (4 bytes)
  • Puerto TCP o UDP de origen (2 bytes)
  • Dirección IP de destino (4 bytes)
  • Puerto TCP o UDP de destino (2 bytes)

La asignación de puertos permite que una máquina pueda establecer simultáneamente diversas conexiones TCP/IP con máquinas distintas, ya que todos los paquetes que se reciben tienen la misma dirección IP, pero van dirigidos a puertos diferentes.   También que una máquina pueda establecer simultáneamente diversas comunicaciones TCP/IP con otra utilizando puertos distintos para cada conexión.

Como se ha indicado, los números de puerto se indican mediante una palabra de 2 bytes (16 bits), por lo que el rango de valores es de 216 (0 a 65535) y en principio una aplicación puede utilizar cualquier número dentro del rango.  Sin embargo, con el fin de unificar criterios en cuanto a los puertos que utilizarían las aplicaciones de Internet, la IANA ( N-6) realizó una asignación de los números disponibles en tres categorías:

  • Puertos bien conocidos ("Well known ports"), comprendidos entre 0 y 1023.  Estos 1024 (210) puertos pueden ser representados con 10 bits y son reservados para servicios conocidos.
  • Puertos registrados ("Registered ports").  48127 puertos comprendidos entre 1024 y 49151.
  • Puertos dinámicos y privados.  Los comprendidos entre los números 49152 y 65535.  

En caso de tener que asignar un puerto a una aplicación, si no se elige el correspondiente "Well-Known" debe seleccionarse un número en el rango 1024 - 65535.  En los sistemas Linux la asignación de puertos se encuentra en el fichero  /etc/services.  También pueden inspeccionarse los puertos abiertos por las distintas aplicaciones mediante la utilidad netstat.

Puede consultarse en RFC 1700 (  www.faqs.org/rfcs) y en la propia IANA www.iana.org/assignments/port-numbers.

En los sistemas POSIX, los números de puertos y nombres de los servicios correspondientes, están definidos en el fichero /etc/services. En los sistemas Windows estos valores se encuentran en el fichero  c:\windows\system32\drivers\etc\services, cuyo contenido, para un sistema WindowsXP.

La tabla adjunta muestra algunos de estos puertos y los servicios correspondientes.

N. de puerto Descripción
0 Reservado
1 TCP Servicio de multiplexado de puertos (TCPMUX)
4 No asignado
5 RJE ("Remote Job Entry")
6 No asignado
7 ECHO
18 MSP ("Message Send Protocol")
20 FTP ("File Transfer Protocol" Ap. G)  Datos
21 FTP ("File Transfer Protocol") Control
22 SSH Secure Shell Remote Login Protocol
23 Telnet (acceso a terminal remoto Ap. G 8.7
25 SMTP ("Simple Mail Transfer Protocol")
29 MSG ICP
37 Time
42 Host Name Server (Nameserv)
43 Whois
49 Login Host Protocol (Login)
53 DNS ("Domain Name System")
59 IDENT
69 TFTP ("Trivial File Transfer Protocol")
70 Servicio Gopher ( Ap. G)
79 Servicio Finger  ( N-13)
80 WWW-HTTP ("Hyper Text Transfer Protocol"  Ap. G)
103 X.400 Standard
108 SNA Gateway Access Server
109 POP2 ("Post Office Protocol")
110 POP3 ("Post Office Protocol")
111 SUN-RPC. ("Remote Procedure Call")
113 UDP ("User Datagram Protocol"  RFC-768)
115 SFTP ("Simple File Transfer Protocol")
118 Servicios SQL
119 NNTP ("Network News Transfer Protocol"  Ap. G)
137 netbios-ns NETBIOS Name Service
138 netbios-dgm  NetBIOS Datagram Service
139 netbios-ssn  NetBIOS Session Service
143 IMAP ("Interim Mail Access Protocol")
156 SQL Server
161 SNMP ("Simple Network Management Protocol")
162 SNMP trap
179 BGP ("Border Gateway Patrol")
190 GACP ("Gateway Access Control Protocol")
194 IRC ("Internet Relay Chat")
197 DLS ("Directory Location Service")
210 wais (servicio de búsquedas Ap. G)
389 LDAP ("Lightweight Directory Access Protocol")
396 Novell Netware sobre IP
443 HTTPS ("HyperText Transfer Protocol" Ap. G)
444 SNNP ("Simple Network Paging Protocol")
445 Microsoft-DS
458 Apple QuickTime
513 rlogin  Acceso remoto 
546 DHCP ("Dynamic Host Configuration Protocol" A3.6) Cliente
547 DHCP Servidor
563 SNEWS
569 MSN
631 UDP ("User Datagram Protocol")
1080 Socks Proxy
Otros puertos no estándar
   
1503 T.120 Utilizado por aplicaciones que comparten aplicaciones
   
1720 H.323 Utilizado para escuchar llamadas entrantes por aplicaciones como VideoLink_Pro de Smith Micro y Microsoft NetMeeting.
1723 PPTP ("Point-to-Point Tunneling Protocol")
2049 NFS
6660-6669 TCP ("Transmission Control Protocol" )
8080 Web proxy caching service
   

  Inicio.


[1]  UDP ("Unreliable Datagram Protocol").  Protocolo para transmisión de Video en tiempo real (por ejemplo RealPlayer), que ignora los frames erroneos;  ofrece mucho menos control que TCP.

También: "Usenet Death Penalty" (Pena de muerte de Usenet).  Una medida anti-spam por la que los administradores de redes pueden evitar recibir noticias de un servidor determinado (conocido por sus malos hábitos al respecto) o sistemáticamente cancelar todos los mensajes provenientes de una persona, que contengan determinadas palabras, etc.

[2]  Otro aspecto del concepto de "puerto" un ordenador (desde la óptica del PC) puede consultarse el capítulo "Puertos de E/S" del tutorial Tecnología del PC ( H2.5).  En dicho capítulo se utiliza el concepto de forma similar, aunque en este caso no se trata de las comunicaciones TCP/IP entre distintas máquinas, sino desde la óptica de las comunicaciones entre los distintos elementos hardware que componen una misma máquina.