Mostrando entradas con la etiqueta Redes de Telecomunicaciones. Mostrar todas las entradas
Mostrando entradas con la etiqueta Redes de Telecomunicaciones. Mostrar todas las entradas

lunes, 27 de mayo de 2013

Tarea 8: Redes Sensoriales

Para ésta semana se nos pidió hacer un resumen de un documento científico, el documento que elegí va relacionado con las redes sensoriales aplicadas en un bosque:

"Forest fire detection system based on a ZigBee wireless sensor network"
Junguo ZHANG, Wenbin LI, Ning HAN, Jiangming KAN

Introducción:
Los bosques son parte de los recursos importantes e indispensables para la supervivencia humana y el desarrollo social que protegen el equilibrio de la ecología terrestre. Sin embargo, debido a algunas actividades, ocasiona que determinados ambientes no puedan ser controladas, como los incendios forestales, que últimamente son más frecuentes. Estos incendios son algunos de los problemas más graves en recursos forestales y el medio ambiente humano.
Actualmente, los métodos de prevención de incendios forestales consisten en gran parte de las patrullas forestales como la implementación de torres de vigilancia y últimamente monitoreo por medio de monitoreo satelital, donde este último método requiere muchos recursos financieros, materiales y mano de obra capacitada.

Propuesta:
En este documento proponen el uso de  la tecnología de red inalámbrica de sensores ZigBee y explica como es su aplicación como sistema de vigilancia.

Ventaja:
Dando las ventajas que el sistema puede controlar los parámetros en tiempo real relacionadas como: temperatura y humedad relativa, como así el enviar los datos inmediatamente al ordenador del centro de control. Los datos recogidos son analizados y procesados por el ordenador, haciendo así una evaluación más rápida de un peligro potencial de incendio.


Aplicación de ZigBee red inalámbrica de sensores en un sistema de monitoreo de incendios forestales:
Esta red se compone de numerosos y ubicua nodos de sensores micro que tienen la capacidad de comunicarse y calcular. Estos nodos pueden vigilar, sentido y recopilar información de diferentes ambientes y diferentes objetos de supervisión cooperativa.
ZigBee es un producto de bajo costo y bajo consumo en el protocolo de comunicación de la red inalámbrica de corto alcance. En comparación con otras tecnologías inalámbricas, ZigBee tiene ventajas únicas de la transmisión de datos segura y fiable, una configuración de red fácil y flexible, bajos costos de equipos y baterías de larga duración. Por lo tanto, tiene un gran potencial de desarrollo y la aplicción de mercado prometedor en el campo del control de la industria.
Mediante la aplicación de una red de sensores inalámbricos basados ​​en ZigBee a un sistema de monitoreo de incendios forestales, la información, como la temperatura y la humedad en cualquier parte del bosque cubierto por la red podría ser recogida fácilmente tratada y analizada en cualquier momento. El sistema menciona que el sistema se puede ampliar de manera significativa, provocando el coste de mantenimiento de los equipos podría reducirse y todo el sistema puede ser optimizado.

Elementos:
Un sistema de red inalámbrica de sensores ZigBee incluye nodos sensores, routers y un ordenador host de supervisión.

Evitar pérdida:
Para disminuir la pérdida de paquetes de energía y de datos, una estructura de topología de red del clúster. Los nodos de sensores equipados con microprocesadores de baja capacidad de procesamiento se distribuyen al azar en los bosques y zonas cercanas para recoger los parámetros de vigilancia de incendios, tales como la humedad relativa y la temperatura atmosférica. Dependiendo de la parte de los diferentes nodos de sensores desempeñan en toda la red, que se dividen en tres categorías: nodos fondo común, los jefes de racimo y de red coordinadores. Los datos recogidos se transmiten a su propia cabeza de racimo por un nodo inferior ordinaria. Una cabeza de clúster controla principalmente la fusión de datos y la transmisión de paquetes de datos. A través de la cabeza de racimo, los datos recogidos por los nodos del fondo común de la agrupación se pueden fusionar y se transmiten al coordinador de la red más cercana y los paquetes de datos transmitidos por el coordinador de la red se pueden difundir a grupos relacionados. Un coordinador de la red se ocupa principalmente de las funciones básicas de gestión de red, como la configuración de red, equipos de registro y control de acceso. Información de datos puede ser transmitido a los routers de la comunicación inalámbrica. Al recibir los datos, routers establecer una base de datos local y luego transmiten los datos al ordenador central de monitoreo a través de internet, que ofrece una base de toma de decisiones para los departamentos de prevención forestal o un incendio.



Nodo sensor
El nodo sensor es una unidad básica y la plataforma de la red de sensores inalámbricos. Un nodo sensor se compone habitualmente de un módulo de sensor, un módulo de procesamiento, un módulo de comunicación inalámbrico y un módulo de potencia.
El módulo de sensor es responsable de la conversión analógica-digital de los datos y la recolección de parámetros tales como la humedad relativa de la atmósfera y la temperatura del aire. El módulo de procesamiento es responsable de controlar el funcionamiento de todo el nodo sensor y el ahorro y hacer frente a los datos recogidos por su propio nodo y la información binaria transmitida desde otros nodos. El módulo de comunicación inalámbrico es responsable de la comunicación con otros nodos y el intercambio de información de control y recepción o transmisión de datos. El módulo de alimentación suministra energía a los otros tres módulos y unidades de los nodos, por lo que es el factor clave para el funcionamiento eficaz de la red


Proceso de la transmisión de datos:
Para ofrecer la transmisión de datos dentro de la red ZigBee en este diseño, se utiliza un sistema de solicitudes activas de información por el ordenador de supervisión de host y respuestas pasivas por los nodos sensores.
Cuando el equipo de monitoreo, operado por un trabajador de telecomunicaciones, envía una orden para solicitar información sobre el estado de la temperatura y la humedad del bosque, el orden se transmite al router a través de Internet. El enrutador analiza las tablas de enrutamiento de acuerdo con el orden y decide el coordinador de destino, que luego transmite en el racimo ramificación adjunto para activar la cabeza de clúster de destino. Las emisiones de cabeza en racimo hacia sus nodos miembro para activar los nodos inactivos para llevar a cabo la comunicación de datos. Después de recibir los datos recogidos y enviados por los nodos, la cabeza de racimo integra y devuelve los datos al ordenador central de monitoreo a lo largo de la línea original. Si la red de destino no se encuentra o no está conectado, el cabeza de racimo abandonará el paquete de datos y generar un informe al ordenador principal de supervisión. La mayoría de los nodos en el sistema están en un estado inactivo para ahorrar energía y extender la vida útil de la red.



Conclusion:
Redes inalámbricas de sensores se aplican cada vez más en el campo de la vigilancia ambiental y ecológica. Especialmente en entornos difíciles y duras, que tiene ventajas que los sistemas tradicionales carecen del monitor. Además, la tecnología inalámbrica de sensores tiene una amplia base de aplicaciones en el campo de la vigilancia de los incendios forestales en tiempo real.

Opinión personal:
Leyendo este documento me sirvió para darme una idea de otras formas en poder aplicar este tipo de redes sensoras como al combinar el cómputo ubicuo y aplicándolo en la domótica y así hacer un sistema distribuido para regular la temperatura de determinadas habitaciones.

Referencia:
Forest fire detection system based on a ZigBee wireless sensor network, Junguo ZHANG, Wenbin LI, Ning HAN, Jiangming KAN

martes, 14 de mayo de 2013

Tarea 6: Geolocalización

Para esta tarea se nos pidió investigar acerca del funcionamiento del posicionamiento de los dispositivos   o más bien como gps y como funciona la triangulación.

Para esto se investigo de la triangulación y se encontró que hay un método matemático que se encarga de determinar las posiciones de los objetos aplicando geometría de triángulos conocida como trilateración.

Teoría:
Mencionando un poco de teoría para poder hacer traingulación se necesitan forzosamente 3 antenas y un dispositivo que será el receptor, en dado caso que no se tengan las 3 antenas, no funciona o se obtiene un margen de error.

Para poder determinar tuvimos una pequeña discusión entre varios compañeros del salón dando diferentes puntos de vista de como poderse obtener, en mi caso opté por aplicar la distancia entre dos puntos, sacando así la diferencia que se tienen entre las antenas para después aplicarla en el receptor



Código:



Resultados:


Notas:
Otra de las posibles soluciones es una vez tenido la intensidad de cada antena, realizar algo parecido a la votación de puntos en una imagen determinada, ya que esperaremos que la intensidad toque el receptor dando un voto en de cada antena y así determinar donde cruzan éstas.
Más adelante pondré un código desarrollado en javascript, para así tener un demo interactivo.

Referencias:
Mauricio Gende, Ivana Molina, "Trilateración", modificado en 6 de Junio 2011, http://catedras.fcaglp.unlp.edu.ar/geofisica/referenciacion-en-geofisica/teoria/instrumental-y-tecnicas-topograficas/trilateracion.
http://www.sectormatematica.cl/contenidos/distancia.htm
http://es.wikipedia.org/wiki/Triangulaci%C3%B3n
http://es.wikipedia.org/wiki/Trilateraci%C3%B3n

martes, 7 de mayo de 2013

Puntos Extras: Satélites



Referencias:
http://io9.com/391538/the-ten-most-important-satellites-orbiting-earth-now
http://www.globalcomsatphone.com/hughesnet/satellite/costs.html
http://cuadernodeobservaciones.bligoo.es/los-satelites-artificiales
http://es.wikipedia.org/wiki/Sat%C3%A9lite_artificial

martes, 30 de abril de 2013

Tarea 5: Control de tráfico cogestión

Para esta entrada se nos pidió realizar un programa en ns-2/3 donde a partir de una topología y la transmisión de paquetes (en una entrada anterior se habló de la pérdida de paquetes) al ver el comportamiento que tiene éste en el control de la congestión de tráfico.

Teoría:
Viendo un poco de teoría y buscando lo que se quiere implementar es:
Teniendo una topología entre nodos, en esta hay una transmisión de datos, suponiendo que nodo A y nodo B (servidor) hace peticiones, se tiene un flujo en el ancho de banda, en determinado momento el ancho de banda se ve congestionado ocasionando la pérdida de paquetes, para poder controlar esto lo que se puede hacer es disminuir el tiempo en el que se mandan los paquetes, reduciendo así su congestión.



Código:
Para esta entrada mediré el rendimiento que se tiene entre los nodos, teniendo variaciones en el envio de paquetes.


Resultados:
En los resultados obtenidos tuve un ligero problema, ya que me monstró error en el parseo, para poder obtener el rendimiento se empleó una fórmula que viene más abajo de referencia donde el paquete saliente es divido por el incremento que va teniendo éste por 8 que es una constante por el tamaño del paquete y todo esto dividido en 1024, que el es limite máximo que puede tener nuestro paquete.



Notas:
Faltó realizar u obtener una simulación en gráfica, ya que los resultados obtenidos no son del todo satisfactorios.

Referencias:
http://web.mst.edu/~bckd2/CpE401/project/NS2%20simulations/special_study%20on%20TCP.pdf
http://www2.ensc.sfu.ca/~ljilja/ENSC835/Spring02/Projects/bian_zhang.hilary/Hilary_and_Bian_Report.pdf
http://www.profesores.frc.utn.edu.ar/sistemas/ingsanchez/Redes/Archivos/CCong.asp

martes, 9 de abril de 2013

Actividad 6: Métodos de ruteo y creación de topología en NS2

Para ésta entrada mostraremos como formar una topología y aplicar un enrutamiento utilizando el simulador NS-2.

En este caso veremos aplicado en una topología mixta mandando mensajes con el protocolo udp y veremos como se comporta al momento de estar tirando las aristas en la que se conecta con el nodo 5 que es el destino, mandándolas desde el nodo 0.

Inicializamos los nodos que vamos a empelar para el envio de paquetes

Hacemos las uniones entre los nodos

Creamos el tipo de conexión de datos a enviarse, en nuestro caso es udp y se lo asignamos al nodo 0 e indicamos que el destino será nuestro nodo 5

Vamos indicando los nodos que iremos tirando, para ser su comportamiento

Código completo:
Video:

martes, 26 de febrero de 2013

Tarea 3: QoS Experiemento

Para esta entrada, lo que veremos será hacer un prueba de la calidad de servicio aplicado con Intercable y las video llamadas de google (hangout).

Para hacer la prueba se implemento wireshark para hacer el sniffing de los paquetes, una vez teniéndolos, filtrarlos y obtener los paquetes que buscamos y así procesar los datos como la demóra, tamaño de éstos, perdida, entre otros.

Proceso:
Con wireshark se hizo el sniffing y se pasó a csv para filtrarlo. Para filtrar lo que se hizo fue tomar la ip de origen, la ip de destino y el protocolo a usarse, en mi caso fue:

  • ip: 192.168.1.98
  • ip2: 74.125.1.127
  • protocolo: UDP

Código que se empleo para el filtrado:

Plot
Una vez obtenido, se sacó la cantidad de paquetes enviados y recibidos respecto al tamaño.



El tiempo de demora entre los paquetes enviados y recibidos.




Paquetes perdidos:


Alternativa:
Otra de las alternativas donde podemos filtrar y es más fácil su uso es la herramienta de estadísticas de parte de wireshark.

[la frecuencia de transferencia de los archivos udp]

[tiempo que tarda en responder al request]


Conclusiones:
Donde podemos concluir que la mayoría de los paquetes enviados son entre 20 y 200 bytes, la demora de transferencia es muy variable y no se comporta del todo bien, como se muestra en la figura dos. ya que la primera tiene un pico y luego se comporta igual, para nuevamente tener picos.
La perdida de paquetes es mínima 8 paquetes perdidos de un total de 18296

domingo, 17 de febrero de 2013

Tarea 3: Experimento de Monitoreo WiFi

En esta entrada, haremos un pequeño experimento en la red WiFi y sus dispositivos conectados, haciendo sniffing, la finalidad del experimento será saber las páginas que se visita y el contenido que se obtiene, buscando principalmente imagen.

[http://team-android.com/wp-content/uploads/2011/03/Hacker-Cat_397.jpg]

Sniffing
El oir la palabra sniffing se nos puede hacer algo raro si no estamos familiarizados con redes de telecomunicaciones o temas relacionados de redes. Pero ya sin tantos rodeos, podemos decir que el sniffing es la técnica por la cual podemos escuchar todo lo que circula en una red.

Funcionamiento
[http://www.multiserviciosva.com/wp-content/uploads/2010/10/conexion1.jpg]

En una red local, se tiene un modem donde es el medio que se conectan los computadores y donde sale la información hacia la internet y como se mencionó los computadores, que son los dispositivos que hacen las peticiones.
En la red toda la información que es mandada viaja en forma de paquetes y ésta es recibida por el modem, donde la manda a su destino, para después recibirla y mandar a su origen.

[http://electiva3seguridad.wikispaces.com/file/view/SNIFFER1.jpg/136995931/408x323/SNIFFER1.jpg]

Al momento de hacer sniffing en una red, toda la información que viaje en ella, pasa por nuestro computador o de un tercero, siempre y cuando se haya puesto en modo monitor la tarjeta de red, para así ir capturando todos lo paquetes salientes y entrantes.
Una vez que se tienen los paquetes, se pueden desempaquetar y ver su contenido (origen, destino, tamaño y su información, todo dependiendo del protocolo empleado), para hacer uso de éste. 

Herramienta & Instalación
Para poder hacer sniffing, se puede emplear diferentes herramientas como Ettercap, Wireshark y Cain & Abel, en éste caso se empleará Wireshark, donde ya tengo un tutorial de instalación en ubuntu y sus primeros pasos.

Proceso
Como se mencionó, para esta auditoría será saber los links que se visitan, al igual que su contenido donde nos enfocaremos en la imagenes.

Páginas Visitadas
Wireshark es una herramienta muy potente donde nos da muchas opciones para el manipulado de la información, filtrado, decodificaciones, entre otros (tomaré en cuenta que el lector visitó el link de primeros pasos, donde ya se vió de habilitar para el escuchar paquetes).
Para poder saber las páginas que se visitan nos podemos ir en Edit/Preferences/Name Resolution y activar el nombre de la Red, para así cuando empecemos nuestra auditoría nos pondrá la dirección en lugar de la ip de Origen.



Contenido
Wireshark, nos da también la facilidad de ver éste contenido y el filtrado de ello.

[paquetes capturados]


[filtrado de paquetes]

[Contenido del Paquete]

[Paquete puro donde en rojo es la petición y en azul lo recibido]

Imagenes:
Como se manejaba al principio, lo que nosotro buscaremos es el ver las imagenes que se enviaron, por lo tanto, Wireshark nos da la opción de decodificarlas, ya que si nosotros queremos verlas, nos aparecerá en formato binario, así que guardaremos en Archivo/Guardar, para despues ir nuevamente en Archivo/Exportar Objetos/HTTP y nos saldrá la siguiente imagen, para despues guardar.


Si en los paquetes capturados contiene alguna imagen, esta nos aparecera en el folder que previamente generamos para guardar el contenido, en mi caso estaba googleando a Emma Watson y me guardo la siguiente imagen:



Conclusiones
Con éste experimento, me ayudó a reflexionar, sobre la información que viaja a través de una red, ya que en la mayoría de los veces viaja en texto plano y es fácil leerla con herramientas de éste tipo, en éste caso se manejó el sniffing de imagenes, pero experimentando un poco, podemos ver las cookies que se tienen, archivos descargados, conexiones ftp, obtener los usuarios y contraseñas de alguna página que maneje logins, conversaciones de los usuarios en los chats, entre una infinidad de opciones.







Referencias

martes, 12 de febrero de 2013

Tarea 2: Protocolo UDP

Para ésta entrada se trabajo con el protocolo UPD, definiendo un poco, podemos decir que un protocolo es un conjunto de reglas que rigen el formato y significado de paquetes o mensajes. o de una forma más sencilla explicado es el acuerdo entre dos partes que se comunican para establecer la forma en la que se llevará la comunicación

Para una comunicación se tienen dos términes que debemos entender el cuál es servicio y protocolo, el segundo ya definido y el primero definido a continuación:

Servicio:
Es el conjunto de operaciones que una capa proporciona a la capa que esta encima de ellos. En esta se define que operaciones puede realizar la cara en beneficios de sus usuarios

UPD
El protocolo UDP es un protocolo no orientado a conexión, conocido también como datagrama que es un servicio sin conexión no confiable, ya que no se tiene una obligación de confirmar la recepción, por que no es obligatorio poner en la estructura del protocolo el origen del paquete.

El udp es implementado en la aplicación de SPAM, mensajería de texto y consultas en Base de Datos.

En ésta entrada, se realizo un pequeño programa que es adivinar un número, donde se muestra la implementación de UDP con el envió de paquetes, en sí el programa es muy sencillo ya que lo que hace es establecer una conexión entre cliente y servidor y el cliente dice un número entre 1 y 5 para mandarlo al servidor, el servidor ve el tamaño del paquete en lo descomprime y verifica si el número es adivinado, si es asi sube la puntuación.

Código Servidor:

Código Cliente:

Resultados
A continuación se muestra una imagen con los resultados obtenido entre la comunicación de ambos:



Referencia:
http://codeprogress.com/python/libraries/standard%20python/showPythonExample.php?index=9&key=SendReceiveBinaryDataUDP#.URbwPlrm63q
http://mundogeek.net/archivos/2008/04/12/sockets-en-python/

martes, 22 de enero de 2013

Tarea 1: Protocolo RFC 2818

El RFC 2818 original lo puden encontrar en éste link, éste estandar describe como se emplea TLS (Transport Layer Securiity) para asegurar la transferencia de hipertexto (HTTP) de las conexiones a través de internet. También lo que hace es distinguir el tráfico, del inseguro por el uso de un puerto de diferente servidor.


[http://www.techpresentations.org/w/images/graphviz/506e126c81c2108588c955a74dfdf400.png]

Con éste estanadar, se deriban otros o se complementan como el protocolo de comunicación por sockets que va muy relacionada a ella.

El estandar 2818 nace del HTTP [RFC2616] donde fue utilizado originalmente abierto en Internet. Sin embargo, el aumento del uso de HTTP para aplicaciones sensibles ha requerido medidas de seguridad. SSL y TLS sus sucesores fueron diseñados para proporcionar canales orientados hacia la seguridad.

Este tipo de protocolo proporciona autenticación y privacidad de la información entre extremos sobre Internet. Habitualmente, sólo el servidor es autenticado (es decir, se garantiza su identidad) mientras que el cliente se mantiene sin autenticar.


Algunso casos:
Algunos casos donde nos podemos encotrar éste tipo de problemas, viene siendo principalmente en la comunicación de servicios web al emplear algún puerto específico de conexión. Un caso a mencionar en el ambito laboral és en el desarrollo de aplicaciones, donde un determinado puerto tiene que estar habilitado para la correcta comunicación con el servidor.

Otro de los casos como se mencionó es en los servicios web, hace dos semanas estaba implementando la lectura de una comunicación y me encontraba con el problema que el usuario no estaba identificado, ya que lo estaba haciendo con JQuery (cliente) y despues de estar investigando descubrí que en el servicio web, no se puede hacer una comunicación si del lado del cliente no ésta identificado, necesitando en si un certificado o empleando otra forma de servidor.

Teoría:

Conexión de Sesión:
El agente que actúa como cliente HTTP también debe actuar como el cliente del TLS. Se debe iniciar una conexión con el servidor en el puerto apropiado y luego enviar el ClientHello TLS. Cuando conexión de TLS se ha terminado, el cliente puede entonces iniciar la primera solicitud HTTP. Todos los datos HTTP debe ser enviada como "datos de aplicaciones" TLS.

Conexión de Cierre
TLS debe iniciar un intercambio de alertas de cierre antes de cerrar la conexión. Una implementación TLS puede, después de enviar una alerta de cierre, cerrar la conexión sin tener que esperar a que el cliente envía su alerta de cierre, generando un "cierre incompleto". Esto sólo se debe hacer cuando la aplicación sabe que ha recibido todos los datos de los mensajes que le importa.

Número de puerto
Los primeros datos que un servidor HTTP espera recibir del cliente es la producción Request-Line. Los primeros datos que un servidor TLS espera recibir es la ClientHello. Por consiguiente, la práctica común ha sido la de ejecutar HTTP / TLS a través de un puerto separado con el fin de distinguir a qué protocolo se está utilizando. Cuando HTTP / TLS se ejecuta a través de una conexión TCP / IP, el puerto que es empleado es 443. 

Identidad del Servidor
En general, HTTP / TLS son peticiones generadas por eliminación de referencias a un URI. Como consecuencia de ello, el nombre de host del servidor es conocido por el cliente. Si el nombre está disponible, el cliente deberá comprobar que en contra de la identidad del servidor.

Identidad del cliente
Normalmente, el servidor no tiene conocimiento de lo externo la identidad del cliente. Si un servidor tiene tal conocimiento éste es comprobando por una cadena de certificado que tiene el usuario


Formato URI
HTTP / TLS se diferencia de HTTP URI utilizando el identificador 'https' protocolo en lugar del identificador 'http' protocolo. Un URI que especifica ejemplo HTTP / TLS es: 

https://www.example.com/ ~ smith / home.html

Otros:
Navegadores que emplean TLS
[http://es.wikipedia.org/wiki/Transport_Layer_Security]