When Written: July 2006
Whilst this column is called ‘Web Applications’ it is also a Real World Computing column and so I make no apologies for straying slightly ‘off topic’ this month as most of my time has been taken up with organising and running the IT requirements for the World Bridge Championships.
One of my ‘hats’ is IT Manager of the World Bridge Federation, a job I was ‘volunteered’ into many years ago, and has enabled me to travel all over the world each year and added to my many grey hairs from time to time. This year the event was held in the beautiful city of Verona in Northern Italy, the venue being Verona Fiera, a large exhibition complex along the lines of the NEC in Birmingham. Every four years the World Bridge Federation hold this large competition and thousands of players turn up, so I had an assistant to help me in the form of Harvey Fox.
This year the appearance of Bill Gates as well as the sister of Fidel Castro, both turning up to play Bridge, ensured that the media had even more to interest them. Thankfully Mr Gates was far to engrossed in the complexities of his Bridge game to investigate my network, which is just as well as the requirements of setting up and maintaining a network for such an event is interesting and many of the normal ‘best practices’ are often ignored to achieve a working network in a few days setup, with hundreds of users connecting their various laptops to it! The internal network ran well with few problems, which is more than I can say of the internet connection. I will explain this in more detail as it might help someone else in the future. I had spec’ed two 2M lines with guaranteed bandwidth, this, based on previous experience being the minimum required. When we arrived I was told that we had two 4M ADSL lines and these were ‘adaptive’ lines which meant that the band width available will alter. What this meant in effect was that after a while, when the ISP had thought we had used enough of their bandwidth, they started dropping packets until the user’s browsers were timing out. Although the line never ‘died’, it often was reduced to the level of a twitching animal in its dead throes.
Speaking to Richard Palmer of Merula (www.merula.net) about this it appears that a similar situation occurs in the UK. Bear in mind that most of the ADSL infrastructure is provided by BT even if you buy it from a different reseller, so the limitations on BTs products will probably affect you even though you are supplied by ‘xyz ADSL Company’. Before I go any further let me just explain the difference with bandwidth and sync rates, Sync rate is speeds at which your ADSL modem talks to the ISPs modem where as bandwidth is the rate at which data is moved up and down the connection, once connected at the agreed sync rate that you paid for you will be sharing your bandwidth with others on a 20:1 or 50:1 ratio depending on which package you bought from your ISP. The only products that BT ‘guarantee’ any level of bandwidth (I am putting guarantee in inverted quotes here because there is no service level agreement with ADSL, unlike the considerably more expensive leased lines so there are no guarantees that you will get this bandwidth) are the 2M products which ‘guarantee’ a sync rate of 256k upload and 2 M download, the 512K and 1M products are what is known as semi fixed adaptive and with these the rates can vary, normally the upload rate will slow if the line becomes marginal as it attempts to keep the download speed as fast as possible. The new high speed ADSL Max, which offers much faster speeds, has a smaller maximum signal to noise ratio allowance, so should tolerate marginal lines, but the actual speeds obtained will vary on a minute by minute basis depending on the line quality.
The amount of bandwidth your line will support is just one side of the problem. With most ISPs, should a particular user be using more than what is considered a ‘fair share’ of bandwidth, then the ISP may start to ‘throttle’ them back by dropping packets. You can see this for yourself by using a product like Visual Route (www.visualroute.com ) which will display where the dropped packets are happening. If this is within your ISP then they are probably trying to limit your usage of their bandwidth. As the demand for more bandwidth at lower cost increases, and internet services such as video streaming and movie downloads make bigger demands on the bandwidth available, then more and more ISPs are forced into this form of limitation so as to maintain the service quality for the majority of their customers. Some ISPs currently do not throttle their customer’s bandwidth in this way, but they tend to be slightly more expensive; as with most things in life, you get what you pay for.
Another problem with using ADSL for such an network is that the amount of traffic using the 256K up link in the form of web requests can be such that the bandwidth of this ‘half’ of the ADSL becomes saturated and so whilst there might be enough bandwidth in the 4M ‘half’ to service such requests, the appearance to the user is once again that of a very slow internet connection. Even when ‘just’ downloading data each IP packet has to send back an ACK packet to say all was well and if these ACK packets are not getting back because of the upload bandwidth being full the download rate will drop accordingly. What a difference it made when after a few days we moved over to a fibre line with 4M in both directions. I had by this time also set the firewall rules to block almost everything except web and email, this was done to minimise traffic. It was surprising how little disruption doing this caused whilst reducing the traffic by two thirds. I also blocked several web sites completely, the biggest culprit being windowsupdate.com.
Using View Point (http://www.sonicwall.com/products/viewpoint.html) to analyse the traffic through the Sonicwall firewall enabled me to see who was using the bandwidth and control things. Interestingly some versions of AOL refused to pick up their email when all UDP ports were blocked at the firewall. If you are responsible for looking after any such network some basic monitoring software is vital; its no good saying to the ISP that the network is sometimes slow. Give them stats and graphs showing what is happening and when. My two favourite tools are PRTG Traffic Grapher (http://www.paessler.com/prtg ) to view bandwidth use from any SNMP enabled device such as a firewall and Visual Route which is great for monitoring ping speeds as well as showing dropped packets during trace routes.
Bet Fair? Or not?
One of the interesting outcomes of all this moving of internet connections and reconfiguration of the firewalls was that when we moved over to the fibre line I had told the system to use the Italian ISP’s DNS servers rather than my default DNS server back in London. Within minutes there were great wails of consternation from the hard working Bulletin editors that they could no longer get to their favourite on-line gambling sites.
At first we were puzzled by this and by the appearance of a web page stating that all gambling in Italy is licensed by the government and that this URL has been blocked, Then Harvey suggested that the problem might be the new DNS servers that we were pointing to. So I changed the relevant settings back to point to our ‘tame’ London based DNS servers and within a couple of minutes the angry hordes of editors were quietened, and were happily logging into their favourite sites again! Talking to Merula ( www.merula.net ) , an ISP in England, about this form of blocking it appears that it is quite a normal way of blocking access to certain sites; routing your request through an open proxy server or changing your DNS server settings will, as we found out, negate this form of blocking. However, most ISPs will only allow DNS queries from machines within their own network so you can’t just point to any DNS server in any country that might allow you access.
You need to find an ‘open’ one and this is a little trickier if you don’t know of a DNS server that will allow queries from outside its IP range.
‘XML wherefore art thou XML?’
Also at this tournament was a results and scoring system which took data from custom wireless keypads at each playing table and relayed this to a central server where it was scored and the results displayed on a combination of projectors, plasma screens and printed paper.
In the world of web applications and XML this system should have produced the final information as an XML data stream and then, by applying different templates, this data could be formatted correctly for each display medium. However this is a real world situation and like most things in the real world of computing the suggestions for modern application development are often ignored. This particular program outputted an HTML page for display on the projectors and the plasma screen. Whilst this was ok for the majority of the time, it caused problems when used in the auditorium where the choice of font sizes on these web pages meant that people in the auditorium were having difficulty in seeing the text.
The style sheet ,(at least these pages used CSS), had fixed font sizes and the centre <table> that held the data only used about 80% of the width of the browser. There was no way of altering the generated HTML code and so a different solution had to be found. After a little head scratching and a little lateral thinking we decided to try turning on the ‘accessibility’ options in IE. By doing this you can force IE to ignore font sizes in the style sheet. This made a big improvement but the text on the page heading also became unacceptably large, and we still had the problem of the central table not taking up the whole width. Looking further we noticed that you could force IE to ignore the style sheet applied to the page and to use a different one.
So first we made a copy of the style sheet obtained from the browser’s cache and then edited it so the <TABLE> tag was made to have 100% width and the heading with the <H1> tag was reduced in size. We modified things stillfurther by removing some page elements altogether which were felt unnecessary to display in this environment by using the visibility property, so we edited our style sheet to have something like:
H2 { visibility: hidden }
This style sheet was saved to the local machine and IE told to use this style sheet and not the one linked to the web page. Hey presto the display changed with large fonts across the full screen so that even the most myopic could read the results. Success!
Article by: Mark Newton
Published in: Mark Newton