Presentation is loading. Please wait.

Presentation is loading. Please wait.

Layered Systems Rahul Nabar CS 551 Fall ’02. Layered or Hierarchical Designs A layered system is organized hierarchically, each layer providing service.

Similar presentations


Presentation on theme: "Layered Systems Rahul Nabar CS 551 Fall ’02. Layered or Hierarchical Designs A layered system is organized hierarchically, each layer providing service."— Presentation transcript:

1 Layered Systems Rahul Nabar CS 551 Fall ’02

2 Layered or Hierarchical Designs A layered system is organized hierarchically, each layer providing service to the layer above it and serving as a client to the layer below. A layered or hierarchical software system is designed level by level. Each level is designed independently of adjacent levels, there is an object model that defines the classes, objects, and operations that comprise that level’s virtual machine (the next higher level may reference)

3 Layers Layered systems are often organized as chains of virtual machines or interpreters. Virtual machines can implement two types of software architectures – closed and open architectures Open architecture (Transparent layering) A VM can call operations from any layer below. Design goal – runtime efficiency Closed architecture (Opaque layering) A VM can only call operations from the layer below Design goal – high maintainability

4 Connectors The connectors are defined by the protocols that determine how the layers will interact. Topological constraints include limiting interactions to adjacent layers.

5 OSI reference model Protocol stack

6 Examples The most widely known examples of this kind of architectural style are layered communication protocols - In this application area each layer provides a substrate for communication at some level of abstraction. Other application areas for this style include database systems and operating systems.

7 Desirable properties support design based on increasing levels of abstraction - This allows implementers to partition a complex problem into a sequence of incremental steps. support enhancement - Because each layer interacts with at most the layers below and above, changes to the function of one layer affect at most two other layers. support reuse - different implementations of the same layer can be used interchangeably, provided they support the same interfaces to their adjacent layers.(e.g.. tcp and udp used interchangeably)

8 Disadvantages Not all systems are easily structured in a layered fashion. It can be quite difficult to find the right levels of abstraction. This is particularly true for standardized layered models. (the communications community has had some difficulty mapping existing protocols into the ISO framework: many of those protocols bridge several layers.

9 Thank You !


Download ppt "Layered Systems Rahul Nabar CS 551 Fall ’02. Layered or Hierarchical Designs A layered system is organized hierarchically, each layer providing service."

Similar presentations


Ads by Google