9.1 http

คุณคุ้นเคยกับโปรโตคอล http เป็นอย่างดีอยู่แล้ว แต่ส่วนใหญ่แล้วคุณไม่ทราบว่ามีโปรโตคอลดังกล่าวอยู่สามเวอร์ชันแล้ว ในฐานะโปรแกรมเมอร์ Java ในอนาคต คุณควรทำความคุ้นเคยกับกรณีนี้อย่างน้อยหนึ่งครั้ง

ด้านล่างนี้ฉันจะบอกคุณว่าโปรโตคอลประเภทใดและคุณสมบัติของพวกเขาคืออะไร ในระหว่างนี้ นี่คือรูปภาพสำหรับคุณ - ศึกษา

http โปรโตคอล

9.2 https

เริ่มจากการแก้ไขโปรโตคอล http ครั้งแรก - โปรโตคอลhttps นี่เป็น http เดียวกัน แต่มีการเพิ่มการเข้ารหัสเนื้อหาเข้าไป ท้ายที่สุดแล้ว คำขอ Http และการตอบกลับเป็นไฟล์ข้อความธรรมดา คุณคงไม่ต้องการให้ทุกสิ่งที่เบราว์เซอร์ของคุณส่งและรับผ่านอินเทอร์เน็ตอย่างชัดเจน

เพื่อแก้ปัญหานี้ จึงได้คิดค้น โปรโตคอล https ( http+security ) เมื่อคุณพยายามส่งคำขอโดยใช้โปรโตคอล https ก่อนอื่นเบราว์เซอร์ของคุณจะสร้างการเชื่อมต่อกับเซิร์ฟเวอร์ที่จำเป็นและขอใบรับรอง SSL

จากนั้นใบรับรองนี้จะถูกตรวจสอบความถูกต้อง: มีชื่อโดเมนและรายการคีย์สาธารณะของผู้ที่ออกใบรับรองนี้ให้กับเซิร์ฟเวอร์

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

และเนื่องจากข้อมูลเกี่ยวกับทรัพยากรที่ร้องขอจะถูกส่งในโปรโตคอลเอง เมื่อใช้โปรโตคอล https จึงไม่มีใครสามารถสกัดกั้นข้อมูลเกี่ยวกับทรัพยากรเซิร์ฟเวอร์ที่เบราว์เซอร์เข้าถึงได้

ปัจจุบัน โปรโตคอลนี้ได้กลายเป็นมาตรฐานโดยพฤตินัยและเกือบจะเข้ามาแทนที่ http รุ่นเก่าที่ดี

หากมีคนพยายามแทนที่เซิร์ฟเวอร์ที่คุณส่งคำขอ https เขาจะไม่สามารถแทนที่ใบรับรองโดเมนได้ เบราว์เซอร์จะเข้าใจสิ่งนี้ และคุณจะเห็นหน้าดังนี้:

9.3 http/2

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

ไม่พูดเร็วกว่าทำ เพิ่มในมาตรฐานการถ่ายโอนข้อมูลใหม่:

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

สิ่งนี้ส่วนใหญ่ถูกซ่อนไว้จากโปรแกรมเมอร์ Java และรักษาไว้ที่ระดับเว็บเซิร์ฟเวอร์และเบราว์เซอร์

9.4 http/3

โปรโตคอล http เวอร์ชันที่สามยังอยู่ระหว่างการสรุป และนวัตกรรมที่ใหญ่ที่สุดคือการปฏิเสธโปรโตคอล TCP ข้อมูลจะไปผ่าน UDP ทันที

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

โอ้ ด้วยเสน่ห์ของโปรโตคอลนี้ คุณจะได้เล่นแล้ว ฉันทำของฉันเสร็จแล้ว :)

คุณสามารถอ่านเพิ่มเติมเกี่ยวกับ http/3