LwIP - LwIP

LwIP
Orijinal yazar (lar)Adam Dunkels
Geliştirici (ler)lwIP geliştiriciler grubu
Kararlı sürüm
2.1.2 / 22 Kasım 2018; 2 yıl önce (2018-11-22)
Depo Bunu Vikiveri'de düzenleyin
YazılmışC
İşletim sistemiçoklu
Platformgömülü sistemler
TürIP yığını
LisansDeğiştirilmiş BSD lisansı
İnternet sitesiwww.nongnu.org/ lwip/

LWIP (hafif IP) yaygın olarak kullanılan bir açık kaynak TCP / IP yığını için tasarlandı gömülü sistemler. lwIP başlangıçta tarafından geliştirilmiştir Adam Dunkels -de İsveç Bilgisayar Bilimleri Enstitüsü ve artık dünya çapında bir geliştirici ağı tarafından geliştirilip sürdürülmektedir.

lwIP birçok gömülü sistem üreticisi tarafından kullanılmaktadır. Örnekler şunları içerir: Altera (içinde Nios II işletim sistemi ), Analog cihazlar (için Blackfin DSP yonga),[1] Xilinx,[2] Honeywell (FAA sertifikalı aviyonik sistemlerinden bazıları için) ve Freescale Semiconductor (Otomotiv mikro denetleyicileri için Ethernet Akış Yazılımı).

lwIP ağ yığını

LwIP ağ yığını uygulamasının odak noktası, tam ölçekli bir TCP yığınına sahipken kaynak kullanımını azaltmaktır.[3] Bu, lwIP'yi onlarca kilobayt boş RAM ve yaklaşık 40 kilobayt kod ROM alanı içeren gömülü sistemlerde kullanıma uygun hale getirir.

lwIP protokol uygulamaları

Dışında TCP / IP yığını, lwIP'in diğer birkaç önemli bölümü vardır. ağ Arayüzü bir işletim sistemi öykünme katmanı, tamponlar ve bir bellek yönetimi bölümü. İşletim sistemi öykünme katmanı ve ağ arabirimi, ağ yığınının bir işletim sistemine aktarılmasına izin verir, çünkü lwIP kodu ve ağ arabirimi arasında ortak bir arabirim sağlar. işletim sistemi çekirdeği.[3]

LwIP'nin ağ yığını, bir IP (İnternet Protokolü) uygulaması İnternet katmanı bu, birden çok ağ arabirimi üzerinden paket iletimini gerçekleştirebilir.[3] Her ikisi de IPv4 ve IPv6 lwIP v2.0.0'dan beri desteklenmektedir ikili yığın.[4] Ağ bakımı ve hata ayıklama için lwIP uygular ICMP (İnternet Kontrol Mesajı Protokolü).[3] IGMP (İnternet Grup Yönetim Protokolü), çok noktaya yayın trafik yönetimi için desteklenir. Süre ICMPv6 (dahil olmak üzere MLD ) IPv6 kullanımını desteklemek için uygulanır.[kaynak belirtilmeli ]

lwIP, IPv4'ün bir uygulamasını içerir ARP (Adres Çözümleme Protokolü) ve IPv6 Komşu Bulma Protokolü desteklemek Ethernet -de veri bağlantı katmanı. lwIP ayrıca bir PPP Veri bağlantı katmanında (Noktadan Noktaya Protokol) uygulaması.[kaynak belirtilmeli ]

Şurada taşıma katmanı lwIP uygular TCP Tıkanıklık kontrolü, RTT tahmini ve hızlı kurtarma / hızlı yeniden iletim ile (İletim Kontrol Protokolü).[3] UDP (Kullanıcı Datagram Protokolü) deneysel olarak uygulanır. UDP-Lite uzantılar.[kaynak belirtilmeli ]

API'ler ve soketler

lwIP özel bir kopyasızlık sağlar uygulama programlama Arayüzü (API) gelişmiş ağ yığını performansı için. Berkeley soket API'si İsteğe bağlı.[3] Ham yuvalar veya ham pcb'ler kullanılan API'ye bağlı olarak sağlanır.[5]

Uygulama katmanı desteği

Uygulama katmanında, lwIP ağ yığını, aşağıdaki protokollerin uygulanmasıyla desteklenebilir. DNS (Alan Adı Sistemi), bir SNMP (Basit Ağ Yönetimi Protokolü) aracısı, v1, v2 veya v3'te özel MIB (yönetim bilgi tabanı ) destek ve MIB derleyicisi.

LwIP TCP / IP yığınını uygulayan işletim sistemleri, uygulama katmanında bir dizi destekleyici istemci ve sunucu sağlayabilir. IPv4 gibi DHCP (Dinamik Ana Bilgisayar Yapılandırma Protokolü) istemcisi veya IPv4 Yerel bağlantı adresleri (aka. AutoIP). Özelleştirilmiş ham API uygulamaları şunları içerir: HTTP sunucu, bir SNTP müşteri, bir SMTP müşteri, bir NetBIOS ad sunucusu, bir mDNS cevaplayıcı, bir MQTT müşteri ve bir TFTP sunucu.[kaynak belirtilmeli ]

İşletim sistemi uygulamaları

lwIP, ağ yığını olarak kullanılır ReactOS ve Genod[6] ve kullanılabilir Minix ve GNU Hurd ağ sunucularını uygulamak için.

Ayrıca bakınız

  • mikro IP (uIP )

Referanslar

  1. ^ "Blackfin İşlemcileri Kullanan Kompleks VDK / LwIP Uygulamaları Oluşturma ", Kaushal Sanghai, Analog Devices Inc. Eylül 2008
  2. ^ Siva Velusamy, LightWeight IP (lwIP) Uygulama Örnekleri, Xilinx Inc. Haziran 2009
  3. ^ a b c d e f (ed.), Yanwen Wu (2010). Yazılım mühendisliği ve bilgi mühendisliği: teori ve pratik. Berlin: Springer. s. 639. ISBN  978-3-642-03717-7.CS1 bakimi: ek metin: yazarlar listesi (bağlantı)
  4. ^ http://www.nongnu.org/lwip/2_0_x/upgrading.html
  5. ^ lwIP işlevleri belgeleri
  6. ^ "Genode OS Framework 9.11 için sürüm notları".

Dış bağlantılar