Network Protocols (TCP/IP, HTTP, FTP, SMTP, IMAP)
A protocol is a set of rules that governs how data is transmitted across a network. Without protocols, devices from different manufacturers running different software would not be able to communicate with each other. Protocols ensure that data is formatted, transmitted and received in a standard way that all devices can understand.
Why Do We Need Protocols?
Imagine trying to have a conversation with someone who speaks a completely different language and follows different social rules. Protocols are like a common language and set of rules that all devices agree to follow. They define:
- The format of data — how data is structured and packaged.
- The order of messages — which device sends first, how to acknowledge receipt.
- Error handling — what happens when data is lost or corrupted.
- Addressing — how to identify the sender and recipient.
TCP/IP (Transmission Control Protocol / Internet Protocol)
TCP/IP is the fundamental protocol suite used on the internet and most networks. It consists of two main protocols that work together:
IP (Internet Protocol)
- Responsible for addressing and routing data packets.
- Each packet is given a source IP address and a destination IP address.
- IP finds a route for each packet across the network.
- IP is connectionless — each packet is treated independently and may take a different route.
TCP (Transmission Control Protocol)
- Responsible for reliable delivery of data.
- Breaks data into smaller segments (which are then placed in IP packets).
- Numbers each segment so the data can be reassembled in order at the destination.
- Uses acknowledgements — the receiving device confirms receipt of each segment.
- Retransmits any segments that are lost or corrupted.
- Establishes a connection between sender and receiver before data transfer begins (a "three-way handshake").
| Feature | TCP | IP |
|---|
| Role | Reliable data delivery | Addressing and routing |
| Breaks data into | Segments | Packets |
| Ensures order | Yes — numbers segments | No — packets may arrive out of order |
| Error checking | Yes — retransmits lost segments | No |
| Connection | Connection-oriented | Connectionless |
HTTP and HTTPS (HyperText Transfer Protocol)
HTTP is the protocol used to transfer web pages between a web server and a browser.
How HTTP works
- The browser sends an HTTP request to the web server (e.g. "GET the page at /index.html").
- The web server processes the request and sends back an HTTP response containing the web page content (HTML, CSS, JavaScript, images).
- The browser renders the page for the user.
HTTPS (HTTP Secure)
- HTTPS is the secure version of HTTP.
- Data is encrypted using TLS (Transport Layer Security) so that it cannot be read by third parties.
- HTTPS is identified by a padlock icon in the browser's address bar and the URL starting with https://.
- It is essential for online banking, shopping and any site handling personal data.
Exam Tip: Always mention encryption when comparing HTTP and HTTPS. HTTPS encrypts data in transit using TLS, preventing eavesdropping and man-in-the-middle attacks.
FTP (File Transfer Protocol)
FTP is used to transfer files between computers on a network or over the internet.
Key facts about FTP
- Used to upload files to a web server or download files from a server.
- Requires the user to provide a username and password for authentication (though anonymous FTP also exists).
- FTP transfers files in plain text — data is not encrypted.
- SFTP (Secure FTP) and FTPS add encryption for secure file transfers.
Common uses of FTP
- Web developers uploading website files to a hosting server.
- Downloading large files from a file server.
- Transferring files between office locations.
Email Protocols: SMTP and IMAP
Two main protocols are used for email:
SMTP (Simple Mail Transfer Protocol)
- Used to send emails from a client to a mail server, and between mail servers.
- SMTP pushes emails to the destination server.
- It handles outgoing mail only.
IMAP (Internet Message Access Protocol)
- Used to retrieve (receive) emails from a mail server to a client.
- Emails are stored on the server and can be accessed from multiple devices.
- Changes (read, delete, move) are synchronised across all devices.
- This is useful when you check email on your phone, tablet and laptop — they all stay in sync.
SMTP vs IMAP
| Feature | SMTP | IMAP |
|---|
| Direction | Sending emails | Receiving/retrieving emails |
| Function | Pushes email to server | Pulls email from server |
| Storage | Does not store emails | Emails stored on server |
| Synchronisation | N/A | Syncs across multiple devices |
POP3 (Post Office Protocol v3)
- An alternative to IMAP for retrieving email.
- Downloads emails from the server to the local device and typically deletes them from the server.
- Emails are only accessible on the device that downloaded them.
- Less commonly used today because IMAP is more flexible.
Other Important Protocols
| Protocol | Purpose |
|---|
| UDP | User Datagram Protocol — faster but less reliable than TCP; used for live streaming, gaming, VoIP |
| DHCP | Dynamic Host Configuration Protocol — automatically assigns IP addresses to devices on a network |
| SSH | Secure Shell — provides encrypted remote access to a computer |
Summary
- Protocols are standardised rules for data communication.
- TCP/IP is the core protocol suite of the internet — IP handles addressing, TCP handles reliable delivery.
- HTTP/HTTPS transfer web pages; HTTPS adds encryption.
- FTP transfers files between computers.
- SMTP sends emails; IMAP retrieves and synchronises emails across devices.
Exam Tip: You may be given a scenario (e.g. "Alice sends an email to Bob") and asked which protocols are involved. Think through each stage: SMTP to send, IMAP to receive, TCP/IP throughout, DNS to look up the mail server address.
Deeper dive: protocols, ports and handshakes
A protocol is a set of rules. Together, the protocols of the internet form a stack — each protocol uses the services of the protocol below it. AQA expects you to be able to name the protocol used at each stage of a typical interaction, identify whether it uses TCP or UDP, and know its conventional port number.