LEVEL 7
কম্পিউটার নেটওয়ার্কিং
Computer Networking
এই মডিউল যে প্রশ্নের উত্তর দেয়ব্রাউজারে `https://example.com` লিখে Enter চাপলে ঠিক কী কী ঘটে?
Networking শেখা মানে layer-এর নাম মুখস্থ করা না। মানে একটা packet-কে অনুসরণ করা — আপনার NIC থেকে বেরিয়ে switch, router, ISP, submarine cable পেরিয়ে server পর্যন্ত, আর ফেরত।
লেসন
- 01Physical Layer — voltage, light, radio থেকে bitপুরো internet journey-র ভূগর্ভস্থ তলা — আপনার packet তারে ভোল্টেজ, কাচে আলোর pulse, বাতাসে রেডিও তরঙ্গ হয়ে কীভাবে চলে, আর কোথায় কোথায় পদার্থবিজ্ঞান গতির সিলিং টেনে দেয়।
- 02Ethernet ও Link Layer — frame, MAC, collision-এর অতীতআজকের packet journey-র প্রথম container — Ethernet frame-এর byte-level dissection, MAC address-এর anatomy, আর collision detection-এর ৩০ বছরের জীবন-মৃত্যু।
- 03Switch ও ARP — MAC address কে কোথায় পাঠাব জানাFrame-টা গেল gateway-র দিকে — কিন্তু switch জানল কোন port-এ? আর laptop জানল gateway-র MAC? MAC-learning আর ARP-এর দুই-স্তরের 'কে কোথায়' সমাধান।
- 04IP Datagram — best-effort delivery-র contractContinent-crossing-এর চুক্তিপত্র — 20-byte header-এর bit-level dissection, best-effort-এর দর্শন, আর fragmentation-যুগের শেষ হওয়ার গল্প।
- 05IPv4 Addressing, Subnetting, CIDR — ঠিকানার গণিতইন্টারনেটের address-book-এর গণিত — binary fluency থেকে classful-যুগের অপচয়, CIDR-এর বিপ্লব, subnet-splitting-এর হাতে-কলমে walkthrough, আর aggregation-এ যে সঞ্চয়ে আজকের routing table টিকে আছে।
- 06IPv6 — 128-bit ঠিকানা ও নতুন header-এর দর্শন৪.৩ বিলিয়ন ঠিকানা ফুরিয়ে গেল যখন, ইন্টারনেট নতুন ঠিকানা-দর্শন নিল — 128-bit, fixed 40-byte header, checksum-শূন্য forwarding, আর broadcast-বিহীন এক নতুন জগৎ।
- 07Routing ও BGP — packet যেভাবে continent পেরোয়আপনার packet Sydney পৌঁছায় কীভাবে — longest-prefix-match-এর গণিত, RIP-র অসীম-গণনা দুর্ঘটনা, OSPF-এর ভেতরের Dijkstra, আর সেই BGP যেখানে টাকা দূরত্বকে হার মানায়।
- 08NAT — address শেষ হয়ে যাওয়ার hack যা স্থায়ী হয়ে গেল1994-এর এক temporary patch — public IP না থাকা device-গুলোকে ইন্টারনেটে ছুড়ে দেওয়ার hack — যেভাবে পুরো ইন্টারনেটের default হয়ে বসে গেল, আর end-to-end connectivity কীভাবে hostage হলো।
- 09ICMP, ping, traceroute — network-এর stethoscopeping আর traceroute যে ICMP packet-গুলো ব্যবহার করে সেগুলোর type/code গোছানো anatomy, traceroute-এর TTL দিয়ে রাস্তার প্রতিটা router-কে কথা বলানোর চতুর কৌশল, আর ICMP বন্ধ করার লুকানো খরচ।
- 10UDP — connectionless-এর সরলতা8-byte header-এর সবচেয়ে ছোট transport protocol — কী ছেড়ে দিলে কী পাওয়া যায়, ones'-complement checksum-এর হাতে-কলমে গণিত, আর কোন application কেন এই অনিরাপদ দেখানো পথটাই বেছে নেয়।
- 11TCP — three-way handshake, state machine, seq/ackএকটা connection জন্ম নেয়-মরে কীভাবে — SYN-এ শুরু, TIME_WAIT-এ শেষ; পুরো TCP state machine-কে packet-by-packet ধরে অনুসরণ, আর 'কেন ঠিক তিনটা ধাপ' প্রশ্নের ৪০ বছরের উত্তর।
- 12TCP Reliability — ack, retransmission, RTO, fast recoveryহারানো packet, উল্টো ক্রম, ভুল সন্দেহ — wire-এর সব অরাজকতার উপর দাঁড়িয়ে TCP কীভাবে ordered byte-stream promise রাখে; EWMA থেকে SACK পর্যন্ত প্রতিটা যন্ত্রাংশ trace সহ।
- 13Congestion Control — slow start, Reno, CUBIC, BBR১৯৮৬-এ internet গলাটা চেপে মরছিল — TCP-র congestion control-ই তা থেকে ফিরিয়ে এনেছে; slow start থেকে BBR পর্যন্ত তিন প্রজন্মের অ্যালগরিদম, sawtooth-এর ন্যায়বিচার, আর bufferbloat-এর আধুনিক সংকট।
- 14Sockets API ও kernel stack — syscall থেকে wiresocket আসলে একটা file descriptor যার পেছনে kernel-এর protocol state machine; ছয়টা syscall-এর জীবনচক্র TCP state-এর সাথে মিলিয়ে পড়ুন, আর একটা byte কীভাবে write() থেকে NIC-এর wire পর্যন্ত যায় সেই পথ হাঁটুন।
- 15DNS — phonebook যা internet ধরে রাখেDNS একটা বিতরণকৃত গাছ — root থেকে authoritative পর্যন্ত delegation-এর সিঁড়ি বেয়ে নাম ঠিকানায় বদলায়, cache আর TTL সেই খরচ কয়েকগুণ কমিয়ে রাখে, আর wire-এর নিচে চলে ছোট্ট একটা binary protocol যা আজ আমরা নিজের হাতে parse করব।
- 16DHCP — wifi join করলেই address কোথা থেকে আসেনতুন ডিভাইসে IP নেই, তাই সে কারো ঠিকানাও জানে না — DHCP এই paradox সমাধান করে link-layer broadcast-এর উপর DORA নাটক চালিয়ে, তারপর lease দিয়ে ঠিকানাটা ভাড়া দেয়।
- 17TLS 1.3 — handshake, certificate chain, আর ভরসার গণিতTCP connection হলেই TLS শুরু — এক রাউন্ড-ট্রিপে key exchange, certificate chain যাচাই, আর traffic keys; TLS 1.3 কী দেয়, কী দেয় না, আর 0-RTT-র ফাঁদ কোথায়।
- 18HTTP/1.1, HTTP/2 — request/response-এর আসল খরচMethod-status-header-র semantics তিন দশক অক্ষত; বদলেছে transport-এর খরচ — HTTP/1.1-এর HOL blocking থেকে HTTP/2-এর multiplexing, আর সেই খরচ মাপার হাতিয়ার raw socket client।
- 19QUIC — TCP+TLS কে UDP-র উপর নতুন করে লেখা কেনTCP আর TLS আলাদা স্তরে জমে-থাকা ঋণ — handshake cost, transport-HOL, IP-change ভঙ্গুরতা; QUIC সব UDP-র উপর userspace-এ নতুন করে লিখে এক ঝলকে শোধ করল, কিন্তু দামও দিল।
- 20WebSocket — HTTP থেকে full-duplex upgradeHTTP request-gate ভেঙে দুই-দিক-চালিত channel; Sec-WebSocket-Key-র GUID magic থেকে masked frame-এর proxy-poisoning history — আর scale-এ গেলে stateless-এর comfort কীভাবে হাতছাড়া।
- 21CDN, Load Balancer, Reverse Proxy — edge-এর স্থাপত্যUser আর origin-এর মাঝখানে দাঁড়ানো স্থাপত্যের তিন চরিত্র — reverse proxy, load balancer, CDN; দিক-বিভ্রান্তি থেকে consistent hashing, x-cache header থেকে BGP-anycast।
- 22Packet Capture — tcpdump আর Wireshark দিয়ে সত্য দেখাTheory-র চূড়ান্ত পরীক্ষা wire-এর কাছে — kernel tap থেকে BPF VM, capture-vs-display filter grammar, retransmission-coloring, আর pcap parser from scratch; packets don't lie।
যা যা থাকছে
- Physical layer — signals, encoding, bandwidth, latency
- Link layer, Ethernet frames, MAC addressing
- Switching ও ARP
- IP — datagram, fragmentation, TTL
- IPv4 addressing, subnetting, CIDR
- IPv6
- Routing — static, RIP, OSPF, BGP
- NAT ও port forwarding
- ICMP, ping, traceroute internals
- UDP
- TCP — handshake, state machine, seq/ack
- TCP reliability, retransmission, RTO
- Flow control ও congestion control (Reno, CUBIC, BBR)
- Sockets API ও kernel networking stack
- DNS — resolvers, records, caching, DNSSEC
- DHCP
- TLS 1.3 handshake ও certificate chain
- HTTP/1.1, HTTP/2, HTTP/3
- QUIC
- WebSockets
- CDN, load balancer, reverse proxy
- Packet capture — tcpdump, Wireshark
প্রজেক্ট
TCP Echo Server
●●●○○Raw socket API, তারপর epoll দিয়ে concurrent version।
HTTP/1.1 Server
●●●○○Parser, keep-alive, static file serving — framework ছাড়া।
DNS Resolver
●●●●○Root থেকে iterative resolution, wire format নিজে parse।
Packet Sniffer
●●●●○Raw socket-এ Ethernet/IP/TCP header decode।