Introduction to Network Applications
1. What are Network Applications?
- Programs that use network protocols to exchange data over LAN/WAN/Internet.
2. Examples:
- Web Browsers (HTTP), Email Clients (SMTP/IMAP), FTP Clients, Remote Login Tools (SSH)
3. Characteristics:
- Distributed, Use of Protocols, Resource Sharing, Client-Server Model, Real-time or Batch
4. Architecture:
- Client-Server: One server serves many clients (e.g., HTTP, SSH)
- Peer-to-Peer: Equal nodes share resources (e.g., BitTorrent)
- Hybrid: Mix of server and P2P (e.g., WhatsApp)
5. Key Application Layer Protocols:
| Protocol | Purpose | Transport Layer | Secure Version |
|----------|----------------------|-----------------|----------------|
| HTTP | Web access | TCP | HTTPS |
| FTP | File transfers | TCP | FTPS/SFTP |
| SMTP | Sending email | TCP | SMTPS |
| POP3 | Retrieve email | TCP | POP3S |
| SSH | Remote login | TCP | Secure |
6. Sockets API:
- socket(), bind(), listen(), accept(), connect(), send(), recv(), close()
7. Importance:
- Forms foundation of all Internet communication
- Prepares students for network software development and real-time systems