+XBT_PUBLIC(void) surf_network_model_init_GTNETS(const char *filename);
+#endif
+
+/** \brief Initializes the platform with the network model Reno
+ * \ingroup SURF_models
+ * \param filename XML platform file name
+ *
+ * The problem is related to max( sum( arctan(C * Df * xi) ) ).
+ *
+ * Reference:
+ * [LOW03] S. H. Low. A duality model of TCP and queue management algorithms.
+ * IEEE/ACM Transaction on Networking, 11(4):525-536, 2003.
+ *
+ * Call this function only if you plan using surf_workstation_model_init_compound.
+ *
+ */
+XBT_PUBLIC(void) surf_network_model_init_Reno(const char *filename);
+
+/** \brief Initializes the platform with the network model Vegas
+ * \ingroup SURF_models
+ * \param filename XML platform file name
+ *
+ * This problem is related to max( sum( a * Df * ln(xi) ) ) which is equivalent
+ * to the proportional fairness.
+ *
+ * Reference:
+ * [LOW03] S. H. Low. A duality model of TCP and queue management algorithms.
+ * IEEE/ACM Transaction on Networking, 11(4):525-536, 2003.
+ *
+ * Call this function only if you plan using surf_workstation_model_init_compound.
+ *
+ */
+XBT_PUBLIC(void) surf_network_model_init_Vegas(const char *filename);
+
+#ifdef HAVE_SDP
+/** \brief Initializes the platform with the network model based on SDP
+ * \ingroup SURF_models
+ * \param filename XML platform file name
+ *
+ * This function implements the proportional fairness known as the maximization
+ * of x1*x2*...*xn .
+ *
+ * Reference:
+ *
+ * [TAG03]. Corinne Touati, Eitan Altman, and Jerome Galtier.
+ * Semi-definite programming approach for bandwidth allocation and routing in networks.
+ * Game Theory and Applications, 9:169-179, December 2003. Nova publisher.
+ *
+ * Call this function only if you plan using surf_workstation_model_init_compound.
+ */
+XBT_PUBLIC(void) surf_network_model_init_SDP(const char *filename);
+#endif
+
+#if defined(HAVE_GTNETS) && defined(HAVE_SDP)
+# define surf_network_model_description_size 6
+#elsif defined(HAVE_GTNETS) || defined(HAVE_SDP)
+# define surf_network_model_description_size 5
+#else
+# define surf_network_model_description_size 4
+#endif
+/** \brief The list of all available network model models
+ * \ingroup SURF_models
+ */
+XBT_PUBLIC_DATA(s_surf_model_description_t) surf_network_model_description[surf_network_model_description_size];
+
+/** \brief Workstation model extension public
+ * \ingroup SURF_models
+ *
+ * Public functions specific to the workstation model.
+ */
+typedef struct surf_workstation_model_extension_public {