Conceptos Básicos de Programación

Slides:



Advertisements
Presentaciones similares
Arquitectura cliente-servidor
Advertisements

Curso de Java Java – Redes Rogelio Ferreira Escutia.
Capa 4 Capa de Transporte
Sockets y Threads en JAVA
SOCKETS INTRODUCCIÓN DEFINICIÓN TIPOS DE SOCKETS USO DE SOCKETS.
Servidor de Batalla Naval.
Sockets en Java. Sockets ● Para programar aplicaciones en red en Java se utilizan los Sockets. ● Un socket permite establecer y manejar una conexión entre.
INTEGRANTES: MARTINEZ MISHELL MEDINA ENID MENENDEZ EVELYN INTEGRANTES: MARTINEZ MISHELL MEDINA ENID MENENDEZ EVELYN.
Sistemas de Comunicación Magistral Nro. 8 Capa 4: Transporte Las funciones principales de la capa de transporte son transportar y regular el flujo de información.
ELO3091 Interfaz de Socket Agustín J. González ELO309.
LABORATORIO DE ESTRUCTURA DE COMPUTADORES II Desarrollo de aplicación Cliente-Servidor.
Nivel de Transporte en Internet
Modelo OSI Para redes………
Capa de Acceso de Red (Network Access Layer). Definición: Es la primera capa del modelo TCP/IP. Ofrece la capacidad de acceder a cualquier red física,
Programación II Sesión 3. TABLA DE CONTENIDO  Tipos de Datos en C  Delimitadores  Tipo Char  Tipo Int  Tipo Float  Tipo Double  Constantes  Operadores.
Capa de Red OSI Integrantes Carlos Mario Estrada Puerta Alejandra Barragán Santiago Ramírez Santa.
PROGRAMACIÓN ORIENTADA A OBJETOS SEGUNDA UNIDAD: “CLASES, OBJETOS Y MÉTODOS” IRVING YAIR SALAS CHÁVEZ ING. EN SISTEMAS COMPUTACIONALES - ITSLP.
Paul Leger Modelo OSI Paul Leger
UF0854: Instalación y configuración de los nodos de una red local.
Teleprocesos Ing. Leonardo Párraga.
RDSI de banda ancha La ITU- T define:
Mecanismos de Comunicación usando Paso de Mensajes
MOdeLO.
Tema 4 Elementos para el Desarrollo de Algoritmos
Conceptos Básicos de Programación
Comunicación Servidor-Cliente sin conexión
Comunicación de redes informáticas
CONCEPTOS BÁSICOS DE INTERNET
Conceptos Básicos de Programación
Programación con sockets I
Usando StreamReader y StreamWriter
Modelo OSI.
Una competición para Robots Virtuales muy poco virtuosos
Programación con sockets II
UNIVERSIDAD PEDAGÓGICA NACIONAL FRANCISCO MORAZÁN
Definición de un Sistema Distribuido
QUE ES UN SERVIDOR DE CORREO
LENGUAJES Y REPRESENTACION TECNICA
INTERNET Actividad 3 Herramientas Tareas Ruben Dario Acosta V.
CONOCIMIENTOS PREVIOS
DOCENTE: EMILIO ISMAEL BUSTAMANTE MONTES
Redes. Informe de los videos.
Capa de Red: comunicación de host a host  La Capa de red o Capa 3 de OSI: Provee servicios para intercambiar secciones de datos individuales a través.
Protocolos Protocolos de red.
FUNDAMENTOS DE PROGRAMACION EN ENTORNO WEB. Rodrigo Cabello Ing. Informático Director de proyectos Think – Ideas in Motion FUNDAMENTOS.
A RQUITECTURA C LIENTE - SERVIDOR La arquitectura del cliente servidor se divide en dos partes Los promovedores de recursos o servicios llamados servidores.
Universidad Veracruzana
Comunicaciones Rogelio Ferreira Escutia
Curso: fundamentos de redes Profesor: Miguel farfan Sesion: 03
Punto 12 – DNS Dinámico (DDNS)
Diagrama de Clases Un diagrama de clases esta compuesto por los siguientes elementos: Clase: atributos, métodos y visibilidad. Relaciones: Herencia, Composición,
Modelo de TCP - IP.
CAPA FÍSICA DEL MODELO OSI La capa física: Señales de comunicación.
2 Es el dispositivo digital lógico de interconexión de equipos que opera en la capa de enlace de datos del modelo OSI. Su función es interconectar dos.
ESTRUCTURA DE SISTEMAS OPERATIVOS Carbajal Rojas karla.
PROTOCOLO DE COMUNICACIÓN Y CABLEADO ESTRUCTURADO
PROTOCOLO DE COMUNICACIÓN Y CABLEADO ESTRUCTURADO
Las tramas de Ethernet TRAMA ETHERNET Responsable de la correcta configuración de las reglas El éxito de la transmisión de los paquetes de datos Tiene.
Los protocolos de la capa de red del modelo OSI especifican el direccionamiento y los procesos que permiten que los datos de la capa de transporte sean.
Intr. a la creación y gestión de páginas web

CAPA DE RED- OSI. Intercambiar secciones de datos individuales a través de la red entre dispositivos finales identificados. Provee servicios para:
NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición.
INTERNET Cuando la gente hace referencia a Internet se está refiriendo normalmente a esta red y a un conjunto de servicios y aplicaciones que permiten.
Maestro: Oscar Medina Espinosa REDES CONVERGENTES Unidad II. Calidad de Servicio (QoS).
Ha llegado el momento de dar una mirada al interior de los Sistemas Operativos. En las siguientes secciones examinaremos cuatro estructuras distintas.
FUNDAMENTOS DE REDES ANALIZAREMOS LA TERMINOLOGÍA Y LOS CONOCIMIENTOS BÁSICOS QUE SE DEBEN TENER A FIN DE QUE LA INFORMACIÓN CONTENIDA EN LO QUE RESTA.
Introducción a la Programación. Modulo 61 Programación Web Programación Web.
Medios. Transmisión a través de ondas de radio de alta frecuencia (En el rango de 1 a 30 GigaHertz) para comunicaciones de banda ancha. Requiere una estación.
VARIABLE Y TIPO DE DATOS. ¡Que Es Variable? Un lugar para almacenar información en un espacio de memoria de la computadora.
Transcripción de la presentación:

Conceptos Básicos de Programación RoboSim Conceptos Básicos de Programación

Tecnologías en Robosim Comunicaciones TCP-IP Necesitamos utilizar las librerías de comunicaciones y cadenas alfanuméricas. Programación distribuida Necesitamos utilizar objetos de sincronismo y librerías para la gestión de threads. Inteligencia Artificial Necesitamos utilizar estructuras de datos y variables dinámicas.

Comunicaciones Las tecnologias de comunicaciones entre ordenadores se diseñan mediante una arquitectura de capas OSI (ver wikipedia modelo osi). Lo que nos interesa: una capa o tecnología pone a nuestra disposición unos servicios (herramientas) para permitir la comunicación que usa todos los recursos de las capas inferiores. Así pues, si utilizamos el nivel osi de transporte no tenemos que ocuparnos ni del nivel físico, ni del enlace …

Nuestra Elección: Sockets Nuestro nivel o tecnología de comunicaciones será los sockets, en concreto, los stream sockets (ver sockets de Internet). Nuestros sockets está basados en TCP-IP (capa de transporte). Lo que nos permiten: Comunicar 2 programas en ordenadores distintos identificados mediante: el IP del ordenador y un número (que llamaremos puerto). Mediante una sesión (es decir, hay un proceso de establecimiento de la comunicación antes de que esta se produzca, a este proceso le llamaremos establecimiento de la sesión). Garantizando la recepción correcta de toda la información (no en UDP, pero este no es nuestro caso). Lo que transmitimos son “octetos”.

Librerías de Sockets Todos los sistemas tienen alguna librería con funciones similares para la implementación de la idea de socket (buscar socket y el lenguaje o entorno utilizado). En concreto tendremos: Funciones (métodos, interfaces, …) para establecer la comunicación (crear el socket, buscar el programa con el que queremos comunicarnos, etc). Funciones para trasmitir información, una para emitir información y otra para recibir información.

Establecimiento de Sesión Existen 2 posibilidades: ser servidor (esperar a que alguien se conecte) o ser cliente (ir a buscar un sitio al que conectarse, es decir, un servidor). Se realiza mediante una secuencia establecida de llamadas a funciones (una secuencia es propia del servidor y otra del cliente). No es necesario un conocimiento exhaustivo de lo que hace cada función, es más práctico buscar un ejemplo hecho y adaptarlo a nuestras necesidades).

Establecimiento de Sesión de Servidor en C El establecimiento consta de los siguientes pasos. socket Inicializa una struct con la información del socket bind Reserva números de socket listen Espera conexiones entrantes accept Acepta conexiones entrantes Cada una de las funciones tiene los parámetros correspondientes y devuelve -1 si la operación falla.

Establecimiento de Sesión de Cliente en C El establecimiento consta de: socket Crea el socket para su uso posterior connect Conecta el socket al servidor (se tiene que corresponder con accept) Cada función tiene los correspondientes parámetros y devuelve -1 si falla.

Enviar y Recibir información Se hace a través de 2 funciones: read (o recv) recibe la información escrita en el socket. write (o send) envía información a través del socket. Tienen como parámetro el socket y un buffer. Devuelven el número de bytes trasmitidos (incluido 0 bytes transmitidos) y -1 si hay un error.

Cadenas Alfanuméricas Son el buffer de las funciones de transmisión de información. Básicamente es un array de letras. En C: char[LongMax]. Las comunicaciones mediante sockets se basan en la transmisión de cadenas alfanuméricas de longitud predeterminada. Ojo, hay que distinguir estas cadenas de la cadena terminada en null (null terminating string). El sistema de comunicaciones de Robosim transmite los números que son necesarios en un solo byte. De esta forma se pueden convertir cómodamente a un char sin pensar en el sistema en el que estemos (distintas codificaciones de números enteros: endianness). Robosim no utiliza número reales.

Consideraciones sobre buffers de char en C Si una función tiene como parámetro un char*, lo más probable es que requiera un buffer (o una cadena alfanumérica). Se puede comprobar porque generalmente (¡¡No siempre!!) la función lleva un parámetro más que nos indica la capacidad máxima del buffer. Un buffer se declara, por ejemplo, como: char buffer[512]; Un buffer debe tener suficiente espacio para almacenar la información y un char más (el null del final). El tipo del buffer es, a la vez, char* y char[]. ¡¡Nunca debes asignar un buffer!! En su lugar usa strcpy, pero antes asegúrate que acaba en null. Las funciones de trasmisión de datos en los sockets NO usan null terminating strings sino buffers definidos mediante el número de bytes. Las funciones que trabajan con cadenas en C, es al revés, siempre usan null terminating strings. Para convertir: buffer[longitud] = 0; y (buffer,strlen(buffer))