#include "frescan_debug.h" // DEBUG
#include "frescan_id.h" // frescan_id_set_field, frescan_id_get_field
#include "frescan_hw_buffer.h" // frescan_hw_buffer_update
-#include "frescan_reply_objects.h" // frescan_replyobjects_init
+#include "frescan_reply_objs.h" // frescan_replyobjects_init
#include "frescan_servers_replenishments.h" // frescan_replenishments_xxx
#include "frescan_packets.h"
/*!
- * @file frescan_bandwidth_reservation.c
+ * @file frescan_bwres.c
*
* @brief FRESCAN bandwidth reservation layer
*
*
*/
-#include "frescan_bandwidth_reservation.h"
+#include "frescan_bwres.h"
#include "frescan_data.h"
-#include "frescan_requests_queue.h" // frescan_requests_init
+#include "frescan_requests.h" // frescan_requests_init
#include "frescan_debug.h"
#include "frescan_config.h"
#include "frescan_servers.h"
-#include "frescan_negotiation_messages.h"
-#include "frescan_negotiation_threads.h"
+#include "frescan_bwres_messages.h"
+#include "frescan_bwres_threads.h"
/**
* frescan_bwres_init()
/*!
- * @file frescan_bandwidth_reservation.h
+ * @file frescan_bwres.h
*
* @brief FRESCAN bandwidth reservation layer
*
/*!
- * @file frescan_sched_analysis.c
+ * @file frescan_bwres_analysis.c
*
- * @brief FRESCAN sched analysis queue
+ * @brief FRESCAN bandwith reservation layer: sched analysis
*
* This module contains the scheduling analysis data and functions for the
* admission tests and spare capacity distribution of the negotiation layer.
*
*/
-#include "frescan_sched_analysis.h"
+#include "frescan_bwres_analysis.h"
#undef ERROR
#include "frescan_debug.h"
// #include "frsh_sa_tools.h"
/*!
- * @file frescan_sched_analysis.h
+ * @file frescan_bwres_analysis.h
*
- * @brief FRESCAN sched analysis queue
+ * @brief FRESCAN bandwith reservation layer: sched analysis
*
* This module contains the scheduling analysis data and functions for the
* admission tests and spare capacity distribution of the negotiation layer.
-//----------------------------------------------------------------------
-// Copyright (C) 2006 - 2007 by the FRESCOR consortium:
-//
-// Universidad de Cantabria, SPAIN
-// University of York, UK
-// Scuola Superiore Sant'Anna, ITALY
-// Kaiserslautern University, GERMANY
-// Univ. Politecnica Valencia, SPAIN
-// Czech Technical University in Prague, CZECH REPUBLIC
-// ENEA SWEDEN
-// Thales Communication S.A. FRANCE
-// Visual Tools S.A. SPAIN
-// Rapita Systems Ltd UK
-// Evidence ITALY
-//
-// See http://www.frescor.org
-//
-// The FRESCOR project (FP6/2005/IST/5-034026) is funded
-// in part by the European Union Sixth Framework Programme
-// The European Union is not liable of any use that may be
-// made of this code.
-//
-//
-// based on previous work (FSF) done in the FIRST project
-//
-// Copyright (C) 2005 Mälardalen University, SWEDEN
-// Scuola Superiore S.Anna, ITALY
-// Universidad de Cantabria, SPAIN
-// University of York, UK
-//
-// This file is part of FNA (Frescor Network Adaptation)
-//
-// FNA is free software; you can redistribute it and/or modify it
-// under terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 2, or (at your option) any
-// later version. FNA is distributed in the hope that it will be
-// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// General Public License for more details. You should have received a
-// copy of the GNU General Public License along with FNA; see file
-// COPYING. If not, write to the Free Software Foundation, 675 Mass Ave,
-// Cambridge, MA 02139, USA.
-//
-// As a special exception, including FNA header files in a file,
-// instantiating FNA generics or templates, or linking other files
-// with FNA objects to produce an executable application, does not
-// by itself cause the resulting executable application to be covered
-// by the GNU General Public License. This exception does not
-// however invalidate any other reasons why the executable file might be
-// covered by the GNU Public License.
-// -----------------------------------------------------------------------
-
-//==============================================
-// ******** **** ** **
-// **///// /**/** /** ****
-// ** /**//** /** **//**
-// ******* /** //** /** ** //**
-// **//// /** //**/** **********
-// ** /** //****/**//////**
-// ** /** //***/** /**
-// / // /// // //
-//
-// FNA(Frescor Network Adaptation layer), pronounced "efe ene a"
-//==============================================================
+/*!
+ * @file frescan_bwres_fna.c
+ *
+ * @brief FRESCAN bandwidth reservation layer: FNA hooks
+ *
+ * This module contains hooks to integrate the FRESCAN protocol in FRSH
+ *
+ * @version 0.01
+ *
+ * @date 1-Apr-2008
+ *
+ * @author Daniel Sangorrin <daniel.sangorrin@unican.es>
+ *
+ */
#include "frsh.h" /* frsh_resource_id_t, .. */
#include "frescan.h" /* frescan_init, ... */
#include "frescan_data.h" /* frescan_contract_t, ... */
-#include "frescan_bandwidth_reservation.h" /* frescan_bwres_init, ... */
+#include "frescan_bwres.h" /* frescan_bwres_init, ... */
#include "fna.h" /* fna_vres_id_t, fna_endpoint_data_t */
#undef ERROR
--- /dev/null
+/*!
+ * @file frescan_bwres_fna.h
+ *
+ * @brief FRESCAN bandwidth reservation layer: FNA hooks
+ *
+ * This module contains hooks to integrate the FRESCAN protocol in FRSH
+ *
+ * @version 0.01
+ *
+ * @date 1-Apr-2008
+ *
+ * @author Daniel Sangorrin <daniel.sangorrin@unican.es>
+ *
+ */
+
+#ifndef _FRESCAN_FNA_H_
+#define _FRESCAN_FNA_H_
+
+#include "fna.h" // for fna_operations_t
+
+extern fna_operations_t frescan_fna_operations;
+
+#endif // _FRESCAN_FNA_H_
+
-//----------------------------------------------------------------------
-// Copyright (C) 2006 - 2007 by the FRESCOR consortium:
-//
-// Universidad de Cantabria, SPAIN
-// University of York, UK
-// Scuola Superiore Sant'Anna, ITALY
-// Kaiserslautern University, GERMANY
-// Univ. Politecnica Valencia, SPAIN
-// Czech Technical University in Prague, CZECH REPUBLIC
-// ENEA SWEDEN
-// Thales Communication S.A. FRANCE
-// Visual Tools S.A. SPAIN
-// Rapita Systems Ltd UK
-// Evidence ITALY
-//
-// See http://www.frescor.org
-//
-// The FRESCOR project (FP6/2005/IST/5-034026) is funded
-// in part by the European Union Sixth Framework Programme
-// The European Union is not liable of any use that may be
-// made of this code.
-//
-//
-// based on previous work (FSF) done in the FIRST project
-//
-// Copyright (C) 2005 Mälardalen University, SWEDEN
-// Scuola Superiore S.Anna, ITALY
-// Universidad de Cantabria, SPAIN
-// University of York, UK
-//
-// This file is part of FNA (Frescor Network Adaptation)
-//
-// FNA is free software; you can redistribute it and/or modify it
-// under terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 2, or (at your option) any
-// later version. FNA is distributed in the hope that it will be
-// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// General Public License for more details. You should have received a
-// copy of the GNU General Public License along with FNA; see file
-// COPYING. If not, write to the Free Software Foundation, 675 Mass Ave,
-// Cambridge, MA 02139, USA.
-//
-// As a special exception, including FNA header files in a file,
-// instantiating FNA generics or templates, or linking other files
-// with FNA objects to produce an executable application, does not
-// by itself cause the resulting executable application to be covered
-// by the GNU General Public License. This exception does not
-// however invalidate any other reasons why the executable file might be
-// covered by the GNU Public License.
-// -----------------------------------------------------------------------
+/*!
+ * @file frescan_bwres_frsh_fna.h
+ *
+ * @brief FRESCAN bandwidth reservation layer: FRSH FNA public functions
+ *
+ * This module contains FNA functions that need to be public mainly
+ * for mapping between network types and FNA or FRSH types.
+ *
+ * @version 0.01
+ *
+ * @date 1-Apr-2008
+ *
+ * @author Daniel Sangorrin <daniel.sangorrin@unican.es>
+ *
+ */
#include "frsh_fna.h"
#include "frescan.h"
/*!
- * @file frescan_negotiation_messages.c
+ * @file frescan_bwres_messages.c
*
- * @brief FRESCAN negotiation messages format and operations
+ * @brief FRESCAN bandwidth reservation layer: negotiation messages formating
*
* This module contains the data types that define the FRESCAN negotiation
- * message format and operations
+ * message format and operations to convert them into or from negotiation
+ * requests
*
* @version 0.01
*
*/
#include <string.h>
-#include "frescan_negotiation_messages.h"
+#include "frescan_bwres_messages.h"
#include "frescan_config.h"
#include "frescan_debug.h"
-#include "frescan_requests_queue.h"
+#include "frescan_requests.h"
#include "frescan_servers.h"
/**
--- /dev/null
+/*!
+ * @file frescan_bwres_messages.h
+ *
+ * @brief FRESCAN bandwidth reservation layer: negotiation messages formating
+ *
+ * This module contains the data types that define the FRESCAN negotiation
+ * message format and operations to convert them into or from negotiation
+ * requests
+ *
+ * @version 0.01
+ *
+ * @date 2-Apr-2008
+ *
+ * @author Daniel Sangorrin <daniel.sangorrin@unican.es>
+ *
+ */
+
+#ifndef _FRESCAN_NEGOTIATION_MESSAGES_H_
+#define _FRESCAN_NEGOTIATION_MESSAGES_H_
+
+#include <stdint.h>
+#include "frescan_requests.h"
+#include "frescan_data.h"
+
+extern int frescan_request_to_message(frescan_request_id_t id, // in
+ uint8_t *msg); // out
+
+extern int frescan_message_to_request(const uint8_t *msg, // in
+ frescan_request_id_t id); // in out
+
+#endif // _FRESCAN_NEGOTIATION_MESSAGES_H_
/*!
- * @file frescan_negotiation_threads.h
+ * @file frescan_bwres_threads.c
*
- * @brief FRESCAN negotiation threads
+ * @brief FRESCAN bandwidth reservation layer: negotiation threads
*
* This module contains the acceptor threads and the master thread for local
* negotiations, with functions to create them.
#include <assert.h>
#include "fosa_threads_and_signals.h" // fosa_thread_attr_init...
-#include "frescan_negotiation_threads.h"
+#include "frescan_bwres_threads.h"
#include "frescan_config.h"
#include "frescan_debug.h"
#include "frescan_data.h"
-#include "frescan_negotiation_messages.h"
-#include "frescan_requests_queue.h"
+#include "frescan_bwres_messages.h"
+#include "frescan_requests.h"
#include "frescan_servers.h"
static void *frescan_acceptor_thread(void *arg);
/*!
- * @file frescan_negotiation_threads.h
+ * @file frescan_bwres_threads.h
*
- * @brief FRESCAN negotiation threads
+ * @brief FRESCAN bandwidth reservation layer: negotiation threads
*
* This module contains the acceptor threads and the master thread for local
* negotiations, with functions to create them.
+++ /dev/null
-//----------------------------------------------------------------------
-// Copyright (C) 2006 - 2007 by the FRESCOR consortium:
-//
-// Universidad de Cantabria, SPAIN
-// University of York, UK
-// Scuola Superiore Sant'Anna, ITALY
-// Kaiserslautern University, GERMANY
-// Univ. Politecnica Valencia, SPAIN
-// Czech Technical University in Prague, CZECH REPUBLIC
-// ENEA SWEDEN
-// Thales Communication S.A. FRANCE
-// Visual Tools S.A. SPAIN
-// Rapita Systems Ltd UK
-// Evidence ITALY
-//
-// See http://www.frescor.org
-//
-// The FRESCOR project (FP6/2005/IST/5-034026) is funded
-// in part by the European Union Sixth Framework Programme
-// The European Union is not liable of any use that may be
-// made of this code.
-//
-//
-// based on previous work (FSF) done in the FIRST project
-//
-// Copyright (C) 2005 Mälardalen University, SWEDEN
-// Scuola Superiore S.Anna, ITALY
-// Universidad de Cantabria, SPAIN
-// University of York, UK
-//
-// This file is part of FNA (Frescor Network Adaptation)
-//
-// FNA is free software; you can redistribute it and/or modify it
-// under terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 2, or (at your option) any
-// later version. FNA is distributed in the hope that it will be
-// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// General Public License for more details. You should have received a
-// copy of the GNU General Public License along with FNA; see file
-// COPYING. If not, write to the Free Software Foundation, 675 Mass Ave,
-// Cambridge, MA 02139, USA.
-//
-// As a special exception, including FNA header files in a file,
-// instantiating FNA generics or templates, or linking other files
-// with FNA objects to produce an executable application, does not
-// by itself cause the resulting executable application to be covered
-// by the GNU General Public License. This exception does not
-// however invalidate any other reasons why the executable file might be
-// covered by the GNU Public License.
-// -----------------------------------------------------------------------
-
-//==============================================
-// ******** **** ** **
-// **///// /**/** /** ****
-// ** /**//** /** **//**
-// ******* /** //** /** ** //**
-// **//// /** //**/** **********
-// ** /** //****/**//////**
-// ** /** //***/** /**
-// / // /// // //
-//
-// FNA(Frescor Network Adaptation layer), pronounced "efe ene a"
-//==============================================================
-
-#ifndef _FRESCAN_FNA_H_
-#define _FRESCAN_FNA_H_
-
-#include "fna.h" // for fna_operations_t
-
-extern fna_operations_t frescan_fna_operations;
-
-#endif // _FRESCAN_FNA_H_
-
+++ /dev/null
-/*!
- * @file frescan_negotiation_messages.h
- *
- * @brief FRESCAN negotiation messages format and operations
- *
- * This module contains the data types that define the FRESCAN negotiation
- * message format and operations
- *
- * @version 0.01
- *
- * @date 2-Apr-2008
- *
- * @author Daniel Sangorrin <daniel.sangorrin@unican.es>
- *
- */
-
-#ifndef _FRESCAN_NEGOTIATION_MESSAGES_H_
-#define _FRESCAN_NEGOTIATION_MESSAGES_H_
-
-#include <stdint.h>
-#include "frescan_requests_queue.h"
-#include "frescan_data.h"
-
-extern int frescan_request_to_message(uint8_t *msg,
- frescan_request_id_t id,
- const frescan_contract_t *contract);
-
-extern int frescan_message_to_request(frescan_network_t net,
- const uint8_t *msg,
- size_t size,
- frescan_node_t from);
-
-#endif // _FRESCAN_NEGOTIATION_MESSAGES_H_
/*!
- * @file frescan_reply_objects.h
+ * @file frescan_reply_objs.h
*
* @brief FRESCAN reply objects
*
*/
#include <misc/freelist.h>
-#include "frescan_reply_objects.h"
+#include "frescan_reply_objs.h"
#include "fosa_mutexes_and_condvars.h"
#include "frescan_config.h"
#include "frescan_debug.h"
/*!
- * @file frescan_reply_objects.h
+ * @file frescan_reply_objs.h
*
* @brief FRESCAN reply objects
*
/*!
- * @file frescan_requests_queue.c
+ * @file frescan_requests.c
*
- * @brief FRESCAN requests queue
+ * @brief FRESCAN requests
*
* This module contains an operation to create the queue, an operation to
* enqueue a message (with a request), and an operation to
#include <misc/freelist.h>
#include <misc/linux_list.h>
#include "frescan.h"
-#include "frescan_requests_queue.h"
+#include "frescan_requests.h"
#include "frescan_config.h"
#include "frescan_debug.h"
#include "fosa_mutexes_and_condvars.h"
/*!
- * @file frescan_requests_queue.h
+ * @file frescan_requests.h
*
- * @brief FRESCAN requests queue
+ * @brief FRESCAN requests
*
* This module contains an operation to create the queue, an operation to
* enqueue a message (with a request), and an operation to
#include <stdint.h>
#include "frescan_data.h" // frescan_contract_t
-#include "frescan_reply_objects.h" // frescan_robj_id_t
+#include "frescan_reply_objs.h" // frescan_robj_id_t
typedef uint16_t frescan_request_id_t; /* 0 .. MX_REQUESTS */