Networking Protocols & Technologies

Protocol / Technology
OSI Layer
Purpose / Main Function
How It Works
Security Risks / Vulnerabilities
DevOps / Web / Cybersecurity Use
Tools & Commands

OSI Model

Conceptual

Standard model for network architecture

7 layers: Physical, Data Link, Network, Transport, Session, Presentation, Application

Helps identify weak layers for threat modeling

Training / architecture reference

TCP/IP Model

Conceptual

Practical 4-layer model

Layers: Link, Internet, Transport, Application

Mapping attacks to TCP/IP easier than OSI

Network design, cloud infra

Ethernet (IEEE 802.3)

L1/L2

Wired LAN communication

Frames transmitted over physical media with MAC addressing

VLAN hopping, ARP spoofing

LAN configuration, VLAN setup

ifconfig, ethtool, Wireshark

Wi-Fi (IEEE 802.11)

L1/L2

Wireless LAN

Devices communicate via radio (2.4, 5, 6 GHz)

WPA2/WPA3 cracking, Evil Twin

Wireless access, DevOps IoT networks

Aircrack-ng, Kismet, iwconfig

PPP (Point-to-Point Protocol)

L2

Establish point-to-point links

Encapsulates multiple network protocols

Weak PAP/CHAP authentication

Legacy network links

pppd, Wireshark

Frame Relay

L2

WAN virtual circuits

Packet switching over dedicated lines

Mostly obsolete, misconfiguration

Legacy WAN simulations

GNS3

ATM

L1/L2

Cell-switched WAN

Fixed-size cells, QoS support

Rarely attacked today

Legacy telecom labs

Wireshark

IPv4

L3

Host addressing

32-bit addresses, best-effort delivery

IP spoofing, fragmentation attacks

Network config, firewall rules

ping, traceroute, ip route

IPv6

L3

Modern addressing

128-bit addresses, stateless autoconf

NDP spoofing, rogue RA

Cloud networks, IPv6 readiness

ping6, ip -6 route

ICMP

L3

Diagnostics

Ping, traceroute, error messages

ICMP flood, tunneling, reconnaissance

Network monitoring

ping, traceroute, hping3

ARP / NDP

L2/L3

IP ↔ MAC mapping

Broadcast request/reply (ARP) or ICMPv6 messages (NDP)

ARP poisoning, MITM

LAN security

arp, Wireshark, ndp

BGP

L3

Inter-domain routing

Exchanges routing info between AS

Route hijack, prefix injection

Internet backbone configuration

BGPmon, router CLI

OSPF / RIP / IS-IS

L3

Intra-domain routing

OSPF link-state, RIP distance-vector

Route injection, slow convergence

LAN/WAN routing

Wireshark, router CLI

MPLS

L2.5 / L3

Label-switched routing

Uses labels for paths

Misconfiguration can leak traffic

ISP, VPN, data center traffic engineering

Router CLI, Wireshark

TCP

L4

Reliable transport

3-way handshake, segmentation, retransmission

SYN flood, session hijacking

Web, database connections

netstat, Wireshark, nmap

UDP

L4

Fast, connectionless transport

Datagram delivery, no ACK

Amplification attacks (DNS, NTP)

Streaming, DNS

tcpdump, Wireshark

SCTP

L4

Reliable transport, multi-stream

Multi-homing, chunk-based data

Fuzzing, flooding attacks

Telecom signaling, 4G/5G

Wireshark

QUIC

L4

Modern transport for HTTP/3

Runs over UDP, combines TCP+TLS features

New protocol, potential undiscovered attacks

Web servers, cloud apps

Chrome DevTools, Wireshark

DNS

L7

Name resolution

Maps names to IP

Cache poisoning, amplification attacks

Web services, DevOps

dig, nslookup, tcpdump

DHCP

L7

Auto-IP assignment

Broadcast discovery → server assigns lease

Rogue DHCP, MITM

Cloud provisioning, network automation

dhclient, Wireshark

NAT / PAT

L3/L4

Address translation

Private IP → Public IP, Port mapping

Complicates logging, NAT traversal attacks

Cloud, firewall setup

iptables -t nat, ip route

VLAN / VXLAN

L2

Network segmentation

Tags frames for logical separation

VLAN hopping

Kubernetes, SDN networks

Switch config, Wireshark

STP / RSTP / MSTP

L2

Prevent loops

Build spanning tree

BPDU attacks

Network stability

Switch CLI

QoS / DiffServ

L2/L3

Prioritize traffic

Packets tagged with priority

Covert channels

VOIP, streaming

Router config, tc

Proxy (HTTP/SOCKS)

L7

Intermediary for traffic

Client requests → proxy → server

Logging, MITM

Web debugging, caching

Squid, Nginx

Load Balancing

L7

Distribute requests

Round-robin, least connections

Misconfig = DoS

Web apps, HA

HAProxy, Nginx

HTTP / HTTPS / HTTP2 / HTTP3

L7

Web traffic

Request-response model

MITM, XSS, TLS downgrade

Web development, API

curl, Wireshark

FTP / FTPS / SFTP / TFTP

L7

File transfer

Command/data channels

Plaintext credentials, brute force

DevOps, backups

FileZilla, scp, tftp

SMTP / IMAP / POP3

L7

Email send/receive

Message delivery protocols

Open relay, spam, phishing

Web/email servers

telnet, Wireshark

SSH / Telnet

L7

Remote shell

Encrypted login (SSH) / plaintext (Telnet)

Bruteforce, credential theft

Server admin, DevOps

ssh, telnet

RDP / VNC

L7

Remote desktops

Graphical remote access

Brute force, MITM

Server access, IT support

RDP client, VNC viewer

SNMP

L7

Network management

Device monitoring

Default community strings, misconfig

Network monitoring

snmpwalk, Wireshark

LDAP / Kerberos / RADIUS / TACACS+

L7

Authentication & directory

Centralized auth, tickets (Kerberos)

Weak passwords, replay attacks

Identity management, SSO

ldapsearch, Wireshark

NTP

L7

Time synchronization

Hierarchical servers (stratum)

Reflection/amplification

Logging, security events

ntpq, Wireshark

Syslog

L7

Centralized logging

Sends logs to server

Unencrypted logs

Monitoring, auditing

rsyslog, logger

gRPC / SOAP / REST

L7

Service-to-service communication

RPC over HTTP/2 or SOAP XML

Message injection, MITM

Microservices

Postman, curl, Wireshark

MQTT / AMQP / CoAP

L7

IoT messaging

Pub/sub, queue-based

Weak auth, botnets

IoT / cloud apps

Mosquitto, RabbitMQ, Wireshark

IPsec / SSL / TLS / OpenVPN / WireGuard / L2TP / PPTP

L3/L4/L7

VPN / secure channels

Encryption & tunneling

Key leaks, weak ciphers

Remote access, secure connections

openssl, wg, openvpn

SIP / RTP / H.323

L7

VoIP / multimedia

Signaling (SIP/H.323), media (RTP)

Call hijack, SPIT

VoIP services

Wireshark, SIPp

SMB / CIFS / NFS / iSCSI / FCoE

L7

File & block storage

Network file/block access

Ransomware, lateral movement

Storage & backups

smbclient, mount, iscsiadm

Modbus / DNP3 / IEC 60870-5-104 / OPC UA

L7

Industrial protocols

SCADA / PLC comms

ICS attacks

OT security, automation

Wireshark, SCADA simulators

PROFINET / EtherCAT / CAN

L7

Industrial fieldbus

Deterministic device comms

OT attacks

Industrial automation

Wireshark, CANtools

ZigBee / LoRaWAN

L1/L2/L7

IoT sensor network

Low-power wireless mesh/star

Weak encryption

Smart home, IoT

Zigbee sniffers, LoRa gateways |


The OSI model. Basic Information

L
Name of the level
PDU/data type

7

Application

Host-level data

host level

6

Presentation

Host-level data

host level

5

Session

Host-level data

host level

4

Transport

Segment/Datagram

host level

3

Network

Package

media layers

2

Channel

Frame

media layers

1

Physical

Bit

media layers

(A PDU is a data type in this case)

The OSI (Open Systems Interconnection) model is a conceptual model that describes how different network protocols interact with each other. It consists of seven levels, each of which performs certain functions.:

  • Application layer: Host-level data. Provides network services to end-user applications. Examples: HTTP, FTP, SMTP.

  • Presentation level: Host-level data. Responsible for formatting, encrypting, and compressing data so that it can be understood by the application.

  • Session level: Host level data. Manages communication sessions between applications by establishing, maintaining, and terminating connections.

  • Transport level: Segment/Datagram. Ensures reliable and orderly data delivery between end systems. Examples: TCP, UDP.

  • Network layer: Package. It is responsible for logical addressing (IP addresses) and packet routing between different networks. Examples: IP, ICMP.

  • Channel (Data Link) level: Frame. Enables data transfer between devices on the same local network using physical (MAC) addresses. Examples: Ethernet, Wi-Fi.

  • Physical level: Bit. It is responsible for the physical transmission of bits over network media (cables, radio waves). Examples: Ethernet cables, Wi-Fi radios.

Encapsulation is the process of "packing data". Encapsulation is the process of adding service information (headers) to data at each level of the network model (for example, TCP/IP or OSI). Decapsulation is the opposite.

The physical layer

It is responsible for the exchange of physical signals between physical devices, hardware. Physical layer devices operate with bits. They are transmitted over wires (for example, through fiber) or without wires (for example, via Bluetooth or IRDA, Wi-Fi, GSM, 4G, and so on).

Channel level

The second level solves the problem of addressing when transmitting information. The channel layer receives the bits and turns them into frames (also "frames"). The task here is to generate frames with the address of the sender and recipient, and then send them over the network. The channel layer has two sublevels, MAC and LLC. MAC (Media Access Control) is responsible for assigning physical MAC addresses, while LLC (Logical Link Control) verifies and corrects data and manages its transmission. Switches operate at the second OSI level, their task is to transfer the generated frames from one device to another, using only physical MAC addresses as addresses.

Network layer

At the third level, a new concept appears — routing. For this task, third—level devices were created - routers (they are also called routers). Routers receive the MAC address from switches from the previous layer and build a route from one device to another, taking into account all potential network problems. The ARP protocol (Address Resolution Protocol) is actively used at the network level. It converts 64-bit MAC addresses to 32-bit IP addresses and vice versa, thereby ensuring data encapsulation and decapsulation.

Transport level

His main task is to transport packages. When transmitting data that is most sensitive to losses at the transport layer, the TCP protocol is used to control the integrity of the delivered information. For multimedia files, small losses are not so important, the delay will be much more critical. To transmit such data, which is most sensitive to delays, the UDP protocol is used, which allows for communication without establishing a connection.

Session level

The session layer is responsible for maintaining a communication session. The fifth level provides a service to the following: it manages the interaction between applications, opens up the possibility of synchronizing tasks, completing a session, and exchanging information. An example of the fifth level is a video call over the network. During a video call, it is necessary that two data streams (audio and video) run synchronously. When a third person is added to the conversation of two people, it will be a conference. The task of the fifth level is to make sure that the interlocutors can understand who is speaking now.

Presentation level

The sixth level is concerned with representing data (which is still a PDU) in a way that is understandable to humans and machines. For example, when one device can display text only in ASCII encoding, and the other only in UTF-8, text translation from one encoding to another occurs at the sixth level. The sixth level also deals with the presentation of images (in JPEG, GIF, etc.), as well as video and audio (in MPEG, QuickTime). In addition to the above, the sixth level deals with data encryption, when it needs to be protected during transmission.

The application layer

The application layer is what users interact with, a kind of graphical interface for the entire OSI model, with which it interacts to a minimum. The task of the seventh level is to use its protocols so that the user sees the data in a way that he understands.

The network layer

IP protocol

The protocol of inter-network communication. The purpose of the protocol is to connect networks built using different link layer technologies. It is used for data transmission (without a guarantee of delivery, without preserving the order of messages). To perform its functions, the protocol defines its own packet format. The main information fields of the packet header are:

  • The IP addresses of the sender and recipient are intended to identify the sender and recipient (see IP addressing);

  • Packet Lifetime (Time To Live, TTL) - defines the time that an IP packet can be on the network, and is designed to prevent "stray packets" from cluttering up the network;

  • fields intended for packet fragmentation (see IP fragmentation);

  • fields designed to control packet processing (packet and header length, header checksum, service type, etc.).

Pv4 uses a 32-bit address scheme, allowing it to store 2^32 addresses (4.19 billion addresses). IPv6 is a 128-bit IP address that supports 2^128 Internet addresses in total. Using IPv6 not only solves the problem of limited network address resources, but also removes barriers for many Internet-connected devices.

ICMP Protocol

It is used to diagnose network connectivity issues. In simple terms, ICMP helps determine whether a packet can reach its destination address within a specified time frame. ICMP is usually used by routers and third-level devices. The second, and perhaps one of the most popular uses of ICMP are the ping and traceroute utilities. The term “ping" is related to the ICMP protocol, and “ping" a host means sending ICMP packets in order to understand whether the target device is responding to them. The traceroute command allows you to find out where the package is currently located and why it cannot be delivered along the specified route.

OSPF Protocol

Dynamic routing protocol based on link-state technology (link-state technology). Where does OSPF start? After establishing a neighborhood between the routers— after activating OSPF on the router interfaces, the routers begin to send Hello messages. This message is sent to the multicast address 224.0.0.5 every 10 seconds (Hello Timer).

Stages of OSPF operation

Studying network topology:

  • Routers study connected networks and their nearest neighbors.

  • Topology information is distributed throughout the network via an avalanche link (flooding)

Calculating the cost of routes in the network:

  • It is performed after the full network configuration is known.

  • Each router performs the calculation independently

Updating network configuration information:

  • Routers check the availability of neighbors

  • Sending information about network configuration changes

RIP Protocol

RIP is probably the oldest (relative to the listed) routing protocol. It is used in small networks. Periodically (once every 30 seconds), each router broadcasts a copy of its routing table to all neighboring routers that it is directly connected to. The receiving router looks at the table. If there is a new path or a message about a shorter route in the table, or there have been changes in the length of the path, these changes are recorded by the recipient in his route table.

ARP Protocol

Address resolution protocol. The ARP protocol allows you to automatically determine the MAC address of a computer by its IP address. The protocol operates in the request-response mode.

Transport level

TCP Protocol

TCP is a transport protocol for data transmission in TCP/IP networks that pre–establishes a connection to the network. It runs slower, while ensuring 100% delivery of all packages. Before starting data exchange, this protocol requires establishing a connection between two hosts. This protocol is highly reliable because it allows you not to lose data during transmission, requests confirmation of receipt from the receiving party and, if necessary, resends the data. At the same time, the data packets sent retain the sending order, that is, we can say that the data transmission is ordered. The disadvantage of this protocol is the relatively low data transfer rate, due to the fact that reliable and orderly delivery requires additional overhead costs.

UDP Protocol

UDP is a transport protocol that transmits datagram messages without the need to establish an IP network connection. It works faster, but it does not guarantee delivery of all packages.

PPTP protocol

A point-to-point tunnel protocol that allows a computer to establish a secure connection to a server by creating a special tunnel in a standard, unsecured network. PPTP places (encapsulates) PPP frames in IP packets for transmission over a wide-area IP network, such as the Internet. PPTP can also be used to establish a tunnel between two local networks. The RTP uses an additional TCP connection to service the tunnel.

L2TP Protocol

In computer networks, a tunnel protocol used to support virtual private networks. Presentation level

TLS Protocol

The TLS (Transport Layer Security) protocol is one of the most popular protocols designed to establish a secure communication channel on the Internet. It is based on the SSL (Secure Sockets Layer) protocol specification. Cryptographic protocols that provide secure data transmission in a computer network. They are widely used in web browsers, as well as when working with email, instant messaging, and IP telephony. A TLS-protected connection has one or more of the following properties:

  • Security: symmetric encryption protects the transmitted information from being read by unauthorized persons.

  • Authentication: The "identity" of the connection participant can be verified using asymmetric encryption.

  • Integrity: Each message contains a code (Message Authentication Code, MAC), which can be used to verify that the data has not been changed or lost during transmission.

Since most communication protocols can be used with or without TLS/SSL, when establishing a connection, it is necessary to explicitly indicate to the server whether the client wants to install TLS. One way to achieve this is to use a port where the connection is always established using TLS (for example, 443 for HTTPS). Another way is to use a special command to the server from the client to switch the connection to TLS (for example, STARTTLS for email protocols).

The application layer

HTTP/HTTPS Protocol

HTTP Protocol, or Hyper Text Transfer Protocol, is a protocol for transferring hypertext markup that is used to transfer data on the Internet.

HTTPS is not really a protocol. This extension of the HTTP protocol is a combination of two protocols: HTTP and SSL or HTTP and TLS.

The HTTP server uses the same well-known TCP port 80 (or port 443 for HTTPS) to send responses to client commands. When the HTTP server completes processing the client's command, it returns an ASCII response string that includes a 3-digit numeric status code. The client's software uses this numeric response to determine whether the operation was successful or failed.

SMTP Protocol

The mail transfer protocol.

FTP protocol

An access protocol designed for remote file transfer. In simple words, FTP allows you to view the contents of folders on a remote server via the Internet. Technically, an FTP server is a computer that external users connect to. They run a special FTP client on their computers that attempts to connect. The client allows you to upload and download files from the server. For communication, port 21 is usually used, which is open on the server computer by default. The client connects to it and goes to the control channel.

SSH Protocol

This is a special protocol for transferring data in safe mode. It is very often used for remote control of computers and devices over a network. Port 22.

BGP Protocol

This is the main dynamic routing protocol that is used on the Internet. It is used for autonomous systems.

Routers using the BGP protocol exchange information about network availability. Along with network information, various attributes of these networks are transmitted, which BGP uses to select the best route and configure routing policies. One of the main attributes that is transmitted with route information is a list of autonomous systems through which this information has passed. This information allows BGP to determine where the network is located relative to autonomous systems, eliminate routing loops, and can also be used to configure policies. Port 179.

DHCP protocol

Protocol for automating the assignment of an IP address to a client. It is widely used in modern networks. An IP address can be assigned manually to each client, i.e. to a computer on the local network. But in large networks, this is very time-consuming, and besides, the larger the local network, the higher the probability of a setup error increases. Therefore, the DHCP protocol was created to automate IP assignment. In addition to automating the IP configuration process, DHCP makes it easier to diagnose connections and switch from one subnet to another, leaving notifications for the system administrator in the logs.

When the DHCP server allocates an IP from an area, it leaves a record stating that this address is reserved for the client, indicating the IP expiration date. This period of validity is called the lease time. The rental period can range from 24 hours to several days, weeks or even months, it is set in the settings of the server itself.

The DNS Protocol

DNS (Domain Name System, domain Name System) is a technology that provides the browser with the ability to find a specific site by its name using DNS servers.

The domain name system does not work in a virtual space, but on certain physical devices. All domain data is stored in record format on computers equipped with the appropriate software.

The user enters the domain name in the browser's address bar, and the domain name converter accesses the DNS server. After receiving the IP address, the server transmits it to the user's browser.

What is the address?

First, we access our database (if we have already searched for this site before), if not, we go to the operating system database (if we have already entered the address, but for example we deleted the cache, the hosts file), if not, we access the database of our provider (beeline, MTS), if not – we turn to the root DNS server (domain zones of the country), there are 13 of them in total.

RDP Protocol

The RDP protocol is a protocol for connecting a user to a remote desktop via a terminal server. The principle of operation of RDP is based on the TCP protocol. The client-server connection takes place at the transport layer. After initialization, the user authenticates. In case of successful confirmation, the server transfers control to the client.

The RDP protocol internally supports virtual channels through which additional operating system functions are transmitted to the user, for example, you can print a document, play a video, or copy a file to the clipboard.

SMB Protocol

The SMB protocol is a network protocol for file sharing that allows computer applications to read and write files, as well as request services from server programs on a computer network. The SMB protocol can be used on top of TCP/IP or other network protocols. Using the SMB protocol, an application (or the user using it) can access files and other resources of a remote server. This allows applications to read, create, and update files on a remote server. SMB can also communicate with any server program that is configured to receive SMB client requests.

LDAP Protocol

The LDAP Protocol, or Lightweight Directory Access Protocol, is an open protocol used to store and retrieve data from a directory with a hierarchical structure. Typically used to store information about an organization, its assets, and users, LDAP is a flexible solution for defining any type of entity and its properties.

LDAP, or Lightweight Directory Access Protocol, is a communication protocol that defines the methods in which a directory service can be accessed. More generally, LDAP shapes the way data inside a directory service should be presented to users, defines the requirements for the components used to create data records inside a directory service, and describes the way in which various primitive elements are used to compose records.

Telnet Protocol

The TCP-based telnet protocol allows you to send simple text commands to a remote server to manually manage processes and enable interaction between them. Despite the widespread switch to SSH, the utility continues to be widely used.

Last updated

Was this helpful?