User Tools

Site Tools


midd:traffic_scheduling:project_log

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
midd:traffic_scheduling:project_log [2009/04/24 16:20]
afbarnard Added project log entries for past 2 weeks from my own notes
midd:traffic_scheduling:project_log [2009/05/15 14:55] (current)
afbarnard added log entry for handing in
Line 126: Line 126:
 ==== 04/10 ==== ==== 04/10 ====
  
-I was in the process of doing this (see above) when I could not reinstall the Sprint drivers. Looking for a new set of drivers, I found a completely revamped set from Sprint. Installing, and guess what - the NDIS adapter can not be directly seen by winpcap. Successfully sending and receiving via our software over the Sprint card to our server.+I was in the process of doing this (see above) when I could not reinstall the Sprint drivers. Looking for a new set of drivers, I found a completely revamped set from Sprint. Installing, and guess what - the NDIS adapter can now be directly seen by winpcap. Successfully sending and receiving via our software over the Sprint card to our server.
  
 ==== 04/12 ==== ==== 04/12 ====
Line 202: Line 202:
 AB - Prepare presentation for meeting with Suman. AB - Prepare presentation for meeting with Suman.
  
 +PK - Actually early 04/25. Started from scratch last night. Finished a new server - even added graphing GUI. Architected class hierarchy and implemented round robin scheduler (since it does not require any actual capture or analysis) as a means of exercising the class hierarchy. I like it so far. Very pleased. This screen grab shows the server receiving from a SuperTcpClient with 2 (simulated) adapters with the round robin scheduler. The graph is the last 60 seconds. The dip is the current second.
 +
 +{{:​midd:​traffic_scheduling:​server_snap.jpg|}}
 +
 +==== 04/25 ====
 +
 +PK - Decided to take a chance to write super-TCP. Came up with plan. Spent 24 hours straight on it. Concluded it is too big for this late in the semester. But will continue thinking about it as developing a framework for this future work would make a nice addition to the project'​s report.
 +
 +AB - Get SharpPcap working on Linux with Mono. Correspond with Perry about project focus, design, cross-platform compatibility.
 +
 +==== 04/27 ====
 +
 +PK, AB - several hour meeting came up with concrete plan for finishing this project. ​
 +
 +PK - started over again. ​
 +
 +==== 04/28 ====
 +
 +PK - experimented with blocking and non-blocking socket member. With non-blocking I crashed my computer every time when I hammered the adapter but did not do this with blocking set. Flag must do something :). Later this day: First fully functioning version of new client / server. ​
 +
 +PK, AB - meet for an hour for code review, status. ​
 +
 +PK - a few more hours in. I added three more transmission "​models"​ to the client: load,burst and random. I have replaced the processor based clock and am now using DateTime.Now.Ticks to make the code portable to Linux. This means same-machine/​same-subnet RTTs are 0. I added the adapter cumulative loss/ooo counts. I added timestamps in acks. Have conclusive evidence that the blocking socket flag does nothing in UDP. Forced to put in Thread.SpinWait every N bulk transmissions so that we don't spill so many segments on the floor, even before they'​ve hit the wire.
 +
 +AB - Clean up and commit new code.
 +
 +==== 04/29 ====
 +
 +PK - Added OpenGL "​GUI"​ to client.
 +
 +AB - Look into C# timer resolution issue. Create demo timer application.
 +
 +==== 04/30 ====
 +
 +PK - Added Jacobson/​Karels Algorithm RTT estimation to adapter code. It furnishes an established idea of current RTT for use by schedulers. Jacobson/​Karels Algorithm specification doesn'​t discuss adding to estimated timeout any effect of actual timeouts. So, I added a penalty to the estimated timeout if an actual timeout occurs (added 0.1 seconds to estimated timeout). Temporarily,​ I connected the suggested timeout value to the actual timeout value and it worked VERY well.
 + 
 +
 +PK - Later. Improved GUI graphing. Realized there was no way to zero bins for seconds in which no segments were sent. New code has additional benefit of scrolling in new data.
 +
 +==== 05/04 ====
 +
 +PK - Removed GUI graphing to make it easier to port to Mono. With a little more tinkering with the Tao framework (which IS Mono compatible),​ the GUI code could be added back in.
 +
 +==== 05/05 ====
 +
 +AB, PK - Meet
 +
 +AB - Write link oracle. Try to run with Tao/OpenGL. Advise removing Tao. Tidy repository.
 +
 +==== 05/06 ====
 +
 +PK - Implemented Spaghetti scheduler. Happy birthday to me.
 +
 +AB - Write link oracle.
 +
 +==== 05/07 ====
 +
 +PK - Implemented random scheduler.
 +
 +==== 05/08 ====
 +
 +AB - Logging of network characteristics,​ scheduling decisions, network activity, etc. for use in experiments.
 +
 +==== 05/09 ====
 +
 +PK - Implemented experiment duration timer for Aubrey.
 +
 +AB - Logging.
 +
 +==== 05/10 ====
 +
 +PK - Made code tweaks for Aubrey. Began formal presentation development.
 +
 +AB - Logging. Fix adapter class. Fix time stamps. Fix link oracle. Proportional scheduler.
 +
 +==== 05/11 ====
 +
 +AB - Revise command line arguments to add options necessary for experiments.
 +
 +PK, AB - met for 6 hours. Made a lot of progress. Reviewed formal presentation. Conceived more fully realized BK Scheduler - an idea that we have bandied back and forth for a long time.
 +
 +==== 05/12 ====
 +
 +PK - starting at 3:30 AM to 9:30 AM - really formalized BK.
 +
 +AB, PK - Met for 8 hours to implement BK scheduler, run experiments,​ fix bugs, rerun experiments,​ finish presentation.
 +
 +==== 05/13 ====
 +
 +AB, PK - Give partial project presentation. Revise and condense remainder of presentation so that it fits into 10 minutes or less.
 +
 +==== 05/14 ====
 +
 +AB, PK - Finish revising presentation. Give director'​s cut condensed version.
 +
 +==== 05/15 ====
 +
 +AB, PK - Upload deliverables to this site.
midd/traffic_scheduling/project_log.1240608038.txt.gz ยท Last modified: 2009/04/24 16:20 by afbarnard