* BSD neden ağ arabirimleri için sürücüye özel adlar kullanıyor?
İşleri basitleştirmek için. Adlandırılmış bir arayüze bge0
bakar ve kılavuzlara bakarsanız veya anımsatıcı bağlantı sisteminizi kullanırsanız, bu sürücünün bir Broadcom Gigabit Etherhet olduğunu hızlı bir şekilde hatırlayacaksınız . Bu belge de kullanışlıdır.
Bu, çekirdekte "genel bir ağ arabirimini" tanımlayan bir soyutlama katmanının olmadığı anlamına mı geliyor, bu nedenle her bir sürücü kendi API'sı aracılığıyla dahili olarak ele alınacak mı?
Buradaki kural:
- Aygıt adı oluşturmak için sürücünün adını kullanın;
- Aygıt adından hemen sonra numara oluşturmak için en düşük PCI kimliğini kullanın;
Soyutlama katmanı gerekmez. Bu kadar basit.
(nasıl) bağlantı toplama, trafik şekillendirme, QoS (ALTQ), filtreleme ve diğerleri gibi alt sistemleri etkiler mi?
Arabirim adları trafik gölgelemesini engellememelidir.
Tam olarak, pfSense altında görünüyor, ALTQ'yu bir bağlantı toplama (LAG) sanal arabirimiyle kullanamıyorum.
Bugün çalışmalı:
Bu, uygun bir soyutlama katmanının olmaması nedeniyle BSD iç sınırlaması mıdır?
Bunun üstesinden gelmek için uygun bir katman olmadığı anlamına gelmez. Bunun nedeni , arabirim adları ( /etc/rc.conf
) oluşturmak veya anakart kurulumundaki pci kimliğini değiştirmek gibi diğer adları işlemek için başka kaynakları kullanabilmenizdir . Ve bu soru üzerine başkaları tarafından söylendiği gibi, Linux bile bu yola gider biosdevname
.