Conference Paper

On the Suitability of Estelle for Multimedia Systems

Authors:
To read the full-text of this research, you can request a copy directly from the author.

Abstract

Formal Description Techniques have been widely used for the specification of traditional networked applications. They have not been applied to the specification of new applications such as multimedia systems yet. In this paper, we examine the FDT Estelle with respect to its suitability for multimedia system specification and automatic derivation of efficient implementations. We show that it is possible to specify certain aspects of multimedia systems, but that Estelle is not sufficient for others. The derived implementations often perform badly. We show the reasons and propose to use a slightly modified Estelle syntax and semantics to solve the problems. The implemented solution was tested successfully.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the author.

... In (Fischer, 1995) however, we showed that due to its weak time model Estelle is not very suitable for the speci cation of real-time constraints. Thus, we developed a real-time extension of Estelle called Real-Time Estelle. ...
... In (Bredereke and Gotzhein, 1994) and (Fischer, 1995), it was shown that a major obstacle to e cient implementations of Estelle speci cations is the complex parent-child synchronization. Real-time systems and e cient implementations are strongly related. ...
... Such modules may thus be scheduled when necessary, independently of any other module. Some experiments presented in (Fischer, 1995) clearly indicate that this Estelle enhancement enables much faster implementations. For the following considerations, we use this technique. ...
... In (Fischer, 1995) however, we showed that due to its weak time model Estelle is not very suitable for the speci cation of real-time constraints. Thus, we developed a real-time extension of Estelle called Real-Time Estelle. ...
... In (Bredereke and Gotzhein, 1994) and (Fischer, 1995), it was shown that a major obstacle to e cient implementations of Estelle speci cations is the complex parent-child synchronization. Real-time systems and e cient implementations are strongly related. ...
... Such modules may thus be scheduled when necessary, independently of any other module. Some experiments presented in (Fischer, 1995) clearly indicate that this Estelle enhancement enables much faster implementations. For the following considerations, we use this technique. ...
Article
Full-text available
Estelle is one of the standardized Formal Description Techniques for the specification of communication protocols and distributed systems. Unfortunately, Estelle is not capable of expressing real-time requirements resp. characteristics of services or protocols which are especially interesting in the context of distributed multimedia systems. Therefore, we developed an extension to Estelle called Real-Time Estelle that allows the description of real-time systems. In this paper, we first give a short introduction into Real-Time Estelle and compare it to earlier approaches to the inclusioin of real time into FDTs. In the main part, we discuss possibilities to implement such specifications in a manner guaranteeing QoS requirements by using a real-time operating system. An analysis shows that time bounds can be guaranteed not only for single Estelle module instances but also for module groups where single modules communicate asynchronously. Keywords Estelle, Real Time, FDT-based Implementa...
... The central transition gets data from the transport system and forwards the audio samples contained in this data to a player. A violation of the period restriction is possible since an OTHERWISE part exists: Let's have a look at a typical situation: the manager module has already accepted a video module with a period between 40 and 50 ms (current value: 40) and computation time between 10 and 15 ms (15). In addition, there is a running audio module with a period between 20 and 30 ms (20) and a computation time between 4 and 6 ms (6). ...
Article
Full-text available
Estelle is one of the standardized Formal Description Techniques for the specification of communication protocols and distributed systems. Unfortunately, Estelle is not capable to express real-time requirements or characteristics of services or protocols which is especially important in the context of distributed multimedia systems. In this paper, we introduce an extension to Estelle called Real-Time Estelle that allows to describe real-time systems. We introduce the syntax of the new language and propose both an operational and a hybrid semantics. Examples show the usefulness of the approach. We also discuss ways to implement Real-Time Estelle specifications.
Article
The possibility to automatically generate implementations from formal specifications of distributed systems and protocols is one of the major advantages of the use of formal methods. This process is well understood for standardized Formal Description Techniques (FDTs) such as Estelle, SDL and LOTOS applied to traditional communication protocols. In order to use these languages for the specification of modern telecommunication systems such as multimedia, which is addition, have certain real-time requirements, several real-time language enhancements have been proposed. In this article, we show how, based on a real-time extension of Estelle, implementations can be generated that are able to automatically guarantee specified real-time requirements during the system’s runtime.
Article
Correctness and runtime efficiency are essential properties of software in general and of high-speed protocols in particular. Establishing correctness requires the use of FDTs during protocol design, and to prove the protocol code correct with respect to its formal specification. Another approach to boost confidence in the correctness of the implementation is to generate protocol code automatically from the specification. However, the runtime efficiency of this code is often insufficient. This has turned out to be a major obstacle to the use of FDTs in practice. One of the FDTs currently applied to communication protocols is Estelle. We show how runtime efficiency can be significantly improved by several measures carried out during the design, implementation and runtime of a protocol. Recent results of improvements in the efficiency of Estelle-based protocol implementations are extended and interpreted. 1 Introduction Formal Description Techniques (FDTs) have been successfully used to...
Conference Paper
Full-text available
During the last ten years, tremendous changes have taken place in the communication environments. First, there has been a continuous increase in network performance that has led, for instance, to increasingly high access data rates available in the lower layers. Furthermore, the changes in the offered network services have raised the issue of providing, at the transport level, services already provided at the subnetwork level, such as multicast or synchronous services for example. With the arrival of new applications, such as multimedia or client/server applications, a widening of the application requirements has also been observed. It is this evolving environment that has been at the origin of the ESPRIT II Project OSI 95. An important task in the framework of this project is the definition of an enhanced Transport Service taking account of the aforementioned evolutions. The enhanced Transport Service specified for OSI 95 consists of several types of service. The paper presents the connection-mode Transport Service. We focus mainly on the following original features of our connection-mode service: a new semantics for QoS parameters and the associated negotiation and re-negotiation.
Conference Paper
Full-text available
Efficient implementation of communication software is of critical importance for high-speed networks. Parallelism can improve the runtime performance of implementations gained by code generation. Therefore, we have modified an existing Estelle compiler to run under OSF/1. It exploits parallelism not only in the actions of the FSMs, but also in the runtime system of the protocol stack.
Article
Full-text available
The use of formal specifications in software development allows the use of certain automated tools during the specification and software development process. Formal description techniques have been developed for the specification of communication protocols and services. This paper describes the partial automation of the protocol implementation process based on a formal specification of the protocol to be implemented. An implementation strategy and a related software structure for the implementation of state transition oriented specifications is presented. Its application is demonstrated with a much simplified Transport protocol. The automated translation of specifications into implementation code in a high-level language is also discussed. A semiautomated implementation strategy is explained which highlights several refinement steps, part of which are automated, which lead from a formal protocol specifieation to an implementation. Experience with several full implementations of the OSI Transport protocol is described.
Conference Paper
Full-text available
This paper consists of three main parts. First, we present ET-LOTOS. In section 2, we explain the Timed LOTOS features we have tried to enhance, and why. In section 3, we show how ET-LOTOS responds to these goals and we define its semantics. In the second part, in section 4, we apply ET-LOTOS to the specification of a case study to illustrate and assess its capabilities. The third part is more theoretical. In section 5, we show how slight changes in the semantics allow an easy definition of more sophisticated "high level" operators. Finally, we conclude with a comparison between ET-LOTOS and some other timed extensions of LOTOS.
Article
This paper discusses semi-automatic implementation of communication protocols in the Reference Model of the International Organization for Standardization (ISO) for Open Systems Interconnection (OSI). The semi-automatic code generation techniques produce high-level language code (C, Pascal, etc.) from formal descriptions or protocol specifications. A survey is given of different approaches to semi-automatic code generation. As an example, we present a protocol in the ISO protocol specification technique Estelle. We show the code generated by the Estelle Development System (EDS) and sample output from the generated implementation.
Article
The combination of the Portable Estelle Translator and the Distributed ImplementatioN GeneratOr tools produces distributed implementations from Estelle specifications. The resulting implementations run as one or more operating system processes distributed over several sites of a target distributed system. In addition, the tools generate elements of an X-Window interface which allows centralized or distributed monitoring of some or all of the running modules.
Article
Temporal logic is a branch of formal logic which is of particular interest for the specification and verification of concurrent systems including communication services and protocols. This tutorial presents the principles of temporal logic and explains how it can be applied.
Conference Paper
The paper discusses ways for increasing the efficiency of protocol implementations which are automatically derived from formal descriptions. The subject of our discussion is the implementation model used in the implementation tool for the transformation process. The implementation model defines the architecture of the final implementation and has a crucial influence on its efficiency. Using an experimental Estelle-C compiler we discuss the impact of design decisions for the implementation model on the efficiency of the implementation. As a consequence, the use of a variable implementation model is proposed.
Conference Paper
Historically, shared memory and virtual memory have been the main line programming model from an applications and computer science perspective for two reasons: shared memory is a flexible and high performance means of communicating between processors, tasks or threads and; shared memory provides high programming efficiency through use of conventional memory management methods. The KSR1™ bridges the gap between the historical shared memory model and MPPs by delivering the shared memory programming model and all of its benefits, in a scalable, highly parallel architecture. The KSR1 runs a broad range of mainstream applications, ranging from numerically intensive computation, to on-line transaction processing (OLTP) and database management and inquiry. The use of shared memory enables a standards based open environment. The KSR1’s shared memory programming model is made possible by a new architectural technique called ALLCACHE™ memory. The shared memory programming model delivered by ALLCACHE facilitates porting and high performance for customer and third party applications. Within this context, the KSR1 architecture and applications environment consisting of a conventioanl UNIX based OS (symmetrically executing across all processors) and programming environment (including conventional languages) will be described. The performance and porting experiences of two applications on the KSR1 will be discussed as well as the Kendall Square feature called Query Decomposer which automatically parallelizes complex queries tunning under Oracle7.
Conference Paper
In general, the potential parallelism expressed in a specification should be as high as possible in order to allow for most efficient implementations. We argue that there are currently important limitations of expressing concurrency in Estelle. Therefore, we propose a minor, fully compatible extension of Estelle, which allows a significantly higher degree of concurrency. The syntactical extension consists of additional module attributes, which allow to specify that child modules of active modules may behave asynchronously. We study the semantical implications of this extension, and present the required changes to the Estelle semantics. Keyword Codes: C.2.2; D.2.1; D.3.3 Keywords: Network Protocols; Requirements/Specifications; Language Constructs and Features 1. INTRODUCTION The software development process is usually modeled as a sequence of activities leading from the problem to a software solution. In the area of communication protocols and distributed systems, it is important to ...
Conference Paper
We argue that there is a basic conflict between the incorporation of time and the level of abstraction in formal specification. This conflict is illustrated through the specification of a simple multimedia stream. We propose the principle of separation of timing concerns as a resolution of this conflict and present a dual language notation in order to realise this principle. This notation uses LOTOS to express system behaviour and real-time temporal logic to express timing properties.
Article
In this paper we describe a formal technique for specifying computer communication protocols as well as a method for automatically producing partial implementations from protocol specifications. After presenting a state machine model for protocols we describe a formal protocol specification language, along with a brief example of a formal specification. Finally we discuss an implementation model, and we present several software tools that help with the automatic processing of the specification.
Article
A new class of computer network applications, called multimedia applications, is currently evolving. At the same time high speed networks such as FDDI, DQDB and B-ISDN are being developed. The question is, how can a multimedia application take best advantage of these high speed networks. The term multimedia applications, as used in this paper, refers to computer network applications with widely varying data traffic characteristics. In this paper an interface is outlined suitable for conveying the different application requirements to the communication subsystem, here called the transport system.
Conference Paper
In this paper we describe the tool-supported specification and implementation of a multimedia communication protocol on parallel hardware. MCAM is an application layer protocol for movie control, access and management. We specify the full MCAM protocol together with ISO presentation and session layers in Estelle. Using a code generator, we derive parallel C++ code from the specification. The code is compiled and executed on a multiprocessor system under OSF/1 and on UNIX workstations. Measurements show the performance speedup gained by several different configurations of parallel units. We also report on experiences with our methodology
Article
A set of performance specifications that seem appropriate for real-time computer communication services is proposed. They include various types of delay bounds, throughput bounds, and reliability bounds. Other requirements and desirable properties are described from a client's viewpoint, and the ways in which each requirement is to be translated to make it suitable for lower levels in the protocol hierarchy are examined. Some examples of requirements specification are presented, and possible objections to the approach are discussed.< >
Article
The basic ideas underlying an Estelle-C compiler, which accepts an Estelle protocol specification and produces a protocol implementation in C, are presented. The implementation of the ISO (International Organization for Standardization) class-2 transparent protocol, using the semiautomatic approach, is discussed. A manual implementation of the protocol is performed and compared to the semiautomatic implementation. The semiautomatic approach to protocol implementation offers several advantages over the conventional manual one, including correctness and modularity in protocol implementation code, conformance to the specification, and reduction in implementation time. Finally, ongoing development of a new Estelle-C compiler is presented
Article
specification I Abstract specification I+1 Real-time assumptions I Real-time assumptions I+1 REFINEMENT . . . . . . . . . Real-time requirements I Real-time requirements I+1 REFINEMENT . . . . . . Figure 8.1: System Development with Separated Timing Concerns 8.4 Summary and Discussion In this chapter we have described the motivation behind the work that will be presented in the remainder of this part. In particular, we have presented two criticisms of the standard single language based approach to timed formal description. The former of these criticisms centres on the unsuitability of these techniques for expressing quality of service and mirroring the functional/ non-functional distinction pivotal to distributed multimedia system development. The latter criticism highlighted the conflict between abstraction in specification and the embedding of precise timing values in formal descriptions of system behaviour. In response to these criticisms, we have pro...
Article
In this paper we identify the challenges and open issues involved in providing quality-of-service (QOS) guarantees to sessions in a high-speed wide area network and briefly survey research in this area. Four approaches towards providing QOS guarantees are described and discussed: the tightly controlled approach, the approximate approach, the bounding approach, and the observation-based approach. 1 Introduction Unlike traditional data networks, future broadband-ISDN (BISDN) wide-area networks will be required to carry a broad range of traffic classes ranging from bursty, variable-rate sources, such as voice and variable-rate coded video, to smooth, constant bit rate sources [28]. Moreover, these networks will have to do so while providing a guaranteed performance or quality-of-service (QOS) to many of these traffic classes. The ability to guarantee performance is particularly important in networks supporting real-time applications [26]. The actual QOS performance metrics of interest a...
Estelle Development Toolset. Computer Networks and ISDN Systems, Special Issue on FDT Concepts and Tools
  • S Budkowski
An enhanced version of timed LOTOS and its application to a case study
  • L Léonard
  • G Leduc
The 0SI95 Connection-Mode Transport Service-The Enhanced QoS
  • A Danthine
  • Y Baguette
  • G Leduc
  • A Bredereke