Results 1 - 10
of
19
Pilot: An Operating System for a Personal Computer
, 1980
"... this paper was presented at the 7th ACM Symposium on Operating Systems Principles, Pacific Grove, Calif., Dec. 10-12, 1979 ..."
Abstract
-
Cited by 91 (1 self)
- Add to MetaCart
this paper was presented at the 7th ACM Symposium on Operating Systems Principles, Pacific Grove, Calif., Dec. 10-12, 1979
Reliable Communication over Unreliable Channels
- Journal of the ACM
, 1992
"... Layered communication protocols frequently implement a FIFO message facility On top of an unreliable non-FIFO service such as that provided by a packet-switching network. This paper investigates the possibility of implementing a reliable message layer on top of an underlying layer that can lose p ..."
Abstract
-
Cited by 37 (3 self)
- Add to MetaCart
Layered communication protocols frequently implement a FIFO message facility On top of an unreliable non-FIFO service such as that provided by a packet-switching network. This paper investigates the possibility of implementing a reliable message layer on top of an underlying layer that can lose packets and deliver them out of order, with the additional restriction that the implementation uses only a fixed finite number of different packets. A new formalism is presented to specify communication layers and their properties, the notion of their implementation by I/O automata, and the properties of such implementations. An I/O automaton that implements a reliable layer over an unreliable layer is presented. In this implementation, the number of packets needed to deliver each succeeding message increases permanently as additional packetloss and reordering faults occur. A proof is given that no protocol can avoid such performance degradation.
Structured Streams: a New Transport Abstraction
, 2007
"... Internet applications currently have a choice between stream and datagram transport abstractions. Datagrams efficiently support small transactions and streams are suited for longrunning conversations, but neither abstraction adequately supports applications like HTTP that exhibit a mixture of transa ..."
Abstract
-
Cited by 21 (6 self)
- Add to MetaCart
Internet applications currently have a choice between stream and datagram transport abstractions. Datagrams efficiently support small transactions and streams are suited for longrunning conversations, but neither abstraction adequately supports applications like HTTP that exhibit a mixture of transaction sizes, or applications like FTP and SIP that use multiple transport instances. Structured Stream Transport (SST) enhances the traditional stream abstraction with a hierarchical hereditary structure, allowing applications to create lightweight child streams from any existing stream. Unlike TCP streams, these lightweight streams incur neither 3-way handshaking delays on startup nor TIME-WAIT periods on close. Each stream offers independent data transfer and flow control, allowing different transactions to proceed in parallel without head-of-line blocking, but all streams share one congestion control context. SST supports both reliable and best-effort delivery in a way that semantically unifies datagrams with streams and solves the classic “large datagram ” problem, where a datagram’s loss probability increases exponentially with fragment count. Finally, an application can prioritize its streams relative to each other and adjust priorities dynamically through out-of-band signaling. A user-space prototype shows that SST is TCP-friendly to within 2%, and performs comparably to a user-space TCP and to within 10 % of kernel TCP on a WiFi network.
Verification and Improvement of the Sliding Window Protocol
, 2003
"... The well-known Sliding Window protocol caters for the reliable and efficient transmission of data over unreliable channels that can lose, reorder and duplicate messages. Despite the practical importance of the protocol and its high potential for errors, it has never been formally verified for the ge ..."
Abstract
-
Cited by 20 (0 self)
- Add to MetaCart
The well-known Sliding Window protocol caters for the reliable and efficient transmission of data over unreliable channels that can lose, reorder and duplicate messages. Despite the practical importance of the protocol and its high potential for errors, it has never been formally verified for the general setting. We try to fill this gap by giving a fully formal specification and verification of an improved version of the protocol. The protocol is specified by a timed state machine in the language of the verification system PVS. This allows a mechanical check of the proof by the interactive proof checker of PVS. Our modelling is very general and includes such important features of the protocol as sending and receiving windows of arbitrary size, bounded sequence numbers and channels that may lose, reorder and duplicate messages.
Connection management without retaining information
- Information and Computation
, 1993
"... Managing a connection between two hosts in a network is an important service to provide in order to make the network useful for many applications. The two main subproblems are the management of serial incarnations of a connection and the transfer of messages within an incarnation. This paper investi ..."
Abstract
-
Cited by 8 (3 self)
- Add to MetaCart
Managing a connection between two hosts in a network is an important service to provide in order to make the network useful for many applications. The two main subproblems are the management of serial incarnations of a connection and the transfer of messages within an incarnation. This paper investigates whether it is necessary for connection management protocols to retain state information across node crashes and between incarnations. The following results were obtained: When information is not retained across node crashes, incarnation management is not possible at all. When information is not retained between incarnations, incarnation management is possible if the network is FIFO and not possible if the network is non-FIFO. When information is not retained across node crashes, message transfer can be accomplished in networks that lose packets if the network is FIFO and the protocol is allowedavariable length grace period after a crash during which it need not deliver messages. However, message transfer cannot be accomplished if the network is
Semantics and Implementation of a Native-Mode ATM Protocol Stack
, 1994
"... We describe the semantics and implementation of a protocol stack that gives applications access to the Quality of Service guarantees available at the ATM level (a native-mode ATM protocol stack). The stack was designed using three principles: minimal functionality in the critical path, no logical mu ..."
Abstract
-
Cited by 8 (1 self)
- Add to MetaCart
We describe the semantics and implementation of a protocol stack that gives applications access to the Quality of Service guarantees available at the ATM level (a native-mode ATM protocol stack). The stack was designed using three principles: minimal functionality in the critical path, no logical multiplexing, and specific targeting to ATM. It allows applications to establish simplex or duplex virtual circuits with error control, leaky-bucket or feedback flow control and arbitrary size messages. In addition, a signaling component provides connection and Quality of Service management. The stack has been implemented in a simulator and two networks of Personal Computers interconnected respectively with Ethernet and ATM adaptors. We discuss our experiences with developing and porting the stack, and show how our design principles lead to rapid deployment as well as a small protocol overhead.
Message sequence charts
- In Lectures on Concurrency and Petri Nets, LNCS 3098
, 2003
"... Abstract. Scenario languages based on Message Sequence Charts (MSCs) and related notations have been widely studied in the last decade [14, 13, 2, 9, 6, 12, 8]. The high expressive power of scenarios renders many basic problems concerning these languages undecidable. The most expressive class for wh ..."
Abstract
-
Cited by 7 (2 self)
- Add to MetaCart
Abstract. Scenario languages based on Message Sequence Charts (MSCs) and related notations have been widely studied in the last decade [14, 13, 2, 9, 6, 12, 8]. The high expressive power of scenarios renders many basic problems concerning these languages undecidable. The most expressive class for which several problems are known to be decidable is one which possesses a behavioral property called “existentially bounded”. However, scenarios outside this class are frequently exhibited by asynchronous distributed systems such as sliding window protocols. We propose here an extension of MSCs called Causal Message Sequence Charts, which preserves decidability without requiring existential bounds. Interestingly, it can also model scenarios from sliding window protocols. We establish the expressive power and complexity of decision procedures for various subclasses of Causal Message Sequence Charts. 1
Trade-offs between Message Delivery and Quiesce Times in Connection Management Protocols
- IN PROCEEDINGS OF 3RD ISRAEL SYMPOSIUM ON THEORY OF COMPUTING AND SYSTEMS (TEL-AVIV
, 1995
"... The problem of implementing reliable message delivery using timing information is considered. Two important parameters, from the point of view of system performance, are the time required to deliver a message and the time that elapses between periods of quiescence, in which a processor returns to an ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
The problem of implementing reliable message delivery using timing information is considered. Two important parameters, from the point of view of system performance, are the time required to deliver a message and the time that elapses between periods of quiescence, in which a processor returns to an initial state and deletes all earlier connection records. It has been frequently observed that there is no known protocol which simultaneously optimizes both these quantities; in this paper we prove such trade-offs precisely in the form of lower bounds. Despite the simple nature of the problem, the relationships among these lower bounds are quite subtle, in that they depend critically on the level of synchronization in the processors' clocks. We consider three basic timing models: asynchronous processors, processors that have (approximately) synchronized clocks, and processors with clocks that read different values but run at (approximately) the same rate. We mainly focus on networks that c...
Supporting Synchronous Groupware with Peer Object-Groups
- In Proceedings of the Third USENIX Conference on Object-Oriented Technologies (COOTS
, 1997
"... *Work partially supported by PRAXIS XXI scholarships. We propose the peer object-group design pattern as a suitable architectural solution to structure and implement synchronous groupware applications. We discuss a reliable group-communication subsystem and a distributed objects model, implemented i ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
*Work partially supported by PRAXIS XXI scholarships. We propose the peer object-group design pattern as a suitable architectural solution to structure and implement synchronous groupware applications. We discuss a reliable group-communication subsystem and a distributed objects model, implemented in Java, used to realize the approach. 1. Characterizing Groupware
UIA: A Global Connectivity Architecture for Mobile Personal Devices
, 2008
"... The Internet’s architecture, designed in the days of large, stationary computers tended by technically savvy and accountable administrators, fails to meet the demands of the emerging ubiquitous computing era. Nontechnical users now routinely own multiple personal devices, many of them mobile, and ne ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
The Internet’s architecture, designed in the days of large, stationary computers tended by technically savvy and accountable administrators, fails to meet the demands of the emerging ubiquitous computing era. Nontechnical users now routinely own multiple personal devices, many of them mobile, and need to share information securely among them using interactive, delay-sensitive applications. Unmanaged Internet Architecture (UIA) is a novel, incrementally deployable network architecture for modern personal devices, which reconsiders three architectural cornerstones: naming, routing, and transport. UIA augments the Internet’s global name system with a personal name system, enabling users to build personal administrative groups easily and intuitively, to establish secure bindings between his devices and with other users’ devices, and to name his devices and his friends

