Capitulo 2 - Aplicacion Flashcards

1
Q

Arquitectura Cliente-Servidor

A

En este tipo de arquitecturas hay un host denominado servidor, siempre disponible, que atiende peticiones de muchos otros host denominados clientes. Ejemplo: Aplicacion Web, FTP, email.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Arquitectura Peer-to-Peer y cual es la gran ventaja?

A

La necesidad de un servidor no existe o es mínima. Este tipo de arquitecturas explotan la comunicación directa entre pares de hosts denominados peers. Una de las grandes ventajas es que es auto escalable. El que empieza la comunicación se llama cliente y el otro servidor. Pueden ser a la vez cliente y servidor. Ejemplo: File distribution, Skype.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Socket

A

Es la interfaz (librería del sistema operativo) entre la capa de aplicación y la capa de transporte de un host.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Servicios que puede brindar la Capa de Transporte

A
  • Transferencia confiable
  • Throughput
  • Tiempo
  • Seguridad
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Servicios de TCP

A
  • Orientado a conexión: handshaking antes de comenzar la conexión full-duplex.
  • Transferencia confiable de datos: sin errores y en orden.
  • Control de congestión.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Servicios de UDP

A

Transferencia de datos no confiable: no garantiza que llegue y si llega no garantiza orden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

SSL

A

Security Socket Layer. Es una mejora para TCP, implementada a nivel de capa de aplicación (API), que provee encriptación de datos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

HTTP (TCP, 80)

A

HTTP es el protocolo de capa de aplicación para la Web. Esta implementado en dos programas, cliente y servidor, que se comunican entre sí intercambiando mensajes http.

Utiliza TCP como protocolo de transporte y no mantiene estado (stateless).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

HTTP con conexiones NO persistentes (que es y nombrar 2 desventajas)

A

Cada par request/response se envía en una conexión TCP diferente. (Se pueden hacer en paralelo).

Desventajas: tiempo de handshaking y sobrecarga del servidor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

RTT

A

Round Trip Time: es el tiempo que le lleva a un paquete ir desde el cliente al servidor y de vuelta al cliente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

HTTP con conexiones persistentes

A

La conexión TCP se mantiene abierta luego de enviar la respuesta. Se cierra cuando no es utilizada por un cierto tiempo (timeout). HTTP usa por defecto conexiones persistentes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

HTTP Request Message

A

Ejemplo:

GET /somedir/page.html HTTP/1.1

Host: www.someschool.edu

Connection: close

User-agent: Mozilla/5.0

Accept-language: fr

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

HTTP Response Message

A

Ejemplo:

HTTP/1.1 200 OK

Connection: close

Date: Tue, 09 Aug 2011 15:44:04 GMT

Server: Apache/2.2.3 (CentOS)

Last-Modified: Tue, 09 Aug 2011 15:11:03 GMT

Content-Length: 6821

Content-Type: text/html

(data data data data data …)

El contenido del mensaje de http es en binario, a diferencia de SMTP que es en ascii.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

HTTP 1.0 vs HTTP 1.1

A

Las mas importantes:

HTTP 1.1 admite conexiones persistentes, HTTP 1.0 no.

HTTP 1.1 tiene un header requerido “host”, HTTP 1.0 no

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Cookies

A

Utilizada por los sitios para guardar información de los usuarios. Permite restringir el acceso o brindar contenido específico al usuario.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Proxy Server y 2 ventajas

A

Es una entidad que satisface pedidos en nombre de otro Web server. Mantiene copias de los objetos pedidos recientemente en un disco.

Ventajas: reduce sustancialmente el tiempo de respuesta y reduce el tráfico hacia afuera (internet).

17
Q

Conditional GET

A

Es un mecanismo que permite verificar que los objetos almacenados estan actualizados. Es un HTTP request que utiliza el método GET con el header If-Modified-Since.

Request:

GET /fruit/kiwi.gif HTTP/1.1

Host: www.exotiquecuisine.com

If-modified-since: Wed, 7 Sep 2011 09:23:24

Response:

HTTP/1.1 304 Not Modified

Date: Sat, 15 Oct 2011 15:39:29

Server: Apache/1.3.0 (Unix)

(empty entity body)

18
Q

FTP (TCP 20,21)

A

Es un protocolo que permite transferir archivos desde un sistema de archivos local a un sistema de archivos remoto y viceversa.

Utiliza dos conexiones TCP paralelas, una para transferir datos (por archivo) y otra para enviar mensajes de control (user, pwd, comandos). Out-Of-Band.

Mantiene estado: datos de usuario y directorio actual.

19
Q

Comandos FTP

A
20
Q

User Agent (email)

A

Permite leer, responder y forwardear mensajes que luego serán enviados al mail server.

21
Q

SMTP (TCP, 25)

A

Es el principal protocolo de capa de aplicación para el correo electrónico. SMTP transfiere mensajes desde el servidor de correo de origen al servidor de correo del receptor. Utiliza conexiones persistentes.

22
Q

Email protocols

A
23
Q

POP3 (TCP, 110)

A
24
Q

IMAP (TCP, 143)

A

Permite crear carpetas remotas, POP3 no. Permite también, obtener solo parte de los mensajes, por ejemplo los headers, útil cuando hay poco ancho de banda.

25
Q

DNS (UDP, 53)

(hacer diagrama de los dos tipos de query)

A

Domain Name System. Es una base de datos distribuida, implementada en una jerarquía de servidores DNS y un protocolo de capa de aplicación que permite a los hosts consultar la base de datos.

Servicios adicionales:

Host Aliasing: permite nombre canónico y varios alias.

Mail Server Aliasing

Load Distribution: Permite balancear la carga entre servidores replicados. Devuelve una lista de servidores, rotando el orden cada vez.

Ejemplos: Query iterativa y recursiva

26
Q

Root DNS Server

A

Hay en el mundo 13 servidores raíz, etiquetados de la A a la M (La mayoría en norteamérica). Es un cluster de servidores replicados, por seguridad y confiabilidad.

27
Q

TLD DNS Server

A

Son responsables de dominios como .com, .org, .edu, .net, .org y todos los dominios de paises como .uk, .fra, etc.

28
Q

Authoritative DNS Server

A

Cada organización con servidores de acceso público debe proveer registros DNS accesibles al público.

29
Q

DNS Local

A

No pertenece a la jerarquía. Actua como proxy.

30
Q

DNS Caching

A

Cada vez que un servidor DNS recibe una respuesta, puede cachear la información en su memoria local. Después de un tiempo se descarta (por lo general dos dias).

31
Q

DNS Records

A
32
Q

Formato Mensajes DNS

A

En la parte de flags, se puede especificar si se desea una consulta recursiva, si es una consulta o una respuesta, etc.

33
Q

BitTorrent

A

Chunks de tamaño fijo (256KBytes).

Cuando un peer se une a un torrent se registra en el tracker y le informa periódicamente que todavía está en el torrent.

El tracker selecciona un subconjunto de 50 participantes (vecinos) y se los envía al peer.

El peer establece conexiones TCP concurrentes con cada uno de los vecinos.

El peer le pide la lista de chunks a sus vecinos y descarga los que no tiene.

Selecciona el chunk a pedir con la técnica rarest first.

Para decidir a quién enviarle chunks el peer se fija que vecinos estan enviandole chunks al mayor rate y le envia a esos.

Cada 30 segundos elige un peer random para enviarle también (optimistically unchoked).

34
Q

DHT

A

Distributed Hash Tables. Es una tecnica de indexing and searching.

Cada peer tiene un id en 0,2^(n-1).

Cada key se corresponde con un entero en el mismo rango (mapeando en un hash).

El peer que tiene el id más cercano (sucesor inmediato) a la key en (key, value) es el encargado de guardar el par (key, value).

35
Q

DHT Circular

Definicion, Que pasa cuando un peer se va?, Que pasa cuando un peer quiere entrar?

A

Cada peer conoce a su sucesor inmediato (módulo 2^n).

Que pasa cuando un peer se va?

Cada peer guarda su sucesor y el siguiente a su sucesor. Y pregunta cada cierto tiempo si siguen vivos. Si no, se actualizan los dos números. En el ejemplo, si 5 se va, el sucesor de 4 pasa a ser 8 y el siguiente sucesor es el sucesor de 8, o sea 10.

Que pasa cuando un peer quiere entrar?

Si el 13 quiere entrar y conoce solo a 1, le envía un mensaje preguntando cuál sería el sucesor y el siguiente al sucesor de 13. Este mensaje se forwardea hasta que llega al predecesor (12), que sabe que el sucesor de 13 es 15. Le envia la informacion a 13 y 12 cambia su sucesor a 13.

36
Q

Sockets con TCP

A
37
Q

Sockets con UDP

A