BLOG

El contexto es el rey

Miniatura de Lori MacVittie
Lori MacVittie
Publicado el 7 de febrero de 2016

Cosas de consumo. Cosas de negocios. Fabricando cosas.

Teléfonos. Comprimidos. Phablets. Computadoras portátiles. Escritorios.

Computación intensa. Red intensa. Almacenamiento intensivo.

Hogar. Trabajar. Restaurante. Auto. Parque. Hotel.

El panorama está cambiando en ambos lados del negocio: aplicaciones y clientes. El término “usuario” ya no significa sólo un ser humano. También incluye sistemas y cosas que se activan automáticamente para conectarse, compartir e interactuar con aplicações en todo el centro de datos.

 

Pensemos, por ejemplo, en la emergente tendencia arquitectónica de microservicios, que divide las aplicações monolíticas en sus partes compuestas. Cada parte es su propio servicio y presenta una API (interfaz) a través de la cual otras partes (servicios) y ‘usuarios’ pueden comunicarse.

 

¿No formas parte del 36% que incursiona en los microservicios? ( Typesafe, 2015 ) Seguir con arquitecturas de aplicaciones bien entendidas no lo aislará del impacto de la creciente diversidad de "usuarios", especialmente si se está adentrando en la Internet de las cosas. Nuestros datos indican que algunos de ustedes lo son: el 22 % de todos los encuestados cree que será de importancia estratégica durante los próximos 2 a 5 años y el 15 % tiene una ventaja con planes de comprar tecnología para apoyar la IoT en los próximos 12 meses.

Esto significa que las “cosas” tendrán que verse como “usuarios”, con su propio conjunto único de necesidades y requisitos con respecto a la seguridad y el rendimiento, sin mencionar la disponibilidad. 

Esto significa que los servicios de red y aplicação encargados de entregar un conjunto cada vez más diverso de aplicações a un conjunto cada vez mayor de clientes en más ubicaciones deben poder diferenciar entre un usuario humano y un usuario objetivo. Para optimizar el rendimiento y garantizar la seguridad, es imperativo que los servicios responsables del rendimiento y la seguridad puedan aplicar la política correcta en el momento correcto dado el conjunto de variables actual.

Esto significa que necesitan gestionar el tráfico (datos y comunicaciones, en términos de aplicaciones) dentro del contexto de toda la transacción: el usuario, la aplicación y el propósito para el cual se intenta dicha comunicación.

 

Puedes pensar en el contexto de la misma manera que te habrán enseñado (si tienes la edad suficiente, y no, no tienes que admitirlo si prefieres no hacerlo) sobre las cinco "W" que debes preguntar cuando estás recopilando información básica: quién, qué, dónde, cuándo y por qué. Al interrogar el tráfico y extraer una respuesta a cada una de estas preguntas, puede reunir suficiente contexto para poder tomar una decisión apropiada sobre cómo tratar el intercambio. Niégalo. Permitirlo Escanéalo. Frotarlo. Optimizarlo. Enrutalo. Estos son los tipos de cosas que los servicios de aplicaciones hacen “en la red” y lo hacen mejor y con mayor efecto si lo hacen dentro del contexto del intercambio.

  • OMS
    Identifica al usuario. ¿Es un ser humano? Si es así, ¿corporativo o de consumo? ¿Es una cosa o otra aplicación? Si es así, ¿qué cosa y qué aplicación? Si bien mi bombilla inteligente puede tener acceso a una aplicación de informes de datos, no tiene acceso a los sistemas de contabilidad.
  • Qué
    ¿Qué están haciendo? ¿Enviando datos? ¿Solicitando datos? ¿Búsqueda? HTTP contiene una gran cantidad de datos que pueden ayudar a determinar esto sin tener que excavar demasiado profundo. ¿Es un HTTP POST o un GET? ¿ACTUALIZAR o ELIMINAR? El solo estado puede darnos pistas sobre el propósito de este intercambio.
  • Dónde
    ¿Desde donde lo hacen? ¿Están en casa? ¿En la sede? ¿Al otro lado de la calle en Starbucks o al otro lado del mundo? ¿En una red local o a través de Internet? La geolocalización es un medio popular para restringir el acceso a aplicaciones, recursos y datos. Al entregar aplicaciones a los usuarios, independientemente de su tipo, la ubicación es importante, en particular si existen políticas corporativas contra el acceso a ciertos tipos de datos o aplicaciones desde lugares públicos como el aeropuerto o el Starbucks local.
  • Cuando
    ¿Qué hora del día es? Y lo más importante, ¿qué hora del día es aquí y dónde se encuentra el usuario? ¿Están intentando acceder a un sistema a las 3 a. m. desde una ubicación donde son las 8 a. m.? Por ejemplo, sabemos por investigaciones que se ha observado que el tráfico de bots aumenta significativamente fuera del horario laboral, entre las 6 p. m. y las 9 p. m. Y podríamos juntar estos datos con “quién” y determinar instantáneamente que Alice debería estar trabajando a las 3 a. m. cuando trabaja en la sede corporativa.
  • Por qué
    ¿Por qué es como la capa 8 inexistente? Solo se puede inferir a partir de qué, y requiere que usted sea capaz de juntar pistas a partir de lo que de otro modo serían datos bastante básicos, como el URI (asumiendo que está basado en HTTP, lo cual, en estos días, es una suposición justa). Una vez que sabemos lo que están haciendo, como enviar datos, es posible que queramos saber por qué los envían. ¿Es una actualización de perfil o están enviando datos del sensor? ¿Están realizando una búsqueda o enviando un pedido?

Estos son los que constituyen el contexto. No es necesariamente el caso de que necesites recolectar los cinco (después de todo, no son Pokémon) para poder tomar una decisión sobre el curso de acción adecuado a seguir. Pero es necesario tener visibilidad (acceso) a los cinco, en caso de que lo hagas. Es por eso que la visibilidad de toda la pila de red, desde las capas 2 a la 7, es tan importante para los servicios de aplicaciones. Porque cada uno puede necesitar evaluar una solicitud o respuesta dentro del contexto en el que se realizó, y solo al tener visibilidad en la pila completa se garantiza que se puede acceder y obtener esa información cuando sea necesaria.

Esa es una de las cosas que aporta un proxy inteligente: la visibilidad necesaria para garantizar que los arquitectos (e ingenieros) de redes, seguridad e infraestructura puedan implementar políticas que requieran contexto para garantizar la seguridad, la velocidad y la confiabilidad que cada usuario (ya sea humano, sensor o software) necesita en última instancia.