Monday 19 December 2016

Nyse Arquitectura Del Sistema De Comercio


Algorithmic Trading System Architecture Anteriormente en este blog he escrito sobre la arquitectura conceptual de un sistema de negociación algorítmica inteligente, así como los requisitos funcionales y no funcionales de un sistema de trading algorítmico de producción. Desde entonces he diseñado una arquitectura de sistema que creo que podría satisfacer los requisitos arquitectónicos. En este post describiré la arquitectura siguiendo las directrices de los estándares ISO / IEC / IEEE 42010 y el estándar de descripción de arquitectura de ingeniería de software. De acuerdo con esta norma, una descripción de la arquitectura debe: • Contener múltiples vistas estandarizadas de arquitectura (por ejemplo, en UML) y • Mantener la trazabilidad entre las decisiones de diseño y los requisitos arquitectónicos Definición de la arquitectura de software Todavía no hay consenso sobre lo que es una arquitectura de sistemas. En el contexto de este artículo, se define como la infraestructura dentro de la cual se pueden especificar, desplegar y ejecutar componentes de aplicación que satisfacen requisitos funcionales. Los requisitos funcionales son las funciones esperadas del sistema y sus componentes. Los requisitos no funcionales son medidas a través de las cuales se puede medir la calidad del sistema. Un sistema que satisface plenamente sus requisitos funcionales puede todavía no satisfacer las expectativas si los requisitos no funcionales se dejan insatisfechos. Para ilustrar este concepto, considere el siguiente escenario: un sistema de negociación algorítmico que acaba de adquirir / construye hace excelentes decisiones comerciales, pero es completamente inoperable con las organizaciones de gestión de riesgos y sistemas de contabilidad. Este sistema satisface sus expectativas Arquitectura Conceptual Una visión conceptual describe conceptos y mecanismos de alto nivel que existen en el sistema en el nivel más alto de granularidad. A este nivel, el sistema de comercio algorítmico sigue una arquitectura impulsada por eventos (EDA) dividida en cuatro capas, y dos aspectos arquitectónicos. Para cada capa y aspecto se utilizan arquitecturas y patrones de referencia. Los patrones arquitectónicos son estructuras probadas y genéricas para lograr requisitos específicos. Los aspectos arquitectónicos son preocupaciones transversales que abarcan múltiples componentes. Arquitectura impulsada por eventos: una arquitectura que produce, detecta, consume y reacciona ante eventos. Los eventos incluyen movimientos del mercado en tiempo real, eventos o tendencias complejas y eventos comerciales, p. Presentar una orden. Este diagrama ilustra la arquitectura conceptual del sistema de comercio algorítmico. Arquitectura de referencia Para utilizar una analogía, una arquitectura de referencia es similar a los planos para una pared portante. Esta impresión azul puede ser reutilizada para diseños de edificios múltiples, independientemente de qué edificio se está construyendo, ya que satisface un conjunto de requisitos comunes. De manera similar, una arquitectura de referencia define una plantilla que contiene estructuras genéricas y mecanismos que pueden usarse para construir una arquitectura de software concreta que satisface requisitos específicos. La arquitectura para el sistema de comercio algorítmico utiliza una arquitectura basada en el espacio (SBA) y un controlador de vista de modelo (MVC) como referencias. También se utilizan buenas prácticas, como el almacén de datos operativos (ODS), el patrón de transformación y carga de extracciones (ETL) y un almacén de datos (DW). Controlador de vista de modelo: un patrón que separa la representación de la información de la interacción del usuario con ella. Arquitectura basada en el espacio: especifica una infraestructura en la que las unidades de procesamiento ligeramente acopladas interactúan entre sí a través de una memoria asociativa compartida llamada espacio (se muestra a continuación). Vista estructural La vista estructural de una arquitectura muestra los componentes y subcomponentes del sistema de negociación algorítmica. También muestra cómo se implementan estos componentes en la infraestructura física. Los diagramas UML utilizados en esta vista incluyen diagramas de componentes y diagramas de implementación. A continuación se muestra la galería de los diagramas de despliegue del sistema de negociación algorítmica global y las unidades de procesamiento en la arquitectura de referencia SBA, así como diagramas de componentes relacionados para cada una de las capas. Tácticas arquitectónicas Según el instituto de ingeniería de software una táctica arquitectónica es un medio de satisfacer un requisito de calidad mediante la manipulación de algunos aspectos de un modelo de atributos de calidad a través de decisiones de diseño arquitectónico. Un ejemplo sencillo utilizado en la arquitectura del sistema de negociación algorítmica es la manipulación de un almacén de datos operativos (ODS) con un componente de consulta continua. Este componente analizaría continuamente las ODS para identificar y extraer eventos complejos. Las siguientes tácticas se utilizan en la arquitectura: El patrón disruptor en el evento y las colas de orden Memoria compartida para el evento y las colas de orden Lenguaje de consulta continua (CQL) en el ODS Filtrado de datos con el patrón de diseño del filtro en los datos entrantes Algoritmos de evitación de congestión en todos (AQM) y notificación de congestión explícita Recursos de computación de productos básicos con capacidad de actualización (escalable) Redundancia activa para todos los puntos de falla individuales Indexación y estructuras de persistencia optimizadas en el ODS Programar scripts regulares de copia de seguridad y limpieza de datos ODS Historial de transacciones en todas las bases de datos Checksums para todos los pedidos para detectar fallos Anotar eventos con marcas de tiempo para omitir eventos antiguos Reglas de validación de orden, por ejemplo Cantidades máximas de comercio Componentes automatizados de comerciantes utilizan una base de datos en memoria para el análisis Autenticación de dos etapas para interfaces de usuario que se conectan a los ATs Cifrado en interfaces de usuario y conexiones a los ATs Patrón de diseño de observador para MVC para gestionar vistas La lista anterior son sólo unos pocos diseño Decisiones que identifiqué durante el diseño de la arquitectura. No es una lista completa de las tácticas. A medida que se está desarrollando el sistema, se deben emplear tácticas adicionales a través de múltiples niveles de granularidad para satisfacer requisitos funcionales y no funcionales. A continuación se muestran tres diagramas que describen el patrón de diseño del disruptor, el patrón de diseño del filtro y el componente de consulta continua. Vista de Comportamiento Esta vista de una arquitectura muestra cómo los componentes y las capas deben interactuar entre sí. Esto es útil cuando se crean escenarios para probar diseños de arquitectura y para entender el sistema de extremo a extremo. Esta vista consiste en diagramas de secuencia y diagramas de actividad. A continuación se muestran diagramas de actividades que muestran el proceso interno de los sistemas de negociación algorítmica y cómo se supone que los comerciantes interactúan con el sistema de comercio algorítmico. Tecnologías y marcos El paso final en el diseño de una arquitectura de software es identificar posibles tecnologías y marcos que podrían ser utilizados para realizar la arquitectura. Como principio general es mejor aprovechar las tecnologías existentes, siempre que satisfagan adecuadamente los requisitos tanto funcionales como no funcionales. Un marco es una arquitectura de referencia realizada, p. JBoss es un framework que realiza la arquitectura de referencia JEE. Las siguientes tecnologías y marcos son interesantes y deben ser considerados al implementar un sistema de trading algorítmico: CUDA - NVidia tiene una serie de productos que soportan el modelado de finanzas computacionales de alto rendimiento. Uno puede lograr hasta 50x mejoras de rendimiento en la ejecución de simulaciones de Monte Carlo en la GPU en lugar de la CPU. Apache River - River es un kit de herramientas usado para desarrollar sistemas distribuidos. Se ha utilizado como un marco para la construcción de aplicaciones basadas en el patrón SBA Apache Hadoop - en el caso de que el registro generalizado es un requisito, entonces el uso de Hadoop ofrece una solución interesante para el problema de los grandes datos. Hadoop se puede implementar en un entorno de clúster que admita tecnologías CUDA. AlgoTrader - una plataforma de trading algorítmica de código abierto. AlgoTrader podría potencialmente ser desplegado en el lugar de los componentes automatizados del comerciante. FIX Engine - una aplicación independiente que admite los protocolos de intercambio de información financiera (FIX) incluyendo FIX, FAST y FIXatdl. Aunque no es una tecnología o un marco, los componentes deben ser construidos con una interfaz de programación de aplicaciones (API) para mejorar la interoperabilidad del sistema y sus componentes. Conclusión La arquitectura propuesta ha sido diseñada para satisfacer requisitos muy genéricos identificados para los sistemas de negociación algorítmica. En general, los sistemas de negociación algorítmica se complican por tres factores que varían con cada implementación: Dependencias de la empresa externa y sistemas de intercambio Desafiar los requisitos no funcionales y Evolucionar restricciones arquitectónicas Por lo tanto, la arquitectura de software propuesta debe adaptarse caso por caso para Para satisfacer requisitos organizativos y normativos específicos, así como para superar las limitaciones regionales. La arquitectura del sistema de trading algorítmico debe ser visto como un punto de referencia para individuos y organizaciones que desean diseñar sus propios sistemas de trading algorítmicos. Para obtener una copia completa y las fuentes utilizadas, descargue una copia de mi informe. Gracias. TagsInformación especial: Infraestructura de comercio en línea Una arquitectura comercial exitosa Los intercambios en línea facilitan transacciones más rápidas proporcionando portales comerciales en línea y casas de corretaje facilidad y flexibilidad. Heres un vistazo a la infraestructura básica de NSE, BSE, y algunos portales comerciales. Por Soutiman Das Gupta Como prometido por visionarios de la tecnología y los grupos de pronóstico en la última década, Internet ha abierto nuevas vías para la realización de negocios. Las bolsas de todo el mundo ahora llevan a cabo una gran parte de su negocio en línea a través de sus corredores y socios, un cambio importante del método tradicional. En los países desarrollados, casi todas las transacciones de cambio se realizan en línea. La tendencia ha aumentado lentamente en la India y dos de las bolsas más grandes, la Bolsa Nacional de Valores (NSE) y la Bolsa de Valores de Bombay (BSE) han estado llevando a cabo el comercio en línea con éxito desde hace algún tiempo. Por qué tarde los intercambios de la India y las casas de corretaje han sido lentos para mover sus transacciones en línea. Esto se ha debido principalmente a las regulaciones gubernamentales. Hubo un retraso inicial en el establecimiento de especificaciones para la creación de Grupos de Usuarios Cerrados (CUGs). La cuestión se resolvió entre el Departamento de Finanzas y el Ministerio de Hacienda alrededor de 1998 y pronto surgieron portales comerciales como ICICIDirect, motilaloswal y smartjones. La conectividad fue quizás el factor tecnológico más importante. El coste de las líneas arrendadas y de los enlaces VSAT ha sido tradicionalmente muy elevado y la fiabilidad de los enlaces ha sido baja. También tomó mucho tiempo encargar los acoplamientos pues uno tuvo que hacer una aplicación y esperar algunas semanas para que el acoplamiento esté para arriba y funcionando. Otras cuestiones como la seguridad y los costos de procedimientos de copia de seguridad y recuperación también fueron disuasivos. Afortunadamente, junto con la resolución de los problemas de regulación, la India ya no tiene problemas de conectividad y ancho de banda. Con la entrada de actores privados en el escenario de banda ancha y el gobierno abriendo el sector de las telecomunicaciones, estas cuestiones son casi inexistentes. Soluciones de seguridad y servicios disponibles en el mercado han madurado y no cuesta un bonito paquete más para poner una solución de copia de seguridad simple en su lugar. Anatomía de un intercambio en línea El comercio en línea implica grandes volúmenes de datos que se transacionan todos los días. A modo de ejemplo, en la BSE, la facturación media diaria en 2001-2002 (abril-marzo) fue de 1244,10 rupias crore y el número de transacciones diarias promedio fue de Rs 5,17 lakh. A esto se suman las estrictas normas RBI que obligan a las empresas a almacenar al menos 7 años de datos transaccionales y financieros. Diseño Necesita estar siempre encendido, seguro, redundante y tener procesos adecuados de copia de seguridad y recuperación. Almacenamiento Para grandes cantidades de datos críticos es natural desplegar almacenamiento basado en red como NAS o SAN. Seguridad La seguridad es una parte vital e integral de la arquitectura de diseño. Los elementos de hardware y software deben estar construidos alrededor de una arquitectura de seguridad en capas y deben mantenerse en su lugar con una política de seguridad bien documentada. Disponibilidad Idealmente los intercambios en línea deben tener disponibilidad de cinco-nueves. Aplicaciones Su difícil implementación de las aplicaciones "out-of-the-box" en los intercambios ya que cada uno tiene una arquitectura única basada en factores como flujo de operaciones, volúmenes de negociación, número de miembros, número de usuarios y número de ubicaciones. Arquitecturas NSE ha implementado NIBIS (NSEs Internet Based Information System) para la difusión en tiempo real de información comercial a través de Internet y NEAT una aplicación cliente-servidor para ayudar a sus operaciones. BSE ha implementado un sistema OnLine Trading (BOLT) en una plataforma Tandem que tiene una arquitectura de dos niveles. Afirma ser capaz de soportar hasta 2 millones de operaciones al día. Intercambios de la India El NSE y la BSE se encuentran entre los mayores intercambios del país. Manejan volúmenes comerciales muy grandes diarios, apoyan grandes cantidades de tráfico de datos, y tienen una red nacional muy grande. Las cifras de volumen de negociación en ambos intercambios son enormes. La facturación media diaria en el segmento de mercados de capital de NSE es de alrededor de 2300 crore y en el segmento de derivados, alrededor de 1300 rupias. El volumen de tráfico diario promedio es de alrededor de un millón de operaciones por día en el segmento de mercados de capital y alrededor de 50.000 operaciones por día en el segmento de derivados. Hay alrededor de 13.000 usuarios registrados en ambos segmentos y un promedio de alrededor de 9500 usuarios se registran a la vez. En BSE la facturación diaria media en 2001-2002 (abril-marzo) era Rs 1244.10 crore y el número de oficios diarios medios era Rs 5.17 lakh. Diseño de red Es innecesario decir que cualquier intercambio en línea necesita ser siempre activo, seguro, redundante y tener procesos adecuados de copia de seguridad y recuperación. G. M Shenoy, VP, NSE-IT, habla sobre la filosofía de diseño de su intercambio en línea. El objetivo básico del diseño era proporcionar acceso justo, igual y transparente a través de todas nuestras ubicaciones a nivel nacional. Un aspecto importante era proporcionar conectividad a nuestros miembros comerciales tan pronto como sea posible. El sector de las telecomunicaciones es bastante liberal hoy en día. En 1993, la tecnología estaba madurando y era costosa. Las líneas arrendadas cuestan casi diez veces más que hoy. La tecnología satelital fue una bendición ya que permitió un despliegue más rápido que las líneas arrendadas. NSE ahora tiene la red VSAT más grande del país con más de 3000 VSATs y espera crecer más de 4000 VSAT pronto. Elementos de red Un vistazo a los volúmenes masivos de tráfico y volumen de tráfico es una prueba suficiente de la naturaleza crítica de los sistemas. Hace un estremecimiento pensar en las pérdidas esperadas en caso de un tiempo de inactividad de diez minutos cuando el comercio diario cruza Rs 3000 crore. Los elementos de red como el almacenamiento, la seguridad, los procesos de copia de seguridad y recuperación, la disponibilidad y las diferentes aplicaciones deben planearse cuidadosamente y encargarse. Entonces uno tiene que seguir regulaciones RBI rigurosas para almacenar por lo menos 7 años de datos transaccionales y financieros. Almacenamiento Para grandes cantidades de datos críticos es natural desplegar almacenamiento basado en red como NAS o SAN. NSE está implementando una SAN, ya que considera que sus volúmenes de datos han crecido fenomenalmente. Seguridad Esta debe ser una parte vital e integral de la arquitectura de diseño. Los elementos de hardware y software deben estar construidos alrededor de una arquitectura de seguridad en capas. Y debe mantenerse en su lugar con una política de seguridad bien documentada. Shenoy dice quotSecurity es el elemento más crucial en la red. Todas las aplicaciones se han construido con un enfoque consciente hacia la seguridad. Las políticas de seguridad están estrechamente integradas y regularmente examinadas para no dejar espacio para el compromiso. Todas las aplicaciones y sistemas operativos se endurecen periódicamente para la seguridad. Backup y recuperación Esto ha surgido como uno de los aspectos vitales de la continuidad del negocio. Cuando los intercambios en línea fueron diseñados hace unos años, tal vez no se hizo mucho énfasis en este aspecto, como lo es hoy. Sin embargo, no es difícil agregar procesos de continuidad de negocio a una red existente. Shenoy dice que, como respaldo a nuestra red VSAT, una red comercial basada en tierra se desplegó a mediados de 2000. Tenemos más de 850 líneas arrendadas que conectan nuestras ubicaciones a nivel nacional. Somos la única bolsa de valores en el país para tener un sitio de continuidad de negocio totalmente redundante en Chennai. quot Disponibilidad Idealmente los intercambios en línea deben tener disponibilidad de cinco-nueves. Los intercambios suelen preferir alojar su infraestructura internamente y no utilizar los servicios de un centro de datos externo. NSE pretende alcanzar un tiempo de actividad superior a 99,9. Esto se debe principalmente a los procedimientos internos formulados y la revisión continua de SLAs con los vendedores de hardware, dice Shenoy. Aplicaciones Su difícil implementación de las aplicaciones "out-of-the-box" en los intercambios ya que cada uno tiene una arquitectura única basada en factores como flujo de operaciones, volúmenes de negociación, número de miembros, número de usuarios y número de ubicaciones. Las aplicaciones como comercio, compensación, gestión de riesgos, vigilancia, cálculo de índices, listado, membresía y cuentas pueden desarrollarse internamente o por desarrolladores de software externos. Las dos grandes arquitecturas NSE y BSE, las dos grandes bolsas creen en la actualización y actualización de sus sistemas tecnológicos para mantener la entrega de acuerdo a compromisos y promesas hechas a sus miembros, socios y clientes. Arquitectura NSE - NEAT NSE ha implementado NIBIS (NSEs Internet Based Information System) para la difusión en tiempo real de información comercial a través de Internet y NEAT una aplicación cliente-servidor para ayudar a sus operaciones. NEAT almacena toda la información comercial en una base de datos en memoria en el extremo del servidor para lograr un tiempo de respuesta mínimo y una disponibilidad máxima del sistema para los usuarios. El software del servidor comercial se ejecuta en un mainframe tolerante a fallos STRATUS y el software cliente se ejecuta en PCs con Windows. La red de telecomunicaciones utiliza el protocolo X.25 y es la columna vertebral del sistema de comercio automatizado. Cada miembro comercial negocia en el NSE con otros miembros a través de un PC ubicado en la oficina de miembros comerciales. Los miembros comerciales en el segmento de mercado de deuda al por mayor están vinculados a la computadora central en NSE a través de líneas dedicadas de 64 Kbps y terminales VSAT. Estas líneas arrendadas se multiplexan utilizando enlaces dedicados de fibra óptica de 2 MB. Los participantes de WDM se conectan al sistema comercial a través de enlaces de acceso telefónico. El intercambio utiliza servidores Unix basados ​​en RISC de Digital y HP para el procesamiento de backoffice. Aplicaciones como Oracle 7 y SQL / Oracle Forms 4.5 front ends se utilizan para las funciones de intercambio. Arquitectura BSE - BOLT BSE ha implementado un sistema OnLine Trading (BOLT) el 14 de marzo de 1995. Funciona en una plataforma Tandem S74016 que se ejecuta en 16 CPUs. Las máquinas Tandem Himalaya S74016 actúan como el backend de más de 8000 estaciones de trabajo comerciales en red en Ethernet, VSAT y Managed Leased Data Network (MLDN). Los sistemas afirman manejar hasta dos millones de operaciones al día. BOLT tiene una arquitectura de dos niveles. Las estaciones de trabajo comerciante están conectadas directamente al servidor backend que actúa como un servidor de comunicaciones y un Central Trading Engine (CTE). Otros servicios como la diseminación de información, cálculo de índices y monitoreo de posición también son proporcionados por el sistema. Una instalación de supervisión de transacciones en la arquitectura Tandem ayuda a mantener la integridad de datos a través de SQL sin parar. Con la ayuda de MTNL, BSE ha configurado una Red MLDN que comprende 300 líneas de 2 Mbps y 1500 líneas de 64 Kbps que conectan todas las bolsas regionales y oficinas en Mumbai. El acceso a información relacionada con el mercado a través de las estaciones de trabajo de comerciantes es esencial para que los participantes del mercado actúen en tiempo real y tomen decisiones instantáneas. BOLT ha sido interconectado con varios vendedores de información como Bloomberg, Bridge y Reuters. La información de mercado se suministra a las agencias de noticias en tiempo real. El intercambio planea mejorar las capacidades para tener un flujo de información bidireccional integrado. Portales comerciales en línea El comercio en línea es la actividad de inversión que se lleva a cabo a través de Internet sin la inclusión física del corredor. Un usuario final (inversor) tiene que registrarse con un portal de comercio en línea como ICICdirect, motilaloswal, smartjones y sharekhan. El inversor, por lo tanto, llega a un acuerdo con la empresa para negociar en diferentes valores de acuerdo con los términos y condiciones enumerados en el acuerdo. Dado que los servidores del portal de comercio en línea están conectados todo el tiempo a las bolsas de valores y bancos designados, el procesamiento de pedidos se realiza en tiempo real. Los inversores también pueden obtener actualizaciones sobre el comercio y comprobar el estado de sus pedidos, ya sea a través de correo electrónico oa través de la interfaz. Diseño del portal Harish Malhotra, director de tecnología de Motilal Oswal Securities Limited, dice que el portal debe ser fácil de navegar, lleno de información útil y relevante que está disponible con el menor número de clics, y debe ser personalizado. Sin embargo, un aspecto muy importante Es que los sistemas deben ser capaces de interactuar directamente con el de los intercambios en línea sin problemas de incompatibilidad. ICICIdirect utiliza encriptación de 128 bits habilitada para asegurar que la información transmitida a través de Internet es segura y no puede ser accesada por un tercero. Los usuarios suelen tener opciones para vincular sus cuentas bancarias, cuentas Demat y cuentas de corretaje en una única interfaz. También hay una ventana única para todos los intercambios y una sola pantalla para el mecanismo completo de enrutamiento de pedidos. El hardware utilizado comprende servidores Web y de aplicaciones, conmutadores, routers, firewalls y dispositivos de seguridad, y dispositivos especializados. Motilaloswal utiliza servidores Compaq para aplicaciones y bases de datos, enrutadores Cisco y cortafuegos de Checkpoint. Los sistemas han sido personalizados por su equipo interno. Las aplicaciones comerciales son subcontratadas. También tenemos un almacenamiento sin conexión que se copia periódicamente en lugares separados, dice Harish. Portal de éxito El éxito de un portal de comercio definitivamente dependerá de su ramo de servicios para un usuario final. La mayoría de los portales cobran una pequeña cuota de registro y corretaje basado en diversas condiciones. Sin embargo, es importante que la organización se mantenga enfocada en los servicios centrados en el cliente y en los modelos de entrega para que realmente disfruten de la mayor atención. Trading Floor Architecture PISO DE TRABAJO Arquitectura Resumen Ejecutivo Una mayor competencia, mayor volumen de datos de mercado y nuevas demandas regulatorias son algunas de las fuerzas motrices Detrás de los cambios en la industria. Las empresas están tratando de mantener su ventaja competitiva mediante el constante cambio de sus estrategias comerciales y el aumento de la velocidad de la negociación. Una arquitectura viable tiene que incluir las últimas tecnologías tanto de la red como de los dominios de aplicación. Tiene que ser modular para proporcionar una ruta manejable para evolucionar cada componente con la interrupción mínima al sistema total. Por lo tanto, la arquitectura propuesta por este documento se basa en un marco de servicios. Examinamos servicios como mensajería de latencia ultrabaja, supervisión de latencia, multidifusión, computación, almacenamiento, virtualización de datos y aplicaciones, capacidad de negociación, movilidad comercial y cliente ligero. La solución a los complejos requisitos de la plataforma comercial de próxima generación debe ser construida con una mentalidad holística, cruzando los límites de los silos tradicionales como el negocio y la tecnología o aplicaciones y redes. Este objetivo principal de los documentos es proporcionar directrices para la construcción de una plataforma de negociación de latencia ultra baja, mientras que la optimización de la velocidad de procesamiento y de mensajes sin procesar para los datos de mercado y las órdenes de comercio FIX. Para ello, proponemos las siguientes tecnologías de reducción de latencia: Conectividad de alta velocidadInfiniBand o conectividad de 10 Gbps para el cluster de negociación Bus de mensajería de alta velocidad Aceleración de aplicaciones a través de RDMA sin re-código de aplicación Monitorización de latencia en tiempo real y reorientación de Comercio de tráfico a la ruta con una latencia mínima Tendencias y desafíos de la industria Las arquitecturas comerciales de última generación tienen que responder a las crecientes demandas de velocidad, volumen y eficiencia. Por ejemplo, se espera que el volumen de datos de mercado de opciones se duplique después de la introducción de las opciones de comercio de peniques en 2007. También hay demandas regulatorias para la mejor ejecución, que requieren actualizaciones de precios de manipulación a tasas que se acercan a 1M msg / s. Para intercambios. También requieren visibilidad de la frescura de los datos y la prueba de que el cliente tiene la mejor ejecución posible. A corto plazo, la velocidad de la negociación y la innovación son factores clave de diferenciación. Un número creciente de transacciones se manejan mediante aplicaciones de negociación algorítmica situadas lo más cerca posible del lugar de ejecución del comercio. Un desafío con estos motores de negociación de caja negra es que se compone el aumento de volumen mediante la emisión de órdenes sólo para cancelarlos y volver a presentarlos. La causa de este comportamiento es la falta de visibilidad en qué lugar ofrece la mejor ejecución. El comerciante humano es ahora un ingeniero quotfinancial, quotquantquot (analista cuantitativo) con habilidades de programación, que puede ajustar los modelos de comercio sobre la marcha. Las empresas desarrollan nuevos instrumentos financieros como los derivados del tiempo o los intercambios de clase de activos cruzados y necesitan implementar las nuevas aplicaciones de forma rápida y escalable. A largo plazo, la diferenciación competitiva debe proceder del análisis, no sólo del conocimiento. Los comerciantes estrella de mañana asumen el riesgo, logran la verdadera percepción del cliente y constantemente superan el mercado (fuente IBM: www-935.ibm/services/us/imc/pdf/ge510-6270-trader. pdf). La resiliencia del negocio ha sido una de las principales preocupaciones de las empresas comerciales desde el 11 de septiembre de 2001. Las soluciones en esta área abarcan desde centros de datos redundantes situados en diferentes geografías y conectados a múltiples centros de negociación a soluciones de comerciante virtual que ofrecen a los comerciantes de energía la mayor parte de la funcionalidad de una planta comercial En una ubicación remota. El sector de los servicios financieros es uno de los más exigentes en términos de requisitos de TI. La industria está experimentando un cambio arquitectónico hacia la arquitectura orientada a servicios (SOA), los servicios Web y la virtualización de los recursos de TI. SOA aprovecha el aumento de la velocidad de red para permitir la vinculación dinámica y la virtualización de componentes de software. Esto permite la creación de nuevas aplicaciones sin perder la inversión en sistemas e infraestructura existentes. El concepto tiene el potencial de revolucionar la forma en que se realiza la integración, permitiendo reducciones significativas en la complejidad y costo de tal integración (gigaspaces / download / MerrilLynchGigaSpacesWP. pdf). Otra tendencia es la consolidación de los servidores en las granjas de servidores de centros de datos, mientras que las mesas de comerciantes sólo tienen extensiones KVM y clientes ultrafinos (por ejemplo, soluciones blade de SunRay y HP). Las redes de área metropolitana de alta velocidad permiten que los datos de mercado se difundan entre diferentes ubicaciones, permitiendo la virtualización de la planta de negociación. Arquitectura de alto nivel La Figura 1 muestra la arquitectura de alto nivel de un entorno comercial. La planta ticker y los motores de negociación algorítmica se encuentran en el cluster de alto rendimiento en el centro de datos de las empresas o en el intercambio. Los comerciantes humanos se encuentran en el área de aplicaciones de usuario final. Funcionalmente hay dos componentes de aplicación en el entorno empresarial de comercio, editores y suscriptores. El bus de mensajería proporciona la ruta de comunicación entre editores y suscriptores. Existen dos tipos de tráfico específicos para un entorno comercial: Información de precios de Market DataCarries para instrumentos financieros, noticias y otra información de valor agregado como análisis. Es unidireccional y muy sensible a la latencia, normalmente entregado a través de UDP multicast. Se mide en actualizaciones / seg. Y en Mbps. Los datos de mercado fluyen de uno o varios feeds externos, procedentes de proveedores de datos de mercado como bolsas de valores, agregadores de datos y ECN. Cada proveedor tiene su propio formato de datos de mercado. Los datos son recibidos por manipuladores de alimentación, aplicaciones especializadas que normalizan y limpian los datos y luego los envían a los consumidores de datos, como motores de fijación de precios, aplicaciones de negociación algorítmica o comerciantes humanos. Las firmas de venta también envían los datos de mercado a sus clientes, las firmas de buy-side tales como fondos mutuos, hedge funds y otros gestores de activos. Algunas firmas compradoras pueden optar por recibir alimentos directos de los intercambios, lo que reduce la latencia. Figura 1 Arquitectura de comercio para una empresa de lado de compra / de venta No hay un estándar de la industria para formatos de datos de mercado. Cada intercambio tiene su formato propietario. Los proveedores de contenido financiero como Reuters y Bloomberg agregan diferentes fuentes de datos de mercado, lo normalizan y agregan noticias o análisis. Ejemplos de feeds consolidados son RDF (Feed de Datos de Reuters), RWF (Formato de Wire de Reuters) y Datos de Servicios Profesionales de Bloomberg. Para entregar datos de mercado de menor latencia, ambos proveedores han lanzado datos de mercado en tiempo real que son menos procesados ​​y tienen menos análisis: Bloomberg B-Pipe Con B-Pipe, Bloomberg desacopla su feed de datos de mercado de su plataforma de distribución porque un terminal Bloomberg No es necesario para obtener B-Pipe. Wombat y Reuters Feed Handlers han anunciado su apoyo a B-Pipe. Una empresa puede decidir recibir alimentos directamente de un intercambio para reducir la latencia. Las ganancias en velocidad de transmisión pueden estar entre 150 milisegundos a 500 milisegundos. Estos alimentos son más complejos y más caros y la empresa tiene que construir y mantener su propia planta de ticker (financetech / featured / showArticle. jhtmlarticleID60404306). Órdenes de compra Este tipo de tráfico lleva los oficios reales. Es bidireccional y muy sensible a la latencia. Se mide en mensajes / seg. Y Mbps. Las órdenes se originan de un lado de la compra o de la firma lateral de la venta y se envían a los lugares de negociación como un intercambio o ECN para la ejecución. El formato más común para el transporte de pedidos es FIX (Información Financiera eXchangefixprotocol. org/). Las aplicaciones que manejan mensajes FIX se denominan motores FIX e interactúan con sistemas de gestión de pedidos (OMS). Una optimización de FIX se llama FAST (Fix Adapted for Streaming), que utiliza un esquema de compresión para reducir la longitud del mensaje y, en efecto, reducir la latencia. FAST se orienta más a la entrega de datos de mercado y tiene el potencial de convertirse en un estándar. FAST también puede utilizarse como un esquema de compresión para formatos de datos de mercado propietarios. Para reducir la latencia, las empresas pueden optar por establecer acceso directo al mercado (DMA). DMA es el proceso automatizado de encaminamiento de una orden de valores directamente a un lugar de ejecución, evitando así la intervención de un tercero (towergroup / research / content / glossary. jsppage1ampglossaryId383). DMA requiere una conexión directa con el lugar de ejecución. El bus de mensajería es software middleware de proveedores como Tibco, 29West, Reuters RMDS o una plataforma de código abierto como AMQP. El bus de mensajería utiliza un mecanismo confiable para entregar mensajes. El transporte se puede realizar a través de TCP / IP (TibcoEMS, 29West, RMDS y AMQP) o UDP / multicast (TibcoRV, 29West y RMDS). Un concepto importante en la distribución de mensajes es el flujo quototópico, que es un subconjunto de datos de mercado definido por criterios tales como símbolo de ticker, industria o una cierta canasta de instrumentos financieros. Los suscriptores se unen a grupos de temas asignados a uno o varios subtemas para recibir sólo la información relevante. En el pasado, todos los comerciantes recibieron todos los datos del mercado. En los volúmenes actuales de tráfico, esto sería subóptimo. La red desempeña un papel crítico en el entorno comercial. Los datos de mercado se llevan a la planta de negociación donde los comerciantes humanos están ubicados a través de una red de alta velocidad del Campus o Metro Area. La alta disponibilidad y la baja latencia, así como el alto rendimiento, son las métricas más importantes. El entorno comercial de alto rendimiento tiene la mayoría de sus componentes en la granja de servidores del Centro de datos. Para minimizar la latencia, los motores de negociación algorítmica necesitan ubicarse en la proximidad de los controladores de alimentación, motores FIX y sistemas de gestión de pedidos. Un modelo de despliegue alternativo tiene los sistemas de negociación algorítmicos ubicados en un intercambio o un proveedor de servicios con conectividad rápida a múltiples intercambios. Modelos de implementación Hay dos modelos de implementación para una plataforma de negociación de alto rendimiento. Las empresas pueden optar por tener una mezcla de los dos: Centro de datos de la empresa comercial (Figura 2) Este es el modelo tradicional, donde una plataforma de comercio de pleno derecho es desarrollado y mantenido por la empresa con enlaces de comunicación a todas las sedes de negociación. La latencia varía con la velocidad de los enlaces y el número de saltos entre la empresa y los lugares. Figura 2 Modelo tradicional de implantación Co-ubicación en el lugar de negociación (intercambios, proveedores de servicios financieros (FSP)) (Figura 3) La empresa comercial implementa su plataforma de negociación automatizada lo más cerca posible de los lugares de ejecución para minimizar la latencia. Figura 3 Arquitectura de comercio orientada a servicios de modelo de despliegue alojado Estamos proponiendo un marco orientado a servicios para construir la arquitectura comercial de próxima generación. Este enfoque proporciona un marco conceptual y una ruta de implementación basada en la modularización y la minimización de las interdependencias. Este marco proporciona a las empresas una metodología para: Evaluar su estado actual en términos de servicios Priorizar los servicios basados ​​en su valor para el negocio Evolucionar la plataforma de negociación al estado deseado utilizando un enfoque modular La arquitectura de alto rendimiento comercial se basa en los siguientes servicios, Definido por el marco de arquitectura de servicios representado en la Figura 4. Figura 4 Arquitectura de la arquitectura de servicio para el servicio de mensajería de latencia ultrabaja de servicio de alto rendimiento Este servicio es proporcionado por el bus de mensajería, que es un sistema de software que resuelve el problema de conectar muchos - Muchas aplicaciones. El sistema consta de: Un conjunto de esquemas de mensajes predefinidos Un conjunto de mensajes de comandos comunes Una infraestructura de aplicación compartida para enviar los mensajes a los destinatarios. La infraestructura compartida puede basarse en un intermediario de mensajes o en un modelo de publicación / suscripción. Los requisitos clave para el bus de mensajería de próxima generación son (fuente 29West): La menor latencia posible (por ejemplo, menos de 100 microsegundos) Estabilidad bajo carga pesada (por ejemplo, más de 1,4 millones de msg / s) Control y flexibilidad (control de velocidad y transportes configurables ) Hay esfuerzos en la industria para estandarizar el bus de mensajería. Advanced Message Queuing Protocol (AMQP) es un ejemplo de un estándar abierto defendido por J. P. Morgan Chase y apoyado por un grupo de vendedores como Cisco, Envoy Technologies, Red Hat, TWIST Process Innovations, Iona, 29West e iMatix. Dos de los objetivos principales son proporcionar un camino más simple a la interoperabilidad para las aplicaciones escritas en diferentes plataformas y modularidad para que el middleware pueda evolucionar fácilmente. En términos muy generales, un servidor AMQP es análogo a un servidor de correo electrónico con cada intercambio actuando como un agente de transferencia de mensajes y cada cola de mensajes como un buzón. Los enlaces definen las tablas de enrutamiento en cada agente de transferencia. Los editores envían mensajes a agentes de transferencia individuales que, a continuación, encaminan los mensajes a buzones. Los consumidores toman mensajes de buzones, lo que crea un modelo potente y flexible que es simple (fuente: amqp. org/tikiwiki/tiki-index. phppageOpenApproachWhyAMQP). Latencia Servicio de monitoreo Los requisitos principales para este servicio son: Granulometría de milisegundos de mediciones Visibilidad casi en tiempo real sin agregar latencia al tráfico comercial Capacidad para diferenciar latencia de procesamiento de aplicaciones de latencia de tránsito de red Capacidad para manejar altas tasas de mensajes Proporcionar una interfaz programática para Intercambiar aplicaciones para recibir datos de latencia, permitiendo así que los motores de negociación algorítmicos se adapten a las condiciones cambiantes. Correlación de eventos de red con eventos de aplicación para propósitos de resolución de problemas. Latencia se puede definir como el intervalo de tiempo entre cuándo se envía una orden comercial y cuándo se reconoce y actúa el mismo pedido Por la parte receptora. Abordar el problema de latencia es un problema complejo, que requiere un enfoque holístico que identifica todas las fuentes de latencia y aplica diferentes tecnologías en diferentes capas del sistema. La Figura 5 representa la variedad de componentes que pueden introducir latencia en cada capa de la pila OSI. También mapea cada fuente de latencia con una posible solución y una solución de monitoreo. Este enfoque en capas puede dar a las empresas una forma más estructurada de atacar el problema de latencia, por lo que cada componente puede ser pensado como un servicio y tratado de forma coherente en toda la empresa. El mantenimiento de una medida precisa del estado dinámico de este intervalo de tiempo en rutas alternativas y destinos puede ser de gran ayuda en las decisiones comerciales tácticas. La capacidad de identificar la ubicación exacta de los retrasos, ya sea en la red de bordes de clientes, en el centro de procesamiento central o en el nivel de aplicación de transacciones, determina de manera significativa la capacidad de los proveedores de servicios para cumplir con sus acuerdos de nivel de servicio comercial (SLA). Para los formularios buy-side y sell-side, así como para los sindicadores de datos de mercado, la rápida identificación y eliminación de los cuellos de botella se traduce directamente en mayores oportunidades de comercio e ingresos. Figura 5 Arquitectura de gestión de latencia Herramientas de supervisión de baja latencia de Cisco Las herramientas de supervisión de red tradicionales funcionan con granularidad de minutos o segundos. Las plataformas de negociación de próxima generación, especialmente las que soportan el comercio algorítmico, requieren latencias inferiores a 5 ms y niveles extremadamente bajos de pérdida de paquetes. En una LAN Gigabit, una microburst de 100 ms puede causar que 10.000 transacciones se pierdan o se retrasen excesivamente. Cisco ofrece a sus clientes una variedad de herramientas para medir la latencia en un entorno comercial: BQM (OEM from Corvil) Administrador de calidad de ancho de banda (BQM) 4.0 de Cisco AON Un producto de gestión de rendimiento de aplicaciones de red de próxima generación que permite a los clientes supervisar y suministrar a su red niveles controlados de latencia y rendimiento de pérdidas. Aunque BQM no está dirigido exclusivamente a las redes comerciales, su visibilidad de microsegundos combinada con características inteligentes de aprovisionamiento de ancho de banda lo hacen ideal para estos entornos exigentes. Cisco BQM 4.0 implementa un amplio conjunto de tecnologías de medición de tráfico y de análisis de tráfico patentadas y pendientes de patente que proporcionan al usuario una visibilidad y una comprensión sin precedentes de cómo optimizar la red para obtener el máximo rendimiento de la aplicación. Cisco BQM ahora es compatible con la familia de productos de Cisco Application Deployment Engine (ADE). La familia de productos ADE de Cisco es la plataforma preferida para las aplicaciones de administración de redes de Cisco. BQM Beneficios La micro-visibilidad de Cisco BQM es la capacidad de detectar, medir y analizar la latencia, el jitter y la pérdida que inducen eventos de tráfico hasta niveles de microsegundos de granularidad con resolución por paquete. Esto permite a Cisco BQM detectar y determinar el impacto de los eventos de tráfico en la latencia de la red, la fluctuación de fase y la pérdida. Es fundamental para los entornos comerciales que BQM pueda soportar mediciones de latencia, pérdida y jitter de una sola vía para el tráfico TCP y UDP (multicast). Esto significa que informa de forma transparente tanto para el tráfico comercial como para los feeds de datos del mercado. BQM permite al usuario especificar un conjunto completo de umbrales (contra la actividad de microburst, latencia, pérdida, fluctuación, utilización, etc.) en todas las interfaces. BQM entonces opera una captura de paquete de rodaje de fondo. Cada vez que se produce una violación de umbral u otro evento de degradación del rendimiento potencial, activa el Cisco BQM para almacenar la captura de paquetes en el disco para su análisis posterior. Esto permite al usuario examinar en detalle tanto el tráfico de la aplicación que se ve afectado por la degradación del rendimiento (quotthe víctimas) como el tráfico que causó la degradación del rendimiento (quotthe culpritsquot). Esto puede reducir significativamente el tiempo dedicado a diagnosticar y resolver problemas de rendimiento de la red. BQM también es capaz de proporcionar detalladas ancho de banda y calidad de servicio (QoS) recomendaciones de aprovisionamiento de políticas, que el usuario puede aplicar directamente para lograr el rendimiento de la red deseada. Mediciones de BQM ilustradas Para entender la diferencia entre algunas de las técnicas de medición más convencionales y la visibilidad proporcionada por BQM, podemos ver algunos gráficos de comparación. En el primer conjunto de gráficos (Figura 6 y Figura 7), vemos la diferencia entre la latencia medida por BQMs Passive Network Quality Monitor (PNQM) y la latencia medida inyectando paquetes ping cada 1 segundo en el flujo de tráfico. En la Figura 6 vemos la latencia reportada por paquetes de ping de ICMP de 1 segundo para el tráfico de red real (se divide por 2 para dar una estimación para el retardo unidireccional). Muestra el retardo cómodamente por debajo de aproximadamente 5ms durante casi todo el tiempo. Figura 6 Latencia reportada por paquetes de ping de 1 segundo ICMP para tráfico de red real En la figura 7, vemos la latencia reportada por PNQM para el mismo tráfico al mismo tiempo. Aquí vemos que al medir la latencia unidireccional de los paquetes de aplicación reales, obtenemos una imagen radicalmente diferente. Aquí se observa que la latencia fluctúa alrededor de 20 ms, con ráfagas ocasionales mucho más altas. La explicación es que debido a que ping está enviando paquetes sólo cada segundo, está perdiendo completamente la mayor parte de la latencia del tráfico de la aplicación. De hecho, los resultados de ping normalmente sólo indican retardo de propagación de ida y vuelta en lugar de latencia de aplicación realista en la red. En el segundo ejemplo (Figura 8), vemos la diferencia en la carga de enlace o niveles de saturación entre una vista promedio de 5 minutos y una vista de microburst de 5 ms (BQM puede informar sobre los microbursts hacia abajo A aproximadamente 10-100 nanosecond exactitud). La línea verde muestra que la utilización media en promedios de 5 minutos es baja, tal vez hasta 5 Mbits / s. La trama azul oscuro muestra la actividad de microburst de 5 ms que alcanza entre 75 Mbits / s y 100 Mbits / s, la velocidad LAN de forma eficaz. BQM muestra este nivel de granularidad para todas las aplicaciones y también proporciona reglas claras de aprovisionamiento para permitir al usuario controlar o neutralizar estos microbursts. Figura 8 Diferencia en la carga de enlace reportada entre una vista promedio de 5 minutos y una vista de microburst de 5 ms Despliegue BQM en la red comercial La Figura 9 muestra un despliegue BQM típico en una red comercial. Figura 9 Despliegue típico de BQM en una red comercial BQM se puede utilizar para responder a este tipo de preguntas: Alguno de mis enlaces LAN de Gigabit saturados durante más de X milisegundos Esto está causando pérdidas Qué enlaces se beneficiarían más de una actualización a Etherchannel o 10 Gigabit velocidades Qué tráfico de la aplicación está causando la saturación de mis enlaces de 1 Gigabit Alguno de los datos de mercado experimentan pérdida de extremo a extremo Cuánta latencia adicional hace la experiencia del centro de datos de conmutación por error Es este enlace correctamente clasificado para hacer frente a micro - Obtener actualizaciones de baja latencia de la capa de distribución de datos de mercado Están viendo cualquier retraso mayor de X milisegundos Ser capaz de responder a estas preguntas de forma sencilla y eficaz ahorra tiempo y dinero en el funcionamiento de la red comercial. BQM es una herramienta esencial para obtener visibilidad en los mercados de datos y entornos comerciales. Proporciona mediciones de latencia de extremo a extremo granular en infraestructuras complejas que experimentan movimientos de datos de alto volumen. La detección efectiva de microburbujas en niveles de sub-milisegundos y la recepción de análisis de expertos sobre un evento en particular es invaluable para los arquitectos de la planta comercial. Las recomendaciones de aprovisionamiento de ancho de banda inteligente, como el dimensionamiento y el análisis de análisis, proporcionan mayor agilidad para responder a condiciones volátiles del mercado. As the explosion of algorithmic trading and increasing message rates continues, BQM, combined with its QoS tool, provides the capability of implementing QoS policies that can protect critical trading applications. Cisco Financial Services Latency Monitoring Solution Cisco and Trading Metrics have collaborated on latency monitoring solutions for FIX order flow and market data monitoring. Cisco AON technology is the foundation for a new class of network-embedded products and solutions that help merge intelligent networks with application infrastructure, based on either service-oriented or traditional architectures. Trading Metrics is a leading provider of analytics software for network infrastructure and application latency monitoring purposes (tradingmetrics/ ). The Cisco AON Financial Services Latency Monitoring Solution (FSMS) correlated two kinds of events at the point of observation: Network events correlated directly with coincident application message handling Trade order flow and matching market update events Using time stamps asserted at the point of capture in the network, real-time analysis of these correlated data streams permits precise identification of bottlenecks across the infrastructure while a trade is being executed or market data is being distributed. By monitoring and measuring latency early in the cycle, financial companies can make better decisions about which network serviceand which intermediary, market, or counterpartyto select for routing trade orders. Likewise, this knowledge allows more streamlined access to updated market data (stock quotes, economic news, etc.), which is an important basis for initiating, withdrawing from, or pursuing market opportunities. The components of the solution are: AON hardware in three form factors: AON Network Module for Cisco 2600/2800/3700/3800 routers AON Blade for the Cisco Catalyst 6500 series AON 8340 Appliance Trading Metrics MampA 2.0 software, which provides the monitoring and alerting application, displays latency graphs on a dashboard, and issues alerts when slowdowns occur (tradingmetrics/TMbrochure. pdf ). Figure 10 AON-Based FIX Latency Monitoring Cisco IP SLA Cisco IP SLA is an embedded network management tool in Cisco IOS which allows routers and switches to generate synthetic traffic streams which can be measured for latency, jitter, packet loss, and other criteria (cisco/go/ipsla ). Two key concepts are the source of the generated traffic and the target. Both of these run an IP SLA quotresponder, quot which has the responsibility to timestamp the control traffic before it is sourced and returned by the target (for a round trip measurement). Various traffic types can be sourced within IP SLA and they are aimed at different metrics and target different services and applications. The UDP jitter operation is used to measure one-way and round-trip delay and report variations. As the traffic is time stamped on both sending and target devices using the responder capability, the round trip delay is characterized as the delta between the two timestamps. A new feature was introduced in IOS 12.3(14)T, IP SLA Sub Millisecond Reporting, which allows for timestamps to be displayed with a resolution in microseconds, thus providing a level of granularity not previously available. This new feature has now made IP SLA relevant to campus networks where network latency is typically in the range of 300-800 microseconds and the ability to detect trends and spikes (brief trends) based on microsecond granularity counters is a requirement for customers engaged in time-sensitive electronic trading environments. As a result, IP SLA is now being considered by significant numbers of financial organizations as they are all faced with requirements to: Report baseline latency to their users Trend baseline latency over time Respond quickly to traffic bursts that cause changes in the reported latency Sub-millisecond reporting is necessary for these customers, since many campus and backbones are currently delivering under a second of latency across several switch hops. Electronic trading environments have generally worked to eliminate or minimize all areas of device and network latency to deliver rapid order fulfillment to the business. Reporting that network response times are quotjust under one millisecondquot is no longer sufficient the granularity of latency measurements reported across a network segment or backbone need to be closer to 300-800 micro-seconds with a degree of resolution of 100 igrave seconds. IP SLA recently added support for IP multicast test streams, which can measure market data latency. A typical network topology is shown in Figure 11 with the IP SLA shadow routers, sources, and responders. Figure 11 IP SLA Deployment Computing Services Computing services cover a wide range of technologies with the goal of eliminating memory and CPU bottlenecks created by the processing of network packets. Trading applications consume high volumes of market data and the servers have to dedicate resources to processing network traffic instead of application processing. Transport processingAt high speeds, network packet processing can consume a significant amount of server CPU cycles and memory. An established rule of thumb states that 1Gbps of network bandwidth requires 1 GHz of processor capacity (source Intel white paper on I/O acceleration intel/technology/ioacceleration/306517.pdf ). Intermediate buffer copyingIn a conventional network stack implementation, data needs to be copied by the CPU between network buffers and application buffers. This overhead is worsened by the fact that memory speeds have not kept up with increases in CPU speeds. For example, processors like the Intel Xeon are approaching 4 GHz, while RAM chips hover around 400MHz (for DDR 3200 memory) (source Intel intel/technology/ioacceleration/306517.pdf ). Context switchingEvery time an individual packet needs to be processed, the CPU performs a context switch from application context to network traffic context. This overhead could be reduced if the switch would occur only when the whole application buffer is complete. Figure 12 Sources of Overhead in Data Center Servers TCP Offload Engine (TOE)Offloads transport processor cycles to the NIC. Moves TCP/IP protocol stack buffer copies from system memory to NIC memory. Remote Direct Memory Access (RDMA)Enables a network adapter to transfer data directly from application to application without involving the operating system. Eliminates intermediate and application buffer copies (memory bandwidth consumption). Kernel bypass Direct user-level access to hardware. Dramatically reduces application context switches. Figure 13 RDMA and Kernel Bypass InfiniBand is a point-to-point (switched fabric) bidirectional serial communication link which implements RDMA, among other features. Cisco offers an InfiniBand switch, the Server Fabric Switch (SFS): cisco/application/pdf/en/us/guest/netsol/ns500/c643/cdccont0900aecd804c35cb. pdf. Figure 14 Typical SFS Deployment Trading applications benefit from the reduction in latency and latency variability, as proved by a test performed with the Cisco SFS and Wombat Feed Handlers by Stac Research: Application Virtualization Service De-coupling the application from the underlying OS and server hardware enables them to run as network services. One application can be run in parallel on multiple servers, or multiple applications can be run on the same server, as the best resource allocation dictates. This decoupling enables better load balancing and disaster recovery for business continuance strategies. The process of re-allocating computing resources to an application is dynamic. Using an application virtualization system like Data Synapses GridServer, applications can migrate, using pre-configured policies, to under-utilized servers in a supply-matches-demand process (networkworld/supp/2005/ndc1/022105virtual. htmlpage2 ). There are many business advantages for financial firms who adopt application virtualization: Faster time to market for new products and services Faster integration of firms following merger and acquisition activity Increased application availability Better workload distribution, which creates more quothead roomquot for processing spikes in trading volume Operational efficiency and control Reduction in IT complexity Currently, application virtualization is not used in the trading front-office. One use-case is risk modeling, like Monte Carlo simulations. As the technology evolves, it is conceivable that some the trading platforms will adopt it. Data Virtualization Service To effectively share resources across distributed enterprise applications, firms must be able to leverage data across multiple sources in real-time while ensuring data integrity. With solutions from data virtualization software vendors such as Gemstone or Tangosol (now Oracle), financial firms can access heterogeneous sources of data as a single system image that enables connectivity between business processes and unrestrained application access to distributed caching. The net result is that all users have instant access to these data resources across a distributed network (gridtoday/03/0210/101061.html ). This is called a data grid and is the first step in the process of creating what Gartner calls Extreme Transaction Processing (XTP) (gartner/DisplayDocumentrefgsearchampid500947 ). Technologies such as data and applications virtualization enable financial firms to perform real-time complex analytics, event-driven applications, and dynamic resource allocation. One example of data virtualization in action is a global order book application. An order book is the repository of active orders that is published by the exchange or other market makers. A global order book aggregates orders from around the world from markets that operate independently. The biggest challenge for the application is scalability over WAN connectivity because it has to maintain state. Todays data grids are localized in data centers connected by Metro Area Networks (MAN). This is mainly because the applications themselves have limitsthey have been developed without the WAN in mind. Figure 15 GemStone GemFire Distributed Caching Before data virtualization, applications used database clustering for failover and scalability. This solution is limited by the performance of the underlying database. Failover is slower because the data is committed to disc. With data grids, the data which is part of the active state is cached in memory, which reduces drastically the failover time. Scaling the data grid means just adding more distributed resources, providing a more deterministic performance compared to a database cluster. Multicast Service Market data delivery is a perfect example of an application that needs to deliver the same data stream to hundreds and potentially thousands of end users. Market data services have been implemented with TCP or UDP broadcast as the network layer, but those implementations have limited scalability. Using TCP requires a separate socket and sliding window on the server for each recipient. UDP broadcast requires a separate copy of the stream for each destination subnet. Both of these methods exhaust the resources of the servers and the network. The server side must transmit and service each of the streams individually, which requires larger and larger server farms. On the network side, the required bandwidth for the application increases in a linear fashion. For example, to send a 1 Mbps stream to 1000recipients using TCP requires 1 Gbps of bandwidth. IP multicast is the only way to scale market data delivery. To deliver a 1 Mbps stream to 1000 recipients, IP multicast would require 1 Mbps. The stream can be delivered by as few as two serversone primary and one backup for redundancy. There are two main phases of market data delivery to the end user. In the first phase, the data stream must be brought from the exchange into the brokerages network. Typically the feeds are terminated in a data center on the customer premise. The feeds are then processed by a feed handler, which may normalize the data stream into a common format and then republish into the application messaging servers in the data center. The second phase involves injecting the data stream into the application messaging bus which feeds the core infrastructure of the trading applications. The large brokerage houses have thousands of applications that use the market data streams for various purposes, such as live trades, long term trending, arbitrage, etc. Many of these applications listen to the feeds and then republish their own analytical and derivative information. For example, a brokerage may compare the prices of CSCO to the option prices of CSCO on another exchange and then publish ratings which a different application may monitor to determine how much they are out of synchronization. Figure 16 Market Data Distribution Players The delivery of these data streams is typically over a reliable multicast transport protocol, traditionally Tibco Rendezvous. Tibco RV operates in a publish and subscribe environment. Each financial instrument is given a subject name, such as CSCO. last. Each application server can request the individual instruments of interest by their subject name and receive just a that subset of the information. This is called subject-based forwarding or filtering. Subject-based filtering is patented by Tibco. A distinction should be made between the first and second phases of market data delivery. The delivery of market data from the exchange to the brokerage is mostly a one-to-many application. The only exception to the unidirectional nature of market data may be retransmission requests, which are usually sent using unicast. The trading applications, however, are definitely many-to-many applications and may interact with the exchanges to place orders. Figure 17 Market Data Architecture Design Issues Number of Groups/Channels to Use Many application developers consider using thousand of multicast groups to give them the ability to divide up products or instruments into small buckets. Normally these applications send many small messages as part of their information bus. Usually several messages are sent in each packet that are received by many users. Sending fewer messages in each packet increases the overhead necessary for each message. In the extreme case, sending only one message in each packet quickly reaches the point of diminishing returnsthere is more overhead sent than actual data. Application developers must find a reasonable compromise between the number of groups and breaking up their products into logical buckets. Consider, for example, the Nasdaq Quotation Dissemination Service (NQDS). The instruments are broken up alphabetically: This approach allows for straight forward network/application management, but does not necessarily allow for optimized bandwidth utilization for most users. A user of NQDS that is interested in technology stocks, and would like to subscribe to just CSCO and INTL, would have to pull down all the data for the first two groups of NQDS. Understanding the way users pull down the data and then organize it into appropriate logical groups optimizes the bandwidth for each user. In many market data applications, optimizing the data organization would be of limited value. Typically customers bring in all data into a few machines and filter the instruments. Using more groups is just more overhead for the stack and does not help the customers conserve bandwidth. Another approach might be to keep the groups down to a minimum level and use UDP port numbers to further differentiate if necessary. The other extreme would be to use just one multicast group for the entire application and then have the end user filter the data. In some situations this may be sufficient. Intermittent Sources A common issue with market data applications are servers that send data to a multicast group and then go silent for more than 3.5 minutes. These intermittent sources may cause trashing of state on the network and can introduce packet loss during the window of time when soft state and then hardware shorts are being created. PIM-Bidir or PIM-SSM The first and best solution for intermittent sources is to use PIM-Bidir for many-to-many applications and PIM-SSM for one-to-many applications. Both of these optimizations of the PIM protocol do not have any data-driven events in creating forwarding state. That means that as long as the receivers are subscribed to the streams, the network has the forwarding state created in the hardware switching path. Intermittent sources are not an issue with PIM-Bidir and PIM-SSM. Null Packets In PIM-SM environments a common method to make sure forwarding state is created is to send a burst of null packets to the multicast group before the actual data stream. The application must efficiently ignore these null data packets to ensure it does not affect performance. The sources must only send the burst of packets if they have been silent for more than 3 minutes. A good practice is to send the burst if the source is silent for more than a minute. Many financials send out an initial burst of traffic in the morning and then all well-behaved sources do not have problems. Periodic Keepalives or Heartbeats An alternative approach for PIM-SM environments is for sources to send periodic heartbeat messages to the multicast groups. This is a similar approach to the null packets, but the packets can be sent on a regular timer so that the forwarding state never expires. S, G Expiry Timer Finally, Cisco has made a modification to the operation of the S, G expiry timer in IOS. There is now a CLI knob to allow the state for a S, G to stay alive for hours without any traffic being sent. The (S, G) expiry timer is configurable. This approach should be considered a workaround until PIM-Bidir or PIM-SSM is deployed or the application is fixed. RTCP Feedback A common issue with real time voice and video applications that use RTP is the use of RTCP feedback traffic. Unnecessary use of the feedback option can create excessive multicast state in the network. If the RTCP traffic is not required by the application it should be avoided. Fast Producers and Slow Consumers Today many servers providing market data are attached at Gigabit speeds, while the receivers are attached at different speeds, usually 100Mbps. This creates the potential for receivers to drop packets and request re-transmissions, which creates more traffic that the slowest consumers cannot handle, continuing the vicious circle. The solution needs to be some type of access control in the application that limits the amount of data that one host can request. QoS and other network functions can mitigate the problem, but ultimately the subscriptions need to be managed in the application. Tibco Heartbeats TibcoRV has had the ability to use IP multicast for the heartbeat between the TICs for many years. However, there are some brokerage houses that are still using very old versions of TibcoRV that use UDP broadcast support for the resiliency. This limitation is often cited as a reason to maintain a Layer 2 infrastructure between TICs located in different data centers. These older versions of TibcoRV should be phased out in favor of the IP multicast supported versions. Multicast Forwarding Options PIM Sparse Mode The standard IP multicast forwarding protocol used today for market data delivery is PIM Sparse Mode. It is supported on all Cisco routers and switches and is well understood. PIM-SM can be used in all the network components from the exchange, FSP, and brokerage. There are, however, some long-standing issues and unnecessary complexity associated with a PIM-SM deployment that could be avoided by using PIM-Bidir and PIM-SSM. These are covered in the next sections. The main components of the PIM-SM implementation are: PIM Sparse Mode v2 Shared Tree (spt-threshold infinity) A design option in the brokerage or in the exchange.

No comments:

Post a Comment