TB067

Apuntes y Resueltos de la Materia Redes de Comunicaciones (TB067)
Index Commits Files Refs README
tps/2C2024/1/informe/informe.md (3543B)
   1 # Trabajo Práctico: Nivel de Transporte y Nivel de Red del Modelo TCP/IP
   2 
   3 Redes de Comunicaciones (TB067) - 2C2024 - FIUBA  
   4 Martin Klöckner (123456) - [mklockner@fi.uba.ar](mailto:mklockner@fi.uba.ar)
   5 
   6 ## El protocolo MQTT
   7 
   8 MQTT (Message Query Telemetry Transport) es un protocolo de red ligero y
   9 eficiente, implementado de extremo a extremo y con patron publisher-subscriber
  10 (editor-suscriptor).
  11 
  12 Este protocolo está diseñado principalmente para dispositivos en locaciones
  13 remotas con recursos y/o ancho de banda limitado, tal como sistemas embebidos.
  14 
  15 El protocolo MQTT se ubica en el nivel de aplicación del modelo TCP/IP por lo
  16 que requiere de un protocolo de transporte subyacente; en particular uno que sea
  17 ordenado, seguro y sin perdida de datos, tal como el protocolo TCP.
  18 
  19 ### Seguridad
  20 
  21 Encriptacion
  22 
  23 ### Aplicaciones Comerciales
  24 
  25 ### Versiones
  26 
  27 Las versiones de MQTT son controladas por la organización sin fines de lucro
  28 OASIS (Organization for the Advancement of Structured Information Standards)
  29 
  30 #### MQTT 5
  31 #### MQTT 3.1.1
  32 #### MQTT 3.1
  33 #### MQTT-SN v1.2
  34 
  35 ### Referencias
  36 
  37 [MQTT: The Standard for IoT Messaging](https://mqtt.org/)  
  38 [¿Qué es MQTT?](https://aws.amazon.com/es/what-is/mqtt/)
  39 
  40 ## Uso Práctico
  41 
  42 > Sobre la aplicación, ¿de qué modo consigue implementar la fragmentación?
  43 
  44 > En comparación con la fragmentación que implementa el protocolo TCP, ¿hay
  45 > funcionalidades o características de la fragmentación en estos scripts que
  46 > sean similares a la segmentación TCP? ¿Cuáles?
  47 
  48 > En comparación con la segmentación que implementa el protocolo TCP, ¿hay
  49 > funcionalidades o características de la segmentación TCP que en estos scripts
  50 > estén ausentes? ¿Cuáles?
  51 
  52 > Acerca de las sesiones del publicador y del suscriptor, ¿cuáles son los
  53 > extremos de las sesiones? ¿quién toma el rol de cliente y quién de servidor?
  54 
  55 > Sobre la extensión de las sesiones, ¿son persistentes, cómo se sostienen
  56 > cuando no hay tráfico? ¿no son persistentes? ¿cómo se cierran (en qué momento
  57 > y quién lo inicia)?
  58 
  59 > En detalle sobre las sesiones:
  60 > a. ¿Cuál es el número de secuencia del primer segmento TCP de
  61 >    petición de conexión?
  62 > b. ¿Cuáles son las opciones implementadas, si las hay?
  63 > c. ¿Cuántos bytes tiene el buffer de recepción según se informa al inicio?
  64 > d. ¿A qué hora se envió el primer segmento (el que contiene datos de la
  65 >    aplicación)? ¿A qué hora se recibió el ACK de este primer segmento
  66 >    que contiene datos? ¿Cuál es su RTT?
  67 > e. ¿Cuál es la longitud (encabezado más carga útil) de cada uno de los
  68 >    primeros cuatro segmentos TCP que transportan datos?
  69 
  70 > HTTP indica la cantidad de datos a transmitir mediante un encabezado. Esta
  71 > adecuación de MQTT para transmitir fragmentos no comunica la cantidad de datos
  72 > que va a transmitir. Si algún paquete se perdiera, el suscriptor no tendría
  73 > forma de detectar la falta. Modificar el código para simular la pérdida de un
  74 > paquete intermedio y verificar en el suscriptor que el texto quede truncado.
  75 > Luego modificar ambos scripts para que se comunique el largo de los datos a
  76 > transmitir y que el suscriptor pueda validar la cantidad de datos recibidos
  77 > versus los esperados.
  78 
  79 > De las funcionalidades o características vinculadas a segmentación, presentes
  80 > en TCP pero no cubiertas por estos scripts, implementar una versión mejorada,
  81 > que incorpore al menos una mejora o una funcionalidad.  Se puede usar
  82 > inteligencia artificial y por qué no, inteligencia natural.