Question bank — HTTP - 1.1 — methods, status codes, headers, persistent connections
4.3.24 · D5· Coding › Computer Networks › HTTP - 1.1 — methods, status codes, headers, persistent conn
True or false — justify
Har jawab wajah hai, bare verdict nahi — reveal karne se pehle apna justification bolo.
HTTP stateless hai, isliye server kabhi yaad nahi rakh sakta ki tum kaun ho.
Cookie:/Set-Cookie: headers upar se identity rebuild karte hain, isliye state application mein rehti hai, transport mein nahi.Ek persistent connection par, "socket band hone tak padho" theek kaam karta hai.
Content-Length bytes padhne padte hain ya chunked framing follow karni padti hai.GET safe hai kyunki iska koi request body nahi hota.
PUT aur DELETE dono idempotent hain.
Connection: keep-alive HTTP/1.1 mein socket open rakhne ke liye zaroori hai.
Connection: close add karte ho jab opt out karna ho.200 response guarantee karta hai ki jo operation tumne manga woh actually succeed hua.
Har HTTP response mein ek body hona zaroori hai.
204 No Content, 304 Not Modified, aur HEAD ke responses mein design ke hisaab se koi body nahi hoti; blank line message khatam kar deti hai.Pipelining head-of-line blocking hatata hai.
Host: optional hai jab tak ek IP sirf ek domain serve kare.
400 Bad Request hai.Spot the error
Har line mein ek concrete galti hai — usse naam do, phir reveal karo.
"404 ka matlab hai server crash ho gaya aur respond nahi kar sakta."
4xx client error hai jiska matlab hai requested resource exist nahi karta; crash 5xx ke roop mein dikhta."HTTP/1.1 mein Connection: keep-alive bhejo warna connection ek request ke baad band ho jaata hai."
"Response tab khatam hota hai jab hum ek blank \r\n\r\n line hit karte hain."
Content-Length ya chunked encoding fix karta hai."Kyunki GET idempotent hai, POST bhi hona chahiye."
"Content-Length body mein characters count karta hai."
"HEAD resource return karta hai lekin status line chhod deta hai."
"Transfer-Encoding: chunked ko extra safety ke liye Content-Length ke saath use karo."
"301 aur 302 ka matlab ek hi hai, sirf alag numbers hain."
Why questions
Jawab mein mechanism hona chahiye, question restate nahi.
HTTP/1.1 ne persistent connections ko default kyun banaya?
Persistence kyun explicit message framing force karta hai?
Content-Length (exact byte count) ya chunked encoding chahiye taaki pata chale ek response kahan khatam hota hai aur agla kahan shuru.Host header Virtual hosting ke liye zaroori kyun hai?
Host: hi woh jagah hai jahan request bataati hai ki kaunsi site chahiye.Slow-network latency persistence ko kam valuable kyun nahi banati, zyada valuable kyun banati hai?
Transfer-Encoding: chunked ek aisi body kyun stream kar sakta hai jise server pehle se measure nahi kar sakta?
Pipelining ke saath bhi head-of-line blocking kyun hoti hai?
304 Not Modified re-download karne se zyada fast kyun hai?
If-None-Match ke saath ETag); agar unchanged hai to server ek tiny bodyless 304 return karta hai aur client bytes transfer karne ki jagah apni local copy reuse karta hai.HTTP TCP ke upar kyun chalta hai, seedha bytes bhejne ki jagah?
Edge cases
Boundary aur degenerate scenarios — sirf rule nahi, case cover karo.
204 No Content response ki body ko kya frame karta hai?
Ek keep-alive connection par, agar server band karna chahta hai to aakhri expected response ke baad kya hota hai?
Connection: close bhejta hai, client ko signal karta hai ki is body ko padho phir socket band maano.Agar ek persistent POST request mein koi Content-Length nahi aur koi chunked encoding nahi hai, to kya toot ta hai?
400.Ek idempotent retry tumhe kya protect karta hai jab reply mid-flight lost ho jaaye?
Kya zero headers wali request (sirf start line aur blank line) 1.1 mein kabhi valid hai?
Host: 1.1 mein mandatory hai, isliye kam se kam ek header present hona chahiye warna server 400 Bad Request return karta hai.503 Service Unavailable kaunse status class mein aata hai, aur galti kis ki hai?
5xx — ek server error jiska matlab hai server temporarily request handle nahi kar sakta (overload, maintenance); client ki request well-formed thi.Kya ek single persistent connection do alag domains ki requests carry kar sakta hai?
Host: header chahiye, aur TLS/certificate constraints aksar connection ko ek origin par pin kar dete hain.Recall One-line self-test
Jawab chhupa lo. Agar tum "persistence framing kyun force karta hai?" aur
"404 client error kyun hai?" dono ka mechanism ek ek saanch mein bata sako, tumne is topic ke do sabse zyada common traps clear kar liye.
Persistence framing kyun force karta hai? ::: End signal karne ke liye koi close nahi, isliye Content-Length ya chunked boundary draw karta hai.
404 client error kyun hai, crash nahi? ::: Server ne bilkul theek respond kiya; jo resource manga gaya woh missing hai — crashes 5xx hote hain.