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

📄 v5_flow.java

📁 接收网络设备上NetFlow工具导出的NetFlow数据
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        First = Util.to_number(buf, off + 24, 4);
        Last = Util.to_number(buf, off + 28, 4);
        srcport = Util.to_number(buf, off + 32, 2);
        dstport = Util.to_number(buf, off + 34, 2);
        tcp_flags = buf[off + 37];
        prot = buf[off + 38];
        tos = buf[off + 39];
        src_as = Util.to_number(buf, off + 40, 2);
        dst_as = Util.to_number(buf, off + 42, 2);
        src_mask = buf[off + 44];
        dst_mask = buf[off + 45];

        srcprefix = new Prefix(src_addr, src_mask);
        dstprefix = new Prefix(dst_addr, dst_mask);

        if (Syslog.log.need(Syslog.LOG_INFO)) {
            Syslog.log.syslog(Syslog.LOG_INFO, "      " + srcaddr + ":"
                              + srcport + " -> " + dstaddr + ":" + dstport +
                              " via "
                              + nexthop);
            Syslog.log.syslog(Syslog.LOG_INFO, "        bytes=" + dOctets
                              + ", pkts=" + dPkts + ", proto=" + prot +
                              ", TOS=" + tos
                              + ", TCPF=" + tcp_flags);
            Syslog.log.syslog(Syslog.LOG_INFO, "        inIf=" + input
                              + ", outIf=" + output + ", SAS=" + src_as +
                              ", DAS="
                              + dst_as + ", SM=" + src_mask + ", DM=" +
                              dst_mask);
        }
        if (dPkts + dOctets <= 0) { // 如果没有流量
            throw new DoneException("空流量");
        }

    }

    public Long getSrcPort() {
        return new Long(srcport);
    }

    public Long getDstPort() {
        return new Long(dstport);
    }

    public Long getProto() {
        return new Long(prot);
    }

    public Long getTOS() {
        return new Long(tos);
    }

    public Long getSrcAS() {
        return new Long(src_as);
    }

    public Long getDstAS() {
        return new Long(dst_as);
    }

    public Address getSrcAddr() {
        return new Address(src_addr);
    }

    public Address getDstAddr() {
        return new Address(dst_addr);
    }

    public Address getNextHop() {
        return new Address(next_hop);
    }

    public Long getInIf() {
        return new Long(input);
    }

    public Long getOutIf() {
        return new Long(output);
    }

    public Prefix getSrcPrefix() {
        return srcprefix;
    }

    public Prefix getDstPrefix() {
        return dstprefix;
    }

    public void save_raw(long SysUptime, long unix_secs, long unix_nsecs,
                         long flow_sequence, long engine_type, long engine_id,
                         PreparedStatement add_raw_stm) {
        try {
            add_raw_stm.setString(1, RouterIP);
            add_raw_stm.setLong(2, SysUptime);
            add_raw_stm.setLong(3, unix_secs);
            add_raw_stm.setLong(4, unix_nsecs);
            add_raw_stm.setLong(5, flow_sequence);
            add_raw_stm.setInt(6, (int) engine_type);
            add_raw_stm.setInt(7, (int) engine_id);
            add_raw_stm.setString(8, srcaddr);
            add_raw_stm.setString(9, dstaddr);
            add_raw_stm.setString(10, nexthop);
            add_raw_stm.setInt(11, (int) input);
            add_raw_stm.setInt(12, (int) output);
            add_raw_stm.setLong(13, dPkts);
            add_raw_stm.setLong(14, dOctets);
            add_raw_stm.setLong(15, First);
            add_raw_stm.setLong(16, Last);
            add_raw_stm.setInt(17, (int) srcport);
            add_raw_stm.setInt(18, (int) dstport);
            add_raw_stm.setInt(19, (int) tcp_flags);
            add_raw_stm.setInt(20, (int) prot);
            add_raw_stm.setInt(21, (int) tos);
            add_raw_stm.setInt(22, (int) src_as);
            add_raw_stm.setInt(23, (int) dst_as);
            add_raw_stm.setInt(24, (int) src_mask);
            add_raw_stm.setInt(25, (int) dst_mask);
            add_raw_stm.setString(26, Params.getCurrentTime());
            add_raw_stm.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
            SQL.error_msg("INSERT to V5 raw table", e, null);
        }
    }

    public void save_raw4v9(long SysUptime, long unix_secs,
                            long packageSequence,
                            long sourceId, PreparedStatement add_raw_stm) {
        try {
            add_raw_stm.setString(1, RouterIP);
            add_raw_stm.setLong(2, SysUptime);
            add_raw_stm.setLong(3, unix_secs);
            add_raw_stm.setLong(4, packageSequence);
            add_raw_stm.setLong(5, sourceId);
            add_raw_stm.setString(6, srcaddr);
            add_raw_stm.setString(7, dstaddr);
            add_raw_stm.setString(8, nexthop);
            add_raw_stm.setInt(9, (int) input);
            add_raw_stm.setInt(10, (int) output);
            add_raw_stm.setLong(11, dPkts);
            add_raw_stm.setLong(12, dOctets);
            add_raw_stm.setLong(13, First);
            add_raw_stm.setLong(14, Last);
            add_raw_stm.setInt(15, (int) srcport);
            add_raw_stm.setInt(16, (int) dstport);
            add_raw_stm.setInt(17, (int) tcp_flags);
            add_raw_stm.setInt(18, (int) prot);
            add_raw_stm.setInt(19, (int) tos);
            add_raw_stm.setInt(20, (int) src_as);
            add_raw_stm.setInt(21, (int) dst_as);
            add_raw_stm.setInt(22, (int) src_mask);
            add_raw_stm.setInt(23, (int) dst_mask);
            add_raw_stm.setString(24, Params.getCurrentTime());
            add_raw_stm.executeUpdate();
        } catch (SQLException e) {
            SQL.error_msg("INSERT to V9 raw table", e, null);
        }
    }

    public Scheme_DataSrcAS getDataSrcAS() {
        return new Scheme_DataSrcAS(RouterIP, 1, 0, // ???
                                    dPkts, dOctets, src_as);
    }

    public Scheme_DataDstAS getDataDstAS() {
        return new Scheme_DataDstAS(RouterIP, 1, 0, // ???
                                    dPkts, dOctets, dst_as);
    }

    public Scheme_DataASMatrix getDataASMatrix() {
        return new Scheme_DataASMatrix(RouterIP, 1, 0, // ???
                                       dPkts, dOctets, src_as, dst_as);
    }

    public Scheme_DataNode getDataSrcNode() {
        return new Scheme_DataNode(RouterIP, 1, 0, // ???
                                   dPkts, dOctets, srcaddr);
    }

    public Scheme_DataNode getDataDstNode() {
        return new Scheme_DataNode(RouterIP, 1, 0, // ???
                                   dPkts, dOctets, dstaddr);
    }

    public Scheme_DataHostMatrix getDataHostMatrix() {
        return new Scheme_DataHostMatrix(RouterIP, 1, 0, // ???
                                         dPkts, dOctets, srcaddr, dstaddr);
    }

    public Scheme_DataInterface getDataSrcInterface() {
        return new Scheme_DataInterface(RouterIP, 1, 0, // ???
                                        dPkts, dOctets, input);
    }

    public Scheme_DataInterface getDataDstInterface() {
        return new Scheme_DataInterface(RouterIP, 1, 0, // ???
                                        dPkts, dOctets, output);
    }

    public Scheme_DataInterfaceMatrix getDataInterfaceMatrix() {
        return new Scheme_DataInterfaceMatrix(RouterIP, 1, 0, // ???
                                              dPkts, dOctets, input, output);
    }

    public Scheme_DataPrefix getDataSrcPrefix() {
        return new Scheme_DataPrefix(RouterIP, 1, 0, // ???
                                     dPkts, dOctets, srcprefix, src_as, input);
    }

    public Scheme_DataPrefix getDataDstPrefix() {
        return new Scheme_DataPrefix(RouterIP, 1, 0, // ???
                                     dPkts, dOctets, dstprefix, dst_as, output);
    }

    public Scheme_DataPrefixMatrix getDataPrefixMatrix() {
        return new Scheme_DataPrefixMatrix(RouterIP, 1, 0, // ???
                                           dPkts, dOctets, srcprefix, src_as,
                                           input, dstprefix, dst_as,
                                           output);
    }

    public Scheme_DataProtocol getDataProtocol() {
        return new Scheme_DataProtocol(RouterIP, 1, 0, dPkts, dOctets, this);
    }

    /*
     * (non-Javadoc)
     *
     * @see java.lang.Object#equals(java.lang.Object)
     */
    public boolean equals(V5_Flow obj) {
        if ((this.dOctets == obj.dOctets) && (this.dPkts == obj.dPkts)
            && (this.dst_addr == obj.dst_addr)
            && (this.dst_as == obj.dst_as)
            && (this.dst_mask == obj.dst_mask)
            && (this.dstport == obj.dstport) && (this.First == obj.First)
            && (this.input == obj.input) && (this.Last == obj.Last)
            && (this.next_hop == obj.next_hop)
            && (this.output == obj.output) && (this.prot == obj.prot)
            && (this.src_addr == obj.src_addr)
            && (this.src_as == obj.src_as)
            && (this.src_mask == obj.src_mask)
            && (this.srcport == obj.srcport)
            && (this.tcp_flags == obj.tcp_flags) && (this.tos == obj.tos)) {
            return true;
        } else {
            return false;
        }
    }
}

⌨️ 快捷键说明

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