2013年6月13日星期四

Network Fundamentals - Application Layer Functionality and Protocols

Application Layer

Application Layer (software, program) is the interface between human and data networks.



  • The human network generates data
  • Application layer protocols:
       Prepare human data (format) for transmission over the data network
       Used to exchange data between programs running on the source and destination hosts
  • Application layer services starts the data transfer




Applications – OSI  vs. TCP/IP Model


Different protocols are used to determine the format and transmission of data




Presentation Layer


Primary functions:
  • Coding and conversion of Application layer data to ensure that data from the source device can be interpreted by an application on the destination device.
  • Compression/Decompression of the data.
  • Encryption/Decryption of the data.
  • Examples: ASCII, MPEG, GIF, JPEG




Session Layer


  • It creates and maintains dialogs between source and destination applications.
  • Keep dialogs/connections active.
  • Restart sessions that are disrupted or idle  for a long period of time.
  • Most applications, like web browsers or e-mail clients, incorporate  functionality of the OSI layers 5, 6 and 7.




Common TCP/IP Application Layer Protocols


Application layer protocols provide the rules for communication between applications.
       Most of them are generally defined by Requests for Comments (RFCs).
                 RFC 2616 (rfc2616) - Hypertext Transfer Protocol --

Domain Name System Protocol (DNS) - resolve Internet names to IP addresses.
Telnet - provide remote access to servers and networking devices.
Simple Mail Transfer Protocol (SMTP) - transfer of mail messages.
Dynamic Host Configuration Protocol (DHCP) – dynamically assign IP configurations to hosts.
Hypertext Transfer Protocol (HTTP) - transfer Web pages of the WWW.
File Transfer Protocol (FTP) - file transfer between systems.





The Client/Server Model


The device requesting the information is called a client and the device responding to the request is called a server.
       Client and server processes are considered to be in the Application layer.




In a client/server network, the server runs a service, or process, called a server daemon.
For example, a Telnet server may have many clients requesting connections to it.





Peer-to-peer Network (P2P)


Two or more computers are connected via a network and can share resources (such as printers and files) without having a dedicated server.



It allows a device to act as both a client and a server within the same communication.


Peer-to-peer applications
Some P2P applications use a hybrid system where resource sharing is decentralized but the indexes that point to resource locations are stored in a centralized directory.





DNS protocol and DNS services


DNS is a client/server service.
The DNS client runs as a service itself and it is sometimes called the DNS resolver.




Each domain name is a path down this inverted tree starting from the root.






WWW service and HTTP


HTTP  is one of the protocols in the TCP/IP suite.
HTTP is used across the World Wide Web for data transfer and is one of the most used application protocols.




HTTP specifies a request/response protocol and it is not a secure protocol. (use HTTPS for secure communication)
      GET is a client request for data.
               A web browser sends the GET message to request pages from a web server.





E-mail Services and SMTP/POP Protocols


When people compose e-mail messages, they typically use an application called a Mail User Agent (MUA), or e-mail client.



The e-mail server operates two separate processes:
  • Mail Transfer Agent (MTA) – Forward e-mail, based on message header to forward the message to the destination
  • Mail Delivery Agent (MDA) – accepts a piece of e-mail from a MTA and place into the users’ mailboxes, also resolve final delivery issues such as virus scanning



E-mail Protocols


  •  POP and POP3 are inbound mail delivery protocols and are typical client/server protocols.
              They deliver e-mail from the e-mail server to the client (MUA).

  • The SMTP governs the transfer of outbound e-mail from the sending client to the e-mail server (MDA), as well as the transport of e-mail between e-mail servers (MTA).  
  • IMAP means Internet Message Access Protocol and version 4 is currently used.
  • POP3 and IMAP4 are the most popular used email protocols for collecting (retrieving) email.



Telnet


Telnet protocol : remote (virtual) connection to server/router,
Telnet is not secure; SSH is secure because it use encryption






Server Message Block


SMB (Server Message Block) protocol : supports file sharing in Microsoft-based networks






Gnutella


Gnutella protocol : supports P2P (Peer-To-Peer) services 



  • Gnutella is a file sharing network
  • Gnutella protocol supports P2P services
  • It is the most popular file sharing network on the Internet
  • Each node installs the Gnutella client software 
  • When a user is searching a file, the client software sends the request to each actively connected node, then each node forwards the request to all its own actively connected nodes, until the request reached a predetermined number of "hops" from the sender.



沒有留言:

發佈留言