Funkcje systemowe read oraz write służą odpowiednio do odczytu i zapisu na stworzonych deskryptorach.
int read(sockfd, char *buff, unsigned int nbytes)
int write(sockfd, char *buff, unsigned int nbytes)
Pierwszy argument to deskryptor gniazda, drugi argument to adres bufora, z którego będą zapisywane (odczytywane) wysłane (pobrane) informacje, a trzeci argument określa nam wielkość tego bufora. Wynik zwrócony określa nam ile faktycznie zostało odebranych (wysłanych) bajtów informacji.