[Javanetsim-cvs] javaNetSim/core/protocolsuite/tcp_ip Tcp.java,1.29,1.30
Status: Beta
Brought to you by:
darkkey
From: gift <gi...@us...> - 2005-12-08 20:57:10
|
Update of /cvsroot/javanetsim/javaNetSim/core/protocolsuite/tcp_ip In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26021/core/protocolsuite/tcp_ip Modified Files: Tcp.java Log Message: -- Index: Tcp.java =================================================================== RCS file: /cvsroot/javanetsim/javaNetSim/core/protocolsuite/tcp_ip/Tcp.java,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** Tcp.java 8 Dec 2005 19:41:51 -0000 1.29 --- Tcp.java 8 Dec 2005 20:56:57 -0000 1.30 *************** *** 878,882 **** --- 878,907 ---- window_size=(int)ACCELER_KOEFF*inSeg/TOTAL_TIME; } + + + /** + * This method returns the ORD ACK number in + * Elm.ReceivedACKs + * @author gift (sourceforge.net user) + * @param inV vector of Integers + * @return int last ordered value + */ + private int GetNumber (Vector inV) + { + int mx=0; + boolean ordered=true; + int previous=(Integer)inV.firstElement(); + Enumeration vEnum = inV.elements(); + + while (vEnum.hasMoreElements() && ordered) + { + mx=(Integer)vEnum.nextElement(); + if (mx>=previous) previous=mx; else ordered=false; + } + + return previous; + } + /** * This method returns the TCP packet to send *************** *** 903,907 **** Integer gg = new Integer(0); ! if (!Elm.ReceivedACKs.isEmpty()) gg = (Integer)Elm.ReceivedACKs.lastElement(); if (Elm.seq_number <= gg+window_size) --- 928,932 ---- Integer gg = new Integer(0); ! if (!Elm.ReceivedACKs.isEmpty()) gg = GetNumber(Elm.ReceivedACKs); if (Elm.seq_number <= gg+window_size) |