Sei sulla pagina 1di 3

TCP 1.Qu llamada sirve para crear el socket? Cuntos parmetros necesita y qu signif ica cada uno de ellos?

Existe alguna diferencia entre las llamadas que efectan el cliente y el ser vidor? 1.1 la funcin socket() int Descriptor; Descriptor = socket(AF_INET,SOCK_DGRAM,0); 1.2 El primer parmetro indica la familia, en nuestro caso ser AF_INET. Cabe destacar que una familia es un espacio de nombres o famlia de protocolos correspondiente al socket (<sys/socket.h>): AF_INET; Famlia de protocolos de Interne t El segundo parmetro indica que es UDP (SOCK_STREA M indicara un socket TCP orientado a conexin). Basicamente es un estilo de la comu nicacin. En nuestro caso SOCK_STREAM es un estilo de comunicacin secuencua de byte s. El tercer parmetro especifica protocolo que se qu iere usar en el socket por medio del numero asosciado a dicho protocolo. EL nmero 0 represta el orientado por defecto o el ms utilizado. 1.3 No existe ninguna diferencia ya que se llaman co n la misma manera tanto como el cliente como el servidor. 2. Qu llamada hace el servidor para admitir la conexin de un nuevo cliente? Qu devuelve esta llamada? Qu tiene de particular y por qu es necesario este comporta miento? 2.1 La llamada accept(), que se utilizar para enviar y recibir. 2.2 Esta funcin retorna un nuevo descriptor de socket al recibir la conexin del cliente en el puerto configurado. 2.3 Tiene en particular es que la llamada accept() se bloquea en espera de una conexin entrante. 3. Tal como est programado el servidor, cuntos clientes concurrentes pueden estar conectados al mismo momento? Solo uno ya que para que pueda recibir ms de un cliente sera neces ario una programacin con hilos o realizar una llamada a la funcin select. 4. Cuando se ejecuten los programas, comprobar con netstat que se han c reado los sockets correspondientes, y adjuntar una captura de pantalla. UDP 5.Cul es la unidad de intercambio de datos entre el cliente y el servidor? Cuntos datos puede transporter, a partir de lo que se observa en el cdigo, cada pa

quete de datos? Un char y puede transportar el nmero de bytes de TAMBUFER, se pue de ver en la funcin menset. 6. Dado que en UDP no se establece conexin entre el cliente y el servidor , Dnde define el cliente la direccin y el Puerto del servidor al cul se quieren envi ar los datos? En la funcin sento y en la funcin revfrom por parte del servidor. 7. Qu llamadas usa el cliente para enviar los datos?Que llamadas usa el ser vidor para recibir los datos a traves de los cokets UDP?Cuantos parmetros tiene cad a llamada? La funcin sento y la funcin revfrom por parte del servidor. int sendto(int s, const void *buf, int num, int flags, c onst struct sockaddr *to, int tolen); La funcin sendto escribe hasta num bytes de datos mediante el soc ket especificado por s. Sus parmetros son: s Descriptor del socket creado con anterioridad. buf en el socket. num Nmero de bytes a escribir en el socket. flags Opciones de envo, generalmente valor 0. to Estructura de datos que contiene la direccin IP y el puerto al que se desean escribir los datos. tolen Longitud de la estructura de datos anter ior. int recv(int s, void *buf, int lon, int flags, struct sockaddr * desde, int *londesde); La funcin recvfrom lee datos del socket especificado por s. Sus a rgumentos son: s Descriptor del socket creado con anterioridad. buf Buffer que contendr los datos ledos lon Longitud del buffer en bytes, indica ade ms el tamao mximo en bytes de los datos a leer, pues n_bytes debe ser como mximo igu al al tamao de buf. flags Opciones de recepcin, generalmente valor 0. desde Estructura de datos que contendr la direc cin IP y el puerto desde el que se han recibido los datos ledos. londesde Longitud de la estructura de datos anter ior. 8. Como puede saber el servidor quin enva el paquete? La direccin se mete dentro de la estructura gracias a la conversin mediante la funcin gethostbyname que lo que es pasar la direccin del host a binar io por tanto dentro de la estructura ya tendramos la direccin y va dentro de la fu ncin sendto en el parmetro mencionado antes "to" Estructura de datos que contiene la direccin IP y el puerto al que se desean escribir los datos. 9. Captura Buffer que contiene los datos a escribir

Potrebbero piacerti anche