Table of Content of the project description:
Furthermore, these applications require a certain degree of security , concerning transactions within banking applications or considering credit card identification numbers to be used within a Web page. These degrees of required security may vary by strong or low authentication, unnecessary or demanded privacy. According to these requirements a number of different algorithms may be used. For this reason, a configurable degree of parametrizable security is developed within the project Da CaPo++. As well as further communication relevant information are expressed in Quality-of-Service (QoS) attributes, a set of security QoS are developed.
Delivering this variety of service to another variety of applications leads to the design of an application programming interface that hides all communication relevant details form the application programmer, that offers a simple set of straightforward procedures, and that provides an efficient performance behavior.
The underlying communication system is based on a configurable approach of communication protocols that are adapted to application requirements, which in turn are expressed as QoS attributes. Previous work in this area has been done within an ETH-Project on configurable communication protocols. Therefore, the Da CaPo core system is applied as a suitable development platform for above mentioned applications. In addition, the core system is extended to provide secure communication protocols according to different levels of specification. As many multimedia-applications require a one-to many communication association, e.g., for a video conference, instead of a simple one-to-one association, e.g., for a ftp application, the core system is sustained by reliable multicasting features and communication protocol functions.
Related Work and Background
Due to the range of relevant topics that are integrated in the
presented approach, a variety of different areas of related work is
important. Main aspects are covered by the following areas. Flexible
communication subsystems have been designed to support
high-performance applications, such as F-CSS /ZSTa93/ or ADAPTIVE
/ScSu93/. In addition, QoS concepts have been designed and evaluated
in /Dant94/, /CCHu94/, and /Stil96a/ to allow for sophisticated
characterizations of applications and specification of communication
requirements. In detail, security issues are dealt by a number of
approaches, e.g., basic work in /VoKe83/, specific algorithms and
protocols are presented in /Schn96/. A good overview of security
relevant policies and solutions may be found in /Purs93/. Many
algorithms handle multicast communications, such as initial work in
/Deer91/ and /CaDe92/ detects. Additionally, an ample spectrum of
projects deal with the handling of multi-media applications. Amongst
others, examples comprise transmission of continuous media via the
World Wide Web /WFWe96/, /Soo94/ or video conference applications
/IsTa93/. Finally, application programming interfaces in
object-oriented environments have been studied, e.g., in
/Schm92/. However, throughout this paper the presented approach
handles multi-media applications in an integrated manner, including a
close cooperation between them, the application programming interface,
Quality-of-Service concepts, and the communication subsystem itself.
Application Framework
The basics for defining the
application framework for the Da CaPo++-Project comprise a layered
hierarchy /Stil96b/. Especially a defined three-layer hierarchy allows for a
very flexible and modular design and implementation of a variety of
application scenarios.
The lowest layer comprise application components that are placed directly via a specified application programming interface on top of the Da CaPo core system. In the middle layer, applications are constructed out of application components in addition to special application functionality and a separatley useable graphical user interface. In the upper layer application scenarios are used to consolidate multiple applications. They provide extensive functionality and features for complex user requirements, including a specifically designed graphical user interface for control and meta-control purposes. All these elements (application components, applications, and application scenarios) are placed in one of the layers based on their specific objectives and features.
The application component - just component in short - forms the basic
building block for the application framework. It defines in the lowest
level of the hierarchy differentiated and separately useable parts of
traditional applications. They provide a separated functionality only,
a set of tightly bound features including an application programming
interface, but no graphical user interface. Examples include but are
not limited to, audio/video presentation, messaging service, or
application sharing. Traditional applications, such as picture (video)
or standard (voice) phone or video conferencing, have been placed in
the middle of the hierarchy. However, within the framework they are
functionally structured out of single or multiple application
components. Additionally, application provide a separate graphical
user interface for controling exactly this one only. Specific user
control features to run this application sufficiently is
provided. Nevertheless, an application in this sense is able to run
stand alone. Finally, a huge variety of applications may be combined
for designing complex application scenarios - scenario in short - that
provide functionality, graphical user interfaces, and meta control
interfaces to fulfill emerging user requirements in tele-operating
environments. In the defined terminology, modern applications such as
teleseminar or teleteaching belong to the layer of application
scenarios.
Extending the Communication Subsystem
The basis for a flexible communication subsystem has been established
within a previos project at ETH Zürich called Da
CaPo. This subsystem is being extended to allow a flexible and
efficient approach in communication support for real-world
applications. This is as explained above the focus on an application
framework including a sophisticated and efficient application
programming interface as well as security and multicast capabilities.
The Application Programming Interface
The Da CaPo++ communication subsystem is implemented as a modular
system, including a native application programming interface. This
internal interface does not provide the functionality an application
programmer would expect. To correct this situation, the presented
solution provides a set of high-level abstractions that hide all
communication subsystem internal details from applications. These
high-level abstractions introduce an additional processing layer
between the application and the communication subsystem, which may be
coupled with a loss of efficiency, if no care is taken in the design
phase. Thus, the main challenge in designing the application
programming interface (API) for Da CaPo++ has been a convenient
trade-off between 'ease-of-use' and efficiency. On one hand the
offered abstractions allow for a better understanding of the
communication subsystem features and make the application code more
readable. On the other hand, they guarantee that the application
programmer is only granted access to necessary information. As an
important advantage these abstractions provide a greater security and
reliability by strictly restricting accesses.
Security and Multicast Issues
Security and multicasting are both elements that are gaining
significance in today's networks. Multicasting is especially useful
in the context of high-volume multimedia applications, where a group
of users wants to share the same information, e.g., follow the same
documentary movie, or participate in a teleconference. Efficient
multicasting saves considerable ressources in the sending end system
and in the network infrastructure. Up to now, 'reliable'
multicasting was not an integral part of advanced communication
systems, and its QoS aspects have not been fully valued. Additionally,
security is gaining importance due to the increased commercial use of
todays open networks. Data protection and the authentication of
participants have to be provided by modern approaches to form the
basis for real-world applications.
Assessing Security Capabilities
Securing communication with Da CaPo++ is achieved by defining
protocols that include encrypting and authenticating
modules. Depending on abstract security requirements that may be
specified by the application, the configuration process will employ
these modules, taking into account that security may be provided by
the underlying infrastructure, e.g., secure IP. A static key and
certificate database allows for the application-independant storage
and retrieval of public keys and related information. The actual
control of security in Da CaPo++ is done by the Security Manager which
consists of several building blocks. Security capabilities of the Da
CaPo++ communication subsystem cover four different areas. Firstly,
users have to identify themselves to Da CaPo++ and have to prove their
identity. Secondly, applications that want to use Da CaPo++ in a
secure fashion have to be identified and authenticated by Da
CaPo++. Another important area is the machine-machine authentication
that allows two Da CaPo++ endsystems to communicate in an
authenticated and secure manner even if no security aware application
or end-user is available. Finally, the fourth area covers the actual
encryption and authentication of data that is transmitted over an
unprotected network. The second and third area may be coalesced into
one, if user authentication is done through the application. Such
behavior is not encouraged, as it leads to the necessity of a
multitude of ÔloginsÕ for the user. All four areas show
different behavior depending on whether a delegation of the respective
identity to the Da CaPo++ communication subsystem takes place. For
simplicity, this is assumed to be the case.
The functionality of the Security Manager can be separated into three
interoperating blocks, which comprises the association and
authentication of users and applications, the attribute translation
for QoS requirements, and protocol management consisting of module
rekeying, event propagation, reconfiguration, and key management. To
handle time dependant actions and check the current state of a running
protocol the Security Manager possesses its private controlling thread
in the Da CaPo++ communication subsystem. Over a dedicated application
users may directly influence the behavior of Da CaPo++, independently
from the application that they are currently using. They may induce
actions like rekeying, switching security for one particular protocol
graph on or off, generally controlling the behavior of protocols, and
they are able to authenticate themselves and security-unaware
applications over that interface.
Assessing Multicast Capabilities
The Da CaPo++ communication subsytem offers unidirectional
point-to-multipoint multicasting based on a multicast capable
infrastructure. Multicast flows are created by the application
programing interface of the Da CaPo++ communication subsystem that
wants to send user data. Similar to unicast sessions, multicast flows
are part of sessions, however, multicast sessions are exclusively
controlled by the creator of the session which is exactly the only
sender. The Da CaPo++ multicast paradigm uses receiver initiated
join. New participants are allowed to join a running session, while
joining automatically all flows inside this session. During the set-up
phase multicast connections are supported by a multicast-capable
Connection Manager and they are supported by multicast error control
C-modules within the configured communication protocol.
Technical Approach
In progress.
Just in short about the implementation platform. SUN SPARCstations are
used to implement the complete scenario. They run Solaris 2.5.1 and are
supported by SUN video-boards, cameras, and microphones.
Initial Experiences
To be written.
References
/CaDe92/
Project Schedule
Project Start July 1, 1995 Intermediate Demo (internal) July 1, 1996 Final Demo (internal) July 1, 1997 Project Finish June 30, 1997
Contact Persons
The KWF-Da CaPo++-Project No. 2984.1 is funded by three
institutions. This is in the first place the Swiss federal support
coming from Kommission für Technologie und Innovation KTI
(Commission for Technology and Innovation), formerly
Kommission zur Förderung der wissenschaftlichen Forschung KWF
(Commission for Supporting Research) . Besides the
Eidgenössische Technische Hochschule ETH, Institut für Technische Informatik und
Kommunikationsnetze TIK, Schweizerischer Bankverein SBV,
Basel (Swiss Bank Corporation) and XMIT AG, Zürich are active
projectc partners and support the project.
ETH Zürich, TIK:
Swiss Bank Corporation, Basel:
XMIT AG, Zürich:
Back to TIK home page
Last updated April 22, 1996 by stiller@tik.ee.ethz.ch