sidnet.stack.std.routing.dummyroute
Class DummyRoute

java.lang.Object
  extended by sidnet.stack.std.routing.dummyroute.DummyRoute
All Implemented Interfaces:
JistAPI.Proxiable, JistAPI.Timeless, NetInterface.NetHandler, RouteInterface

public class DummyRoute
extends java.lang.Object
implements RouteInterface


Nested Class Summary
 
Nested classes/interfaces inherited from interface jist.swans.route.RouteInterface
RouteInterface.Aodv, RouteInterface.BezierRouting, RouteInterface.Dsr, RouteInterface.ECGRIDRouting, RouteInterface.GenericRouting, RouteInterface.HeartbeatProtocol, RouteInterface.MultiTreeRouting, RouteInterface.RandomPathRouting, RouteInterface.ShortestPathRouting, RouteInterface.Zrp
 
Field Summary
 int contorUndeliverable
           
 MacAddress undeliverableToMacAddress
           
 
Constructor Summary
DummyRoute(Node myNode)
          Creates a new instance of DummyRoute
 
Method Summary
 void dropNotify(Message msg, MacAddress nextHopMac, Reason reason)
          Notification mechanism for packet dropped due to various "Reasons"
 RouteInterface getProxy()
          internals
 void peek(NetMessage msg, MacAddress lastHopMac)
          Called by the network layer for every incoming packet.
 void receive(Message msg, NetAddress src, MacAddress lastHop, byte macId, NetAddress dst, byte priority, byte ttl)
          Receive a message from the Link layer This function is called whenever the link layer receives a message whose final destination is THIS node.
 void send(NetMessage msg)
          This function is called when the App Layer transmits a packet (other than broadcast (NetAddress.ANY) packet) or a message is received from the MAC layer, but, since this node is not the FINAL destination of the message, needs to be forwarded The mechanism is explained in the SIDnet manual.
 void sendToAppLayer(Message msg, NetAddress src)
          convenience function to send data UP ("to app layer")
 byte sendToLinkLayer(NetMessage.Ip ipMsg, NetAddress nextHopDestIP)
          convenience function to send data DOWN ("to link layer")
 void setAppInterface(AppInterface appInterface)
          internals - for hooking up with App-Layer
 void setNetEntity(NetInterface netEntity)
          internals - for hooking up with the Network-Layer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

contorUndeliverable

public int contorUndeliverable

undeliverableToMacAddress

public MacAddress undeliverableToMacAddress
Constructor Detail

DummyRoute

public DummyRoute(Node myNode)
Creates a new instance of DummyRoute

Method Detail

dropNotify

public void dropNotify(Message msg,
                       MacAddress nextHopMac,
                       Reason reason)
Notification mechanism for packet dropped due to various "Reasons"

Specified by:
dropNotify in interface NetInterface.NetHandler

send

public void send(NetMessage msg)
This function is called when the App Layer transmits a packet (other than broadcast (NetAddress.ANY) packet) or a message is received from the MAC layer, but, since this node is not the FINAL destination of the message, needs to be forwarded The mechanism is explained in the SIDnet manual. On short: When the app-layer sends a packet down (or link layer sends it UP) to Network layer (unicast) the network layer calls the send(NetMessage) of the routing protocol "indexed" by the packet. Here you decide how to route or what to do with the packet If it is a broadcast packet, the Network layer will immediatelly push the packet DOWN to the Link layer, bypassing the routing protocol

Specified by:
send in interface NetInterface.NetHandler
Specified by:
send in interface RouteInterface
Parameters:
msg - outgoing packet

receive

public void receive(Message msg,
                    NetAddress src,
                    MacAddress lastHop,
                    byte macId,
                    NetAddress dst,
                    byte priority,
                    byte ttl)
Receive a message from the Link layer This function is called whenever the link layer receives a message whose final destination is THIS node.

Specified by:
receive in interface NetInterface.NetHandler
Parameters:
msg - message received
src - source network address
lastHop - source link address
macId - incoming interface
dst - destination network address
priority - packet priority
ttl - packet time-to-live

peek

public void peek(NetMessage msg,
                 MacAddress lastHopMac)
Description copied from interface: RouteInterface
Called by the network layer for every incoming packet. A routing implementation may wish to look at these packets for informational purposes, but should not change their contents.

Specified by:
peek in interface RouteInterface
Parameters:
msg - incoming packet
lastHopMac - last link-level hop of incoming packet

sendToLinkLayer

public byte sendToLinkLayer(NetMessage.Ip ipMsg,
                            NetAddress nextHopDestIP)
convenience function to send data DOWN ("to link layer")


sendToAppLayer

public void sendToAppLayer(Message msg,
                           NetAddress src)
convenience function to send data UP ("to app layer")


setAppInterface

public void setAppInterface(AppInterface appInterface)
internals - for hooking up with App-Layer


setNetEntity

public void setNetEntity(NetInterface netEntity)
internals - for hooking up with the Network-Layer


getProxy

public RouteInterface getProxy()
internals