libschc เป็นการใช้งาน C ของการบีบอัดส่วนหัวบริบทแบบคงที่ ซึ่งร่างโดย IETF เป็นเทคนิคการบีบอัดส่วนหัวที่ใช้ในเครือข่ายบริเวณกว้างที่ใช้พลังงานต่ำเพื่อให้ไมโครคอนโทรลเลอร์ขนาดเล็กที่ใช้พลังงานต่ำสามารถมีการเชื่อมต่อ IPv6 จากต้นทางถึงปลายทาง พื้นที่เก็บข้อมูลนี้มีทั้งการบีบอัดและกลไกการกระจายตัว สำหรับข้อมูลเพิ่มเติมที่เกี่ยวข้องกับ SCHC โปรดดู https://datatracker.ietf.org/doc/draft-ietf-lpwan-ipv6-static-context-hc/
ดูเอกสารและเอกสารการประเมินของเราสำหรับข้อมูลเพิ่มเติมเกี่ยวกับการนำไปใช้และการกำหนดค่า
libschc ได้รับการพัฒนาบางส่วนโดยรองรับ VLAIO, FWO และ imec นอกจากนี้ยังเป็นส่วนหนึ่งของสแต็กมิดเดิลแวร์ IoT ซึ่งได้รับการพัฒนาสำหรับโครงการ Horizon 2020 PortForward ของสหภาพยุโรป โดยที่ LwM2M ได้รวมเข้ากับไลบรารีนี้เพื่อส่งมอบการเชื่อมต่อเซ็นเซอร์-คลาวด์ตามมาตรฐานเปิด
เนื่องจากการดำเนินการนี้อยู่ระหว่างดำเนินการ จึงมีข้อจำกัดบางประการที่คุณควรคำนึงถึง
ไลบรารีได้รับการออกแบบในลักษณะที่สามารถใช้งานบนอุปกรณ์ที่มีข้อจำกัด รวมถึงบนอุปกรณ์ฝั่งเซิร์ฟเวอร์ที่มีประสิทธิภาพยิ่งขึ้น ด้วยเหตุนี้ จึงหลีกเลี่ยงการจัดสรรหน่วยความจำและการคำนวณที่ใช้หน่วยความจำมาก เลขคณิตจุดคงที่ใช้สำหรับไมโครโปรเซสเซอร์ 8 บิต อย่างไรก็ตาม สามารถปรับปรุงประสิทธิภาพบางอย่างได้ ดังนั้นกฎจึงถูกสร้างขึ้นจากอาร์เรย์ 8 บิตซึ่งมีอยู่ในอุปกรณ์ทั้งหมด การจัดสรรหน่วยความจำแบบไดนามิกจะถูกละเว้น เนื่องจากหน่วยความจำจะแตกกระจายและประสิทธิภาพอาจลดลง เนื่องจาก MCU จำนวนมากไม่ได้ติดตั้ง Memory Management Units (MMU) อย่างไรก็ตาม สำหรับเกตเวย์เครือข่าย ควรปรับใช้การจัดสรรหน่วยความจำแบบไดนามิกสำหรับฟังก์ชันต่างๆ เพื่อหลีกเลี่ยงการจัดสรรหน่วยความจำขนาดใหญ่ล่วงหน้า
การใช้งานปัจจุบันอิงตาม RFC 8724 (https://datatracker.ietf.org/doc/html/rfc8724/) แต่ไม่มีคุณสมบัติบางอย่าง ส่วนใหญ่แสดงอยู่ภายใต้ issues
ในพื้นที่เก็บข้อมูลนี้
โปรดทราบว่าห้องสมุดใช้งานได้ แต่ยังคงอยู่ในช่วงทดลอง!
ในตัวอย่างโฟลเดอร์มีทั้งตัวอย่างการบีบอัดพื้นฐานและการแยกส่วนที่มีให้ ตัวอย่างการกระจายตัวใช้ไลบรารีตัวจับเวลาและควรปรับให้เข้ากับแพลตฟอร์มของคุณ (ดูการกระจายตัวและโฟลเดอร์ตัวอย่าง)
libschc มีลิขสิทธิ์แบบคู่ GNU General Public License เวอร์ชัน 3 ("ใบอนุญาต") เป็นใบอนุญาตโอเพ่นซอร์ส: คุณไม่สามารถใช้ไฟล์เหล่านี้ได้ยกเว้นในการปฏิบัติตามใบอนุญาต คุณสามารถขอรับสำเนาใบอนุญาตได้ที่ https://www.gnu.org/licenses/gpl-3.0.nl.html
ดูใบอนุญาตสำหรับภาษาเฉพาะที่ควบคุมการอนุญาตและข้อจำกัดภายใต้ใบอนุญาต
สำหรับใบอนุญาตที่ไม่ใช่โอเพ่นซอร์ส โปรดไปที่ https://imec.flintbox.com/#technologies/36dfa28f-bf48-4a34-8c29-4439fc41d563
© ลิขสิทธิ์ 2018-2023, Bart Moons [email protected], imec และ Ghent University