<< NARVAL_I_NetworkState NARVAL NARVAL_I_PacketAck >>

NARVAL >> NARVAL > NARVAL_I_NextNode

NARVAL_I_NextNode

Select the node where a packet should be forwarded.

Calling Sequence

[nj,ack]=NARVAL_I_NextNode(ni,path)

Parameters

ni :

current node location.

path :

connection path.

nj :

next node location.

ack :

acknowledgement.

Description

NARVAL_I_NextNode selects the node nj where the packet under consideration located inside the node ni should be forwarded. When nj coincides with the connection destination node, ack rates 1. Else it is 0.

Examples

[path]=NARVAL_F_NARVALPath();//path to NARVAL module
path=path+'/demos/';//folder path
load(path+'RoutingTables_topo_100.dat','pt','rt1','rt2','rt3','rt4','rt5');//loading of the network routing tables
load(path+'topo_100.graph','g');//loading of the network graph
n=100;//network size
bs=15;//constant buffer size
[nd,nf]=NARVAL_F_Random_i_j(n);//generation of connection extreme nodes
L=1000;//network square area side
t=1;//current time
[probroute]=NARVAL_I_StartRouteProb(rt1,rt2,rt3,rt4,rt5,pt,n,L);//initialization of the route manager
network=NARVAL_I_EmptyBufferNet(n,bs);//initialization of the reception network matrix 
networks=NARVAL_I_EmptyBufferNet(n,bs);//initialization of the emission network matrix
tpmax=n*bs;//maximal quantity of packets simultaneously supported by each network matrix 
rp=NARVAL_I_EmptyPacketMan(tpmax);//initialization of the packet manager
cpmax=5;//maximal quantity of packets per connection
ct=1;//connection type selection index: creation of TCP connections
swmin=1;
rtmin=1;
rtmax=50;
p=0.90;//probability threshold
[swi,rti]=NARVAL_I_TcpStartPar(n,swmin,rtmin);//initialization of the TCP parameters for each node
[networks,rp]=NARVAL_I_ConManagerNodes(nd,n,bs,cpmax,networks,rp,ct,p);//generation of new connections
[swi,rti,network,networks,rp]=NARVAL_I_E2R(swi,rti,rtmax,network,networks,n,bs,rp,t,probroute);//emission of packets on the reception network
ind=find(network(:,$) lt gt 0);//TCP packets present on the network
i=ind(1);//selection of the first one
p=network(i,1);
r=rp(p,$);
path=NARVAL_R_PathERT(evstr('rt'+string(r)),rp(p,2),rp(p,3),n);//extraction of the connection path
i//initial values
p//packet index
path//path
[j,ack]=NARVAL_I_NextNode(i,path);//application of NARVAL_I_NextNode
j
ack

Author

http://wwwen.uni.lu/interdisciplinary_centre_for_security_reliability_and_trust

Contact

<< NARVAL_I_NetworkState NARVAL NARVAL_I_PacketAck >>