Internet Computing
Internet computing is concerned with the applications provided on the Internet, the architectures and technologies used in applications on the Internet, and the systemic matters that shape the design of such applications. Internet computing encompasses all applications irrespective of whether they are built for the general public (e.g., social network services) or solely used within a single organization (e.g., enterprise-resource-planning systems) or a closed group of organizations (e.g., supply-chain management systems).
Internet Applications
Many different forms and manifestations
Nearly all in form of information systems
Information Systems
Information systems are interrelated components working together to collect, process, store, and disseminate information to support decision making, coordination, control, analysis, and visualization in an organization.
Distributed Systems
Distributed Systems vs. Decentralized Systems
A distributed system is a collection of independent computers that appears to its users as a single coherent system
Technologies
(In other words, a technology may refer to an (1) implementation used as a means to (2) solve a practical problem that is (3) manifested in the material world as (4) an expression of intelligence)
Systemic Matters
Systemic matters of Internet computing comprise important trends and paradigms that inform the design of Internet-based applications
(Netflix)
Platform heterogeneity:
Third party integration:
Scalability:
Netflix’ rapid growth and ubiquity across platforms have led to some unique challenges:
()
Information Systems are Complex!
(Zusammenfassung zu Internet Applications)
Information System Architecture
Defintion
Fundamental concepts or properties of an information system in its environment, as embodied in its elements and relationships, and in the principles of its design and evolution
(Architectural Model:= An illustration, created using available standards, in which the primary concern is to represent the architecture of an IS from a specific perspective and for a specific purpose)
Different Views on Information System Architecture
IS architecture considerations can involve multiple different views of the same IS by multiple stakeholders with fundamentally different needs
These include for instance software developers, who need to understand the software’s underlying architecture and its interfaces to adjacent systems, or IT and business managers, who require an overview of a firm’s application landscape in order to take investment decisions
Architectural Models
Definition
Purposes
An illustration, created using available standards, in which the primary concern is to represent the architecture of an IS from a specific perspective and for a specific purpose
First, it is necessary for IS architects to think deeply about IS architecture in order to design a new IS that is able to meet its non-functional and functional requirements that have already been identified in a requirements engineering phase.
On the other hand, architectural models can also serve as a tool to document the components and their interrelationships of an existing IS.
To this end, architectural models can facilitate an understanding of an IS and its evolution.
IS architectural models generally provide a common language for all stakeholders involved with an IS. They enable stakeholders to reason about an IS’ structural properties. In particular, IS architectural models are important means to facilitate communication between stakeholders about complex dependencies between various physical and virtual components.
Another purpose of reasoning about IS architectural models is that they may provide best practices and lessons learned that can be re-used at a larger scale or may be transferred to a different application context.
Architectural Views
Problem: Architectural model is a representational abstraction of an IS’s architecture, which makes it impossible to capture all the relevant information of all stakeholders in one model
-> Multiple models from different perspectives
(1) the logical view (object-oriented decomposition -> decomposes IS into a set of key abstractions),
-> support realization of functional requirements
-> identifies common mechanisms
(2) the process view (process decomposition),
-> seeks to represent the dynamic aspects of an IS (runtime behaviour, process communication)
(3) the development view (subsystem decomposition into small chunks),
-> how the software module is organized in the software development environment
-> basis for requirements allocation
(4) the physical view (mapping the software to the hardware)
Depicts the IS from the perspective of an IS engineer
The Principles of Information System Architecture
Regardless of the IS type under consideration, certain principles can be applied to every IS architecture. Overall, these principles can help us to understand that a good architectural approach strongly depends on various factors, such as the target group of an IS architecture representation or the abstraction level.
1) Architecture Models Information System Boundaries, Inputs, and Outputs
-> IS modeled as a system that performs functions: Input-IS-Output
2) An Information System Can Be Broken down into a Set of Smaller Subsystems
-> broken down into a set of interconnected subsystems
3) An Information System Can Be Considered in Interaction with Other Systems
-> IS interact with various other IS in some way
4) An Information System Can Be Considered Through Its Entire Lifecycle
-> IS typically goes through various stages during its lifetime (design phase, the development phase, the test phase, and the operation phase)
5) An Information System Can Be Linked to Another Information System via an Interface
-> linked with an interface that explain the mechanisms of how the two IS interact
6) An Information System Can Be Modeled at Various Abstraction Levels
-> an IS can be subject to architectural considerations at different abstraction levels depending on which are of interest to the architect
7) An Information System Can Be Viewed Along Several Layers
-> main benefit: it enables stakeholders in the IS to reason in an isolated way about specific aspects contained in one layer
-> example layers: why? what? how?
8) An Information System Can Be Described Through Interrelated Models with Given Semantics
-> an IS’s behavior is not static, but can depend on a variety of different aspects, such as user inputs or the IS’s current state
-> IS must be designed in such a way that it performs only a reduced set of functionalities
9) An Information System Can Be Described Through Different Perspectives
-> fundamentally different notions of the IS reult in having different requirements on how to model its architecture
Architectural Patterns
Developers often encounter recurring problems -> best practices called architectural patterns
An architectural pattern is an abstract description of a recommended architectural approach that has been tested and proven in different information systems and environments
Architectural Patterns: Client-server architectures
Basic idea: Consumption and supply of resources is divided among clients and servers.
Providers of a resource or service: Servers
Service requesters: Clients
Architectural Patterns: Tier architectures
Basic Idea: Decompose IS into layers that represent a logical grouping of functions.
Layers are decoupled as much as possible from one another so as to minimize dependencies between them (-> modify layer without reworking the entire IS)
Architectural Patterns: Peer-to-peer architectures
Basic idea: In a pure peer-to-peer network, all peers have equal rights and can both use and provide services.
The peers make a portion of their resources directly available to other network participants without the need for central coordination by servers or stable hosts
Architectural Patterns: Model-view-controller architectures
Basic Idea:
IS is divided into three subcomponents: model, view, and controller.
Model -> contains data represented by the presentation and the operations associated with that data.
View -> responsible for the representation of the model data and user interactions
Controller -> manages the presentation and the model (logic)
Architectural Patterns: Service-oriented architectures
SOA
Basic Idea: Increase the re-usability of business processes by encapsulating these processes or their subprocesses into individual, automated services that can be integrated by more than one client application
Summary VL 2 Information Systems and architecture
(Scalability of Disitributed Systems)
Either scale
horizontally -> quantity of servers
vertically -> quality of servers
Architecture Design
Designing an IS Architecture is a continuous activity that spans across the system’s entire lifecycle. In the IS architecture context, the term „design“ has a dual meaning:
Architecture Design (Process Perspective):
Architecture design refers to the process of defining a collection of hardware and software components and their interfaces to establish the framework for the development of an information system
Architecture Design (Outcome Perspective):
Architecture design refers to the architecture design process's outcome, that is the collection of hardware and software components and their interfaces, which makes up the framework for the development of an information system
„Good“ IS Architecture
A good IS architecture is an architecture that is fit for purpose,
which means that it supports the system's intended goals and
allows for the implementation of required features and behaviors
Characteristics of good IS Architecture:
Outcome perspective: Designing an IS architecture is about doing the right things, that is designing a system that seeks to fulfil its intended purpose, which is specified through its functional and quality requirements and subsequently or iteratively translated into features and system behaviors.
Process perspective:
From a more practical point of view, this process is about doing things right. The process of designing an IS architecture considers the how and why design decisions that were made throughout the lifecycle of a system.
Why the Need for Well Designed IS Architectures?
The architecture is the very foundation of the system
Design decisions cannot be easily undone
Creating new architecture or refactoring existing one is not feasible
Deficiencies at the beginning can have negative effect on important system behaviours in the future
A good IS architecture is critical to meet demands (e.g., performance efficiency)
Leads more often to higher quality software
Assess Architecture’s Quality
Identify requirements,
determine quality attributes
evaluate if the system fulfills them
A requirement is, therefore, usually represented by a single or a combination of several quality attributes that act as a proxy for the requirement (e.g., a system’s response time in milliseconds)
Functional Requirements
Nonfunctional Requirements
Functional requirements
define the desired features and functions of a system or one of its components.
A functional requirement includes the definition of a functionality and its transformation from an input into a desired output
Nonfunctional requirements
are requirements that are not specifically concerned with the system's functionality, but rather define general quality attributes and constraints
Quality Attributes
A requirement is represented by a single or combination of several quality attribute(s)
Each quality attribute needs to specify a value or value range -> making it a quality criterion
With the help of these measurable criteria, the IS architecture's quality can be assessed according to the degree to which the architecture's implementation output meets the value range that aligns with its functional and nonfunctional requirements
This model comes with eight categories of characteristics, namely
(1) functional suitability, (covering all the defined tasks)
(2) compatibility, (exchange data with other systems)
(3) maintainability, (system can be modified)
(4) performance efficiency, (time behavior, resource utilization, capacity, scalability)
(5) reliability, (probability that a system will produce correct outputs)
(6) security, (protects information and data)
(7) portability, (transferred)
(8) usability (use a product to achieve specified goals)
(MC FPS RUP)
Basic Process Activities
Order of Activity Execution
Problems
Process
1) Making a business case for the system.
2) Understanding the architecturally significant requirements.
3) Designing or selecting the architecture.
4) Documenting and communicating the architecture.
5) Evaluating the architecture.
6) Ensuring that the implementation conforms to the architecture.
Waterfall Model
Iterative Model
Agile Model
Business Case
1)
A business case justifies an organizational investment, describing the overall problem that should be solved and the resulting benefits for an organization and its respective stakeholders.
Requirements analysis
2)
The requirements analysis is the activity of gathering, identifying, and formalizing requirements in order to understand the actual problems for which an architecture, as a solution, is sought, and to learn the purpose and scope of the future system.
Designing or Selecting the Architecture
3)
Documenting and Communicating the Architecture
4)
Architectural Knowledge
Architectural Knowledge is defined as the knowledge about a software architecture and its environment, such as architectural design and architectural decisions, which shape a software architecture and concepts from architectural design (e.g., components, connectors).
Evaluating the Architecture
5)
Ensuring that the Implementation Conforms to the Architecture
Architectural degeneration
6)
Architectural degeneration is a mismatch between the actual functions of the system and its original design.
Attribute-Driven Design
Example:
Success of Architecture Design Process
Project success has long been considered the ability to stay within time, cost, and quality constraints. (Trade off)
Nowadays: considering diverse dimensions in isolation or combinations
The World Wide Web
The World Wide Web (WWW, or simply Web) is an information space (on the Internet) in which the items of interest, referred to as resources, are identified by global identifiers called Uniform Resource Identifiers.
Uniform Resource Identifiers
URI (identifies resource either by location, name or both)
Two Specifications:
URL (location)
URN (name)
Computer Networks
Classification of Computer Networks
Overview
A computer network is a collection of computers and devices connected for the purpose of electronic data communication that allows them to share information and services
There are: Private networks, Public Networks
LAN, MAN, WAN
The Internet — A Network of Networks
Internet Connection — Example
Standardization of the Internet
The Internet Protocol Suite
The Internet protocol suite is a set of protocols that enable communication over the Internet by specifying data transmission, addressing, and routing. (Also TCP/IP protocol suite)
It governs how data is transferred from one system to another
Most important protocols: TCP and IP
-> Independency (no specific hardware and software requirements)
-> Robustness (built-in failure recovery mechanism provides reliable end-to-end communication)
TCP/IP
Layers
Stack
IP Addresses
An IP address is a unique string of numbers separated by full stops that identifies each computer using the Internet Protocol to communicate over a network.
Enables Communication between hosts interconnected networks by providing an identity (IP-Adress) to a network device
Currently, two different versions of the IP are in use: IPv4 and IPv6
32-bit long binary string vs 128-bit long binary string
Packet Switching
Packet Switching describes a switching and transmission technology which splits complete messages into smaller packets. These packets can be transmitted along different lines of a network and they are re-assembled into the original message by the receiving host.
-> optimizes the use of available channel capacity
-> minimizes transmission latency
-> increases robustness of network
Router
On a network, a device that determines the best path for forwarding a data packet toward its destination. The router is connected to at least two networks and is located at the gateway where one network meets another.
-> able to forward packets beyond the borders of a network
-> check packets for errors
Domain Name System
The Domain Name System (DNS) is a hierarchically structured, distributed set of databases that maps IP addresses to corresponding domain names
-> allows Internet users to visit a website by typing the domain name rather than the IP address
-> DNS Lookup to access which IP address corresponds to which domain name
Different levels:
Root level Domains -> Top Level Domains -> 2nd Level Domains -> Sub (3rd Level) Domains
Content Delivery Networks (CDNs)
Content Delivery Networks (CDNs) are a collection of network devices that are controlled by a common management infrastructure with the main purpose of delivering content (e.g., websites, videos) more effectively to clients over the Internet.
Request Routing Infrastructure
Distribution Infra
Accounting Infra
-> prinicple: move network locations closer to consumers (reduction of distance) by replicationg content to multiple ‘surrogate’ servers
-> reduces latency, risk of connection interruptions
Different CDN types, each has its own set of benefits. (private, federated, P2P)
Software Defined Networking (SDN)
Overlay Networks
What is “Middleware”?
Middleware is a type of software used to manage and facilitate interactions between applications across computing platforms.
Within the layer model, middleware is an open software layer between operating system and application level.
Therefore Middleware is an essential building block of distributed systems.
It enables the distribution of applications to multpile computers in the network.
Remote Procedure Call
(Implementation of Middelware)
A remote procedure call is the synchronous language-level transfer of control between programs in disjoint address spaces whose primary communication medium is a narrow channel
Remote Procedure Call (RPC) is the most basic type of middleware.
It allows for functions to be called in other address spaces (an other computer on a shared network)
This happens in a request-response pattern: Client makes request to some external application, waits, finds the result after control is returned.
Types of Middleware
MOM, TOM, OOM (Def hier nicht nötig)
Message-Oriented Middleware (MOM)
Message-oriented middleware (MOM) is any middleware infrastructure that provides messaging capabilities. It provides a means to build distributed systems, where distributed processes communicate through messages exchanged via message queuing or message passing
MOM uses a peer-to-peer relationship between individual clients. Each peer can send messages to and receive messages from other client peers. XML is widely used as the basic language for messages in MOM
Transaction-Oriented Middleware (TOM)
Transaction-Oriented Middleware (TOM) is any middleware infrastructure that supports the execution of electronic transactions in a distributed setting.
Integration between serves and database management systems
Concepts for transactions:
1) two-phase-commit protocol
-> transaction can only happen once all participants approved it
-> atomicity (either fully or not at all)
2) classical transactions (set of Database operations)
-> Atomicity
-> Consistency (leaves database in consistent state)
-> Isolation (cannot influence other transaction)
-> Durability (permanent storage in DB once transaction is finished)
Object-Oriented Middleware (OOM)
Object-Oriented Middleware (OOM) is defined as a middleware infrastructure that offers object-oriented principles for the development of distributed systems.
Enables communication between objects within distributed systems
Based on RPC. Uses an Interface Description Language (IDL) (language syntax to describe a software component’s interfaces)
Commercial Implementations of Middleware
Web Services
Web Services and XML/HTTP
Web services are self-contained, modular, distributed, dynamic applications that can be described, published, located, and invoked over the network to create products, processes, and supply chains. These applications can be local, distributed, or Web-based
Web services are software systems that interact with client applications and other services via open standards in order to exchange data.
HTTP — Definition
Basics
HTTP — Request vs. Response Message
XML — Tree: Parent, Child, and Sibling
Service
A service is a logical representation of a repeatable business activity that has a specified outcome, is self-contained, may consist of other services, and is a black box to the service's consumers.
Service Oriented Architecture
Service Oriented Architecture (SOA) represents a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functions that are built as software components, i.e. discrete pieces of code and/or data structures that can be reused for different purposes.
SOA describes an infrastructure that facilitates discovering and using services while maintaining the loose coupling between service providers and consumers.
On a high abstraction level, this infrastructure consists of three components:
(1) service provider (hosts services and provides interfaces)
(2) service broker (registry)
(3) service requester (queries the broker’s repository, access services from host)
Internal and External Web Service Architecture
SOAP
SOAP Summary
RESTful Web Services
Six Constraints of RESTful Web Services
RESTful Web Service Interactions
Exposing RESTful Web Services
Characteristics of RESTful Web Services
Differences Between RESTful and SOAP
NIST’s Cloud Computing Definition
Cloud computing is a model that enables ubiquitous, convenient, on-demand access to a shared pool of configurable computing resources that can rapidly be provisioned at any time and from any location via the Internet or a network
Cloud Computing Stack
Unique Characteristics of Cloud Services
1) Service-Based IT-Resources
-> All cloud offerings can be expressed as a service (defined by a contract)
2) On-Demand Self-Service
-> enables cloud customers to independently and almost immediately provision computing capabilities
3) Ubiquitous Access
-> can be used with a variety of devices (any cloud service from any platform or device at any time)
4) Multitenancy
-> multiple customers leverage shared resources (different physical and virtual resources dynamically assigned and reassigned according to consumer demand)
5) Location Independence
-> cloud customer generally has no control over or knowledge of where the provided resources are actually located
6) Rapid Elasticity
-> cope with peak loads (capabilities can be elastically provisioned and released)
7) Pay-Per-Use Billing
-> charged for the amount of time they actually use the resource
Reasons to Move Into the Cloud
Example Risks and Challenges
Cloud Gaming
The Trouble with Using AI
The Emergence of Artificial Intelligence Services
AIaaS — Service Stack
Fog & Edge Computing Motivation
NIST’s Fog Computing Definition
Problem: IoT, autonomous driving will generate huge amounts of data, which connected technologies will have to be able to handle. (Also: latency, privacy, accessability (internet connection))
To cope with these challenges, fog and edge computing present new distributed architectures that help.
Fog computing is a layered model for enabling ubiquitous access to a shared continuum of scalable computing resources. The model facilitates the deployment of distributed, latency-aware applications and services, and consists of fog nodes (physical or virtual), residing between smart end-devices and centralized (cloud) services
This shows the different layers that comprise a fog computing model.
At the top is the traditional cloud computing layer
At the bottom is all the end-devices
The end-devices communicate with the so-called fog nodes in the fog computing layer and receive data that are computed, analyzed, or stored in the fog computing layer’s fog nodes
Fog nodes are either physical or virtual components that are tightly coupled with the smart end-devices or access networks and provide computing resources to these devices.
Fog Computing’s Key Characteristics
Fog computing can be distinguished from other computing models by the following six key characteristics:
(1) geographical distribution
-> many fog nodes that are distributed in the environment (cdn benef.)
(2) contextual location awareness and low latency
-> devices are aware of their location (either hard coded or dynamic)
-> achieve the lowest possible latency because it allows fog nodes to choose the shortest communication path
(3) heterogeneity
-> many heterogeneous fog nodes (virtual/phyiscal, data collecting/processing, …)
(4) interoperability and federation
-> cooperation between different fog service providers, interoperate
(5) real-time interactions
-> real-time decision making
(6) scalability and agility of federated, fog clusters
-> clusters -> can handle large scales and elastic scalability
-> total pressure on cloud computing is reduced
Fog Computing Service & Deployment Models
+
(Overview over layered models)
Edge Computing
Edge computing focuses on the “things” side, while fog computing focuses more on the infrastructure side
Edge computing refers to the enabling technologies allowing computation to be performed at the edge of the network, on downstream data on behalf of cloud services and upstream data on behalf of IoT services.
Edge computing describes the layer of end-devices that are used to do some local computing or sensor metering
Enabling Technologies:
Taggin Technologies,
Sensor Technologies,
Smart Technologies,
Miniaturization Technologies.
Fog Edge vs Cloud Computing
Challenges of Fog and Edge Computing
1) Security Challenges
-> distributed architecture not optimal
-> Authentication and access control at different levels#
2) Heterogeneity
-> multiple components (various cloud nodes, fog nodes, and mainly end-devices/notes) -> Computational and storage capabilities vary
3) Programming platform
-> computation is done in various multiple nodes
-> need for a unified development framework
4) Energy Management
-> high energy consumption
Databases, different types
Centralized Db: single storage device
Decentralized Db: data is stored on multiple storage devices connected with one another, but usually located in different physical locations
Distributed Db: replications of the data are stored across multiple, physically independent, storage devices
Consensus mechanism
A consensus mechanism is designed to achieve agreement on a single state of replications of stored data among nodes of a distributed database under consideration of network failures.
The algorithms and protocols that manage the synchronization between nodes are called consensus mechanisms
Byzantine fault
A Byzantine fault is a condition of a particularly distributed computer system, where components may fail and there is imperfect information on whether a component has failed.
Distributed Ledger
A distributed ledger is a type of distributed database that assumes the presence of nodes, which have malicious intentions. A distributed ledger incorporates multiple replications of a ledger, where data can only be appended or read.
Distributed Ledger Technology
Distributed Ledger Technology (DLT) enables the realization and operation of distributed ledgers, where benign nodes, through a shared consensus mechanism, agree on an (almost) immutable record of transactions in the presence of Byzantine failures and eventually achieve consistency.
DLT allows distributed ledgers to be run on arbitrary nodes whose providers are not necessarily known or trusted. Anyone can contribute to a distributed ledger and participate in the consensus mechanism to assure that malicious nodes cannot corrupt the stored data. The reliable synchronization of a distributed ledger’s dynamically changing set of nodes in the presence of all types of Byzantine failures is one of DLT’s main innovations.
Terminology in DLT:
Concept, Design, Property, Characteristic
DLT includes different concepts, which differ in the way the distributed ledger organizes transactions
Permissioned & Permissionless DLT Designs
Hashing
Technical Foundations
Merkle Tree
Public Key Cryptography
Consensus Mechanisms in DLT
Alternative Consensus Mechanisms
Applied Consensus Mechanisms (PBFT)
Proof of Work, Proof of Stake
Blockchain
A blockchain comprises a chronologically ordered list of blocks that are cryptographically linked to their relevant predecessor by using this previous block’s hash value.
A block is a data structure that stores transactions and additional data, such as a reference to the previous block.
Definition:
Blockchain is a DLT concept comprising a chain of cryptographically linked, chronologically ordered, ‘blocks’ containing batched transactions.
End-users usually create public and private keys, storing them in a so-called wallet, and allowing them to use public key cryptography
Bitcoin is based on a public peer-to-peer network, with each node maintaining a list of a few other Bitcoin nodes (‘neighbored nodes’) that it discovers during the start-up of the peer-to-peer protocol.
To notify each Bitcoin node of a new transaction or block, a gossip protocol is applied, which works as follows: After a Bitcoin node has received a network message, the message is multicasted to the neighbored nodes and finally propagated throughout the entire network, which is only loosely coupled, and the number of nodes that may join or leave the network is arbitrary. Consequently, Bitcoin does not have a fixed network and nodes must update their list of neighbored nodes periodically to assure messages are reliably propagated throughout the entire network.
When users initiate a new transaction, their wallets send the transaction to the distributed ledger (1). When a node receives a new transaction, it validates the transaction (2). The transaction validation includes a proof of ownership by means of digital signatures, and proof that there is sufficient balance in the user’s account.
Smart Contracts
Smart contracts are computer programs in which a business logic is formalized; they therefore allow secure transaction issuance without the need for third parties
Internet of Things
The Internet of Things is a self-configuring, adaptive, and complex network that interconnects ’things’ with a physical and virtual representation over the Internet, based on standard communication protocols.
Essential characteristics:
1) Interconnection of things (interconnects “things” with each other)
2) Connection of things to the Internet (“thing” connected to Internet)
3) Uniquely identifiable things (every object is uniquely identifiable)
4) Ubiquity (Network available from anywhere anytime)
5) Sensing (and actuation) capabilities (Things possess capabilites)
6) Embedded intelligence (Things posses some intelligence)
7) Interoperable communication capability (different devices communicate)
8) Self-configurability (Self configurable (add,… easily))
9) Programmability (change behaviour without physical change)
Overview of Enabling Technologies for the IoT
Smart Devices
Internet-connected physical objects with embedded intelligence (smart ’things’) are an integral aspect of the Internet of Things. Two types of such smart ‘things’ can be distinguished, smart devices and smart objects
Smart devices are portable multi-purpose information and communication technology devices that enable access to (several) application services located locally on the device or remotely on servers. They are usually owned and used by one person. Examples of smart devices include laptops, mobile phones, and tablets.
Other Types of Smart Devices:
Smart Dusts: collection of miniaturized smart devices with sensing and processing capabilities, but without an integrated display. Deployed to collect data within a specific are
Smart skins: fabric-based, non-planar, flexible, and stretchable smart devices that try to imitate human or animal skin and hence their predominant application area is in health care monitoring and prosthetics
Smart objects
Smart objects: physical objects that can autonomously interact with humans, as well as other objects and smart objects in their environment.
Characteristics:
recognize and collect data about their environment via implemented sensors,
process and store this data owing to embedded microprocessors and memory
communicate via network and user interfaces
Smart devices and smart objects overlap to some degree.
Smart environments
A smart environment is a physical world interwoven with a multitude of sensors, actuators, displays, and computing elements, seamlessly interacting with everyday objects of people's lives and connected via a continuous network.
(Layer models)
Three Layer Architecture:
-> Perception Layer: recognition or sensing layer
-> Network Layer: transmitting information (aka communication layer)
-> Application Layer: providing services to users
Five Layer Model: (weil 3 Layer zu grob)
-> Business Layer: manages entire system
-> Application Layer
-> Processing Layer: stores and processes the vast amounts of data (middelware layer)
-> Transport Layer
-> Perception Layer
Seven Layer Model: ()
-> Even more Layers
-> Data in Motion in lower layers
-> Data in Rest: Data is interpreted and processed, not moved
IoT Architecture
IoT Domain Model
-> introducing the basic concepts of the Internet of Things and their relationships
IoT Information Model
-> describes the structure of relevant information
IoT Functional Model
-> break up the complexity of systems that are built upon the IoT-A reference model into:
IoT Communication Model -> defines the communication paradigms that support communication between the basic concepts as defined by the IoT Domain Model
IoT Trust, Security & Privacy Model -> defines several guidelines to ensure trust, security and privacy
IoT Use Case: Smart Homes
Smart homes are a kind of smart environment. They are homes that are interspersed with smart objects and devices, which allow for homes to be aware of what happens inside
IoT Use Case: Smart Cities
Smart cities are urban areas with sustainable development and high quality of living.
IoT Use Case: Industrial IoT (Industry 4.0)
IoT Use Case: Energy Sector
IoT Use Case: Healthcare Sector
Challenges of the Internet of Things:
Data Flood
-> increasing number of sensors create huge amounts of data. This data needs to be transmitted, processed and stored.
Interoperability
-> Many different smart things from a number of different manufacturers. All these things are expected to communicate and even interact witch one another to realize their full potential.
Security and Privacy
-> Security and privacy standards are crucial: collected information can potentially also be used in an unethical or even compromising way that could harm individuals
Critical Infrastructure
Types of Critical Infrasturctures
What means ‘Critical’ in Critical Infrastructures?
A Critical Infrastructure is an asset or a system that is essential for the maintenance of vital societal functions or the health, safety, or economic and social well-being of people.
Critical:
Critical Magnitude: impacts & consequences of failure?
-> Impacts will severly harm society (direct human harm, economy)
Critical Breadth: Who will be impacted by the consequences?
-> widespread impact, cascading effects
Critical Duration: How long lasts the impact?
-> duration of outage, time for recovery
Critical Information Infrastructure
Difference CII vs CI
A Critical Information Infrastructure is an information system whose disruption or unintended consequences can have detrimental effects on vital societal functions or the health, safety, security, or economic and social well-being of people.
Characteristics of Critical Information Infrastructures
M A I I I S D O S E
Multifaced -> diverse purposes for various stakeholders
Adaptive -> adaption to events
Inconspicuous -> operate often unnoticed
Interdependent -> dependent on functioning of its parts
Information Disseminating -> new info quickly disseminated
Sociotechnical -> various social and technical components
Data accumulating -> generates large amounts of data
Opaque -> consists of large number of parts w. complex connections
Synergetic -> value of CII greater than sum of value of its parts
Evolving -> changes over time -> technological and societal evolution
Functions of Critical Information Infrastructures
GICK
Governance -> Information systems governing infrastructures
- Control Information Systems
- Highly-Autonomous Information Systems
- Monitoring Systems
Information Collection -> Infrastructures that collect information
- Sensors
- Surveys/Polls
- Data Aggregation
Communication -> Infrastructures communicating information
- Communication between Machines
- Private/Public Comm.
Knowledge Management -> Infrastructures that preserve information for future uses
- Decision Support
- Information Retrieval
- Knowledge Repositories
Challenges of Critical Information Infrastructures
Social Responsibility
-> CII operators must act in a socially-responsible way and cannot solely strive for economic value creation
Fairness
-> CII should impact all people equally
-> Distributive, Procedural & Interactional justice
Privacy
-> information should flow appropriately
Security
-> principles of CIA upheld: Confidentiality, Integrity, Availability
Durability
-> designed in a way that makes them durable -> handle trends
Ripple Effects
-> disruptions of a CII can create effects that spread to other systems
Accountability
-> who is to be held responsible?
Algorithmic Decision Making
-> replacing human decision making with algorithmic decision making
Governance
-> difficult to maintain, control, and regulate CIIs
Single Points of Failure
-> hard to identify all the essential CII parts
Structural Scalability
-> CIIs have to be scalable, but difficult because of breadth
-> Load/Space/Space-time/Structural scalability
Summary Critical Information Infrastructures
Gastvortrag SAP
Gastvortrag Kubernetes
Open Source System zur Verwaltung von Container Anwendungen. Gut skalierbar
Gastvortrag AI
Last changed5 months ago