0% found this document useful (0 votes)
5 views53 pages

Module 7 - The Application Layer

Module 7 covers the Application Layer, detailing its main functions, popular applications, and protocols such as DNS, email, and the Web. It discusses the architecture of these services, including how DNS resolves domain names, the structure of email systems, and the functioning of web pages through HTTP. Additionally, it addresses content delivery methods, including server farms, CDNs, and peer-to-peer networks.

Uploaded by

rogianeolinda122
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views53 pages

Module 7 - The Application Layer

Module 7 covers the Application Layer, detailing its main functions, popular applications, and protocols such as DNS, email, and the Web. It discusses the architecture of these services, including how DNS resolves domain names, the structure of email systems, and the functioning of web pages through HTTP. Additionally, it addresses content delivery methods, including server farms, CDNs, and peer-to-peer networks.

Uploaded by

rogianeolinda122
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

The Application Layer

Module 7

IT & CS Departments - SAMCIS Short Term AY 2022 - 2023


Module 7 Topic Learning Outcomes

• De ne the main function of the Application Layer


• De ne popular applications and protocols used in the application layer
fi
fi
The Application Layer
• layer where all the applications are found
• layers below the application layer are there to provide transport services, but
they do not do real work for users

• Even at the application layer there is a need for support protocols, to allow
many applications to function

• Uses transport services to build distributed applications


Key Topics / Outline of Discussion

• DNS – Domain Name System


• Electronic Mail
• The Web
• Streaming Audio and Video
• Content Delivery
DNS – Domain Name System
• The DNS resolves high-level human readable names for computers to low-
level IP addresses

• TOPICS to be discussed
• DNS name space
• Domain Resource records
• Name servers
The DNS Name Space
• DNS namespace is hierarchical from the root down
• Di erent parts delegated to di erent organizations
• Can register under multiple top-level domains
• Absolute domain names always end in a period, relative domain names do
not

• Relative names have to be interpreted in a context to uniquely determine their


meaning
ff
ff
The DNS Name Space
The relationship between registries and registrars
• Getting a second-level domain, such as name-
[Link], is easy.

• The top-level domains are operated by


companies called registries.

• They are appointed by ICANN.


• For example, the registry for com is Verisign.
One level down, registrars sell domain names
directly to users.

• There are many of them and they com- pete on


price and service. Common registrars include
[Link], GoDaddy, and NameCheap
The DNS Name Space

• The Generic top-level domains


are controlled by ICANN who
appoints registrars to run them

• ICANN = Internet Corporation for


Assigned Names and Numbers

• To create a new domain,


permission is required of the
domain in which it will be
included.

• Naming follows organizational


boundaries, not physical
networks.
Domain Resource Records
• Every domain (all levels) has its
own DNS database that is
comprised of Resource
Records.
Each Resource Record is a 5
tuple: Domain_Name, TTL,
Class, Type, Value

• The key resource records in the


namespace are IP addresses (A/
AAAA) and name servers (NS),
but there are others too (e.g.,
MX)
Domain Resource Records
Name Servers
• DNS name space divided into overlapping zones. Admins determine zone boundaries.
Each zone has one or more name servers.

• Name servers contain data for portions of the name space called zones (circled).
Name Servers
• Finding the IP address for a given hostname is called resolution and is done with
the DNS protocol.

• Name Resolution:
• Computer requests local name server to resolve
• Local name server asks the root name server
• Root returns the name server for a lower zone
• Continue down zones until a name server can answer
• DNS protocol:
• Runs on UDP port 53, retransmits lost messages
• Caches name server answers for better performance
Electronic Mail
• Key Topics:
• Architecture and services
• The user agent
• Message formats
• Message transfer
• Final delivery
Architecture and Services
Architecture and Services
The User Agent
• a program (sometimes called an email reader) that accepts a variety of
commands for composing, receiving, and replying to messages, as well as for
manipulating mailboxes.

• Popular user agents examples:


• Google Gmail
• Microsoft Outlook
• Mozilla Thunderbird
• Apple Mail
The User Agent
• What users see – interface elements of a typical user agent
Message Formats
• Header elds related to message transport; headers are readable ASCII text
fi
Message Formats
• Other header elds useful for user agents
fi
Message Formats
• MIME header elds used to describe what content is in the body of the
message
fi
Message Formats
• Common MIME content types and subtypes
Message Formats
Message Transfer
• Messages are transferred with SMTP (Simple Mail Transfer Protocol)
• Readable text commands
• Submission from user agent to MTA on port 587
• One MTA to the next MTA on port 25
• Other protocols for nal delivery (IMAP, POP3)
fi
Message Transfer
Final Delivery
• POP3
• User agent uses protocol like
IMAP for nal delivery

• Has commands to
manipulate folders /
messages [right]

• Alternatively, a Web interface


(with proprietary protocol)
might be used

• Webmail
fi
Final Delivery via WEBMAIL
• popular alternative to IMAP and SMTP for providing email service is to use the Web as an interface for
sending and receiving mail.

• Widely used Webmail systems include Google Gmail, Microsoft Hotmail and Yahoo! Mail.
• In this architecture,
• the provider runs mail servers as usual to accept messages for users with SMTP on port 25.
• the user agent is di erent. Instead of being a standalone program, it is a user interface that is
provided via Web pages. This means that users can use any browser they like to access their mail
and send new messages.

• Many of the items on the page showing the mailbox are clickable, so messages can be read, deleted,
and so on.

• To make the interface responsive, the Web pages will often include JavaScript programs. These
programs are run locally on the client in response to local events (e.g., mouse clicks) and can also
download and upload messages in the background, to prepare the next message for display or a new
message for submission
ff
The World Wide Web
• Key Topics:
• Architectural overview
• Static Web pages
• Dynamic pages and Web applications
• HTTP – HyperText Transfer Protocol
• The mobile Web
• Web search
Architectural Overview
• HTTP transfers pages from servers to browsers
Architectural Overview
Architectural Overview
• Steps a client (browser) takes to follow a hyperlink:
• − Determine the protocol (HTTP)
− Ask DNS for the IP address of server
− Make a TCP connection to server
− Send request for the page; server sends it back
− Fetch other URLs as needed to display the page
− Close idle TCP connections

• Steps a server takes to serve pages:


− Accept a TCP connection from client
− Get page request and map it to a resource (e.g., le name)
− Get the resource (e.g., le from disk)
− Send contents of the resource to the client.
− Release idle TCP connections
fi
fi
Architectural Overview
• Content type is identi ed by MIME(Multipurpose Internet Mail Extensions
types)

• Browser takes the appropriate action to display


• Plug-ins / helper apps extend browser for new types
fi
Architectural Overview
• To scale performance,
• Web servers can use: Caching, multiple threads, and a front end
Architectural Overview
Server steps, revisited:

• Resolve name of Web page requested


• Perform access control on the Web page
• Check the cache
• Fetch requested page from disk or run program
• Determine the rest of the response
• Return the response to the client
• Make an entry in the server log
Architectural Overview
• Static Web Pages
• Have the same contents for each viewing
• Can be visually rich and interactive
• Dynamic Web Pages
• Dynamic pages are generated by programs running at the server (with a database) and the
client

• E.g., PHP at server, JavaScript at client


• Pages vary each time like using an application
Dynamic Pages & Web Applications
• The di erence between server and client programs
ff
Dynamic Pages & Web Applications
• Web applications use a set of technologies
Streaming Audio and Video
• for many people, audio and video are the holy grail of networking
• idea of sending audio and video over the Internet has been around since the 1970s at
least, it is only since roughly 2000 that real-time audio and real-time video tra c has
grown with a vengeance

• Two things happened to enable this growth.


• computers have became much more powerful and are equipped with microphones and
cameras so that they can input, process, and output audio and video data with ease.

• a ood of Internet bandwidth has come to be available


• audio, video takes up a large amount of bandwidth
• Given that there is enough bandwidth to carry audio and video, the key issue for
designing streaming and conferencing applications is network delay
fl
ffi
Streaming Audio and Video
• Key Design Issues:
• Address DELAY
• Minimize data delivered using compression techniques
• Audio Compression Techniques: MP3 (MPEG audio layer 3) and AAC
(Advanced Audio Coding) as carried in MP4 (MPEG-4) les

• Video Compression Techniques: MPEG-1, MPEG-2, and MPEG-4

fi
Content Delivery
• Delivery of content, especially Web and video, to users is a major component
of Internet tra c

• Content and Internet tra c


• Server farms and Web proxies
• Content delivery networks
• Peer-to-peer networks
ffi
ffi
A
• Internet tra c:
1. Shifts seismically (email->FTP->Web->P2P->video)

2. Has many small/unpopular and few large/popular ows – mice and elephants
ffi
fl
Server Farms and Web Proxies
• Server farms enable large-scale Web servers:
• Front-end load-balances requests over servers
• Servers access the same backend database
Server Farms and Web Proxies
• Proxy caches help organizations to scale the Web
• Caches server content over clients for performance
• Also implements organization policies (e.g., access)
CDNs – Content Delivery Networks
• CDNs scale Web servers by having clients get content from a nearby CDN
node (cache)
Content Delivery Networks
• Directing clients to nearby CDN nodes with DNS:
• Client query returns local CDN node as response
• Local CDN node caches content for nearby clients and reduces load on the
origin server
Content Delivery Networks
• Origin server rewrites pages to serve content via CDN
Peer-to-Peer Networks
• P2P (Peer-to-Peer) is an alternative CDN architecture with no dedicated
infrastructure (i.e., servers)

• Clients serve content to each other as peers


• Challenges when servers are removed:
• How do peers nd each other?
• How do peers support rapid content downloads?
• How do peers encourage each other to upload?
fi
Peer-to-Peer Networks
• BitTorrent lets peers download torrents
• Peers nd each other via Tracker in torrent le
• Peers swap chunks (parts of content) with partners, preferring those who send most quickly [2]
• Many peers speed download; preference helps uploads [3]
fi
fi
Peer-to-Peer Networks
• Distributed Hash Tables (DHTs) are a fully distributed index that scales to very
many clients/entries

• Need to follow O(log N) path for N entries


• Can use as Tracker to nd peers with no servers [1]
• Look up torrent (identi er) in DHT to nd IP of peers
• Kademlia is used in BitTorrent
fi
fi
fi
Peer-to-Peer Networks
• A Chord ring of 32 identi ers. Finger tables [at right, and as arcs] are used to
navigate the ring.

• Example: path to look up 16 from 1 is 1->12->15


fi
End of Module 7
Some Reminders
• Quiz #2: July 21, 2023(Friday), 12PM-1:00PM @ D522 & D524 (7yh oor labs
would be an alternative)

• Laboratory Quiz: July 21, 2023(Friday), 1PM-1:30PM


• Project Deadline: July 22, 2023(Saturday), on or before 5PM
• Final Examination: July 24/25 (wait for schedule)
• Project Presentation and Defense
• Draw lots on Friday after QUIZ
• July 26(Wednesday) or earlier (TIMESLOTS: 8-9am; 9:30-10:30am;
11-12pm; 1-2pm; 2:30-3:30pm and 4-5pm)

• ATTENDANCE is MANDATORY

fl
End of Semester / Term

You might also like