IRC-Daemon

Als IRC-Daemon, kurz IRCd, wird der Daemon (Server-Software) bezeichnet, der bei einem IRC-Server im Internet Relay Chat eingesetzt wird.[1]

Der IRCd nimmt Verbindungen von IRC-Clients und anderen IRC-Servern entgegen und baut gegebenenfalls Verbindungen zu anderen IRC-Servern auf, um mit diesen ein IRC-Netzwerk zu bilden.[2] Hauptaufgabe ist es, Chats entgegenzunehmen und die einzelnen Nachrichten zwischen den IRC-Clients, also den Gesprächspartnern, zu vermitteln.[3]

Der erste IRCd wurde als freie Software 1988 von Jarkko Oikarinen entwickelt.[4] Die meisten IRC-Netzwerke setzen andere IRC-Daemons ein,[5] die entweder Weiterentwicklungen des originalen oder anderer IRCds sind,[6] oder auch komplett von Grund auf neu entwickelt wurden, wie InspIRCd. Die Version eines auf einem Server benutzten IRCds lässt sich meist mit dem IRC-Befehl /version abfragen.[7]

IRC-Services können als Erweiterung des IRCd gesehen werden, die den Nutzern weitere Funktionen bieten, und sind externe Programme, die sich mit dem IRCd verbinden wie auch die Clients oder die anderen Server im Netzwerk.[8]

IRC-Daemons sind in aller Regel ein einziger Systemprozess ohne Threads, da die meisten Aktionen auf den globalen Status der User oder Channel im Speicher lesend und oft auch schreibend zugreifen müssen und Threads kaum Geschwindigkeitszuwachs ermöglichen würden.

Dies stellt auch besondere Anforderungen an die Gestaltung der Software: Um einen Echtzeit-Chat[9] zu ermöglichen, darf der Prozess zu keinem Zeitpunkt länger an einer bestimmten Stelle blockieren bzw. auf externe Aktionen warten. Aus diesem Grund werden beispielsweise DNS-Abfragen oft durch einen internen Resolver durchgeführt statt über Betriebssystemfunktionen,[10] was z. B. auch mehrere simultane Namensauflösungen ermöglicht.

Einzelnachweise

  1. irchelp.org (Memento des Originals vom 22. April 2009 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.irchelp.org
  2. RFC 1459 Internet Relay Chat Protocol. Mai 1993, Abschnitt 1.1: Servers. (aktualisiert durch RFC 2810, englisch).
  3. RFC 2810 Internet Relay Chat: Architecture. April 2000, Abschnitt 4.2: Message Relaying. (englisch).
  4. irc.org
  5. searchirc.com
  6. ircd-hybrid.com
  7. RFC 1459 Internet Relay Chat Protocol. Mai 1993, Abschnitt 4.3.1: Version message. (aktualisiert durch RFC 2810, englisch).
  8. RFC 2810 Internet Relay Chat: Architecture. April 2000, Abschnitt 2.2.2: Service Clients. (englisch).
  9. RFC 2810 Internet Relay Chat: Architecture. April 2000, Abschnitt 4: IRC Protocol Services. (englisch).
  10. vulnscan.org
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.