# Networking sockets - Java Networking is a concept of connecting two or more computing devices together so that we can share resources. - Java socket programming provides facility to share data between different computing devices. - A socket is one endpoint of a two-way communication link between two programs running on the network. A socket is bound to a port number so that the TCP layer can identify the application that data is destined to be sent to. Visit the following resources to learn more: - [Sockets](https://docs.oracle.com/javase/tutorial/networking/sockets/index.html) - [What is Socket Programming?](https://youtu.be/BqBKEXLqdvI) - [Socket Programming](https://www.geeksforgeeks.org/socket-programming-in-java/) - [Java Networking](https://www.tutorialspoint.com/java/java_networking.htm)