Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Sockets con cualquier protocolo

Estas en el tema de Sockets con cualquier protocolo en el foro de C/C++ en Foros del Web. Buenas a todos: ¿Me podríais decir si el manejo de sockets es independiente del protocolo de comunicación? Es decir, si la sintaxis de creación es ...
  #1 (permalink)  
Antiguo 15/12/2010, 04:23
 
Fecha de Ingreso: enero-2007
Mensajes: 26
Antigüedad: 17 años, 10 meses
Puntos: 0
Pregunta Sockets con cualquier protocolo

Buenas a todos:

¿Me podríais decir si el manejo de sockets es independiente del protocolo de comunicación? Es decir, si la sintaxis de creación es la misma.

Por ejemplo, para declarar el socket se utiliza la sintaxis:

int socket(int dominio, int tipo, int protocolo);

¿Se puede aplicar cualquier potocolo? Porque desconozco que valores se le puede pasar como argumento, ni si hay alguna tabla o se puede hacer algún tipo de consulta al sistema para obtener el identificador de protocolo a utilizar en la instancia del socket.

A rasgos generales, la duda principal de este post es si puedo utilizar cualquier protocolo de comunicaciones con sockets en C porque tengo que trabajar con uno poco común o al menos bastante menos popular que TCP/IP o UDP.

¡Un saludo y gracias por las molestias!
  #2 (permalink)  
Antiguo 16/12/2010, 05:19
Avatar de newboy_master  
Fecha de Ingreso: enero-2008
Ubicación: Granada
Mensajes: 882
Antigüedad: 16 años, 10 meses
Puntos: 46
Respuesta: Sockets con cualquier protocolo

Te cito el "man socket":

Cita:
El protocolo especifica un protocolo particular para ser usado con el conector. Normalmente sólo existe un protocolo que admita un tipo particular de conector dentro de una familia de protocolos dada, en cuyo caso protocolo se puede especificar como 0. Sin embargo, es posible que puedan existir varios protocolos, en cuyo caso un protocolo particular puede especificarse de esta manera. El número de protocolo a
emplear es específico al “dominio de comunicación” en el que la comunicación va a tener lugar; vea protocols(5). Consulte getprotoent(3) para ver cómo asociar una cadenas con el nombre de un protocolo a un número de protocolo.
Sobre la familia de protocolos a usar, si pones "AF_INET" corresponde a protocolos de internet IPv4, "AF_INET6", IPv6. Lo que a ti te interesa es el primer parámetro:

SOCK_STREAM >Socket orientado a conexión (TCP/IP).
SOCK_DGRAM > Socket no orientado a conexión (UDP).

Echa un vistazo:
http://www.chuidiang.com/clinux/sock...ckets_simp.php

Salu2.
__________________
@jslirola - Programador Web Freelance.
  #3 (permalink)  
Antiguo 16/12/2010, 10:59
 
Fecha de Ingreso: enero-2007
Mensajes: 26
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Sockets con cualquier protocolo

Muchísimas gracias por la ayuda. Me resolviste la duda :)

¡Un saludo!

Etiquetas: protocolo, sockets
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:12.