Category: Uncategorized

MSIE6 Euthanized. Rejoicing Among Web Developers Begins.

It’s official. According to the IE Dev Blog at MSDN, MSIE8 will be the direct upgrade path via Windows Update in the third week of April. [here]
I discussed the slow decrease in MSIE6 browser share earlier today, but it is not occurring fast enough for my liking. It is a browser from what seems like a generation ago.
To give you some idea of why MSIE6 should gently euthanized, when it was a shiny new browser:

  • Facebook, MySpace, GMail, and YouTube did not exist
  • You could count the number of bloggers (remember them?) on one hand
  • UserLand was the primary blogging tool. Or a text editor.
  • Scoble didn’t work for Microsoft
  • Excite and AltaVista were still viable search engines

Is it too early to write a redirect rule to direct MSIE6 users to a page telling them to upgrade to view content?
[Image courtesy of CreativeBits]

Browser Wars: StatCounter Data for North America

Tracking browser penetration and market share has become a new obsession with me. With 2009 shaping up to be the year of the browser container, the choices that people make will affect the development of Web technologies for the next few years.
So far, the only new player to come out of the gate as a production release is MSIE8. Since March 19, MSIE8 has seen a slow and steady increase in market share, at least in North America. This has occurred, as I have noted previously, without the support of Windows Update, which will drive millions of users to automatically upgrade their systems.

NA-browser stats-MAR15-APR132009

What can be seen in this data from StatCounter is that MSIE8 is finally (Thank [insert deity or supernatural object here]!) taking market share away from MSIE6. As the corporate browser of choice (mainly because IT departments don’t have the resources or initiative to sign-off on MSIE7), MSIE6 is the default platform that all developers are forced to lower their standards to.
One can hope that IT departments will allow their customer base to make the leap directly to MSIE8 from MSIE6. We can all celebrate now, as the StatCounter data now shows that MSIE6 has dropped below 10% market share.

NA-browser stats-APR1-132009

What is more interesting is that Firefox 3.0 made a serious encroachment into MSIE7 near the end of March. I am not aware of what may have caused this, and would be interested to hear if the StatCounter team has any insight into why this may have occurred.

Scaling Web Analytics – Considerations for Consumers

A comment on my Hit Tracking with PHP and MySQL post raised some interesting questions about what a consumer of Web analytics data needs to consider when selecting providers for their sites.
Most folks are familiar with the model of Web analytics vendors: You place their JS tag on your page which makes a call back to their centralized system with all of the data that can be collected about the visitor who has just come to your site.
There are three items that you, the consumer of this third-party service, need to get straight answers about.

Performance of the Tag

Visitors to your site do not know which components you are responsible for and which you have farmed out to vendors and services. In their mind, all content is your content. This means that the performance of the Web analytics tag, which if not placed correctly on the page can affect the rendering of the content, is a critical factor in selecting a vendor.
To my knowledge, none of the Web analytics vendors used by most people blog and social media firms (StatCounter, GetClicky, Google Analytics, Omniture, etc.) freely share response time and error rate metrics of their tag infrastructure with the world as measured by a third party.
Is the tag delivered from a central location, or does the provider use a CDN? Is the data delivered asynchronously or synchronously?
The download performance of the tag is not the only concern. Ask them to provide data on the average processing time that they see when a client parses and processes the code. How does this processing time vary from browser to browser, between OSs? What steps are they taking to ensure that the tag does not affect the perceived performance of your page?
Ask for this data. Ask that the measurement data be collected by an impartial third party. Demand that this data be freely available to you before you make a decision on purchasing their service.

Size of the Tag

All of these services rely on a JS tag to collect and deliver the data to their data warehouse. Ask the provider to tell you how large this tag is, and what steps they have taken to reduce its size so that it has a limited effect on the download of your content.
Have they minified the tag? Is it delivered using HTTP compression to further reduce the size? Are ways to reduce the size of the tag always under considerations?

Data Storage

Analyzing data takes a couple of forms: daily operational views to spot changes or issues; and long-term trending to find larger patterns and major shifts in your visitors. As a result, data needs to be available with a substantial degree of detail while still providing aggregated data that allows larger patterns to be easily discovered.
How long does your provider store detailed data? What is the data expiry policy? Can you extract the data and import it into your own database?


Web analytics is key to determining what works and doesn’t work on your site. It tells who, where and how people are accessing your content. But without a Web analytics partner/vendor that provides performance and support, you may be left more in the cold than if you were just looking at your raw Web logs.

IPV4 and Registrar Data – April 10 2009

From my IPV4 database, here are the the Registrar and Country statistics as of April 10 2009.

Since the last update, ARIN has crossed the 1.6B IPV4 address boundary, adding nearly 5M IPV4 Addresses. APNIC matched this growth by adding an additional 5M new addresses of its own.

Registrar      Number of IPV4 Adresses
---------      -----------------------
arin                    1,600,640,000
ripencc                   564,850,616
apnic                     528,362,496
lacnic                     79,931,136
afrinic                    21,526,272

The majority of the growth in APNIC continues to be driven by China, which added an additional 4M IPV4 addresses since March 14.

Country                                     Number of IPV4 Adresses
------------------------------------------  -----------------------
UNITED STATES                                            1472741888
CHINA                                                     191119104
JAPAN                                                     152412672
EUROPEAN UNION                                            114155680
GERMANY                                                    85174424
CANADA                                                     75846144
KOREA, REPUBLIC OF                                         72142592
UNITED KINGDOM                                             70675288
FRANCE                                                     68370880
AUSTRALIA                                                  36573184
ITALY                                                      32202432
BRAZIL                                                     29754880
TAIWAN, PROVINCE OF CHINA                                  24680704
RUSSIAN FEDERATION                                         24529224
SPAIN                                                      21794976
MEXICO                                                     21504000
NETHERLANDS                                                21290792
SWEDEN                                                     18982304
INDIA                                                      18285568
SOUTH AFRICA                                               14009344
POLAND                                                     13869704
TURKEY                                                     10417600
DENMARK                                                     9281632
FINLAND                                                     8932864
ROMANIA                                                     8640512
SWITZERLAND                                                 8249320
HONG KONG                                                   8206848
NORWAY                                                      7425584
AUSTRIA                                                     7290592
ARGENTINA                                                   7239424
INDONESIA                                                   6997248
VIETNAM                                                     6707456
BELGIUM                                                     6412416
NEW ZEALAND                                                 6115072
CZECH REPUBLIC                                              6040960
UKRAINE                                                     5507904
THAILAND                                                    4743936
CHILE                                                       4731136
PORTUGAL                                                    4473952
SINGAPORE                                                   4410880
COLOMBIA                                                    4261632
IRELAND                                                     4203680
MALAYSIA                                                    4147456
PHILIPPINES                                                 4070656
ISRAEL                                                      3949760
GREECE                                                      3834624
HUNGARY                                                     3716480
VENEZUELA                                                   3693056
BULGARIA                                                    3334912
EGYPT                                                       2731008
SAUDI ARABIA                                                2703616
UNITED ARAB EMIRATES                                        2286848
LITHUANIA                                                   2009216
IRAN, ISLAMIC REPUBLIC OF                                   1894400
PERU                                                        1715968
PAKISTAN                                                    1637632
CROATIA                                                     1623136
SLOVAKIA                                                    1611520
COSTA RICA                                                  1502208
LATVIA                                                      1384448
SLOVENIA                                                    1277952
PANAMA                                                      1130240
MONTENEGRO                                                  1083648
ESTONIA                                                     1021464

As China’s Internet growth continues, the number of addresses assigned to ISPs in that nation will continue to grow. However, it is unlikely that China will equal or exceed the US mainly due to the movement to mobile devices, which will be managed using private IP space rather than public IPs.

Why Chrome 2.0 Dev was Deleted

I deleted Chrome 2.0 from my system on Friday for one very powerful reason: When it is installed, it makes itself the default browser.
Its performance gains and light weight were impressive. But its invasion of my system was uncalled for.
No matter which browser you set to be the default browser, Chrome 2.0 prevents that browser from regaining control. If you click a link in another program, Chrome launches, even if you set MSIE or Firefox or Safari as the default browser.
I thought that kind of behavior was behind browser manufacturers.

The Rise of MSIE 8

In the 10 days since its public release, MSIE8 has made a run up the charts. Courtesy of the great folks at StatCounter and their public analytics data, this growing browser share for MSIE8 can be easily followed.
In the US, prior to its release, MSIE8 RC1 was in sixth position behind even the old battleship Firefox 2.0, but ahead of Chrome 1.0.


In the week following its release, MSIE has quickly surpassed Firefox 2.0 browser share in the US. I am not really sure who these Firefox 2.0 users are, but they and the MSIE6 users must be found and encouraged to immediately upgrade.


The values for the first week don’t tell the entire story. As it enters its second week of general availability, MSIE8 continues to increase its share of the browser market, moving into fourth place in StatCounters US stats, overtaking Safari 3.2.


What does t his mean? While it still has a long way to go before it comes close to approaching even the dinosaur, MSIE6, it has to be said that this growth in MSIE8 browser share has occurred without the use of Windows Update. People are making a conscious decision to switch to and use MSIE8.
Site and application designers will need to take heed – MSIE8 compatibility initiatives will have to be in place yesterday rather than some vague time in the future.

GrabPERF Updates being planned – Hostname Resolution Data

Tonight, I figured out how to add the Resolved IP Addresses for a host to measurement data and store that information for further debugging. It was very simple – I was trying to find complex solutions to this issue.
Turns out the solution is built right into PERL: The Socket module.
My thought is that I will update the table with the test config with three new columns:

  • Hostname
  • Page information

There will likely be a new table that joins with the raw data on

  • Date
  • Agent_id
  • Test_id

And contains a comma-delimited list of all the IP addresses that the agent resolved the hostname to at the test time. This lookup will be run after the measurement, so the DNS lookup component of the measurement is not compromised.
I don’t have an ETA on this, as I want to test it fairly thoroughly before I expose the data. Adding the columns to the test config table will be transparent, but agent modification will need to be verified and then rolled out to all of the folks hosting measurement locations.
What problem does this provide a solution to?
It is vital for firms who use geographic load balancing and CDNs to verify that their data is being served from location appropriate IP addresses. I will be able to tie the information collected here into the IP-Location data I collect for other purposes and help companies ensure that this is being done.

Legitimate DNS Hijacking and You

DNS hijacking is an occurrence that sends fear into the hearts of man and beast. It takes a perfectly harmless (yet critical) process and turns it into a weapon for chaos and mayhem.
This tool, however, does not simply reside in the hands of people looking to maliciously redirect traffic for purposes I can’t quite fathom – I’ll admit, there is still some simple naivete in my Canadian mind.
Legitimate companies, ISPs, service providers also have this tool at their disposal for their own purposes. An useful and accepted version of this exists already in the form of content delivery networks (CDNs) and other third-parties who take a portion of a companies domain name space and use it to deliver distributed edge content and computing, web analytics, or advertising services.
But let’s move this inside the firewall or into the consumer ISP space. These companies provide DNS for millions of customers. As a result, they could easily re-write DNS entries to reflect their own needs rather than those of the consumer.
In the case of corporate IT networks, there is not much that can be done – they own the wire, hardware and software being used, so they will claim it’s part of the corporate IT policy that all employees sign and that will be that.
Consumers, on the other hand, should expect free and unencumbered access to the worldwide DNS network, without being intercepted or redirected by their own ISPs. And there is frankly no way to verify that this is not happening unless you run your own caching BIND server on your home network.
The alternate is to use one of the external third-party services (OpenDNS or DNS Advantage). But these services also provide Phishing and Filtering services, which means that they can easily modify and redirect an incoming request using the most basic and critical service on the Internet.
While this may sound like the rant of a paranoid, it is a concept that has practical consequences. As an organization, how do you know that you aren’t on the DNS filter list of these providers, or the ISPs? If they can filter and redirect DNS requests, what else are they doing with the information? Are they providing open and trusted access to the core DNS services of the Internet?
Stepping back as far as you can into the process of going to your favorite pages, you will find that you can’t get there without DNS. And if DNS can no longer be trusted, even from legitimate providers, the entire basis of the Internet dissolves.

GrabPERF Agent Update – DNS

This afternoon, the two GrabPERF Agents at Technorati were switched back to using their local copies of caching BIND for resolving DNS entries.
Some folks at Microsoft who stopped by to look at their results on the Search Performance Index noticed that there were one or two outliers in the results from these locations. When I investigated, the OpenDNS name servers I was using were returning odd results.
The reason I had been using OpenDNS is that the local BIND instances were seeing unusual behavior a few months back. So, consider the switch to the local BIND instances probational, pending ongoing review.
Thanks to Eric Schurman for letting me know.

Copyright © 2022 Performance Zen

Theme by Anders NorenUp ↑