From: Navarrop Date: Thu, 16 Jun 2011 14:16:43 +0000 (+0200) Subject: Increase number of host for cluster from 254 to 65000 X-Git-Tag: v3_6~1^2 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/b7353991d3c313d9c9caae8d94adc7850f88baa7 Increase number of host for cluster from 254 to 65000 --- diff --git a/src/surf/network_ns3.c b/src/surf/network_ns3.c index 481c57532e..50cf119289 100644 --- a/src/surf/network_ns3.c +++ b/src/surf/network_ns3.c @@ -37,28 +37,6 @@ static void replace_str(char *str, const char *orig, const char *rep) static void replace_bdw_ns3(char * bdw) { -// replace_str(bdw,".00",""); -// char *temp = xbt_strdup(bdw); -// -// replace_str(bdw,"000000000","Gbps"); -// if(strcmp(bdw,temp)) {xbt_free(temp);return;} -// replace_str(bdw,"00000000","00Mbps"); -// if(strcmp(bdw,temp)) {xbt_free(temp);return;} -// replace_str(bdw,"0000000","0Mbps"); -// if(strcmp(bdw,temp)) {xbt_free(temp);return;} -// replace_str(bdw,"000000","Mbps"); -// if(strcmp(bdw,temp)) {xbt_free(temp);return;} -// replace_str(bdw,"00000","00Kbps"); -// if(strcmp(bdw,temp)) {xbt_free(temp);return;} -// replace_str(bdw,"0000","0Kbps"); -// if(strcmp(bdw,temp)) {xbt_free(temp);return;} -// replace_str(bdw,"000","Kbps"); -// if(strcmp(bdw,temp)) {xbt_free(temp);return;} -// -// xbt_free(bdw); -// bdw = bprintf("%s%s",temp,"bps"); -// xbt_free(temp); - char *temp = xbt_strdup(bdw); xbt_free(bdw); bdw = bprintf("%fbps",atof(temp)); @@ -257,38 +235,36 @@ void parse_ns3_end_platform(void) { ns3_end_platform(); -// xbt_lib_cursor_t cursor = NULL; -// char *name = NULL; -// void **data = NULL; -// XBT_INFO("link_lib"); -// xbt_lib_foreach(link_lib, cursor, name, data) { -// XBT_INFO("\tSee link '%s'\t--> NS3_LEVEL %p", -// name, -// data[NS3_LINK_LEVEL]); -// } -// XBT_INFO(" "); -// XBT_INFO("host_lib"); -// xbt_lib_foreach(host_lib, cursor, name, data) { -// XBT_INFO("\tSee host '%s'\t--> NS3_LEVEL %p", -// name, -// data[NS3_HOST_LEVEL]); -// } -// XBT_INFO(" "); -// XBT_INFO("as_router_lib"); -// xbt_lib_foreach(as_router_lib, cursor, name, data) { -// XBT_INFO("\tSee ASR '%s'\t--> NS3_LEVEL %p", -// name, -// data[NS3_ASR_LEVEL]); -// } -// -// XBT_INFO(" "); + xbt_lib_cursor_t cursor = NULL; + char *name = NULL; + void **data = NULL; + XBT_DEBUG("link_lib"); + xbt_lib_foreach(link_lib, cursor, name, data) { + XBT_DEBUG("\tSee link '%s'\t--> NS3_LEVEL %p", + name, + data[NS3_LINK_LEVEL]); + } + XBT_DEBUG(" "); + XBT_DEBUG("host_lib"); + xbt_lib_foreach(host_lib, cursor, name, data) { + XBT_DEBUG("\tSee host '%s'\t--> NS3_LEVEL %p", + name, + data[NS3_HOST_LEVEL]); + } + XBT_DEBUG(" "); + XBT_DEBUG("as_router_lib"); + xbt_lib_foreach(as_router_lib, cursor, name, data) { + XBT_DEBUG("\tSee ASR '%s'\t--> NS3_LEVEL %p", + name, + data[NS3_ASR_LEVEL]); + } + + XBT_DEBUG(" "); } /* Create the ns3 topology based on routing strategy */ void create_ns3_topology() { -// int src_id,dst_id; - XBT_INFO("Starting topology generation"); //get the onelinks from the parsed platform @@ -304,11 +280,6 @@ void create_ns3_topology() char *dst = onelink->dst; void *link = onelink->link_ptr; -//TODO need to uncomment those two line -// src_id = *((int *) xbt_dict_get_or_null(global_routing->root->to_index,src)); -// dst_id = *((int *) xbt_dict_get_or_null(global_routing->root->to_index,dst)); - -// if( (src_id != dst_id) && ((surf_ns3_link_t)link)->created){ if( strcmp(src,dst) && ((surf_ns3_link_t)link)->created){ XBT_INFO("Route from '%s' to '%s' with link '%s'",src,dst,((surf_ns3_link_t)link)->data->id); char * link_bdw = xbt_strdup(((surf_ns3_link_t)link)->data->bdw); diff --git a/src/surf/ns3/ns3_interface.cc b/src/surf/ns3/ns3_interface.cc index d961c69556..4542034b7a 100644 --- a/src/surf/ns3/ns3_interface.cc +++ b/src/surf/ns3/ns3_interface.cc @@ -90,19 +90,18 @@ void * ns3_add_cluster(char * bw,char * lat,char *id) XBT_DEBUG("Add router %d to cluster",nodes.GetN()-Nodes.GetN()-1); Nodes.Add(nodes.Get(nodes.GetN()-Nodes.GetN()-1)); - if(Nodes.GetN() > 254) - xbt_die("Cluster with NS3 is limited to 254 nodes"); + if(Nodes.GetN() > 65000) + xbt_die("Cluster with NS3 is limited to 65000 nodes"); CsmaHelper csma; csma.SetChannelAttribute ("DataRate", StringValue (bw)); csma.SetChannelAttribute ("Delay", StringValue (lat)); NetDeviceContainer devices = csma.Install (Nodes); XBT_DEBUG("Create CSMA"); - - char * adr = bprintf("10.%d.%d.0",number_of_networks,number_of_links); + char * adr = bprintf("%d.%d.0.0",number_of_networks,number_of_links); XBT_DEBUG("Assign IP Addresses %s to CSMA.",adr); Ipv4AddressHelper ipv4; - ipv4.SetBase (adr, "255.255.255.0"); + ipv4.SetBase (adr, "255.255.0.0"); interfaces.Add(ipv4.Assign (devices)); if(number_of_links == 255){ @@ -114,6 +113,7 @@ void * ns3_add_cluster(char * bw,char * lat,char *id) number_of_links++; } XBT_DEBUG("Number of nodes in Cluster_nodes: %d",Cluster_nodes.GetN()); + } void * ns3_add_AS(char * id) @@ -143,8 +143,8 @@ void * ns3_add_link(int src,int dst,char * bw,char * lat) netA.Add(pointToPoint.Install (a, b)); - char * adr = bprintf("10.%d.%d.0",number_of_networks,number_of_links); - address.SetBase (adr, "255.255.255.0"); + char * adr = bprintf("%d.%d.0.0",number_of_networks,number_of_links); + address.SetBase (adr, "255.255.0.0"); XBT_DEBUG("\tInterface stack '%s'",adr); interfaces.Add(address.Assign (netA)); @@ -164,11 +164,12 @@ void * ns3_end_platform(void) XBT_INFO("InitializeRoutes"); GlobalRouteManager::BuildGlobalRoutingDatabase(); GlobalRouteManager::InitializeRoutes(); + //TODO REMOVE ;) Ptr a = nodes.Get(0); - Ptr b = nodes.Get(11); - Ptr c = nodes.Get(12); - Ptr d = nodes.Get(13); + Ptr b = nodes.Get(1); + Ptr c = nodes.Get(2); + Ptr d = nodes.Get(3); UdpEchoServerHelper echoServer (9);