Perform the displacement of a Mptcp packet inside a reception network.
[net,rp,swi,rti,probroute] = NARVAL_I_MptcpIntra(i,p,net,pr,cl,ca,n,rp,t,swi,rti,rtmax)
node index.
MPTCP packet.
reception network matrix.
route manager.
modification factor of the route manager after a packet loss.
modification factor of the route manager after a packet acknowledgement.
network size.
packet manager.
current time.
sliding window of each network node.
retransmission time of each network node.
maximum value of the retransmission time parameter.
NARVAL_I_MptcpIntra performs the displacement of the MPTCP packet p already located inside the buffer of the node i within the reception network matrix net. swi (respectivelly rti) gathers the sliding window (respectivelly the retransmission time) of each network node. rtmax corresponds to the maximal retransmission time value. The network topology is composed by n nodes. rp corresponds to the packet manager. t is the current time. pr represents the route manager. If a packet loss (respectivelly a packet acknowledgement) occurs on a path, the probability to take it is reduced (respectivelly increased) in respect with cl (respectivelly ca).
[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=2;//connection type selection index: creation of MPTCP connections swmin=1;//initial sliding window rtmin=1;//initial retransmission time rtmax=50;//maximal retransmission time p=0.90;//threshold cack=0.8;//acknowledgement factor closs=0.8;//loss factor [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(:,$) <> 0);//MPTCP packets present on the network i=ind(1);//selection of the first node where a MPTCP packet is stored p=network(i,1);//MPTCP packet index r=rp(p,$);//route taken by the MPTCP packet path=NARVAL_R_PathERT(evstr('rt'+string(r)),rp(p,2),rp(p,3),n);//route followed by this packet i//initial values p//packet index path//path network(i,:)//buffer of the node i [j,ack]=NARVAL_I_NextNode(i,path);//calculation of the next node j where the MPTCP packet should be transmitted j [network,rp,swi,rti,probroute]=NARVAL_I_MptcpIntra(j,p,network,probroute,closs,cack,n,rp,t,swi,rti,rtmax);//application of NARVAL_I_MptcpIntra network(j,:)//buffer of the node j | ![]() | ![]() |
Dr. Foued Melakessou
Research Associate
Interdisciplinary Centre for Security, Reliability and Trust
Room F106
University of Luxembourg
6, rue Coudenhove Kalergi
L-1359 Luxembourg-Kirchberg
E-mail: foued.melakessou@uni.lu
Tel: (+352) 46 66 44 5346