|
DESERT 4.0.0
|
#include <uwmulti-multiphy-controller.h>


Classes | |
| class | ProbeTimer |
| class | ResilienceTimer |
Public Member Functions | |
| UwMultiPhyControl () | |
| virtual | ~UwMultiPhyControl () |
| virtual int | command (int, const char *const *) |
| void | recv (Packet *p) |
| void | recv (Packet *p, int idSrc) |
Private Member Functions | |
| void | initialize () |
| int | getBestMacID (int trafficType, int remoteIP) |
| void | updateAvailability (RemoteConnection c, LinkStatus status) |
| void | sendPing (RemoteConnection c) |
| void | recvFromUpperLayers (Packet *p) |
| void | recvFromLowerLayers (Packet *p, int macID) |
Private Attributes | |
| int | debug_ |
| int | localIP |
| std::vector< int > | macIDs |
| std::queue< Packet * > | packet_queue |
| std::map< int, double > | resilienceTimeouts |
| std::map< RemoteConnection, ResilienceTimer > | resilienceTimers |
| std::map< int, double > | probeTimeouts |
| std::map< RemoteConnection, ProbeTimer > | probeTimers |
| PriorityMap | priorityMap |
| std::map< RemoteConnection, int > | linkStatuses |
| std::map< int, int > | macResilience |
| std::map< int, int > | macTclIdLayerId |
Class used to represents the UwMultiPhyControl layer of a node.
| UwMultiPhyControl::UwMultiPhyControl | ( | ) |
Constructor of UwMultiPhy class.
References debug_, and priorityMap.
|
inlinevirtual |
Destructor of UwMultiPhy class.
|
virtual |
References PriorityMap::addCustomPriority(), getBestMacID(), initialize(), LocalConnection::localMacID, macResilience, macTclIdLayerId, priorityMap, probeTimeouts, resilienceTimeouts, PriorityMap::setDefaultPriority(), and LocalConnection::trafficType.

|
private |
References PriorityMap::getPriority(), LINK_OK, linkStatuses, LocalConnection::localMacID, RemoteConnection::localMacID, macIDs, priorityMap, RemoteConnection::remoteIP, and LocalConnection::trafficType.
Referenced by command(), and recvFromUpperLayers().

|
private |
References debug_, UWIPClMsgSendAddr::getAddr(), localIP, macIDs, and macTclIdLayerId.
Referenced by command().

| void UwMultiPhyControl::recv | ( | Packet * | p | ) |
| void UwMultiPhyControl::recv | ( | Packet * | p, |
| int | idSrc | ||
| ) |
References recvFromLowerLayers(), and recvFromUpperLayers().

|
private |
References hdr_uwip::daddr(), debug_, LINK_OK, localIP, RemoteConnection::localMacID, packet_queue, printType(), PT_UWCBR, PT_UWMULTIPHY_DATA, PT_UWMULTIPHY_PING, PT_UWMULTIPHY_PONG, recvFromUpperLayers(), RemoteConnection::remoteIP, hdr_uwip::saddr(), and updateAvailability().
Referenced by recv().

|
private |
References hdr_uwip::daddr(), debug_, getBestMacID(), LINK_UNKNOWN, linkStatuses, localIP, RemoteConnection::localMacID, macIDs, packet_queue, printType(), PT_UWMULTIPHY_DATA, RemoteConnection::remoteIP, sendPing(), and hdr_uwcbr::traffic_type().
Referenced by recv(), and recvFromLowerLayers().

|
private |
References hdr_uwip::daddr(), debug_, LINK_PROBING, LINK_UNKNOWN, linkStatuses, localIP, RemoteConnection::localMacID, printType(), probeTimeouts, probeTimers, PT_UWMULTIPHY_PING, RemoteConnection::remoteIP, and hdr_uwip::saddr().
Referenced by recvFromUpperLayers().

|
private |
References debug_, LINK_OK, LINK_PROBING, linkStatuses, localIP, RemoteConnection::localMacID, probeTimers, RemoteConnection::remoteIP, resilienceTimeouts, and resilienceTimers.
Referenced by recvFromLowerLayers().
|
private |
Referenced by initialize(), recvFromLowerLayers(), recvFromUpperLayers(), sendPing(), updateAvailability(), and UwMultiPhyControl().
|
private |
Referenced by getBestMacID(), recvFromUpperLayers(), sendPing(), and updateAvailability().
|
private |
Referenced by initialize(), recvFromLowerLayers(), recvFromUpperLayers(), sendPing(), and updateAvailability().
|
private |
Referenced by getBestMacID(), initialize(), and recvFromUpperLayers().
|
private |
<macID, resilience> where resilience score enstablish an order across local MAC layers: if a less robust one is LINK_OK all higher ones will be as well
Referenced by command().
|
private |
Referenced by command(), and initialize().
|
private |
Referenced by recvFromLowerLayers(), and recvFromUpperLayers().
|
private |
Referenced by command(), getBestMacID(), and UwMultiPhyControl().
|
private |
Referenced by command(), and sendPing().
|
private |
Referenced by sendPing(), and updateAvailability().
|
private |
Referenced by command(), and updateAvailability().
|
private |
Referenced by updateAvailability().