TCP/IP ist in der Lage verbindungsfreie und verbindungsorientierte Netzwerkkommunikation zu betreiben, was eine Angabe zum gewünschten Type erforderlich macht.
Eine verbindungorientierte Kommunikation besteht aus einem einzigen seriellen Datenstrom, ohne irgendwelche Felder oder andere Arten von Grenzen.
Eine verbindungsfreie Kommunikation verschickt die Daten in separate, für sich selbst stehende Datenpakete (Datagramme).
Der Socket wird durch Übergabe von Konstanten, die für die jeweilige Betriebsart stehen, konfiguriert. Die Konstante SOCK_DGRAM steht für die Kommunikation mit Datagrammen, also der verbindungsfreien Kommunikation, und die Konstante SOCK_STREAM für Stream und somit für die verbindungorientierte Kommunikation.
Ein weiterer Kommunikationstyp ist der sogenannte Raw Socket, der mit der Konstanten SOCK_RAW definiert ist. Mit diesem Typ können die Programme Low-Level-Protokolle, wie das Internet Control Message Protokoll (ICMP), benutzen. Zum Beispiel verwendet das Programm "ping" einen solchen Raw Socket und benutzt darüber das ICMP.