2.1: TCP/IP Networking Model Flashcards
TCP/IP model is commonly used when learning about and referring to TCP/IP protocols. It is a theoretical, layered model that classifies and organizes the tasks hosts perform to prepare data for transport across the network. The TCP/IP model is a widely used method for understanding and talking about network communications. However, remember that it is only a theoretical model that defines standards for programmers and network administrators. It is not a model of actual physical layers.
TCP/IP model
The TCP/IP model consists of four separate layers, each defining certain protocols and actions that allow successful communications between two systems over a network
Media Access Control (MAC)
address
A MAC address is a unique, physical address on the network port in your workstation.
File Transfer Protocol (FTP)
FTP (File Transfer Protocol) is a standard network protocol used for transferring files between a client and a server on a computer network. It provides a straightforward method for uploading, downloading, and managing files on remote servers.
- Description: FTP operates on the client-server model, where a client initiates a connection to a server to transfer files. It uses separate control and data connections: the control connection is used for sending commands and receiving responses, while the data connection is used for transferring actual file data.
- Functionality: FTP supports various operations, including uploading (put), downloading (get), renaming, deleting, and listing files and directories on the server. It allows users to authenticate themselves using a username and password to access their designated directories on the server.
- Modes: FTP supports two modes of operation: active mode and passive mode. In active mode, the server initiates the data connection to the client, while in passive mode, the client initiates the data connection to the server. Passive mode is often used to bypass firewall restrictions.
- Security: FTP originally transmitted data in plaintext, making it vulnerable to eavesdropping attacks. To address this, secure versions of FTP, such as FTPS (FTP Secure) and SFTP (SSH File Transfer Protocol), have been developed, which add encryption and authentication mechanisms to ensure secure data transfer.
- Usage: FTP is commonly used for uploading and downloading files to and from web servers, managing website content, and transferring large files between computers on a network. It is also widely used in industries such as web development, publishing, and software distribution.
In summary, FTP is a widely adopted protocol for transferring files over a network, providing a simple and efficient method for file management and sharing between clients and servers. While traditional FTP lacks security features, secure alternatives like FTPS and SFTP offer encryption and authentication to ensure secure data transfer.
Simple Mail Transport protocol (SMTP)
SMTP (Simple Mail Transfer Protocol) is a standard protocol used for sending and receiving email messages over the internet. It is primarily responsible for the transmission of emails from a sender’s email client to the recipient’s email server.
- Description: SMTP operates on the application layer of the TCP/IP protocol suite. It provides a set of rules and commands that govern the exchange of email messages between mail servers. SMTP clients (mail user agents) initiate connections to SMTP servers (mail transfer agents) to send outgoing messages.
- Functionality: SMTP defines how email messages are formatted, addressed, and delivered between mail servers. When a sender composes an email using an email client, the client communicates with an SMTP server to transmit the message. The SMTP server then routes the message to the recipient’s email server, which stores it until the recipient retrieves it using their email client.
- Reliability: SMTP ensures reliable delivery of email messages by employing error-checking mechanisms and message queuing. If a recipient’s email server is temporarily unavailable, SMTP servers will retry delivery at regular intervals until successful transmission or until the message expires.
- Authentication: SMTP servers may require authentication from clients before accepting outgoing email messages. This helps prevent unauthorized use of the server for sending spam or malicious emails.
- Extensions: SMTP has been extended over time to include additional features such as SMTP authentication, message encryption (SMTPS), and email forwarding (ESMTP). These extensions enhance security and functionality, making SMTP more robust and versatile for modern email communication.
In summary, SMTP is a vital protocol for the transmission of email messages over the internet, enabling seamless communication between email clients and servers. It provides a standardized method for sending, routing, and delivering email messages while ensuring reliability and security through various extensions and authentication mechanisms.
Transmission Control Protocol (TCP)
TCP is a Transport layer protocol.
Summary: TCP provides reliable and ordered data transmission with features like error checking and flow control, making it suitable for applications where data integrity is paramount.
Description: TCP is a connection-oriented protocol that provides reliable, ordered, and error-checked delivery of data between applications running on hosts in a network. It operates at the transport layer of the TCP/IP model.
Functionality: TCP establishes a connection between two hosts before transmitting data. It ensures that data packets are delivered in the correct order, retransmits lost packets, and detects and corrects errors. This makes TCP ideal for applications that require guaranteed delivery of data, such as web browsing, email, and file transfer.
Features: TCP includes features such as flow control, congestion control, and error recovery mechanisms to maintain the integrity and reliability of data transmission.
User Datagram Protocol (UDP)
UDP is a Transport layer protocol.
Summary: UDP offers low-latency, connectionless communication, making it ideal for real-time applications where speed is prioritized over reliability.
Description: UDP is a connectionless protocol that provides a minimalistic and unreliable mechanism for transmitting data between applications. Like TCP, it operates at the transport layer of the TCP/IP model.
Functionality: UDP does not establish a connection before sending data and does not guarantee delivery, order, or error checking. It simply encapsulates data into packets and sends them to the destination without waiting for acknowledgments or retransmissions.
Usage: UDP is commonly used in applications where real-time communication is crucial, such as online gaming, live video streaming, DNS (Domain Name System) queries, and Voice over IP (VoIP). It offers lower latency compared to TCP but sacrifices reliability.
Internet Work Protocol (IP)
IP (Internet Protocol) is a core protocol in the TCP/IP protocol suite, which governs how data packets are transmitted across networks. It provides the addressing and routing mechanism that enables devices to communicate with each other on the internet.
- Description: IP is a network-layer protocol responsible for addressing packets and routing them across interconnected networks. It provides a standardized format for packet headers, including source and destination IP addresses, which are used by routers to forward packets toward their destination.
- Functionality: IP operates in a best-effort delivery model, meaning it does not guarantee packet delivery, order, or reliability. Instead, it focuses on efficiently routing packets through networks, choosing the best available path based on routing tables and algorithms.
- Versions: The two main versions of IP in use today are IPv4 and IPv6. IPv4, the older version, uses 32-bit addresses, limiting the number of available IP addresses, while IPv6 uses 128-bit addresses, providing a vastly expanded address space to accommodate the growing number of devices connected to the internet.
- Addressing: IP addresses are numerical identifiers assigned to devices on a network. IPv4 addresses are typically represented in dotted-decimal notation (e.g., 192.0.2.1), while IPv6 addresses are represented in hexadecimal notation (e.g., 2001:0db8:85a3:0000:0000:8a2e:0370:7334). IP addresses are essential for routing packets to their intended destinations.
- Routing: IP routers use routing tables to determine the next hop for forwarding packets toward their destination. Routers examine the destination IP address of incoming packets and compare it to entries in their routing tables to determine the appropriate outgoing interface.
In summary, IP is a foundational protocol that enables devices to communicate across networks by providing addressing and routing capabilities. It forms the basis of internet communication, allowing data packets to traverse complex networks and reach their intended destinations.
Broadcast domain
A broadcast domain is a smaller region of a larger network.
Virtual LAN
A virtual LAN is a smaller region of a larger network.
Data Link
Data Link is a sublayer of the Link layer.
Physical
Physical is a sublayer of the Link layer.
HTTP(S)
HTTP (Hypertext Transfer Protocol) and its secure counterpart HTTPS (Hypertext Transfer Protocol Secure) are fundamental protocols used for communication on the internet.
HTTP:
- Description: HTTP is a protocol that governs how data is transferred between a client (such as a web browser) and a server (where a website is hosted) over the internet. It operates on top of the TCP/IP protocol suite.
- Functionality: It facilitates the request-response cycle. A client sends an HTTP request to a server, which then processes the request and returns an HTTP response containing the requested data (such as a web page).
- Statelessness: HTTP is stateless, meaning each request from a client to a server is independent and unrelated to any previous requests. This simplifies implementation and enhances scalability but can pose challenges for maintaining session information.
HTTPS:
- Description: HTTPS is an extension of HTTP that adds a layer of encryption using SSL/TLS protocols to secure data transmission over the internet. It encrypts the data exchanged between the client and server, ensuring confidentiality and integrity.
- Security: HTTPS encrypts sensitive data, such as login credentials, payment information, and personal details, preventing unauthorized access or tampering by malicious actors.
- Authentication: HTTPS also provides authentication, verifying the identity of the server to the client, thus mitigating the risk of man-in-the-middle attacks.
In summary, HTTP is the foundation of data communication on the web, while HTTPS enhances security by encrypting and securing the data exchanged between clients and servers.
Application layer
The Application layer, also called the Process-to-Process layer, corresponds to the Session, Presentation, and Application layers of the OSI model.
Transport layer
The Transport layer, also called the Host-to-Host layer, is comparable to the Transport layer of the OSI model. It is responsible for error checking and reliable packet delivery. The Transport layer breaks the data stream into segments and assigns sequence numbers so that the segments can be reassembled correctly at the destination.
Internet layer
The Internet layer is comparable to the Network layer of the OSI model. It is responsible for moving packets through a network. This involves addressing and making routing decisions to identify how the packet traverses the network.