Improving automatic centralization by version separation

Lei Ma, Cyrille Artho, Hiroyuki Sato

Research output: Contribution to journalArticle

Abstract

With today's importance of distributed applications, their verification and analysis are still challenging. They involve large combinational states, interactive network communications between peers, and concurrency. Although there are some dynamic analysis tools for analyzing the runtime behavior of a single-process application, they do not provide methods to analyze distributed applications as a whole, where multiple processes run simultaneously. Centralization is a general solution which transforms multi-process applications into a single-process one that can be directly analyzed by existing tools. In this paper, we improve the accuracy of centralization. Moreover, we extend it as a general framework for analyzing distributed applications with multiple versions. First, we formalize the version conflict problem and present a simple solution, and further propose an optimized solution to resolving class version conflicts during centralization. Our techniques enable sharing common code whenever possible while keeping the version space of each component application separate. Centralization issues like startup semantics and static field transformation are improved and discussed. We implement and apply our centralization tool to some network benchmarks. Experiments, where existing tools are used on the centralized application, prove the usefulness of our automatic centralization tool, showing that centralization enables these tools to analyze distributed applications with multiple versions.

Original languageEnglish
Pages (from-to)1-13
Number of pages13
JournalIPSJ Online Transactions
Volume7
Issue number1
DOIs
Publication statusPublished - Feb 19 2014
Externally publishedYes

Fingerprint

Dynamic analysis
Telecommunication networks
Semantics
Experiments

All Science Journal Classification (ASJC) codes

  • Computer Science(all)

Cite this

Improving automatic centralization by version separation. / Ma, Lei; Artho, Cyrille; Sato, Hiroyuki.

In: IPSJ Online Transactions, Vol. 7, No. 1, 19.02.2014, p. 1-13.

Research output: Contribution to journalArticle

Ma, Lei ; Artho, Cyrille ; Sato, Hiroyuki. / Improving automatic centralization by version separation. In: IPSJ Online Transactions. 2014 ; Vol. 7, No. 1. pp. 1-13.
@article{0d53da6974f34692bb99b13101319963,
title = "Improving automatic centralization by version separation",
abstract = "With today's importance of distributed applications, their verification and analysis are still challenging. They involve large combinational states, interactive network communications between peers, and concurrency. Although there are some dynamic analysis tools for analyzing the runtime behavior of a single-process application, they do not provide methods to analyze distributed applications as a whole, where multiple processes run simultaneously. Centralization is a general solution which transforms multi-process applications into a single-process one that can be directly analyzed by existing tools. In this paper, we improve the accuracy of centralization. Moreover, we extend it as a general framework for analyzing distributed applications with multiple versions. First, we formalize the version conflict problem and present a simple solution, and further propose an optimized solution to resolving class version conflicts during centralization. Our techniques enable sharing common code whenever possible while keeping the version space of each component application separate. Centralization issues like startup semantics and static field transformation are improved and discussed. We implement and apply our centralization tool to some network benchmarks. Experiments, where existing tools are used on the centralized application, prove the usefulness of our automatic centralization tool, showing that centralization enables these tools to analyze distributed applications with multiple versions.",
author = "Lei Ma and Cyrille Artho and Hiroyuki Sato",
year = "2014",
month = "2",
day = "19",
doi = "10.2197/ipsjtrans.7.1",
language = "English",
volume = "7",
pages = "1--13",
journal = "IPSJ Online Transactions",
issn = "1882-6660",
publisher = "Information Processing Society of Japan",
number = "1",

}

TY - JOUR

T1 - Improving automatic centralization by version separation

AU - Ma, Lei

AU - Artho, Cyrille

AU - Sato, Hiroyuki

PY - 2014/2/19

Y1 - 2014/2/19

N2 - With today's importance of distributed applications, their verification and analysis are still challenging. They involve large combinational states, interactive network communications between peers, and concurrency. Although there are some dynamic analysis tools for analyzing the runtime behavior of a single-process application, they do not provide methods to analyze distributed applications as a whole, where multiple processes run simultaneously. Centralization is a general solution which transforms multi-process applications into a single-process one that can be directly analyzed by existing tools. In this paper, we improve the accuracy of centralization. Moreover, we extend it as a general framework for analyzing distributed applications with multiple versions. First, we formalize the version conflict problem and present a simple solution, and further propose an optimized solution to resolving class version conflicts during centralization. Our techniques enable sharing common code whenever possible while keeping the version space of each component application separate. Centralization issues like startup semantics and static field transformation are improved and discussed. We implement and apply our centralization tool to some network benchmarks. Experiments, where existing tools are used on the centralized application, prove the usefulness of our automatic centralization tool, showing that centralization enables these tools to analyze distributed applications with multiple versions.

AB - With today's importance of distributed applications, their verification and analysis are still challenging. They involve large combinational states, interactive network communications between peers, and concurrency. Although there are some dynamic analysis tools for analyzing the runtime behavior of a single-process application, they do not provide methods to analyze distributed applications as a whole, where multiple processes run simultaneously. Centralization is a general solution which transforms multi-process applications into a single-process one that can be directly analyzed by existing tools. In this paper, we improve the accuracy of centralization. Moreover, we extend it as a general framework for analyzing distributed applications with multiple versions. First, we formalize the version conflict problem and present a simple solution, and further propose an optimized solution to resolving class version conflicts during centralization. Our techniques enable sharing common code whenever possible while keeping the version space of each component application separate. Centralization issues like startup semantics and static field transformation are improved and discussed. We implement and apply our centralization tool to some network benchmarks. Experiments, where existing tools are used on the centralized application, prove the usefulness of our automatic centralization tool, showing that centralization enables these tools to analyze distributed applications with multiple versions.

UR - http://www.scopus.com/inward/record.url?scp=84893874497&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84893874497&partnerID=8YFLogxK

U2 - 10.2197/ipsjtrans.7.1

DO - 10.2197/ipsjtrans.7.1

M3 - Article

AN - SCOPUS:84893874497

VL - 7

SP - 1

EP - 13

JO - IPSJ Online Transactions

JF - IPSJ Online Transactions

SN - 1882-6660

IS - 1

ER -