Diferencia entre revisiones de «Servidor Proxy de Sockets»

De Wiki~eWa
Ir a la navegaciónIr a la búsqueda
m (New page: El '''SPS''' o '''Servidor Proxy de Sockets''' se desarrolló durante finales de Septiembre de 2008 y el mes de Octubre de ese mismo año, y abrió en el Proyecto eWa una gran puerta a...)
 
m
Línea 1: Línea 1:
 
El '''SPS''' o '''Servidor Proxy de Sockets''' se desarrolló durante finales de Septiembre de 2008 y el mes de Octubre de ese mismo año, y abrió en el [[Proyecto eWa]] una gran puerta a compatibilizar progresivamente la [[RedeWa]] a la [[Arquitectura eWa]] y el [[SIM]]. Permite controlar el sistema local (de archivos, puertos, dispositivos) y de la red de forma completa, sin las restricciones de seguridad [[Adobe Flash]] 9 y posteriores.
 
El '''SPS''' o '''Servidor Proxy de Sockets''' se desarrolló durante finales de Septiembre de 2008 y el mes de Octubre de ese mismo año, y abrió en el [[Proyecto eWa]] una gran puerta a compatibilizar progresivamente la [[RedeWa]] a la [[Arquitectura eWa]] y el [[SIM]]. Permite controlar el sistema local (de archivos, puertos, dispositivos) y de la red de forma completa, sin las restricciones de seguridad [[Adobe Flash]] 9 y posteriores.
  
== Apertura de Sockets en el SPS ==
+
== Usos del SPS ==
 +
 
 +
=== Dentro de la Arquitectura eWa ===
 +
 
 +
El '''SPS''' es, dentro del [[SOM]] uno de los [[SeRViCios]] más importantes pertenecientes a la parte de la Red y la interconexión entre pares, y en general el uso de Sockets. No pertenece al [[Estándar]], ya que la [[Arquitectura eWa]] no se conecta nativamente por Sockets de pares, aunque sí se considera uno de los [[Protocolos]] más importantes.
 +
 
 +
Como [[SeRViCio]] usado tanto dentro como fuera de la [[Arquitectura eWa]], usualmente se usa en otras aplicaciones que, sin necesidad de que sean estándares, puedan funcionar tanto dentro de la [[Arquitectura eWa]] como fuera de ella. La implementación del '''SPS''' en la [[Arquitectura eWa]] para el [[SOM]] se reliza utilizando el [[Estándar]] de conexión, por lo tanto, aunque se precisa del componente no estándar como es el '''SPS''', éste sí es estándar y por eso se considera un [[SeRViCio]].
 +
 
 +
=== En la programación Flash ===
 +
 
 +
Dentro de la programación [[Adobe Flash|Flash]] el uso del '''SPS''' revolucionó el panorama del [[Action Script 3.0]] dotándolo de conexión a Sockets tanto de Clientes (sin restricciones de seguridad) como de conexión a Sockets de Servidor. Esta última característica es de las más importantes, ya que permite crear aplicaciones Web en Flash de conexión entre pares como, por ejemplo:
 +
 
 +
* Chats con videoconferencia.
 +
* Envío de archivos.
 +
* Sincronización.
 +
* Acceso remoto.
 +
* Videojuegos.
 +
 
 +
También permite conexiones de servidor como, por ejemplo, de:
 +
 
 +
* Páginas Web.
 +
* Juegos multijugador.
 +
* Correo electrónico.
 +
* Canal de Chat.
 +
* Multivideoconferencias.
 +
* Transmisión de Audio y Vídeo por streaming.
 +
 
 +
=== En el resto de paradigmas de programación ===
 +
 
 +
Ya que el '''SPS''' de forma local se ejecuta en el puerto '''9999''' del '''localhost''' sin ningún ámbito de seguridad, es accesible desde cualquier aplicación o programa que, si es necesario, entienda el protocolo y valide la conexión correctamente. De esta forma, cualquier aplicación que soporte acceso a Sockets locales en el puerto 9999 podrá comunicarse con el '''SPS''' y realizar las conexiones Sockets propias del problema que quieran resolver.
 +
 
 +
== Seguridad en el SPS ==
 +
 
 +
Una de las mayores preocupaciones que se han tenido a la hora de desarrollar el '''SPS''' ha sido el tema de la '''Seguridad'''. Por ese motivo, el SPS cuenta con varias políticas de seguridad configurables desde un entorno de seguridad y jerarquía limitado al ordenador local: ninguna otra conexión podra suplantar la identidad local que, en cualquier caso, siempre tendrá la máxima autoridad para la toma de control absoluta del '''SPS'''.
 +
 
 +
Además, se han incluido diversos métodos de seguridad para acceder a las diferentes personalidades y funcionalidades que ofrece el '''SPS''' para el acceso de recursos tanto locales (sistema de archivos, puertos, control...) como externos (ancho de banda, conexión,...) y asegurar el perfecto funcionamiento de la [[Máquina]] donde se está ejecutando.
 +
 
 +
== Protocolo del SPS ==
 +
 
 +
=== Apertura de Sockets en el SPS ===
  
 
El '''SPS''' nace inicialmente para permitir la conexión entre [[Sockets]] (la forma común de enviar información de ordenador a ordenador) con un conjunto de instrucciones muy básico:
 
El '''SPS''' nace inicialmente para permitir la conexión entre [[Sockets]] (la forma común de enviar información de ordenador a ordenador) con un conjunto de instrucciones muy básico:
Línea 13: Línea 52:
 
* "T numero" para establecer el tamaño de los paquetes de datos.
 
* "T numero" para establecer el tamaño de los paquetes de datos.
  
== Sistema de Archivos en el SPS ==
+
=== Sistema de Archivos en el SPS ===
  
 
Aun así, se vio que las posibilidades de esta aplicación podrían ser mayores. Para eso se usó el mismo concepto de Socket para trabajar con el sistema de archivos locales:
 
Aun así, se vio que las posibilidades de esta aplicación podrían ser mayores. Para eso se usó el mismo concepto de Socket para trabajar con el sistema de archivos locales:
Línea 22: Línea 61:
 
* "D pos=0 hasta=fin" para solicitar el contenido del archivo local desde la posición 0 hasta la posición hasta.
 
* "D pos=0 hasta=fin" para solicitar el contenido del archivo local desde la posición 0 hasta la posición hasta.
  
== Control del SPS ==
+
=== Control del SPS ===
  
 
Para profundizar en la gestión de Red, se añadieron dos comandos para el control de escucha de puertos y del propio SPS:
 
Para profundizar en la gestión de Red, se añadieron dos comandos para el control de escucha de puertos y del propio SPS:
Línea 33: Línea 72:
 
* "E error [solución]" para informar o solucionar un error.
 
* "E error [solución]" para informar o solucionar un error.
  
== Comandos eWa del SPS ==
+
=== Comandos eWa del SPS ===
 
Y por último una serie de comandos propios para conectarse al Proyecto eWa: "W [*]".
 
Y por último una serie de comandos propios para conectarse al Proyecto eWa: "W [*]".

Revisión del 15:29 23 oct 2008

El SPS o Servidor Proxy de Sockets se desarrolló durante finales de Septiembre de 2008 y el mes de Octubre de ese mismo año, y abrió en el Proyecto eWa una gran puerta a compatibilizar progresivamente la RedeWa a la Arquitectura eWa y el SIM. Permite controlar el sistema local (de archivos, puertos, dispositivos) y de la red de forma completa, sin las restricciones de seguridad Adobe Flash 9 y posteriores.

Usos del SPS

Dentro de la Arquitectura eWa

El SPS es, dentro del SOM uno de los SeRViCios más importantes pertenecientes a la parte de la Red y la interconexión entre pares, y en general el uso de Sockets. No pertenece al Estándar, ya que la Arquitectura eWa no se conecta nativamente por Sockets de pares, aunque sí se considera uno de los Protocolos más importantes.

Como SeRViCio usado tanto dentro como fuera de la Arquitectura eWa, usualmente se usa en otras aplicaciones que, sin necesidad de que sean estándares, puedan funcionar tanto dentro de la Arquitectura eWa como fuera de ella. La implementación del SPS en la Arquitectura eWa para el SOM se reliza utilizando el Estándar de conexión, por lo tanto, aunque se precisa del componente no estándar como es el SPS, éste sí es estándar y por eso se considera un SeRViCio.

En la programación Flash

Dentro de la programación Flash el uso del SPS revolucionó el panorama del Action Script 3.0 dotándolo de conexión a Sockets tanto de Clientes (sin restricciones de seguridad) como de conexión a Sockets de Servidor. Esta última característica es de las más importantes, ya que permite crear aplicaciones Web en Flash de conexión entre pares como, por ejemplo:

  • Chats con videoconferencia.
  • Envío de archivos.
  • Sincronización.
  • Acceso remoto.
  • Videojuegos.

También permite conexiones de servidor como, por ejemplo, de:

  • Páginas Web.
  • Juegos multijugador.
  • Correo electrónico.
  • Canal de Chat.
  • Multivideoconferencias.
  • Transmisión de Audio y Vídeo por streaming.

En el resto de paradigmas de programación

Ya que el SPS de forma local se ejecuta en el puerto 9999 del localhost sin ningún ámbito de seguridad, es accesible desde cualquier aplicación o programa que, si es necesario, entienda el protocolo y valide la conexión correctamente. De esta forma, cualquier aplicación que soporte acceso a Sockets locales en el puerto 9999 podrá comunicarse con el SPS y realizar las conexiones Sockets propias del problema que quieran resolver.

Seguridad en el SPS

Una de las mayores preocupaciones que se han tenido a la hora de desarrollar el SPS ha sido el tema de la Seguridad. Por ese motivo, el SPS cuenta con varias políticas de seguridad configurables desde un entorno de seguridad y jerarquía limitado al ordenador local: ninguna otra conexión podra suplantar la identidad local que, en cualquier caso, siempre tendrá la máxima autoridad para la toma de control absoluta del SPS.

Además, se han incluido diversos métodos de seguridad para acceder a las diferentes personalidades y funcionalidades que ofrece el SPS para el acceso de recursos tanto locales (sistema de archivos, puertos, control...) como externos (ancho de banda, conexión,...) y asegurar el perfecto funcionamiento de la Máquina donde se está ejecutando.

Protocolo del SPS

Apertura de Sockets en el SPS

El SPS nace inicialmente para permitir la conexión entre Sockets (la forma común de enviar información de ordenador a ordenador) con un conjunto de instrucciones muy básico:

  • "O host puerto" para abrir una conexión con el host (un dominio o una IP) por el puerto indicado.
  • "S array_de_bytes" para enviar por la conexión activa un array_de_bytes que representan un comando o información.
  • "R array_de_bytes" al recibir por la conexión activa un array_de_bytes que representan un comando o información.

Después, puesto que había muchas más posibilidades, se añadieron:

  • "K" para desconectar la conexión activa.
  • "X" o "X host puerto" para convertir la conexión activa en directa: esto permitía evitar tener que poner 'S' para mandar y tener un 'R' cuando se reciben los datos.
  • "T numero" para establecer el tamaño de los paquetes de datos.

Sistema de Archivos en el SPS

Aun así, se vio que las posibilidades de esta aplicación podrían ser mayores. Para eso se usó el mismo concepto de Socket para trabajar con el sistema de archivos locales:

  • "A nombre" para abrir un archivo local.
  • "B" para borrar un archivo local.
  • "C nombre [atributos]" para crear un archivo local.
  • "D pos=0 hasta=fin" para solicitar el contenido del archivo local desde la posición 0 hasta la posición hasta.

Control del SPS

Para profundizar en la gestión de Red, se añadieron dos comandos para el control de escucha de puertos y del propio SPS:

  • "P [desafío]" para hacer ping con o sin desafío.
  • "Q [clave]" para tener control del SPS y recibir todo lo que escucha.
  • "L puerto" para crear un servidor Socket escuchando por el puerto indicado.

Además, se añadió una forma de tratamiento de errores:

  • "E error [solución]" para informar o solucionar un error.

Comandos eWa del SPS

Y por último una serie de comandos propios para conectarse al Proyecto eWa: "W [*]".