//KeepAliveMessage packet = new KeepAliveMessage(); public void StartListner() { for (int i = 0; i < 10; i++) { bgpListner[i] = new BGPListner(); //bgpListner[l].ListnerSocket(); if (i < 3) { AS = GlobalVariables.AS1; GlobalVariables.listnerConAnd_AS.TryAdd((ushort)i, AS); bgpListner[i].BindListner(GlobalVariables.as1_IP_peifix + i, GlobalVariables.listnerPortNumber, i); GlobalVariables.listner_AS.TryAdd(GlobalVariables.as1_IP_peifix + i, AS); } else if (i > 2 && i < 7) { AS = GlobalVariables.AS2; GlobalVariables.listnerConAnd_AS.TryAdd((ushort)i, AS); bgpListner[i].BindListner(GlobalVariables.as2_IP_Prefix + i, GlobalVariables.listnerPortNumber, i); GlobalVariables.listner_AS.TryAdd(GlobalVariables.as2_IP_Prefix + i, AS); } else if (i > 6 && i < 10) { AS = GlobalVariables.AS3; GlobalVariables.listnerConAnd_AS.TryAdd((ushort)i, AS); bgpListner[i].BindListner(GlobalVariables.as3_IP_Prefix + i, GlobalVariables.listnerPortNumber, i); GlobalVariables.listner_AS.TryAdd(GlobalVariables.as3_IP_Prefix + i, AS); } Thread.Sleep(500); //recient computers can handle 500 connections } }
public void StartListner() { Console.WriteLine("There is a total of 10 routers which will be split into 3 AS. How many routers do you want in AS1? (1-8)"); temp = Console.ReadLine(); try { as1Last = int.Parse(temp) - 1; //-1 since routers start from 0 if (as1Last < 0) { Console.WriteLine("The character you typed wasn't in the given bounds, so we set 1 routers in the AS1."); as1Last = 0; } else if (as1Last > 7) { Console.WriteLine("The character you typed wasn't in the given bounds, so we set 8 routers in the AS1."); as1Last = 7; } }catch { Console.WriteLine("The character you typed wasn't a number, so we set 3 routers to AS1."); as1Last = 2; } if (as1Last < 7) { as2First = as1Last + 1; if (as1Last > 0) { Console.WriteLine("How many routers do you want in AS2? (1-" + (8 - as1Last) + "). Rest will be placed AS3."); } else { Console.WriteLine("How many routers do you want in AS2? (1-8). Rest will be placed AS3."); } temp = Console.ReadLine(); try { as2Last = as1Last + int.Parse(temp); if (as2Last <= as1Last) { Console.WriteLine("The character you typed wasn't in the given bounds, so we set 1 routers in the AS2."); as2Last = as1Last + 1; } else if (as2Last > 8) { Console.WriteLine("The character you typed wasn't in the given bounds, so we set 1 router in the AS3 and rest in AS2."); as2Last = 8; } } catch { Console.WriteLine("The character you typed wasn't a number, so we set 4 routers to AS2."); as2Last = as1Last + 4;; } as3First = as2Last + 1; } else { Console.WriteLine("One router will be now placed in both remaining AS."); as2First = 8; as2Last = as2First; as3First = 9; } for (int i = 0; i < 10; i++) { bgpListner[i] = new BGPListner(); if (i < as2First) { AS = GlobalVariables.AS1; GlobalVariables.listnerConAnd_AS.TryAdd((ushort)i, AS); bgpListner[i].BindListner(GlobalVariables.as1_IP_peifix + i, GlobalVariables.listnerPortNumber, i); GlobalVariables.listner_AS.TryAdd(GlobalVariables.as1_IP_peifix + i, AS); } else if (i > as1Last && i < as3First) { AS = GlobalVariables.AS2; GlobalVariables.listnerConAnd_AS.TryAdd((ushort)i, AS); bgpListner[i].BindListner(GlobalVariables.as2_IP_Prefix + i, GlobalVariables.listnerPortNumber, i); GlobalVariables.listner_AS.TryAdd(GlobalVariables.as2_IP_Prefix + i, AS); } else if (i > as2First && i < 10) { AS = GlobalVariables.AS3; GlobalVariables.listnerConAnd_AS.TryAdd((ushort)i, AS); bgpListner[i].BindListner(GlobalVariables.as3_IP_Prefix + i, GlobalVariables.listnerPortNumber, i); GlobalVariables.listner_AS.TryAdd(GlobalVariables.as3_IP_Prefix + i, AS); } Thread.Sleep(500); //recient computers can handle 500 connections } }