Вы находитесь на странице: 1из 3

Introduction This is a simple implementation of a TCP client server relationship.

To use Compile the server and client programs separately. Before compiling change the I P address in both programs to match that of your machine (NOTE : to get your IP address run 'ipconfig' from the command prompt in Windows NT/2000 m/c's) When the server program is run, it will indicate at which IP it is running and t he port it is listening to. Now run the client program is run , so as to establi sh a connection with the server. When a connection is established the server will display the IP address and Port from where it has accepted the connection and client will ask for the string wh ich is to be transmitted to the server. The server on reciept of the string will display it, send an acknowledgement whi ch will be recieved by the client. The client can be either run from the same machine as the server or from a diffe rent machine. If run from a different machine then a network connection should e xist between the machines running the server and client programs Collapse Copy Code // /* using using using using Server Program */

System; System.Text; System.Net; System.Net.Sockets;

public class serv { public static void Main() { try { IPAddress ipAd = IPAddress.Parse("172.21.5.99"); // use local m/c IP address, and // use the same in the client /* Initializes the Listener */ TcpListener myList=new TcpListener(ipAd,8001); /* Start Listeneting at the specified port */ myList.Start(); Console.WriteLine("The server is running at port 8001..."); Console.WriteLine("The local End point is :" + myList.LocalEndpoint ); Console.WriteLine("Waiting for a connection....."); Socket s=myList.AcceptSocket(); Console.WriteLine("Connection accepted from " + s.RemoteEndPoint); byte[] b=new byte[100]; int k=s.Receive(b);

Console.WriteLine("Recieved..."); for (int i=0;i<k;i++) Console.Write(Convert.ToChar(b[i])); ASCIIEncoding asen=new ASCIIEncoding(); s.Send(asen.GetBytes("The string was recieved by the server.")); Console.WriteLine("\nSent Acknowledgement"); /* clean up */ s.Close(); myList.Stop(); } catch (Exception e) { Console.WriteLine("Error..... " + e.StackTrace); } } } --------------------------------------------------------------------------/* using using using using using Client Program System; System.IO; System.Net; System.Text; System.Net.Sockets; */

public class clnt { public static void Main() { try { TcpClient tcpclnt = new TcpClient(); Console.WriteLine("Connecting....."); tcpclnt.Connect("172.21.5.99",8001); // use the ipaddress as in the server program Console.WriteLine("Connected"); Console.Write("Enter the string to be transmitted : "); String str=Console.ReadLine(); Stream stm = tcpclnt.GetStream(); ASCIIEncoding asen= new ASCIIEncoding(); byte[] ba=asen.GetBytes(str); Console.WriteLine("Transmitting....."); stm.Write(ba,0,ba.Length); byte[] bb=new byte[100]; int k=stm.Read(bb,0,100); for (int i=0;i<k;i++) Console.Write(Convert.ToChar(bb[i]));

tcpclnt.Close(); } catch (Exception e) { Console.WriteLine("Error..... " + e.StackTrace); } } } //

Вам также может понравиться