Diferencia entre revisiones de «Usuario:ManuelRomero/net»
De WikiEducator
(→Conceptos básicos de redes) |
(→Términos usados en redes) |
||
Línea 13: | Línea 13: | ||
*Necesidad de que el emisor conozca la identificación del dispositivo o nodo con el que quiere contactar | *Necesidad de que el emisor conozca la identificación del dispositivo o nodo con el que quiere contactar | ||
===Términos usados en redes=== | ===Términos usados en redes=== | ||
− | Protocolo | + | *Protocolo: Un programa que implementa la comunicación entre dos elementos |
− | Servicio | + | **A nivel de aplicación lo invoca el usuario |
− | + | **A otro nivel es parte del kernel del SO | |
− | Este tema está desarrollado de forma más detellada en | + | *Servicio |
− | Puedes acceder al siguiente url para poder ver apuntes de Cisco sobre la red y los protocolos | + | *Modelo de referencia: ''''Capas del modelo'''' |
+ | *Este tema está desarrollado de forma más detellada en muchos sitios | ||
+ | *Puedes acceder al siguiente url para poder ver apuntes de Cisco sobre la red y los protocolos | ||
http://curriculum.netacad.net/virtuoso/servlet/org.cli.delivery.rendering.servlet.CCServlet/LMS_ID=CNAMS,Theme=ccna3theme,Style=ccna3,Language=es,Version=1,RootID=knet-lcms_exploration1_es_40,Engine=static/CHAPID=null/RLOID=null/RIOID=null/index.html | http://curriculum.netacad.net/virtuoso/servlet/org.cli.delivery.rendering.servlet.CCServlet/LMS_ID=CNAMS,Theme=ccna3theme,Style=ccna3,Language=es,Version=1,RootID=knet-lcms_exploration1_es_40,Engine=static/CHAPID=null/RLOID=null/RIOID=null/index.html | ||
Línea 26: | Línea 28: | ||
{{Definicion| Protocolo conjunto de reglas y normas establecidas para que dos partes se puedan entender}} | {{Definicion| Protocolo conjunto de reglas y normas establecidas para que dos partes se puedan entender}} | ||
*Ejemplo: Un director chino quiere hacer un negocio con un director alemán, entre ellos directamente no se puede entender: | *Ejemplo: Un director chino quiere hacer un negocio con un director alemán, entre ellos directamente no se puede entender: | ||
− | *PDU Información de cada una de las capas | + | ===Modelo de referencia OSI Vs TCP/IP=== |
− | *Cabecera Datos que permiten que cada capa realice su cometido | + | [[Archivo:ModeloReferencia.png]] |
+ | *'''PDU''' Información de cada una de las capas | ||
+ | *'''Cabecera Datos''' que permiten que cada capa realice su cometido | ||
+ | *Aplicacion Interactúa con el usuario, DNS, HTTP | ||
+ | *Transporte TCP UDP Puerto | ||
+ | *Red|Internet IP (ICMP, ARP/RARP) Direcciones IP (red/host) Enrutar: encontrar el camino para llegar a alcanzar la red destino | ||
+ | *Enlace|Acceso al medio Ethernet, Token Ring, Frame Relay (tecnologías de red) Trama Direcciones MAC Cola Verificar validez de la trama | ||
{{Objetivo|nuestro objetivo: '''Capa de Transporte''' Para poder hacer los probramas}} | {{Objetivo|nuestro objetivo: '''Capa de Transporte''' Para poder hacer los probramas}} | ||
Revisión de 11:20 7 may 2012
Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos. Ver página de charlas. |
Contenido
- 1 Comunicaciones y redes
- 2 Definición
- 3 Definición
- 4 Objetivo
Comunicaciones y redes
Conceptos básicos de redes
'Red' Conjunto de dispositivos interconectados con la capacidad de intercambiar y compartir recursos |
- Idea de malla o red de pescar
- Puedo ir de un nodo o dispositivo a cualquier otro nodo o dispositivo sin abandonar la red
- Existen diferentes tipos de redes
- La más conocida y usada la red de tipo Tcp/ip o red de internet (red de redes)
- Necesidad de indentificar de forma única cada dispositivo de la red
- Necesidad de que el emisor conozca la identificación del dispositivo o nodo con el que quiere contactar
Términos usados en redes
- Protocolo: Un programa que implementa la comunicación entre dos elementos
- A nivel de aplicación lo invoca el usuario
- A otro nivel es parte del kernel del SO
- Servicio
- Modelo de referencia: 'Capas del modelo'
- Este tema está desarrollado de forma más detellada en muchos sitios
- Puedes acceder al siguiente url para poder ver apuntes de Cisco sobre la red y los protocolos
Podemos ver el siguiente corto para entender un poco más de redes
http://www.youtube.com/watch?v=XeldfbDijUY&feature=related
Protocolo conjunto de reglas y normas establecidas para que dos partes se puedan entender |
- Ejemplo: Un director chino quiere hacer un negocio con un director alemán, entre ellos directamente no se puede entender:
Modelo de referencia OSI Vs TCP/IP
- PDU Información de cada una de las capas
- Cabecera Datos que permiten que cada capa realice su cometido
- Aplicacion Interactúa con el usuario, DNS, HTTP
- Transporte TCP UDP Puerto
- Red|Internet IP (ICMP, ARP/RARP) Direcciones IP (red/host) Enrutar: encontrar el camino para llegar a alcanzar la red destino
- Enlace|Acceso al medio Ethernet, Token Ring, Frame Relay (tecnologías de red) Trama Direcciones MAC Cola Verificar validez de la trama
Capas del modelo OSI
Proceso de encapsulacion y desencapsulacion
Modelo TCP/IP
Concepto de socket y capa de transporte
- En la capa de transporte tenemos dos protocolos
- TCP Seguro, orientado a la conexion y con control de flujo, lento y pesado
- UDP rápidlo, ligero, no seguro, no orientado a la conexión sin control de flujo
Ambos identifican con un puerto la aplicación/conversación concreta a la que va destinada el paquete
- Socket
- Representa los terminales de la conexión entre dos máquinas o servicios
- Estos terminales se unen por la red física de la cual no tenemos porque saber absolutamente nada
- Los socket son creados por el sistema operativo
- El API de java java.net y java.nio tienen métodos para que el programa pueda invocar al SO para que cree un socket
- el socket tiene métodos para poder envier mensajes a otras aplicciones las cuales los recibierán en su socket
- La aplicacion tiene métodos para que el so cree un socket para usar
- Existen dos tipos de socket
- socket activos
- Se conecta con el servidor, envía y recibe datos, se ubican tanto en el cliente como en el servidor)
- socket pasivos
- Esperan conexiones de los clientes y se ubican al lado del servidor
- Un socket tiene información que le identifica
- Puerto
- Direccion IP
- Tipo de protocolo
Concepto cliente servidor
Pasos para realizar una aplicación clinete/servidor con TCP
- Se deben crear socket en el cliente (activos) y en el servidor (pasivos)
- El socket servidor se crea en un puerto que será el que establezca la conexión para la aplicación
- El socket pasivo se queda esperando o escuchando a que lleguen solicitudes por parte de otro socket activo por el puerto establecido (Sólo escucha ese puerto)
- El cliente lanza una solicitud de conexión al servidor
- El servidor acepta la solicitud (eso es lo esperado :))
- Se realizan intercambio de datos
- Se cierran las conexiónes
Identificadon un dispositivo de red
- Direccion IP
- URL Localizador Unico de Recurso
Formato para identificar un recurso en la red
servicio://maquina.dominio:puerto/camino/fichero
- Servicio
- Identifica el protocolo que vamos a usar para acceder
- máquina.dominio
- Identifica el nombre de la máquina dentre de un subdominio de un dominio o directamente dentro de un dominio
- Camino
- Es el path dentro de la máquina donde se ubica el recurso
- Fichero
- El recurso al que quiero acceder
Clases de java para desarrollo de comunicaciones
Paquete java.net java.nio
- Clases para el API con socket del SO
- ServerSocket ==> Permite definir socket pasivos
- Socket ==>Permite definir socket activos
- Clases para trabajar con URL
- URL
- InetAddress ==>
- Excepciones
- ServerException
- UnknownServiceException
- UnknownHostException
Ejemplo 1
Implementar un programa que me de información del host al que me conecto vía http
import java.io.*; import java.net.*; public class ConexionWeb { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Socket socket = null; try{ InetAddress direccion = InetAddress.getByName("eina.unizar.es"); System.out.println(direccion); socket = new Socket(direccion,80); System.out.println("Conectado a "+socket.getInetAddress()); System.out.println("Puerto destino :"+socket.getPort()); System.out.println("Puerto origen "+socket.getLocalPort()); System.out.println("Y la direccon loncal "+socket.getLocalAddress()); }catch(UnknownHostException e){ System.out.println("No se ha podido encontrar el host destino"); }catch(IOException e){ System.out.println("Error creaando el socket" +e.getMessage()); } } }