Ch02

advertisement

CHAPTER 2

Application Layer

Announcements and Outline

 Administrative Items

 Questions?

Recap

1. Introduction to Networks

1.

Network Type

2.

N etwork Layers

Today’s Outline

2. Application Layer

2.1 Hardware

2.2 Application Architecture (Software)

2.3 Web

2.4 Email

2

Network Layers

Computer 1 Computer 2

Acronyms of the Day

• HTTP – Hypertext Transfer Protocol

• SMTP – Simple Mail Transfer Protocol

• POP – Post Office Protocol

• IMAP – Internet Message Access Protocol

• MIME – Multipurpose Internet Mail Extensions

4

2 Application Layer

Applications

(e.g., email, web, word processing)

Application Layer

Transport Layer

Network Layer

• The software that enables the user to perform useful work

• Application architecture

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

• Functions of Application Layer

5

2.1 Hardware - Client

What the users use

• PC

• Terminal

• Network Computers

• Mobile Devices

• Special Purpose

6

2.1 Hardware – Client (Special Purpose)

Terminal

Mobile

Technologies

Special

Purpose

7

2.1 Hardware – Server

What the client accesses

• PC (special purpose)

• Mainframe

• Clusters (aka Server Farms)

• Special Purpose

8

2.1 Hardware – Server

Mainframes

From 1970’s

More Recent

9

2.1 Hardware – Server

Clusters

Server Clusters

Computer Cluster

2.2 Application Architecture

Splitting the work across the client and the server

Basic Software Components:

• Presentation Logic

• Application Logic

• Data Access Logic

• Data

11

2.2 Host (Server) Based Architecture

CLIENT SERVER

12

2.2 Host Based Architecture Problems

Host becomes a bottleneck

Host upgrades typically expensive and “lumpy”

13

2.2 Client Based Architecture

CLIENT

SERVER

14

2.2 Client Based Architecture Problems

Data traffic must travel back and forth between server and client

 Example: when the client program is making a database query, the ENTIRE database must travel to the client before the query can be processed

 Often the large file sizes moving across the LAN can yield a poor result in network performance

15

2.2 Client-Server Architecture

2-Tier Architecture

CLIENT

SERVER

16

2.2 Client-Server Architecture

2-Tier Architecture

CLIENT

SERVER

Thin and Thick Clients

Classification depends on how much of the application logic resides on the client or server

Thin client:

• Little or no application logic on client

• Becoming popular because easier to manage, (only the server application logic generally needs to be updated)

• The best example: World Wide Web architecture (uses a twotier, thin client architecture)

Thick client:

• All or most of the application logic resides on the client

2.2 Client-Server Architecture

Advantages

Disadvantages

19

Middleware client application programs a standard way of translating between software from different vendors

Middleware server application programs

– Manages message transfers

– Insulates network changes from the clients

(e.g., adding a new server)

Examples of standards for Middleware:

 Distributed Computing Environment (DCE)

 Common Object Request Broker Architecture (CORBA)

 Open Database Connectivity (ODBC)

20

Multi-tier Architectures

Involve more than two computers in distributing application program logic

 2-tier architecture

• Uses clients and servers in a balance, very popular approach in simple LANs

 3-tier architecture

• 3 sets of computers involved

 N-tier architecture

• More than three sets of computers used, more typical across complex organizations

• Allows load balancing across servers

21

2.2 Client-Server Architecture

CLIENT

SERVER SERVER

22

2.2 Client-Server Architecture

CLIENT

SERVER SERVER SERVER

23

2.2 Client-Server Architecture (Multi-Tier)

Advantages

Disadvantages

24

Peer to Peer Architecture

• All computers can serve as a client and a server

Advantages:

Disadvantages:

25

Peer to Peer Architecture

26

2.2 Criteria for Choosing Architecture

Infrastructure Cost

Development Cost

Scalability

27

2.2 Choosing an Architecture

Cost of

Infrastructure

Cost of

Development

Scalability

Host-Based Client-Based Client-Server

28

2.3.1 Web (How it works)

What happens when type a web address (2-Tier Networks, Client/Server)

29

2.3 Web

HTTP Requests:

1. Request Line

2. Request Header

3. Request Body

30

2.3 Web

HTTP Response:

1. Response Status

2. Response Header

3. Response Body

31

2.3 Web (Request/Response Demo) www.rexswain.com/httpview

32

2.4.1 Email (2-Tier - Thick Client)

How a message is sent

33

2.4.1 Email (2-Tier - Thick Client)

How a message is sent offsite (e.g. email from UNCW to

UNC)

34

2.4.2 Email – Web Mail

3-Tier Email – Off Campus

35

2.4.3 Email – SMTP Packets

1. Header

2. Body

36

2.4.4 Email – Sending Attachments

SMTP is a relatively old protocol and is text only, so how do we send attachments using text only?

MIME (Multipurpose Internet Mail Extension)

MIME example

37

Instant Messaging (IM)

A client-server program that allows real-time typed messages to be exchanged

 Client needs an IM client software

 Server needs an IM server package

Some types allow voice and video packets to be sent

 Like a telephone

Examples include AOL and ICQ

Two step process:

 Telling IM server that you are online

 Chatting

2 - 38

How Instant Messaging Works

2 - 39

Videoconferencing

Provides real time transmission of video and audio signals between two or more locations

 Allows people to meet at the same time in different locations

 Saves money and time by not having to move people around

 Typically involves matched special purpose rooms with cameras and displays

Desktop videoconferencing

 Low cost application linking small video cameras and microphones together over the Internet

 No need for special rooms

 Example: Net Meeting software on clients communicating through a common videoconference server

2 - 40

Recap – Application Layer

2.1 Hardware

2.1.1 Clients

2.1.2 Servers

2.2 Application Architecture (Software)

2.3 Web

2.3.1 How it works

2.3.2 Requests and Responses

2.4 Email

2.4.1 How it Works

2.4.2 Requests and Sending Attachments

41

Next Class

• Read Chapter 3 - Physical Layer

• Find out what service you currently use

• What are the transmission speed?

• What type of transmissions are utilized – Analog or

Digital?

42

Download