Status of this Memo Content Internetworking (CDI) Scenarios This memo provides information for th... more Status of this Memo Content Internetworking (CDI) Scenarios This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2003). All Rights Reserved. In describing content internetworking as a technology targeted for use in production networks, it is useful to provide examples of the sequence of events that may occur when two content networks decide to interconnect. The scenarios presented here seek to provide some concrete examples of what content internetworking is, and also to
Status of this Memo A Model for Content Internetworking (CDI) This memo provides information for ... more Status of this Memo A Model for Content Internetworking (CDI) This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2003). All Rights Reserved. Content (distribution) internetworking (CDI) is the technology for interconnecting content networks, sometimes previously called "content peering " or "CDN peering". A common vocabulary helps the process of discussing such interconnection and interoperation. This document introduces content networks and content internetworking, and defines elements for such a common vocabulary.
A distributed object database stores persistently at servers. Applications run on client machines... more A distributed object database stores persistently at servers. Applications run on client machines, fetching objects into a client-side cache of objects. If fetching and cache management are done in terms of objects, rather than fixed-size units such as pages, three problems must be solved: 1. which objects to prefetch 2. how to translate, or swizzle, inter-object references when they are fetched from server to client, and, 3. which objects to displace from the cache. This thesis reports the results of experiments to test various solutions to the problems. The experiments use the runtime system of the Thor distributed object database and benchmarks adapted from the Wisconsin 007 benchmark suite. The thesis establishes the following points: 1. For plausible workloads involving some amount of object fetching, the prefetching policy is likely to have more impact on performance than swizzling policy of cache management policy. 2. A simple breadth-first prefetcher can have performance tha...
I present the problem of client object cache lockup in a distributed object-oriented database sys... more I present the problem of client object cache lockup in a distributed object-oriented database system where storage is recovered by garbage collection. If garbage collection is augmented with the ability to discard reachable unmodified versions of persistent objects, cache lockup is greatly reduced. I outline some remaining questions about this technique for managing an object cache. 1 Introduction In a distributed object-oriented database system, server machines store persistent objects shared by applications running on client machines. When an application invokes an operation on a persistent object, that operation must run on either the server or client. I consider the case where objects are moved or copied to the client for at least the duration of the client transaction. A number of existing object-oriented databases work partially or entirely in this mode of executing operations on the client machine: examples are O2 [1], GemStone [2, 9], and Orion [7]. 2 Complicating factors T...
I argue against trying to solve the problem of clustering objects into disk pages. Instead, I pro... more I argue against trying to solve the problem of clustering objects into disk pages. Instead, I propose that objects be fetched in groups that may be specific to an application or user, and that can be computed at fetch time. I briefly describe crystals, which serve to record such groups statically. Finally, I speculate that ob- ject fetching may be particularly relevant for providing services to very small machines with limited memory, such as personal digital assis- tants.
We define and examine the shutdown problem for blockchain systems: how to gracefully end the syst... more We define and examine the shutdown problem for blockchain systems: how to gracefully end the system's operation at the end of its useful life. A particular focus is those blockchain systems that hold archival data of long-lived interest. We outline what it means to achieve a successful shutdown, and compare those criteria to likely end-of-life conditions in a generic blockchain system. We conclude that the decentralized nature of blockchain systems makes shutdown difficult, particularly if the system uses an unstable consensus like the Nakamoto consensus of Bitcoin. Accordingly, we recommend against using blockchain with unstable consensus for any data whose value is likely to persist beyond the life of the blockchain system. For any such systems that are already in operation, we recommend considering a hard fork to implement stable consensus. Such consideration needs to happen well in advance of the system's end of life.
... of the constructs in Argus that support reli-able distributed computing are also useful for d... more ... of the constructs in Argus that support reli-able distributed computing are also useful for dynamicreconfiguration. ... Our experience is rel-evant to the reconfiguration of other distributed systems with shared ... In particular, it is relevant to Thor, an object database which shares these ...
Page 1. Subtypes vs. Where Clauses: Constraining Parametric Polymorphism Mark Day Lotus Developme... more Page 1. Subtypes vs. Where Clauses: Constraining Parametric Polymorphism Mark Day Lotus Development Corporation 1 Rogers Street Cambridge, MA 02 142 MarkDay@crd.lotus.com Robert Gruber Barbara Liskov Andrew C. Myers ...
Status of this Memo Content Internetworking (CDI) Scenarios This memo provides information for th... more Status of this Memo Content Internetworking (CDI) Scenarios This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2003). All Rights Reserved. In describing content internetworking as a technology targeted for use in production networks, it is useful to provide examples of the sequence of events that may occur when two content networks decide to interconnect. The scenarios presented here seek to provide some concrete examples of what content internetworking is, and also to
Status of this Memo A Model for Content Internetworking (CDI) This memo provides information for ... more Status of this Memo A Model for Content Internetworking (CDI) This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2003). All Rights Reserved. Content (distribution) internetworking (CDI) is the technology for interconnecting content networks, sometimes previously called "content peering " or "CDN peering". A common vocabulary helps the process of discussing such interconnection and interoperation. This document introduces content networks and content internetworking, and defines elements for such a common vocabulary.
A distributed object database stores persistently at servers. Applications run on client machines... more A distributed object database stores persistently at servers. Applications run on client machines, fetching objects into a client-side cache of objects. If fetching and cache management are done in terms of objects, rather than fixed-size units such as pages, three problems must be solved: 1. which objects to prefetch 2. how to translate, or swizzle, inter-object references when they are fetched from server to client, and, 3. which objects to displace from the cache. This thesis reports the results of experiments to test various solutions to the problems. The experiments use the runtime system of the Thor distributed object database and benchmarks adapted from the Wisconsin 007 benchmark suite. The thesis establishes the following points: 1. For plausible workloads involving some amount of object fetching, the prefetching policy is likely to have more impact on performance than swizzling policy of cache management policy. 2. A simple breadth-first prefetcher can have performance tha...
I present the problem of client object cache lockup in a distributed object-oriented database sys... more I present the problem of client object cache lockup in a distributed object-oriented database system where storage is recovered by garbage collection. If garbage collection is augmented with the ability to discard reachable unmodified versions of persistent objects, cache lockup is greatly reduced. I outline some remaining questions about this technique for managing an object cache. 1 Introduction In a distributed object-oriented database system, server machines store persistent objects shared by applications running on client machines. When an application invokes an operation on a persistent object, that operation must run on either the server or client. I consider the case where objects are moved or copied to the client for at least the duration of the client transaction. A number of existing object-oriented databases work partially or entirely in this mode of executing operations on the client machine: examples are O2 [1], GemStone [2, 9], and Orion [7]. 2 Complicating factors T...
I argue against trying to solve the problem of clustering objects into disk pages. Instead, I pro... more I argue against trying to solve the problem of clustering objects into disk pages. Instead, I propose that objects be fetched in groups that may be specific to an application or user, and that can be computed at fetch time. I briefly describe crystals, which serve to record such groups statically. Finally, I speculate that ob- ject fetching may be particularly relevant for providing services to very small machines with limited memory, such as personal digital assis- tants.
We define and examine the shutdown problem for blockchain systems: how to gracefully end the syst... more We define and examine the shutdown problem for blockchain systems: how to gracefully end the system's operation at the end of its useful life. A particular focus is those blockchain systems that hold archival data of long-lived interest. We outline what it means to achieve a successful shutdown, and compare those criteria to likely end-of-life conditions in a generic blockchain system. We conclude that the decentralized nature of blockchain systems makes shutdown difficult, particularly if the system uses an unstable consensus like the Nakamoto consensus of Bitcoin. Accordingly, we recommend against using blockchain with unstable consensus for any data whose value is likely to persist beyond the life of the blockchain system. For any such systems that are already in operation, we recommend considering a hard fork to implement stable consensus. Such consideration needs to happen well in advance of the system's end of life.
... of the constructs in Argus that support reli-able distributed computing are also useful for d... more ... of the constructs in Argus that support reli-able distributed computing are also useful for dynamicreconfiguration. ... Our experience is rel-evant to the reconfiguration of other distributed systems with shared ... In particular, it is relevant to Thor, an object database which shares these ...
Page 1. Subtypes vs. Where Clauses: Constraining Parametric Polymorphism Mark Day Lotus Developme... more Page 1. Subtypes vs. Where Clauses: Constraining Parametric Polymorphism Mark Day Lotus Development Corporation 1 Rogers Street Cambridge, MA 02 142 MarkDay@crd.lotus.com Robert Gruber Barbara Liskov Andrew C. Myers ...
Uploads
Papers by Mark Day