![]() |
![]() |
| Home | FactSheet | Broadcaster | Receiver | BDC | Security | E-Commerce | Glossary | Team | Search |
The goal of the Minstrel project is to develop a portable, flexible, scalable, and secure Java-based push system. Push systems reverse the typical communication pattern of Internet information systems: information is actively disseminated to users. The benefits of this approach are:
The design goals of Minstrel are:
The Minstrel Fact Sheet gives a quick overview on push systems and Minstrel's architecture.
If you are interested in push systems in general check out my Push Resources.
The following documents are still under development:
- Minstrel Fact Sheet
- Gives an overview on the Minstrel system and its architecture.
- A Component and Communication Model for Push Systems
To be presented at the ESEC/FSE 99 - Joint 7th European Software Engineering Conference (ESEC) and 7th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE-7), September 6-10, 1999, Toulouse, France
- We present a communication and component model for push systems. Surprisingly, despite the widespread use of many push services on the Internet, no such models exist. Our communication model contrasts push systems with client-server and event-based systems. Our component model provides a basis for comparison and evaluation of different push systems and their design alternatives. We compare several prominent push systems using our component model. The component model consists of producers and consumers, broadcasters and channels, and a transport system. We detail the concerns of each of these components. Finally, we discuss a number of open issues that challenge the widespread deployment of push or any other system on an Internet-wide scale. Payment models are the most important among these and are not adequately addressed by any existing system. We briefly present the payment approach in our Minstrel project.
- A Reference Architecture for Push Systems
- This paper presents a reference architecture for push systems. It describes the general concepts, abstractions (broadcasting, channel), and components (broadcaster, receiver, transport system) of push systems. The properties and relations of components are presented and the main issues to be addressed by push architectures are discussed: scalability, network traffic, security, and e-commerce. Since push systems can allow executable content, the relations with mobile code systems are considered. A brief discussion of existing systems in respect to the reference architecture rounds out the paper.
- The Minstrel Push System
Slides of the presentation given at the 7th SIMOS Workshop on Multimedia in Broadcast Networks, 28-29 June 1999, Santorini, Greece.
- The Minstrel Distribution Protocol Suite
- MADP
- Minstrel Active Distribution Protocol
- MRRP
- Minstrel Receiver Request Protocol
- Data definitions for content and administrative information
- Definitions for content data, sample, and administrative information
- The Minstrel Security Architecture
- The security features of Minstrel regarding authorization, authentication, pushlets (mobile code), and Java.
- Broadcaster
- A push system has at least one component that offers channels and distributes channel contents to the channels' subscribers. In analogy to TV this component is called a broadcaster. The broadcaster has a flexible external interface for feeding data into channels. Minstrel's broadcaster uses a hybrid broadcasting scheme:
- server push is used to distribute information on the data available in channels (references, samples) allowing the receivers to keep track of available content and preserving the freshness, notification, and consistency properties
- client pull then is used to request the actual content if wanted
- Electronic Commerce
- Minstrel shall support state-of-the-art electronic commerce as an initial design concept. Millicent is a micro-payment protocol developed by DEC. It is designed to support electronic commerce on the Internet. Millicent supports small purchases, e.g. pay for a WWW page, push channel, etc. Since it is intended for small amounts only (some cents to a few dollars) its security constraints and protocol are lightweight compared to other payment protocols. This package implements a Java component (JavaBean) which supports the Millicent protocol. Typical patterns for payment on the Internet (pay-per-view, flat fee, etc.) shall be supported.
- Netscape Remote Control Facility
- The user client of Minstrel will consist of 2 parts: Netscape Communicator (Mozilla) for displaying information and a Java-based GUI that allows the user to interact with Minstrel and remotely control Netscape Communicator. By using Netscape Communicator the user always has up-to-date content presentation functionalities while Minstrel itself does not have to keep up with new WWW media formats. Netscape Communicator has interfaces to allow remote control. This package implements a JavaBean that allows remote control of Netscape communicator.
- Authentication
- The Minstrel Data Lock package is targeted at ensuring authenticated information on the one side and prevent accesses from unauthorized clients. Thus receivers can be sure that the information they receive comes from an authenticated source and broadcasters know that their channels are accessed by authorized receivers. More generally, this component ensures authenticated, unchanged information and authenticated communication partners.
- Client Security Framework
- Minstrel supports mobile code (pushlets). Since this is code that is downloaded from an external source to be executed at the receiver it must be authenticated and run inside an environment that allows the user to specify access permissions and protects the receiver from malicious code.
- Receiver
- The receiver is the interface that facilitates interaction between users and channels. It gets channel data from broadcasters, presents it to the user, and enables the user to interact with the system.
- Security
- The security features of Minstrel comprise the following areas:
- Encryption
- Some channels will hold confidential data or users will have to pay for a channel. Encryption ensures that such requirements are met. Minstrel uses out-of-the-box standard techniques.
- Basic Distribution Component
- In a large-scale push system a dedicated transport system is necessary to make it scale and operational, i.e. take care of efficient network access in terms of decreasing network bandwidth consumption and increase availability and responsiveness. Minstrel models the transport system as Basic Distribution Components (BDCs) and their possible interaction patterns. A BDC is a generic component that acts as a broadcaster towards receivers and as a receiver towards broadcasters in order to achieve the transparency property. A BDC can exist in several configurations: repeater, cache, and proxy.
| Home | FactSheet | Broadcaster | Receiver | BDC | Security | E-Commerce | Glossary | Team | Search |