อ่าน 2 นาที
nghttp2
nghttp2 เป็น ไลบรารีที่เขียน ด้วยภาษาซี ซึ่งเป็นการนำ โปรโตคอล HTTP/2 มา ใช้
nghttp2
| nghttp2 | |
|---|---|
| ผู้เขียนต้นฉบับ | ทัตสึฮิโระ ซึจิคาว่า |
| ปล่อย | 2013 |
| เวอร์ชันเสถียร | 1.69.0 [ 1 ] |
| เขียนเป็น | ซี |
| แพลตฟอร์ม | macOS , Windows , POSIX |
| พิมพ์ | การใช้งานHTTP/2 |
| ใบอนุญาต | ใบอนุญาต MIT |
| เว็บไซต์ | nghttp2 |
| ที่เก็บข้อมูล | github.com/nghttp2/nghttp2 |
nghttp2เป็นไลบรารีที่เขียนด้วยภาษาซี ซึ่งเป็นการนำโปรโตคอล HTTP/2 มา ใช้
ประวัติศาสตร์
nghttp2 ถูกสร้างขึ้นโดย Tatsuhiro Tsujikawa โดยเป็นการดัดแปลงจาก spdylay ซึ่งเป็นการนำSPDY มาใช้ ซึ่ง เป็น โปรโตคอลการสื่อสารที่Google สร้างขึ้น ในปี 2009 ในภาษา C [ 2 ] [ 3 ]
โครงการที่มีชื่อเสียงหลายโครงการใช้ nghttp2 เพื่อใช้งาน HTTP/2 รวมถึงApacheและcURL [ 4 ] [ 5 ]
คุณสมบัติ
การใช้งาน HTTP/2
nghttp2 จะส่งWINDOW_UPDATEเฟรมเมื่อใช้พื้นที่ในหน้าต่างควบคุมการไหลเกินครึ่งหนึ่ง ตัวอย่างเช่น หากผู้ส่งระบุSETTINGS_INITIAL_WINDOW_SIZE[ sic ] เป็น 65,535 ไบต์ในSETTINGSเฟรม nghttp2 จะส่งWINDOW_UPDATEเฟรมเมื่อเกิน 32,768 ไบต์ ขนาดหน้าต่างเริ่มต้นอาจเปลี่ยนแปลงได้โดยใช้แฟล็ก-wและ[ 6 ]-W
เครื่องมือ
nghttp2 มีเครื่องมือหลายอย่าง nghttp เป็นเครื่องมือบรรทัดคำสั่งที่ใช้ nghttp2 เพื่อส่งออกข้อความ HTTP/2 จาก URL [ 7 ]ลำดับความสำคัญตามการพึ่งพาของ nghttp ขึ้นอยู่กับFirefoxเมื่อมีการสร้างการเชื่อมต่อ nghttp จะส่งPRIORITYเฟรม ห้าเฟรม [ 8 ]เครื่องมืออื่นๆ ที่มีให้ ได้แก่ nghttpd ซึ่งเป็นเซิร์ฟเวอร์ HTTP/2, nghttpx ซึ่งเป็นพร็อกซี HTTP/2, h2load ซึ่งเป็น เครื่องมือ ทดสอบโหลด HTTP/2 และ inflatehd และ deflatehd ซึ่งเป็นเครื่องมือในการบีบอัดและคลายการบีบอัดโดยใช้อัลกอริทึมการบีบอัดส่วนหัว HPACK [ 9 ]
nghttp3
nghttp3 เป็นการใช้งานHTTP/3ในภาษา C ซึ่งเขียนโดย Tsujikawa nghttp3 ใช้ โปรโตคอลเครือข่าย QUICที่ออกแบบโดยJim Roskindที่ Google [ 10 ]
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ nghttp2
nghttp2 เป็น ไลบรารีที่เขียน ด้วยภาษาซี ซึ่งเป็นการนำ โปรโตคอล HTTP/2 มา ใช้
ประวัติศาสตร์
nghttp2 ถูกสร้างขึ้นโดย Tatsuhiro Tsujikawa โดยเป็นการดัดแปลงจาก spdylay ซึ่งเป็นการนำ SPDY มาใช้ ซึ่ง เป็น โปรโตคอลการสื่อสาร ที่ Google สร้างขึ้น ในปี 2009 ในภาษา C [ 2 ] [ 3 ]
การใช้งาน HTTP/2
nghttp2 จะส่ง WINDOW_UPDATE เฟรมเมื่อใช้พื้นที่ในหน้าต่างควบคุมการไหลเกินครึ่งหนึ่ง ตัวอย่างเช่น หากผู้ส่งระบุ SETTINGS_INITIAL_WINDOW_SIZE [ sic ] เป็น 65,535 ไบต์ใน SETTINGS เฟรม nghttp2 จะส่ง WINDOW_UPDATE เฟรมเมื่อเกิน 32,768 ไบต์...
เครื่องมือ
nghttp2 มีเครื่องมือหลายอย่าง nghttp เป็นเครื่องมือบรรทัดคำสั่งที่ใช้ nghttp2 เพื่อส่งออกข้อความ HTTP/2 จาก URL [ 7 ] ลำดับความสำคัญตามการพึ่งพาของ nghttp ขึ้นอยู่กับ Firefox เมื่อมีการสร้างการเชื่อมต่อ nghttp จะส่ง PRIORITY เฟรม ห้าเฟรม [ 8 ] เครื่องมืออื่นๆ...