next up previous contents
Next: Einen Verbindungswunsch äußern Up: 3.3 Anwendungsentwicklung Previous: 3.3 Anwendungsentwicklung

3.3.1 Einen Socket erzeugen

Ein Socket wird mit der Funktion socket() erzeugt. Die Aufrufschnittstelle lautet:

int socket(int family , int type , int protocol );
Der erste Parameter family gibt an, welche Protokollfamilie zur Kommunikation verwendet werden soll. Im Fall des Internet-Protokolls Version 4 ist hier PF_INET zu übergeben. Für IPv6 wurde die neue Familie PF_INET6 definiert.

Der zweite Parameter type spezifiziert den Typ des Sockets. Hier stehen unter anderem unverändert SOCK_STREAM für zuverlässige, verbindungsorientierte und SOCK_DGRAM für unzuverlässige, verbindungslose Kommunikation zur Verfügung.

Mit dem dritten Parameter protocol wird das Transportprotokoll ausgewählt. Wird hier 0 angegeben, so benutzt die Funktion das jeweilige Default-Protokoll des Socket-Typs. Bei SOCK_STREAM ist dies TCP, bei SOCK_DGRAM UDP.

Der Funktionsaufruf liefert die Nummer des erzeugten Sockets als Ergebnis zurück.

Wurde in einem C-Programm ein IPv4/TCP-Socket bisher so erzeugt:

sock = socket(PF_INET, SOCK_STREAM, 0);
lautet der Funktionsaufruf für die Erzeugung eines IPv6/TCP-Sockets nun so:
sock = socket(PF_INET6, SOCK_STREAM, 0);


Copyright Munich Network Management Team