How does the ISP determine the correct speed for my Internet plan?

Solution 1:

DSL is managed by a system in the phone company office (central office or CO) called a DSLAM (Digital Subscriber Line Access Multiplexer). The DSLAM can be managed by the ILEC (phone company) or a CLEC (a company that rents lines wholesale from the phone company and resells, such as Covad).

The DSLAM is a system that is built of shelves mounted in a networking bay. Each shelf has a number of cards in it and each card has a number of ports. Each port corresponds with a user that is connected to it. The shelves are all interconnected and fed from the primary shelf by what is called a trunk. The trunk is the maximum alloted bandwidth that the DSLAM can manage at once (usually a DS3, 45 mbps, or an OC3, 155 mbps).

When a new connection is set up on a port, it is provisioned for a certain speed, in your case, 512 kbps. The DSLAM then limits the speed over that port to the provisioned speed. At this point, the DSLAM has nothing to do with IP addressing, so your IP has nothing to do with your provisioned speed or how it limits the speed.

The DSLAM passes the data on through the trunk to the BRAS (Broadband Remote Access Server) which is where such things as account policy (monthly transfer limits etc) are typically applied. This is the first stage in the link since your router where the signal is actual IP and not PPP or multiplexed. From here on the traffic gets switched and routed through multiple different networks and devices to reach your destination.

The speed of the connection between your computer and the destination system (say a website) is the speed of the slowest link in the chain. This is usually the speed of the broadband connection, but in some scenarios it may be a slower connection somewhere along the chain (say the website is running on a server that is connected to the internet at slower speed than your DSL).

The data is sent in the form of packets (small chunks of data) and at each link in the chain these are buffered before being sent on. Only a certain number of packets can be buffered at once, so a send-acknowledge-send method is often used. A packet, or group of packets, are sent, then the sender waits for acknowledgement from the receiver that they have been received, then more packets are sent. This way the lowest speed link in the chain never gets completely saturated.

Solution 2:

Typically your internet service provider specifies its speeds as "maximums." That maximum, in this case 512 Kbps, is statically set by the ISP either in their hardware (in their main switch) or in yours (your router).

From the maximum, you have to subtract the following:

  • line noise / physical inefficiencies from bad cables etc.
  • network card inefficiencies
  • computer inefficiences (i.e. slow CPU, not enough RAM, etc.)
  • other people using your internet connection (if it is shared, i.e. with laptops or smartphones)
  • background applications using the connection (such as Windows automatic updates, etc.)

499 Kbps out of 512 is actually very impressive and suggests you are getting a pretty clean, lossless connection.

Solution 3:

If you mean to ask how a speed test works:

When you visit the website such as Speedtest.net a computer on the internet which is geographically close to you is chosen. This computer then sends a file to your computer, while the web page measures how long it takes. At the end, the information collected is used to estimate your speed. Connection speed depends on everything between the computer doing the measuring and your computer: the internet "backbone", the service provider's own network, and your modem or router, with the slowest part usually being the service provider's part of the link. Unfortunately, most service providers advertise their maximum speed, which is only sometimes if ever achieved, so the measured number from the speed test is usually lower than the amount they tell you.