HOME

TheInfoList



OR:

Avahi is a free
zero-configuration networking Zero-configuration networking (zeroconf) is a set of technologies that automatically creates a usable computer network based on the Internet Protocol Suite (TCP/IP) when computers or network peripherals are interconnected. It does not require manu ...
(zeroconf) implementation, including a system for
multicast DNS In computer networking, the multicast DNS (mDNS) protocol resolves hostnames to IP addresses within small networks that do not include a local name server. It is a zero-configuration service, using essentially the same programming interfaces, pac ...
/ DNS-SD
service discovery Service discovery is the process of automatically detecting devices and services on a computer network. This reduces the need for manual configuration by users and administrators. A service discovery protocol (SDP) is a network protocol that hel ...
. It is licensed under the
GNU Lesser General Public License The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
(LGPL). Avahi is a system which enables programs to publish and discover services and hosts running on a local network. For example, a user can plug a computer into a network and have Avahi automatically advertise the
network service In computer networking, a network service is an application running at the network application layer and above, that provides data storage, manipulation, presentation, communication or other capability which is often implemented using a client� ...
s running on its machine, facilitating user access to those services.


Software architecture

Avahi implements the Apple
Zeroconf Zero-configuration networking (zeroconf) is a set of technologies that automatically creates a usable computer network based on the Internet Protocol Suite (TCP/IP) when computers or network peripherals are interconnected. It does not require ma ...
specification, mDNS, DNS-SD and RFC 3927/
IPv4LL In computer networking, a link-local address is a unicast network address that is valid only for communications within the subnetwork that the host is connected to. Link-local addresses are most often assigned automatically with a process known as ...
. Other implementations include Apple's
Bonjour Bonjour is a French word meaning (literally translated) "good day", and is commonly used as a greeting. Bonjour may also refer to: People * Laurence BonJour (born 1943), epistemologist and professor of philosophy at the University of Washington * ...
framework (the mDNSResponder component of which is licensed under the Apache License). Avahi provides a set of language bindings ( Python, Mono, etc.) and ships with most
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
and
BSD The Berkeley Software Distribution or Berkeley Standard Distribution (BSD) is a discontinued operating system based on Research Unix, developed and distributed by the Computer Systems Research Group (CSRG) at the University of California, Be ...
distributions. Because of its modularized architecture, major desktop components like GNOME
Virtual file system A virtual file system (VFS) or virtual filesystem switch is an abstract layer on top of a more concrete file system. The purpose of a VFS is to allow client applications to access different types of concrete file systems in a uniform way. A VFS ...
and
KDE KDE is an international free software community that develops free and open-source software. As a central development hub, it provides tools and resources that allow collaborative work on this kind of software. Well-known products include the ...
input/output architecture already integrate Avahi.


Avahi vs. Bonjour

The Avahi project started in 2004 because
Apple An apple is an edible fruit produced by an apple tree (''Malus domestica''). Apple trees are cultivated worldwide and are the most widely grown species in the genus '' Malus''. The tree originated in Central Asia, where its wild ances ...
's Zeroconf implementation,
Bonjour Bonjour is a French word meaning (literally translated) "good day", and is commonly used as a greeting. Bonjour may also refer to: People * Laurence BonJour (born 1943), epistemologist and professor of philosophy at the University of Washington * ...
, used the GPL-incompatible
Apple Public Source License The Apple Public Source License (APSL) is the open-source and free software license under which Apple's Darwin operating system was released in 2000. A free and open-source software license was voluntarily adopted to further involve the communit ...
. In 2006 Apple relicensed parts of Bonjour under the Apache License. Avahi's performance resembles that of Bonjour, sometimes exceeding it; however Avahi can lose services when managing large numbers of requests simultaneously.


History

Avahi was developed by
Lennart Poettering Lennart Poettering (born 15 October 1980) is a German software engineer working for Microsoft and the original author of PulseAudio, Avahi and systemd. Life and career Poettering was born in Guatemala City but grew up in Rio de Janeiro, B ...
and Trent Lloyd. It is the result of a merger in 2005 of Poettering's original mDNS/DNS-SD implementation called "FlexMDNS", and Lloyd's original code called "Avahi". While most of today's code originates from the former project, the name of the latter was used for the joint project. Development on "FlexMDNS" started in late 2004, and work on the original "Avahi" began in early 2004. Avahi was originally developed under the freedesktop.org umbrella, but has now become a separate project. Avahi, however, makes use of freedesktop.org's
D-Bus In computing, D-Bus (short for "Desktop Bus") is a message-oriented middleware mechanism that allows communication between multiple processes running concurrently on the same machine. D-Bus was developed as part of the freedesktop.org project, ...
IPC layer. The name ''Avahi'' is the Malagasy native name and scientific Latin name of a genus of
woolly lemur The woolly lemurs, also known as avahis or woolly indris, are nine species of strepsirrhine primates in the genus ''Avahi''. Like all other lemurs, they live only on the island of Madagascar. With a body size of and a weight of , the woolly lem ...
, a family of
primate Primates are a diverse order (biology), order of mammals. They are divided into the Strepsirrhini, strepsirrhines, which include the lemurs, galagos, and lorisids, and the Haplorhini, haplorhines, which include the Tarsiiformes, tarsiers and ...
s indigenous to
Madagascar Madagascar (; mg, Madagasikara, ), officially the Republic of Madagascar ( mg, Repoblikan'i Madagasikara, links=no, ; french: République de Madagascar), is an island country in the Indian Ocean, approximately off the coast of East Africa ...
. Trent Lloyd found the name, liked it, and it stuck. The logo reflects this. Perhaps in coincidence, Avahi backwards is "I-hav-a", a description of a discovery advertisement.


See also

* Linux on the desktop *
Lightweight Directory Access Protocol The Lightweight Directory Access Protocol (LDAP ) is an open, vendor-neutral, industry standard application protocol for accessing and maintaining distributed directory information services over an Internet Protocol (IP) network. Directory serv ...
*
Network Information Service The Network Information Service, or NIS (originally called Yellow Pages or YP), is a client–server directory service protocol for distributing system configuration data such as user and host names between computers on a computer network. Su ...
*
OSGi OSGi is an open specification and open source project under the Eclipse Foundation. It is a continuation of the work done by the OSGi Alliance (formerly known as the Open Services Gateway initiative), which was an open standards organization for ...
Alliance


References


External links

*
Talk
an
slides
by Poettering/Lloyd at linux.conf.au 2007 {{Freedesktop.org Freedesktop.org Applications using D-Bus Free network-related software Free software programmed in C GNOME KDE