⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 analyser.java

📁 用JAVA做的一个NSG仿真程序,可以在一个工作空间里面画一个虚拟的网络环境,然后根据环境生成TCL代码
💻 JAVA
字号:
// FrontEnd Plus GUI for JAD
// DeCompiled : Analyser.class
package Analyser;

import java.io.*;
import java.util.Vector;
import javax.swing.JTextArea;

public class Analyser
{

    static long tcp_count = 0L;
    static long tcp = 0L;
    static long arp_count = 0L;
    static long arp = 0L;
    static long ack_count = 0L;
    static long ack = 0L;
    static long aodv_count = 0L;
    static long aodv = 0L;
    static long cbr_count = 0L;
    static long cbr = 0L;
    static long RTS_count = 0L;
    static long RTS = 0L;
    static long CTS_count = 0L;
    static long CTS = 0L;
    static long RES_count = 0L;
    static long RES = 0L;
    static long ACK_count = 0L;
    static long ACK = 0L;
    static long message_count = 0L;
    static long message = 0L;
    static long total = 0L;

    public Analyser()
    {
    }

    public static void analysisFile(File file, JTextArea jtextarea, JTextArea jtextarea1)
    {
        tcp_count = 0L;
        tcp = 0L;
        arp_count = 0L;
        arp = 0L;
        ack_count = 0L;
        ack = 0L;
        aodv_count = 0L;
        aodv = 0L;
        cbr_count = 0L;
        cbr = 0L;
        RTS_count = 0L;
        RTS = 0L;
        CTS_count = 0L;
        CTS = 0L;
        RES_count = 0L;
        RES = 0L;
        ACK_count = 0L;
        ACK = 0L;
        message_count = 0L;
        message = 0L;
        total = 0L;
        try
        {
            BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
            for(String s = bufferedreader.readLine(); s != null; s = bufferedreader.readLine())
                analysisLine(s.getBytes(), jtextarea1);

        }
        catch(Exception exception)
        {
            System.out.println(exception.getMessage());
        }
        outputResult(jtextarea);
    }

    private static void analysisLine(byte abyte0[], JTextArea jtextarea)
    {
        Vector vector = new Vector();
        String s = "";
        for(int i = 0; i < abyte0.length; i++)
            if(abyte0[i] == 32)
            {
                if(!s.equals(""))
                {
                    vector.add(s);
                    s = "";
                }
            } else
            {
                s = (new StringBuilder(String.valueOf(s))).append(String.valueOf((char)abyte0[i])).toString();
            }

        String as[] = new String[vector.size()];
        for(int j = 0; j < vector.size(); j++)
            as[j] = (String)(String)vector.get(j);

        if(as[0].equals("s"))
        {
            if(as[6].equals("tcp"))
            {
                tcp_count++;
                tcp += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("ARP"))
            {
                arp_count++;
                arp += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("ack"))
            {
                ack_count++;
                ack += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("AODV"))
            {
                aodv_count++;
                aodv += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("cbr"))
            {
                cbr_count++;
                cbr += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("RTS"))
            {
                RTS_count++;
                RTS += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("CTS"))
            {
                CTS_count++;
                CTS += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("RES"))
            {
                RES_count++;
                RES += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("message"))
            {
                message_count++;
                message += Integer.parseInt(as[7]);
            } else
            if(as[6].equals("ACK"))
            {
                ACK_count++;
                ACK += Integer.parseInt(as[7]);
            }
        } else
        if(!as[0].equals("r") && !as[0].equals("D"))
        {
            for(int k = 0; k < as.length; k++)
                jtextarea.append((new StringBuilder(String.valueOf(as[k]))).append(" ").toString());

            jtextarea.append("\n");
        }
    }

    public static void outputResult(JTextArea jtextarea)
    {
        jtextarea.append("     [MAC layer]");
        jtextarea.append((new StringBuilder(" RTS : ")).append(RTS).append("(").append(RTS_count).append(")").toString());
        jtextarea.append((new StringBuilder(" CTS : ")).append(CTS).append("(").append(CTS_count).append(")").toString());
        jtextarea.append((new StringBuilder(" RES : ")).append(RES).append("(").append(RES_count).append(")").toString());
        jtextarea.append((new StringBuilder(" ACK : ")).append(ACK).append("(").append(ACK_count).append(")\n").toString());
        jtextarea.append("     [IP layer]");
        jtextarea.append((new StringBuilder(" TCP : ")).append(tcp).append("(").append(tcp_count).append(")").toString());
        jtextarea.append((new StringBuilder(" ARP : ")).append(arp).append("(").append(arp_count).append(")").toString());
        jtextarea.append((new StringBuilder(" TCP-ACK : ")).append(ack).append("(").append(ack_count).append(")").toString());
        jtextarea.append((new StringBuilder(" AODV : ")).append(aodv).append("(").append(aodv_count).append(")").toString());
        jtextarea.append((new StringBuilder(" CBR : ")).append(cbr).append("(").append(cbr_count).append(")").toString());
        jtextarea.append((new StringBuilder(" DSDV : ")).append(message).append("(").append(message_count).append(")\n").toString());
        jtextarea.append((new StringBuilder("     Total size : ")).append(total).append(" (tcp+arp+ack+aodv+cbr+message)\n").toString());
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -