Обеспечение целостности данных при проведении численных экспериментов в распределенных вычислениях на платформе BOINC.
Распределенные вычисления подразумевают собой разбиение одной большой задачи на множество более мелких подзаданий, которые рассылаются на вычислительные узлы для вычисления (bag of task) [1]. BOINC — открытая программная платформа, которая позволяет использовать распределенные вычисления для проведения больших вычислительных экспериментов. Такие эксперименты называются проектами[2].
Для защиты целостности данных в платформе BOINC используется метод побитового сравнения нескольких результатов от разных вычислительных узлов, что влечет за собой вычисление одного и того же подзадания на нескольких вычислительных узлах. Такой метод уменьшает вычислительную мощность грид-системы. Также в платформе BOINC используется цифровая подпись отправляемых вычислительному узлу файлов, однако это не защищает созданные на стороне вычислительного узла файлы[2].
Нарушение целостности данных может быть нескольких видов: изменение или подмена входных, промежуточных и/или выходных данных.
Была предложена схема обеспечения целостности данных в проекте BOINC, которая позволяет сократить число первоначальных копий подзаданий.
Предложенная схема использует для шифрования хеш-сумм симметричный алгоритм. Это позволяет защитить целостность промежуточных и выходных данных. Так же в такой схеме используются современные алгоритмы вычисления хеш-суммы и шифрования, которые в любой момент можно поменять.
Рис. 1 «Стандартная схема взаимодействия сервера и вычислительного узла (а) и измененная (б)»
В дальнейшем планируется провести большой вычислительный эксперимент, для сравнения этих двух схем обеспечения целостности данных в проекте BOINC.
Ссылки
- R. Bertin, S. Hunold, A. Legrand, C. Touati. Fair scheduling of bag-of-tasks applications using distributed Lagrangian optimization // Journal of Parallel and Distributed Computing, Volume 74, Issue 1, Jan. 2014, pp. 1914-1929
- Open-source software for volunteer computing. URL: https://boinc.berkeley.edu