Aeron: Reliable unicast and multicast transport protocol

1.
Martin Thompson.
Low Latency를 관심을 가지면서 익숙한 이름이면서 좋아하는 프로그래머입니다. 저도 자주 소개하였습니다.

Disruptor와 FEP
FIX와 시세 – ITCH 그리고 SBE

Martin Thompson이 새로운 프로젝트를 시작했습니다. Aeron입니다. 글의 제목처럼 Low Latency에 적합하도로고 효율성, 신뢰성 및 성능을 목표로 설계 및 개발하는 프로젝트입니다. 지난 11월 독일 베를린에서 열린 goto; conference에서 발표한 자료입니다.

Does TCP not meet your required latency consistently? Is UDP not reliable enough? Do you need to multicast? What about flow control, congestion control, and a means to avoid head of line blocking that can be integrated with the application? Or perhaps you’re just fascinated by how to design for the cutting edge of performance? Maybe you have tried higher level messaging products and found they are way too complicated because of the feature bloat driven by product marketing cycles.

Aeron takes it back-to-basics with a pure focus on performance and reliability. We have built it from the ground up with mechanical sympathy in its DNA. The data structures are lock-free, wait-free, copy-free, and even persistent for our functional friends. Interaction with the media is layered so you can swap between UDP, Inifiniband, or Shared Memory as required.

Aeron is open-source with implementations in Java and C++ that interoperate. There are no unnecessary features to bloat the implementation, yet the design is open so that it can be composed into higher level abstractions.
Aeron: The Next Generation in Open-Source High-Performance Messaging중에서

실행하면 어떤 모습일까요? Chris Donnan이 다운을 받아서 실행한 모습입니다. Aeron에 올라온 이미지입니다.

aerondemo

2.
Aeron에서 Java와 C++ 버전을 받을 수 있습니다. Exture+는 FEP와 매매체결시스템사이를 Infiniband를 기반으로 한 프로토콜을 적용하였습니다. 반면 일본 동경증권거래소는 UDP를 기반으로 한 프로토콜을 사용하였습니다. Aeron은 후자를 기반으로 전자의 기술까지를 포괄한 듯 합니다.

Arrowhead와 증권산업 구조조정

아래는 발표자료입니다.

Download (PDF, 1.44MB)

2 Comments

  1. 애론

    대체 어느나라 말입니까.. 이해하고 작성할 수 있는 분들이 너무 부럽네요

    Reply
    1. smallake (Post author)

      저도 배우는 중입니다. 소개하는 것이 목적입니다.

      Reply

Leave a Comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.