VLDB 2026 Research / reviewers in the wild / expert
Xinyu Feng 0001
dblp:06/3494-1 · also Xin-Yu Feng 0001
· DBLP profile ↗
48ranked-venue papers
7as first author
9since 2021 · last 2025
0000-0003-3972-9395ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 27 · 6 first-author · 5 since 2021Theory of computation · 10 · 1 first-author · 1 since 2021Applied, interdisciplinary, general and emerging computing · 6 · 2 since 2021Systems, architecture and hardware · 3Computer networks · 2Artificial intelligence and machine learning · 1 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 1 since 2021Human-computer interaction and ubiquitous computing · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | A Program Logic for Concurrent Randomized Programs in the Oblivious Adversary ModelabstractAbstract Concurrent randomized programs in the oblivious adversary model are extremely difficult for modular verification because the interaction between threads is very sensitive to the program structure and the execution steps. We propose a new program logic supporting thread-local verification. With a novel “split” mechanism, one can split the state distribution into smaller partitions, and the reasoning can be done based on each partition independently, which allows us to avoid considering different execution paths of branch statements simultaneously. The logic rules are compositional and are natural extensions of their sequential counterparts. Using our program logic, we verify four typical algorithms in the oblivious adversary model. Weijie Fan, Hongjin Liang 0001, Xinyu Feng 0001, Hanru Jiang |
ESOP (1) | 3 |
| 2025 | Verifying Algorithmic Versions of the Lovász Local LemmaabstractAbstract Algorithmic versions of the Lovász Local Lemma (ALLLs), or rather, the Moser-Tardos algorithm and its variants, are impactful in both theory and practice. In this paper, we take the first step towards the goal of formally verifying ALLLs by applying programming language techniques. We propose two proof recipes, called loop truncation and resampling-table-based coupling, for bridging the gap between Hoare-style program logics and ALLLs’ original informal proofs. We formally verify six existing important results related to ALLLs, and propose a new result which generalizes several existing results. Our proof recipes can also be used to verify general properties of other probabilistic programs in addition to ALLLs. Rongen Lin, Hongjin Liang 0001, Xinyu Feng 0001 |
ESOP (1) | 3 |
| 2025 | A Program Logic for Byzantine-Fault-Tolerant Protocols
Yuwen Kuang, Hongjin Liang 0001, Xinyu Feng 0001 |
SETTA | 3 |
| 2024 | Verified Validation for Affine Scheduling in Polyhedral Compilation
Hongjin Liang 0001, Xinyu Feng 0001 |
TASE | 3 |
| 2024 | A program logic for obstruction-freedom
Zhao-Hui Li, Xinyu Feng 0001 |
Frontiers Comput. Sci. | 2 |
| 2022 | Verifying optimizations of concurrent programs in the promising semanticsabstractWeak memory models for concurrent programming languages are expected to admit standard compiler optimizations. However, prior works on verifying optimizations in weak memory models are mostly focused on simple optimizations on small code snippets which satisfy certain syntactic requirements. It receives less attention whether weak memory models can admit real-world optimization algorithms based on program analyses. Junpeng Zha, Hongjin Liang 0001, Xinyu Feng 0001 |
PLDI | 3 |
| 2021 | Abstraction for conflict-free replicated data typesabstractStrong eventual consistency (SEC) has been used as a classic notion of correctness for Conflict-Free Replicated Data Types (CRDTs). However, it does not give proper abstractions of functionality, thus is not helpful for modular verification of client programs using CRDTs. We propose a new correctness formulation for CRDTs, called Abstract Converging Consistency (ACC), to specify both data consistency and functional correctness. ACC gives abstract atomic specifications (as an abstraction) to CRDT operations, and establishes consistency between the concrete execution traces and the execution using the abstract atomic operations. The abstraction allows us to verify the CRDT implementation and its client programs separately, resulting in more modular and elegant proofs than monolithic approaches for whole program verification. We give a generic proof method to verify ACC of CRDT implementations, and a rely-guarantee style program logic to verify client programs. Our Abstraction theorem shows that ACC is equivalent to contextual refinement, linking the verification of CRDT implementations and clients together to derive functional correctness of whole programs. Hongjin Liang 0001, Xinyu Feng 0001 |
PLDI | 2 |
| 2021 | Verifying Contextual Refinement with Ownership Transfer
Zhao-Hui Li, Xinyu Feng 0001 |
J. Comput. Sci. Technol. | 2 |
| 2021 | AutoGR: Automated Geo-Replication with Fast System Performance and Preserved Application SemanticsabstractGeo-replication is essential for providing low latency response and quality Internet services. However, designing fast and correct geo-replicated services is challenging due to the complex trade-off between performance and consistency semantics in optimizing the expensive cross-site coordination. State-of-the-art solutions rely on programmers to derive sufficient application-specific invariants and code specifications, which is both time-consuming and error-prone. In this paper, we propose an end-to-end geo-replication deployment framework AUTOGR (AUTOmated Geo-Replication) to free programmers from such label-intensive tasks. AutoGR enables the geo-replication features for non-replicated, serializable applications in an automated way with optimized performance and correct application semantics. Driven by a novel static analyzer RIGI, AUTOGR can extract application invariants by verifying whether their geo-replicated versions obey the serializable semantics of the non-replicated application. RIGI takes application codes as inputs and infers a set of side effects and path conditions possibly leading to consistency violations. RIGI employs the Z3 theorem prover to identify pairs of conflicting side effects and feed them to a geo-replication framework for automated across-site deployment. We evaluate AUTOGR by transforming four serializable and originally non-replicated DB-compliant applications to geo-replicated ones across 3 sites. Compared with state-of-the-art human-intervention-free automated approaches (e.g., strong consistency), AUTOGR reduces up to 61.8% latency and achieves up to 2.12X higher peak throughput. Compared with state-of-the-art approaches relying on a manual analysis (e.g., PoR), AUTOGR can quickly enable the geo-replication feature with zero human intervention while offering similarly low latency and high throughput. Cheng Li 0001, Jingze Huo, Feng Yan 0001, Xinyu Feng 0001, Yinlong Xu 0001 |
Proc. VLDB Endow. | 6 |
| 2020 | Modular Verification of SPARCv8 Code
Junpeng Zha, Xinyu Feng 0001, Lei Qiao 0002 |
J. Comput. Sci. Technol. | 2 |
| 2020 | Formalizing SPARCv8 instruction set architecture in Coq
Ming Fu, Lei Qiao 0002, Xinyu Feng 0001 |
Sci. Comput. Program. | 4 |
| 2019 | Towards certified separate compilation for concurrent programsabstractCertified separate compilation is important for establishing end-to-end guarantees for certified systems consisting of multiple program modules. There has been much work building certified compilers for sequential programs. In this paper, we propose a language-independent framework consisting of the key semantics components and lemmas that bridge the verification gap between the compilers for sequential programs and those for (race-free) concurrent programs, so that the existing verification work for the former can be reused. One of the key contributions of the framework is a novel footprint-preserving compositional simulation as the compilation correctness criterion. The framework also provides a new mechanism to support confined benign races which are usually found in efficient implementations of synchronization primitives. Hanru Jiang, Hongjin Liang 0001, Siyang Xiao, Junpeng Zha, Xinyu Feng 0001 |
PLDI | 5 |
| 2019 | A Lightweight Dynamic Enforcement of Privacy Protection for Android
Ming Fu, Xinyu Feng 0001 |
J. Comput. Sci. Technol. | 3 |
| 2018 | Modular Verification of SPARCv8 Code
Junpeng Zha, Xinyu Feng 0001, Lei Qiao 0002 |
APLAS | 2 |
| 2018 | Non-preemptive Semantics for Data-Race-Free Programs
Siyang Xiao, Hanru Jiang, Hongjin Liang 0001, Xinyu Feng 0001 |
ICTAC | 4 |
| 2018 | POMP: Protocol Oblivious SDN Programming with Automatic Multi-Table PipeliningabstractSDN programming has been challenging because programmers have to not only implement the control logic, but also handle low-level details such as the generation of flow tables and the communication between the controller and switches. New generation of SDN with protocol oblivious forwarding and multi-table pipelining introduces even more low-level details to consider. We propose POMP, the first SDN programming environment supporting both protocol oblivious forwarding and automatic multi-table pipelining. POMP applies the static taint analysis technique to automatically infer compact and efficient multi-table pipelines from a data-plane agnostic network policy written by the programmer. The runtime system tracks the execution of the network policy, and automatically generates table entries. POMP also introduces a novel notion of dependent labels in the taint analysis, which, combined with the runtime information of the network policy, can further reduce the number of table entries. Like P4, POMP supports protocol-oblivious programming by providing a network protocol specification language. Parsers of packets can be automatically generated based on the protocol specification. POMP supports two main emerging SDN platforms, POF and P4, therefore network policies written in POMP are portable over any switches supporting POF or P4. Xinyu Feng 0001 |
INFOCOM | 2 |
| 2018 | Progress of concurrent objects with partial methodsabstractVarious progress properties have been proposed for concurrent objects, such as wait-freedom, lock-freedom, starvation-freedom and deadlock-freedom. However, none of them applies to concurrent objects with partial methods, i.e., methods that are supposed not to return under certain circumstances. A typical example is the lock_acquire method, which must not return when the lock has already been acquired. In this paper we propose two new progress properties, partial starvation-freedom (PSF) and partial deadlock-freedom (PDF), for concurrent objects with partial methods. We also design four patterns to write abstract specifications for PSF or PDF objects under strongly or weakly fair scheduling, so that these objects contextually refine the abstract specifications. Our Abstraction Theorem shows the equivalence between PSF (or PDF) and the progress-aware contextual refinement. Finally, we generalize the program logic LiLi to have a new logic to verify the PSF (or PDF) property and linearizability of concurrent objects. Hongjin Liang 0001, Xinyu Feng 0001 |
Proc. ACM Program. Lang. | 2 |
| 2017 | Mechanized verification of preemptive OS kernels (invited talk)abstractWe propose a practical verification framework for preemptive OS kernels. The framework models the correctness of API implementations in OS kernels as contextual refinement of their abstract specifications. It provides a specification language for defining the high-level abstract model of OS kernels, a program logic for refinement verification of concurrent kernel code with multi-level hardware interrupts, and automated tactics for developing mechanized proofs. The whole framework is developed for a practical subset of the C language. We have successfully applied it to verify key modules of a commercial preemptive OS μC/OS-II, including the scheduler, interrupt handlers, message queues, and mutexes, etc. We also verify the priority-inversion-freedom (PIF) in μC/OS-II. All the proofs are mechanized in Coq. To our knowledge, our work is the first to verify the functional correctness of a practical preemptive OS kernel with machine-checkable proofs. More details about the project is available at Xinyu Feng 0001 |
CPP | 1 |
| 2017 | Formalizing SPARCv8 Instruction Set Architecture in Coq
Ming Fu, Lei Qiao 0002, Xinyu Feng 0001 |
SETTA | 4 |
| 2017 | AndroidLeaker: A Hybrid Checker for Collusive Leak in Android Applications
Xinyu Feng 0001 |
SETTA | 2 |
| 2016 | A Practical Verification Framework for Preemptive OS Kernels
Fengwei Xu, Ming Fu, Xinyu Feng 0001 |
CAV (2) | 3 |
| 2016 | A program logic for concurrent objects under fair schedulingabstractExisting work on verifying concurrent objects is mostly concerned with safety only, e.g., partial correctness or linearizability. Although there has been recent work verifying lock-freedom of non-blocking objects, much less efforts are focused on deadlock-freedom and starvation-freedom, progress properties of blocking objects. These properties are more challenging to verify than lock-freedom because they allow the progress of one thread to depend on the progress of another, assuming fair scheduling. We propose LiLi, a new rely-guarantee style program logic for verifying linearizability and progress together for concurrent objects under fair scheduling. The rely-guarantee style logic unifies thread-modular reasoning about both starvation-freedom and deadlock-freedom in one framework. It also establishes progress-aware abstraction for concurrent objects, which can be applied when verifying safety and liveness of client code. We have successfully applied the logic to verify starvation-freedom or deadlock-freedom of representative algorithms such as ticket locks, queue locks, lock-coupling lists, optimistic lists and lazy lists. Hongjin Liang 0001, Xinyu Feng 0001 |
POPL | 2 |
| 2016 | An operational happens-before memory model
Xinyu Feng 0001 |
Frontiers Comput. Sci. | 2 |
| 2015 | Practical Tactics for Verifying C Programs in CoqabstractProof automation is essential for large scale proof development such as OS kernel verification. An effective approach is to develop tactics and SMT solvers to automatically prove verification conditions. However, for complex systems, it is almost impossible to achieve fully automated verification and human interactions are unavoidable. So the key challenge here is, on the one hand, to reduce manual proofs as much as possible, and on the other hand, to provide user-friendly error messages when the automated verification fails, so that users could adjust specifications or the code accordingly, or to do part of the proofs manually. Jingyuan Cao, Ming Fu, Xinyu Feng 0001 |
CPP | 3 |
| 2014 | A temporal programming model with atomic blocks based on projection temporal logic
Xiaoxiao Yang, Yu Zhang 0086, Ming Fu, Xinyu Feng 0001 |
Frontiers Comput. Sci. | 4 |
| 2014 | Rely-Guarantee-Based Simulation for Compositional Verification of Concurrent Program TransformationsabstractVerifying program transformations usually requires proving that the resulting program (the target) refines or is equivalent to the original one (the source). However, the refinement relation between individual sequential threads cannot be preserved in general with the presence of parallel compositions, due to instruction reordering and the different granularities of atomic operations at the source and the target. On the other hand, the refinement relation defined based on fully abstract semantics of concurrent programs assumes arbitrary parallel environments, which is too strong and cannot be satisfied by many well-known transformations. In this article, we propose a R ely- G uarantee-based Sim ulation (RGSim) to verify concurrent program transformations. The relation is parametrized with constraints of the environments that the source and the target programs may compose with. It considers the interference between threads and their environments, thus is less permissive than relations over sequential programs. It is compositional with respect to parallel compositions as long as the constraints are satisfied. Also, RGSim does not require semantics preservation under all environments, and can incorporate the assumptions about environments made by specific program transformations in the form of rely/guarantee conditions. We use RGSim to reason about optimizations and prove atomicity of concurrent objects. We also propose a general garbage collector verification framework based on RGSim, and verify the Boehm et al. concurrent mark-sweep GC. Hongjin Liang 0001, Xinyu Feng 0001, Ming Fu |
ACM Trans. Program. Lang. Syst. | 2 |
| 2013 | Characterizing Progress Properties of Concurrent Objects via Contextual Refinements
Hongjin Liang 0001, Jan Hoffmann 0002, Xinyu Feng 0001, Zhong Shao 0001 |
CONCUR | 3 |
| 2013 | Modular verification of linearizability with non-fixed linearization pointsabstractLocating linearization points (LPs) is an intuitive approach for proving linearizability, but it is difficult to apply the idea in Hoare-style logic for formal program verification, especially for verifying algorithms whose LPs cannot be statically located in the code. In this paper, we propose a program logic with a lightweight instrumentation mechanism which can verify algorithms with non-fixed LPs, including the most challenging ones that use the helping mechanism to achieve lock-freedom (as in HSY elimination-based stack), or have LPs depending on unpredictable future executions (as in the lazy set algorithm), or involve both features. We also develop a thread-local simulation as the meta-theory of our logic, and show it implies contextual refinement, which is equivalent to linearizability. Using our logic we have successfully verified various classic algorithms, some of which are used in the java.util.concurrent package. Hongjin Liang 0001, Xinyu Feng 0001 |
PLDI | 2 |
| 2013 | An Operational Approach to Happens-Before Memory ModelabstractHappens-before memory model (HMM) is used as the basis of Java memory model (JMM). Although HMM itself is simple, some complex axioms have to be introduced in JMM to prevent the causality loop, which causes absurd out-of-thin-air reads that may break the type safety and security guarantee of Java. The resulting JMM is complex and difficult to understand. It also has many anti-intuitive behaviors, as demonstrated by the "ugly examples" by Aspinall and ?Sev?c'ik [3]. Furthermore, HMM (and JMM) specify only what execution traces are acceptable, but say nothing about how these traces are generated. This gap makes it difficult for static reasoning about programs. In this paper we present OHMM, an operational variation of HMM. The model is specified by giving an operational semantics to a language running on an abstract machine designed to simulate HMM. Thanks to its generative nature, the model naturally prevents out-of-thin-air reads. On the other hand, it uses a novel replay mechanism to allow instructions to be executed multiple times, which can be used to model many useful speculations and optimizations. The model is weaker than JMM for lockless programs, thus can accommodate more optimizations, such as the reordering of independent memory accesses that is not valid in JMM. Program behaviors are more natural in this model than in JMM, and many of the anti-intuitive examples in JMM are no longer valid here. We hope OHMM can serve as the basis for new memory models for Java-like languages. Xinyu Feng 0001 |
TASE | 2 |
| 2012 | Modular Verification of Concurrent Thread Management
Xinyu Feng 0001, Zhong Shao 0001, Peizhi Shi |
APLAS | 2 |
| 2012 | A Concurrent Temporal Programming Model with Atomic Blocks
Xiaoxiao Yang, Yu Zhang 0086, Ming Fu, Xinyu Feng 0001 |
ICFEM | 4 |
| 2012 | A rely-guarantee-based simulation for verifying concurrent program transformationsabstractVerifying program transformations usually requires proving that the resulting program (the target) refines or is equivalent to the original one (the source). However, the refinement relation between individual sequential threads cannot be preserved in general with the presence of parallel compositions, due to instruction reordering and the different granularities of atomic operations at the source and the target. On the other hand, the refinement relation defined based on fully abstract semantics of concurrent programs assumes arbitrary parallel environments, which is too strong and cannot be satisfied by many well-known transformations. In this paper, we propose a Rely-Guarantee-based Simulation (RGSim) to verify concurrent program transformations. The relation is parametrized with constraints of the environments that the source and the target programs may compose with. It considers the interference between threads and their environments, thus is less permissive than relations over sequential programs. It is compositional w.r.t. parallel compositions as long as the constraints are satisfied. Also, RGSim does not require semantics preservation under all environments, and can incorporate the assumptions about environments made by specific program transformations in the form of rely/guarantee conditions. We use RGSim to reason about optimizations and prove atomicity of concurrent objects. We also propose a general garbage collector verification framework based on RGSim, and verify the Boehm et al. concurrent mark-sweep GC. Hongjin Liang 0001, Xinyu Feng 0001, Ming Fu |
POPL | 2 |
| 2012 | A Structural Approach to Prophecy Variables
Xinyu Feng 0001, Ming Fu, Zhong Shao 0001 |
TAMC | 2 |
| 2010 | Reasoning about Optimistic Concurrency Using a Program Logic for History
Ming Fu, Xinyu Feng 0001, Zhong Shao 0001, Yu Zhang 0086 |
CONCUR | 3 |
| 2010 | Parameterized Memory Models and Concurrent Separation Logic
Rodrigo Ferreira, Xinyu Feng 0001, Zhong Shao 0001 |
ESOP | 2 |
| 2009 | Weak updates and separation logic
Gang Tan, Zhong Shao 0001, Xinyu Feng 0001, Hongxu Cai |
APLAS | 3 |
| 2009 | Deny-Guarantee Reasoning
Mike Dodds, Xinyu Feng 0001, Matthew J. Parkinson, Viktor Vafeiadis |
ESOP | 2 |
| 2009 | Local rely-guarantee reasoningabstractRely-Guarantee reasoning is a well-known method for verification of shared-variable concurrent programs. However, it is difficult for users to define rely/guarantee conditions, which specify threads' behaviors over the whole program state. Recent efforts to combine Separation Logic with Rely-Guarantee reasoning have made it possible to hide thread-local resources, but the shared resources still need to be globally known and specified. This greatly limits the reuse of verified program modules. Xinyu Feng 0001 |
POPL | 1 |
| 2009 | Certifying Low-Level Programs with Hardware Interrupts and Preemptive Threads
Xinyu Feng 0001, Zhong Shao 0001 |
J. Autom. Reason. | 1 |
| 2008 | Certifying low-level programs with hardware interrupts and preemptive threadsabstractHardware interrupts are widely used in the world's critical software systems to support preemptive threads, device drivers, operating system kernels, and hypervisors. Handling interrupts properly is an essential component of low-level system programming. Unfortunately, interrupts are also extremely hard to reason about: they dramatically alter the program control flow and complicate the invariants in low-level concurrent code (e.g., implementation of synchronization primitives). Existing formal verification techniques---including Hoare logic, typed assembly language, concurrent separation logic, and the assume-guarantee method---have consistently ignored the issues of interrupts; this severely limits the applicability and power of today's program verification systems. Xinyu Feng 0001, Zhong Shao 0001 |
PLDI | 1 |
| 2007 | On the Relationship Between Concurrent Separation Logic and Assume-Guarantee Reasoning
Xinyu Feng 0001, Rodrigo Ferreira, Zhong Shao 0001 |
ESOP | 1 |
| 2006 | Modular verification of assembly code with stack-based control abstractionsabstractRuntime stacks are critical components of any modern software--they are used to implement powerful control structures such as function call/return, stack cutting and unwinding, coroutines, and thread context switch. Stack operations, however, are very hard to reason about: there are no known formal specifications for certifying C-style setjmp/longjmp, stack cutting and unwinding, or weak continuations (in C--). In many proof-carrying code (PCC) systems, return code pointers and exception handlers are treated as general first-class functions (as in continuation-passing style) even though both should have more limited scopes.In this paper we show that stack-based control abstractions follow a much simpler pattern than general first-class code pointers. We present a simple but flexible Hoare-style framework for modular verification of assembly code with all kinds of stackbased control abstractions, including function call/return, tail call, setjmp/longjmp, weak continuation, stack cutting, stack unwinding, multi-return function call, coroutines, and thread context switch. Instead of presenting a specific logic for each control structure, we develop all reasoning systems as instances of a generic framework. This allows program modules and their proofs developed in different PCC systems to be linked together. Our system is fully mechanized. We give the complete soundness proof and a full verification of several examples in the Coq proof assistant. Xinyu Feng 0001, Zhong Shao 0001, Alexander Vaynberg, Sen Xiang, Zhaozhong Ni |
PLDI | 1 |
| 2005 | Modular verification of concurrent assembly code with dynamic thread creation and terminationabstractProof-carrying code (PCC) is a general framework that can, in principle, verify safety properties of arbitrary machine-language programs. Existing PCC systems and typed assembly languages, however, can only handle sequential programs. This severely limits their applicability since many real-world systems use some form of concurrency in their core software. Recently Yu and Shao proposed a logic-based "type" system for verifying concurrent assembly programs. Their thread model, however, is rather restrictive in that no threads can be created or terminated dynamically and no sharing of code is allowed between threads. In this paper, we present a new formal framework for verifying general multi-threaded assembly code with unbounded dynamic thread creation and termination as well as sharing of code between threads. We adapt and generalize the rely-guarantee methodology to the assembly level and show how to specify the semantics of thread "fork" with argument passing. In particular, we allow threads to have different assumptions and guarantees at different stages of their lifetime so they can coexist with the dynamically changing thread environment. Our work provides a foundation for certifying realistic multi-threaded programs and makes an important advance toward generating proof-carrying concurrent code. Xinyu Feng 0001, Zhong Shao 0001 |
ICFP | 1 |
| 2004 | Reliable message delivery for mobile agents: push or pull?abstractTwo of the fundamental issues in designing protocols for message passing between mobile agents (MAs) are tracking the migration of the target agent and forwarding messages to it. Even with an ideal fault-free network-transport mechanism, messages can be dropped during MA migration. Therefore, in order to provide reliable message delivery, protocols need to overcome message loss caused by asynchronous operations of agent migration and message forwarding. In this paper, two known message forwarding approaches, namely push and pull, are explored to design adaptive and reliable message delivery protocols. Based on a commonly used MA tracking model, the pros and cons of these two approaches are evaluated, both qualitatively and quantitatively. The comparative performance evaluation is presented in terms of network traffic and delay in message processing. We also propose improvements to the pull approach to reduce network traffic and the message delay. We conclude that with different message passing and migration patterns and varying requirements of real-time message processing, specific applications can select different message delivery approaches to achieve the desired level of performance and flexibility. Jiannong Cao 0001, Xinyu Feng 0001, Jian Lu 0001, Henry C. B. Chan, Sajal K. Das 0001 |
IEEE Trans. Syst. Man Cybern. Part A | 2 |
| 2003 | Adaptive and reliable message delivery for mobile objectsabstractThis paper proposes an adaptive and reliable message delivery protocol for mobile objects. The protocol uses a mailbox-based scheme, which associates each mobile object with a mailbox while allowing the decoupling between them. It provides location-independent message passing and overcome message loss caused by mobile object's mobility. It also reduces the reliance on home location sever and relaxes the constraint on mobile object's mobility. The protocol is suitable for different mobility and communication patterns by choosing different mailbox migration frequency properly. Its applications include mobile agent system, mobile Internet and short message service. Jiannong Cao 0001, Liang Zhang 0027, Xinyu Feng 0001, Sajal K. Das 0001 |
GLOBECOM | 3 |
| 2003 | Path Compression in Forwarding-Based Reliable Mobile Agent CommunicationsabstractWe concern with the design of efficient algorithms for mobile agent communications. We first describe a novel mailbox-based scheme for flexible and adaptive message delivery in mobile agent systems and a specific adaptive protocol derived from the scheme. Then we present the design and verification of a path compression and garbage collection algorithm for improving the performance of the proposed protocol. Simulation results showed that by properly setting some parameters, the algorithm can effectively reduce both the number of location registrations and the communication overhead of each registration. Consequently, the total location registration overhead during the life cycle of a mobile agent is greatly reduced. The algorithm can also be used for clearing useless addresses of mobile agents cached by hosts in the network. Jiannong Cao 0001, Liang Zhang 0027, Xinyu Feng 0001, Sajal K. Das 0001 |
ICPP | 3 |
| 2002 | Design of Adaptive and Reliable Mobile Agent Communication ProtocolsabstractThis paper presents a mailbox-based scheme for designing flexible and adaptive message delivery protocols in mobile agent (MA) systems. The scheme associates each mobile agent with a mailbox while allowing the decoupling between them, i.e., a mobile agent can migrate to a new site without bringing its mailbox. By separating the concerns of locating the mailbox of a mobile agent and delivering a message to the agent, we obtain a large space of protocol design with flexibility. Using a three-dimensional model based on the scheme, we have developed a taxonomy of MA communication protocols, which not only covers, as special cases, several known MA message delivery protocols, but also allows for the design of new ones well suited for various application requirements. We describe such an efficient and adaptive protocol derived front the model. The protocol guarantees reliable delivery of messages to mobile agents. We analyze the design trade-offs and performance of the protocol, using an analytic model as well as extensive simulation experiments. Jiannong Cao 0001, Xinyu Feng 0001, Jian Lu 0001, Sajal K. Das 0001 |
ICDCS | 2 |
| 2002 | Reliable Message Delivery for Mobile Agents: Push or PullabstractTwo of the fundamental issues in message passing between mobile agents are tracking the migration of the target agent and delivering messages to it. In order to provide reliable message delivery, protocols are needed to overcome message loss caused by asynchronous operations of agent migration and message forwarding. In this paper, two message forwarding approaches, namely push and pull, are explored to design adaptive and reliable message delivery protocols. The pros and cons of these two approaches are evaluated, both qualitatively and quantitatively. The comparative performance evaluation is in terms of network traffic and delay in message processing. We also propose improvements to the pull approach to reduce network traffic and the message delay. We conclude that with different communication and migration patterns and requirements of real-time message processing, specific applications can select different message delivery approaches to achieve the desired level of performance and flexibility. Jiannong Cao 0001, Xinyu Feng 0001, Jian Lu 0001, Henry C. B. Chan, Sajal K. Das 0001 |
ICPADS | 2 |