ПоискПоиск  ПравилаПравила  ПользователиПользователи  ПрофильПрофиль  РегистрацияРегистрация  ВходВход
Форум «Техническая поддержка ПО ASTS»
Форум разработчиков и пользователей программного обеспечения, предназначенного для работы на рынках, обслуживаемых торгово-клиринговой системой ММВБ (ASTS).
Любые вопросы по FIX/FAST
Новая тема   Ответить на тему
На страницу Пред.  1, 2, 3, 4, 5  След.
 Предыдущая тема :: Следующая тема 
 Автор  Сообщение 
markh
Стаж: 5 лет 6 месяцев
Сообщений: 122
Вт Дек 16, 2014 21:48 (спустя 1 месяц 10 дней 20 часов) Ответить с цитатой Получить постоянный адрес сообщения
я имел в виду сколько пар 
 
westtrd
Стаж: 6 лет 4 месяца
Откуда: Belarus
Сообщений: 1034
Ср Дек 17, 2014 00:13 (спустя 1 месяц 10 дней 22 часа) Ответить с цитатой Получить постоянный адрес сообщения
речь идет о валютном и фондовом фидах одновременно, если говорить про инкременталы
 
 
markh
Стаж: 5 лет 6 месяцев
Сообщений: 122
Ср Дек 17, 2014 11:22 (спустя 1 месяц 11 дней 9 часов) Ответить с цитатой Получить постоянный адрес сообщения
инкременталы 
 
Oleg Vazhnev
Стаж: 7 лет 11 месяцев
Сообщений: 1376
Вт Дек 23, 2014 00:33 (спустя 1 месяц 16 дней 22 часа) Ответить с цитатой Получить постоянный адрес сообщения
Здравствуйте

Решил на колокации потрогать тестовый фаст - пробую получать одновременно данные с фидов А и Б - порты 16114 17114.
Обнаружил у себя что 99% (это не образное выражение, а результат измерений Smile пакетов раньше появляются на фиде А, среднее время опережения 5 мкс.
Насколько такой результат реалистичен? Действительно ли снэпшот в фид А идёт настолько быстрее?

Замерил бой - получился совсем странный результат, 100% пакетов раньше в фиде B, среднее время опережения 11 мкс. Теперь думаю что тот поток который фид Б получал возможно сел на процессор который "поближе" к сетевой карте. Но 11 мкс что-то совсем громадное время.

В общем вопрос в том насколько данные в фидах А и Б разбросаны по времени, в микросекундах? Есть ли у какого-то из двух фидов статистическое преимущество? Или если на принимающей стороне обеспечить равные условия для фидов А и Б то должно получаться фифти-фифти, т.е. половина данных раньше в фиде А а половина раньше в фиде Б?

Спасибо 
 
Последний раз редактировалось автором 23.12.2014 10:36, всего редактировалось 2 раза
Grigory Baytsur
Стаж: 5 лет 7 месяцев
Откуда: Москва
Сообщений: 46
Вт Дек 23, 2014 11:38 (спустя 1 месяц 17 дней 10 часов) Ответить с цитатой Получить постоянный адрес сообщения
Добрый день

Сервер варит одно сообщение, а потом отправляет его в две сетевые карты. На самом сервере они публикуются одновременно, то есть среднее расстояние по времени между копиями равно нулю. Остальное - сеть.

Не все понятно в вопросах:
1. Тестовый ФАСТ - это который в торговой сети? Сейчас вещание идет из ТЦ Кисловский, то есть сетевое время доставки до зоны колокации не очень мало. Сервер вещает копии А и B одновременно через две сетевые карты в разные сети, а дальнейшие пути доставки определяются сетевой инфраструктурой между ТЦ. Не имеет смысла это анализировать. В ближайшее время перенесем источник вещания на М1, но и тогда мы ничего не гарантируем для времен доставки сообщений от тестовой машины.
2. Какой именно FAST? см. http://moex.com/n6319/?nt=107. Для второй линии я бы ожидал одинаковых времен доставки, если все правильно сделано, то есть если слушать потоки двумя сетевыми картами из правильных сетей. Если же слушать обе копии одной сетевой картой, то пути доставки будут разные.

Для первой линии сейчас все немного сложнее, но скоро будет переезд на новое железо и в те же сети, что и у второй линии. Изменений в конфигурации адресов вещания не будет, предупреждений тоже.

==

Итого:
быстрее всего доставляется та копия из четырех доступных, которая быстрее доставляется. Это индивидуально. Для оптимизации можно обращаться к сетевым специалистам, чтобы они посмотрели, что можно улучшить, если можно.  
 
Oleg Vazhnev
Стаж: 7 лет 11 месяцев
Сообщений: 1376
Вт Дек 23, 2014 23:39 (спустя 1 месяц 17 дней 22 часа) Ответить с цитатой Получить постоянный адрес сообщения
Спасибо Григорий, да видимо сравнивать и разговаривать есть смысл только о 2ой линии продакшена, как наиболее актуальной.

Что подразумевается под двумя сетевыми картами? У меня карта одна, порта два, LACP собрал, слушаю соответственно с разных ВЛАНОВ, а вот как ВЛАНы по портам распределяются этого я уж не знаю, всегда надеелся что волшебным образом фид А уходит на один порт, а фид Б на второй. Случается ли волшебство или здесь нужно что-то конфигурировать?

Только что проверил Incremental на второй ветке валютного рынка опять у меня фид Б быстрее фида А в среднем на 11 мкс в 100% случаев. Оба процесса через taskset повесил на одно и то же ядро вроде бы. 
 
Последний раз редактировалось автором 24.12.2014 00:01, всего редактировалось 2 раза
Grigory Baytsur
Стаж: 5 лет 7 месяцев
Откуда: Москва
Сообщений: 46
Ср Дек 24, 2014 11:18 (спустя 1 месяц 18 дней 9 часов) Ответить с цитатой Получить постоянный адрес сообщения
ftp://ftp.moex.com/pub/FAST/ASTS/utils/ - там лежит простой скрипт на питоне, как пользоваться написано в readme.txt
Им можно подписаться на А,В через разные порты сетевой карты и сравнить. tcpdump вам в помощь. Два раза подписаться на одну копию по разным портам сетевой карты, само собой, не выйдет.

Вообще говоря, разные порты сетевой карты могут быть приделаны к разным узлам NUMA, если их больше одного. Не очевидно, что привязка процессов к одному ядру (узлу NUMA) является правильным вариантом.

В любом случае я не совсем понимаю, а чем плоха разница времен?  
 
Oleg Vazhnev
Стаж: 7 лет 11 месяцев
Сообщений: 1376
Ср Дек 24, 2014 12:15 (спустя 1 месяц 18 дней 10 часов) Ответить с цитатой Получить постоянный адрес сообщения
Grigory Baytsur писал(а):
ftp://ftp.moex.com/pub/FAST/ASTS/utils/ - там лежит простой скрипт на питоне, как пользоваться написано в readme.txt
Им можно подписаться на А,В через разные порты сетевой карты и сравнить. tcpdump вам в помощь. Два раза подписаться на одну копию по разным портам сетевой карты, само собой, не выйдет.

Вообще говоря, разные порты сетевой карты могут быть приделаны к разным узлам NUMA, если их больше одного. Не очевидно, что привязка процессов к одному ядру (узлу NUMA) является правильным вариантом.

В любом случае я не совсем понимаю, а чем плоха разница времен?  


Спасибо Григорий, в скрипте в качестве интерфейса указывается ip адресс (т.е например 10.1.1.1, а не eno1). А где гарантия что запустив две копии программы с ip адрессами интерфейсов фидов А и Б оно физически пойдёт по разным портам? Может ли случится так что оба влана - 398 и 399 пойдут по одному и тому же порту?

По поводу NUMA понял, надо значит попробовать пораскидать рисиверы по разным NUMA и посмотреть как оно будет. Но насколько я успел почитать в сервере пара PCIE 3.0 x16 портов и один из них идёт к одному процессору, а второй ко второму, таким образом оба порта сетевой карты должны попадать на один NUMA, т.к. сама карта воткнута в PCI E 3.0 ) Можно перекинуть на второй NUMA если карту переставить, но в любом случае оба порта карты идут на один и тот же процессор.

Разница времён очень плоха. Если данные физически идут примерно одновременно, значит я ловлю как минимум один из фидов с огромным опозданием, а это очень сильно портит летенси и делает арбитражинг по большому счёту бессмысленным ) 
 
Последний раз редактировалось автором 24.12.2014 12:17, всего редактировалось 1 раз
westtrd
Стаж: 6 лет 4 месяца
Откуда: Belarus
Сообщений: 1034
Ср Дек 24, 2014 22:28 (спустя 1 месяц 18 дней 20 часов) Ответить с цитатой Получить постоянный адрес сообщения
Проблема в архитектуре решения 
 
Oleg Vazhnev
Стаж: 7 лет 11 месяцев
Сообщений: 1376
Ср Дек 24, 2014 23:57 (спустя 1 месяц 18 дней 22 часа) Ответить с цитатой Получить постоянный адрес сообщения
У меня сейчас основной вопрос в том как так получается что используя одно и то же приложения я ловлю Фид Б стабильно раньше на 5-10 мкс (а скорее Фид А стабильно позже на 5-10 мкс)
Это очень подозрительно, даже не об архитектуре ведь речь (которая конечно же плохая).

Попробую ка я tcpdumpом отдампить и посмотреть будет ли там разница в 5-10 мкс. 
 
Последний раз редактировалось автором 25.12.2014 01:04, всего редактировалось 1 раз
Grigory Baytsur
Стаж: 5 лет 7 месяцев
Откуда: Москва
Сообщений: 46
Чт Дек 25, 2014 17:36 (спустя 1 месяц 19 дней 15 часов) Ответить с цитатой Получить постоянный адрес сообщения
Посмотрел внимательнее. Все для второй линии.
На самом сервере (фондовый фаст) копия В попадает в дамп всегда позже: медиана 6 мкс, 99% - 18 мкс. Если подписаться на фондовый рынок на соседней (валютный фаст) машине, то выходит точно то же самое. Подписаться на копию А на соседней машине из адреса интерфейса, в который публикуется В не получается. Это особенность организации сети.
На новых машинах, подготавливаемых к переносу на них вещания первой линии, тоже работает FAST с вещанием в localhost. И машины и FAST там новее, но копия B попадает в дамп все равно на 4 мкс позже.
Примите как данность.  
 
Oleg Vazhnev
Стаж: 7 лет 11 месяцев
Сообщений: 1376
Чт Дек 25, 2014 22:00 (спустя 1 месяц 19 дней 20 часов) Ответить с цитатой Получить постоянный адрес сообщения
Спасибо Григорий за интересную информацию! 
 
markh
Стаж: 5 лет 6 месяцев
Сообщений: 122
Пт Янв 09, 2015 20:50 (спустя 2 месяца 3 дня 19 часов) Ответить с цитатой Получить постоянный адрес сообщения
Вот такой вопрос: при работе через фикс можно ли как-то узнавать текущую стартовую позицию/проторгованный объем за день если осуществляется поздний вход и вся информация по состоянию потеряна? 
 
Grigory Baytsur
Стаж: 5 лет 7 месяцев
Откуда: Москва
Сообщений: 46
Вт Янв 13, 2015 14:08 (спустя 2 месяца 7 дней 12 часов) Ответить с цитатой Получить постоянный адрес сообщения
Пожалуйста, уточните: о каких данных и о каком сервисе идет речь? 
 
markh
Стаж: 5 лет 6 месяцев
Сообщений: 122
Вт Янв 13, 2015 20:42 (спустя 2 месяца 7 дней 19 часов) Ответить с цитатой Получить постоянный адрес сообщения
Григорий,

Да, пожалуйста:

клиент торгует на валютном рынке. он ведет свою открытую позицию самостоятельно.
сервер ломается, торговля останавливается. информация об открытой позиции по инструменту(ам) потеряна. восстановить самостоятельно не откуда.
клиент подключается к рынку вновь.
клиент использует фаст/фикс.

Есть ли возможность восстановить состояние открытой позиции на момент подсоединения после разрыва? (Например перезаказать все экзек-репорты с начала дня?)


Для симметрии, на срочном рынке через их си-гейт доступна таблица по активным на этот момент позициям клиента.

Спасибо. 
 
Показать сообщения:   
Новая тема   Ответить на тему
Список разделов форума -> Техническая поддержка ПО ASTSНа страницу Пред.  1, 2, 3, 4, 5  След.
Страница 3 из 5

Rambler's Top100 Rambler's Top100
Рейтинг@Mail.ru
Copyright © Московская биржа, 2006-2017.
Ваши предложения, замечания и вопросы
по работе форума направляйте на email: