Hiroshi YAMADA Shuntaro TONOSAKI Kenji KONO
Infrastructure as a Service (IaaS), a form of cloud computing, is gaining attention for its ability to enable efficient server administration in dynamic workload environments. In such environments, however, updating the software stack or content files of virtual machines (VMs) is a time-consuming task, discouraging administrators from frequently enhancing their services and fixing security holes. This is because the administrator has to upload the whole new disk image to the cloud platform via the Internet, which is not yet fast enough that large amounts of data can be transferred smoothly. Although the administrator can apply incremental updates directly to the running VMs, he or she has to carefully consider the type of update and perform operations on all running VMs, such as application restarts. This is a tedious and error-prone task. This paper presents a technique for synchronizing VMs with less time and lower administrative burden. We introduce the Virtual Disk Image Repository, which runs on the cloud platform and automatically updates the virtual disk image and the running VMs with only the incremental update information. We also show a mechanism that performs necessary operations on the running VM such as restarting server processes, based on the types of files that are updated. We implement a prototype on Linux 2.6.31.14 and Amazon Elastic Compute Cloud. An experiment shows that our technique can synchronize VMs in an order-of-magnitude shorter time than the conventional disk-image-based VM method. Also, we discuss limitations of our technique and some directions for more efficient VM updates.
Kazuya SUZUKI Kentaro SONODA Nobuyuki TOMIZAWA Yutaka YAKUWA Terutaka UCHIDA Yuta HIGUCHI Toshio TONOUCHI Hideyuki SHIMONISHI
The paper presents a survey on OpenFlow related technologies that have been proposed as a means for researchers, network service creators, and others to easily design, test, and deploy their innovative ideas in experimental or production networks to accelerate research activities on network technologies. Rather than having programmability within each network node, separated OpenFlow controllers provide network control through pluggable software modules; thus, it is easy to develop new network control functions in executable form and test them in production networks. The emergence of OpenFlow has started various research activities. The paper surveys these activities and their results.
Jeehong KIM Inhyeok KIM Changwoo MIN Young Ik EOM
Recently, return-oriented programming (ROP) attacks have been rapidly increasing. In this letter, we introduce a fast and space-efficient defense technique, called zero-sum defender, that can respond against general ROP attacks. Our technique generates additional codes, at compile time, just before return instructions to check whether the execution has been abused by ROP attacks. We achieve very low runtime overhead with very small increase in file size. In our experimental results, performance overhead is 1.7%, and file size overhead is 4.5%.
Phan Thi Thanh HUYEN Koichiro OCHIMIZU
In collaborative software developments, many change processes implementing change requests are executed concurrently by different workers. The fact that the workers do not have sufficient information about the others' work and complicated dependencies among artifacts can lead to unexpected inconsistencies among the artifacts impacted by the changes. Most previous studies concentrated only on concurrent changes and considered them separately. However, even when the changes are not concurrent, inconsistencies may still happen if a worker does not recognize the impact of the changes made by other workers on his changes or the impact of his changes on other workers' changes. In addition, the changes in a change process are related to each other through their common target of realizing the change request and the dependencies among the changed artifacts. Therefore, to handle inconsistencies more effectively, we concentrate on both concurrent and non-concurrent changes, and the context of a change, i.e. the change process containing the change, rather than the ongoing changes only. In this paper, we present an inconsistency awareness mechanism and a Change Support Workflow Management System (CSWMS) that realizes this mechanism. By monitoring the progress of the change processes and the ongoing changes in the client workspaces, CSWMS can notify the workers of a (potential) inconsistency in advance along with the context of the inconsistency, that is, the changes causing the inconsistency and the change processes containing these changes. Based on the information provided by CSWMS, the workers can detect and resolve inconsistencies more easily and quickly. Therefore, our research can contribute to building a safer and more efficient collaborative software development environment.
Yuto NAKANO Kazuhide FUKUSHIMA Shinsaku KIYOMOTO Tsukasa ISHIGURO Yutaka MIYAKE Toshiaki TANAKA Kouichi SAKURAI
KCipher-2 is a word-oriented stream cipher and an ISO/IEC 18033 standard. It is listed as a CRYPTREC cryptographic algorithm for Japanese governmental use. It consists of two feedback shift registers and a non-linear function. The size of each register in KCipher-2 is 32 bits and the non-linear function mainly applies 32-bit operations. Therefore, it can be efficiently implemented as software. SNOW-family stream ciphers are also word-oriented stream ciphers, and their high performance has already been demonstrated.We propose optimised implementations of KCipher-2 and compare their performance to that of the SNOW-family and other eSTREAM portfolios. The fastest algorithm is SNOW 2.0 and KCipher-2 is the second fastest despite the complicated irregular clocking mechanism. However, KCipher-2 is the fastest of the feasible algorithms, as SNOW 2.0 has been shown to have a security flaw. We also optimise the hardware implementation for the Virtex-5 field-programmable gate array (FPGA) and show two implementations. The first implementation is a rather straightforward optimisation and achieves 16,153 Mbps with 732 slices. In the second implementation, we duplicate the non-linear function using the structural advantage of KCipher-2 and we achieve 17,354 Mbps with 813 slices. Our implementation of KCipher-2 is around three times faster than those of the SNOW-family and efficiency, which is evaluated by “Throughput/Area (Mbps/slice)”, is 3.6-times better than that of SNOW 2.0 and 8.5-times better than that of SNOW 3G. These syntheses are performed using Xilinx ISE version 12.4.
Slawomir KUKLINSKI Prosper CHEMOUIL
Software-Defined Networking currently appears to be a major evolution towards network programmability. In this paper, we first analyze the network management capabilities of OpenFlow in order to identify the main challenges that are raised for SDN management. We address current deficiencies of SDN management and suggest solutions that incur research directions to be carried out for the management of enhanced SDN.
Tetsuya KANDA Yuki MANABE Takashi ISHIO Makoto MATSUSHITA Katsuro INOUE
It is not always easy for an Android user to choose the most suitable application for a particular task from the great number of applications available. In this paper, we propose a semi-automatic approach to extract feature names from Android applications. The case study verifies that we can associate common sequences of Android API calls with feature names.
Yoichi SATO Ichiro FUKUDA Tomonori FUJITA
The use of computing resources on network is becoming active in the Internet and private networks. OpenFlow/Software-Defined Networking (SDN) is drawing attention as a method to control network virtualization for the cloud computing services and other carrier services. This paper introduces examples of OpenFlow/SDN technologies applied to commercial cloud services. Various activities to expand coverage over commercial carrier networks are also mentioned.
This paper presents the opportunity-based software rejuvenation policy and the optimization problem of software rejuvenation trigger time maximizing the system performance index. Our model is based on a basic semi-Markov software rejuvenation model by Dohi et al. 2000 under the environment where possible time, called opportunity, to execute software rejuvenation is limited. In the paper, we consider two stochastic point processes; renewal process and Markovian arrival process to represent the opportunity process. In particular, we derive the existence condition of the optimal trigger time under the two point processes analytically. In numerical examples, we illustrate the optimal design of the rejuvenation trigger schedule based on empirical data.
Jinyong JO Soyeon LEE JongWon KIM
Overlay networking makes it easy for users add new network functionalities while keeping existing Internet connectivity intact. This paper introduces SCONE (Service-COmposable InterNEt) as a networking service to facilitate the management of service overlay networking. By looking into the structure of programmable overlay nodes, SCONE provides programmable IP service gateways (PSGs) that ensure high-speed per-flow packet processing for overlay networking. In order to meet the data-rate requirements of various host applications, each PSG is accelerated by hardware packet processing for its data plane. It also leverages the space-efficient pattern matching of entity cloning and provides localized (i.e., de-centralized) services to assist the scalable support for software-defined networking (SDN). An experiment result shows that the proposed PSGs can support high-fidelity overlay networking from both performance and scalability perspectives.
Nam-Seok KO Hwanjo HEO Jong-Dae PARK Hong-Shik PARK
OpenFlow, originally proposed for campus and enterprise network experimentation, has become a promising SDN architecture that is considered as a widely-deployable production network node recently. It is, in a consequence, pointed out that OpenFlow cannot scale and replace today's versatile network devices due to its limited scalability and flexibility. In this paper, we propose OpenQFlow, a novel scalable and flexible variant of OpenFlow. OpenQFlow provides a fine-grained flow tracking while flow classification is decoupled from the tracking by separating the inefficiently coupled flow table to three different tables: flow state table, forwarding rule table, and QoS rule table. We also develop a two-tier flow-based QoS framework, derived from our new packet scheduling algorithm, which provides performance guarantee and fairness on both granularity levels of micro- and aggregate-flow at the same time. We have implemented OpenQFlow on an off-the-shelf microTCA chassis equipped with a commodity multicore processor, for which our architecture is suited, to achieve high-performance with carefully engineered software design and optimization.
Hidekazu MURATA Susumu YOSHIDA Koji YAMAMOTO Daisuke UMEHARA Satoshi DENNO Masahiro MORIKURA
The present paper introduces a prototype design and experimental results for a multi-user MIMO linear precoding system. A base station and two mobile stations are implemented by taking full advantage of the software-defined radio. The base station consists of general purpose signal analyzers and signal generators controlled by a personal computer. Universal software radio peripherals are used as mobile stations. Linear spatial precoding and a simple two-way channel estimation technique are adopted in this experimental system. In-lab and field transmission experiments are carried out, and the bit error rate performance is evaluated. The impact of the channel estimation error under average channel gain discrepancy between two mobile stations is analyzed through computer simulations. Channel estimation error is shown to have a greater influence on the mobile station with the greater average channel gain.
This letter proposes a new Hybrid Software Defined Network (HSDN) platform for the interoperation with legacy routing protocol to support hardware level network virtualization for multi-tenant environment. By considering current SDN issues in the production network, the proposed platform contributes to solve these issues at reasonable overhead. Our testbed shows that failure convergence time with the proposed platform is almost same as legacy routing protocol. On the other hand, it also shows that hardware level virtualization is supported with stable ICMP response times.
Software FMEA is valuable and practically used for embedded software of safety-critical systems. In this paper, a novel method for Software FMEA is presented based on co-analysis of system model and software model. The method is hopeful to detect quantitative and dynamic effects by a targeted software failure. A typical application of the method is provided to illustrate the procedure and the applicable scenarios. In addition, a pattern is refined from the application for further reuse.
Akito MONDEN Tomoko MATSUMURA Mike BARKER Koji TORII Victor R. BASILI
This paper customizes Goal/Question/Metric (GQM) project monitoring models for various projects and organizations to take advantage of the data from the software tool EPM and to allow the tailoring of the interpretation models based upon the context and success criteria for each project and organization. The basic idea is to build less concrete models that do not include explicit baseline values to interpret metrics values. Instead, we add hypothesis and interpretation layers to the models to help people of different projects make decisions in their own context. We applied the models to two industrial projects, and found that our less concrete models could successfully identify typical problems in software projects.
Toru NANBA Tatsuhiro TSUCHIYA Tohru KIKUNO
This letter discusses the applicability of boolean satisfiability (SAT) solving to pairwise testing in practice. Due to its recent rapid advance, using SAT solving seems a promising approach for search-based testing and indeed has already been practiced in test generation for pairwise testing. The previous approaches use SAT solving either for finding a small test set in the absence of parameter constraints or handling constraints, but not for both. This letter proposes an approach that uses a SAT solver for constructing a test set for pairwise testing in the presence of parameter constraints. This allows us to make full use of SAT solving for pairwise testing in practice.
Passakorn PHANNACHITTA Akinori IHARA Pijak JIRAPIWONG Masao OHIRA Ken-ichi MATSUMOTO
Nowadays, software development societies have given more precedence to Open Source Software (OSS). There is much research aimed at understanding the OSS society to sustain the OSS product. To lead an OSS project to a successful conclusion, researchers study how developers change source codes called patches in project repositories. In existing studies, we found an argument in the conventional patch acceptance detection procedure. It was so simplified that it omitted important cases from the analysis, and would lead researchers to wrong conclusions. In this research, we propose an algorithm to overcome the problem. To prove out our algorithm, we constructed a framework and conducted two case studies. As a result, we came to a new and interesting understanding of patch activities.
In this paper, we discuss the stochastic modeling for operational software reliability measurement, assuming that the testing environment is originally different from the user operation one. In particular, we introduce the concept of systemability which is defined as the reliability characteristic subject to the uncertainty of the field operational environment into the model. First we introduce the environmental factor to consistently bridge the gap between the software failure-occurrence characteristics during the testing and the operation phases. Then we consider the randomness of the environmental factor, i.e., the environmental factor is treated as a random-distributed variable. We use the Markovian imperfect debugging model to describe the software reliability growth phenomena in the testing and the operation phases. We derive the analytical solutions of the several operational software reliability assessment measures which are given as the functions of time and the number of debuggings. Finally, we show several numerical illustrations to investigate the impacts of the consideration of systemability on the field software reliability evaluation.
Anakorn JONGYINDEE Masao OHIRA Akinori IHARA Ken-ichi MATSUMOTO
There are many roles to play in the bug fixing process in open source software development. A developer called “Committer”, who has a permission to submit a patch into a software repository, plays a major role in this process and holds a key to the successfulness of the project. Despite the importance of committer's activities, we suspect that sometimes committers can make mistakes which have some consequences to the bug fixing process (e.g., reopened bugs after bug fixing). Our research focuses on studying the consequences of each committer's activities to this process. We collected each committer's historical data from the Eclipse-Platform's bug tracking system and version control system and evaluated their activities using bug status in the bug tracking system and commit log in the version control system. Then we looked deeper into each committer's characteristics to see the reasons why some committers tend to make mistakes more than the others.
Fengwei AN Tetsushi KOIDE Hans Jürgen MATTAUSCH
In this paper, we propose a hardware solution for overcoming the problem of high computational demands in a nearest neighbor (NN) based multi-prototype learning system. The multiple prototypes are obtained by a high-speed K-means clustering algorithm utilizing a concept of software-hardware cooperation that takes advantage of the flexibility of the software and the efficiency of the hardware. The one nearest neighbor (1-NN) classifier is used to recognize an object by searching for the nearest Euclidean distance among the prototypes. The major deficiency in conventional implementations for both K-means and 1-NN is the high computational demand of the nearest neighbor searching. This deficiency is resolved by an FPGA-implemented coprocessor that is a VLSI circuit for searching the nearest Euclidean distance. The coprocessor requires 12.9% logic elements and 58% block memory bits of an Altera Stratix III E110 FPGA device. The hardware communicates with the software by a PCI Express (4) local-bus-compatible interface. We benchmark our learning system against the popular case of handwritten digit recognition in which abundant previous works for comparison are available. In the case of the MNIST database, we could attain the most efficient accuracy rate of 97.91% with 930 prototypes, the learning speed of 1.310-4 s/sample and the classification speed of 3.9410-8 s/character.