Ch 2: Application Layer Flashcards

(34 cards)

1
Q

Application Architecture

A

The way in which the functions of the
application layer software are spread among the clients and servers in the
network

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

The work done by any application program can be divided into five general
functions

A
  1. Data storage: most application programs require data to be stored and retrieved
  2. Data access logic: the processing required to access data
  3. Application logic: sometimes called business logic
  4. Presentation logic: the presentation of information to the user and the acceptance
    of the user’s commands
  5. Services logic: this is like the user interface, but enables other application software packages to make requests, rather than users
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Four Fundamental Application Architectures in use Today

A
  1. In host-based architectures: the server (or host computer) performs
    virtually all of the work
  2. In client-based architectures: the client computers perform most of the
    work
  3. In client–server architectures: the work is shared between the servers
    and clients
  4. In cloud-based architectures: the cloud provides services to the client
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Cloud Computing Deployment Models

A
  • Private cloud
    o Private clouds are created for the exclusive use of a single private organization
  • Public cloud
    o This deployment model is used by multiple organizations that share the same cloud resources
  • Community cloud
    o Used by organizations that have a common purpose
    o Subset of public cloud
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Host-Based Architectures

A
  • Developed in 1960s
  • This very simple architecture
    often works very well
  • Server performs all functions
  • Two fundamental problems:
    1. Server must process all messages
    2. High cost to upgrade
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Client-Based Architectures

A
  • The clients are personal
    computers on a LAN
  • The server is usually another
    personal computer on the same
    network
  • This simple architecture often
    works very well
  • The fundamental problem in
    client-based networks is that all
    data on the server must travel to
    the client for processing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Solution to this problem: One of the strengths of client–server networks is that they enable software and hardware from different vendors to be used together. However, it can be difficult to get software from different vendors to work
together

A

Middleware: software that sits between the application software on the client and the application software on the server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does middleware do?

A
  1. It provides a standard way of communicating that can translate between software from different vendors
  2. It manages the message transfer from clients to servers (and vice versa) so that clients need not know the specific server that contains the application’s data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Middleware Standards

A
  • There are literally dozens of standards for middleware
  • Each is supported by different vendors and provides different functions
  • Two of the most important standards:
    1. Distributed Computing Environment (DCE)
    2. Common Object Request Broker Architecture (CORBA)
  • Another important standard is Open Database Connectivity (ODBC), which
    provides a standard for data access logic
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Two-Tier Architecture

A
  • One of the most common
  • The server is responsible for the
    data and the client, the
    application and presentation
  • Called a two-tier architecture
    because it uses only two sets of
    computers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Three-Tier Architecture

A
  • Uses three sets of computers
  • The software on the client
    computer is responsible for
    presentation logic
  • An application server is
    responsible for the services logic
    and application logic
  • A separate database server is
    responsible for the data access
    logic and data storage
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

n-tier Architectures

A
  • Uses more than three sets of
    computers
  • In this case, the client is
    responsible for presentation logic
  • A database server is responsible
    for the data access logic and data
    storage
  • The services logic and application
    logic are spread across two or
    more different sets of servers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Pros and Cons of n-tier Architectures

A
  • The primary advantage of an n-tier client–server architecture compared
    with a two-tier architecture that it separates the processing that occurs to
    better balance the load on the different servers
    o It is more scalable
  • There are two primary disadvantages:
    1. It puts a greater load on the network
    2. It is much more difficult to program and test software in n-tier architectures than in
    two-tier architectures
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

thin-client architecture

A

1.Places little or no application logic on the client
2. Thin clients are easier to manage
3. Also enables cloud based architecture

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

thick-client architecture

A

Places all or almost all of the application logic on the client

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Cloud Computing Architectures

A

They outsource part or all of the infrastructure to other firms that specialize in managing that infrastructure

17
Q

Three common cloud-based architecture models that an organization can pick from

A
  1. Infrastructure as a service
  2. Platform as a service
  3. Software as a service
18
Q

Software as a Service (SaaS)

A
  • An organization outsources the entire application to the cloud
    provider
  • It then uses it as any other application that is available via a browser (thin client)
  • SaaS is based on multitenancy
    o This means that rather than having many copies of the same application, there is only one application that everybody shares, yet everybody can customize it for his or her needs
  • The most frequently used SaaS application is email
  • Customer relationship management (CRM) is another very commonly used SaaS
19
Q

Platform as a Service (PaaS)

A
  • With PaaS, you can build your own application and manage your own data on the cloud infrastructure provided by your cloud supplier
  • The needed hardware and software infrastructure (platform) is rented from the cloud provider
  • The organization manages the application and its own data but uses the database software (data access logic) and operating system provided by the cloud provider
  • PaaS offers a much faster development and deployment of custom
    applications at a fraction of the cost required for the traditional client–server architecture
20
Q

Infrastructure as a Service (IaaS)

A
  • With IAAS, the cloud provider manages the hardware, including servers, storage, and networking components
  • The organization is responsible for all the software, including operating system (and virtualization software), database software, and its applications and data
    o IaaS is sometimes referred to also as HaaS, or Hardware as a Service
  • This model allows a decrease in capital expenditures for hardware and maintaining the proper environment
21
Q

Peer-To-Peer Architectures

A
  • With a P2P architecture, all
    computers act as both a client
    and a server
  • Therefore, all computers perform
    all four functions
  • The advantage of P2P networks is
    that the data can be installed
    anywhere on the network
  • The challenge is finding the data
  • Security is a major concern in
    most P2P networks
22
Q

Choosing Architectures

A
  • In many cases, the architecture is simply a given
  • Almost all new applications today are client–server application
    o Provides the best scalability, the ability to increase (or decrease) the capacity of the
    servers to meet changing needs
  • Client–server architectures are also the most reliable
  • Client–server architectures are usually the cheapest
  • Client–server architectures also enable cloud computing
23
Q

How the web works

A
  • The Web is a two-tier
    client‑server architecture
  • Each client computer needs a
    Web browser
  • Each server on the network needs
    a Web server
  • To get to a page on the Web, the
    user must type the Internet
    uniform resource locator (URL)
    for the page they want
24
Q

How the web works (Part 2)

A
  • The standard protocol for communication between a Web browser and a
    Web server is Hypertext Transfer Protocol (HTTP)
  • The Web browser issues a special packet called an HTTP request that
    contains the URL and other information about the Web page requested
  • The server it processes it and sends back an HTTP response
25
HTTP Request
Has three parts 1. The request line, which starts with a command (e.g., get), provides the Web page, and ends with the HTTP version number that the browser understands 2. The request header, which contains a variety of optional information such as the Web browser being used and the date 3. The request body, which contains information sent to the server, such as information that the user has typed into a form
26
HTTP Response
* It, too, has three parts * The first required and the last two optional: 1. The response status, which contains the HTTP version number the server has used, a status code, and a reason phrase 2. The response header, which contains a variety of optional information, such as the Web server being used, the date, and the exact URL of the page in the response 3. The response body, which is the Web page itself
27
Electronic Mail
* One of the earliest applications on the Internet and is still among the most heavily used today * Users create and send messages to one user, several users, or all users on a distribution list * Several standards have been developed to ensure compatibility between different email software packages * The most commonly used standard is SMTP (Simple Mail Transfer Protocol)
28
How Email Works
* SMTP email is usually implemented as a two-tier thick client–server application, but not always * With a two-tier thick client–server architecture, each client computer runs an application layer software package called a mail user agent * The user creates the email message using one of these email clients * The user agent then sends the SMTP packet to a mail server that runs a special application layer software package called a mail transfer agent * This email server reads the SMTP packet to find the destination address and then sends the packet on its way through the network * The mail transfer agent on the destination server then stores the message in the receiver’s mailbox on that server
29
Email Client / Mail Server Standards
* The SMTP standard covers message transmission between mail servers and between the originating email client and its mail server * A different standard is used to communicate between the receiver’s email client and his or her mail server * Two most common: 1. Post Office Protocol (POP) 2. Internet Message Access Protocol (IMAP) * Big difference is POP deletes email from the server when copied to client’s computer while IMAP does not delete the email
30
Email with Three-Tier Thin Client–Server Architecture
* Uses a Web server and Web browser to provide access to your email o No email client needed * This type of email is sometimes called Web-based email * You use your browser to connect to a page on a Web server that lets you write the email message by filling in a form * When the receiver wants to check his or her mail, he or she uses a Web browser to send an HTTP request to a Web server
31
Inside an SMTP Packet
* SMTP defines how message transfer agents operate and how they format messages sent to other message transfer agents * An SMTP packet has two parts: 1. The header, which lists source and destination email addresses as well as the address itself 2. The body, which is the word DATA, followed by the message itself
32
SMTP
A simple standard that permits only the transfer of text messages
33
Multipurpose Internet Mail Extension (MIME), uuencode, and binhex
Several standards for non-text files have been developed that can operate together with SMTP * The MIME software takes the attachment and translates each byte in the file into a special code that looks like regular text * When the receiver’s email client receives the SMTP message with the MIME attachment, it recognizes the MIME “text” and uses its MIME software to reverse the conversion
34
Other Applications
* Telnet - enables users to log in to servers o One of the most frequently used Telnet software packages is PuTTY * Videoconferencing - provides real-time transmission of video and audio signals to enable people in two or more locations to have a meeting o The fastest growing form of videoconferencing is desktop videoconferencing * Webcasting - a special type of one-directional non-interactive videoconferencing in which content is sent from the server to the user