Socket

A socket is a software component that helps computer programs communicate over a network. The term "socket" evokes a physical socket that you plug a networking cable into and through which all data travels. Applications establish software networking sockets for a similar purpose — all data an application sends out and receives over a network connection passes through its socket.

Sockets provide a standard method for a program to establish network connections. Software developers can use an API to create a socket managed by the operating system so that they don't need to write their own way from scratch. When the application needs to send data out over the network, it writes that data to the socket as if it were writing a file to a disk. The operating system detects this and automatically forwards the data packet out over the network and to its destination.

Each socket has a unique socket address that combines an IP address and a port number. This address identifies both the specific computer the socket is running on and the application that created it. Applications running on a server create sockets when they launch and maintain them in a listening state, while applications on clients can open and close sockets as needed. While a socket is open, the operating system monitors it for incoming and outgoing data packets and looks at each packet's socket address to know where to forward it.

For example, when you visit a website with your web browser, it creates a socket that connects to another one on a remote web server using its IP address and port number (80 for HTTP connections and 443 for HTTPS connections). The browser sends a request for a specific webpage to this socket, which the operating system detects and forwards to the web server. When the web server sends the requested page back to your computer, the operating system looks at the socket address and knows to send it back to the web browser.

Updated November 9, 2023 by Brian P.

quizTest Your Knowledge

Which of the following best describes email bankruptcy?

A
When someone can't log into an email account
0%
B
When someone is overwhelmed by too many emails and deletes them
0%
C
When someone's email address is blacklisted by major email platforms
0%
D
When someone takes over another person's email address
0%
Correct! Incorrect!     View the E-mail Bankruptcy definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of Socket on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation bar directly below the definition.

Our goal to explain computer terminology in a way that is easy to understand. We strive for accuracy and simplicity with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

TechTerms Newsletter

Improve your technical knowledge with our daily or weekly newsletter! Subscribe today and get new terms and quizzes delivered to your inbox.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.