clase3 http2/3 y DNS Flashcards
¿Qué es un DNS?
El DNS o Sistema de nombres de Dominio, es un sistema jerárquico que se encarga de traducir nombre de dominio en direcciones IP numéricas que las computadoras utilizan para identificar y comunicarse, mediante dominios, sub-dominios y nombres finales, con un conjunto de servidores a lo largo del mundo. cada servidor tiene la responsabilidad de mantener una parte dentro de la jerarquía de nombres
¿Qué es un nombre de dominio FQDN?
Es una lista de etiquetas (labels) separadas por puntos
www.salchipapas.com (FQDN)
www,mewing.com (no FQDN)
¿Qué son los TLDs?que tipos hay?
Son los dominios mas importantes, se clasifican en 3 grupos
Generic TLDs: propósito particular
Country-Code TLDs: contiene dominios delegados a los paises
ARPA TLD: es un dominio especial para la resolución inversa (de IP a dominio)
DNS maneja modelo cliente/servidor, Request/Response
V o F
V
En DNS no hay dialogo entre servidores, siempre es entre un cliente y un servidor
V o F
F
DNS utiliza UDP y TCP
V o F
V
En DNS el cliente escoge cualquier puerto no privilegiado
V o F
V
DNS trabaja sobre texto ASCII
V o F
F
¿Cuáles son los tipos de servidores?
-Servidores Raíz
-Servidor Autoritativo
-Servidor Local / Resolver Recursivo
-Open Name Servers
-Forwarder Name Server
-Servidor Primario y secundario
¿Cómo se organiza la información en un servidor DNS?
El servidor de DNS almacena la información en registros (RR) formando base de datos, no necesariamente es una base de datos relacional
Los RR son registros que guardan información especifica de un dominio, la base de datos esta compuesta por varios tipos de RR
¿Cuáles son las ventajas de una base de datos distribuida?
-Mantener gran cantidad de información
-Control de la información distribuido
-Tolerante a fallos y escalable
-Modelo de acceso(muchas lecturas, pocas escrituras, consistencia relajada)
¿Cuántos ROOT Servers hay?
13
¿Qué es un servidor raíz?
Es un servidor que delega a todos TLD. No debería permitir recursivas.
En otras palabras es un servidor que permite averiguar a que servidor DNS se debe consultar, no tiene la información completa del dominio, pero sabe donde encontrarla. Ej:
example.com el servidor raíz te dirá que busques en el servidor DNS “.com”
Solo hay 13 en el mundo
¿Qué es un servidor autoritativo?
Es un servidor con una zona o subdominio de nombres a cargo. Podría sub-delegar
En otras palabras es un servidor que tiene la responsabilidad y autoridad final sobre como se resuelven los nombres de dominio dentro de ese dominio especifico. También puede haber otros servidores DNS de ese dominio que tengan un subdominio, el servidor DNS principal puede cederle el control de este subdominio
¿Qué es un servidor local/recursivo?
Es un servidor que es consultado dentro de una red. Mantiene la cache. Puede ser Servidor Autoritativo. Permite recursivas “internas”. También llamado Caching Name Server
En otras palabras, resuelve consultas DNS, mantiene la cache local para mejorar rendimiento y actúa como servidor autoritativo para dominios locales específicos
¿Qué es un Open Name Server?
Son servidores DNS que funcionan locales para cualquier cliente
En otras palabras sirve para traducir nombres de dominio en IPs y que esta configurado para aceptar consultas de cualquier persona
¿Qué es un Forwarder Name Server?
Es un servidor que interactúa directamente con el sistema de DNS exterior. Son DNS proxies de otros DNS internos
En otras palabras, sirven como un servidor DNS intermediario que establece conexión con otros servidores DNS externos y esta configurado de tal forma que mejora el rendimiento y la seguridad
¿Para que son los servidores Primarios y Secundarios?
Son solo una cuestión de implementación, sobre donde se modifican los datos.
En otras palabras, el servidor primario gestiona, asegura y respalda la resolución de nombres de dominio y el secundario sirve como una copia de respaldo actualizada
¿Cuáles son los tipos de registros o RR que guarda un servidor DNS?
-Registros A y AAAA
-Registros PTR
-Registros CNAME
-Registros HINFO
-Registros TXT
-Registros MX
-Registros NS
-Registros SOA
¿Para que es el registros A y AAAA en un servidor DNS?
Asocian un nombre de dominio con una dirección IP
A-> IPv4
AAAA->IPv6
nombre → IP, IPv6.
¿Para que es el registros PTR en un servidor DNS?
Asocia una dirección IP a un nombre de dominio
IP → nombre.
¿Para que es el registros CNAME en un servidor DNS?
Asocia un nombre de dominio con otro nombre de dominio
nombre → nombre
¿Para que es el registros TXT en un servidor DNS?
Almacena información de texto arbitraria asociada con un nombre de dominio. A menudo utilizado para verificar la propiedad del dominio o para otros propósitos de configuración
¿Para que es el registros MX en un servidor DNS?
Especifica los servidores de correo que son responsables de recibir correo electrónico para un dominio especifico
nombre-dom → mail exchanger(s)
¿Para que es el registro HINFO en un servidor DNS?
Proporciona información sobre el hardware y el sistema operativo asociado con un nombre de dominio
nombre → info
¿Para que es el registro NS en un servidor DNS?
Indica los servidores DNS autoritativos para un dominio. Estos servidores son responsables de almacenar la información de la zona de dominio para el dominio dado
nombre-dom → dns server(s).
¿Para que es el registro SOA en un servidor DNS?
Contiene parámetros de configuración y autoridad para la zona de dominio. Define el servidor primario para la zona y los otros parámetros de configuración importantes
params. de dominio
¿Qué es el SISTEMA DNS?
Es una base de datos distribuida de forma jerárquica, la cual esta conformada por muchos servidores
-Modelo cliente servidor
-Protocolo corre sobre UDP y TCP puerto 53
¿Qué es HTTP2? Características
HTTP2 es una versión mejorada y mas eficiente del protocolo HTTP, redefine como los datos son transportados entre el cliente y el servidor, basado en SPDY(multiplexación de múltiples flujos de datos en una sola conexión TCP), con cabeceras comprimidas (reduce la sobrecarga del ancho de banda), y permite la selección de la prioridad de los recursos, puede negociar el protocolo de aplicacion(ALPN)
¿Cuáles son los problemas de HTTP1.0 y 1.1?
-Una conexión por cada request(HTTP1.0)
Alternativas para evitar HOL(Head Of Line) -> pipeliening, conexiones paralelas y persistentes peero
(HTTP1.1)
-En el pipelining si un request se retrasa, todos los responses posteriores se retrasan
-Los POST no pueden ser enviados por pipeliening
-Las conexiones paralelas pueden llevar a problemas de congestion y uso ineficiente de la red
-Cada request incluyen headers que se repiten, lo que incrementa la cantidad de datos repetidos transmitidos
pipeliening->enviar multiples request sin esperar a que cada uno de ellos reciba una respuesta antes de enviar el sig.
conexión persistente-> no cerrar las conexiones despues de un request
Diferencias entre HTTP1.1 y HTTP2
(formato, multiplexion, orden de respuestas, compresion de encabezados, control de flujo/flow, prioridad de solicitudes, conexiones persistentes, server push,
Formato:
-Texto(ASCII)
+Binario
Multiplexación:
-No permite(secuencial y bloqueante)
+Permite multiplexa varios request en una sola conexión
Orden de respuestas:
-En orden, puede provocar HOL blocking
+Respuestas pueden llegar en cualquier orden
Compresión de encabezados:
-No tiene
+Si tiene (HPACK)
Control de flujo:
-Limitado
+Control de flujo mas eficiente a nivel de frames
Prioridad de solicitudes:
-No soporta
+Permite asignar prioridades
Conexiones persistentes:
-Soportadas, no es lo común, mas limitaciones
+Siempre utiliza conexiones persistentes
Server push:
-No permite
+Si permite
Seguridad:
-Puede utilizar TLS, no obligatorio
+La mayoría de implementaciones utiliza TLS/SSL
Overhead de headers:
-Duplicación de cada request
+Reduce la duplicación con compresión de encabezados
( “-“ HTTP1.1 , “+” HTTP2)
¿Qué son los streams y los frames en HTTP/2, y cómo mejoran la eficiencia en la transmisión de datos en comparación con HTTP/1.1
Un stream es una subconexion dentro de una conexión HTTP2, cada stream tiene un ID, son bidireccionales (reciben y envían datos simultáneamente)
Los frames son una fragmentación de un mensaje, son la unidad mínima de transmisión de HTTP2(un mensaje es una request o response)son un header fijo+ payload variable
La multiplexion permite múltiples streams sean manejados de manera concurrente en un sola conexión TCP lo que reduce latencia y mejora la utilización de la red. Además los frames mejoran la gestión, envio de datos
¿Cuáles son los tipos de frames?
-Headers(contiene los encabezados de un mensaje)
-Data(transporta la carga útil del mensaje)
-Push_Promise(permite que el servidor “empuje” contenido al cliente)
-Window_update(gestiona el control de flujo)
-Settings(permite a los pares establecer opciones de configuración)
¿Cómo son los headers de HTTP2?
-Se mantienen casi todos los headers de HTTP1.1
-No se codifican mas en ASCII
-Surgen nuevos pseudo-headers que contiene información que estaba en el método y otros headers
¿Cuáles son las características del flow control y la priorización de streams en HTTP/2?
Los streams dentro de una conexión tienen flow control, cada stream tiene una prioridad y los streams están asociados de forma jerárquica
¿Cuál es la diferencia entre la carga inline y el uso de server push en HTTP/2 cuando un cliente solicita una página web?
Inline:
Cuando un cliente solicita una pagina, primero recibe el HTML principal, debe parsearlo y solicitarle al servidor los recursos restantes
Push:
Cuando el cliente solicita una pagina, recibe el HTML principal y el servidor tambien le envia recursos que posiblemente necesite, puede ser que le envie cosas que no necesite
¿Qué es HTTP3?
Es un HTTP que se transporta sobre un nuevo protocolo (QUIC), conserva los metodos y semanticas que HTTP1.1(por ende igual que HTTP2)
Fue definido por los RFC9000 y RFC9114
¿Qué ventajas y desventajas tiene HTTP3 basado en QUIC?
Ventajas:
-Reduce la latencia(por usar QUIC)
-Independencia de TCP(no depende de TCP, es decir, la perdida de un paquete no retrasa la entrega de otros)
-Recuperación de perdidas y control de congestión(por QUIC y como funciona su sistema de recuperación de perdidas y control)
Desventajas:
-Muchos middle-boxes filtran UDP, salvo port 53 y NAT ; UDP facilita algunos ataques de seguridad