CSP Networking for Java (JCSP.net)

Welch, Peter H. and Aldous, Jo R and Foster, Jon (2002) CSP Networking for Java (JCSP.net). In: Sloot, Peter M. A. and Tan, C.J Kenneth and Dongarra, Jack J. and Hoekstra, Alfons G., eds. Computational Science - ICCS 2002 (Pt.2): International Conference, Amsterdam, the Netherlands, April 21-24, 2002. Lecture Notes in Computer Science, 2330. Springer-Verlag Berlin and Heidelberg GmbH & Co. KG, Berlin pp. 695-708. ISBN 3-540-43593-X. (doi:https://doi.org/10.1007/3-540-46080-2_74) (The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided)

The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided. (Contact us about this Publication)
Official URL


JCSP is a library of Java packages providing an extended version of the CSP/occam model for Communicating Processes. The current (1.0) release supports concurrency within a single Java Virtual Machine (which may be multi-processor). This paper presents recent work on extended facilities for the dynamic construction of CSP networks across distributed environments (such as the Internet). Details of the underlying network fabric and control (such as machine addresses, socket connections, local multiplexing and de-multiplexing of application channels, acknowledgement packets to preserve synchronisation semantics) are hidden from the JCSP programmer, who works entirely at the application level and CSP primitives. A simple brokerage service - based on channel names - is provided to let distributed JCSP components find and connect to each other. Distributed JCSP networks may securely evolve, as components join and leave at run-time with no centralised or pre-planned control. Higher level brokers, providing user- defined matching services, are easy to bootstrap on top of the basic Channel Name Server (CNS) - using standard JCSP processes and networking. These may impose user-defined control over the structure of network being built. JCSP network channels may be configured for the automatic loading of class files for received objects whose classes are not available locally (this uses the network channel from which they were received - the sender must have them). Also provided are connection channels (for extended bi-directional transactions between clients and servers) and anonymous channels (to set up communications without using any central registry - such as the given CNS). The aims of JCSP.net are to simplify the construction and programming of dynamically distributed and parallel systems. It provides high-level support for CSP architectures, unifying concurrency logic within and between processors. Applications cover all areas of concurrent computing - including e-commerce, agent technology, home networks, embedded systems, high-performance clusters and The Grid.

Item Type: Conference or workshop item (Paper)
Uncontrolled keywords: dynamic networks, mobile processes, virtual channels, agents, Java™, CSP, JCSP.
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Sciences > School of Computing
Depositing User: Mark Wheadon
Date Deposited: 24 Nov 2008 18:00 UTC
Last Modified: 08 Apr 2014 08:00 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/13807 (The current URI for this page, for reference purposes)
  • Depositors only (login required):