Introduction : Socket Programming : Creating Network Applications :-
lets explore how socket programming : creating network applications are actually crate. A client program and a server program- residing in two different end systems. When these two programs are execute, a client process and a server process are create; and these processes communicate with each other by reading from, and writing to, sockets. When creating a network application the developers main task is therefore to write the code for both th client and server programs.
There are two types of network applications. One type is an implementation whose operation is specified in a protocol standard; such as an RFC or some other standards document; such an application is sometimes refer to as “open,” since the rules specifying its operation are know to all. For such an implementation, the client and server programs must confirm to the rules dictated by RFC. For example, the client program could be an implementation the client side of the FTP protocol. Similarly, the server programs could be an implementation of the FTP sever protocol, also explicitly defines RFC 959. If one developer writes code for the client program and another developer writes code for the server program; and both developers carefully follow the rules of the RFC, then the two programs will be able to interoperate.
More about Socket Programming : Creating Network Applications :-
The other type of network application is a proprietry network application. In this case the client and server programs employ an application-layer protocol that has not been openly published in an RFC or elsewhere. A single developer (or development team) creates both the client and server programs; and the developer has complete control over what goes in th code. But because the code does not implement an open protocol; other independent developers will not be able to develop code that interoperates with the application.