A journey of
a single request
Bartosz Legięć
Frontend developer @ Netguru

@bibix1999

legiec.io
💻
💻
01011010
0
1
0
1
1
0
1
0
0
1
0
1
1
0
1
0
1
0
0
1
0
1
0
Manchester code
0
1
0
1
1
0
1
0
1
1
1
0
1
0
0
1
0
1
0
0
1
100 ns = \tfrac{1}{10,000,000} s
0100
1000
0100
0101
0100
1100
10
0100
1000
0100
0101
0100
1100
10
E
H
L
0100
1000
0100
0101
0100
1100
10
ä
T
Preamble
Frame delimiter
MAC destinaiton
MAC source
7 octets
1 octet
6 octets
6 octets
Ethertype
Payload
Frame check sequence
Interpacket gap
2 octets
46-1500 ocetets
4 octets
12 octets
Preamble
1
1
0
1
0
1
0
1
0
1
0
0
1
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Frame delimeter
Data
Preamble
Frame delimiter
MAC destinaiton
MAC source
7 octets
1 octet
6 octets
6 octets
💻
💻
💻
💻
💻
💻
A
B
Internet Protocol
IP
💻
💻
💻
💻
💻
💻
A
B
192.168.9.2
192.131.9.2
10.0.5.2
10.0.5.3
10.0.5.4
10.0.6.7
10.0.6.10
10.0.6.11
10.0.5.5
10.0.6.13
192.131.0.0/16   > to 10.0.5.4 via em2.0
192.168.9.1/32   > Local via em1.0
10.0.6.0/24      > to 10.0.5.5 via em3.0
192.168.9.0/24   > to 10.0.5.4 via em1.0
192.131.9.0/24   > to 10.0.6.7 via em2.0
10.0.6.0/24      > to 10.0.6.7 via em3.0
192.168.9.0/24   > to 10.0.6.11 via em2.0
192.131.9.0/24   > Direct via em3.0
10.0.5.0/24      > to 10.0.6.11 via em2.0
Ethertype
Payload
Frame check sequence
Interpacket gap
2 octets
46-1500 ocetets
4 octets
12 octets
Options
Header Checksum
Source IP Address
TTL
Flags
Fragment offset
Identification
Packet Length
ECN
DSCP
IHL
Version
.
.
6
5
4
3
2
1
Destination IP Address
Protocol
Ethernet frame
IP packet
Options
Header Checksum
Source IP Address
TTL
Flags
Fragment offset
Identification
Packet Length
ECN
DSCP
IHL
Version
.
.
6
5
4
3
2
1
Destination IP Address
Protocol

👨‍💻

Root
server
TLD
Server
Authoritative
server
DNS
resolver
Hosting
server
.
.com
warsawjs
warsawjs
.com
.
TCP
SYN
SYN, ACK
ACK
22 bytes of data
ACK
FIN
ACK
FIN
ACK
seq=0
seq=0, ack=1
ack=1
seq=1
ack=23
seq=23
seq=24
seq=1
ack=2
Connection
established
CLIENT
SERVER
Ethernet frame
IP packet
TCP segment
HTTP
{"username":"xyz","password":"xyz"}
POST / HTTP/1.1
Host: example.com
User-Agent: curl/7.64.1
Accept: */*
Content-Type: application/json
Content-Length: 35
{"username":"xyz","password":"xyz"}
Host: example.com
User-Agent: curl/7.64.1
Accept: */*
Content-Type: application/json
Content-Length: 35
POST / HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 35
{"user":{"login": "xyz"}}
{"user":{"login": "xyz"}}
Content-Type: application/json
Content-Length: 35
HTTP/1.1 200 OK
Thank you