Parcial 1 Flashcards
characteristics
of distributed systems
- concurrency of components,
- lack of global clock and
- independent failures of components.
examples of distributed systems
- The internet
- An intranet, which is a portion of the internet managed by
an organization; - Mobile and ubiquitous computing
The capacity of the system to handle shared
resources can be increased by adding more resources (for
example computers) to the network
Concurrency
When programs need to cooperate, they
coordinate their actions by exchanging messages. Close
coordination often depends on shared idea of the time at
which the programs actions occur
No global clock
All computer systems can fail, and it
is the responsibility of system designers to plan for the
consequences of it. DS fails to, faults in the network result
in the isolation of computers, and this must be anticipated
Independent failures
intranet
is a portion of the Internet that is
separately administered and has a boundary that
can be configured to enforce local security polices
The role of a firewall
to protect an intranet by
preventing unauthorized messages leaving or
entering.
Cloud Computing
is used to capture this vision
of computing as a utility.
define cloud
set of Internet-based application,
storage and computing services sufficient to support
most users’ needs, thus enabling them to largely or
totally dispense with local data storage and application
software
small and portable computing devices into distributed
systems
- Laptop computers
- Handled devices, including personal digital assistants, mobile ,phones, pagers, video cameras and digital cameras, ARM devices.
- Wearable devices, such as smart watches with functionality.
-Devices embedded in appliances such as washing machines, hi-fi
systems, cars and refrigerators (IoT)
is the performance of
computing tasks while the user is on the move or
visiting places other than their usual environment.
Mobile computing
the harnessing of many small, cheap computacional
devices that are present in user physical
environments, including the home, office and
elsewhere.
Ubiquitous computing
The Web is based on three main standard technological
components
- The HyperText Markup Language (HTML)
- Uniform Resource Locators (URLs)
- A client-server system architecture, with standard rules for interaction
(e.g. HTTP)
is a language for specifying
the contents and layout of pages as they are displayed by web
browsers
The HyperText Markup Language (HTML)
h identify documents and
other resources as part of the Web
Uniform Resource Locators (URLs)
by which browsers and other clients fetch documents and
other resources from from web servers.
A client-server system architecture, with standard rules for interaction
(e.g. HTTP)
challenges in distributed systems
-Heterogeneity
-Openness
-Security
-Scalability
-Concurrency
in networks, computer
hardware, operating systems, programming languages and
implementations by different developers.
Heterogeneity
has three components:
confidentiality, integrity and availability.
Security for information resources
characteristic that determines whether the system
can be extended and re-implemented in various ways.
Openness
a systems is described as scalable if will remain affective
when there is a significant increase in the number of resources ans
the number of user
Scalability
both services and applications provide resources that
can be shared by clients in a distributed systems. There is therefore a
possibility that several clients will attempt to access a shared resource
at the same time
Concurrency
the concealment from the user
and the application programmer of the separation of
components in a distributed system, so that the system is
perceived rather than as a collection of independent
component
Transparency
referred originally to
the structuring of software as layers or modules in a
single computer and in terms of services offered and
requested between processes located in the same
or different computers
software architecture
The lowest-level hardware and software layers are
often referred to as a platform, this layer bring the system’s
programming interface up to a level that facilities
communication and coordination between processes. Intel
x86/Windows, Sun SPARC/SunOS, Intel x86/Solaris,
PowerPC/Mac OS, Intel x86/Linux are major example
Platform
It is a layer of software whose purpose is to
mask heterogeneity and provide a convenient programming
model to application programmers. Middleware is
represented by processes or objects in a set of computers
that interact with each other to implement communication and
resource sharing support for distributed applications
Middleware
three types of communication paradigm
- Interprocess communication;
- Remote invocation;
- Indirect communication
refers to the relatively
low-level support for communication between
processes in distributed systems, including
message-passing primitives, direct access to the API
offered by Internet protocols (socket programming)
and support for multicast communication
Interprocess communication
represents the most common
communication paradigm in distributed systems, covering
a range of techniques based on a two-way exchange
between communicating entities in a distributed system
and resulting in the calling of a remote operation,
procedure or method, as defined further below
Remote invocation
is performed through a third entity,
allowing a strong degree of decoupling between senders
and receivers. In particular:
Indirect communication
This is the architecture that is
most cited when distributed systems are discussed.
Client-Server model
In this architecture all of the processes
involved in a task or activity play similar roles,
interacting cooperatively as peers without any
distinction between client and server processes or
the computers on which they run.
Peer-to-peer
Services
may be implemented as several server processes in
separate host computers interacting as necessary to
provide a service to client processes
Services provided by multiple servers
A cache is a store of
recently used data objects that is closer than the
objects themselves
Proxy servers and caches
In this architecture all of the
processes play similar roles, interacting
cooperatively as peers to perform a distributed
activity or computation without any distinction
between clients and servers
Peer processes
An example introduced for mobile
code are applets that are a well-known and widely
used
Mobile code
is a running program that travels
from one computer to another in a network carrying
out a task on someone’s behalf, such as collecting
information, eventually returning with the results
A mobile agent
might be used to install and maintain
software on the computers within a organization or
to compare the prices of products from a number of
vendors by visiting the site of each vendor and
performing a series of database operations
Mobile agents
the three aspects must be partitioned
into two processes, the client and the server.
two-tier solution
there is a one-to-one mapping from
logical elements to physical servers and hence, for example,
the application logic is held in one place, which in turn can
enhance maintainability of the software.
three-tier
can also be a simple user interface allowing
intrinsic support for thin clients (as discussed below).
first tier
is simply a database
the third
tier
this pattern consists of the trio of
service provider,service requester and service
broker (a service that matches services provided to
those requested)
brokerage
is the form of distribution
that integrates mobile devices and other devices into
a given network
Spontaneous networking
The key features of spontaneous
networking are
- Easy connection to a local network
- Easy integration with local services
- Limited connectivity
- Security and privacy
- Discovery services
Performance issues arising from the limited processing and
communication capacities of computers and networks are considered
under the following subheadings
- Responsiveness
- Throughput
- Balancing computational loads
Quality of service, the main non-functional properties of systems that
affect the quality of the service experienced by clients and users are
- Reliability
- Security
- Performance
- Adaptability
Use of caching and replication
Web-caching protocol
is a requirement in most
application domains. We defined the dependability of computer
systems as correctness, security and fault tolerance
Dependability issues