Upload
miguel-casares
View
226
Download
0
Embed Size (px)
Citation preview
Socket en .NETGrupo # 5
¿Qué es un Socket? Es la relación entre un puerto de un equipo y el puerto de otro equipo.
¿Qué es un puerto? Es el medio por el cual entrada ó sale información de la computadora.
Nota: para que una conexión se lleve acabo es necesario tener una computadora que funcione como servidor y otra como cliente.
¿Qué es la clase Socket?
Proporciona un extenso conjunto de métodos y propiedades para la comunicación en red. La clase socket permite realizar trasferencias de datos.
Métodos del Socket
Accept : Crea un nuevo objeto Socket para una conexión recién establecida.
BeginAccept: Sobrecargado. Comienza una operación para aceptar un intento de conexión entrante.
BeginConnect: Sobrecargado. Comienza una solicitud para una conexión a host remoto.
BeginDisconnect: Comienza una solicitud para la desconexión de un extremo remoto.
BeginReceive: Sobrecargado. Comienza a recibir los datos de un objeto Socket conectado.
BeginReceiveFrom: Comienza a recibir los datos de un dispositivo de red.
Close: Sobrecargado. Cierra la conexión Socket y librea todos los recursos asociados.
Connect: Sobrecargado. Establece una conexión a un host remoto.
DuplicateAndClose: Duplica la referencia del socket para el proceso de destino y cierra el socket para este proceso.
EndConnect: Finaliza una solicitud de conexión pendiente.
EndReceive: Sobrecargado. Finaliza una lectura pendiente.
EndSend: Sobrecargado. Finaliza un envío pendiente.
Listen: Coloca un objeto Socket e un estado de escucha.
Receive: Sobrecargado. Recibe datos de un objeto Socket enlazado.
Select: Determina el estado de uno o varios sockets.
Métodos protegidos
Dispose: Librea los recursos no administrados que utiliza el objeto Socket y de forma opcional desecha los recursos administrados.
Finalize: Reemplazado. Libera los recursos utilizados por la clase Socket.
MemberwiseClone: Crear una copia superficial del objeto Object actual.
Implemetaciones Explícitas de Interfaces
System.IDisposableDispose: Libera Todos Los Recursos Utilizados por Socket.
Propiedades de un Socket
AddressFamily: Obtiene la familia de direcciones de Socket.
Available: Obtiene la cantidad de datos que se han recibido de la red y están disponibles para leer.
Blocking: Obtiene o establece un valor que indica si Socket está en modo de bloqueo.
Connected Obtiene un valor que indica si Socket se conecta con un host Remoto a partir de la última operación Send u Receive.
DontFragment: Obteien o establece un valor de Boolean que especifica si Socket permite fragmentar los datragramas de protocolo internet (IP).
EnableBroadcast: Obtiene o establece un valor Boolean que especifica si Socket puede enviar o recibir paquetes.
Handle: Obtiene el identificador del sistema operativo de Socket.
LocalEndPoint: Obtiene el extremo local.
ProtocolType: Obtiene el tipo de protocolo de Socket.
SocketType: Obtiene el tipo de Socket.
SupportsIPv4: Obtiene un valor que indica si la compatibilidad con IPv4 está disponible y habilita en el host actual.
SupportsIPv6: Obtiene un valor que indica si el marco de trabajo admite IPv6 para ciertos miembros Dns obsoletos.
Propiedades, Métodos y Eventos necesarios para la conexión (Servidor)
Propiedades:Ej. PuertoDeEscucha() as String
Establece el puerto donde ser requiere que el servidor quede “escuchando”
Métodos:
- Escuchar() Inicia el proceso de escuchar peticiones de conexión de parte de los clientes, en el puerto establecido en la propiedad PuertoDeEscucha.
- ObtenerDatos(ByVal IDCliente as Net.IPEndPoint) as String Obtiene los últimos datos enviados por el cliente especificado. - Cerrar(ByVal IDCliente as Net.IPEndPoint) Cierra la conexión con el cliente especificado.
- Cerrar() Cierra todas las conexiones abiertas con los cliente.
- EnviarDatos(ByVal IDCliente as Net.IPEndPoint, ByVal Datos as String) Envía un mensaje a todos los cliente.
- EnviarDatos(ByBal Datos as String) Envía un mensaje a todas los cliente.
Eventos:
- NuevaConexion(ByVal IDTerminal as Net.IPEndPoint) Se produce cuando un Cliente se conecta al Servidor, devuelve un ID, para poder ser identificado cuando ser haga otra conexión.
- DatosRecibidos(ByVal IDTerminal as Net.IPEndPoint) Se produce cuando un cliente envía un mensaje al servidor.
- ConexionTerminada(ByVal IDTerminal as Net.IPEndPoint) Indica cuando ya se ha cerrado la conexión con el cliente.
Propiedades, Métodos y Eventos necesarios para la conexión (Cliente)
Propiedades:
- IPDelHost() As String Establece la dirección ip (o el nombre DNS) del equipo donde se encuentra el servidor.
- PuertoDelHost() As String Establece el número de puerto en el que estará escuchando el servidor al cual se hará la conexión.
Métodos:
- Conectar() Permite conectarse al servidor especificado en las propiedades IPDelHosto() y PuertoDelHost().
- EnviarDatos(ByVal Datos as String) Envía un mensaje al servidor especificado en las propiedades IPDelHosto() y PuertoDelHost().
Ejemplo:
Integrantes del Grupo # 5
Christian Gonzalo Díaz Rodríguez 2008249 IN5AVLuis Pedro Garzaro Chinchilla 2009049 IN5AVNelson Omar Revolorio Cubur 2009423 IN5AVByron David Hernández Bran 2009191 IN5AVDanilo Andrés Escolin Rodríguez 2009310 IN5AV