ข้ามไปยังเนื้อหา

ศัพท์ไอที · Cloud

CDN คืออะไร

เครือข่ายกระจายเนื้อหา · หรือ Content Delivery Network, Content Distribution Network, เครือข่ายส่งมอบเนื้อหา

นิยามสั้น

เครือข่ายเซิร์ฟเวอร์ที่กระจายอยู่หลายพื้นที่และเก็บสำเนาเนื้อหาไว้ใกล้ผู้ใช้ เพื่อส่งเว็บไซต์ ไฟล์ และวิดีโอได้เร็วขึ้น และลดภาระของเซิร์ฟเวอร์ต้นทาง

CDN คือเครือข่ายเซิร์ฟเวอร์ที่ปรับแต่งมาเพื่อส่งเนื้อหาถึงผู้ใช้อย่างรวดเร็ว ย่อมาจาก Content Delivery Network เอกสาร RFC 6707 ของ IETF นิยามว่าเป็นโครงสร้างพื้นฐานเครือข่ายที่องค์ประกอบต่าง ๆ ทำงานร่วมกันในชั้นที่ 4 ถึง 7 เพื่อส่งมอบเนื้อหาถึงผู้ใช้ได้อย่างมีประสิทธิภาพยิ่งขึ้น

CDN ทำงานอย่างไร

ผู้ให้บริการ CDN วางเซิร์ฟเวอร์แคชไว้ที่จุดให้บริการ (Point of Presence: PoP) หลายแห่ง เมื่อผู้ใช้ขอไฟล์ ระบบจัดเส้นทางคำขอ (request routing) จะเลือกเซิร์ฟเวอร์ที่เหมาะสมให้ หากเซิร์ฟเวอร์นั้นยังไม่มีไฟล์ ก็จะไปดึงจากเซิร์ฟเวอร์ต้นทาง (origin) ในครั้งแรกแล้วเก็บสำเนาไว้ วิธีนี้เรียกว่า origin pull คำขอครั้งถัดไปจึงได้รับไฟล์จากแคชโดยไม่ต้องย้อนไปถึงต้นทาง

เจ้าของเว็บไซต์ควบคุมระยะเวลาที่แคชเก็บไฟล์ได้ด้วยค่า TTL และส่วนหัว Cache-Control ตัวชี้วัดสำคัญคือ cache hit ratio หรือสัดส่วนคำขอที่ตอบได้จากแคช ซึ่ง web.dev แนะนำให้ตั้งเป้าไว้ที่ร้อยละ 90 นอกจากการแคช CDN ยังช่วยด้านประสิทธิภาพด้วยการบีบอัดแบบ Brotli และ gzip การรองรับ TLS 1.3, HTTP/2 และ HTTP/3 รวมถึงการปรับรูปภาพอัตโนมัติ

ตัวอย่างการใช้งาน

  • เว็บไซต์ที่มีผู้ใช้หลายภูมิภาค ลดเวลาโหลดหน้าเว็บ เพราะไฟล์ถูกส่งจากจุดที่ใกล้ผู้ใช้
  • วิดีโอและไฟล์ดาวน์โหลดขนาดใหญ่ ลดปริมาณข้อมูลที่ต้องส่งออกจากเซิร์ฟเวอร์ต้นทาง
  • ช่วงที่มีผู้เข้าชมพุ่งสูง เช่น วันเปิดขายสินค้าหรือประกาศผล แคชช่วยรับคำขอแทนต้นทาง
  • ชั้นป้องกันด้านหน้า ใช้ร่วมกับ WAF และการป้องกัน DDoS เพื่อกรองทราฟฟิกก่อนถึงระบบขององค์กร

CDN ต่างจาก Web Hosting อย่างไร

Web Hosting คือที่ตั้งของเซิร์ฟเวอร์ต้นทางซึ่งเก็บเว็บไซต์ตัวจริงและประมวลผลคำขอที่ต้องคำนวณใหม่ทุกครั้ง ส่วน CDN เป็นชั้นที่วางอยู่ด้านหน้าเพื่อเก็บและส่งสำเนาเนื้อหา จึงไม่ได้ใช้แทนกัน RFC 6707 ระบุว่าประโยชน์ของ CDN ต่อเนื้อหาที่แคชได้คือ ต้นทุนการส่งมอบลดลง ประสบการณ์ของผู้ใช้ดีขึ้น และการให้บริการทนทานขึ้น เนื้อหาที่เปลี่ยนตามผู้ใช้แต่ละราย เช่น ตะกร้าสินค้า ยังต้องพึ่งเซิร์ฟเวอร์ต้นทางที่ออกแบบมารองรับได้เพียงพอ

แหล่งอ้างอิง

  1. RFC 6707: Content Distribution Network Interconnection (CDNI) Problem Statement — IETF
  2. Content delivery networks (CDNs) — web.dev (Google)

ปรับปรุงล่าสุด โดยกองบรรณาธิการ THAI DATA