wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

A small world of Sockets

profile
Ronak Gala
May 17, 2022
0 Likes
0 Discussions
152 Reads

Normally, a server runs on a specific computer and has a socket that is bound to a specific port number. The server just waits, listening to the socket for a client to make a connection request.

On the client-side: The client knows the hostname of the machine on which the server is running and the port number on which the server is listening. To make a connection request, the client tries to rendezvous with the server on the server's machine and port. The client also needs to identify itself to the server so it binds to a local port number that it will use during this connection. This is usually assigned by the system.

A client's connection request

If everything goes well, the server accepts the connection. Upon acceptance, the server gets a new socket bound to the same local port and also has its remote endpoint set to the address and port of the client. It needs a new socket so that it can continue to listen to the original socket for connection requests while tending to the needs of the connected client.

The connection is made

On the client side, if the connection is accepted, a socket is successfully created and the client can use the socket to communicate with the server.

The client and server can now communicate by writing to or reading from their sockets.

 

An endpoint is a combination of an IP address and a port number. Every TCP connection can be uniquely identified by its two endpoints. That way you can have multiple connections between your host and the server.

The java.net package in the Java platform provides a class, Socket, that implements one side of a two-way connection between your Java program and another program on the network. The Socket class sits on top of a platform-dependent implementation, hiding the details of any particular system from your Java program. By using the java.net.Socket class instead of relying on native code, your Java programs can communicate over the network in a platform-independent fashion.

Additionally, java.net includes the ServerSocket class, which implements a socket that servers can use to listen for and accept connections to clients. This lesson shows you how to use the Socket and ServerSocket classes.

If you are trying to connect to the Web, the URL class and related classes (URLConnection, URLEncoder) are probably more appropriate than the socket classes. In fact, URLs are a relatively high-level connection to the Web and use sockets as part of the underlying implementation.


Comments ()


Sign in

Read Next

Building Confidence in Children Through Daily Routines and Play

Blog banner

Friendship

Blog banner

Virtual memory

Blog banner

QUANTUM COMPUTING IN SECURITY:A GAME CHANGER IN DIGITAL WORLD

Blog banner

Festive Ethnic Wear Guide: Patola-Inspired Looks for Every Celebration

Blog banner

Internet: The Vast Ocean Of Knowledge.

Blog banner

?Why Social and Emotional Skills Matter More Than ABCs in Early Years?

Blog banner

What do you mean by online marketing and why do you need to know about it

Blog banner

Mariana Trench: The deepest depths

Blog banner

POSITIVE ATTITUDE IN LIFE

Blog banner

Evolution of Operating Systems

Blog banner

Discover The Top 3 Places To Stay in London

Blog banner

What is 'Multi-core and Multi-threading' ?

Blog banner

India Digital Personal Data Protection Act, 2023

Blog banner

KAHAWA TEA

Blog banner

Excel records

Blog banner

Strengthening Active Directory Security

Blog banner

Southern Turkey Earthquake: Causes and Consequences of a Tragic Natural Disaster

Blog banner

What is the point of living if we can die at any moment of our lives ?

Blog banner

Password Generator - Lisp

Blog banner

Modern Operating System - Khush bagaria

Blog banner

Understanding - Proof of Work!

Blog banner

Life of a 2020-2021 student

Blog banner

Zero-Click Searches: How To Stay Visible In Google’s New Era

Blog banner

Cyber Crime Investigation In The Era Of Big Data

Blog banner

Multicore and multithreading 171

Blog banner

Deadlock

Blog banner

The Psychology of Diversity, Equity & Inclusion: How Inclusive Workplaces Boost Productivity

Blog banner

What is E-commerce

Blog banner

differentiate thinking humanly and rationally

Blog banner

How Cyber Forensics help prevent Crimes

Blog banner

MEMORY MANAGEMENT FILE

Blog banner

A book review

Blog banner

Virtual memory

Blog banner

How Preschool Annual Day Shapes Confidence, Emotions, and Growth

Blog banner

Social media

Blog banner

Virtual memory

Blog banner

Deadlock

Blog banner

ahh wait a min

Blog banner

Asana

Blog banner

I/O Management and Disk Scheduling

Blog banner

Multiprocessor and scheduling

Blog banner