เปิดเว็บ 1 ครั้ง เกิดอะไร
พิมพ์ google.com แล้วกด Enter เครื่องเราไปขอเว็บจากเครื่องอีกตัวที่ไกลออกไป แล้วรับกลับมา รู้กลไกนี้แล้ว เรื่องอื่นของ internet ตามมาเองครับ
เคยสงสัยไหมครับ ตอนเราพิมพ์ google.com แล้วกด Enter เกิดอะไรขึ้นกันแน่
บทแรกนี้เป็นภาพรวมที่อยากให้ติดตัวก่อนเข้าเรื่องอื่น ถ้าเข้าใจตรงนี้ เรื่อง DNS IP HTTPS cookie CDN ที่จะเล่าในบทต่อไปจะตามทันได้สบายมาก
เว็บที่เราเปิด อยู่ในเครื่องเราจริงเหรอ
ลองคิดดูครับ พอเราพิมพ์ google.com แล้วกด Enter เครื่องเราไม่ได้เปิดไฟล์ ไหนในเครื่องตัวเอง เพราะเครื่องเราไม่ได้เก็บ Google ไว้
สิ่งที่เกิดขึ้นจริงๆ คือ เครื่องเราส่งข้อความไปขอเว็บจากเครื่องอีกตัว ที่อยู่ที่อื่น เครื่องตัวนั้นคือเครื่องคอมจริงๆ ที่ตั้งอยู่ใน data center ของ Google ฝรั่งเรียกเครื่องแบบนี้ว่า server
พอ server ของ Google ได้ข้อความ เขาก็ส่งหน้าเว็บกลับมาเป็นข้อความก้อนใหญ่ เบราว์เซอร์ของเราเอาก้อนนั้นมาแสดงเป็นหน้า Google ที่เราเห็น
ลองเปิดเว็บดูเอง
ในกล่องข้างล่าง เลือกเว็บที่อยากเปิด แล้วกดปุ่ม ลองดูทีละขั้นว่าเครื่องเรา คุยกับ server ยังไง
เห็นไหมครับ การเปิดเว็บคือการพูดคุยกันแค่ 2 ครั้ง เครื่องเราพูดก่อน "ขอ google.com หน่อย" แล้ว server ตอบกลับ "นี่ครับ หน้า Google" จบ ไม่มีอะไรซับซ้อนกว่านี้
4 คำที่จะใช้ตลอด 8 บท
จำชื่อ 4 อย่างนี้ไว้ครับ บทต่อไปจะใช้ตลอด
- Server เครื่องคอมที่เปิดรอตอบให้คนที่มาขอ เหมือนร้านที่ เปิดรอลูกค้า ทุกเว็บที่เราเข้า ข้างหลังมี server หมด YouTube Facebook Lazada Shopee LINE มี server ทั้งนั้น
- Browser หรือ เบราว์เซอร์โปรแกรมเปิดเว็บในเครื่องเรา เช่น Chrome Safari Firefox เหมือนลูกค้า ที่เดินเข้าร้าน
- Request หรือ คำขอ ข้อความที่เครื่องเราส่งไป ขอเว็บ เหมือนใบสั่งของที่เราส่งให้ร้าน
- Response หรือ คำตอบ ข้อความที่ server ส่งกลับมาพร้อมหน้าเว็บ เหมือนของที่ร้านส่งให้
แล้ว internet จริงๆ คืออะไร
Internet หรือ อินเทอร์เน็ต ก็คือเครือข่ายของ เครื่องคอมพวกนี้ที่เชื่อมต่อกันทั่วโลก ทั้งฝั่ง server และฝั่งเครื่องของเรา
Server ของ Google อยู่ที่อเมริกา server ของ YouTube กระจายอยู่หลายประเทศ server ของ Facebook อยู่หลายแห่ง เครื่องของเราที่กรุงเทพคุยกับ server พวกนี้ ผ่านสายและสัญญาณที่ต่อกันเป็นทอดๆ จนถึงเครื่องปลายทาง
เพราะแบบนี้แหละ เรื่องอื่นๆ ตามทันได้สบาย
วิธีคิด "เครื่องเราขอ server ตอบ" แบบนี้ ตอบคำถามใหญ่ๆ ของ internet ได้หลายข้อในคราวเดียว
- ทำไมไม่มีเน็ตเปิดเว็บไม่ได้ เพราะเครื่องเราคุยกับ server ไม่ได้ คำขอส่งออกไปไม่ถึง
- ทำไมเว็บโหลดช้า เพราะคำขอกับคำตอบเดินทางช้า อาจจะเพราะ เน็ตช้า server อยู่ไกล หรือ server ทำงานหนักเกิน
- ทำไมต้องห่วงเรื่องความปลอดภัย เพราะข้อความวิ่งจากเครื่องเรา ไปที่อื่น ระหว่างทางมีคนแอบดูได้
- ทำไม server ล่มแล้วเว็บเข้าไม่ได้ เพราะคนที่ตอบคำขอของเรา ไม่อยู่
สรุปบทนี้
- เว็บที่เราเปิด ไม่ได้อยู่ในเครื่องเรา มันอยู่ในเครื่องอีกตัวที่เรียกว่า server
- การเปิดเว็บคือการส่งคำขอไปที่ server แล้วรับหน้าเว็บกลับมา
- ทุกอย่างบนเว็บใช้ pattern เดียวกัน ไม่ว่าเปิด Google ดู YouTube ส่ง LINE หรือโอนเงิน
- Internet คือเครือข่ายของเครื่องพวกนี้ที่เชื่อมต่อกันทั่วโลก
บทต่อไปมาดูว่าเครื่องของเรารู้ได้ยังไงว่า server ของ google.com อยู่ที่ไหน เพราะจริงๆ google.com เป็นแค่ชื่อที่เราจำได้ ส่วนเครื่องคอมจริงๆ คุยกันด้วยเลข