Study sheet: Network Applications and Protocols

Course Outline

  1. Network Application Architectures
  2. Application Layer Services
  3. Distributed Systems and Microservices
  4. Transport and Application Protocols
  5. Web Communication and HTTP
  6. Email Architecture and SMTP
  7. DNS Name Resolution
  8. Peer-to-Peer Networks

1. Network Application Architectures

Key Concepts & Definitions

  • Client–server architecture : a network model in which clients request services or resources from centralized servers
  • Peer-to-peer architecture : a network model in which participating computers can act as both clients and servers and communicate directly with one another

Essential Points

πŸ“Œ Client–server systems simplify management and can improve control and security, while peer-to-peer systems can improve scalability and avoid dependence on a central server.

Memory Hook

Client–server centralizes services, whereas P2P distributes them among peers.

2. Application Layer Services

Key Concepts & Definitions

  • Application layer : provides network services and protocols that support communication between user applications

β˜… Must-know

  • πŸ”„ A typical web request follows these steps:
    1. The client sends a request.
    2. DNS resolves the requested URL.
    3. The server processes the request.
    4. The server accesses data when necessary.
    5. The server sends a response.

Further detail

  • Web browsers such as Chrome and Safari provide client-side access to web resources and communicate with web servers.

Memory Hook

Request β†’ processing β†’ data access β†’ response

3. Distributed Systems and Microservices

Key Concepts & Definitions

  • Microservice : a small, independently deployable application component that communicates with other components through defined interfaces

β˜… Must-know

  • Microservices can improve scalability, modularity, deployment flexibility, and fault isolation, but they introduce distributed-system communication and management overhead.

Further detail

  • Common microservice capabilities include:
    • gateways
    • caching
    • search
    • visualization
    • recommendations
    • notifications
    • logging
    • data processing

Memory Hook

Service decomposition β†’ independent deployment and scalability

4. Transport and Application Protocols

Key Concepts & Definitions

  • Socket : a communication endpoint identified by an IP address and a port number

β˜… Must-know

πŸ“Œ TCP is connection-oriented and reliable, whereas UDP is lightweight and does not provide the same connection-oriented reliability.

Further detail

  • The listed application-layer protocols are:
    • HTTP
    • HTTPS
    • FTP
    • SMTP
    • POP3
    • IMAP

Memory Hook

TCP emphasizes reliable connection, whereas UDP emphasizes lightweight delivery.

5. Web Communication and HTTP

Key Concepts & Definitions

  • HTTP : an application-layer protocol in which a client sends requests and a server returns responses containing resources or processing results

β˜… Must-know

  • An HTTP request contains a method, a requested URL, headers, and possibly a body, while an HTTP response contains a status code, headers, and possibly a body.

Further detail

  • HTTP/1.1 commonly uses persistent connections, while non-persistent HTTP establishes a separate connection for each object.

πŸ“ Formula β€” The round-trip time is the time required for a message to travel to the destination and for the response to return, written as RTT=Toutbound+TreturnRTT = T_{outbound} + T_{return}.

Memory Hook

DNS lookup β†’ TCP connection β†’ HTTP request β†’ HTTP response

6. Email Architecture and SMTP

Key Concepts & Definitions

  • SMTP : an application-layer protocol used to transfer email between mail systems

Essential Points

  • Email delivery commonly involves a mail user agent submitting a message to a mail transfer agent, transfer between mail transfer agents through SMTP, and delivery by a mail delivery agent to the recipient's mailbox.

πŸ“Œ POP3 typically downloads messages from a mailbox, whereas IMAP keeps messages managed on the mail server and supports synchronization.

Memory Hook

MUA β†’ MTA β†’ MDA β†’ mailbox

7. DNS Name Resolution

Key Concepts & Definitions

  • DNS : translates domain names into IP addresses and uses a distributed hierarchy of name servers

β˜… Must-know

  • Recursive DNS resolution can query a local resolver, a root DNS server, a top-level-domain server, and an authoritative DNS server before returning the requested record.

  • An A record maps a domain name to an IPv4 address, while a CNAME record maps an alias to a canonical domain name.

Further detail

  • DNS caching stores resolved records for a period determined by their time to live, or TTL.

Memory Hook

Local resolver β†’ root server β†’ TLD server β†’ authoritative server

8. Peer-to-Peer Networks

Key Concepts & Definitions

  • Peer-to-peer network : a distributed network in which peers communicate and share resources directly without requiring a central server

Essential Points

  • The listed advantages of peer-to-peer networks are:

    • scalability
    • load distribution
    • fault tolerance
    • resource sharing
  • The listed challenges of peer-to-peer networks are:

    • security
    • coordination
    • data consistency
    • management

Memory Hook

A mesh of peers sharing files without a central server.

Synthesis Tables

Network Architecture Comparison

ArchitectureOrganizationMain advantagesMain limitations
Client–serverCentralized serversManagement and controlDependence on central servers
Peer-to-peerDistributed peersScalability and direct sharingCoordination and security challenges
MicroservicesIndependent servicesModularity and independent deploymentCommunication and management overhead

Test your knowledge

Test your knowledge on Network Applications and Protocols with 18 multiple-choice questions with detailed corrections.

1. Which description best defines a microservice?

2. What distinguishes a peer-to-peer network from a client–server network?

Take the quiz β†’

Review with flashcards

Memorize the key concepts of Network Applications and Protocols with 39 interactive flashcards.

What is client–server architecture in networking?

A model where clients request services from centralized servers.

What defines peer-to-peer architecture in networking?

Computers act as both clients and servers and communicate directly.

What advantage do client–server systems have over peer-to-peer?

They simplify management and can improve control and security.

See flashcards β†’

Similar courses

Create your own study sheets

Import your course and AI generates sheets, quizzes and flashcards in 30 seconds.

Sheet generator