向你致以亲切的问候,
请问我想找出我需要在ns2源代码中调整的位置,以便实现下面的TCP算法。它是TCP AIMD算法的一种变体,称为TCP-BIAD
#.................................................................................................................
if (ACK recieved)
call routine function ()
if congestion window <= slow start threshold
increment congestion window by 1
else
set Minimum window = congestion window
set target window = Average of max. Window and min. window
if(dist. btw current window & target window > max.increment)
set S to maximum increment
else if (distance between current window and target window <=1)
set S to 1
else
set S to distance between current window and target window
end if
congestion window = congestion window + S/congestion window
end if
end if
#...........................................................................................................................
Algorithm after a single packet is Lost
#..............................................................................................................................
if ( three DUPACKs are recieved)
Maximum window = Congestion Window
slowstart threshold = max (2, B x Minimum Roundtriptime)/ Pipe Size of bottleneck link during congestion
congestion window = slow start threshold
end if
#.......................................................................................................................................
我是这个领域的新手,所以我将非常感谢您愿意分享的所有必要和相关的信息材料和链接。
答案 0 :(得分:1)
我想你可以将你的代码与ns-2.30的旧“tcp拥塞”文件进行比较
http://www.mathcs.emory.edu/~cheung/Courses/558/Syllabus/06-Extend-NS/TCP.html
或/和补丁:
congestion_ns230.patch https://drive.google.com/file/d/0B7S255p3kFXNcTJ4SU81N0ctYk0/view?usp=sharing
congestion_ns235.patch https://drive.google.com/file/d/0B7S255p3kFXNcW0yY1VOZHhvRUU/view?usp=sharing