I've been using dsl internet for quite a while and having a ping from Algeria to France of about 90 ms , after trying to ping some locations in Algeria , i am getting about 50 ms, ping to my gateway is 38 ms , so theoretically , how many MS are adds per each km of DSL .
Twisted pair cable used for the local loop has a velocity factor of about .58 - each km of cable takes ca. 6 µs to travel, adding ca. 12 µs to latency. The rest of the Internet probably uses fiber with a VF of .67, resulting in ca. 10 µs or .01 ms latency per km.
ADSL has a basic encoding latency of around 10 ms. However, your ISP may likely interleave DSL packets to reduce burst error sensitivity, adding 5 to 25 ms to the latency, depending on the interleave depth. Interleaving is more likely used on longer access lines.
These are the line latencies only, each router on the way adds its own latency.
So, the length of your local loop has little impact on overall round-trip time unless interleaving is used because of the length. The ADSL encoding overhead and the general distance to a server and the way the routing is done over the Internet outweigh it by far.
You won't get better than about 14ms ping time between France and Algeria due to the speed of light.
Lagency (ping time) is additive. If your ping to your gateway is 38ms, then even if latency between your gateway and the destination is 7ms, you won't get better than 47ms.
This doesn't hold if traffic travels different paths (e.g. if you ping a system in London at 30ms, and the ping from London to Algeria is 30ms, your ping to Algeria could be lower because your traffic may not pass through London), but you probably can't get your traffic to bypass your gateway.
I hope this helps.