Application Layer - Computer Networks
- Services that directly provide user interfaces support user applications or services
- It serves as a window through which application processes can access network services
- The application layer enables the user to access the network
- This would be the layer that a programmer uses to allow his application to access a network service, such as linking into a database
- Ports
- 0 to 1023 => Well defined ports
- Protocols
- Domain Name Service (DNS)
- Port no. 53
- Uses UDP protocol
- Searing DNS > Search in Local Cache/DNS Resolver
- Request sent to Root server via Resolver => Total 13 root servers
- Recursive
- Request sent to Generic/Country
- Request sent to Authoritative > Sent to Root server
- Response sent to User via Resolver
- Iterative
- Request sent to Generic/Country server via Resolver
- Request sent to Authoritative server via Resolver > Sent to Root server via Resolver
- Response sent to User via Resolver
- HTTP
- Port no. 80
- Port no. 443 for HTTPS
- Uses TCP for reliability
- Inband protocol => Commands and Data from same port
- Stateless
- Persistent (Server leaves connection open after sending response) & Non-persistent (More overhead)
- FTP (File transfer protocol)
- Port no. 20 (DATA) & 21 (Control)
- Data connection is non-persistent
- Control connection is persistent
- Not inband
- Reliable, Stateful
- SMTP (Simple mail transfer protocol)
- Send mail (Push mail)
- Uses TCP or UDP
- POP (Post office protocol)
- Receive mail (Pop mail)
- Deletes from server while popping
- IMAP (Internet message access protocol)