TCP Vegas makes QoS unnecessary?

Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC based Hardware
Goto page Previous  1, 2, 3 ... , 13, 14, 15  Next
Author Message
bill1228
DD-WRT Novice


Joined: 21 Jul 2010
Posts: 28
Location: SE Michigan USA

PostPosted: Fri Jul 23, 2010 23:14    Post subject: Reply with quote
Theliel, thanks for the info. I installed this eve BS build DD-WRT-v24-sp2(07/16/10)mega 14815 on my Asus RT-N16. Went without problems I might add.
I did the checks you describe in your response and everything checks out as you said. So I guess I can assume that tcp_vegas is in fact running. Got confused by the other posts that had you doing echo commands to files that were in the /proc/sys/net/ipv4 directory, which are not there. Made me think that tcp_vegas was not installed or at least not active.
Just did a ps trying to see what daemon might be associated with this. I see one called ttraff which I assume it the one handling QOS??
Again thanks for the info. It looks like I have what I was looking for in this build. Probably in the eko build I had on just before this which was eko's latest.
Thanks again.
--bill Very Happy
Sponsor
bill1228
DD-WRT Novice


Joined: 21 Jul 2010
Posts: 28
Location: SE Michigan USA

PostPosted: Sat Jul 24, 2010 1:31    Post subject: Reply with quote
just a FYI. I have gone back to the eko build I was running and it shows, using the commands that Theliel provided, that tcp_vegas is enabled.
The build I am currently running after the BS build above is eko DD-WRT v24-sp2(07/18/10) 14826M-newd-2 k2.6 Eko.
I was using tomato latest teddy_bear build, but was having some wireless issues. Had used DD-WRT several years ago on a WRT54GL so figured I would give it a try again. Like most things so far. Only area that could use some work is on Tomato a USB drive will get auto mounted where as with DD-WRT needs a little help. So far DD-WRT has been rock solid. Very Happy
Had some issues with DD-WRT on the WRT54GL but as I said that was several years ago and sp1 days as I recall.
So I am a happy camper. Which means if something doesn't come up in the next few days I will be clicking on the donate link. Well deserved for the work that has gone into this firmware!
Again thanks Theliel!!
--bill
crashfly
DD-WRT Guru


Joined: 24 Feb 2009
Posts: 2026
Location: Sol System > Earth > USA > Arkansas

PostPosted: Sat Jul 24, 2010 16:07    Post subject: Reply with quote
Theliel wrote:
Vegas its on by default, at least in BS builds. Im sure on eko builds too. You can check this:

Path to Modules:

ls /sys/module/ -la

drwxr-xr-x 3 root root 0 Jul 24 00:14 tcp_bic
drwxr-xr-x 3 root root 0 Jul 24 00:14 tcp_cubic
drwxr-xr-x 3 root root 0 Jul 24 00:14 tcp_htcp
drwxr-xr-x 3 root root 0 Jul 24 00:14 tcp_hybla
drwxr-xr-x 3 root root 0 Jul 24 00:14 tcp_vegas


cat /proc/sys/net/ipv4/tcp_allowed_congestion_control

vegas westwood reno


cat /proc/sys/net/ipv4/tcp_available_congestion_control

vegas westwood reno bic cubic highspeed hybla htcp scalable


cat /proc/sys/net/ipv4/tcp_congestion_control

vegas

Well, thank you for the info. However, I am not able to get *any* information out of the commands you have provided, Theliel. The "/sys/module" directory does not exist for me. And I have a different set of files in "/proc/sys/net/ipv4":
Code:
dr-xr-xr-x  6 root root 0 Jul 24 16:08 .
dr-xr-xr-x  7 root root 0 Jul 24 16:08 ..
dr-xr-xr-x 11 root root 0 Jul 24 16:09 conf
-rw-r--r--  1 root root 0 Jul 24 16:09 icmp_echo_ignore_all
-rw-r--r--  1 root root 0 Jul 24 16:09 icmp_echo_ignore_broadcasts
-rw-r--r--  1 root root 0 Jul 24 16:09 icmp_ignore_bogus_error_responses
-rw-r--r--  1 root root 0 Jul 24 16:09 icmp_ratelimit
-rw-r--r--  1 root root 0 Jul 24 16:09 icmp_ratemask
-rw-r--r--  1 root root 0 Jul 24 16:09 igmp_max_memberships
-rw-r--r--  1 root root 0 Jul 24 16:09 igmp_max_msf
-rw-r--r--  1 root root 0 Jul 24 16:09 inet_peer_gc_maxtime
-rw-r--r--  1 root root 0 Jul 24 16:09 inet_peer_gc_mintime
-rw-r--r--  1 root root 0 Jul 24 16:09 inet_peer_maxttl
-rw-r--r--  1 root root 0 Jul 24 16:09 inet_peer_minttl
-rw-r--r--  1 root root 0 Jul 24 16:09 inet_peer_threshold
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_autoconfig
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_conntrack_max
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_conntrack_max
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_conntrack_tcp_timeouts
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_conntrack_udp_timeouts
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_default_ttl
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_dynaddr
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_forward
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_local_port_range
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_no_pmtu_disc
-rw-r--r--  1 root root 0 Jul 24 16:09 ip_nonlocal_bind
-rw-r--r--  1 root root 0 Jul 24 16:09 ipfrag_high_thresh
-rw-r--r--  1 root root 0 Jul 24 16:09 ipfrag_low_thresh
-rw-r--r--  1 root root 0 Jul 24 16:09 ipfrag_secret_interval
-rw-r--r--  1 root root 0 Jul 24 16:09 ipfrag_time
dr-xr-xr-x 10 root root 0 Jul 24 16:09 neigh
dr-xr-xr-x  2 root root 0 Jul 24 16:09 netfilter
-rw-r--r--  1 root root 0 Jul 24 16:09 osf
dr-xr-xr-x  2 root root 0 Jul 24 16:09 route
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_abort_on_overflow
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_adv_win_scale
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_app_win
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_bic
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_bic_beta
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_bic_fast_convergence
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_bic_low_window
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_default_win_scale
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_dsack
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_ecn
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_fack
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_fin_timeout
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_frto
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_keepalive_intvl
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_keepalive_probes
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_keepalive_time
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_low_latency
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_max_orphans
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_max_syn_backlog
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_max_tw_buckets
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_mem
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_moderate_rcvbuf
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_no_metrics_save
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_orphan_retries
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_reordering
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_retrans_collapse
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_retries1
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_retries2
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_rfc1337
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_rmem
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_sack
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_stdurg
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_syn_retries
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_synack_retries
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_syncookies
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_timestamps
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_tw_recycle
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_tw_reuse
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_vegas_alpha
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_vegas_beta
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_vegas_cong_avoid
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_vegas_gamma
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_westwood
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_window_scaling
-rw-r--r--  1 root root 0 Jul 24 16:09 tcp_wmem

_________________
E3000 22200M KongVPN K26
WRT600n v1.1 refirb mega 18767 BS K24 NEWD2 [not used]
WRT54G v2 16214 BS K24 [access point]

Try Dropbox for syncing files - get 2.5gb online for free by signing up.

Read! Peacock thread
*PLEASE* upgrade PAST v24SP1 or no support.
bill1228
DD-WRT Novice


Joined: 21 Jul 2010
Posts: 28
Location: SE Michigan USA

PostPosted: Sat Jul 24, 2010 18:50    Post subject: Reply with quote
Crashfly, it looks to me like the build you are running has the "other" tcp_vegas install. The files you list are the ones that folks use the echo command to modify. Look at previous entries in this thread if you have not seen them already.
In my case the commands Theliel gave provided the results that was given. Therefore, I assume that tcp_vegas is running for me. Have not had any slowdowns so am guessing things are working.
--bill
Theliel
DD-WRT User


Joined: 08 Jun 2008
Posts: 81

PostPosted: Sat Jul 24, 2010 18:54    Post subject: Reply with quote
Well, its very possible that some builds are different from other, specially k2.4 vs k2.6

On k2.6, configuration of algo congestion control are all in /sys/module, on k2.4 seems hold in /proc/sys/net/ipv4/

On k2.6, im sure vegas its used by default, if want check if vegas its used in your router, check tcp_vegas_cong_avoid first:

cat /proc/sys/net/ipv4/tcp_vegas_cong_avoid

If tcp_vegas_cong_avoid -> 1, then Vegas its in use
if tcp_vegas_cong_avoid -> 0, then vegas its disabled

_________________
My Blog
wrt54GL 1.1 -> Resurrected eko 14471/MMC Mod
E2000 (wrt320n converted) 1.0 -> BS 15962M -> Resurrected WAN<Serial> BS r23919
RT-AC56U -> Merlin 374.42_2
crashfly
DD-WRT Guru


Joined: 24 Feb 2009
Posts: 2026
Location: Sol System > Earth > USA > Arkansas

PostPosted: Sat Jul 24, 2010 19:39    Post subject: Reply with quote
Well, I appear to have not read the whole topic. Thank you both for informing me of my lack of knowledge.

Yes Theliel, I do appear to be running the 'vegas' routine. Works well I might add. Thanks again.

_________________
E3000 22200M KongVPN K26
WRT600n v1.1 refirb mega 18767 BS K24 NEWD2 [not used]
WRT54G v2 16214 BS K24 [access point]

Try Dropbox for syncing files - get 2.5gb online for free by signing up.

Read! Peacock thread
*PLEASE* upgrade PAST v24SP1 or no support.
TechN9Ne1730
DD-WRT User


Joined: 03 Feb 2010
Posts: 57

PostPosted: Sun Nov 14, 2010 12:04    Post subject: Reply with quote
This has been quite helpful. Still reading up on the thread. My main priority is for streaming video like youtube and hulu to provide a steady stream while being able to throttle bittorent traffic to do so. With Vegas alone, my results were pretty good. youtube would still do some buffering, but pretty smooth for the most part.

I thought maybe QoS could help balance things out better. First I decided to try QoS with 80% uplink and downlink. This seemed to work even better but my torrents dropped from 400-500kB/s average(max is usually about 515kB/s) to about 40-50kB/s average, atleast on a test with a 720p video. That was a little to much throttle for me. Yes I realize 720p is going to need more bandwidth then a 480p or below, but still a bit to much throttle. So my next step was to adjust the priorities for services a bit. Not sure which service youtube falls under so I have flash,http-video,rtsp,and rsp set to premium, torrents set to bulk. I thought if i dropped premium to express I could squeeze more out of my torrents while still getting a steady stream with a 720p video. For some reason it was doing a horrible job after switching to express. Youtube just buffered like crazy even on 480p videos.

On to the next test. So I decided to drop the uplink and downlink values to 0 in QoS as some others have mentioned here,and put the protocols above back to premium. My torrents were getting about about 300kB/s while streaming a 480p video and i think it was flawless unless I start ftping something to my NAS.

Moving on, keeping all the settings the same as above, I am now moving on to testing with a 720p video. So far this seems to be the only thing holding me back. 720 streams for about 45 seconds or so at a time, buffers very briefly and then resumes playing. The strange thing is the progress bar for youtube is showing that I have about [urlhttp://img440.imageshack.us/img440/4760/48499836.jpg]this much[/url] of the video cached already but yet it still stops and buffers even though it has already cached that much ahead of where I currently am in the video.

Does any one have any suggestions on what I could do to in regards to getting 720p youtube video to stream more smoothing?
oxygenx
DD-WRT Guru


Joined: 11 Nov 2007
Posts: 566

PostPosted: Mon Nov 15, 2010 13:55    Post subject: Reply with quote
p00nka wrote:
I did this on my dd-wrt v24 RC3 enabled Linksys WRT54GL router. I believe that dd-wrt has always supported multiple tcp congestion control algorithms. This is a module in the linux kernel. By default, dd-wrt uses tcp_westwood while openwrt uses bic.

what a none-sense.
Changing the Congestion Control algorithm only applies to TCP endpoints on that machine (ergo you have to change it on your computer)

_________________
Router: WNDR3300 (wl0: n-Only 5Ghz, WPA2-AES, wl1: g-Only, WPA-Mixed-Mixed)
WDS Node 1: WNDR3300 (wl0: n-Only 5Ghz, WPA2-AES, WDS-connected Router, wl1: g-Only WPA-Mixed-Mixed)
WDS Node 2: WRT54GL (g-Only, WPA-Mixed-Mixed WDS-connected to Router)
Modem: Cisco EPC3202
clients: Notebook 1, D-Link 323, PS3 Slim, Kathrein UFC960 connected to WDS Node 1 via Gigabit Switch. Notebook 2, Deskjet 6980 connected to WDS Node 2
strfr
DD-WRT User


Joined: 21 Jan 2008
Posts: 192

PostPosted: Mon Nov 15, 2010 14:43    Post subject: Reply with quote
I noticed that in the latest K26 builds (15508 and later) the TCP Congestion Control Vegas is enabled by default and can be changed from Web GUI at Administration page. Well done! Thanks devs!
oxygenx
DD-WRT Guru


Joined: 11 Nov 2007
Posts: 566

PostPosted: Mon Nov 15, 2010 15:09    Post subject: Reply with quote
strfr wrote:
I noticed that in the latest K26 builds (15508 and later) the TCP Congestion Control Vegas is enabled by default and can be changed from Web GUI at Administration page. Well done! Thanks devs!


kudos to the person who brought this up and wasted so much developers time.

_________________
Router: WNDR3300 (wl0: n-Only 5Ghz, WPA2-AES, wl1: g-Only, WPA-Mixed-Mixed)
WDS Node 1: WNDR3300 (wl0: n-Only 5Ghz, WPA2-AES, WDS-connected Router, wl1: g-Only WPA-Mixed-Mixed)
WDS Node 2: WRT54GL (g-Only, WPA-Mixed-Mixed WDS-connected to Router)
Modem: Cisco EPC3202
clients: Notebook 1, D-Link 323, PS3 Slim, Kathrein UFC960 connected to WDS Node 1 via Gigabit Switch. Notebook 2, Deskjet 6980 connected to WDS Node 2
adri
DD-WRT User


Joined: 07 Oct 2010
Posts: 85

PostPosted: Mon Nov 15, 2010 21:38    Post subject: Reply with quote
oxygenx wrote:
what a none-sense.
Changing the Congestion Control algorithm only applies to TCP endpoints on that machine (ergo you have to change it on your computer)


Yeah, sure!

Have you considered what happens on a gateway, like our wifi routers?
You connection gets split into 2 legs.
The first leg goes from your PC to the router. Then a second connection is build by the router to your destination on the internet.
Now we have 2 independant connections, on which the router can apply the selected congestion algorithm!

Adri.
oxygenx
DD-WRT Guru


Joined: 11 Nov 2007
Posts: 566

PostPosted: Mon Nov 15, 2010 22:38    Post subject: Reply with quote
adri wrote:

Have you considered what happens on a gateway, like our wifi routers?
You connection gets split into 2 legs.
The first leg goes from your PC to the router. Then a second connection is build by the router to your destination on the internet.
Now we have 2 independant connections, on which the router can apply the selected congestion algorithm!

no, thats just wrong, too. dont invent things.

_________________
Router: WNDR3300 (wl0: n-Only 5Ghz, WPA2-AES, wl1: g-Only, WPA-Mixed-Mixed)
WDS Node 1: WNDR3300 (wl0: n-Only 5Ghz, WPA2-AES, WDS-connected Router, wl1: g-Only WPA-Mixed-Mixed)
WDS Node 2: WRT54GL (g-Only, WPA-Mixed-Mixed WDS-connected to Router)
Modem: Cisco EPC3202
clients: Notebook 1, D-Link 323, PS3 Slim, Kathrein UFC960 connected to WDS Node 1 via Gigabit Switch. Notebook 2, Deskjet 6980 connected to WDS Node 2
crashfly
DD-WRT Guru


Joined: 24 Feb 2009
Posts: 2026
Location: Sol System > Earth > USA > Arkansas

PostPosted: Mon Nov 15, 2010 23:11    Post subject: Reply with quote
adri wrote:
Yeah, sure!

Have you considered what happens on a gateway, like our wifi routers?
You connection gets split into 2 legs.
The first leg goes from your PC to the router. Then a second connection is build by the router to your destination on the internet.
Now we have 2 independant connections, on which the router can apply the selected congestion algorithm!

Adri.

oxygenx is correct. The two connections are not independent. They both depend on the router and it's kernel to make the connections. So your premise is flawed adri.

_________________
E3000 22200M KongVPN K26
WRT600n v1.1 refirb mega 18767 BS K24 NEWD2 [not used]
WRT54G v2 16214 BS K24 [access point]

Try Dropbox for syncing files - get 2.5gb online for free by signing up.

Read! Peacock thread
*PLEASE* upgrade PAST v24SP1 or no support.
dave.tchang
DD-WRT User


Joined: 05 Jan 2009
Posts: 53

PostPosted: Sat Jan 29, 2011 18:14    Post subject: Reply with quote
Hi

See also my posting in this thread:

http://www.dd-wrt.com/phpBB2/viewtopic.php?t=81537

Kind regards
Dave
Antwerp, Belgium

_________________
WRT54G v1.1 - DD-WRT v24-sp2 mini_gen 12966 BS (AP)
WRT610N v2.0 - DD-WRT v24-sp2 mini_usb 15508M K26 EKO (AP)
Slider2k
DD-WRT Novice


Joined: 05 Feb 2013
Posts: 1

PostPosted: Tue Feb 05, 2013 4:20    Post subject: Reply with quote
dave.tchang wrote:
Hi

See also my posting in this thread:

http://www.dd-wrt.com/phpBB2/viewtopic.php?t=81537


Sorry for necro, I just couldn't believed my eyes.
The amount of ignorance around this topic is just... startling. Only one guy had some factual knowledge, but his words drowned in people's ignorance.

This lurking "Gurus" don't even know the basics of computer network operation (eg. OSI model). That a router operates on a Layer 3 (network layer: IP), and that it by default has no business on a Layer 4 (transport layer: TCP). Router does not create or intervene in any TCP connections that goes though when it does its routing duty, just because it's out of its scope by design.

Just installing a different TCP congestion algo on a router TCP protocol can't influence TCP connections passing though that router. Only when the router itself is an end-point of a TCP connection, for example when you access a service on it (telnet, web interface, etc), only on that link its TCP congestion algo will be used.
Goto page Previous  1, 2, 3 ... , 13, 14, 15  Next Display posts from previous:    Page 14 of 15
Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC based Hardware All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum