Socket Programming T.SondosAlhomaidhi 2013
Introduction • Concepts of intercommunication between programs running on different computers in the network. • concepts involved in creating network applications using sockets. • It’s introduces the java.net package containing classes for creating sockets and message communication. • It Involves Developing Internet-enabled distributed applications.
Client/Server Communication Client machine: A computer running a program that makes a request for services. Server machine: A computer running a program that offers requested services from one or more clients The media for communication can be wired or wireless network.
Client/Server Communication • Involving networking services provided by the transport layer ( TCP/IP). • The most widely used programming interfaces for these protocols are sockets.
Sockets and Socket-based Communication • Sockets provide an interface for programming networks at the transport layer. • It’s similar to performing file I/O. • It’s independent of a programming language.
Socket Programming How its work? • A server runs on a specific computer and has a socket that is bound to a specific port. • The server listens to the socket for a client to make a connection request • the server accepts the connection • Upon acceptance, the server gets a new socket bound to a different port. (It needs a new socket, different port number, to continue listing to the original socket while serving the connected client)