Saturday 6 May 2017

Algorithmische Handelssystemarchitektur


Systemarchitektur Die Architektur von AlgoTrader setzt sich aus den folgenden Komponenten zusammen. Der AlgoTrader Server stellt die Infrastruktur für alle darauf laufenden Strategien zur Verfügung. Der AlgoTrader Server verfügt über die zentrale Esper Complex Event Processing (CEP) Engine. Er ist verantwortlich für alle Domänenmodellobjekte und deren Persistenz in der Datenbank. Für die Verarbeitung von Live - und historischen Marktdaten stehen unterschiedliche Marktdatenadapter zur Verfügung. Auf der anderen Seite stehen Adapter für verschiedene Execution-Broker und Börsen zur Verfügung, die für die Platzierung von Aufträgen und die Ausführung von Hinweisen verantwortlich sind. Der AlgoTrader Server bietet darüber hinaus Geschäftskomponenten für Portfolio-Management, Performance-Messung, Risikomanagement, Money Management, Options-Pricing, Abstimmung, Forex-Hedging und Parameteroptimierung. Auf dem AlgoTrader Server können beliebig viele Strategien eingesetzt werden. AlgoTrader hat eine ereignisgetriebene Architektur, die eine dedizierte Esper CEP-Engine pro Strategie nutzt. Eine Strategie kann eine beliebige Anzahl von SQL-ähnlichen Esper-Anweisungen für die zeitbasierte Marktdatenanalyse und Signalerzeugung implementieren. Esper-Anweisungen können beliebig viele prozedurale Aktionen aufrufen, z. B. die Platzierung einer Position oder die Schließung einer Position, die in Java codiert sind. Die Kombination von Esper-Anweisungen und Java-Code bietet einen best-of-both-worlds-Ansatz. Zur Verwaltung und Überwachung des Systems existieren vier verschiedene GUI-Clients. Das neue AlgoTrader HTML5 Frontend bietet handelsbezogene Funktionen wie Charting, Order, Positionen amp Marktdaten. Der AlgoTrader Eclipse-Client ist die Standard-Strategieentwicklungsumgebung. Der EsperHQ-Client verwaltet den Esper CEP-Motor. Der Grails-Client ist ein generischer Client für die Referenzdatenverwaltung. Für produktive Installationen und Bereitstellung verwendet AlgoTrader Docker. Einführung AlgoTrader 3.0 8211 Der leistungsstärkste AlgoTrader Yet Apr-07-2016 AlgoTrader 3.0 wurde veröffentlicht. Diese Veröffentlichung enthält das neue HTML5-Frontend, One-Click-Bereitstellung mit Docker, drei neue Ausführungsalgorithmen und einer Excel-basierten Zurück Prüfbericht Einführung AlgoTrader One-Click-Installation von Docker Mar-15-2016 AlgoTrader 3.0 stellt One-Click-Installationen Handelsstrategie angetrieben durch Docker BILANZ Artikel zum Thema Hochfrequenzhandel Feb-02-2016 AlgoTrader GmbH CEO Andy Flury im Interview mit der BILANZ zum Thema Hochfrequenzhandel AlgoTrader Lizenzbestimmungen DIE BEDINGUNGEN DIESER ENDBENUTZERLIZENZVERTRAG (8220AGREEMENT8221) REGELN IHRE NUTZUNG DER SOFTWARE, WENN SIE UND DER LIZENZVERTRAG HABEN EINE SEPARATE SCHRIFTLICHE LIZENZVEREINBARUNG FÜR DIE VERWENDUNG DER SOFTWARE AUSGEFÜHRT. Der Lizenzgeber ist bereit, die Software nur für Sie zu lizenzieren, wenn Sie alle Bedingungen dieser Vereinbarung akzeptieren. Mit der Unterzeichnung dieses Vertrags oder durch Herunterladen, Installieren oder Verwenden der Software haben Sie angegeben, dass Sie diese Vereinbarung verstehen und alle ihre Bedingungen akzeptieren. Wenn Sie nicht alle Bedingungen dieser Vereinbarung akzeptieren, dann ist der Lizenzgeber nicht bereit, Ihnen die Software zu lizenzieren, und Sie können nicht herunterladen, installieren oder die Software verwenden. 1. GRANT DER LIZENZ a. Evaluation Verwendung und Entwicklung Use License. Vorbehaltlich Ihrer Einhaltung der Bedingungen und Konditionen dieser Vereinbarung, um Ihnen die Lizenzgeber gewährt eine persönliche, nicht-exklusive, nicht übertragbare Lizenz, ohne das Recht zur Vergabe von Lizenzen, für die Dauer dieser Vereinbarung, verwenden, um intern die Software ausschließlich für Evaluation Verwendung und Entwicklung Verwendung. Drittanbieter-Softwareprodukte oder - module, die vom Lizenzgeber bereitgestellt werden, dürfen ausschließlich mit der Software verwendet werden und unterliegen der Zustimmung zu den von Dritten zur Verfügung gestellten Bedingungen. Wenn die Lizenz endet, müssen Sie die Software nicht mehr verwenden und alle Instanzen deinstallieren. Alle Rechte, die Ihnen hier nicht ausdrücklich eingeräumt werden, bleiben vom Lizenzgeber. Der Entwickler darf die Software oder jegliche abgeleitete Arbeit (einschließlich der eigenen internen Geschäftszwecke von Developer8217) nicht kommerziell nutzen. Die Vervielfältigung und Weiterverbreitung der Software oder der Entwickleranwendung in irgendeiner Form an Ihre direkten oder indirekten Kunden ist untersagt. B. Produktion Nutzungslizenz. Vorbehaltlich der Einhaltung der Bedingungen dieses Vertrages einschließlich der Zahlung der anwendbaren Lizenzgebühr gewährt Ihnen der Lizenzgeber für die Dauer dieser Vereinbarung eine nicht ausschließliche und nicht übertragbare Lizenz, ohne das Recht zur Unterlizenzierung, für die Dauer dieses Vertrags : (A) die Software ausschließlich für eigene interne geschäftliche Zwecke zu verwenden und zu reproduzieren (8220Production Use8221) und (b) eine angemessene Anzahl von Kopien der Software nur für Sicherungszwecke zu erstellen. Diese Lizenz beschränkt sich auf die spezifische Anzahl von CPUs (falls von der CPU lizenziert) oder Instanzen von Java Virtual Machines (falls Lizenzen von Virtual Machine), für die Sie eine Lizenzgebühr bezahlt haben. Die Verwendung der Software auf einer größeren Anzahl von CPUs oder Instanzen von Java Virtual Machines erfordert die Zahlung einer zusätzlichen Lizenzgebühr. Von dem Lizenzgeber gelieferte Softwareprodukte oder Module des Drittanbieters dürfen ausschließlich mit der Software verwendet werden. C. Keine anderen Rechte. Ihre Rechte an der Software und die Nutzung der Software beschränken sich auf die in diesem Abschnitt ausdrücklich gewährten Rechte. Sie dürfen die Software nicht weiter nutzen. Mit Ausnahme der in diesem Abschnitt ausdrücklich genehmigten Lizenz gewährt Ihnen der Lizenzgeber keine weiteren Rechte oder Lizenzen, implizit, estoppel oder anderweitig. ALLE RECHTE, DIE NICHT AUSDRÜCKLICH GEWÄHRT WERDEN, SIND DURCH DEN LIZENZNEHMER ODER SEINEN LIEFERANTEN VORBEHALTEN. 2. EINSCHRÄNKUNGEN Soweit nicht ausdrücklich in Ziffer 1 vorgesehen, sind Sie nicht berechtigt: (a) zu modifizieren, zu übersetzen, zu disassemblieren, abgeleitete Werke der Software zu erstellen oder die Software zu kopieren, (b) zu vermieten, zu verleihen, zu übertragen, Software in irgendeiner Form an eine Person (c) die Bereitstellung, Offenlegung, Weitergabe oder Bereitstellung oder Nutzung der Software durch Dritte (d) Veröffentlichung von Benchmark - oder Performance-Tests, die auf der Software oder einem Teil davon oder ( E) entfernen Sie alle proprietären Hinweise, Etiketten oder Markierungen auf der Software. Sie werden die Software nicht auf Einzelpersonen oder auf OEM-Basis (Original Equipment Manufacturer) verteilen. 3. EIGENTUM Die zwischen den Parteien vereinbarte Software ist und bleibt das alleinige und ausschließliche Eigentum des Lizenzgebers, einschließlich aller Rechte an geistigem Eigentum. ein. Für den Fall, dass Sie die Software unter der Lizenz gemäß Abschnitt 1 (a) verwenden, bleibt dieses Abkommen für die Dauer der Evaluierungs - oder Entwicklungsperiode gültig. B. Für den Fall, dass Sie die Software unter der Lizenz gemäß Abschnitt 1 (b) verwenden, bleibt diese Vereinbarung in Kraft entweder (a) für eine Laufzeit von einem Jahr, wenn sie als Jahresabonnement erworben wird oder (b) unbefristete Lizenz. Eine Jahresabonnementlizenz verlängert sich automatisch um ein Jahr, wenn sie nicht mit einem Monat vorher gekündigt wird. Diese Vereinbarung wird ohne vorherige Ankündigung automatisch gekündigt, wenn Sie eine Bestimmung dieser Vereinbarung verletzen. Bei Kündigung müssen Sie die Software unverzüglich verlassen und alle Kopien der Software in Ihrem Besitz oder Ihrer Kontrolle zerstören. 5. UNTERSTÜTZUNGSDIENSTLEISTUNGEN Wenn Sie diese Lizenz einschließlich Support-Services erworben haben, umfassen diese Wartungsfreigaben (Updates und Upgrades), telefonische Unterstützung sowie E-Mail - oder Web-Support. ein. Der Lizenzgeber wird kommerziell vernünftige Anstrengungen unternehmen, um ein Update bereitzustellen, das entworfen ist, um einen gemeldeten Fehler zu lösen oder zu umgehen. Wenn ein solcher Fehler in einer Wartungsfreigabe behoben wurde, muss der Lizenznehmer die entsprechende Wartungsfreigabe installieren und implementieren, andernfalls kann die Aktualisierung in Form eines vorläufigen Fixes, einer Prozedur oder einer Routine bereitgestellt werden, bis eine Wartungsfreigabe mit dem permanenten Update verwendet wird ist verfügbar. B. Während der Lizenzvertragslaufzeit stellt der Lizenzgeber dem Lizenznehmer Wartungsfreigaben zur Verfügung, wenn der Lizenzgeber in der Regel solche Wartungsfreigaben für seine Kunden verfügbar macht. Wenn eine Frage auftaucht, ob ein Produktangebot ein Upgrade oder ein neues Produkt oder eine neue Funktion ist, ist die Meinung von Licensor8217 maßgebend, vorausgesetzt der Lizenzgeber behandelt das Produktangebot als neues Produkt oder Feature für seine Endkunden. C. Die Licensor8217s Verpflichtung zur Bereitstellung von Supportdiensten ist auf Folgendes beschränkt: (a) Der Lizenznehmer unternimmt angemessene Anstrengungen, den Fehler nach Rücksprache mit dem Lizenzgeber zu beheben (b) Der Lizenznehmer stellt dem Lizenzgeber ausreichende Informationen und Ressourcen zur Korrektur des Fehlers entweder auf der Website von Licensor8217 zur Verfügung (C) Der Lizenznehmer installiert unverzüglich alle Wartungsfreigaben und (d) der Lizenznehmer beschafft, installiert und verwahrt alle Geräte, die Kommunikation und den Zugriff auf das Personal, die Hardware und jede zusätzliche Software, die an der Ermittlung des Fehlers beteiligt ist Schnittstellen und sonstiger Hardware, die für den Betrieb des Produkts erforderlich sind. D. Der Lizenzgeber ist nicht verpflichtet, Support Services in den folgenden Situationen zur Verfügung zu stellen: (a) das Produkt wurde geändert, geändert oder beschädigt (außer wenn unter der direkten Aufsicht des Lizenzgebers) (b) der Fehler durch den Lizenznehmer verursacht wird (C) der Fehler durch Software verursacht wird, die nicht durch den Lizenzgeber lizenziert wurde (d) Der Lizenznehmer hat keine Wartungsfreigabe (en) installiert und implementiert, sodass das Produkt eine Version ist, die von der Lizenzgeber oder (e) Der Lizenznehmer hat die Lizenzgebühren oder Support Services Gebühren nicht bezahlt. Darüber hinaus ist der Lizenzgeber nicht verpflichtet, Support-Services für Software-Code von dem Client selbst auf der Grundlage des Produkts geschrieben zu stellen. D. h. Der Lizenzgeber behält sich das Recht vor, die Support Services einzustellen, falls der Lizenzgeber nach alleinigem Ermessen feststellt, dass die fortgesetzte Unterstützung eines Produkts nicht mehr wirtschaftlich praktikabel ist. Der Lizenzgeber wird dem Lizenznehmer mindestens drei (3) Monate vor der schriftlichen Kündigung einer solchen Unterbrechung der Support Services gewähren und alle nicht aufgelaufenen Support Services Gebühren zurückerstatten, die der Lizenznehmer in Bezug auf das betroffene Produkt vorausbezahlt haben kann. Der Lizenzgeber ist nicht verpflichtet, jegliche Version des Produkts oder der zugrundeliegenden Plattform von Drittanbietern (einschließlich aber nicht beschränkt auf Software, JVM, Betriebssystem oder Hardware), für die das Produkt unterstützt wird, zu unterstützen oder zu unterhalten, außer (i) der jeweils aktuellen Version des Produkt und zugrunde liegende Plattform von Drittanbietern und (ii) die beiden unmittelbar vorangegangenen Versionen des Produkts und des Betriebssystems für einen Zeitraum von sechs (6) Monaten nach ihrer ersten Überlassung. Der Lizenzgeber behält sich das Recht vor, die Leistung der Support Services auszusetzen, wenn der Lizenznehmer innerhalb von dreißig (30) Tagen nach Fälligkeit dieses Betrags keinen Betrag zahlt, der dem Lizenzgeber gemäß dem Vertrag zu zahlen ist. 6. GARANTIE a. Der Lizenzgeber garantiert, dass die Software in der Lage ist, in Übereinstimmung mit den funktionalen Spezifikationen, die in der zutreffenden Dokumentation dargelegt sind, für einen Zeitraum von 90 Tagen nach dem Datum, an dem Sie die Software installieren, in allen wesentlichen Belangen durchzuführen. Im Falle einer Verletzung dieser Gewährleistung hat der Lizenzgeber nach eigenem Ermessen die Software zu korrigieren oder die Software kostenlos zu ersetzen. Das Vorstehende ist Ihre alleinige und ausschließliche Rechtsbehelfe und die Licensor8217s alleinige Haftung für einen Verstoß gegen diese Garantien. Die vorstehend beschriebenen Garantien erfolgen ausschließlich für Sie und für Sie. Die Garantien gelten nur, wenn (a) die Software ordnungsgemäß installiert und verwendet wurde und die Bedienungsanleitung (c) die neuesten Aktualisierungen auf die Software angewendet wurde und (c) keine Änderungen, Ergänzungen oder Änderungen vorgenommen wurden Von anderen Personen als dem Lizenzgeber oder dem bevollmächtigten Vertreter des Lizenzgebers vorgenommen worden ist. 7. HAFTUNGSAUSSCHLUSS Sofern nicht gemäß § 6 VORGESEHEN (a), DER LIZENZGEBER AUSDRÜCKLICH ALLE GARANTIEN, AUSDRÜCKLICH ODER IMPLIZIT, EINSCHLIESSLICH DER IMPLIZIERTEN GARANTIEN DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND NONINFRINGEMENT UND GARANTIEN IN DIE SICH VON austeilt NATÜRLICH ODER NUTZUNG DES HANDELS. KEINE RATSCHLÄGE ODER INFORMATIONEN, OB EINE MÜNDLICHE ODER SCHRIFTLICHE HINWEISE, DIE VON DEM LIZENZNEHMER ODER ANDEREN ANDEREN INHALTEN WERDEN, GARANTIERT JEDE GARANTIE, DIE NICHT IN DIESER VEREINBARUNG AUSDRÜCKLICH GESTATTET WIRD. Der Lizenzgeber übernimmt keine Gewähr, dass das Softwareprodukt Ihren Anforderungen entspricht oder unter Ihren speziellen Nutzungsbedingungen funktioniert. Der Lizenzgeber übernimmt keine Gewähr dafür, dass der Betrieb des Softwareprodukts sicher, fehlerfrei oder unterbrechungsfrei ist. SIE MÜSSEN BESTIMMEN, WENN DAS SOFTWAREPRODUKT IHRE VORSCHRIFTEN FÜR SICHERHEIT UND UNUNTERBRECHUNGSFÄHIGKEIT ENTHÄLT. SIE BEHALTEN SOLLTE VERANTWORTLICHKEIT UND ALLE HAFTUNG FÜR JEGLICHE VERLUSTE, DIE DURCH FEHLER DES SOFTWAREPRODUKTS ZUR ERFÜLLUNG IHRER ANFORDERUNGEN ERHÖHEN. DER LIZENZNEHMER WIRD NICHT INNERHALB ALLER UMSTÄNDE VERANTWORTLICH ODER HAFTBAR FÜR DEN VERLUST VON DATEN AUF EINER COMPUTER - ODER INFORMATIONSSPEICHERVORRICHTUNG. 8. HAFTUNGSAUSSCHLUSS DIE LICENSOR8217S HAFTUNG FÜR SIE VON ALLE KLAGE und unter allen THEORIES Haftungs WERDEN begrenzt und wird die Lizenzgebühr von Ihnen an die LIZENZGEBER FÜR DIE SOFTWARE BEZAHLT NICHT ÜBERSCHREITEN. IN KEINEM FALL WIRD DIE LIZENZ HAFTUNG FÜR BESONDERE, ZUFÄLLIGE, EXEMPLARISCHE, STRAF oder Folgeschäden (einschließlich entgangener Nutzung, Daten, GESCHÄFT ODER GEWINNE) ODER FÜR DIE KOSTEN DER ERSATZPRODUKTEN BESCHAFFUNG AUS ODER IN VERBINDUNG MIT DIESER VEREINBARUNG ODER DER VERWENDUNG ODER DER LEISTUNG DER SOFTWARE, OB EINE SOLCHE HAFTUNG ENTSTEHT VON ANSPRÜCHEN AUF DER GRUNDLAGE VERTRAG, GARANTIE, SCHULD (EINSCHLIESSLICH NACHLÄSSIGKEIT), dessen Vertreter oder nicht und OB DIE LIZENZGEBER ÜBER DIE MÖGLICHKEIT SOLCHER VERLUSTE WURDE ODER BESCHÄDIGUNG. DIE VORGESEHENEN EINSCHRÄNKUNGEN WERDEN ÜBERLEGEN UND SELBST GELTEN, WENN DIESE VEREINBARUNG GEGEN BESCHRÄNKTE RECHTSMITTEL GEFUNDEN IST, DASS IHREN WESENTLICHEN ZWECK VERLETZT HAT. FALLS die zuständige Gerichtsbarkeit DIE FÄHIGKEIT LICENSOR8217S LIMITS ALLE GARANTIEN ZU LEHNEN WIRD DIESE HAFTUNGSAUSSCHLUSS GILT Bis zur äußersten Grenze zulässig ist. 9. ALLGEMEINES Sollte eine Bestimmung dieses Vertrages für ungültig oder undurchsetzbar gehalten werden, bleibt der Rest dieses Vertrages in Kraft und Wirkung. Soweit ausdrückliche oder stillschweigende Beschränkungen nach geltendem Recht nicht zulässig sind, bleiben diese ausdrücklichen oder stillschweigenden Beschränkungen in dem durch diese anwendbaren Gesetze maximal zulässigen Umfang gültig. Diese Vereinbarung ist die vollständige und ausschließliche Vereinbarung zwischen den Parteien in Bezug auf den Gegenstand dieser Vereinbarung und ersetzt und ersetzt alle früheren Vereinbarungen, Mitteilungen und Vereinbarungen (sowohl schriftlich als auch mündlich) zu diesem Thema. Die Vertragspartner sind unabhängige Vertragspartner und haben weder die Befugnis, den anderen Vertragspartner zu binden oder anderweitige Verpflichtungen einzugehen. Keiner der beiden Parteien, die ihre Rechte aus diesem Abkommen ausüben oder vollstrecken, wird als Verzicht auf diese Rechte fungieren. Alle in einer Bestellung oder einem anderen Bestelldokument enthaltenen Bedingungen, die mit den Bedingungen dieses Vertrages unvereinbar oder ergänzend sind, werden vom Lizenzgeber zurückgewiesen und gelten als null und nicht mehr. Diese Vereinbarung wird in Übereinstimmung mit den Gesetzen der Schweiz interpretiert und ausgelegt, und zwar ohne Rücksicht auf Kollisionsnormen. Die Parteien vereinbaren hiermit die ausschließliche Zuständigkeit und Gerichtsstand der in Zürich, Schweiz ansässigen Gerichte zur Beilegung von Streitigkeiten aus oder im Zusammenhang mit diesem Vertrag. 10. BEGRIFFSBESTIMMUNGEN 8220Beurteilung Use8221 bedeutet, dass die Software ausschließlich zur Bewertung und Erprobung für neue Anwendungen, die für Ihre Produktion bestimmt sind, verwendet wird. 8220Produktion Use8221 bedeutet, dass die Software nur für interne geschäftliche Zwecke verwendet wird. Die Verwendung des Produkts umfasst nicht das Recht, die Software für die Unterlizenzierung, den Wiederverkauf oder die Verbreitung zu vervielfältigen, einschließlich, ohne darauf beschränkt zu sein, die Nutzung der Software als Teil eines ASP-, VAR-, OEM-, Distributor - oder Wiederverkäufervertrages. 8220Software8221 bedeutet die Software Licensor8217s und alle seine Komponenten, Dokumentation und Beispiele, die vom Lizenzgeber enthalten sind. 8220Error8221 bedeutet entweder (a) ein Versagen des Produkts an den Spezifikationen, die in der Dokumentation festgelegt zu entsprechen, in der Unfähigkeit, zu verwenden, oder Einschränkung in der Nutzung des Produkts, Andor (b) ein Problem neue Verfahren erfordert, Präzisierungen , Zusätzliche Informationen und Anfragen für Produktverbesserungen. 8220Maintenance Release8221 bedeutet Upgrades und Updates für das Produkt, das in Abschnitt 5 8220Update8221 bedeutet gemäß der Definition in den Standard-Support-Services für Lizenznehmer zur Verfügung gestellt werden, entweder eine Software-Änderung oder Ergänzung, dass, wenn an dem Produkt oder hinzugefügt, wird der Fehler korrigiert oder ein Verfahren oder Routine, die, wenn sie im regulären Betrieb des Produkts beobachtet werden, die praktische nachteilige Wirkung des Fehlers auf den Lizenznehmer beseitigen. 8220Upgrade8221 bedeutet eine Überarbeitung des Produkts, das der Lizenzgeber seinen Endbenutzern in der Regel während des Support Services Term veröffentlicht, um neue Funktionen hinzuzufügen oder die Kapazität des Produkts zu erhöhen. Rüsten Sie nicht die Freigabe eines neuen Produkts enthalten oder zusätzliche Funktionen, für die es in diesem Blog eine separate charge. Algorithmic Trading System Architecture Zuvor kann ich über die konzeptionelle Architektur eines intelligenten algorithmische Handelssystem geschrieben haben, sowie die funktionale und nicht - Funktionsanforderungen eines algorithmischen Produktionssystems. Seitdem habe ich eine Systemarchitektur entworfen, von der ich glaube, dass sie diese architektonischen Anforderungen erfüllen kann. In diesem Beitrag werde ich beschreiben die Architektur nach den Richtlinien der ISOIECIEEE 42010 Systeme und Software Engineering Architektur Beschreibung Standard. Nach dieser Norm muss eine Architekturbeschreibung enthalten: Mehrere standardisierte architektonische Ansichten (z. B. in UML) enthalten und die Rückverfolgbarkeit zwischen Entwurfsentscheidungen und architektonischen Anforderungen beibehalten Softwarearchitekturdefinition Es gibt noch keinen Konsens darüber, was eine Systemarchitektur ist. Im Rahmen dieses Artikels wird sie als die Infrastruktur definiert, innerhalb der Anwendungskomponenten, die funktionalen Anforderungen genügen, spezifiziert, implementiert und ausgeführt werden können. Funktionale Anforderungen sind die erwarteten Funktionen des Systems und seiner Komponenten. Nicht funktionale Anforderungen sind Maßnahmen, durch die die Qualität des Systems gemessen werden kann. Ein System, das seine funktionalen Anforderungen voll erfüllt, kann die Erwartungen nicht erfüllen, wenn nicht funktionale Anforderungen unbefriedigt bleiben. Um dieses Konzept zu veranschaulichen, betrachten Sie das folgende Szenario: ein algorithmisches Handelssystem, das Sie gerade gekauft haben, macht ausgezeichnete Handelsentscheidungen, ist aber völlig inoperabel mit den Organisationen Risikomanagement und Buchhaltungssysteme. Würde dieses System Ihren Erwartungen entsprechen Konzeptionelle Architektur Eine konzeptionelle Sicht beschreibt hochrangige Konzepte und Mechanismen, die im System auf höchster Granularität existieren. Auf dieser Ebene folgt das algorithmische Handelssystem einer ereignisgesteuerten Architektur (EDA), die über vier Schichten aufgebrochen ist, und zwei architektonische Aspekte. Für jede Schicht - und Aspektreferenz werden Architekturen und Muster verwendet. Architektonische Muster sind bewährte, generische Strukturen, um spezifische Anforderungen zu erfüllen. Architektonische Aspekte sind Querschnittsaufgaben, die sich über mehrere Komponenten erstrecken. Ereignisgetriebene Architektur - eine Architektur, die Ereignisse erzeugt, erkennt, konsumiert und reagiert. Ereignisse umfassen Echtzeitbewegungen, komplexe Ereignisse oder Trends und Handelsereignisse, z. B. Einreichung einer Bestellung. Dieses Diagramm veranschaulicht die Konzeptarchitektur des algorithmischen Handelssystems Referenzarchitekturen Um eine Analogie zu verwenden, ähnelt eine Referenzarchitektur den Blaupausen für eine tragende Wand. Dieses Blau-Druck kann für mehrfache Gebäudeentwürfe wiederverwendet werden, unabhängig davon, welches Gebäude errichtet wird, da es einen Satz von allgemein auftretenden Anforderungen erfüllt. Ähnlich definiert eine Referenzarchitektur eine Vorlage, die generische Strukturen und Mechanismen enthält, die verwendet werden können, um eine konkrete Softwarearchitektur zu konstruieren, die spezifischen Anforderungen genügt. Die Architektur für das algorithmische Handelssystem verwendet eine raumbasierte Architektur (SBA) und einen Model View Controller (MVC) als Referenzen. Gute Vorgehensweisen wie der Betriebsdaten-Speicher (ODS), das Extrakt-Transformations - und Belastungsmuster (ETL) und ein Data Warehouse (DW) werden ebenfalls verwendet. Modellansicht-Controller - ein Muster, das die Darstellung von Informationen von der Benutzerinteraktion mit ihr trennt. Raumbasierte Architektur - spezifiziert eine Infrastruktur, in der lose gekoppelte Verarbeitungseinheiten miteinander über einen gemeinsamen assoziativen Speicher mit dem Namen Space interagieren (siehe unten). Strukturansicht Die Strukturansicht einer Architektur zeigt die Komponenten und Unterkomponenten des algorithmischen Handelssystems. Es zeigt auch, wie diese Komponenten auf physische Infrastruktur eingesetzt werden. Die in dieser Ansicht verwendeten UML-Diagramme umfassen Komponentendiagramme und Bereitstellungsdiagramme. Im Folgenden finden Sie eine Übersicht der Implementierungsdiagramme des algorithmischen Handelssystems und der Verarbeitungseinheiten in der SBA-Referenzarchitektur sowie zugehörige Komponentendiagramme für die einzelnen Schichten. Architectural Tactics Nach dem Software Engineering Institute ist eine architektonische Taktik ein Mittel zur Befriedigung einer Qualitätsanforderung durch Manipulation eines Aspekts eines Qualitätsattributmodells durch architektonische Designentscheidungen. Ein einfaches Beispiel, das in der algorithmischen Handelssystemarchitektur verwendet wird, ist, einen operativen Datenspeicher (ODS) mit einer kontinuierlichen Abfragekomponente zu manipulieren. Diese Komponente würde das ODS kontinuierlich analysieren, um komplexe Ereignisse zu identifizieren und zu extrahieren. Folgende Taktiken werden in der Architektur verwendet: Das Disruptormuster im Ereignis - und Auftragswarteschlange Gemeinsamer Speicher für die Ereignis - und Auftragswarteschlangen Ununterbrochene Abfragesprache (CQL) auf dem ODS Datenfilterung mit dem Filterentwurfsmuster auf eingehenden Daten Vermeidungsalgorithmen auf allen Eingehende und ausgehende Verbindungen Active Queue Management (AQM) und explizite Staubenachrichtigung Rohstoffrechenressourcen mit Upgradefähigkeit (skalierbar) Aktive Redundanz für alle Single Points of Fail Indexierung und optimierte Persistenzstrukturen im ODS Planen Sie regelmäßige Datensicherungs - und Bereinigungsskripts für ODS Transaktionshistorie auf allen Datenbanken Prüfsummen für alle Aufträge, um Fehler zu erkennen Annotieren von Ereignissen mit Zeitstempeln, um veraltete Ereignisse zu überspringen Bestellen von Validierungsregeln zB Maximale Handelsmengen Automatisierte Händlerkomponenten verwenden eine Speicher-Datenbank für die Analyse Zwei-Stufen-Authentifizierung für Benutzerschnittstellen, die eine Verbindung zu den ATs herstellen Verschlüsselung auf Benutzerschnittstellen und Verbindungen zu den ATs Observer-Entwurfsmuster für das MVC zur Verwaltung von Ansichten Die obige Liste ist nur ein paar Design Entscheidungen, die ich bei der Gestaltung der Architektur identifiziert habe. Es ist nicht eine vollständige Liste der Taktiken. Da das System entwickelt wird, sollten zusätzliche Taktiken auf mehreren Ebenen der Granularität eingesetzt werden, um funktionale und nicht-funktionale Anforderungen zu erfüllen. Unten sind drei Diagramme, die das Disruptor-Designmuster, das Filterentwurfsmuster und die kontinuierliche Abfragekomponente beschreiben. Verhaltensansicht Diese Ansicht einer Architektur zeigt, wie die Komponenten und Schichten miteinander interagieren sollen. Dies ist hilfreich bei der Erstellung von Szenarien zum Testen von Architekturentwürfen und zum Verständnis des Systems von Ende zu Ende. Diese Ansicht besteht aus Sequenzdiagrammen und Aktivitätsdiagrammen. Aktivitätsdiagramme, die den internen Prozess der algorithmischen Handelssysteme zeigen und wie Händler mit dem algorithmischen Handelssystem interagieren sollen, sind nachfolgend dargestellt. Technologien und Rahmenbedingungen Der letzte Schritt beim Entwerfen einer Softwarearchitektur besteht darin, mögliche Technologien und Rahmenbedingungen zu identifizieren, die zur Verwirklichung der Architektur genutzt werden könnten. Grundsätzlich ist es sinnvoll, bestehende Technologien auszuschöpfen, sofern sie sowohl funktionale als auch nicht funktionale Anforderungen adäquat erfüllen. Ein Framework ist eine realisierte Referenzarchitektur, z. B. JBoss ist ein Framework, das die JEE-Referenzarchitektur realisiert. Die folgenden Technologien und Frameworks sind interessant und sollten bei der Implementierung eines algorithmischen Handelssystems berücksichtigt werden: CUDA - NVidia verfügt über eine Reihe von Produkten, die eine hochleistungsfähige Computational Finance Modellierung unterstützen. Man kann bis zu 50x Performance-Verbesserungen in der Ausführung von Monte Carlo Simulationen auf der GPU anstelle der CPU erreichen. Apache River - River ist ein Tool-Kit zur Entwicklung verteilter Systeme. Es wurde als Rahmen für den Aufbau von Anwendungen auf der Grundlage der SBA-Muster Apache Hadoop - für den Fall, dass pervasive Logging ist eine Anforderung, dann die Verwendung von Hadoop bietet eine interessante Lösung für die Big-Data-Problem. Hadoop kann in einer Clusterumgebung eingesetzt werden, die CUDA-Technologien unterstützt. AlgoTrader - eine Open-Source-algorithmische Handelsplattform. AlgoTrader könnte an Stelle der automatisierten Händlerkomponenten eingesetzt werden. FIX Engine - eine eigenständige Anwendung, die die Financial Information Exchange (FIX) - Protokolle einschließlich FIX, FAST und FIXatdl unterstützt. Obwohl es sich nicht um eine Technologie oder ein Framework handelt, sollten Komponenten mit einer API (Application Programming Interface) aufgebaut werden, um die Interoperabilität des Systems und seiner Komponenten zu verbessern. Fazit Die vorgeschlagene Architektur wurde entwickelt, um sehr allgemeine Anforderungen für algorithmische Handelssysteme zu erfüllen. Im Allgemeinen werden algorithmische Handelssysteme durch drei Faktoren kompliziert, die bei jeder Implementierung variieren: Abhängigkeiten von externen Unternehmen und Tauschsystemen Herausforderung an nicht funktionale Anforderungen und Entwicklung von architektonischen Zwängen Die vorgeschlagene Softwarearchitektur müsste daher im Einzelfall von Fall zu Fall angepasst werden Um spezifische organisatorische und regulatorische Anforderungen zu erfüllen sowie regionale Zwänge zu überwinden. Die algorithmische Handelssystemarchitektur sollte nur als Referenz für Einzelpersonen und Organisationen betrachtet werden, die ihre eigenen algorithmischen Handelssysteme entwerfen wollen. Für eine vollständige Kopie und Quellen verwendet, laden Sie bitte eine Kopie meines Berichts. Thank you. Trading Floor Architektur Trading Floor Architektur Executive Übersicht Erhöhte Konkurrenz, ein höheres Marktdatenvolumen und neue regulatorische Anforderungen sind einige der treibenden Kräfte hinter Branchenveränderungen. Unternehmen versuchen, ihre Wettbewerbsfähigkeit durch eine ständige Änderung ihrer Handelsstrategien und die Erhöhung der Geschwindigkeit des Handels. Eine tragfähige Architektur muss die neuesten Technologien aus Netzwerk - und Anwendungsdomänen beinhalten. Es muss modular sein, um einen überschaubaren Weg zu schaffen, um jede Komponente mit minimaler Unterbrechung des Gesamtsystems zu entwickeln. Die von diesem Papier vorgeschlagene Architektur basiert daher auf einem Dienstleistungsrahmen. Wir untersuchen Dienste wie Ultra-Latenz-Messaging, Latenzüberwachung, Multicast, Computing, Speicherung, Daten - und Anwendungsvirtualisierung, Trading-Resiliency, Handelsmobilität und Thin Client. Die Lösung für die komplexen Anforderungen der Handelsplattform der nächsten Generation muss mit einer ganzheitlichen Denkweise aufgebaut werden, die die Grenzen traditioneller Silos wie Business und Technologie oder Anwendungen und Vernetzung überschreitet. Ziel dieses Dokuments ist es, Leitlinien für den Aufbau einer Handelsplattform mit extrem niedriger Latenzzeit zur Verfügung zu stellen, während der Rohdurchsatz und die Nachrichtenrate sowohl für Marktdaten als auch für FIX-Handelsaufträge optimiert werden. Um dies zu erreichen, schlagen wir die folgenden Latenzreduktionstechnologien vor: High-Speed ​​InterconnectInfiniBand oder 10 Gbit / s-Konnektivität für das Handels-Cluster Hochgeschwindigkeits-Messaging-Bus Anwendungsbeschleunigung über RDMA ohne Applikation Recoder Echtzeit-Latenzüberwachung und - umkehrung von Trading Traffic auf den Pfad mit minimaler Latenz Branchentrends und Herausforderungen Trading-Architekturen der nächsten Generation müssen auf erhöhte Anforderungen an Geschwindigkeit, Volumen und Effizienz reagieren. Zum Beispiel wird das Volumen der Optionen Marktdaten voraussichtlich verdoppeln, nachdem die Einführung von Optionen Penny-Handel im Jahr 2007. Es gibt auch regulatorische Anforderungen für die beste Ausführung, die Handhabung Preisaktualisierungen mit Raten, die 1M msgsec Ansatz. Für den Austausch. Sie benötigen auch Sichtbarkeit in die Frische der Daten und Beweis, dass der Client die bestmögliche Ausführung erhalten hat. Kurzfristig sind Geschwindigkeit von Handel und Innovation die wichtigsten Unterscheidungsmerkmale. Eine zunehmende Anzahl von Trades werden durch algorithmische Handelsanwendungen behandelt, die so nah wie möglich an den Handelsausführungsort gebracht werden. Eine Herausforderung mit diesen quotblack-boxquot Handelsmotoren ist, dass sie die Volumenzunahme erhöhen, indem sie Aufträge nur annullieren und sie zurücksenden. Die Ursache für dieses Verhalten ist mangelnde Transparenz in die Veranstaltungsort bietet die beste Ausführung. Der menschliche Händler ist jetzt ein quotfinancial Ingenieur, ein quotquantquot (quantitativer Analytiker) mit Programmierungfähigkeiten, die handelnmodelle on the fly einstellen können. Unternehmen entwickeln neue Finanzinstrumente wie Wetterderivate oder Cross-Asset-Klassenhandel und müssen die neuen Applikationen schnell und skalierbar einsetzen. Langfristig sollte die Konkurrenzdifferenzierung nicht nur aus der Analyse, sondern auch aus der Analyse resultieren. Die Star-Händler von morgen übernehmen das Risiko, erreichen wahre Kundeneinblicke und konsequent den Markt (Quelle IBM: www-935.ibmservicesusimcpdfge510-6270-trader. pdf). Die Business-Resilienz ist seit dem 11. September 2001 ein wichtiges Anliegen von Handelsunternehmen. Lösungen in diesem Bereich reichen von redundanten Rechenzentren, die sich in verschiedenen Regionen befinden und an mehrere Handelsplätze angeschlossen sind, an virtuelle Händlerlösungen, die Power Traders die meisten Funktionalitäten eines Handelsraums anbieten An einem entfernten Ort. Die Finanzdienstleistungsbranche zählt zu den anspruchsvollsten IT-Anforderungen. Die Branche erlebt einen architektonischen Wandel hin zu Services-Oriented Architecture (SOA), Web Services und Virtualisierung von IT-Ressourcen. SOA nutzt die Erhöhung der Netzwerkgeschwindigkeit, um eine dynamische Bindung und Virtualisierung von Softwarekomponenten zu ermöglichen. Dies ermöglicht die Erstellung neuer Anwendungen, ohne die Investitionen in bestehende Systeme und Infrastrukturen zu verlieren. Das Konzept hat das Potenzial, die Integrationsfähigkeit zu revolutionieren, was die Komplexität und die Kosten einer solchen Integration erheblich reduziert (gigaspacesdownloadMerrilLynchGigaSpacesWP. pdf). Ein weiterer Trend ist die Konsolidierung von Servern in Rechenzentrums-Serverfarmen, während Händler-Desks nur KVM-Erweiterungen und ultradünne Clients (z. B. SunRay - und HP-Blade-Lösungen) haben. Hochgeschwindigkeits-Metro Area Networks ermöglichen es, Marktdaten zwischen verschiedenen Standorten zu multicastieren und so die Virtualisierung des Handelsraums zu ermöglichen. High-Level-Architektur Abbildung 1 zeigt die Architektur einer Handelsumgebung auf hohem Niveau. Die Ticker-Anlage und die algorithmischen Trading Engines befinden sich im Hochleistungs-Trading-Cluster im Rechenzentrum der Firma oder an der Börse. Die menschlichen Händler befinden sich im Bereich der Endbenutzeranwendungen. Funktionell gibt es zwei Anwendungskomponenten im Enterprise-Trading-Umfeld, Verleger und Abonnenten. Der Messaging-Bus stellt den Kommunikationsweg zwischen Publishern und Abonnenten zur Verfügung. Es gibt zwei Arten von Traffic, die für ein Handelsumfeld spezifisch sind: Market DataCarries-Preisinformationen für Finanzinstrumente, Nachrichten und andere wertschöpfende Informationen wie Analytics. Es ist unidirektional und sehr Latenz empfindlich, in der Regel über UDP Multicast geliefert. Es wird in updatessec gemessen. Und in Mbps. Marktdatenströme von einem oder mehreren externen Feeds, die von Marktdatenanbietern wie Börsen, Datenaggregatoren und ECNs kommen. Jeder Anbieter hat sein eigenes Marktdatenformat. Die Daten werden von Feed-Handlern, spezialisierten Anwendungen, die die Daten normalisieren und reinigen, empfangen und dann an Datenkonsumenten, wie z. B. Preismodule, algorithmische Handelsanwendungen oder menschliche Händler, gesendet. Sell-Side-Unternehmen senden auch die Marktdaten an ihre Kunden, Buy-Side-Firmen wie Investmentfonds, Hedgefonds und andere Vermögensverwalter. Einige Buy-Side-Unternehmen können entscheiden, Direkt-Feeds von den Austausch, Reduzierung der Latenz zu erhalten. Abbildung 1 Trading-Architektur für einen Buy SideSell Side Firm Es gibt keine Industrie-Standard für Markt-Daten-Formate. Jeder Austausch hat ihr eigenes Format. Finanzdienstleister wie Reuters und Bloomberg aggregieren verschiedene Quellen von Marktdaten, normalisieren sie und fügen Neuigkeiten oder Analysen hinzu. Beispiele für konsolidierte Feeds sind RDF (Reuters Data Feed), RWF (Reuters Wire Format) und Bloomberg Professional Services Data. Um Marktdaten mit geringerer Latenz zu liefern, haben beide Anbieter Echtzeit-Marktdaten-Feeds veröffentlicht, die weniger verarbeitet und weniger analytisch sind: Bloomberg B-PipeWith B-Pipe, Bloomberg dekoppelt ihre Marktdaten-Feeds von ihrer Vertriebsplattform aus Ist nicht erforderlich für get B-Pipe. Wombat und Reuters Feed-Handler haben angekündigt, Unterstützung für B-Pipe. Ein Unternehmen kann entscheiden, Feeds direkt von einem Austausch zu empfangen, um die Latenz zu reduzieren. Die Verstärkung der Übertragungsgeschwindigkeit kann zwischen 150 Millisekunden bis 500 Millisekunden liegen. Diese Feeds sind komplexer und teurer und die Firma muss ihre eigene Ticker-Anlage aufbauen und pflegen (financetechfeaturedshowArticle. jhtmlarticleID60404306). Trading OrdersThis Art von Traffic trägt die tatsächlichen Trades. Es ist bidirektional und sehr latenzempfindlich. Es wird in messagessec gemessen. Und Mbps. Die Aufträge stammen von einer Kaufseite oder Verkaufsseite Firma und werden an Handelsplätze wie eine Börse oder ECN zur Ausführung gesendet. Das häufigste Format für den Auftragstransport ist FIX (Financial Information eXchangefixprotocol. org). Die Applikationen, die FIX-Meldungen verarbeiten, heißen FIX-Engines und operieren mit Order Management Systemen (OMS). Eine Optimierung für FIX heißt FAST (Fix Adapted for Streaming), das ein Komprimierungsschema verwendet, um die Nachrichtenlänge zu reduzieren und die Latenz zu reduzieren. FAST ist mehr auf die Bereitstellung von Marktdaten ausgerichtet und hat das Potenzial, ein Standard zu werden. FAST kann auch als Komprimierungsschema für proprietäre Marktdatenformate verwendet werden. Um die Latenz zu reduzieren, können sich Unternehmen entscheiden, Direct Market Access (DMA) zu errichten. DMA ist das automatisierte Verfahren, um einen Wertpapierauftrag direkt an einen Ausführungsort zu leiten und so die Intervention durch einen Dritten zu vermeiden (towergroupresearchcontentglossary. jsppage1ampglossaryId383). DMA erfordert eine direkte Verbindung zum Ausführungsort. Der Messaging-Bus ist Middleware-Software von Anbietern wie Tibco, 29West, Reuters RMDS oder einer Open-Source-Plattform wie AMQP. Der Messaging-Bus verwendet einen zuverlässigen Mechanismus, um Nachrichten zu übermitteln. Der Transport kann über TCPIP (TibcoEMS, 29West, RMDS und AMQP) oder UDPmulticast (TibcoRV, 29West und RMDS) erfolgen. Ein wichtiges Konzept in der Nachrichtenverteilung ist der quottopische Stream, der eine Teilmenge von Marktdaten ist, die durch Kriterien wie Tickersymbol, Industrie oder einen bestimmten Korb von Finanzinstrumenten definiert sind. Abonnenten werden Themengruppen zugeordnet, die einem oder mehreren Unterthemen zugeordnet sind, um nur die relevanten Informationen zu erhalten. In der Vergangenheit erhielten alle Händler alle Marktdaten. Bei den derzeitigen Verkehrsmengen wäre dies suboptimal. Das Netzwerk spielt eine wichtige Rolle im Handelsumfeld. Die Marktdaten werden zum Handelsplatz getragen, wo sich die menschlichen Händler über ein Hochgeschwindigkeitsnetzwerk des Campus oder Metro Area befinden. Hohe Verfügbarkeit und niedrige Latenzzeiten sowie hoher Durchsatz sind die wichtigsten Kennzahlen. Die leistungsstarke Handelsumgebung verfügt über die meisten Komponenten in der Data Center-Serverfarm. Um die Latenz zu minimieren, müssen sich die algorithmischen Trading-Engines in der Nähe von Feed-Handlern, FIX-Engines und Order-Management-Systemen befinden. Ein alternatives Bereitstellungsmodell weist die algorithmischen Handelssysteme auf, die sich an einer Vermittlungsstelle oder einem Dienstanbieter mit schneller Konnektivität zu mehreren Vermittlungsstellen befinden. Bereitstellungsmodelle Es gibt zwei Bereitstellungsmodelle für eine leistungsfähige Handelsplattform. Die Unternehmen haben die Wahl zwischen einem Rechenzentrum der Handelsgesellschaft (Abbildung 2) Dies ist das traditionelle Modell, in dem eine vollwertige Handelsplattform von der Firma entwickelt und betrieben wird, die über Kommunikationsverbindungen zu allen Handelsplätzen verfügt. Latenz variiert mit der Geschwindigkeit der Links und die Anzahl der Hops zwischen der Firma und den Veranstaltungsorten. Abbildung 2 Traditionelles Bereitstellungsmodell Koordination am Handelsplatz (Börsen, Finanzdienstleister (FSP)) (Abbildung 3) Das Handelsunternehmen setzt seine automatisierte Handelsplattform so nah wie möglich an die Ausführungsorte, um die Latenz zu minimieren. Abbildung 3 Verteilungsmodell-Services-orientierte Trading-Architektur Wir schlagen ein dienstleistungsorientiertes Framework für den Aufbau der Handelsarchitektur der nächsten Generation vor. Dieser Ansatz bietet einen konzeptionellen Rahmen und einen Implementierungspfad, der auf Modularisierung und Minimierung von Abhängigkeiten beruht. Dieses Framework stellt Unternehmen eine Methodologie zur Verfügung, um ihren gegenwärtigen Zustand in Bezug auf Dienstleistungen zu bewerten Priorisierung der Dienste basierend auf ihrem Wert für das Unternehmen Entwickeln Sie die Handelsplattform in den gewünschten Zustand mit einem modularen Ansatz Die Hochleistungs-Handelsarchitektur setzt auf die folgenden Dienstleistungen, wie Definiert durch das in Abbildung 4 dargestellte Service-Architektur-Framework. Abbildung 4 Service Architektur Framework für High Performance Trading Ultra-Low Latency Messaging Service Dieser Service wird von dem Messaging-Bus bereitgestellt, der ein Softwaresystem ist, Viele Anwendungen. Das System besteht aus: Ein Satz von vordefinierten Nachrichtenschemata Ein Satz von gemeinsamen Befehlsnachrichten Eine gemeinsame Anwendungsinfrastruktur zum Senden der Nachrichten an Empfänger. Die gemeinsame Infrastruktur kann auf einem Message-Broker oder einem publishsubscribe-Modell basieren. Die wichtigsten Anforderungen für den Messaging-Bus der nächsten Generation (Quelle 29West): Niedrigstmögliche Latenzzeit (zB weniger als 100 Mikrosekunden) Stabilität bei hoher Last (zB mehr als 1,4 Millionen msg.) Kontrolle und Flexibilität (Ratensteuerung und konfigurierbare Transporte) Sind Bemühungen in der Industrie, den Messaging-Bus zu standardisieren. Advanced Message Queuing Protocol (AMQP) ist ein Beispiel für einen offenen Standard, der von J. P. Morgan Chase unterstützt wird und von einer Gruppe von Anbietern wie Cisco, Envoy Technologies, Red Hat, TWIST Process Innovations, Iona, 29West und iMatix unterstützt wird. Zwei der Hauptziele sind, einen einfacheren Weg zur Interoperabilität für Anwendungen bereitzustellen, die auf verschiedenen Plattformen und Modularität geschrieben sind, so dass die Middleware einfach entwickelt werden kann. Ganz allgemein ist ein AMQP-Server analog zu einem E-Mail-Server, wobei jede Vermittlungsstelle als Nachrichtenübertragungsagent und jede Nachrichtenwarteschlange als Mailbox fungiert. Die Bindungen definieren die Routingtabellen in jedem Transferagent. Publisher senden Nachrichten an einzelne Übertragungsagenten, die dann die Nachrichten in Postfächer weiterleiten. Verbraucher nehmen Nachrichten aus Postfächern, die ein leistungsfähiges und flexibles Modell schafft, das einfach ist (Quelle: amqp. careikiwikitiki-index. phppageOpenApproachWhyAMQP). Latency Monitoring Service Die wichtigsten Voraussetzungen für diesen Service sind: Granularität der Messungen in Millisekunden Echtzeit-Sichtbarkeit ohne Hinzufügung von Latenzzeiten für den Traffic Traffic Fähigkeit, die Latenz der Anwendungsverarbeitung von der Netzwerk-Transit-Latenz zu unterscheiden Fähigkeit, hohe Nachrichtenraten zu bewältigen Bieten Sie eine programmgesteuerte Schnittstelle für Um Latenzdaten zu empfangen, so dass sich algorithmische Trading Engines an sich ändernde Bedingungen anpassen können. Korrelieren von Netzwerkereignissen mit Anwendungsereignissen für Fehlerbehandlungszwecke Latenzzeit kann als das Zeitintervall definiert werden, zwischen dem eine Trade Order gesendet wird, und wenn dieselbe Reihenfolge quittiert und gehandelt wird Von der empfangenden Partei. Die Lösung der Latenzproblematik ist ein komplexes Problem, das einen ganzheitlichen Ansatz erfordert, der alle Latenzquellen identifiziert und verschiedene Technologien auf verschiedenen Ebenen des Systems anwendet. Fig. 5 zeigt die Vielfalt der Komponenten, die Latenzzeiten an jeder Schicht des OSI-Stapels einbringen können. Es bildet auch jede Quelle der Latenz mit einer möglichen Lösung und einer Überwachungslösung ab. Dieser mehrschichtige Ansatz bietet Unternehmen eine strukturierte Möglichkeit, das Latenzproblem anzugreifen, wobei jede Komponente als Dienstleistung betrachtet und konsequent über das Unternehmen hinweg behandelt werden kann. Eine genaue Messung des dynamischen Zustands dieses Zeitintervalls über alternative Routen und Ziele kann bei taktischen Handelsentscheidungen eine große Hilfe sein. Die Fähigkeit, die genaue Lage der Verzögerungen zu identifizieren, sei es im Kundennetznetz, auf dem zentralen Verarbeitungsknoten oder auf der Transaktionsanwendungsebene, bestimmt entscheidend die Fähigkeit von Dienstanbietern, ihre vertraglichen Vereinbarungen auf Handelsniveau (SLAs) zu erfüllen. Für Buy-Side - und Sell-Side-Formulare sowie für Marktdaten-Syndikatoren erfolgt die schnelle Identifikation und Beseitigung von Engpässen direkt in verbesserte Handels - und Ertragsmöglichkeiten. Abbildung 5 Latenzmanagement-Architektur Cisco Low-Latency-Monitoring-Tools Traditionelle Netzwerk-Monitoring-Tools arbeiten mit Minuten oder Sekunden Granularität. Handelsplattformen der nächsten Generation, insbesondere solche, die den algorithmischen Handel unterstützen, erfordern Latenzen von weniger als 5 ms und extrem niedrige Paketverluste. Auf einem Gigabit-LAN ​​kann ein 100-ms-Microburst verursachen, dass 10.000 Transaktionen verloren gehen oder übermäßig verzögert werden. Cisco bietet seinen Kunden eine Auswahl an Tools, um die Latenzzeiten in einer Handelsumgebung zu messen: Bandbreiten-Qualitätsmanager (BQM) (OEM von Corvil) Cisco AON-basierte Finanzdienstleistungs-Latenzüberwachungslösung (FSMS) Bandbreiten-Qualitätsmanager Bandwidth Quality Manager (BQM) 4.0 ist Ein Netzwerk-Performance-Management-Produkt der nächsten Generation, das es Kunden ermöglicht, ihr Netzwerk auf kontrollierte Latenz - und Verlustleistung zu überwachen und bereitzustellen. Während BQM nicht ausschließlich auf Handelsnetze ausgerichtet ist, ist die Mikrosekundenvisibilität in Kombination mit intelligenten Funktionen zur Bandbreitenoptimierung ideal für diese anspruchsvollen Umgebungen. Cisco BQM 4.0 implementiert eine breite Palette von patentierten und zum Patent angemeldeten Verkehrs - und Netzwerkanalysetechnologien, die dem Anwender eine noch nie dagewesene Sichtbarkeit und ein Verständnis der Optimierung des Netzwerks für maximale Anwendungsleistung bieten. Cisco BQM wird nun auf der Produktfamilie der Cisco Application Deployment Engine (ADE) unterstützt. Die Cisco ADE-Produktfamilie ist die Plattform für Cisco Network Management-Anwendungen. BQM-Vorteile Die Cisco BQM-Mikrosichtbarkeit ist die Fähigkeit, Latenz, Jitter und Verluste, die Verkehrsereignisse verursachen, zu detektieren, zu messen und zu analysieren, bis hin zu Mikrosekundenebenen mit einer Paketauflösung. Dadurch kann Cisco BQM die Auswirkungen von Verkehrsereignissen auf Netzwerklatenz, Jitter und Verlust erkennen und bestimmen. Kritisch für Handelsumgebungen ist, dass BQM Latenz-, Verlust - und Jitter-Messungen einseitig für TCP - und UDP - (Multicast-) Datenverkehr unterstützen kann. Das bedeutet, dass sie nahtlos sowohl für Trading - als auch für Marktdaten-Feeds berichtet. BQM erlaubt es dem Benutzer, einen umfassenden Satz von Schwellenwerten (gegen Microburst-Aktivität, Latenz, Verlust, Jitter, Auslastung usw.) auf allen Schnittstellen festzulegen. BQM betreibt dann eine Hintergrundwalzenpaketaufnahme. Wenn eine Schwellenverletzung oder ein anderes potentielles Leistungsverschlechterungsereignis auftritt, löst sie Cisco BQM aus, um die Paketaufnahme zur späteren Analyse auf dem Datenträger zu speichern. Dies ermöglicht dem Benutzer, den Anwendungsverkehr, der von der Leistungsverschlechterung betroffen war, zu untersuchen (quiethe victimsquot) und den Verkehr, der die Leistungsverschlechterung verursacht hat (quich der culpritsquot). Dies kann die Zeit für die Diagnose und Behebung von Netzwerkleistungsproblemen erheblich verkürzen. BQM ist auch in der Lage, detaillierte Empfehlungen für die Bereitstellung von Empfehlungen für die Bandbreite und Qualität des Dienstes (QoS) bereitzustellen, die der Benutzer direkt anwenden kann, um die gewünschte Netzwerkleistung zu erreichen. BQM-Messungen veranschaulicht Um den Unterschied zwischen einigen der herkömmlicheren Messtechniken und der Sichtbarkeit von BQM zu verstehen, können wir einige Vergleichsgrafiken betrachten. Im ersten Satz von Graphen (Abbildung 6 und Abbildung 7) sehen wir die Differenz zwischen der Latenzzeit, die mit dem BQMs passivem Netzwerkqualitätsmonitor (PNQM) gemessen wird, und der Latenz, die durch die Injektion von Ping-Paketen alle 1 Sekunde in den Verkehrsstrom gemessen wird. In Abbildung 6 sehen wir die Latenz, die von 1-Sekunden-ICMP-Ping-Paketen für den realen Netzwerkverkehr berichtet wird (sie wird durch 2 geteilt, um eine Schätzung für die Einwegverzögerung zu geben). Es zeigt die Verzögerung bequem unter etwa 5ms für fast die ganze Zeit. Abbildung 6 Latenz, die von 1-Sekunden-ICMP-Ping-Paketen für realen Netzwerkverkehr gemeldet wird In Abbildung 7. sehen wir die Latenz, die PNQM für denselben Traffic zur gleichen Zeit gemeldet hat. Hier sehen wir, dass wir durch die Messung der Einweg-Latenz der eigentlichen Anwendungspakete ein völlig anderes Bild erhalten. Hier wird die Latenz etwa 20 ms schweben, mit gelegentlichen Bursts weit höher. Die Erklärung ist, dass, weil ping sendet Pakete nur jede Sekunde, es ist völlig fehlt die meisten der Anwendungsverkehr Latenz. Tatsächlich zeigen die Ping-Ergebnisse typischerweise nur die Ausbreitungsverzögerung für die Rundreise anstelle der realistischen Anwendungslatenz im gesamten Netzwerk an. Figure 7 Latency Reported by PNQM for Real Network Traffic In the second example (Figure 8 ), we see the difference in reported link load or saturation levels between a 5-minute average view and a 5 ms microburst view (BQM can report on microbursts down to about 10-100 nanosecond accuracy). The green line shows the average utilization at 5-minute averages to be low, maybe up to 5 Mbitss. The dark blue plot shows the 5ms microburst activity reaching between 75 Mbitss and 100 Mbitss, the LAN speed effectively. BQM shows this level of granularity for all applications and it also gives clear provisioning rules to enable the user to control or neutralize these microbursts. Figure 8 Difference in Reported Link Load Between a 5-Minute Average View and a 5 ms Microburst View BQM Deployment in the Trading Network Figure 9 shows a typical BQM deployment in a trading network. Figure 9 Typical BQM Deployment in a Trading Network BQM can then be used to answer these types of questions: Are any of my Gigabit LAN core links saturated for more than X milliseconds Is this causing loss Which links would most benefit from an upgrade to Etherchannel or 10 Gigabit speeds What application traffic is causing the saturation of my 1 Gigabit links Is any of the market data experiencing end-to-end loss How much additional latency does the failover data center experience Is this link sized correctly to deal with microbursts Are my traders getting low latency updates from the market data distribution layer Are they seeing any delays greater than X milliseconds Being able to answer these questions simply and effectively saves time and money in running the trading network. BQM is an essential tool for gaining visibility in market data and trading environments. It provides granular end-to-end latency measurements in complex infrastructures that experience high-volume data movement. Effectively detecting microbursts in sub-millisecond levels and receiving expert analysis on a particular event is invaluable to trading floor architects. Smart bandwidth provisioning recommendations, such as sizing and what-if analysis, provide greater agility to respond to volatile market conditions. 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 2600280037003800 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 (tradingmetricsTMbrochure. 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 (ciscogoipsla ). 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 IO acceleration inteltechnologyioacceleration306517.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 inteltechnologyioacceleration306517.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 TCPIP 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): ciscoapplicationpdfenusguestnetsolns500c643cdccont0900aecd804c35cb. 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 (networkworldsupp2005ndc1022105virtual. 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 (gridtoday030210101061.html ). This is called a data grid and is the first step in the process of creating what Gartner calls Extreme Transaction Processing (XTP) (gartnerDisplayDocumentrefgsearchampid500947 ). 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 GroupsChannels 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 networkapplication 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