static double ns3_share_resources(double min);
static void ns3_update_actions_state(double now, double delta);
static void finalize(void);
-static surf_action_t communicate(const char *src_name,
+static surf_action_t ns3_communicate(const char *src_name,
const char *dst_name, double size, double rate);
static void action_suspend(surf_action_t action);
static void action_resume(surf_action_t action);
surf_network_model->resume = action_resume;
surf_network_model->is_suspended = action_is_suspended;
surf_network_model->action_unref = action_unref;
- surf_network_model->extension.network.communicate = communicate;
+ surf_network_model->extension.network.communicate = ns3_communicate;
/* Added the initialization for NS3 interface */
if (ns3_initialize()) {
return;
xbt_dict_foreach(dict_socket,cursor,key,data){
- action = (surf_action_t)ns3_get_socket_action(data);
- action->remains = ns3_get_socket_remains(data);
-
-//#ifdef HAVE_TRACING
-// if (TRACE_is_enabled()) {
-// double amount_sent = (action->generic_action.cost - action->generic_action.remains);
-//
-// // tracing resource utilization
-// xbt_dynar_t route = global_routing->get_route(action->src_name,
-// action->dst_name);
-// network_link_GTNETS_t link;
-// unsigned int i;
-// xbt_dynar_foreach(route, i, link) {
-// TRACE_surf_link_set_utilization (link->generic_resource.name,
-// action->generic_action.data,
-// (surf_action_t) action,
-// (amount_sent - last_amount_sent)/(delta),
-// now-delta,
-// delta);
-// }
-// }
-//#endif
-
- if(ns3_get_socket_is_finished(data) == 1){
- action->finish = now;
- surf_action_state_set(action, SURF_ACTION_DONE);
- }
+ action = (surf_action_t)ns3_get_socket_action(data);
+ action->remains = action->cost - ns3_get_socket_sent(data);
+
+ if(ns3_get_socket_is_finished(data) == 1){
+ action->finish = now;
+ surf_action_state_set(action, SURF_ACTION_DONE);
+ }
}
return;
}
/* Max durations are not supported */
-static surf_action_t communicate(const char *src_name,
+static surf_action_t ns3_communicate(const char *src_name,
const char *dst_name, double size, double rate)
{
surf_action_t action = NULL;