ScholarGate
ผู้ช่วย

แอปพลิเคชันและบริการเครือข่าย

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

ค้นหาหัวข้อด้วย PaperMindเร็ว ๆ นี้Find papers & topics
Tools & resources
ดาวน์โหลดสไลด์
Learn & explore
วิดีโอเร็ว ๆ นี้

Definition

ชั้นแอปพลิเคชันคือชั้นโพรโทคอลที่อยู่บนสุด ซึ่งกระบวนการแอปพลิเคชันแบบเครือข่ายจะแลกเปลี่ยนข้อความตามโพรโทคอลเฉพาะของแอปพลิเคชันนั้นๆ; บริการเครือข่ายคือโครงสร้างพื้นฐานที่สนับสนุน เช่น การตั้งชื่อและการส่งมอบเนื้อหา ซึ่งแอปพลิเคชันเหล่านั้นต้องพึ่งพา

Scope

ขอบเขตนี้ครอบคลุมชั้นแอปพลิเคชันและบริการโครงสร้างพื้นฐานที่สนับสนุน: สถาปัตยกรรมแอปพลิเคชัน (ไคลเอนต์-เซิร์ฟเวอร์และเพียร์ทูเพียร์), โพรโทคอลแอปพลิเคชันหลัก เช่น HTTP, SMTP และ FTP, ระบบชื่อโดเมนที่แปลงชื่อที่มนุษย์อ่านได้เป็นที่อยู่, เครือข่ายกระจายเนื้อหาที่จำลองเนื้อหาใกล้ผู้ใช้, และภาพรวมของความปลอดภัยเครือข่ายที่เกี่ยวข้องกับระบบสื่อสาร โดยไม่รวมกลไกชั้นการขนส่งข้อมูลที่ต้องพึ่งพา แต่จะเน้นที่บริการที่แอปพลิเคชันเปิดเผยและโพรโทคอลที่ใช้สื่อสารแทน

Sub-topics

Core questions

  • แอปพลิเคชันเครือข่ายมีโครงสร้างอย่างไร — ไคลเอนต์-เซิร์ฟเวอร์เทียบกับเพียร์ทูเพียร์ — และมีข้อดีข้อเสียอย่างไร?
  • โพรโทคอลแอปพลิเคชันหลัก เช่น HTTP และ SMTP กำหนดรูปแบบการส่งข้อความและการโต้ตอบอย่างไร?
  • ระบบชื่อโดเมนแปลงชื่อเป็นที่อยู่ด้วยวิธีที่ปรับขนาดได้และกระจายตัวอย่างไร?
  • เครือข่ายกระจายเนื้อหาลดความล่าช้าและภาระงานโดยการจำลองเนื้อหาใกล้ผู้ใช้อย่างไร?
  • แอปพลิเคชันเครือข่ายต้องมีคุณสมบัติความปลอดภัยใดบ้าง — การรักษาความลับ, ความสมบูรณ์, การยืนยันตัวตน — และทำได้อย่างไร?

Key concepts

  • สถาปัตยกรรมไคลเอนต์-เซิร์ฟเวอร์
  • สถาปัตยกรรมเพียร์ทูเพียร์
  • HTTP และเว็บ
  • โพรโทคอลอีเมล (SMTP, IMAP)
  • ระบบชื่อโดเมน (DNS)
  • การแคชและลำดับชั้นของ DNS
  • เครือข่ายกระจายเนื้อหา (CDNs)
  • ซ็อกเก็ตและ API ของแอปพลิเคชัน
  • การรักษาความลับ, ความสมบูรณ์, และการยืนยันตัวตน
  • ความปลอดภัยในชั้นการขนส่งข้อมูล (TLS)

Key theories

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

Clinical relevance

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

History

แอปพลิเคชันอินเทอร์เน็ตยุคแรกคืออีเมลและการถ่ายโอนไฟล์; เวิลด์ไวด์เว็บ ซึ่งคิดค้นโดย Tim Berners-Lee ประมาณปี 1990 ด้วย HTTP และ HTML ได้เปลี่ยนอินเทอร์เน็ตให้เป็นสื่อมวลชน ระบบชื่อโดเมน (Mockapetris, กลางทศวรรษ 1980) เข้ามาแทนที่ไฟล์ชื่อโฮสต์แบบเรียบด้วยไดเรกทอรีแบบกระจายที่ปรับขนาดได้ เครือข่ายกระจายเนื้อหาเกิดขึ้นในช่วงปลายทศวรรษ 1990 เพื่อรับมือกับการเติบโตของเว็บ และการเข้ารหัสในชั้นแอปพลิเคชันได้พัฒนาจาก SSL ไปสู่ TLS เพื่อรักษาความปลอดภัยในการสื่อสาร

Debates

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

Key figures

  • Tim Berners-Lee
  • Paul Mockapetris
  • Roy Fielding
  • Jon Postel

Related topics

Seminal works

  • kurose2021
  • rfc9110
  • rfc1035

Frequently asked questions

ระบบชื่อโดเมนทำอะไร?
DNS แปลงชื่อที่มนุษย์อ่านได้ เช่น example.com ให้เป็นที่อยู่ IP ที่ชั้นเครือข่ายต้องการเพื่อกำหนดเส้นทางแพ็กเก็ต เป็นฐานข้อมูลแบบกระจายและมีลำดับชั้นพร้อมการแคช ดังนั้นการค้นหาจึงรวดเร็วและระบบสามารถปรับขนาดได้ทั่วทั้งอินเทอร์เน็ตโดยไม่มีเซิร์ฟเวอร์เดียวที่เก็บชื่อทั้งหมด
เครือข่ายกระจายเนื้อหาช่วยเร่งความเร็วเว็บได้อย่างไร?
CDN จัดเก็บสำเนาของเนื้อหาบนเซิร์ฟเวอร์จำนวนมากที่กระจายอยู่ทั่วโลก และนำทางคำขอของผู้ใช้แต่ละรายไปยังสำเนาที่อยู่ใกล้เคียง ซึ่งช่วยลดเส้นทางเครือข่าย ลดความล่าช้าและการสูญหายของแพ็กเก็ต ขณะเดียวกันก็ลดภาระงานของเซิร์ฟเวอร์ต้นทางและลดการรับส่งข้อมูลระยะไกล ซึ่งทั้งหมดนี้ช่วยปรับปรุงความเร็วและความน่าเชื่อถือ

Methods for this concept

Related concepts