Ch 3 -  Chapter 3 Application Layer Functionality and Protocols
Objectives <ul><li>Describe how the functions of the  three upper OSI model layers  provide network services to end-user a...
Application Layer <ul><li>Provides the interface between  human and data  networks </li></ul><ul><ul><li>people create the...
Presentation Layer <ul><li>The Presentation layer has three primary functions </li></ul><ul><ul><li>coding and conversion ...
Session Layer <ul><li>Creates and maintains dialogs  between source and destination applications </li></ul><ul><li>Handles...
Application Layer Protocols   <ul><li>Domain Name Service (DNS) </li></ul><ul><ul><li>used to resolve  Internet names to I...
Application Layer Software <ul><li>Network-aware  applications </li></ul><ul><ul><li>implement  the application layer prot...
Software Processes <ul><li>Processes are individual software programs running together at the same time </li></ul>Ch 3 -
User Applications, Services and Protocols <ul><li>User applications provide the user with a way to  create messages </li><...
Application Layer Protocol Functions <ul><li>Establish consistent  rules for exchanging data  between applications and ser...
Client-Server Model <ul><li>The device requesting the information is called a client </li></ul><ul><li>The device respondi...
Servers <ul><li>A server is usually a computer that contains information to be shared with many client systems </li></ul><...
Application Layer Services and Protocols <ul><li>A single application may employ many different supporting Application lay...
Peer-to-Peer Networks <ul><li>Two or more computers are connected via a network and  can share resources  without having a...
Peer-to-Peer Applications <ul><li>Allows a device to  act as both a client and server  within the same communication </li>...
DNS Service and Protocol <ul><li>DNS uses TCP/UDP  port 53 </li></ul><ul><li>Domain names were created to convert the nume...
DNS Resolver <ul><li>DNS is a client/server  service </li></ul><ul><ul><li>the DNS client runs a service (and not an appli...
DNS Message Format <ul><li>A DNS server uses the name resolution with the name daemon,  named  (pronounced name-dee) </li>...
DNS Resource Records Ch 3 -  A an  end device address NS an authoritative  name server , i.e. a server has resource record...
DNS Directory Structure <ul><li>Uses a hierarchical structure to create a name database </li></ul><ul><ul><li>hierarchy is...
WWW Service and Protocol <ul><li>The web browser establishes a connection to the web service running on the server using t...
WWW Service and HTTP (cont’d) <ul><li>The web client makes a connection to the HTTP server and requests a page </li></ul><...
HTTP Protocol <ul><li>HTTP specifies a request/response protocol </li></ul><ul><ul><li>HTTP protocol uses three common mes...
E-mail Services and SMTP/POP3  <ul><li>User composes an e-mail using an application called a mail user agent (MUA) or  e-m...
Mail Transfer Agent <ul><li>The MTA process is used to forward e-mail </li></ul><ul><ul><li>the MTA receives messages from...
Mail Delivery Agent <ul><li>The MDA receives the inbound mail from the MTA and delivers the mail to the appropriate users’...
SMTP and POP <ul><li>POP and POP3 are  inbound  mail delivery protocols  </li></ul><ul><ul><li>MDA listens for a client co...
SMTP Commands <ul><li>SMTP uses a rigid set of commands and replies </li></ul><ul><ul><li>commands support the procedures ...
File Transfer Protocol <ul><li>FTP uses TCP  ports 20  (data) and  21  (commands and replies) </li></ul><ul><li>An FTP cli...
Dynamic Host Configuration Protocol <ul><li>DHCP uses UDP  ports 67  (server) and  68  (client) </li></ul><ul><li>Allows a...
DHCP Process <ul><li>When a DHCP-configured device boots or connects to the network, the client  broadcasts  a DHCP  Disco...
File Sharing Services <ul><li>Server Message Block  (SMB) is a client/server file sharing protocol(Used in Microsoft Opera...
SMB Protocol <ul><li>It describes the  file system access  and how clients can request for files </li></ul><ul><li>All SMB...
Peer-to-Peer (P2P) Services <ul><li>Users can make files on their hard disks available to others for downloading with P2P ...
Gnutella Protocol <ul><li>Many P2P applications  do not use a central database  to record all files available on the peers...
Telnet <ul><li>Telnet uses TCP  port 23 </li></ul><ul><li>Provides a method of emulating  text-based terminals  over the n...
Questions <ul><li>What application layer protocol is commonly used to support for file transfers between a client and a se...
Questions <ul><li>What application layer protocol is commonly used to support for file transfers between a client and a se...
<ul><li>What three protocols operate at the Application layer of the OSI model? (Choose three.) </li></ul><ul><li>ARP  </l...
<ul><li>What three protocols operate at the Application layer of the OSI model? (Choose three.) </li></ul><ul><li>ARP  </l...
Upcoming SlideShare
Loading in …5
×

Chapter3

2,754 views

Published on

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,754
On SlideShare
0
From Embeds
0
Number of Embeds
480
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • In this chapter, we will focus on the role of one layer, the Application layer and its components: applications, services, and protocols. We will explore how these three elements make the robust communication across the information network possible.
  • These protocols specify the format and control information necessary for many of the common Internet communication functions.
  • Within the Application layer, there are two forms of software programs or processes that provide access to the network: applications and services .
  • All three components may be used by a single executable program and may even use the same name. For example, when discussing &amp;quot;Telnet&amp;quot; we could be referring to the application, the service, or the protocol.
  • In order for the communications to be successful, the application layer protocols implemented on the source and destination host must match.
  • The client begins the exchange by requesting data from the server, which responds by sending one or more streams of data to the client. One example of a client/server network is a corporate environment where employees use a company e-mail server to send, receive and store e-mail. The e-mail client on an employee computer issues a request to the e-mail server for any unread mail. The server responds by sending the requested e-mail to the client.
  • Peer-to-peer networking involves two distinct forms: peer-to-peer network design and peer-to-peer applications. Both forms have similar features but in practice work very differently.
  • The Hypertext Transfer Protocol (HTTP), one of the protocols in the TCP/IP suite, was originally developed to publish and retrieve HTML pages and is now used for distributed, collaborative information systems.
  • The e-mail server operates two separate processes: Mail Transfer Agent (MTA) Mail Delivery Agent (MDA)
  • The e-mail server operates two separate processes: Mail Transfer Agent (MTA) Mail Delivery Agent (MDA)
  • Chapter3

    1. 1. Ch 3 - Chapter 3 Application Layer Functionality and Protocols
    2. 2. Objectives <ul><li>Describe how the functions of the three upper OSI model layers provide network services to end-user applications </li></ul><ul><li>Describe how the TCP/IP application layer protocols provide the services specified by the upper layers of the OSI model </li></ul><ul><li>Define how people use the application layer to communicate across the information network </li></ul><ul><li>Describe the functions of the well-know TCP/IP applications , such as the World Wide Web and e-mail, and other related services (HTTP, DNS, DHCP, SMTP/POP and Telnet) </li></ul><ul><li>Describe the file sharing processes that use peer-to-peer applications and the Gnutella protocol </li></ul><ul><li>Explain how protocols ensure that services running on one kind of device can send to and receive from many different network devices </li></ul><ul><li>Use network analysis tools to examine and explain how common user applications work </li></ul>Ch 3 -
    3. 3. Application Layer <ul><li>Provides the interface between human and data networks </li></ul><ul><ul><li>people create the communication </li></ul></ul><ul><ul><li>software and hardware convert communication to a digital format </li></ul></ul><ul><ul><li>Application layer services initiate the data transfer </li></ul></ul>Ch 3 -
    4. 4. Presentation Layer <ul><li>The Presentation layer has three primary functions </li></ul><ul><ul><li>coding and conversion of Application layer data to ensure that data from the source device can be interpreted by the appropriate application on the destination device </li></ul></ul><ul><ul><li>compression of the data in a manner that can be decompressed by the destination device </li></ul></ul><ul><ul><li>encryption of the data for transmission and the decryption of data upon receipt by the destination </li></ul></ul>Ch 3 -
    5. 5. Session Layer <ul><li>Creates and maintains dialogs between source and destination applications </li></ul><ul><li>Handles the exchange of information to initiate dialogs and keeps them active </li></ul><ul><li>Restarts sessions that are disrupted or idle for a long period of time </li></ul>Ch 3 -
    6. 6. Application Layer Protocols <ul><li>Domain Name Service (DNS) </li></ul><ul><ul><li>used to resolve Internet names to IP addresses </li></ul></ul><ul><li>Hypertext Transfer Protocol (HTTP) </li></ul><ul><ul><li>used to transfer files that make up the web pages of the world wide web </li></ul></ul><ul><li>Simple Mail Transfer Protocol </li></ul><ul><ul><li>used for the transfer of mail messages and attachments </li></ul></ul><ul><li>Telnet (terminal emulation protocol) </li></ul><ul><ul><li>used to provide remote access to servers and networking devices </li></ul></ul><ul><li>File Transfer Protocol (FTP) </li></ul><ul><ul><li>used for interactive file transfers between systems </li></ul></ul>Ch 3 -
    7. 7. Application Layer Software <ul><li>Network-aware applications </li></ul><ul><ul><li>implement the application layer protocols and are able to communicate directly with the lower layers of the protocol stack </li></ul></ul><ul><ul><li>e-mail clients and web browsers </li></ul></ul><ul><li>Application layer services </li></ul><ul><ul><li>are programs that interface with the network and prepare the data for transfer </li></ul></ul><ul><ul><li>different types of data (text, graphics or video) require different network services to ensure that it is properly prepared for processing by the functions occurring at the lower layers of the OSI model </li></ul></ul>Ch 3 -
    8. 8. Software Processes <ul><li>Processes are individual software programs running together at the same time </li></ul>Ch 3 -
    9. 9. User Applications, Services and Protocols <ul><li>User applications provide the user with a way to create messages </li></ul><ul><li>Services establish an interface to the network </li></ul><ul><li>Protocols provide the rules and formats that govern how data is treated </li></ul>Ch 3 -
    10. 10. Application Layer Protocol Functions <ul><li>Establish consistent rules for exchanging data between applications and services </li></ul><ul><li>Specify how data inside the message is structured and the types of messages that are sent between the source and destination </li></ul><ul><li>Define the message dialogues and the expected response </li></ul><ul><li>Define the interaction with the next lower layer </li></ul>Ch 3 -
    11. 11. Client-Server Model <ul><li>The device requesting the information is called a client </li></ul><ul><li>The device responding to the request is called a server </li></ul><ul><li>Application layer protocols describe the format of the requests and responses between the clients and servers </li></ul>Ch 3 -
    12. 12. Servers <ul><li>A server is usually a computer that contains information to be shared with many client systems </li></ul><ul><li>Some servers may require authentication of user control information to verify the user has access rights </li></ul><ul><ul><li>rely on a central list of user accounts and authorization </li></ul></ul><ul><li>The server runs a service, or process, called a daemon </li></ul>Ch 3 - <ul><ul><li>daemon typically runs in the background </li></ul></ul><ul><ul><li>the daemon “listens” for a request from a client </li></ul></ul><ul><ul><li>the daemon exchanges appropriate information with the client when it “hears” a request </li></ul></ul>
    13. 13. Application Layer Services and Protocols <ul><li>A single application may employ many different supporting Application layer services </li></ul><ul><ul><li>one request may contain several individual processes </li></ul></ul><ul><li>Servers can support multiple clients requesting information at the same time </li></ul>Ch 3 - <ul><ul><li>the individual client requests must be handled simultaneously and separately </li></ul></ul><ul><ul><li>Application layer processes and services rely on support from lower layer functions to successfully manage the multiple conversations </li></ul></ul>
    14. 14. Peer-to-Peer Networks <ul><li>Two or more computers are connected via a network and can share resources without having a dedicated server </li></ul><ul><ul><li>every connected end device, known as a peer , can function either as a client or server </li></ul></ul><ul><ul><li>information can be located anywhere on any connected device </li></ul></ul>Ch 3 - <ul><ul><li>user accounts and access rights are set individually on each peer device </li></ul></ul><ul><ul><li>difficult to enforce security and access policies </li></ul></ul><ul><ul><li>most current operating systems support file and print sharing without requiring additional server software </li></ul></ul>
    15. 15. Peer-to-Peer Applications <ul><li>Allows a device to act as both a client and server within the same communication </li></ul><ul><ul><li>requires each end device to provide a user interface and run a background service </li></ul></ul><ul><li>Can be used on peer-to-peer networks, client/server networks and across the Internet </li></ul>Ch 3 -
    16. 16. DNS Service and Protocol <ul><li>DNS uses TCP/UDP port 53 </li></ul><ul><li>Domain names were created to convert the numeric IP address into a simple, recognizable name </li></ul>Ch 3 - <ul><ul><li>domain names are easier to remember than actual numeric addresses </li></ul></ul><ul><ul><li>any change to the address is transparent to the user since the domain name is the same </li></ul></ul>
    17. 17. DNS Resolver <ul><li>DNS is a client/server service </li></ul><ul><ul><li>the DNS client runs a service (and not an application) </li></ul></ul><ul><ul><li>the DNS client, called the DNS resolver , supports name resolution for other network applications and services </li></ul></ul><ul><li>DNS client uses one or more DNS server addresses for name resolution </li></ul>Ch 3 - <ul><ul><li>DNS client queries the name servers to resolve the name to a numeric address </li></ul></ul><ul><ul><li>nslookup utility allows the user to manually query the name servers to resolve a given host name </li></ul></ul>
    18. 18. DNS Message Format <ul><li>A DNS server uses the name resolution with the name daemon, named (pronounced name-dee) </li></ul><ul><li>Uses the same message format </li></ul><ul><ul><li>all types of client queries and server responses </li></ul></ul><ul><ul><li>error messages </li></ul></ul><ul><ul><li>the transfer of resource record information between servers </li></ul></ul>Ch 3 -
    19. 19. DNS Resource Records Ch 3 - A an end device address NS an authoritative name server , i.e. a server has resource records that corresponds to its level in the domain hierarchy CNAME the canonical name – an alias name for a host MX mail exchange record
    20. 20. DNS Directory Structure <ul><li>Uses a hierarchical structure to create a name database </li></ul><ul><ul><li>hierarchy is an inverted tree with the root at the top and branches below </li></ul></ul><ul><li>The different top-level domains (TLD) represent either the country origin or the type of organization </li></ul>Ch 3 - <ul><li>After TLD are second-level domain names, and below them are other lower level domains </li></ul>
    21. 21. WWW Service and Protocol <ul><li>The web browser establishes a connection to the web service running on the server using the Hypertext Transfer Protocol (HTTP) </li></ul><ul><ul><li>request a page using an URL (uniform resource locator) or web address </li></ul></ul><ul><ul><li>a web browser is a client application running on a client device </li></ul></ul><ul><li>HTTP uses TCP port 80 </li></ul><ul><li>An URL consists of three parts </li></ul><ul><ul><li>the protocol – hypertext transfer protocol ( http ) </li></ul></ul><ul><ul><li>the server name </li></ul></ul><ul><ul><li>the specific file name requested </li></ul></ul><ul><li>Browsers can interpret and present many data types </li></ul><ul><ul><li>plain text and Hypertext Markup Language (HTML) </li></ul></ul><ul><ul><li>other data types require another service or program such as plug-ins or add-ons </li></ul></ul>Ch 3 -
    22. 22. WWW Service and HTTP (cont’d) <ul><li>The web client makes a connection to the HTTP server and requests a page </li></ul><ul><li>In response to the request, the HTTP server returns the code for a web page </li></ul><ul><li>The browser interprets the HTML code and displays a web page </li></ul>Ch 3 -
    23. 23. HTTP Protocol <ul><li>HTTP specifies a request/response protocol </li></ul><ul><ul><li>HTTP protocol uses three common messages – GET , POST and PUT </li></ul></ul>Ch 3 - <ul><li>HTTP is not a secure protocol </li></ul><ul><ul><li>POST messages in plain text can be intercepted and read </li></ul></ul><ul><ul><li>HTML pages are not encrypted </li></ul></ul><ul><li>HTTP Secure (HTTPS) protocol can use authentication and encryption to secure the data </li></ul>
    24. 24. E-mail Services and SMTP/POP3 <ul><li>User composes an e-mail using an application called a mail user agent (MUA) or e-mail client </li></ul><ul><li>Client sends e-mails to a server using Simple Mail Transfer Protocol ( SMTP ) and receives e-mails using Post Office Protocol version 3 ( POP3 ) </li></ul>Ch 3 - <ul><li>SMTP uses TCP port 25 </li></ul><ul><li>POP uses UDP port 110 </li></ul>
    25. 25. Mail Transfer Agent <ul><li>The MTA process is used to forward e-mail </li></ul><ul><ul><li>the MTA receives messages from a MUA or another MTA </li></ul></ul><ul><ul><li>based on the message header, it determines how a message has to be forwarded to reach its destination </li></ul></ul>Ch 3 - <ul><ul><li>if the recipient resides on the local server, the mail is passed to the mail delivery agent (MDA) </li></ul></ul><ul><ul><li>if the recipient is not on the local server, the MTA routes the e-mail to the MTA on the appropriate server </li></ul></ul>
    26. 26. Mail Delivery Agent <ul><li>The MDA receives the inbound mail from the MTA and delivers the mail to the appropriate users’ mailboxes </li></ul><ul><li>It can also resolve final delivery issues, such as virus scanning , spam filtering and return-receipt handling </li></ul>Ch 3 -
    27. 27. SMTP and POP <ul><li>POP and POP3 are inbound mail delivery protocols </li></ul><ul><ul><li>MDA listens for a client connection to the server </li></ul></ul>Ch 3 - <ul><li>SMTP governs the transfer of outbound e-mail from the sending client to the MDA, as well as the transport of e-mail between MTA </li></ul><ul><ul><li>enables e-mail to be transported across data networks between different types of server and client software </li></ul></ul>
    28. 28. SMTP Commands <ul><li>SMTP uses a rigid set of commands and replies </li></ul><ul><ul><li>commands support the procedures for session initiation , mail transaction, forwarding mail, verifying mailbox names, expanding mailing lists, and the opening an closing exchanges </li></ul></ul>Ch 3 - HELO identifies the SMTP client process to the SMTP server process EHLO a new version of HELO , which includes service extensions MAIL FROM identifies the sender RCPT TO identifies the recipient DATA identifies the body of the message
    29. 29. File Transfer Protocol <ul><li>FTP uses TCP ports 20 (data) and 21 (commands and replies) </li></ul><ul><li>An FTP client is used to push and pull files from a server running the FTP daemon (FTPd) </li></ul>Ch 3 - <ul><li>Client establishes the first connection to the server on TCP port 21 </li></ul><ul><ul><li>for control traffic such as client commands and server replies </li></ul></ul><ul><li>Client establishes the second connection to the server over TCP port 20 </li></ul><ul><ul><li>for file transfer in both direction </li></ul></ul>TCP port 21 TCP port 20
    30. 30. Dynamic Host Configuration Protocol <ul><li>DHCP uses UDP ports 67 (server) and 68 (client) </li></ul><ul><li>Allows a host to obtain an IP address automatically from a DHCP server when it connects to the network </li></ul><ul><ul><li>server leases an IP address from a pool to the host for a set period </li></ul></ul><ul><ul><li>can pose a security risk </li></ul></ul>Ch 3 - <ul><li>DHCP is preferred on large LANs or where the user population changes frequently </li></ul><ul><ul><li>when accessing the Internet using wireless hotspots at airport or coffees shops </li></ul></ul>
    31. 31. DHCP Process <ul><li>When a DHCP-configured device boots or connects to the network, the client broadcasts a DHCP Discover packet </li></ul><ul><li>The DHCP server replies with a DHCP Offer </li></ul><ul><ul><li>a lease offer message with an assigned IP address, subnet mask , default gateway, DNS server and duration of lease </li></ul></ul><ul><ul><li>client may receive multiple DHCP Offer packets </li></ul></ul><ul><li>Client broadcasts a DHCP Request that identifies the explicit server and lease offer that it is accepting </li></ul>Ch 3 - <ul><li>The DCHP would return a DHCP Ack that acknowledges the lease is finalized </li></ul><ul><ul><li>provided IP address is still valid </li></ul></ul>
    32. 32. File Sharing Services <ul><li>Server Message Block (SMB) is a client/server file sharing protocol(Used in Microsoft Operating System) </li></ul><ul><ul><li>sharing directories , files , printers and serial ports </li></ul></ul><ul><ul><li>clients establish a long term connection to the servers </li></ul></ul><ul><ul><li>SMB resource sharing is supported by TCP/IP protocols </li></ul></ul>Ch 3 -
    33. 33. SMB Protocol <ul><li>It describes the file system access and how clients can request for files </li></ul><ul><li>All SMB messages share a common format </li></ul><ul><ul><li>a fixed size header followed by a variable-sized parameter and data component </li></ul></ul>Ch 3 - <ul><li>SMB messages can </li></ul><ul><ul><li>start, authenticate and terminate sessions </li></ul></ul><ul><ul><li>control file and printer access </li></ul></ul><ul><ul><li>allow an application to send or receive messages to or from another device </li></ul></ul>
    34. 34. Peer-to-Peer (P2P) Services <ul><li>Users can make files on their hard disks available to others for downloading with P2P applications based on the Gnutella protocol </li></ul><ul><li>Gnutella-compatible client software allows users to connect to Gnutella services over the Internet to locate and access resources shared by other Gnutella peers </li></ul><ul><ul><li>BearShare, Gnucleus, LimeWire, Morpheus, WinMX and XoloX </li></ul></ul><ul><li>Gnutella Developer Forum maintains the basic protocol </li></ul><ul><ul><li>application vendors develop extensions to make their protocol work better on their applications </li></ul></ul>Ch 3 -
    35. 35. Gnutella Protocol <ul><li>Many P2P applications do not use a central database to record all files available on the peers </li></ul><ul><ul><li>Gnutella allows P2P applications to search for shared resources on peers (or nodes) </li></ul></ul>Ch 3 - <ul><li>When a user connects to a Gnutella service, the client application will search for nodes to connect to </li></ul><ul><ul><li>nodes handle queries for resource location and replies </li></ul></ul>
    36. 36. Telnet <ul><li>Telnet uses TCP port 23 </li></ul><ul><li>Provides a method of emulating text-based terminals over the network </li></ul><ul><ul><li>allows a local device to access a remote device as if the keyboard and monitor are connected to the remote device directly </li></ul></ul><ul><li>A connection using Telnet is called a virtual terminal (VTY) session </li></ul>Ch 3 - <ul><li>The Telnet server runs a service called the Telnet daemon </li></ul>
    37. 37. Questions <ul><li>What application layer protocol is commonly used to support for file transfers between a client and a server? </li></ul><ul><li>HTML </li></ul><ul><li>HTTP </li></ul><ul><li>FTP </li></ul><ul><li>Telnet </li></ul><ul><li>What is the purpose of resource records in DNS? </li></ul><ul><li>temporarily holds resolved entries </li></ul><ul><li>used by the server to resolve names </li></ul><ul><li>sent by the client to the server during a query </li></ul><ul><li>passes authentication information between the server and client </li></ul>Ch 3 -
    38. 38. Questions <ul><li>What application layer protocol is commonly used to support for file transfers between a client and a server? </li></ul><ul><li>HTML </li></ul><ul><li>HTTP </li></ul><ul><li>FTP </li></ul><ul><li>Telnet </li></ul><ul><li>What is the purpose of resource records in DNS? </li></ul><ul><li>temporarily holds resolved entries </li></ul><ul><li>used by the server to resolve names </li></ul><ul><li>sent by the client to the server during a query </li></ul><ul><li>passes authentication information between the server and client </li></ul>Ch 3 -
    39. 39. <ul><li>What three protocols operate at the Application layer of the OSI model? (Choose three.) </li></ul><ul><li>ARP </li></ul><ul><li>DNS </li></ul><ul><li>PPP </li></ul><ul><li>SMTP </li></ul><ul><li>POP </li></ul><ul><li>ICMP </li></ul><ul><li>What are two characteristics of peer-to-peer networks? (Choose two.) </li></ul><ul><li>scalable </li></ul><ul><li>one way data flow </li></ul><ul><li>decentralized resources </li></ul><ul><li>centralized user accounts </li></ul><ul><li>resource sharing without a dedicated server </li></ul>Ch 3 -
    40. 40. <ul><li>What three protocols operate at the Application layer of the OSI model? (Choose three.) </li></ul><ul><li>ARP </li></ul><ul><li>DNS </li></ul><ul><li>PPP </li></ul><ul><li>SMTP </li></ul><ul><li>POP </li></ul><ul><li>ICMP </li></ul><ul><li>What are two characteristics of peer-to-peer networks? (Choose two.) </li></ul><ul><li>scalable </li></ul><ul><li>one way data flow </li></ul><ul><li>decentralized resources </li></ul><ul><li>centralized user accounts </li></ul><ul><li>resource sharing without a dedicated server </li></ul>Ch 3 -

    ×