2.1

Domain 2 - Networking

Introduction to Networking

  • Computer networking refers to connecting two or more computing devices via a transmission medium to share resources and information.

  • These connections can be established over wired or wireless mediums, enabling devices to communicate and transfer data efficiently.

  • Networking is foundational for modern IT infrastructure, allowing functionalities like internet access, file sharing, and collaborative work environments.

Networking Protocols

  • A network protocol is a set of rules and standards governing the exchange of information between devices or systems.

    • It defines:

    • How data is transmitted, received, interpreted, and acted upon.

    • The methods by which devices identify one another.

    • Error handling procedures.

  • Protocols are analogous to social norms in human interaction, facilitating seamless communication between devices.

  • Without protocols, communication across networks would be chaotic, similar to a conversation where all participants speak different languages.

Networking Ports

  • A network port is a virtual endpoint where network connections start and end, identified by port numbers.

    • Each port number indicates a specific service or protocol, e.g., HTTP typically uses Port 80, while SMTP (email) uses Port 25.

  • Understanding ports is critical for network configuration and security, as managing these ports helps control data flow and protects against unauthorized access.

Transmission Control Protocol (TCP) vs. User Datagram Protocol (UDP)

  • Transport Protocols:

    • They handle the actual process of data transmission by breaking data into packets, transmitting them across the network, and then reassembling them at the destination.

  • TCP (Transmission Control Protocol):

    • Connection-oriented protocol that establishes a reliable connection before data transmission.

      • Utilizes a three-way handshake for connection establishment (ensuring the recipient is ready before sending data).

    • Ensures data packets are received in order, and can request retransmission in case of any data loss or errors, guaranteeing data integrity.

  • UDP (User Datagram Protocol):

    • Connectionless protocol that sends data without establishing a connection.

      • Faster but less reliable than TCP, as it does not guarantee data packet delivery (similar to sending a postcard).

    • It is often preferred for applications where speed is critical over accuracy (e.g., live video streaming, online gaming).

Common Networking Protocols and Their Port Numbers

  • File Transfer Protocol (FTP):

    • Standard protocol for transferring files between devices over a network, allowing users to upload/download files from/to a remote server.

    • Ports used: Port 20 (data transfer) and Port 21 (control connection).

    • Significant security limitation: it lacks encryption, transmitting data in plaintext, making it vulnerable to interception.

  • Secure Shell (SSH):

    • Provides a secure method for remote computer/server access, widely used for remote command execution.

    • Port used: Port 22.

    • Encrypts all data communications to protect against unauthorized access.

  • Telnet:

    • Allows users to log into remote computers but lacks security features, transmitting all data in plaintext.

    • Port used: Port 23.

    • Not suitable for sensitive operations due to data vulnerability.

  • Simple Mail Transfer Protocol (SMTP):

    • Used for sending emails between clients and servers.

    • Port used: Port 25.

    • Lacks encryption, leading to confidentiality concerns during email transmission.

  • Domain Name System (DNS):

    • Translates domain names into IP addresses, playing a crucial role in internet navigation.

    • Port used: Port 53 for DNS queries and responses.

  • Dynamic Host Configuration Protocol (DHCP):

    • Automates the configuration of devices on IP networks, enabling them to obtain IP addresses and network settings automatically.

    • Ports used: Port 67 and Port 68 (uses a four-step process: Discover, Offer, Request, Acknowledge).

  • Trivial File Transfer Protocol (TFTP):

    • A simpler and lightweight version of FTP, used for transferring files quickly without authentication or encryption.

    • Port used: Port 69.

  • Hypertext Transfer Protocol (HTTP):

    • The foundation for transmitting web content across the web, facilitating the retrieval and display of web pages.

    • Port used: Port 80 (not secure, lacks encryption).

  • Post Office Protocol version 3 (POP3):

    • An ancient method for retrieving emails from servers, allowing users to download and manage emails on a single device.

    • Port used: Port 110 (lacks encryption, posing security risks).

  • Network Basic Input/Output System (NetBIOS):

    • Facilitates file sharing and printer access in local area networks.

    • Ports used: Port 137 (name services), Port 139 (session services).

  • Internet Message Access Protocol (IMAP):

    • A modern method for handling emails, keeping messages on the server while allowing synchronization across multiple devices.

  • Simple Network Management Protocol (SNMP):

    • Used for monitoring and managing network devices (like routers, switches).

    • Ports used: Port 161 (requests), Port 162 (responses).

  • Lightweight Directory Access Protocol (LDAP):

    • Manages and accesses information in a network (acts like a directory or phonebook).

    • Port used: Port 389.

  • Hypertext Transfer Protocol Secure (HTTPS):

    • Secure version of HTTP, encrypting data to protect sensitive information.

    • Port used: Port 443 (ensures secure connections between servers and clients).

  • Server Message Block (SMB):

    • Used for shared access to files, printers, and more in network environments, especially in Windows settings.

    • Port used: Port 445.

  • Remote Desktop Protocol (RDP):

    • Allows remote desktop access, providing a graphical user interface for remote connections.

    • Port used: Port 3389.

Conclusion: TCP vs. UDP

  • TCP provides reliable, connection-oriented transmissions, suitable for applications requiring data integrity (e.g., HTTPS, SSH).

  • UDP facilitates faster, connectionless transfers, ideal for applications prioritizing speed over reliability (e.g., DHCP, TFTP).

  • Understanding the differences between these protocols aids in selecting the appropriate one based on operational needs, balancing reliability with efficiency.