forked from KNEMC/KLALB
KLALB V3.4
This commit is contained in:
@@ -17,6 +17,7 @@ import javax.swing.JFrame;
|
||||
import org.kne.cloud.network.MultipurposeSocketAddress;
|
||||
import org.kne.cloud.network.SocketChannelListener;
|
||||
import org.kne.cloud.network.SocketListener;
|
||||
import org.kne.cloud.network.ipv6.IPv6NetworkLink;
|
||||
import org.kne.cloud.network.ipv6.RouteItem;
|
||||
import org.kne.cloud.network.klalb.ui.KLALBStateGUI2;
|
||||
import org.kne.cloud.network.klalb.ui.KLALBStateGUI3;
|
||||
@@ -25,6 +26,7 @@ import org.kne.cloud.network.perf.Kperf;
|
||||
import org.kne.cloud.network.perf.MemcpyBenchmark;
|
||||
import org.kne.cloud.network.perf.NodeBenchmark;
|
||||
import org.kne.debug.Debuger;
|
||||
import org.kne.debug.TimeDebugger;
|
||||
|
||||
public class KLALBMain {
|
||||
public static KLALBStateGUI3 ksg;
|
||||
@@ -36,18 +38,23 @@ public class KLALBMain {
|
||||
}
|
||||
System.out.println(CONST.klalb+" V"+CONST.klalbver);
|
||||
Scanner scn=new Scanner(System.in);
|
||||
|
||||
TimeDebugger dtb=new TimeDebugger();
|
||||
dtb.putTime("Start");
|
||||
File configJson=new File("klalb-config.json");
|
||||
|
||||
KLALBProxySystem kpcje=new KLALBProxySystem();
|
||||
dtb.putTime("Create");
|
||||
kpcje.loadConfigJson(configJson);
|
||||
dtb.putTime("Load");
|
||||
System.out.println("SRv6地址:"+kpcje.getKlalbController().getSelf().getAddress().getHostAddress());
|
||||
try {
|
||||
if(!kpcje.getControllerConfig().isNogui())
|
||||
openGUI(kpcje);
|
||||
openGUI(kpcje);
|
||||
}catch(Throwable e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
dtb.putTime("UI");
|
||||
//dtb.print();
|
||||
/*MultipurposeSocketAddress mpa=new MultipurposeSocketAddress("127.9.9.9", 49573);
|
||||
kpcje.enableRemoteManagement(mpa);
|
||||
System.out.println("远程管理端口已在"+mpa+"端口上开启");*/
|
||||
@@ -58,7 +65,7 @@ public class KLALBMain {
|
||||
SocketChannelListener stlr=new SocketChannelListener(kpsvr);
|
||||
stlr.setCon((scl)->{
|
||||
try {
|
||||
new Kperf(new StreamChannelKLALBPacketLink(scl)).startPerfing();
|
||||
new Kperf(new StreamChannelKLALBPacketLink(scl,false)).startPerfing();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
@@ -92,10 +99,12 @@ public class KLALBMain {
|
||||
System.out.println("线路状态:");
|
||||
System.out.println("状态\t上传流量\t下载流量\t上传速度\t下载速度\t上传延迟\t下载延迟\t上传抖动\t下载抖动");
|
||||
synchronized (kpcje.getKlalbController().getLines()) {
|
||||
for (Iterator<KLALBRemoteLine> iterator = kpcje.getKlalbController().getLines().iterator(); iterator.hasNext();) {
|
||||
KLALBRemoteLine hostPort = iterator.next();
|
||||
for (Iterator<IPv6NetworkLink> iterator = kpcje.getKlalbController().getLines().iterator(); iterator.hasNext();) {
|
||||
IPv6NetworkLink link=iterator.next();
|
||||
if(link instanceof KLALBRemoteLine) {
|
||||
KLALBRemoteLine hostPort = (KLALBRemoteLine) link;
|
||||
System.out.println(hostPort .toString());
|
||||
//System.out.println();
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -209,13 +218,13 @@ public class KLALBMain {
|
||||
|
||||
}
|
||||
private static void openGUI(KLALBProxySystem kpcje) throws RuntimeException{
|
||||
/*JFrame jf=new JFrame();
|
||||
jf.setSize(200, 200);
|
||||
jf.setVisible(true);*/
|
||||
if(ksg==null)
|
||||
Thread t=new Thread(()->{
|
||||
if(ksg==null) {
|
||||
ksg=kpcje.getKLALBGUI();
|
||||
}
|
||||
ksg.setVisible(true);
|
||||
//System.out.println("UI loaded");
|
||||
});
|
||||
t.start();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user