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);