I have recently tested it and it seems to be coming int at 4 mbs
Could be the upload speed of the server you are requesting from. What happens when you run, say, 4 concurrent requests? A couple of torrent downloads should give you a clear idea.
Generally, though, advertised speeds are rarely if ever achieved. for a 25 meg line you should get 16+ more often than not, though.