การตั้งค่าnet.core.wmem_default
และwmem_max
ควบคุมขนาดบัฟเฟอร์เริ่มต้นและสูงสุดของบัฟเฟอร์ซ็อกเก็ต TX เป็นไบต์ ในขณะที่คิวนั้นเป็นเพียงรายการเชื่อมโยงของพskb
อยน์เตอร์เคอร์เนลยังติดตามจำนวนไบต์ทั้งหมดที่ใช้โดยskb
's ขณะที่กำลังเพิ่มและลบออกจากบัฟเฟอร์ซ็อกเก็ต wmem_default
sysctl กำหนดเพดานเริ่มต้นเริ่มต้นสำหรับซ็อกเก็ตใหม่ ( net/core/sock.c:sock_init_data()
) แอปพลิเคชันได้รับอนุญาตให้เพิ่มขนาดของบัฟเฟอร์ของซ็อกเก็ตและwmem_max
เป็นเพดานสำหรับการทำงานนั้น ( net/core/sock.c:sock_setsockopt()
)
เมื่อแพ็กเก็ตถูกลบออกจากซ็อกเก็ตบัฟเฟอร์และหาทางผ่านสแต็กเครือข่ายเคอร์เนลมันจะถูกวางลงบนคิวการส่งผ่านเพื่อให้อินเตอร์เฟสรอให้โหลดลงบน NIC txqueuelen
ชุดโดยifconfig
หรือip
คำสั่งเป็นจำนวนเฟรมได้รับอนุญาตต่อคิวส่งเคอร์เนลวินัยเข้าคิว ( net/sched/sch_generic.c:pfifo_fast_enqueue()
)
สุดท้าย ethtool -G
ใช้ ioctl เพื่อตั้งค่าจำนวนรายการแหวนสำหรับบัฟเฟอร์แหวนบน NIC เอง