Logo
You
Code

Sockets Soportados

Autor YouCode - http://www.youcode.com.ar/php/sockets-soportados-13

Dominio de Internet: TCP, UDP, SSL, y TLS Dominio Unix: Unix y UDG La siguiente es una lista de los varios transportes de socket estilo URL que PHP tiene integrados para su uso con funciones de sockets basados en secuencias, tales como fsockopen(), y stream_socket_client(). Estos transportes no se aplican a la Extensión de Sockets. Para una lista de transportes instalados con su versión de PHP use stream_get_transports()

Dominio de Internet: TCP, UDP, SSL, y TLS

PHP 4, PHP 5. ssl:// y tls:// a partir de PHP 4.3.0, sslv2:// y sslv3:// a partir de PHP 5.0.2

Nota: Si no se especifica un transporte, se asumirá tcp://

127.0.0.1
fe80::1
www.example.com
tcp://127.0.0.1
tcp://fe80::1
tcp://www.example.com
udp://www.example.com
ssl://www.example.com
sslv2://www.example.com
sslv3://www.example.com
tls://www.example.com

Los sockets del Dominio de Internet esperan un número de puerto junto con una dirección de destino. En el caso de fsockopen(), éste es especificado en un segundo parámetro y por lo tanto no tiene impacto sobre el formato de la URL de transporte. Sin embargo, en el caso de stream_socket_client() y funciones relacionadas, así como ocurre con URLs tradicionales, el número de puerto se especifica como un sufijo del URL de transporte delimitado con el signo dos puntos.

tcp://127.0.0.1:80
tcp://[fe80::1]:80
tcp://www.example.com:80

Nota: Direcciones IPv6 numéricas con números de puerto

En el segundo ejemplo anterior, mientras que los ejemplos IPv4 y con nombre de dominio fueron modificados solo ligeramente con la adición de sus dos puntos y número de puerto, la dirección IPv6 es rodeada por corchetes cuadrados: [fe80::1]. Esto es para poder distinguir entre los dos puntos usados en una dirección IPv6 y aquellos usados para delimitar el número de puerto.

Los transportes ssl:// y tls:// (disponibles únicamente cuando se compila el soporte para openssl con PHP) son extensiones del transporte tcp:// el cual incluye encripción SSL. A partir de PHP 4.3.0 el soporte OpenSSL debe ser compilado estáticamente con PHP, a partir de PHP 5.0.0 puede ser compilado como módulo o estáticamente.

ssl:// intentará negociar una conexión SSL V2 o SSL V3 dependiendo de las capacidades y preferencias del host remoto. sslv2:// y sslv3:// seleccionarán el protocolo SSL V2 o SSL V3 explícitamente.

Dominio Unix: Unix y UDG

unix:// y udg:// (udg:// a partir de PHP 5).

unix:///tmp/misock
udg:///tmp/misock
unix:// provee acceso a una conexión secuencial de sockets en el dominio Unix. udg:// provee un transporte alternativo a un socket del dominio Unix, usando el protocolo de datagramas de usuario.

Los sockets de dominio Unix, a diferencia de los sockets del dominio de Internet, no esperan un número de puerto. En el caso de fsockopen(), el parámetro num_puerto debe ser definido como 0.

http://www.youcode.com.ar/php/sockets-soportados-13