Sunday, October 9, 2011

Socket programming Source Code

During my Network and OS lab i have did this program, Anyway we have to do in Java but i wrote in python too,

here is in java

//UDPServer.java

import java.net.*;
import java.io.*;


class UDPServer 
{
   public static void main(String args[]) throws Exception
      {
       
        byte[] receive_data = new byte[1024];
         byte[] send_data = new byte[1024];
         
         int recv_port;
         
         DatagramSocket server_socket = new DatagramSocket(5000);
         
         System.out.println ("UDPServer Waiting for client on port 5000");
         
              
         while(true)
         {
          
          DatagramPacket receive_packet = new DatagramPacket(receive_data,
                                              receive_data.length);
                                              
                  server_socket.receive(receive_packet);
                  
                  String data = new String(receive_packet.getData(),0                                          ,0
                                           ,receive_packet.getLength());
                  
                  InetAddress IPAddress = receive_packet.getAddress();
                  
                  recv_port = receive_packet.getPort();
                  
                  if (data.equals("q") || data.equals("Q"))
                  break;
                  
                  else
                  
                  System.out.println("( " + IPAddress + " , " + recv_port 
                  + " ) said :" + data );
                  
                  
         }
      }
}
//UDPClient.java

import java.net.*;
import java.io.*;

class UDPClient 
{
   public static void main(String args[]) throws Exception
   {
      
      byte[] send_data = new byte[1024];
      
      BufferedReader infromuser = 
                        new BufferedReader(new InputStreamReader(System.in));
                        
      DatagramSocket client_socket = new DatagramSocket();
      
      InetAddress IPAddress =  InetAddress.getByName("127.0.0.1");
      
      while (true)
      {
       
       System.out.println("Type Something (q or Q to quit): ");
       
       String data = infromuser.readLine();
       
       if (data.equals("q") || data.equals("Q"))
       break;
       
       else
       
       {
        
       send_data = data.getBytes();
      
        DatagramPacket send_packet = new DatagramPacket(send_data,
                                                        send_data.length, 
                                                        IPAddress, 5000);
                                                      
        client_socket.send(send_packet);
        
        }
       
      }       
       
      client_socket.close();
   }
}
In Python


# UDP server example
import socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server_socket.bind(("", 5000))

print"UDPServer Waiting for client on port 5000"

while 1:
 data, address = server_socket.recvfrom(256)
 print "( " ,address[0], " " , address[1] , " ) said : ", data
# UDP client example
import socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while 1:
 data = raw_input("Type something(q or Q to exit): ")
 if (data <> 'q' and data <> 'Q'):
  client_socket.sendto(data, ("localhost",5000))
 else:
  break
client_socket.close()
NOTE:Connectionless Server and Client program

No comments:

Post a Comment

Required details

--------------------------------------------------------------------------------------------------------------------------- C:\Program File...