การกระจายเนื้อหาและเครือข่ายนำส่งเนื้อหา (CDNs)
เครือข่ายนำส่งเนื้อหาจะจัดเก็บสำเนาของเนื้อหาไว้บนเซิร์ฟเวอร์ที่อยู่ใกล้ผู้ใช้ และส่งต่อคำขอแต่ละรายการไปยังสำเนาที่เหมาะสม ซึ่งช่วยลดเวลาแฝงและภาระงานของเซิร์ฟเวอร์ต้นทาง และทำให้การนำส่งเว็บและวิดีโอขนาดใหญ่เป็นไปได้
Definition
เครือข่ายนำส่งเนื้อหาคือระบบเซิร์ฟเวอร์ที่กระจายทางภูมิศาสตร์ซึ่งจัดเก็บและให้บริการสำเนาของเนื้อหาใกล้กับผู้ใช้ปลายทาง โดยจะเปลี่ยนเส้นทางคำขอแต่ละรายการไปยังสำเนาที่เหมาะสมที่อยู่ใกล้เคียง เพื่อลดเวลาแฝง การสูญหาย และภาระงานบนเซิร์ฟเวอร์ต้นทาง
Scope
หัวข้อนี้ครอบคลุมถึงวิธีการนำส่งเนื้อหาในระดับอินเทอร์เน็ต: เหตุผลในการทำสำเนาเนื้อหาให้อยู่ใกล้ผู้ใช้ สถาปัตยกรรมของเครือข่ายนำส่งเนื้อหา (CDNs) ที่มีแคชกระจายทางภูมิศาสตร์ กลไกในการนำทางผู้ใช้ไปยังสำเนาที่อยู่ใกล้เคียง (มักจะผ่าน DNS) ความต้องการพิเศษของการสตรีมวิดีโอ รวมถึงเทคนิคอัตราบิตแบบปรับได้ และการทำงานร่วมกันของ CDNs กับเครือข่ายพื้นฐาน โดยจะอ้างอิงจากโปรโตคอลการตั้งชื่อและแอปพลิเคชัน และไม่รวมถึงรายละเอียดการเข้ารหัสสื่อและกลไกการขนส่งที่อยู่ภายใต้การนำส่ง
Core questions
- เหตุใดการทำสำเนาเนื้อหาใกล้ผู้ใช้จึงช่วยปรับปรุงประสิทธิภาพและความสามารถในการปรับขนาดได้?
- CDN มีการจัดระเบียบอย่างไร และเซิร์ฟเวอร์ของ CDN ตั้งอยู่ที่ใด?
- คำขอของผู้ใช้ถูกนำทางไปยังสำเนาที่เหมาะสมได้อย่างไร และ DNS มีบทบาทอย่างไร?
- การสตรีมแบบปรับอัตราบิตนำส่งวิดีโอผ่านเครือข่ายที่มีความผันผวนได้อย่างไร?
- CDNs มีปฏิสัมพันธ์กับโครงสร้างพื้นฐานของอินเทอร์เน็ตและผู้ให้บริการอินเทอร์เน็ต (ISPs) อย่างไร?
Key concepts
- การทำสำเนาเนื้อหา
- เครือข่ายนำส่งเนื้อหา (CDNs)
- เซิร์ฟเวอร์แคช Edge
- การเปลี่ยนเส้นทางคำขอผ่าน DNS
- การรับรู้ถึงความใกล้ชิดและภาระงาน
- การสตรีมวิดีโอ
- การสตรีมแบบปรับอัตราบิต (HTTP chunked)
- การลดภาระงานของเซิร์ฟเวอร์ต้นทาง
Key theories
- การทำสำเนาและความใกล้ชิด
- การวางเนื้อหาบนเซิร์ฟเวอร์จำนวนมากใกล้กับผู้ใช้จะช่วยลดเส้นทางเครือข่าย ลดเวลาแฝงและการสูญหาย และกระจายภาระงานออกจากเซิร์ฟเวอร์ต้นทางและเครือข่ายหลัก ปัญหาทางวิศวกรรมหลักจึงกลายเป็นการเลือกตำแหน่งที่จะวางสำเนาและเลือกสำเนาใดเพื่อให้บริการแต่ละคำขอ
- การเปลี่ยนเส้นทางคำขอ
- CDNs จะนำทางไคลเอนต์แต่ละรายไปยังสำเนาที่อยู่ใกล้เคียงและทำงานได้ดี โดยทั่วไปจะทำได้โดยการส่งคืนที่อยู่ของเซิร์ฟเวอร์ที่เลือกเพื่อตอบสนองต่อการค้นหา DNS โดยใช้ความรู้เกี่ยวกับความใกล้ชิดของเครือข่ายและภาระงานปัจจุบัน
- การสตรีมแบบปรับอัตราบิต
- วิดีโอสตรีมมิ่งจะถูกเข้ารหัสที่ระดับคุณภาพหลายระดับและแบ่งออกเป็นส่วนย่อยที่ดึงข้อมูลผ่าน HTTP โดยที่ไคลเอนต์จะปรับอัตราบิตที่ร้องขอตามแบนด์วิดท์ปัจจุบัน ซึ่งเหมาะกับการนำส่งแบบ HTTP ของ CDNs และสามารถรับมือกับสภาพเครือข่ายที่ผันผวนได้
Clinical relevance
CDNs รองรับปริมาณการรับส่งข้อมูลอินเทอร์เน็ตจำนวนมาก และมีความสำคัญอย่างยิ่งต่อการนำส่งหน้าเว็บ การอัปเดตซอฟต์แวร์ และโดยเฉพาะอย่างยิ่งวิดีโอในขนาดใหญ่และมีประสิทธิภาพที่ดี ซึ่งช่วยลดเวลาแฝงสำหรับผู้ใช้ทั่วโลก ปกป้องเซิร์ฟเวอร์ต้นทางจากการโอเวอร์โหลด และเป็นรากฐานของบริการสตรีมมิ่งที่ครองการใช้งานอินเทอร์เน็ตของผู้บริโภค ทำให้การกระจายเนื้อหาเป็นหัวใจสำคัญของประสิทธิภาพของเว็บสมัยใหม่
History
เมื่อปริมาณการรับส่งข้อมูลเว็บเพิ่มขึ้นอย่างรวดเร็วในช่วงปลายทศวรรษ 1990 เครือข่ายนำส่งเนื้อหาได้ถือกำเนิดขึ้นเพื่อแคชเนื้อหาใกล้กับผู้ใช้ โดย Akamai เป็นตัวอย่างแรกเริ่มและมีอิทธิพล การเติบโตของวิดีโอออนไลน์ทำให้ CDNs และการสตรีมแบบปรับได้ที่ใช้ HTTP เป็นหัวใจสำคัญของการนำส่งทางอินเทอร์เน็ต และ CDNs ได้ขยายไปสู่แพลตฟอร์ม Edge ที่ยังดำเนินการประมวลผลใกล้กับผู้ใช้
Key figures
- Ramesh K. Sitaraman
- Erik Nygren
- James F. Kurose
Related topics
Seminal works
- kurose2021
- nygren2010
Frequently asked questions
- CDN ทำให้เว็บไซต์เร็วขึ้นได้อย่างไร?
- CDN จะจัดเก็บสำเนาเนื้อหาของเว็บไซต์ไว้บนเซิร์ฟเวอร์ที่กระจายอยู่ทั่วโลก และให้บริการผู้ใช้แต่ละรายจากเซิร์ฟเวอร์ที่อยู่ใกล้เคียง ซึ่งช่วยลดเส้นทางเครือข่าย ลดเวลาแฝงและการสูญหาย และลดภาระงานของเซิร์ฟเวอร์ต้นทาง ผลลัพธ์คือการโหลดหน้าเว็บที่เร็วขึ้นและการสตรีมที่ราบรื่นขึ้น โดยเฉพาะอย่างยิ่งสำหรับผู้ใช้ที่อยู่ห่างไกลจากเซิร์ฟเวอร์ต้นทาง
- CDN ตัดสินใจได้อย่างไรว่าเซิร์ฟเวอร์ใดควรให้บริการฉัน?
- CDNs ใช้ข้อมูลเกี่ยวกับความใกล้ชิดของเครือข่าย ภาระงานของเซิร์ฟเวอร์ และความพร้อมใช้งานเพื่อเลือกสำเนาที่เหมาะสม จากนั้นจึงนำทางคำขอของคุณไปยังสำเนาดังกล่าว โดยทั่วไปจะทำได้โดยการส่งคืนที่อยู่ของเซิร์ฟเวอร์นั้นเมื่ออุปกรณ์ของคุณค้นหาชื่อเว็บไซต์ใน DNS เป้าหมายคือเซิร์ฟเวอร์ที่อยู่ใกล้เคียง ทำงานได้ดี และสามารถนำส่งเนื้อหาได้อย่างรวดเร็ว