Vonage, QoS, and Windows 2003 Server RRAS
Posted: Wed Jul 16, 2008 9:39 am
Probably like most people I have two phones. My land line and my cell phone. I wanted to get rid of the land line and just use cell phones to save some money, but my wife didn't like that idea. I didn't like paying $50/mo on something redudant. So I started my quest for cheaper phone service, and found out about vonage. I signed up and got their V-Portal phone adapter. So now I'm mostly happy, the wife gets what she wants, and I'm saving money with their $15/mo phone plan.
I'm a techie. I have a 2003 AD Domain setup at home. I'm using RRAS to provide NAT to my lan. I didn't like the idea of installing the V-Portal in between my cable modem and RRAS box. Which led to a small problem. QoS. If the phone adapter is used behind a router (as in my case) the quality of service provided by the phone adapter doesn't do any good.
I host web, email, and an occasion game server on this connection. Any congestion on uplink is very bad for voip. You'll get echos, you'll sound choppy to the person on the other end, and/or the person on the other end will get an echo. I knew about QoS, never had the oppurtinity to implement it until now. I hopped on google, found some stuff, but nothing that really helped (hence why I'm writing this up). I found about tcmon that would allow me to monitor QoS flows and filters, but it wouldn't let me create a new flow or filter. You'll want to get the resource kit and use this to monitor that traffic is going through your flows.
I don't know how, but I stumbled upon a free windows service called wintc. It's pretty easy and striaght forward to configure that allows you to create QoS rules. QoS rules don't persist after reboots, so you need a service to create em. One snag that I did run into though that is worth mentioning is the fact that if you are using NAT, you cannot create rules based on source addresses of NAT'd computers. The rules have to be based on source/dest ports or dest ips.
Here's the wintc.conf file I used. Do note that you'll want these rules to apply to the network card that has the external ip addresses with the default_netif option (read the readme that came with wintc to figure out which interface # to use).
I'm using a 19KB reservation, but vonage claims it only requires ~12.5KBps. So far it seems to be working well. Only issue is that is seems it takes about a second for the QoS to kick in. I tested by calling my wife from work, then initiating a ftp upload. My wife would cut out for about a second then it was fine. I'd also see the ftp upload transfer actually slow down too, so it is working. According to vonage they use 10000-20000 for rtp, but a tech said typically they use 10050-10150 for audio and only go higher in extreme/rare cases. Here we're QoSing 10000, 10048-10175 all dest outbound UDP traffic.
Hopefully someone will find some use of this info.
I'm a techie. I have a 2003 AD Domain setup at home. I'm using RRAS to provide NAT to my lan. I didn't like the idea of installing the V-Portal in between my cable modem and RRAS box. Which led to a small problem. QoS. If the phone adapter is used behind a router (as in my case) the quality of service provided by the phone adapter doesn't do any good.
I host web, email, and an occasion game server on this connection. Any congestion on uplink is very bad for voip. You'll get echos, you'll sound choppy to the person on the other end, and/or the person on the other end will get an echo. I knew about QoS, never had the oppurtinity to implement it until now. I hopped on google, found some stuff, but nothing that really helped (hence why I'm writing this up). I found about tcmon that would allow me to monitor QoS flows and filters, but it wouldn't let me create a new flow or filter. You'll want to get the resource kit and use this to monitor that traffic is going through your flows.
I don't know how, but I stumbled upon a free windows service called wintc. It's pretty easy and striaght forward to configure that allows you to create QoS rules. QoS rules don't persist after reboots, so you need a service to create em. One snag that I did run into though that is worth mentioning is the fact that if you are using NAT, you cannot create rules based on source addresses of NAT'd computers. The rules have to be based on source/dest ports or dest ips.
Here's the wintc.conf file I used. Do note that you'll want these rules to apply to the network card that has the external ip addresses with the default_netif option (read the readme that came with wintc to figure out which interface # to use).
Code: Select all
default_netif = 1
define_flow = flow-prio 19K prio=1
define_filter = cl-von10k dstport=10000/16 proto=udp
define_filter = cl-vonrtp dstport=2740/10 proto=udp
define_filter = cl-vonrtp2 dstport=2780/10 proto=udp
assign_filter = cl-vonrtp2 flow-prio
assign_filter = cl-vonrtp flow-prio
assign_filter = cl-von10k flow-prio
Hopefully someone will find some use of this info.