scispace - formally typeset
Search or ask a question

Showing papers on "Protocol (object-oriented programming) published in 1998"


01 Apr 1998
TL;DR: The Real Time Streaming Protocol, or RTSP, is an application-level protocol for control over the delivery of data with real-time properties that is intended to control multiple data delivery sessions, provide a means for choosing delivery channels such as UDP, multicast UDP and TCP, and provide a mean for choosing Delivery mechanisms based upon RTP (RFC 1889).
Abstract: The Real Time Streaming Protocol, or RTSP, is an application-level protocol for control over the delivery of data with real-time properties. RTSP provides an extensible framework to enable controlled, on-demand delivery of real-time data, such as audio and video. Sources of data can include both live data feeds and stored clips. This protocol is intended to control multiple data delivery sessions, provide a means for choosing delivery channels such as UDP, multicast UDP and TCP, and provide a means for choosing delivery mechanisms based upon RTP (RFC 1889).

1,452 citations


Journal ArticleDOI
TL;DR: This article explains why scripting languages will handle many of the programming tasks in the next century better than system programming languages.
Abstract: A fundamental change is occurring in the way people write computer programs, away from system programming languages such as C or C++ to scripting languages such as Perl or Tcl. Although many people are participating in the change, few realize that the change is occurring and even fewer know why it is happening. This article explains why scripting languages will handle many of the programming tasks in the next century better than system programming languages. System programming languages were designed for building data structures and algorithms from scratch, starting from the most primitive computer elements. Scripting languages are designed for gluing. They assume the existence of a set of powerful components and are intended primarily for connecting components.

705 citations


Patent
11 Mar 1998
TL;DR: In this paper, the authors present a computer-based decision support system that includes three main components: a database mining engine (DME), an advertising optimization mechanism; and a customized user interface that provides access to the various features of the invention.
Abstract: The most preferred embodiment of the present invention is a computer-based decision support system that includes three main components: a database mining engine (DME); an advertising optimization mechanism; and a customized user interface that provides access to the various features of the invention. The user interface, in conjunction with the DME, provides a unique and innovative way to store, retrieve and manipulate data from existing databases containing media-related audience access data, which describe the access habits and preferences of the media audience. By using a database with a simplified storage and retrieval protocol, the data contained therein can be effectively manipulated in real time. This means that previously complex and lengthy information retrieval and analysis activities can be accomplished in very short periods of time (typically seconds instead of minutes or even hours). Further, by utilizing the advertising optimization mechanism of the present invention, businesses, networks, and advertising agencies can interactively create, score, rank and compare various proposed or actual advertising strategies in a simple and efficient manner. This allows the decision-makers to more effectively tailor their marketing efforts and successfully reach the desired target market while conserving scarce advertising capital. Finally, the user interface for the system provides access to both the DME and the optimization mechanism in a simple and straightforward manner, significantly reducing training time.

664 citations


Proceedings Article
01 Jul 1998
TL;DR: Technical design issues faced in the development of Open Knowledge Base Connectivity are discussed, how OKBC improves upon GFP is highlighted, and practical experiences in using it are reported on.
Abstract: The technology for building large knowledge bases (KBs) is yet to witness a breakthrough so that a KB can be constructed by the assembly of prefabricated knowledge components. Knowledge components include both pieces of domain knowledge (for example, theories of economics or fault diagnosis) and KB tools (for example, editors and theorem provers). Most of the current KB development tools can only manipulate knowledge residing in the knowledge representation system (KRS) for which the tools were originally developed. Open Knowledge Base Connectivity (OKBC) is an application programming interface for accessing KRSs, and was developed to enable the construction of reusable KB tools. OKBC improves upon its predecessor, the Generic Frame Protocol (GFP), in several significant ways. OKBC can be used with a much larger range of systems because its knowledge model supports an assertional view of a KRS. OKBC provides an explicit treatment of entities that are not frames, and it has a much better way of controlling inference and specifying default values. OKBC can be used on practically any platform because it supports network transparency and has implementations for multiple programming languages. In this paper, we discuss technical design issues faced in the development of OKBC, highlight how OKBC improves upon GFP, and report on practical experiences in using it.

354 citations



Patent
06 Jul 1998
TL;DR: In this paper, a method and apparatus allows an information provider to broadcast a graphical interactive information system application to a user even using a lowbandwidth transport such as the VBI.
Abstract: A method and apparatus allows an information provider to broadcast a graphical interactive information system application to a user even using a low-bandwidth transport such as the VBI. A compact protocol encapsulates graphical information using definitions of graphical objects and resources. A scripting and command language is also highly compact. A reception component receives the compact protocol and displays and operates a complete graphical interactive information system application.

238 citations


Book ChapterDOI
23 Aug 1998
TL;DR: In this article, a 3-round zero-knowledge protocol for any NP language is proposed, which is based on a non-black-box simulation technique, based on the Diffie-Hellman problem.
Abstract: In this paper, we construct a 3-round zero-knowledge protocol for any NP language. Goldreich and Krawczyk proved that a 3-round black-box simulation zero-knowledge protocol exists only for BPP languages. However, there is no contradiction here. That is, our proposed protocol achieves a weaker notion of zero-knowledge: auxiliary-input non-uniform zero-knowledge. Since this notion has not been investigated in the literature, we classify several zero-knowledge notions including it and discuss the relationships among them. Our main contribution is to provide a non-black-box simulation technique. It is based on a novel computational assumption related to the Diffie-Hellman problem. Although this assumption is strong and non-standard, its non-standard nature seems essential for our simulation technique.

208 citations


Patent
29 May 1998
TL;DR: In this paper, the authors present a method for automatically generating an embedded application in response to a graphical program created by a user, which enables the user to develop or define instrument functionality using graphical programming techniques, while enabling the resulting program to operate in an embedded real-time system.
Abstract: A computer-based virtual instrumentation system including a host computer and an embedded system or device, wherein graphical programs created using the computer system can be downloaded to the embedded system for execution in a real-time or more deterministic manner. The present invention thus provides a method for automatically generating an embedded application in response to a graphical program created by a user. This provides the user the ability to develop or define instrument functionality using graphical programming techniques, while enabling the resulting program to operate in an embedded real-time system. The invention includes a novel method for configuring the embedded system. During execution of a graphical program in the embedded system, the block diagram portion executes in the embedded system, and the host CPU executes front panel display code to display on the screen the graphical front panel of the graphical program. The embedded system and the host computer exchange data using a front panel protocol to enable this operation. The present invention also includes improved debugging support for graphical programs executing on the embedded system. The host graphical programming system thus provides the user interface for graphical programs executing on the embedded system, essentially acting as the front panel 'browser' for embedded applications. The host LabVIEW can also act as an independent application communicating with embedded LabVIEW through the shared memory. The host graphical programming system further provides a seamless environment in which the user can develop an embedded application using high level graphical programming techniques.

208 citations


Patent
20 May 1998
TL;DR: In this article, a message is defined as a number of distinct objects, each of which contains information that describes some portion of the message and a set of objects and methods define the processing steps required for a mail server to process a message.
Abstract: A framework for use with object-oriented programming systems provides a common message processing system structure that can be placed on any OOP platform and be configured to support any e-mail message protocol standard or specific mail server function. The framework defines an e-mail message as a number of distinct objects, each of which contains information that describes some portion of the message. All messages received by a system in which the framework is implemented are defined on this core object structure. Another set of objects and methods define the processing steps required for a mail server to process a message. A message is received as a class of message objects, which are assigned a message type that determines the subsequent processing steps to which the message object is subjected. As a message is processed, the objects of which it is comprised are changed, so that the message processing can be interrupted and then resumed without loss or duplication of processing steps.

206 citations


Proceedings ArticleDOI
19 Aug 1998
TL;DR: This paper demonstrates how to program visitors without relying on accept methods and without knowing all classes of the objects in advance, so a program using the Visitor pattern can now be understood as a specialized version of a programs using the Walkabout class.
Abstract: For object-oriented programming, the Visitor pattern enables the definition of a new operation on an object structure without changing the classes of the objects. The price has been that the set of classes must be fixed in advance, and they must each have a so-called accept method. In this paper we demonstrate how to program visitors without relying on accept methods and without knowing all classes of the objects in advance. The idea, derived from related work on shape polymorphism in functional programming, is to separate (1) accessing subobjects, and (2) acting on them. In the object-oriented setting, reflection techniques support access to sub-objects, as demonstrated in our Java class, Walkabout. It supports all visitors as subclasses, and they can be programmed without any further use of reflection. Thus a program using the Visitor pattern can now be understood as a specialized version of a program using the Walkabout class.

178 citations


Journal ArticleDOI
TL;DR: Coyote is described, a system that supports the construction of highly modular and configurable versions of communications-oriented abstractions with support for finer-grain microprotocol objects and a nonhierarchical composition scheme for use within a single layer of a protocol stack.
Abstract: Communication-oriented abstractions such as atomic multicast, group RPC, and protocols for location-independent mobile computing can simplify the development of complex applications built on distributed systems. This article describes Coyote, a system that supports the construction of highly modular and configurable versions of such abstractions. Coyote extends the notion of protocol objects and hierarchical composition found in existing systems with support for finer-grain microprotocol objects and a nonhierarchical composition scheme for use within a single layer of a protocol stack. A customized service is constructed by selecting microprotocols based on their semantic guarantees and configuring them together with a standard runtime system to form a composite protocol implementing the service. This composite protocol is then composed hierarchically with other protocols to form a complete network subsystem. The overall approach is described and illustrated with examples of services that have been constructed using Coyote, including atomic multicast, group RPC, membership, and mobile computing protocols. A prototype implementation based on extending x-kernel version 3.2 running on Mach 3.0 with support for microprotocols is also presented, together with performance results from a suite of microprotocols from which over 60 variants of group RPC can be constructed.

Patent
06 Jan 1998
TL;DR: In this article, the authors propose a method and system for providing seamless interoperability and integration between a plurality of devices in a network using a common protocol, wherein at least one of the devices is a legacy device which commmunicates with the network using the proprietary protocol.
Abstract: A method and system for providing seamless interoperability and integration between a plurality of devices in a network using a common protocol, wherein at least one of the devices is a legacy device which commmunicates with the network using a proprietary protocol. When a legacy device is coupled to the network, one of the plurality of devices on the network queries the legacy device via the proprietary protocol to determine a set of basic capabilities supported by the legacy device. The set of basic capabilities are then mapped from the proprietary protocol to a set of basic commands from the common protocol. A control module is generated for the legacy device, wherein the control module is based upon the set of basic commands. The set of basic capabilites of the legacy device are then accessed via the control module, thereby providing seamless interoperability and integration of the legacy device with the plurality of devices.

01 Jan 1998
TL;DR: This document describes a proposal for an evaluation protocol for the extended {M2 VTS} database ({XM2VTSDB}) including the training of experts and supervisor.
Abstract: This document describes a proposal for an evaluation protocol for the extended {M2VTS} database ({XM2VTSDB}) including the training of experts and supervisor.

01 Jan 1998
TL;DR: This paper describes a prototype DSS Discovery Agent, an intelligent agent designed to facilitate access to DSS deployed using an Open DSS protocol that utilizes a set of specialized HTML metainformation headers to determine whether a given Web site contains a Decision Support System (DSS) and whether that DSS meets user defined requirements.
Abstract: This paper describes a prototype DSS Discovery Agent, an intelligent agent designed to facilitate access to DSS deployed using an Open DSS protocol. The agent utilizes a set of specialized HTML metainformation headers to determine whether a given Web site contains a Decision Support System (DSS) and whether that DSS meets user defined requirements. Introduction and Background Today, technologies like the World Wide Web WWW and corporate Intranets have made it possible for people to share vast and varied information with other individuals both within their organization and in the world at large. At present the Internet provides access to thousands of gigabytes each of software, books and papers, raw scientific data, menus, meeting minutes, advertisements, video and audio recordings, and more. Increasingly, competitive firms are tapping this information source to meet their decision support needs. However, coordinating and effectively using all of this information is a monumental task, that can take time, cost money and lead to information overload. Intelligent search engines currently are being used to automatically classify and index the collections of data. But, these search engines cannot classify resources on the Internet that are not text based. This leaves decision-makers without adequate mechanisms for discovering a wide range of resources that are potentially useful to business people. These resources include graphical information, software, intelligent agents, and decision support systems. One method that has been proposed for improving discovery of non-text resources is Web page labeling. This technique uses labels or metainformation to identify the content and quality of non-text information. These labels must be developed to provide the information necessary for specific domains. One such specialized labeling scheme has been developed for decision support systems (DSS). In 1995, Goul et al. proposed a protocol suite that utilizes a set of specialized headers to provide basic information about a DSS to automated intelligent search agents. The metainformation headers are used to specify any information necessary to evaluate a DSS. The purpose of this paper is to present a prototype intelligent agent that allows automated discovery of DSS that are distributed using the Open DSS protocol. The DSS Discovery Agent is an artificial intelligence based expert system. It traverses links to a specifiable depth beginning at a URL passed as an argument. The intelligent agent identifies DSS and performs keyword filtering to determine if the DSS meets a set of end-user criteria. The Open DSS Protocol The Open DSS Protocol approach for DSS deployment allows DSS to be distributed on individual web pages, consistent with the way other types of data are currently being offered. It is a general protocol that provides facilitated access to DSS using existing Internet application layer protocols. It consists of two layers, the Metainformation Layer and the Transaction Layer. The advantage of an open protocol is that the automated intelligent search agents, like the DSS Discovery Agent, have the capability of finding any DSS compliant with the protocol. The DSS Discovery Agent retrieves the information contained in the Metainformation Layer of the protocol to determine if the DSS meets the user-specified requirements. This layer utilizes a set of specialized headers to provide basic information about the DSS to the automated intelligent search agents. The header information is in a consistent format so that the automated DSS Discovery Agents can filter the Web pages correctly. The basic information necessary for DSS metainformation includes the content type (DSS), a list of keywords, and a description of the DSS. The metainformation layer also contains parameters related to DSS functionality. These parameters were selected based model management research. The goal of much of this research has been to develop techniques to select or construct appropriate models to be run so as to provide the appropriate answer. To date there has been no universally agreed upon method for representing and specifying DSS models. However, at a minimum, a DSS representation scheme should include descriptions of the stimuli (inputs) and responses (outputs), state (data structures), and procedures (control structures). The OpenDSS protocol metainformation currently includes functional parameters related to the problem domain of the DSS, the solution options, the inputs, the outputs and assumptions made. The Open-DSS protocol also includes metainformation information on the resources required to execute the DSS. These include information on the hardware requirements (e.g., computing platform), software requirements (e.g., operating system or

Journal ArticleDOI
TL;DR: Future needs include development of fully integrated user-friendly virtual bronchoscopes, development of optimal CT protocols for generating artifact-free data sets, and improvements in automated preprocessing of 3D CT images.
Abstract: Virtual bronchoscopy is emerging as a useful approach for assessment of three-dimensional (3D) computed tomographic (CT) pulmonary images. A protocol for virtual bronchoscopic assessment of a 3D CT pulmonary image would have two main stages: (a) preprocessing of image data, which involves extracting objects of interest, defining paths through major airways, and preparing the extracted objects for 3D rendering; and (b) interactive image assessment, which involves use of graphics-based software tools such as surface-rendered views, projection images, virtual endoscopic views, tube views, oblique section images, measurement data, global two-dimensional section images, and cross-sectional views. Although a virtual bronchoscope offers a unique opportunity for exploration and quantitation, it cannot replace a real bronchoscope. Limitations of current virtual endoscopy systems include high cost, lack of visual aids beyond simulated endoscopic views, difficulty in performing interactive anatomic exploration, lack...

Book ChapterDOI
24 Sep 1998
TL;DR: The Arrow distributed directory protocol is devised, a scalable and local mechanism for ensuring mutually exclusive access to mobile objects and has communication complexity optimal within a factor of (1+MST-stretch(G))/2, where MST-Stretch( G) is the “minimum spanning tree stretch” of the underlying network.
Abstract: Most practical techniques for locating remote objects in a distributed system suffer from problems of scalability and locality of reference We have devised the Arrow distributed directory protocol, a scalable and local mechanism for ensuring mutually exclusive access to mobile objects This directory has communication complexity optimal within a factor of (1+MST-stretch(G))/2, where MST-stretch(G) is the “minimum spanning tree stretch” of the underlying network


Book ChapterDOI
20 Jul 1998
TL;DR: This paper presents a composite design pattern that synthesizes the best of both approaches to extensibility and in the process resolves the tension between the two design strategies.
Abstract: Many problems require recursively specified types of data and a collection of tools that operate on those data Over time, these problems evolve so that the programmer must extend the toolkit or extend the types and adjust the existing tools accordingly Ideally, this should be done without modifying existing code Unfortunately, the prevailing program design strategies do not support both forms of extensibility: functional programming accommodates the addition of tools, while object-oriented programming supports either adding new tools or extending the data set, but not both In this paper, we present a composite design pattern that synthesizes the best of both approaches and in the process resolves the tension between the two design strategies We also show how this protocol suggests a new set of linguistic facilities for languages that support class systems

Journal ArticleDOI
TL;DR: A new architecture and negotiation protocol for the dynamic scheduling of manufacturing systems based on two paradigms: multi-agent systems and holonic systems, which assumes that deadlines are the most important constraints to consider.
Abstract: This paper deals with a new architecture and negotiation protocol for the dynamic scheduling of manufacturing systems. The architecture is based on two paradigms: multi-agent systems and holonic systems. The main contribution in the architecture is the existence of holons representing tasks together with holons representing resources. The well-known contract net protocol has been adapted to handle temporal constraints and to deal with conflicts. It also deals with conflict situations, namely with the case of the ‘indecision problem’. This approach assumes that deadlines are the most important constraints to consider.

Book ChapterDOI
20 Jul 1998
TL;DR: The architecture is based on the concept of reflection, the ability for a program to access, reason about and alter its own implementation in a principled way, according to a well-defined Meta-Object Protocol (MOP) [1].
Abstract: Middleware platforms have emerged as an effective answer to the requirements of open distributed processing. However, in our opinion, a new engineering approach based on configurability and openess of platform implementations is essential to meet the needs of applications areas such as multimedia, groupware and mobile computing. This paper outlines our architecture for configurable and open middleware platforms, along with a first prototype. The architecture is based on the concept of reflection, the ability for a program to access, reason about and alter its own implementation in a principled way, according to a well-defined Meta-Object Protocol (MOP) [1].

Patent
David M. Putzolu1
23 Jun 1998
TL;DR: In this paper, the authors proposed an approach for enhancing quality of network service for multimedia streams by recognizing audio and video packets over Point-to-Point Protocol links independent of the presence of announcement protocols.
Abstract: Enhancing quality of network service for multimedia streams by recognizing audio and video packets over Point-to-Point Protocol links independent of the presence of announcement protocols comprises identifying multimedia packets from data streams and prioritizing each packet according to information that each packet carries.

Book ChapterDOI
23 Feb 1998
TL;DR: Payment transactions in the SET (Secure Electronic Transaction) protocol are described and requirements for SET are discussed and formally represented in a version of NPATRL (the NRL Protocol Analyzer Temporal Requirements Language).
Abstract: Payment transactions in the SET (Secure Electronic Transaction) protocol are described. Requirements for SET are discussed and formally represented in a version of NPATRL (the NRL Protocol Analyzer Temporal Requirements Language). NPATRL is language for expressing generic requirements, heretofore applied to key distribution or key agreement protocols. Transaction vectors and other new constructs added to NPATRL for reasoning about SET payment transactions are described along with properties of their representation.

Proceedings ArticleDOI
04 Mar 1998
TL;DR: The role of open implementation and reflection in the design of middleware platforms such as CORBA is investigated, and the concept of open bindings which support inspection and adaptation of the path of communications are introduced.
Abstract: In order to support multimedia applications in mobile environments, it will be necessary for applications to be aware of the underlying network conditions and also to be able to adapt their behaviour and that of the underlying platform. This paper focuses on the role of middleware in supporting such adaptation. In particular, we investigate the role of open implementation and reflection in the design of middleware platforms such as CORBA. The paper initially extends CORBA with the concept of explicit binding, where path of communication between objects is represented as first class objects. We then introduce the concept of open bindings which support inspection and adaptation of the path of communications. An implementation of open bindings is described, based on the Ensemble protocol suite from Cornell University.

Patent
16 Feb 1998
TL;DR: In this article, the capability information including information indicative of a plurality of communication protocols is returned to the host device, and a communication protocol is set, and print data is received from the host devices by the set communication protocol.
Abstract: In response to a request from a host device using an initial protocol, capability information including information indicative of a plurality of communication protocols is returned to the host device, and a communication protocol, designated by the host device based on the capability information, is set, and print data is received from the host device by the set communication protocol. In a system using an interface connected to various types of devices, e.g., an IEEE 1394 serial bus, a communication protocol, which is used when a host device transfers print data to a printer, is not limited to that unique to the manufacturer of the device.

ReportDOI
01 Aug 1998
TL;DR: Siena is presented, a scalable event notication service that is based on a distributed architecture of event servers based on an extension to the publish/subscribe protocol that describes and compares several different server topologies and routing algorithms.
Abstract: Event-based distributed systems are programmed to operate in response to events. An event notication service is an application-independent infrastructure that supports the construction of event-based systems. While numerous technologies have been developed for supporting event-based interactions over local-area networks, these technologies do not scale well to wide-area networks such as the Internet. Wide-area networks pose new challenges that have to be attacked with solutions that specically address issues of scalability. This paper presents Siena, a scalable event notication service that is based on a distributed architecture of event servers. We rst present a formally dened interface that is based on an extension to the publish/subscribe protocol. We then describe and compare several different server topologies and routing algorithms. We conclude by briey discussing related work, our experience with an initial implementation of Siena, and a framework for evaluating the scalability of event notication services such as Siena.

01 Jan 1998
TL;DR: This memo defines a standardized framework for extensible SNMP agents, which defines processing entities called master agents and subagents, a protocol used to communicate between them, and the elements of procedure by which the extensible agent processes SNMP protocol messages.
Abstract: This memo defines a standardized framework for extensible SNMP agents. It defines processing entities called master agents and subagents, a protocol (AgentX) used to communicate between them, and the elements of procedure by which the extensible agent processes SNMP protocol messages. This memo obsoletes RFC 2257.

Journal Article
TL;DR: This paper presents a new attack, called the chosen protocol attack, in which an attacker may write a new protocol using the same key material as a target protocol, which is individually very strong, but which interacts with the target protocol in a security-relevant way.
Abstract: There are many cases in the literature in which reuse of the same key material for different functions can open up security holes. In this paper, we discuss such interactions between protocols. and present a new attack, called the chosen protocol attack, in which an attacker may write a new protocol using the same key material as a target protocol, which is individually very strong, but which interacts with the target protocol in a security-relevant way. We finish with a brief discussion of design principles to resist this class of attack.

Proceedings ArticleDOI
17 Jun 1998
TL;DR: X-KLAIM is an experimental programming language, inspired by the Linda paradigm, where mobile agents and their interaction strategies can be naturally programmed.
Abstract: Mobile agents are processes which can migrate and execute on new hosts. Mobility is a key concept for network programming; it has stimulated much research about new programming languages and paradigms. X-KLAIM is an experimental programming language, inspired by the Linda paradigm, where mobile agents and their interaction strategies can be naturally programmed. A prototype implementation of X-KLAIM is presented, together with a few examples introducing the new programming style.

Patent
10 Jul 1998
TL;DR: In this article, a single logic control module is used to perform any of a number of data manipulation functions including parsing, filtering, data generation or analysis, based upon one or more programmably configurable protocol descriptions which may be stored in and retrieved from an associated memory.
Abstract: A network interface system and related methods. A single logic control module, which may be implemented in hardware or software, is utilized to perform any of a number of data manipulation functions including, for example, parsing, filtering, data generation or analysis, based upon one or more programmably configurable protocol descriptions which may be stored in and retrieved from an associated memory.

Journal ArticleDOI
TL;DR: A new architecture is proposed that automatically aggregates flows on each link in the network that has no knowledge of individual flows and consists in the introduction of a pocket type with three values which can be encoded on two bits.