Zusammenfassung der Ressource
Alguna vez te has preguntado
- ¿Cómo funciona cuando envío un email
desde una Laptop para un teléfono?
- Tienes tu Laptop
- Escribes un
email
- Asumamos que
lo escribes en
Gmail
- Lo envías
presionando el
botón ENTER
- El teclado a
través de una
señal de teclado
- Manda una
señal
eléctrica a la
tarjeta
madre de tu
Laptop
- Esa señal eléctrica
es intervenida por
el procesador
- Que la manda a una
capa más arriba de
la electricidad
- Que es donde
corre el Sistema
Operativo (O.S)
- Una vez capturada
esta señal se le tiene
que enviar a alguien
para que haga algo
- El O.S entiende algo que
se llama Estado, en el
instante en el que yo
estoy, donde estoy y
donde tengo el foco
- Estábamos en
el Navegador
- Por lo que el O.S sube
una capa más, y en la
capa del software en la
que corre el O.S
- Le envía al
navegador la
señal : ALGUIEN
OPRIMIÓ ENTER
- Asumiendo
que el
Navegador el
Google Chrome
- El cual entiende
otra capa de
software aun
más arriba
- El software
sobre el que
corre internet
- La cara que los usuarios ven de
internet, utiliza una tecnología llamada
Front-End (HTML, CSS y JavaScript)
- Recibimos a través
de JavaScript (JS)
mediante un
EVENTO
- Internamente JS
esta utilizando
el API
- AJAX
- Que encapsula los
datos del email en un
formato de Archivo
llamado JASON
- Los envía a un API del
lado del servidor
llamado REST
- Estos datos se
transmiten mediante
HTTP
- De aquí vamos a la
capa de internet
- En esta capa
existen
direcciones
- Ejemplo :
http://www.gmail.com/enviar_email
- Una Vez
encontrada la IP
- Se hace una Petición
al Servidor
- Pero para llegar a Java tenemos
que pasar por varias capas
- La primera es el Linux, que es
el O.S que corre un servidor
- El Driver reinterpreta la
electricidad en una capa de red
esto es conocido como Ethernet
- Ethernet envía esta señal a Linux
- Linux la convierte
en datos
- Esos datos están encapsulados en un super
protocolo llamado TCP/IP a través del cual se
transmite todo lo de internet
- Luego TCP/IP crea los datos hacia HTTP que es la
forma en que los navegadores se conectan
- HTTP es recibido por un servidor
de HTTP dentro de LInux
- Asumiendo que uno de ellos corren
internamente es este servidor
- Este servidor agarra las señales que le llegan a
través de un navegador como JASON, HTTP, etc.
- Y el código de
programación las
procesa
- Aquí el lenguaje sabe que se le envió la
orden de enviar un email, porque el
lenguaje también recibe la URL completa
- Con esos datos
sabe como enviarlo
- Guarda estos
datos en una
base de datos
- Lo siguiente que se hace es
enviar el email, pero los email
tienen sus propios servidores
y sus propios protocolos
- Para enviar el email a internet
en general, se tiene que utilizar
un servidor de correo, el cual
viene en la petición
- Digamos que el
correo se lo enviamos
a cursos@platzi.com
- Asumiendo que Platzi tiene
sus propios servidores
- Estos protocolos más los nuevos protocolos que existen se conectan a
un servidor final que no necesariamente es el mismo servidor de HTTP
o es el mismo servidor de otros protocolos, ya que se pueden tener
múltiples servidores diferentes
- Este servidor funciona igual que el DNS
- Los servidor de email también tienen
nombres, uno de los más populares es
POstfix
- Postfix toma el email y entiende a
quien le mandaron el email y lo
redirecciona a la base de datos
conocida cono Bandeja de Entrada
- Luego los servidores de correo crean una
notificación de email que es mandado al
teléfono mediante un servidor de notificaciones
- Este servidor tiene una base de datos de todos los
teléfonos, mediante un ID único y una IP que le muestra
donde se encuentra el teléfono en todo momento
- Le manda mediante el protocolo UDP
la notificación al usuario del teléfono
- Los emails funcionan similar a enviar una petición
a la web, tienen un dominio y a través de ese
dominio se sabe cual es la IP a la cual se va a
conectar para enviar el correo. Y tienen un nombre
al cual se le va a enviar el email
- Como la mayoría de las personas corre sus correos en Gmail, este se salta todos estos
protocolos. Ya que se mantiene en la base de datos, hace un cambio y luego manda las
notificaciones sin pasar por los protocolos. Sin embargo cuando se tiene que conectar con
otros servidores igualemente deberia pasar por estos protocolos
- En el mundo moderno los emails
no funcionan tan fácil es mucho
más complejo
- El protocolo que
utilizan los correos
se llama SMTP/POP
- POP3 (Post Office Protocol) Es un
protocolo de recepción de correos
- SMTP (Search Results Web results Simple Mail
Transfer Protocol) Es un protocolo de envio
- Se guarda en una base de Datos para poder en un futuro acceder a
estos correos de manera estructurada
- Este código esta hecho en lenguajes
que corren del lado del servidor
como Java, PHP, Python, GO, etc.
- Los servidores a nivel de software son
aplicaciones que corren en el O.S, en este
ejemplo es Linux
- Uno es MGINX y
el otro Apache
- Tiene Drivers que le permiten conectarse a
la electricidad del cable de red
- El cable de red, a través de una serie de
routers switch que son los que transmiten
esta información de la IP
- La IP son los que le dicen al servidor : Mira
esta electricidad y ve que haces con ella
- El servidor puede ser una serie de
servidores o un computador gigantesco. Aquí
se ejecuta el código real con el que esta
escrito Gmail, este código esta famosamente
escrito en el lenguaje de JAVA
- Las URL están compuestas
de múltiples partes
- La primera es el protocolo a través
del cual se transmite la información
- Hay muchos
tipos de
Protocolos
- El primero es HTTP
que es donde
funciona la web
- Si envías archivos
grandes probablemente
uses en algún punto uno
llamado FTP
- Cuando quieres controlar
de manera remota un
servidor a través de una
consola de texto, usas SSH
- Cuando descargas distribuciones
de LINUX u otros archivos de
manera masiva Peer to Peer ,
utilizas BitTorrent
- Es utilizado por Blizzard para
actualizar sus juegos
- También es utilizado para transmitir la
información de juegos multi-player
- SSH (Secure
SHell)
- FTP (File Transfer Protocol) Protocolo
de transferencia de archivos
- Un poco obsoleto
pero todavía existe
- La segunda es el dominio, éste es el
nombre con el que nosotros
encontramos en internet al servidor .
En este caso seria www.gmail.com
- Por último después del slash
va la instrucción dentro del
servidor. En este caso seria
enviar_email
- Sin embargo internet no funciona así,
internet funciona con direcciones IP
- Los nombres luego se convierten
en IPs, en direcciones exactas que
es donde estan los servidores
- A el se llega a
través del DNS
- DNS (Domain Name System o Servidor de
Nombres de Dominio) Es una serie de servidores
globales en el cual todos lo países colaboran.
- Es una base de datos gigantesca que internamente
para cada IP tiene asociado un nombre
- HTTP (Hypertext Transfer
Protocol) Protocolo de
Transferencia de Hipertexto
- Es como
funciona
internet
- Es eso que esta al
principio de todos los
sitios web
- Es donde se mueve HTML,
CSS, JS, AJAX, JASON,
RECT, entre muchos
otros.
- A veces te lo encuentras una
(s) enfrente = (https). Esta
significa que el protocolo va
cifrado, va encriptado.
- Significa que del lado del
servidor se envió una llave,
la cual encripto la conexión
para que solo tú y el
servidor la vean sin que
nadie más la intervenga
- Existe un ataque muy
común en el que las
personas intervienen las
conexiones de internet
mientras están viajando,
porque una conexión de
internet no viaja en línea
recta. Es por esto que
existe este cifrado para
evitar eso
- JASON (JavaScript
Object Notation)
- JS encapsula los
todos los datos
para enviárselo a
internet
- Evento ENTER (el botón
ENTER es presionado)
Evento CLICK (se presiona
el click) Evento TOUCH
(Cuando se toca)
- HTML es el representante
del botón ENTER