PROTOCOLOS

Description

Cuenta con todo los tipos de protocolos existentes
Hans Diaz
Mind Map by Hans Diaz, updated more than 1 year ago
Hans Diaz
Created by Hans Diaz about 9 years ago
21
0

Resource summary

PROTOCOLOS
  1. HTTP
    1. Introducción al protocolo HTTP
      1. Desde 1990, el protocolo HTTP (Protocolo de transferencia de hipertexto) es el protocolo más utilizado en Internet. La versión 0.9 sólo tenía la finalidad de transferir los datos a través de Internet (en particular páginas Web escritas en HTML). La versión 1.0 del protocolo (la más utilizada) permite la transferencia de mensajes con encabezados que describen el contenido de los mensajes mediante la codificación MIME.
        1. El propósito del protocolo HTTP es permitir la transferencia de archivos (principalmente, en formato HTML). entre un navegador (el cliente) y un servidor web (denominado, entre otros, httpd en equipos UNIX) localizado mediante una cadena de caracteres denominada dirección URL.
        2. Comunicación entre el navegador y el servidor
          1. La comunicación entre el navegador y el servidor se lleva a cabo en dos etapas:
            1. El navegador realiza una solicitud HTTP
              1. El servidor procesa la solicitud y después envía una respuesta HTTP
            2. Solicitud HTTP
              1. Una solicitud HTTP es un conjunto de líneas que el navegador envía al servidor. Incluye:
                1. Una línea de solicitud
                  1. es una línea que especifica el tipo de documento solicitado, el método que se aplicará y la versión del protocolo utilizada. La línea está formada por tres elementos que deben estar separados por un espacio
                    1. el método
                      1. la dirección URL
                        1. la versión del protocolo utilizada por el cliente (por lo general, HTTP/1.0)
                      2. Los campos del encabezado de solicitud
                        1. es un conjunto de líneas opcionales que permiten aportar información adicional sobre la solicitud y/o el cliente (navegador, sistema operativo, etc.).
                        2. El cuerpo de la solicitud
                          1. es un conjunto de líneas opcionales que deben estar separadas de las líneas precedentes por una línea en blanco y, por ejemplo, permiten que se envíen datos por un comando POST durante la transmisión de datos al servidor utilizando un formulario.
                      3. Comandos
                        1. GET
                          1. Solicita el recurso ubicado en la URL especificada
                          2. HEAD
                            1. Solicita el encabezado del recurso ubicado en la URL especificada
                            2. POST
                              1. Envía datos al programa ubicado en la URL especificada
                              2. PUT
                                1. Envía datos a la URL especificada
                                2. DELETE
                                  1. Borra el recurso ubicado en la URL especificada
                                3. Respuesta HTTP
                                  1. Una respuesta HTTP es un conjunto de líneas que el servidor envía al navegador. Está constituida por: Incluye:
                                    1. Una línea de estado
                                      1. es una línea que especifica la versión del protocolo utilizada y el estado de la solicitud en proceso mediante un texto explicativo y un código. La línea está compuesta por tres elementos que deben estar separados por un espacio: La línea está formada por tres elementos que deben estar separados por un espacio:
                                        1. la versión del protocolo utilizada
                                          1. el código de estado
                                            1. el significado del código
                                          2. Los campos del encabezado de respuesta
                                            1. s un conjunto de líneas opcionales que permiten aportar información adicional sobre la respuesta y/o el servidor. Cada una de estas líneas está compuesta por un nombre que califica el tipo de encabezado, seguido por dos puntos (:) y por el valor del encabezado Cada una de estas líneas está formada por un nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del encabezado.
                                            2. El cuerpo de la respuesta
                                              1. contiene el documento solicitado. Por lo tanto, una respuesta HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y avance de línea)
                                        2. TCP
                                          1. TCP (que significa Protocolo de Control de Transmisión), es uno de los principales protocolos de la capa de transporte del modelo TCP/IP. En el nivel de aplicación, posibilita la administración de datos que vienen del nivel más bajo del modelo, o van hacia él, (es decir, el protocolo IP).
                                            1. Permite que dos máquinas que están comunicadas controlen el estado de la transmisión.
                                            2. El objetivo de TCP
                                              1. Los router solo tienen que mandar los datos en DATAGRAMAS
                                                1. Se puede hacer una conexión sencilla entre CLIENTE Y SERVIDOR
                                                  1. Se permite sincronizar las transmisiones y garantizar su recepción.
                                                    1. Capacidad de controlar la velocidad de los datos usando mensajes de tamaño variable.
                                                    2. La función multiplexión
                                                      1. TCP posibilita la realización de una tarea importante: multiplexar/demultiplexar; es decir transmitir datos desde diversas aplicaciones en la misma línea o, en otras palabras, ordenar la información que llega en paralelo.
                                                      2. Confiabilidad de las transferencias
                                                        1. El protocolo TCP permite garantizar la transferencia de datos confiable, a pesar de que usa el protocolo IP, que no incluye ningún monitoreo de la entrega de datagramas.
                                                          1. De hecho, el protocolo TCP tiene un sistema de acuse de recibo que permite al cliente y al servidor garantizar la recepción mutua de datos.
                                                            1. Además, usando un temporizador que comienza con la recepción del segmento en el nivel de la máquina originadora, el segmento se reenvía cuando ha transcurrido el tiempo permitido, ya que en este caso la máquina originadora considera que el segmento está perdido.
                                                        2. Cómo establecer una conexión
                                                          1. La conexión establecida entre las dos aplicaciones a menudo se realiza siguiendo el siguiente esquema:
                                                            1. Los puertos TCP deben estar abiertos.
                                                              1. La aplicación en el servidor es pasiva, es decir, que la aplicación escucha y espera una conexión.
                                                                1. La aplicación del cliente realiza un pedido de conexión al servidor en el lugar donde la aplicación es abierta pasiva. La aplicación del cliente se considera "abierta activa".
                                                                  1. Las dos máquinas deben sincronizar sus secuencias usando un mecanismo comúnmente llamado negociación en tres pasos que también se encuentra durante el cierre de la sesión.
                                                                2. Método de ventana corrediza
                                                                  1. En muchos casos, es posible limitar la cantidad de acuses de recibo con el fin de aliviar el tráfico en la red. Esto se logra fijando un número de secuencia después del cual se requiera un acuse de recibo. Este número en realidad se guarda en el campo ventana del encabezado TCP/IP.
                                                                3. SMTP
                                                                  1. Simple Mail Transfer Protocol (SMTP) o Protocolo Simple de Transferencia de Correo
                                                                    1. El Correo Electrónico es considerado el servicio más utilizado de Internet. Por lo tanto, la serie de protocolos TCP/IP ofrece una gama de protocolos que permiten una fácil administración del enrutamiento del Correo Electrónico a través de la red.
                                                                    2. Historia del Protocolo SMTP
                                                                      1. En 1982 se diseñó el primer Sistema para intercambiar correos electrónicos en ARPANET, definido en los Request for comments RFC 821 y RFC 822. La primera de ellas define este protocolo y la segunda el formato del mensaje que este protocolo debía transportar.
                                                                        1. Con el tiempo se ha convertido en uno de los protocolos más usados en internet. Para adaptarse a las nuevas necesidades surgidas por el crecimiento y popularidad de internet se han hecho varias ampliaciones a este protocolo, como por ejemplo enviar texto con formato.
                                                                      2. Funcionamiento del Protocolo SMTP
                                                                        1. Cuando un cliente establece una conexión con el servidor SMTP, espera a que éste envíe un mensaje "220 Service ready" o "421 Service non available". Se envía un HELO desde el cliente y con ello el servidor se identifica, esto puede usarse para comprobar si se conectó con el servidor SMTP correcto.
                                                                          1. El cliente comienza la transacción del correo con la orden MAIL FROM, como argumento de esta orden se puede pasar la dirección de correo al que el servidor notificará cualquier fallo en el envío del correo (Por ejemplo, MAIL FROM:<fuentearrobahost0>). Luego si el servidor comprueba que el origen es valido, el servidor responde "250 OK".
                                                                        2. Pasos para realizar la configuración
                                                                          1. 1.- Doble click a su Programa de Correo(Outlook Express).
                                                                            1. 2.-Vaya a Herramientas(Tools)-->Cuentas(Accounts)-->Correo(Mail).
                                                                              1. 3.- Elimine la cuenta creada de Terra.
                                                                                1. 4.- De un click en Agregar -->Correo
                                                                                  1. 5.- Ingrese su nombre que aparezca en el correo y de un click en siguiente.
                                                                                    1. 6- Ingrese su casilla de correo electrónico buzónarrobanombre y de un click en siguiente.
                                                                                      1. 7- Aparecerá "Mi Servidor de Correo Entrante es : POP3"
                                                                                        1. 8- En la parte inferior dice “Correo Entrante(POP3)” ingrese con letras minúsculas: pop3.terra.cl; y en el “Correo Saliente(SMTP)” ingrese con letras minúsculas: smtp.terra.cl, y de un click en siguiente.
                                                                                          1. 9.- Aparecerá en “Nombre de cuenta” su correo usuarioarrobaterra.cl y abajo ingrese la contraseña que dio a su correo y de un click en siguiente.
                                                                                            1. 10.- Ahí aparece abajo Finalizar; entonces de un click en "Finalizar".
                                                                                              1. 11.- Aparecerá una ventana de Cuentas de internet, en la pestaña de correo, seleccione la cuenta que creó y de un click sobre el botón Propiedades (Properties).
                                                                                                1. 12.- De un click sobre la pestaña Servidores (Servers).
                                                                                                  1. 13.- Marque la opción: Mi servidor requiere autenticación (My server requires authentication).
                                                                                                    1. 14.- Dar un click sobre el botón: Configuración.
                                                                                                      1. 15.- Marcar la opción: Usar la misma configuración que el servidor de correo entrante.
                                                                                                        1. 16.- De un click sobre el botón Aceptar (OK), hasta que vuelva a la ventana de “Cuentas de internet” y de un clic en cerrar.
                                                                                                          1. 17.- Por ultimo cierre si programa de correo reinicie su PC.
                                                                                                          2. Flujo de transacción de correo de SMTP
                                                                                                            1. Aunque los comandos y réplicas de correo están definidas rígidamente, el intercambio se puede seguir en Figura - Flujo de datos normal de SMTP. Todos los comandos, réplicas o datos intercambiados son líneas de texto, delimitadas por un CRLF. Todas las réplicas tienen un código numérico el comienzo de la línea.
                                                                                                              1. El emisor SMTP establece una conexión TCP con el SMTP de destino y espera a que el servidor envíe un mensaje "220 Service ready" o "421 Service not available" cuando el destinatario es temporalmente incapaz de responder.
                                                                                                                1. Se envía un HELO (abreviatura de "hello"), con el que el receptor se identificará devolviendo su nombre de dominio. El SMTP emisor puede usarlo para verificar si contactó con el SMTP de destino correcto.
                                                                                                                  1. Si el emisor SMTP soporta las extensiones de SMTP definidas en el RFC 1651, puede sustituir el comando HELO por EHLO. Un receptor SMTP que no soporte las extensiones responderá con un mensaje "500 Syntax error, command unrecognized". El emisor SMTP debería intentarlo de nuevo con HELO, o si no puede retransmitir el mensaje sin extensiones, enviar un mensaje QUIT.
                                                                                                                2. Establecimiento de la conexión
                                                                                                                  1. Un emisor SMTP intentará establecer una conexión TCP con un computador destino cuando tiene uno o más mensajes de correo para entregar a ese computador siguiendo los siguientes pasos:
                                                                                                                    1. 1º El emisor (parte activa) abre una conexión TCP con el receptor.
                                                                                                                      1. 2º Una vez establecida la conexión, el receptor se identifica a sí mismo con la orden "220 Service Ready" que indica que el servicio está preparado.
                                                                                                                        1. 3º Después el emisor es el que se identifica a sí mismo con la orden "HELO".
                                                                                                                          1. 4º Por último el receptor acepta la identificación del emisor con la orden "250 OK" que indica que la acción de correo solicitada es correcta.
                                                                                                                          2. Transferencia de correo
                                                                                                                            1. En estos momentos la conexión ya se ha establecido, el emisor SMTP puede enviar uno o más mensajes al receptor SMTP.
                                                                                                                            2. Protocolo para enviar mensajes:
                                                                                                                              1. 1º Una orden "MAIL" identifica al que originó el mensaje. Esta orden da el camino inverso que puede utilizarse para informar de errores. 2º Una o más órdenes RCPT identifican los destinos de este mensaje. La orden RCPT identifica un destino individual de los datos del correo. Usando esta orden se pueden usar destinos múltiples. 3º Una orden DATA transfiere el texto del mensaje.
                                                                                                                              2. Cierre de la conexión
                                                                                                                                1. El emisor SMTP cierra la conexión en dos pasos: 1º El emisor envía una orden "QUIT" y espera una respuesta. 2º Se inicia la operación de cierre TCP para la conexión TCP.
                                                                                                                            3. UDP
                                                                                                                              1. Caracteristicas
                                                                                                                                1. El protocolo UDP (Protocolo de datagrama de usuario) es un protocolo no orientado a conexión de la capa de transporte del modelo TCP/IP. Este protocolo es muy simple ya que no proporciona detección de errores (no es un protocolo orientado a conexión).
                                                                                                                                2. significado de los diferentes Campos del UDP
                                                                                                                                  1. Puerto de origen: es el número de puerto relacionado con la aplicación del remitente del segmento UDP. Este campo representa una dirección de respuesta para el destinatario.
                                                                                                                                    1. Puerto de destino: este campo contiene el puerto correspondiente a la aplicación del equipo receptor al que se envía.
                                                                                                                                      1. Longitud: este campo especifica la longitud total del segmento, con el encabezado incluido. Sin embargo, el encabezado tiene una longitud de 4 x 16 bits (que es 8 x 8 bits), por lo tanto la longitud del campo es necesariamente superior o igual a 8 bytes.
                                                                                                                                        1. Suma de comprobación: es una suma de comprobación realizada de manera tal que permita controlar la integridad del segmento.
                                                                                                                                      2. FTP
                                                                                                                                        1. Introducción a FTP
                                                                                                                                          1. El protocolo FTP es, como su nombre lo indica, un protocolo para transferir archivos.
                                                                                                                                            1. La implementación del FTP se remonta a 1971 cuando se desarrolló un sistema de transferencia de archivos (descrito en RFC 141) entre equipos del Instituto Tecnológico de Massachusetts (MIT, Massachusetts Institute of Technology).
                                                                                                                                            2. La función del protocolo FTP
                                                                                                                                              1. El protocolo FTP define la manera en que los datos deben ser transferidos a través de una red TCP/IP.
                                                                                                                                                1. El objetivo del protocolo FTP es permitir el intercambio de archivos entre equipos remotos, de una manera eficaz e independientemente del sistema de archivos utilizado en cada equipo.
                                                                                                                                                2. El modelo FTP
                                                                                                                                                  1. El protocolo FTP está incluido dentro del modelo cliente-servidor, es decir, un equipo envía órdenes (el cliente) y el otro espera solicitudes para llevar a cabo acciones (el servidor).
                                                                                                                                                    1. Por lo tanto, el cliente y el servidor cuentan con dos procesos que permiten la administración de estos dos tipos de información:
                                                                                                                                                      1. DTP (proceso de transferencia de datos) es el proceso encargado de establecer la conexión y de administrar el canal de datos. El DTP del lado del servidor se denomina SERVIDOR DE DTP y el DTP del lado del cliente se denomina USUARIO DE DTP.
                                                                                                                                                        1. PI (intérprete de protocolo) interpreta el protocolo y permite que el DTP pueda ser controlado mediante los comandos recibidos a través del canal de control. Esto es diferente en el cliente y el servidor. El SERVIDOR PI es responsable de escuchar los comandos que provienen de un USUARIO PI a través del canal de control en un puerto de datos, de establecer la conexión para el canal de control, de recibir los comandos FTP del USUARIO PI a través de este, de responderles y de ejecutar el SERVIDOR DE DTP. El USUARIO PI es responsable de establecer la conexión con el servidor FTP, de enviar los comandos FTP, de recibir respuestas del SERVIDOR PI y de controlar al USUARIO DE DTP, si fuera necesario.
                                                                                                                                                    2. Los comandos FTP
                                                                                                                                                      1. Toda comunicación que se realice en el canal de control sigue las recomendaciones del protocolo Telnet. Por lo tanto, los comandos FTP son cadenas de caracteres Telnet (en código NVT-ASCII) que finalizan con el código de final de línea Telnet (es decir, la secuencia <CR>+<LF>, Retorno de carro seguido del carácter Avance de línea indicado como <CRLF>). Si el comando FTP tiene un parámetro, este se separa del comando con un espacio (<SP>).
                                                                                                                                                        1. Existen tres tipos de comandos FTP diferentes: comandos de control de acceso, comandos de parámetros de transferencia y comandos de servicio FTP.
                                                                                                                                                          1. Comandos de control de acceso
                                                                                                                                                            1. USER
                                                                                                                                                              1. PASS
                                                                                                                                                                1. ACCT
                                                                                                                                                                  1. CWD
                                                                                                                                                                    1. CDUP
                                                                                                                                                                      1. SMNT
                                                                                                                                                                        1. REIN
                                                                                                                                                                          1. QUIT
                                                                                                                                                                          2. Comandos de parámetros de transferencia
                                                                                                                                                                            1. PORT
                                                                                                                                                                              1. PASV
                                                                                                                                                                                1. TYPE
                                                                                                                                                                                  1. STRU
                                                                                                                                                                                    1. MODE
                                                                                                                                                                                    2. Comandos de servicio FTP
                                                                                                                                                                                      1. RETR
                                                                                                                                                                                        1. STOR
                                                                                                                                                                                          1. STOU
                                                                                                                                                                                            1. APPE
                                                                                                                                                                                              1. ALLO
                                                                                                                                                                                                1. REST
                                                                                                                                                                                                  1. RNFR
                                                                                                                                                                                                    1. RNTO
                                                                                                                                                                                                      1. ABOR
                                                                                                                                                                                                        1. DELE
                                                                                                                                                                                                          1. RMD
                                                                                                                                                                                                            1. MKD
                                                                                                                                                                                                              1. PWD
                                                                                                                                                                                                                1. LIST
                                                                                                                                                                                                                  1. NLST
                                                                                                                                                                                                                    1. SITE
                                                                                                                                                                                                                      1. SYST
                                                                                                                                                                                                                        1. STAT
                                                                                                                                                                                                                          1. HELP
                                                                                                                                                                                                                            1. NOOP
                                                                                                                                                                                                                      2. Las respuestas FTP
                                                                                                                                                                                                                        1. Las respuestas FTP garantizan la sincronización entre el cliente y el servidor FTP. Por lo tanto, por cada comando enviado por el cliente, el servidor eventualmente llevará a cabo una acción y sistemáticamente enviará una respuesta.
                                                                                                                                                                                                                      3. DHCP
                                                                                                                                                                                                                        1. Qué es DHCP
                                                                                                                                                                                                                          1. DHCP (Dynamic Host Configuration Protocol, protocolo de configuración de host dinámico) es un protocolo que permite que un equipo conectado a una red pueda obtener su configuración (principalmente, su configuración de red) en forma dinámica (es decir, sin una intervención especial).
                                                                                                                                                                                                                            1. El protocolo DHCP sirve principalmente para distribuir direcciones IP en una red, pero desde sus inicios se diseñó como un complemento del protocolo BOOTP (Protocolo Bootstrap), que se utiliza, por ejemplo, cuando se instala un equipo a través de una red (BOOTP se usa junto con un servidor TFTP donde el cliente encontrará los archivos que se cargarán y copiarán en el disco duro).
                                                                                                                                                                                                                            2. Cómo funciona el protocolo DHCP
                                                                                                                                                                                                                              1. Primero, se necesita un servidor DHCP que distribuya las direcciones IP. Este equipo será la base para todas las solicitudes DHCP por lo cual debe tener una dirección IP fija. Por lo tanto, en una red puede tener solo un equipo con una dirección IP fija: el servidor DHCP.
                                                                                                                                                                                                                                1. El sistema básico de comunicación es BOOTP (con la trama UDP). Cuando un equipo se inicia no tiene información sobre su configuración de red y no hay nada especial que el usuario deba hacer para obtener una dirección IP.
                                                                                                                                                                                                                                  1. Para esto, la técnica que se usa es la transmisión: para encontrar y comunicarse con un servidor DHCP, el equipo simplemente enviará un paquete especial de transmisión (transmisión en 255.255.255.255 con información adicional como el tipo de solicitud, los puertos de conexión, etc.) a través de la red local.
                                                                                                                                                                                                                                    1. Los Diferentes tipos de paquetes que se utilizan Cliente-Servidor DHPC son
                                                                                                                                                                                                                                      1. DHCPDISCOVER (para ubicar servidores DHCP disponibles)
                                                                                                                                                                                                                                        1. DHCPOFFER (respuesta del servidor a un paquete DHCPDISCOVER, que contiene los parámetros iniciales)
                                                                                                                                                                                                                                          1. DHCPREQUEST (solicitudes varias del cliente, por ejemplo, para extender su concesión)
                                                                                                                                                                                                                                            1. DHCPACK (respuesta del servidor que contiene los parámetros y la dirección IP del cliente)
                                                                                                                                                                                                                                              1. DHCPNAK (respuesta del servidor para indicarle al cliente que su concesión ha vencido o si el cliente anuncia una configuración de red errónea)
                                                                                                                                                                                                                                                1. DHCPDECLINE (el cliente le anuncia al servidor que la dirección ya está en uso)
                                                                                                                                                                                                                                                  1. DHCPRELEASE (el cliente libera su dirección IP)
                                                                                                                                                                                                                                                    1. DHCPINFORM (el cliente solicita parámetros locales, ya tiene su dirección IP)
                                                                                                                                                                                                                                                  2. Qué es una 'concesión' en DHCP
                                                                                                                                                                                                                                                    1. Para optimizar los recursos de red, las direcciones IP se asignan con una fecha de inicio y de vencimiento para su validez. Esto es lo que se conoce como "concesión". Un cliente que detecta que su concesión está a punto de vencer, puede solicitarle al servidor una extensión de la misma por medio de un DHCPREQUEST.
                                                                                                                                                                                                                                                    2. Cómo conseguir un servidor DHCP
                                                                                                                                                                                                                                                      1. Internet Software Consortium desarrolla servidores DHCP en el mundo del software libre. Estos son los servidores DHCP más utilizados y los que mejor cumplen con el estándar RFC. Puesto que no es sencillo desarrollar un servidor DHCP, los servidores que ofrecen son actualizados regularmente.
                                                                                                                                                                                                                                                        1. La última versión a la fecha es la 3.0, pero aún está en versión beta. Una de las principales innovaciones en esta versión es la posibilidad de actualizar en forma dinámica un DNS de acuerdo a las direcciones IP suministradas por el servidor DHCP. Para mayor información, el primer proyecto sobre DNS dinámicos tiene fecha de marzo de 1996.
                                                                                                                                                                                                                                                      Show full summary Hide full summary

                                                                                                                                                                                                                                                      Similar

                                                                                                                                                                                                                                                      Principales amenazas de Seguridad en los Sistemas Operativos
                                                                                                                                                                                                                                                      Jonathan Velasco
                                                                                                                                                                                                                                                      PROTOCOLOS Y COMUNICACIONES DE RED
                                                                                                                                                                                                                                                      Abraham Fuentes Jiménez
                                                                                                                                                                                                                                                      CAPA DE APLICACIÓN
                                                                                                                                                                                                                                                      Abraham Fuentes Jiménez
                                                                                                                                                                                                                                                      Test BIV T5.1 Medios de Transmisión. Tema 40
                                                                                                                                                                                                                                                      D. Israel Ligua Blacio
                                                                                                                                                                                                                                                      Mapa Mental sobre IPV6
                                                                                                                                                                                                                                                      Javier Quishpe
                                                                                                                                                                                                                                                      RA 2.1 Y RA 2.3
                                                                                                                                                                                                                                                      verde502011
                                                                                                                                                                                                                                                      PROTOCOLOS ELEMENTALES DE ENLACE DE DATOS
                                                                                                                                                                                                                                                      wildercastro4787
                                                                                                                                                                                                                                                      MODELO OSI
                                                                                                                                                                                                                                                      Ivan RodPar
                                                                                                                                                                                                                                                      PROTOCOLOS DE RED
                                                                                                                                                                                                                                                      David Fuentes Fernández
                                                                                                                                                                                                                                                      PROTOCOLOS DE RED
                                                                                                                                                                                                                                                      karla v. silva.r
                                                                                                                                                                                                                                                      PROTOCOLO Y SU RELACIÓN CON TCP/IP Y OSI.
                                                                                                                                                                                                                                                      OMAR GARCIA