Soket Internet adalah istilah yang digunakan untuk mengidentifikasi titik koneksi yang dapat digunakan oleh program perangkat lunak komputer apa pun untuk mengirimkan data melalui Internet. Mereka bukan konstruksi fisik, seperti stopkontak listrik, melainkan konsep perangkat lunak komputer. Dengan soket seperti itu, data apa pun yang diperlukan dapat berjalan bolak-balik dari program yang berjalan di satu komputer ke program yang berjalan di komputer lain; dalam banyak kasus, ini adalah ke dan dari klien dan server. Istilah ini juga digunakan untuk merujuk pada antarmuka pemrograman aplikasi (API) yang dapat digunakan oleh pemrogram komputer untuk membuat aplikasi sadar jaringan yang mampu mengirim dan menerima data melalui Internet.
Soket bekerja di lapisan atas tumpukan protokol Internet (IP), yang dikenal sebagai lapisan transport, tempat data dilewatkan dari aplikasi ke jaringan melalui sistem operasi. Ketika aplikasi di komputer ingin mengirim dan menerima data dari koneksi jaringan, aplikasi tersebut meminta sistem operasi untuk membuka soket Internet. Soket diatur yang terdiri dari informasi protokol, seperti protokol datagram pengguna (UDP) atau protokol kontrol transmisi (TCP), serta alamat pengirim dan penerima kedua komputer dan nomor port IP untuk koneksi. Mungkin juga soket Internet dibuat yang melewati sistem operasi dan mengirim paket mentah tanpa terlebih dahulu membiarkan sistem operasi komputer menangani informasi soket tambahan.
Seperti yang biasa digunakan pada server Internet, perangkat lunak server memulai dan membuka soket pendengar. Saat server menerima permintaan data, server kemudian membuat soket unik untuk klien yang meminta, yang kemudian digunakan untuk mengirimkan data yang diminta. Jenis koneksi ini juga disebut sebagai sesi, karena soket ditutup oleh server setelah klien selesai. Dengan cara ini, server dapat membuat sejumlah soket simultan dengan klien lain, masing-masing dengan pengidentifikasi unik mereka sendiri, dan mengirimkan data yang unik untuk setiap klien.
Dengan demikian, ada tiga jenis umum soket Internet. Salah satu jenis tersebut adalah soket datagram. Ini adalah koneksi soket cepat yang tidak memerlukan komunikasi tambahan untuk membuat koneksi khusus sebelum mengirim paket data. Untuk alasan ini, mereka sering disebut sebagai soket tanpa koneksi dan menggunakan UDP sebagai protokol transportnya. Mereka semacam metode fire-and-forget, karena tidak ada pemeriksaan urutan paket atau koreksi kesalahan.
Soket berorientasi koneksi, bagaimanapun, disebut soket aliran, melalui beberapa langkah tambahan untuk membangun hubungan komunikasi antara klien dan server. Ini menggunakan TCP, atau protokol lain yang dikenal sebagai protokol transmisi kontrol aliran (SCTP), untuk transportasi. Jenis soket Internet ini lebih andal dan memiliki sarana untuk menangani kesalahan seperti paket yang hilang.
Satu jenis soket Internet unik lainnya digunakan terutama untuk perutean jaringan komputer. Soket jenis ini melewatkan lapisan transport tumpukan IP, alih-alih meneruskan paket dari jaringan langsung ke aplikasi dengan informasi soket masih utuh. Soket mentah semacam itu memungkinkan pengiriman paket yang jauh lebih cepat ke aplikasi, karena sistem operasi komputer tidak dapat mengatur paket terlebih dahulu. Protokol pesan kontrol Internet (ICMP) menggunakan soket mentah seperti itu ketika satu komputer hanya ingin “ping” yang lain.