Basic TCP analysis with Wireshark

Basic TCP analysis with Wireshark

How TCP connection is established and terminated. TCP is a reliable connection-based protocol that is used by many of the application layer protocols we use every day.

TCP is a reliable connection-based protocol that is used by many of the application layer protocols we use every day. HTTP, HTTPS, and FTP are only a few examples from the list. This is the first article in a series that illustrates the basics of the TCP protocol and its analysis using Wireshark. Basic knowledge of how to use Wireshark is needed.

What is TCP

There are many transport layer protocols, of which TCP and UDP are the most popular. TCP is an acronym for Transmission Control Protocol and it has the following characteristics

  • Connection based: In TCP, a connection is established between the two communicating hosts, and the state of this connection is maintained on the two hosts. Usually, the two hosts are named client and server and the client is the host who initiates the connection to the server.
  • Reliable: TCP is a reliable protocol. It will add a checksum to data and headers to ensure that the received bytes are exactly what was sent. Also, it monitors the state of transmitted packets and tries to do retransmission for packets that are lost on the way to their destination.

The Berkeley sockets API is the most common API used for TCP and you will almost find it in all major operating systems.

Connection establishment

The TCP is a connection between two hosts

  • Server: This host is normally listening on a certain IP address and a port number waiting for connections from clients
  • Client: This is the host that initiates the connection to the server

The TCP defines a 3-way handshake mechanism to initiate the connection.

networking tcp tcpdump tcp-ip wireshark neural networks

Bootstrap 5 Complete Course with Examples

Bootstrap 5 Tutorial - Bootstrap 5 Crash Course for Beginners

Nest.JS Tutorial for Beginners

Hello Vue 3: A First Look at Vue 3 and the Composition API

Building a simple Applications with Vue 3

Deno Crash Course: Explore Deno and Create a full REST API with Deno

How to Build a Real-time Chat App with Deno and WebSockets

Convert HTML to Markdown Online

HTML entity encoder decoder Online

Neural network: what is a neural network?

Neural networks, as their name implies, are computer algorithms modeled after networks of neurons in the human brain. Learn more about neural networks from Algorithmia.

A Comparative Analysis of Recurrent Neural Networks

Recurrent neural networks, also known as RNNs, are a class of neural networks that allow previous outputs to be used as inputs while having hidden states.

Recurrent Neural Networks for Multilabel Text Classification Tasks

The purpose of this project is to build and evaluate Recurrent Neural Networks(RNNs) for sentence-level classification tasks. Let's understand about recurrent neural networks for multilabel text classification tasks.

Neural Network on Beer Dataset

Artificial neural networks (ANNs), usually simply called neural networks (NNs), are computing systems vaguely inspired by the biological neural networks that constitute animal brains.

Convolutional Neural Network: How is it different from the other networks?

Convolutional Neural Network: How is it different from the other networks? What’s so unique about CNNs and what does convolution really do? This is a math-free introduction to the wonders of CNNs.