Interactive Connectivity Establishment ( ICE ) ist eine Technik in Computernetzwerken , die es ermöglicht, in Peer-to-Peer -Netzwerken möglichst direkte Kommunikationswege zwischen zwei Computern herzustellen . Sie wird häufig für interaktive Medien wie Voice over Internet Protocol (VoIP), Peer-to-Peer -Kommunikation, Video und Instant Messaging eingesetzt . In solchen Anwendungen wäre die Kommunikation über einen zentralen Server langsam und teuer, während die direkte Kommunikation zwischen Client-Anwendungen im Internet aufgrund von Netzwerkadressübersetzern (NATs), Firewalls und anderen Netzwerkbarrieren sehr schwierig ist.

ICE wurde von der Arbeitsgruppe MMUSIC der Internet Engineering Task Force entwickelt und ist seit August 2018 als RFC 8445 veröffentlicht [ 1 ]. Es hat sowohl RFC 5245 [ 2 ] als auch RFC 4091 [ 3 ] ersetzt.

Überblick

Die Netzwerkadressübersetzung (NAT) hat sich als effektive Methode erwiesen, um die Erschöpfung des verfügbaren Adresspools des Internetprotokolls Version 4 (IPv4) hinauszuzögern , der naturgemäß auf etwa vier Milliarden eindeutige Adressen begrenzt ist. NAT-Gateways verfolgen ausgehende Anfragen aus einem privaten Netzwerk und verwalten den Status jeder hergestellten Verbindung, um spätere Antworten vom Peer im öffentlichen Netzwerk an den Peer im privaten Netzwerk weiterzuleiten, der andernfalls nicht direkt adressierbar wäre.

VoIP, Peer-to-Peer-Verbindungen und viele andere Anwendungen benötigen Adressinformationen der Kommunikationspartner innerhalb der Datenströme der Verbindung, nicht nur in den IP-Paketheadern. Beispielsweise übermittelt das Session Initiation Protocol (SIP) die IP-Adresse von Netzwerkclients zur Registrierung bei einem Ortungsdienst, damit Telefonanrufe an registrierte Clients weitergeleitet werden können. ICE bietet ein Framework, mit dem ein Kommunikationspartner seine öffentliche IP-Adresse ermitteln und übermitteln kann, sodass er von anderen Teilnehmern erreicht werden kann.

Session Traversal Utilities for NAT (STUN) ist ein standardisiertes Protokoll zur Adressermittlung einschließlich NAT-Klassifizierung. Traversal Using Relays around NAT (TURN) nutzt einen Drittanbieter-Server zur Weiterleitung von Nachrichten zwischen zwei Clients, wenn der direkte Medienverkehr zwischen den Peers durch eine Firewall blockiert wird.

IETF-Spezifikationen

  • RFC 8489 : Session Traversal Utilities for NAT (STUN).
  • RFC 8656 : Traversal Using Relays around NAT (TURN): Relay Extensions to STUN.
  • RFC 6544 : TCP-Kandidaten mit interaktiver Verbindungsherstellung (ICE)
  • RFC 8445 : Interactive Connectivity Establishment (ICE): Ein Protokoll für Network Address Translator (NAT) Traversal

Siehe auch

Referenzen

  1. ^ RFC 8445, Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal , A. Keranen, C. Holmberg Ericsson, J. Rosenberg (Juli 2018)
  2. ^ RFC 5245, Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal for Offer/Answer Protocols , J. Rosenberg (April 2010)
  3. ^ RFC 4091, Die alternativen Netzwerkadresstypen (ANAT) Semantik für das Session Description Protocol (SDP) Gruppierungsframework , G. Camarillo, J. Rosenberg (Juni 2005)