Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigación correjida #10

Merged
merged 5 commits into from
Feb 8, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions class-material/U1/IoT y sistemas embebidos/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
**Rodriguez Gallardo Alan Paul -- PaulScholl**


# Comunicación con la Nube, MQTT, REST y Edge Computing

La comunicación con la nube, MQTT, REST y Edge Computing son conceptos clave en el ámbito de la tecnología moderna, especialmente en el contexto de Internet de las Cosas (IoT) y la computación distribuida. A continuación, se explica cada uno de estos elementos:

## 1. Comunicación con la Nube
La **nube** es un modelo de computación en el que los recursos como servidores, almacenamiento y aplicaciones se gestionan a través de Internet. Para comunicarse con la nube, se utilizan diferentes protocolos y tecnologías que permiten enviar y recibir datos de manera eficiente.

- **Servicios en la Nube**: Empresas como AWS, Azure y Google Cloud ofrecen plataformas en la nube donde se pueden almacenar, procesar y analizar datos.
- **Conexión**: Dispositivos y aplicaciones se comunican con la nube a través de protocolos como HTTP, MQTT, WebSockets, etc.

## 2. MQTT (Message Queuing Telemetry Transport)
MQTT es un protocolo de mensajería ligero diseñado para ser eficiente en redes con poco ancho de banda y en dispositivos con recursos limitados, como los sensores en IoT. Este protocolo sigue el modelo **publicar/suscribir**, lo que significa que los dispositivos pueden publicar datos en un "tema" y otros dispositivos pueden suscribirse para recibir esos datos.

### Características clave de MQTT:
- Ligero y eficiente en el uso de ancho de banda.
- Funciona bien en redes inestables.
- Protocolo basado en cliente-servidor con un broker que gestiona la comunicación.
- Ideal para entornos de IoT y dispositivos conectados.

![Alt text](https://www.twilio.com/content/dam/twilio-com/global/en/blog/legacy/2023/what-is-mqtt/MQTT_Diagram_gOmDdU4.png "a title")

## 3. REST (Representational State Transfer)
REST es un estilo arquitectónico para diseñar servicios web que se basa en el uso de los métodos HTTP estándar (GET, POST, PUT, DELETE, etc.). A diferencia de MQTT, que es más adecuado para comunicación en tiempo real o basada en eventos, REST es un enfoque de "petición-respuesta", lo que significa que los dispositivos o aplicaciones envían solicitudes a un servidor y esperan una respuesta.

### Características clave de REST:
- Usa los métodos HTTP comunes.
- Basado en recursos: cada recurso (por ejemplo, un dispositivo o una acción) tiene una URL única.
- No requiere un estado de conexión persistente, lo que lo hace simple y escalable.
- Es ampliamente utilizado en la web y en aplicaciones móviles.

![Alt text](https://miro.medium.com/v2/resize:fit:1400/0*1SvIpH4AJ0GRZoJq "a title")


## 4. Edge Computing (Computación en el Borde)
El **Edge Computing** se refiere al procesamiento de datos cerca del lugar donde se generan, en lugar de enviarlos a la nube para su procesamiento. Este enfoque permite reducir la latencia, optimizar el uso del ancho de banda y mejorar la seguridad al procesar los datos localmente en lugar de transmitirlos a servidores remotos.

### Ventajas del Edge Computing:
- **Baja latencia**: Los datos se procesan cerca de la fuente, lo que permite respuestas más rápidas.
- **Menos carga para la red**: No es necesario enviar grandes cantidades de datos a la nube, lo que reduce la congestión y el coste de la red.
- **Mayor privacidad y seguridad**: Al procesar los datos localmente, se minimiza el riesgo de exposición.

## Relación entre ellos:
- **MQTT y REST**: Son dos formas de comunicación con la nube, pero con enfoques diferentes. MQTT es adecuado para comunicaciones en tiempo real y situaciones donde la eficiencia de ancho de banda es clave, mientras que REST es más útil para solicitudes y respuestas estructuradas, como consultar o actualizar un recurso.

- **Edge Computing y la Nube**: Mientras que la nube centraliza el procesamiento, el Edge Computing lleva la computación hacia el dispositivo o punto de red cercano, lo que optimiza la velocidad y eficiencia. Ambos pueden trabajar juntos: los dispositivos pueden procesar ciertos datos en el borde (Edge) y enviar resultados o información relevante a la nube para almacenamiento o procesamiento adicional.

![Alt text](https://innovationatwork.ieee.org/wp-content/uploads/2019/06/Real-Life-Use-Cases-for-Edge-Computing_1024X684.png "a title")


Cada tecnología tiene su propósito, y muchas veces se combinan para lograr soluciones más eficientes y robustas en el ámbito de IoT y la computación distribuida.