Package java.net

Examples of java.net.DatagramPacket


        }

        public void run() {
            int num_received=0;
            int number;
            DatagramPacket packet;
            Object obj;
            long total_time;
            double msgs_per_sec=0;
            DataInputStream in;

            packet=new DatagramPacket(buf, buf.length);
            while(num_received <= num_msgs) {
                try {
                    if(jg) {
                        obj=channel.receive(0);
                        if(obj instanceof Message) {
View Full Code Here


        for(int i=0; i < query.size(); i++) {
            request.append(query.get(i)).append(" ");
        }
        byte[] probe_buf=request.toString().getBytes();

        DatagramPacket probe=new DatagramPacket(probe_buf, 0, probe_buf.length, addr, port);
        mcast_sock.send(probe);
        System.out.println("\n-- send probe on " + addr + ':' + port + '\n');


        new Thread() {
            public void run() {
                Util.sleep(timeout);
                mcast_sock.close();
                running=false;
            }
        }.start();

        int matched=0, not_matched=0, count=0;
        String response;
        while(running) {
            byte[] buf=new byte[65000];
            DatagramPacket rsp=new DatagramPacket(buf, 0, buf.length);
            try {
                mcast_sock.receive(rsp);
            }
            catch(Throwable t) {
                System.out.println("\n");
                return;
            }
            byte[] data=rsp.getData();
            // System.out.println("received " + rsp.getLength() + " bytes from " + rsp.getSocketAddress());
            response=new String(data, 0, rsp.getLength());
            if(matches(response, match)) {
                matched++;
                System.out.println("\n#" + ++count + " (" + rsp.getLength() + " bytes): " + response);
            }
            else
                not_matched++;
        }
        System.out.println("\nTotal responses=" + count + ", " + matched + " matches, " + not_matched + " non-matches");
View Full Code Here

*/
public class McastTest {

    public static void main(String args[]) { 
  DatagramSocket  sock;
  DatagramPacket  packet;
  byte[]          buf=new byte[0];
  boolean         receiver=true;
  String          val;
  InetAddress     addr=null;
  int             port=0;
View Full Code Here

    }


    static void receiverLoop(DatagramSocket sock) {
  DatagramPacket packet;
  byte[]         buf;

  while(true) {
      buf=new byte[256];
      packet=new DatagramPacket(buf, buf.length);
      try {
    sock.receive(packet);
    System.out.println("Receive packet from " + packet.getAddress().getHostAddress() +
                           ':' + packet.getPort() + ": " + new String(packet.getData()));
      }
      catch(Exception e) {
    System.err.println(e);
    break;
      }
View Full Code Here

    }
   
    static void senderLoop(DatagramSocket sock) {
  DataInputStream in;
  String          line;
  DatagramPacket  packet;
  InetAddress     dst;
  int             dst_port;
  StringTokenizer tok;
  StringBuffer    sb;
  String          tmp, buf;
  byte[]          bbuf;
 
  in=new DataInputStream(System.in);
  while(true) {
      try {
    System.out.print("> ");
    line=in.readLine();
    if(line.startsWith("quit") || line.startsWith("exit"))
        break;
    tok=new StringTokenizer(line);
    try {
        dst=InetAddress.getByName(tok.nextToken());
        dst_port=Integer.parseInt(tok.nextToken());
    }
    catch(Exception e) {
        System.err.println(e);
        continue;
    }
    sb=new StringBuffer();
    while(tok.hasMoreTokens()) {
        tmp=tok.nextToken();
        sb.append(tmp + ' ');
    }
    buf=sb.toString();
    System.out.println("sending " + buf);
    bbuf=buf.getBytes();
    packet=new DatagramPacket(bbuf, bbuf.length, dst, dst_port);
    sock.send(packet);
      }
      catch(Exception e) {
    System.err.println(e);
    break;
View Full Code Here

        if(server) {
            sock=new DatagramSocket(port, host);
            System.out.println("server started (ctrl-c to kill)");
            while(true) {
                byte[] buf=new byte[65000];
                DatagramPacket packet;
                packet=new DatagramPacket(buf, 0, buf.length);
                sock.receive(packet);
                packet=new DatagramPacket(RSP_BUF, 0, RSP_BUF.length, packet.getAddress(), packet.getPort());
                sock.send(packet); // send the response
            }
        }
        else {
            sock=new DatagramSocket();
View Full Code Here

            buf[i]=0; // 0=request
        }

        start=System.currentTimeMillis();
        for(int i=0; i < num; i++) {
            DatagramPacket packet=new DatagramPacket(buf, 0, buf.length, host, port);
            try {
                sock.send(packet);

                byte[] response=new byte[1];
                DatagramPacket rsp_packet=new DatagramPacket(response, 0, response.length);
                sock.receive(rsp_packet);
                num_responses++;
                if(num_responses >= num) {
                    System.out.println("received all responses (" + num_responses + ")");
                    break;
View Full Code Here

    public static void main(String[] args) {
        MulticastSocket sock=null;
        Receiver receiver=null;
        int num_msgs=1000;
        byte[] buf;
        DatagramPacket packet;
        InetAddress group_addr=null;
        int[][] matrix;
        boolean jg=false; // use JGroups channel instead of UDP MulticastSocket
        JChannel channel=null;
        String props=null, loopback_props;
        String group_name="SpeedTest-Group";
        Message send_msg;
        boolean debug=false, cummulative=false;
        Debugger debugger=null;
        long sleep_time=1; // sleep in msecs between msg sends
        boolean busy_sleep=false;
        boolean yield=false;
        int num_yields=0;
        boolean loopback=false;


        props="UDP(mcast_addr=224.0.0.36;mcast_port=55566;ip_ttl=32;" +
                "ucast_send_buf_size=32000;ucast_recv_buf_size=64000;" +
                "mcast_send_buf_size=32000;mcast_recv_buf_size=64000):" +
                "PING(timeout=2000;num_initial_members=3):" +
                "MERGE2(min_interval=5000;max_interval=10000):" +
                "FD_SOCK:" +
                "VERIFY_SUSPECT(timeout=1500):" +
                "pbcast.NAKACK(max_xmit_size=8192;gc_lag=50;retransmit_timeout=600,800,1200,2400,4800):" +
                "UNICAST(timeout=1200):" +
                "pbcast.STABLE(desired_avg_gossip=10000):" +
                "FRAG(frag_size=8192;down_thread=false;up_thread=false):" +
// "PIGGYBACK(max_size=16000;max_wait_time=500):" +
                "pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;" +
                "shun=false;print_local_addr=true):" +
                "pbcast.STATE_TRANSFER";
        // "PERF(details=true)";


        loopback_props="LOOPBACK:" +
                "PING(timeout=2000;num_initial_members=3):" +
                "MERGE2(min_interval=5000;max_interval=10000):" +
                "FD_SOCK:" +
                "VERIFY_SUSPECT(timeout=1500):" +
                "pbcast.NAKACK(gc_lag=50;retransmit_timeout=600,800,1200,2400,4800):" +
                "UNICAST(timeout=5000):" +
                "pbcast.STABLE(desired_avg_gossip=20000):" +
                "FRAG(frag_size=16000;down_thread=false;up_thread=false):" +
                "pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;" +
                "shun=false;print_local_addr=true):" +
                "pbcast.STATE_TRANSFER";


        for(int i=0; i < args.length; i++) {
            if("-help".equals(args[i])) {
                help();
                return;
            }
            if("-jg".equals(args[i])) {
                jg=true;
                continue;
            }
            if("-loopback".equals(args[i])) {
                loopback=true;
                props=loopback_props;
                continue;
            }
            if("-props".equals(args[i])) {
                props=args[++i];
                continue;
            }
            if("-debug".equals(args[i])) {
                debug=true;
                continue;
            }
            if("-cummulative".equals(args[i])) {
                cummulative=true;
                continue;
            }
            if("-busy_sleep".equals(args[i])) {
                busy_sleep=true;
                continue;
            }
            if("-yield".equals(args[i])) {
                yield=true;
                num_yields++;
                continue;
            }
            if("-sleep".equals(args[i])) {
                sleep_time=Long.parseLong(args[++i]);
                continue;
            }
            if("-num_msgs".equals(args[i])) {
                num_msgs=Integer.parseInt(args[++i]);
                continue;
            }
            help();
            return;
        }

        System.out.println("jg       = " + jg +
                "\nloopback = " + loopback +
                "\ndebug    = " + debug +
                "\nsleep    = " + sleep_time +
                "\nbusy_sleep=" + busy_sleep +
                "\nyield=" + yield +
                "\nnum_yields=" + num_yields +
                "\nnum_msgs = " + num_msgs +
                           '\n');



        try {
            matrix=new int[num_msgs][2];
            for(int i=0; i < num_msgs; i++) {
                for(int j=0; j < matrix[i].length; j++)
                    matrix[i][j]=0;
            }

            if(jg) {
                channel=new JChannel(props);
                channel.connect(group_name);
                if(debug) {
                    debugger=new Debugger(channel, cummulative);
                    debugger.start();
                }
            }
            else {
                group_addr=InetAddress.getByName("224.0.0.36");
                sock=new MulticastSocket(7777);
                sock.joinGroup(group_addr);
            }

            if(debug) {
                System.out.println("Press key to start");
                System.in.read();
            }
            receiver=new Receiver(sock, channel, matrix, jg);
            receiver.start();

            ByteBuffer bb=ByteBuffer.allocate(16);
            bb.mark();

            start=System.currentTimeMillis();
            for(int i=0; i < num_msgs; i++) {
                bb.reset();
                bb.putInt(i);
                buf=(byte[])(bb.array()).clone();

                if(jg) {
                    send_msg=new Message(null, null, buf);
                    channel.send(send_msg);
                }
                else {
                    packet=new DatagramPacket(buf, buf.length, group_addr, 7777);
                    sock.send(packet);
                }
                if(i % 1000 == 0)
                    System.out.println("-- sent " + i);
View Full Code Here

        }

        public void run() {
            int num_received=0;
            int number;
            DatagramPacket packet;
            Object obj;
            Message msg;
            byte[] msg_data=null;
            long total_time;
            double msgs_per_sec=0;
            ByteBuffer rb=ByteBuffer.allocate(16);
            rb.mark();

            packet=new DatagramPacket(buf, buf.length);
            while(num_received <= num_msgs) {
                try {
                    if(jg) {
                        obj=channel.receive(0);
                        if(obj instanceof Message) {
                            msg=(Message)obj;
                            msg_data=msg.getBuffer();
                        }
                        else {
                            System.out.println("received non-msg: " + obj.getClass());
                            continue;
                        }
                    }
                    else {
                        sock.receive(packet);
                        msg_data=packet.getData();
                    }

                    rb.rewind();
                    rb.put(msg_data);
                    rb.rewind();
View Full Code Here

    public Map dumpStats() {
        return null;
    }

    public void send(Object destination, byte[] payload) throws Exception {
        DatagramPacket p;
        if(destination == null) {
            p=new DatagramPacket(payload, payload.length, mcast_addr, mcast_port);
        }
        else {
            IpAddress addr=(IpAddress)destination;
            p=new DatagramPacket(payload, payload.length, addr.getIpAddress(), addr.getPort());

        }
        ucast_sock.send(p);
    }
View Full Code Here

TOP

Related Classes of java.net.DatagramPacket

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.