A Crash Course on Network Bandwidth Metrics?
Kind of Blue asks: "I work for a small software development company in India, providing development services for a company in UK. We connect to the UK client through VPN; and our correct staff strength is around 13. We are going in for a major upgrade in our internet connection — and owing to the size of the firm, cannot afford the services of a networking expert/consultant. Hence I, a layman, have been asked to look into the matter and decide on the ISP and the bandwidth. I have a vague idea about the required bandwidth — it must be around 512 kbps(remember, it's India I am talking about!) and must be a persistent connection, since we use source control softwares connecting to servers in the UK.
There doesn't seem to be a 'networking for dummies' kind of resource on the web. No one seems to talk of network metrics anywhere. So, can Slashdot give me a crash course in what I need to know?"
"Our present ISP gives us a DSL connection of 512 kbps on 1:4 sharing. There are frequent disconnections; and hence loss of work while code check-ins. As we are increasing in strength, I am also looking at more bandwidth. But what bamboozles me is how are these things measured? Will I get a better bandwidth if I take a 512 leased line on 1:2 sharing? When the staff doubles, should I upgrade to a 512 connection on 1:1 sharing or must I take 1 Mbps on 1:4 sharing?(There's a huge price gap between the 2 here in India) In any case, how does one decide the optimum bandwidth required for a bunch of 15 developers on VPN and Source control?"
it must be around 512 kbps(remember, it's India I am talking about!) and must be a persistent connection, since we use source control softwares connecting to servers in the UK.
Have you actually measured how much bandwidth your source control software application consumes? To me that'd be the very first step, before you look into upgrading from one voodoo number to another. Real data is very often the key to good decisions.
More data, damnit!
Dear slashdot:
I'm trying to outsource your jobs. However, I don't know all that I need to know. Would you mind providing free training in your spare time for your replacement?
OTOH: you probably don't need as much speed as you do reliability. I would guess that an unsharing situation will work better for you.
You might, over the short term, insert an extra hop in your network in front of the ISP hop, and measure avg bandwidth there over the course of a business day. As long as you have enough total bandwidth / second to match your typical usage (allowing for some margin, and expected growth) in a business day, all you'll cope with is some latency.
"Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
Unless there are also developers in the UK constantly accessing the code repository there's no good reason to use source control outside of your office. It'll be considerably cheaper to buy a small server with a RAID array, stick Subversion on it, and put it on your network, than it would be to be transfering files all the time. If the company in the UK that you work for insist on having control of the code then write something that syncs diffs between your local repository and the UK nightly/a few times a day/hourly/whatever. 13 coders aren't likely to be checking in more than a couple of megabytes of changes every hour.
Note: SVN/CVS/SourceSafe/whatever can probably do this already, IANAEIVS (I am not an expert in versioning systems).
http://twitter.com/onion2k
One thing you could look at is to use subversion as your source control system, as it only transfers diffs accrss the network so is very good with low bandwidth connections.
and our correct staff strength is around 13
So after adding in your incorrect staff, you get a total of?
How much data are they pushing onto the source control server? Why not just move the source control server to India?
Contention ratios only help to ensure that you get the full 512Kb/s, it won't increase your reliability I wouldn't think. You will have to increase your total bandwidth size, not just change your contention ratio when you get more staff.
...so I will just say what half the other people here are thinking.
Maybe you can outsource this project to the west since there are plenty of very well experienced people who know this stuff who could use the work.
I don't hate India or Indians, but it will be a cold day in Hades before I give assistance to a shop whose only purpose in this world is to displace jobs formerly occupied by my neighbors.
Yes and No. Right now you are setup on a 512K/s line, shared with up to 4 other customers. This means that if Customer A is using 400k/s, and Customer C is using 100k/s, then customers b and c get to share 12k/s. (without getting into the discussion of prioritizing and QOS, I'm way oversimplifying) Or, depending on the setup, each of you might be setup to only get 128k/s when all of you are using your connection. Now, if its the first case, and you have one other customer that is hogging all your traffic, then you will benifit from moving to a 1:2, or even just getting rid of them on the same circuit. However, the only way to be sure that you have 512k/s if you need it is to make sure you have your own connection, and a garuntee from the ISP. (in the US, these are called "Business class" DSL circuits in many areas) It will be MUCH more expensive.
What are we going to do tonight Brain?
reliability of an internet service is not always dependent on bandwidth used.
Most times it depends on your ISP and their upstream ISPs' network, quality of service, etc.
Note: it is possible you are reaching your real bandwidth limit (what the ISP makes available to you) at different times which causes delays resulting in timeouts. Might be volume of traffic over the VPN link or it might be non-VPN traffic to the rest of the internet.
If you want more bandwidth (hedged bet for the future) and better reliability, then what you want is redundant ISPs and VPN concentrators that support redundant ISPs and more importantly support load sharing.
I have no relationship with the following company except I evaluated one of their products earlier this year for non-VPN redundant ISP problem..
http://www.astrocorp.com/
Given what you say about large price delta between DSL@512 w/1:2 vs 1Mbps w/1:4, you would be better off with two DSLs each @512 w/1:2 from two different ISPs.
Note: The key to redundancy is making sure each of the ISPs you choose don't share the same upstream ISPs.
Not sure of the market in India but this is hard in many locations where the local telco is the only upstream provider.
This sig space tolet, reasonable rate.
http://news.bbc.co.uk/1/hi/world/south_asia/527267 2.stm
Deleted
When I started my current job the company had minimal bandwidth requirements, a dedicated T1 and only 7 people using the connection. And they all complained about the "slow" connection. Problem was latency. 250ms to the ISP's gateway was typical and often worse. Given that displaying a typical web page involves several DNS lookups and many connections those quarter-seconds added up quick.
We switched to a new provider (actually had to, the old one was in bankruptcy) and people were stunned by the improved speed. Of course the "speed" was the same - they were both T1s. Only the latency had changed.
Using the appropriate transfer method, bulk data transfers may not be significantly impacted by bad latency. But anything involving lots of small transfers and/or short connections can be killed by bad latency.
~~~~~~~
"You are not remembered for doing what is expected of you." - Atul Chitnis
You say you can't afford to figure this out with an expert. My response is that you're asking your competition to help you cut your costs so that you can better compete with them.
Enjoy the answers.
-Tim Louden
You could have figured out how much bandwidth you don't have by posting a link to your local server. Being Slashdotted would've shown your ISP you need more bandwith!
Then; Take the number of connections at your end before your connection was severed, and add that to 'half' the number of connections when your ISP's server/connection maxed out, multiply by the number of toilets in your office, and divide by Pi.
Why don't you just outsource your development work to the U.S.? Then you won't have to worry about bandwidth.
you've come to the Slashdot community which is mostly Americans to ask us to help you out. Someone who is taking our jobs away from us. I don't think so.
Cyberbite Networks - Web Hosting, Dedicated Servers & Colocati
Welcome to the world of business. Are you starting to understand why we charge as much as we do outside of India? It's because we have to support our business infrastructure and still make a profit for all our effort! Don't like it, go back to India. Oh wait...
your developers to stop downloading porn and illegal music at work.
Cyberbite Networks - Web Hosting, Dedicated Servers & Colocati
You're (ostensibly) a professional services shop, seeking to provide (ahem) professional services to another company, over the internet. You plan on using the internet as your delivery method for the services rendered. Now, why on earth would you ask Slashdot for professional services advice? What if your customers instead decided to go it on their own for internet services? While a 13 person shop may be a small company, I refuse to believe that you cannot spend the money necessary to have a PROFESSIONAL consultant come in and advise you, at the very least, what your bandwidth needs are. I would surmise that your clients expect you to act like a professional shop - I'd recommend hiring a professional, instead of trying to skimp and asking Slashdot.
This article could probably be filed in the 'I need legal advice' portion of the archives.
(Also, if you're a programmer, at least try and check out Google. If you're technical enough to program, you're technical enough to grep at least some small portion of networking.)
One of the major things to consider is that TCP's performance is also bound by the recieve window size[2]. Since TCP can only send more data as it's ACK'd due to this window, RTT plays a factor.
So also consider the "bandwidth delay product"[1] to where you're connecting to and compare this to your recieve window size. Consider checkking to make sure increasing your recieve window size won't get you better performance. This needs to be done at the end of the connection that's recieving the data, which for a checkin is likely to be in the UK...
Another thing is that TCP slows down whenever it sees loss as it considers loss to be due to congestion. The amount of time it takes to recover from this is based on round trips (ie latency again). This has a far more complicated formula to work out, see my webpage http://www.wand.net.nz/~perry/max_download.php for a simple calculator to work it out for you.
Since you're in India I suspect that the delay to your UK collegues is probably going to end up going the "wrong" way around the world and will therefore due to the speed of light in fibre your latency is going to be high.
[1]: Easily calculated by the obvious formula bandwidth*delay=recieve_window_size. Perhaps a more useful version of this is rwin/delay = maximum_tcp_bandwidth.
[2]: Not to be confused with the congestion window which is a different concept.
Didn't he have to compile numbers for WEekly Network USage and Annual Network USage?
Downmodding is the refuge of the weak. Don't downmod, make a better argument!
""There are frequent disconnections; and hence loss of work while code check-ins.""
Is this the key reason why you need a VPN?
[BTW, I hope that you are not using MS SourceSafe...]
Have you considered alternate revision control systems?
On the (not too expensive) commercial side, I am a fan of Code Co-op, from http://www.relisoft.com/. I've used it with a development team in China a few years ago, and they were definitely worse-off than you. Free trial available for download.
I fault the American citizens for their purchasing and voting decisions.
don't blame "us" - "we're" just the sheep. Blame the criminals who legislated themselves a banking monopoly - that'd be the quasi-public "federal reserve" system.
Federal Reserve "prints" money to pay for the budget deficit. Printing money (monetary inflation) causes price inflation, and price inflation causes producers of goods to cut corners to keep their costs down, hopefully just a little while longer than their competitor.
In recent decades, the most popular "corner" to cut has been the corporation's american workforce. First it was low skill workers - textiles, shoes, etc. Little by little, outsourcing has worked its way up the supply chain, and today most consumer merchandise is produced in Asia.
The "federal reserve note" dollar will crash, as all fiat currencies eventually do. It shouldn't be too long - no more than a year, I'm sure. There are consequences for running record deficits, you know...
The good news is that the dollar crash will take out the families with "old money" too, and we can return to a more egalitarian economic system. It'll be rough, for a bit, but definitely worth it.
Learn the rules so you know how to break them properly.
www.teslabox.com
Ironically, many "US" cars are made in Mexico or Japan, or are simply rebranded foreign cars. You can look at the the VIN next time you're shopping for cars.
1st character- Identifies the country in which the vehicle was manufactured.
For example: U.S.A.(1or4), Canada(2), Mexico(3), Japan(J), Korea(K), England(S), Germany(W), Italy(Z)
http://www.autoinsurancetips.com/vin.htm
...There's a big "but", usually, to try and curb hyper-inflation interest rates are raised. So now your 5% PA mortgate is a 50% PA one. However, if you were smart enough to get into a fixed rate mortgage and there's still time before it converts into a variable rate one you should be a happy camper, if you can feed yourself that is. If you have savings, that 50% interest should come in handy for that too!
I am NaN
Poster cammoblammo has already called you on it ("Ah, there's your point: 'He's Indian, therefore he's ripping me off'"), but your attitude towards Indian people sucks. I am very sorry if you or friends are unable to work because senior people in their employers found other people in the world to do the work cheaper, but that does not justify the attitude that has you say "why help them out when they are stealing our jobs". Your bosses are selling your jobs to the lowest bidders -- Indian technology companies aren't stealing anything. Please reconsider your attitude.
Here's one firm you won't have to worry about stealing your jobs.
Well, let's give them a fighting chance at least. Ok, here's what I do to estimate bandwidth needs: Minimum bandwidth x number of users @ peak time. In your case- I would say you need a 1.5 MBit T-1 line or better. If you can't afford to do that in your current contract, then you need to renegotiate your contract for more money.
SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
" we didn't ask for them, management imposed them on us for reasons we're still not quite aware of --"
Managment was looking at replacing you with them.
When training someone who will be taking your job, train them badly, foist all problems on them, communicate with them at a time when it seems reasonable, but in reality it isn't so they are always the delay.
You owe nothing to a company that will drop you like a hot potato, and you own nothing to whome ever they will replace you with.
Fight for your job, because the governmant and managment will not.
For tjose of you think this is a horrible attitude, rest assured people in other countries would do this to you.
The Kruger Dunning explains most post on
first, use the MS network tool fdisk.
Follow the procedure, you want to do a network latence repair know has 'partitioning'. It splits the bandwidth up among applications accross your hard drive. This will dramatically reduce bandwidth.
You versioning system is going to be a big drain, I suggest starting with that one.
The Kruger Dunning explains most post on
In the UK uou can usually only get a fixed rate for a period of up to 5 years, after which you convert back to a variable rate. Of course, at that point you switch to another mortgage and/or renogotiate a new fixed rate (IIRC).
I am NaN
At the level of issue he's talking about, it might well be hiring a consultant for 2 hours. Heck, we'd do it for two hours, but a local consultant probably costs less for a day.
My other piece of advice is similar to what I've already seen: Ignore bandwidth, look for reliability. As recently as 2003 we had 4 users in the US on a single 56k line - and really, it was fine if you weren't trying to download big files. But it was a rock solid 56k that didn't lose any packets.
If you have actual DSL disconnections, you do not have a bandwidth problem... (Unless you're getting disconnected from the VPN only because something took too long)
If bandwidth was really expensive and you wanted to be really hardcore you could setup the Linux Advanced Routing stuff (or possibly just get a gaming router, depending on the model, but I haven't tried) and set it up to make sure that it responds to interactive connections rapidly at the expense of any other downloads. But from the sound of it you might need some help getting that setup.
Looking for freelance Actionscript (Flash/Flex) or ColdFusion work and/or freelance developers. Email me, put Slashdot
The government DID step in. And instead of implementing some sort of system that would tend to balance the standards of living, they have created INCENTIVES for offshoring.
a ks_for_.htmlR J8OVF&b=32409
http://techpolicy.typepad.com/tpp/2004/03/tax_bre
http://www.americanprogress.org/site/pp.asp?c=biJ
These were high up in Google, that's my only endorsement of these sources. It was a hot issue in 2004...
Looking for freelance Actionscript (Flash/Flex) or ColdFusion work and/or freelance developers. Email me, put Slashdot