📄 v5_flow.java
字号:
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 + -