Part III
Hardware
The first consideration to take is about what hardware you need. My immediate recommendation is to go with a computer supplier with the best track record. Choosing a supplier comes down to quality of product, support they give, and the prices they offer. It is a fact that Dell Computers is the most popular and best selling computer manufacturer in the world. They grew from Michael Dell selling PC's in his garage to being an international computer manufacturer. They grew by listening to companies. When other manufacturers were just churning out fast PC's with cheap prices, Dell differed by offering 24 hour computer support that far exceed anyone else in the business. Their website also was one of the first who allowed the customization of a PC.
Today, they supply many large companies as well as individuals. When buying a server, they will throw in 24 hour customer service as well as a 3 year warranty on parts. If something goes wrong with a computer, a simple call will alleviate most problems.
For the amount of processing that needs done which is minimal compared to larger sites, my recommendation is the base system PowerEdge Server.
The minimum processor is a Xeon Processor with 2.4 Ghz of processing power with a 533Mhz/512K Front Side Bus. This is more than enough for the amount of data processing.
Dell allows for no operating system to be installed on the system which we will later install Linux on. A gigabit network connection will be included in the computer which is helpful for fast transfer of data within WSWT's organization. As per our conversations, twenty percent of the traffic will be coming internally. 256MB of RAM is more than plenty for running Linux as well as Apache. A 36 GB hard drive should provide plenty of space for all users as long as quotas are set for users.
It is very important that the server should be accessible 24 hours a day. The configured computer will have a RAID drive which are redundant hard drives so in case one drive goes down, the other will kick in. In addition, an internal tape drive will be included with 5 tapes. If the RAID drives fail or if a user accidentally erases a file, the administrator will be able to restore the file(s) from a backup. It is also wise to consider power. Since we are not producing are own power and have to rely on another company to supply electricity, it is not guaranteed to be on 100% of the time. Fires, storms, faulty wiring in a building are just a number of things that go wrong and cut power off to the server. A good recommendation would be to get an Uninterruptible Power Supply or UPS connected to the server. Dell offers this as an option that I would recommend. In addition, a redundant power supply in the computer would also be prudent just in case one fails.
These are the detail of the order from DELL:
Competition
The next most competitive company would be HP-Compaq which is another massive computer manufacturer. A similar system is as follows:
This would cost around $1500 US dollars and unfortunately doesn't include dual power supplies or a UPS. If you add on the costs of buying that separately, it will cost you another $1200 dollars which would bring the total to around $3,200 AUD.
Buying locally is always an option but would strongly recommend against it. Local companies and smaller companies tend to come and go. Even if they still stay in business, what is their level of support? To avoid worries a final recommendation would be to go with Dell.
Internet Connection
Picking a connection to the Internet comes down to basic principles in marked priority. Speed is obviously an important factor as too slow of a link would discourage if not reject users from using the site. A fast connection is no good unless you are sure the company that is providing it can keep the connection up. If a connection should go down,a knowledgeable and well informed customer support team is there to help you. Lastly, $200 dollar was the price ceiling for an internet connection. This is a good level for the connection that you require and there is much competition for supplying internet access for businesses.
We have discussed with you on a number of occasions how many people you believe to be accessing the site on a daily basis. You expect 100's of users a day to utilize your web server. You also declare that you will be serving static pages (html), images, and dynamic pages (php). We estimate the file size of a typical html page to be 10KB, an average image 60KB and a dynamic page to be 200KB. Thus, these numbers get plugged into the following equation:
Class throughput = total requests(per hour) x class percentage x average size
observation period
Static Pages 313 x .5 x (10,000 x 8)/3600=3.47Kbps Images 313 x .3 x (60,000 x 8)/3600=12.252Kbps Dynamic Pages 313 x .2 x (200,000 x 8)/3600=27.8Kbps Total= 43.522Kbps
Total requests= # of users multiplied by the amount of pages they will request (hourly)
If we assume that daily 500 users access the site and request and average of 15 pages each, that will total 7500 requests every day.
Divide 7500, by 24 to get the hourly access rate which is 313.
We can also assume that 50% of the requests will be for static pages, 30% for images, and 20% for dynamic pages.
24 hours divided by 3 is 8 hours. Multiplying each file size by 8 will give us the average size.
3,600 is the observation period which gives us a per second look at the speed needed.
When all the numbers are added up, the estimated speed needed is 43.522Kbps.
An ADSL connection through a company called Internode, gives us 256Kbps download and 64Kbps upload. The uploading speed is the only important ones as we will be "uploading pages" to clients. 64Kbps gives us about 20Kbps in wriggle room just in case usage surges. Web traffic can surge 68% to be fully operational. But there are many downfalls to limiting ourselves to a 64Kbps connection.
Disadvantages-
Firstly, 64Kbps is a theoretical maximum that the DSL line can reach thus speeds may be lower.
DSL runs over copper wires thus its entire infrastructure is in Telstra's hands. This could changed speeds and make the line inaccessible at times if Telstra needs to make repairs or the network is congested.
During finals or any other time that requires more users than normal to the website, traffic can be significantly higher. The maximum amount of theoretical users the site can serve is about 840 users per day or 12600 requests per day. This may not be enough and a solid recommendation is to have 1000% of the estimated speed needed which would be 435.22Kbps.
So a better recommendation is to have a link that can serve requests at a minimum of 435.22Kbps. Internode also offers a plan that can accommodate this. Their plan "SDSL-512-Bronze" is $165 dollars a month with a $149 dollar set up fee. This link offers 512Kbps upload speeds.
Other companies with 512K/512K DSL, Unlimited uploads connections:
@Tech : $160/month, $99/setup, Not as big as Internode, less customer support
TPG: $150/month, $129/setup, Very big company, very comparable to Internode.
Other companies offering at least 512K upload:
CABLE: Telstra Bigpond Cable: Great speeds but speed is dependent on how many other people are near you using cable internet. Expensive setup $300. Not unlimited uploads.
WIRELESS: Alphalink Wireless: Great speeds but expensive setup and no unlimited downloads
T1: Telstra: Very stable connection, Very expensive 1.54Mbps (overkill)
SATELLITE: Ihug: Data limit, expensive.
-Advantages
This is the most cost effective way to provide a data link to the internet for the speed that is required.
Customer support for this company is highly rated and is available 24 hours a day.
Source: Whirlpool
SSISSI stands for Server Side Includes. From the Apache website : "
SSI (Server Side Includes) are directives that are placed in HTML pages, and evaluated on the server while the pages are being served. They let you add dynamically generated content to an existing HTML page, without having to serve the entire page via a CGI program, or other dynamic technology."You can see an example of a server side include with the following page on the server:
http://www2.wswt.net:58730/home.shtml
This pages displays when the page was last modified and the current date. This data is pulled off the server.
The code to display the "Last Modified Date" is <!--echo var="LAST_MODIFIED"-->.
The code to display the "Current Date" is <!--echo var="DATE_LOCAL"-->.
You can also include another page within a page. This is done by utilizing <!--#include virtual="navbar.html" -->.
In order, to get SSI to work, you must save the files with the extension .shtml.
In our previous report, we spoke about access logs. Looking at a log with hundreds of thousands of entries is not efficient for anyone. Included in the server software is a program called "Webalizer". It takes the access logs as input and outputs a webpage showing graphical statistics of the website.
The top graph shows a monthly view of access rates to the student2.wswt.net:58730 website.
Hits is the amount of requests that are received by the server.
Files represent the amount of requests were a file was actually served backed to the client.
Sites is the amount of different users who accessed the site. This is assessed by looking at the unique ip address of the user.
Visits is when a remote site requests a file from the server for the first time.
Pages are all files with html, html, or cgi that are served.
The Kbytes stands for kilobytes and shows how much data was transferred.
To access the web reports for the server, go to the following link. Username: Microsoft PW: Windows
User Tracking
User tracking is a very useful tool that many sites employ. Most famously, Amazon.com, an online shopping megastore, tracks exactly where every user surfs to upon their site. The site can then recommend products based on surfing patterns. User tracking is switched on for the student2.wswt.net:58730 site.
To enable usertracking, the apache server had to be reinstalled.
The following configure command will add the user tracking module to the Apache server:
./configure --prefix=/students/username/apache3 --with-port=yourport --enable-so --enable-usertrack --enable-userdir --enable-usertrack --enable-include --enable-cgi--enable-expires --with-mpm=worker
Once apache is installed the following lines were added to the httpd.conf file in the student2.wswt.net Virtual Host container:
CookieTracking on
CustomLog /students/nmoreton/apache3/logs/clickstream "%{cookie}n %r %t"
"Cookie Tracking on" simply switches the usertrack or cookietrack on.
CustomLog creates a log named clickstream that records info about where each individual user surfed to on the site.
"%{cookie}n %r %t" writes the contents of the cookie, the first line of the request, and the time.
The following is the start page of Amazon.com personalized for me.

Amazon using cookie tracking has figured out that I tend to look at programming books and enjoy action movies such as Terminator 3. This may be a very useful feature for wswt.net to help students and teachers find information that might be pertainable to them.
Per-User DirectoriesWhen reinstalling Apache, the following will add the userdir module to the installation:
"./configure --prefix=/students/username/apache3 --with-port=yourport --enable-so --enable-usertrack --enable-userdir --enable-usertrack --enable-include --enable-cgi--enable-expires --with-mpm=worker
The following was then added to the httpd.conf file under the "Student" virtual host, directory directive:
UserDir /students/nmoreton/apache3/student/
UserDir disabled
UserDir enabled bob bill betty benSo for bob, when you go to http://student2.wswt.net:58730/~bob/
it will display bob's index.html page. Un: Bob Pw:Nob
Directory Content and Custom MessagesDirectory content is disabled. There is a custom message that will be displayed if a forbidden page is accessed.
Website Performance
Ab is a tool for testing the website performance of a server. It picks a static file and serves it simulating many requests to a server. Typing "/ab -n 100 -c 100 http://www2.wswt.net:58730/"at the prompt on the webserver will produce the following:
| 10:52pm [/students/nmoreton/apache3/bin] :>./ab -n
100 -c 100 http://www2.wswt.net:58730/ This is ApacheBench, Version 2.0.40-dev <$Revision: 1.121.2.4 $> apache-2.0 Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/ Benchmarking www2.wswt.net (be patient).....done Server Software: Apache/2.0.48 Server Hostname: www2.wswt.net Server Port: -6806 Document Path: / Document Length: 239 bytes Concurrency Level: 100 Time taken for tests: 1.350274 seconds Complete requests: 100 Failed requests: 0 Write errors: 0 Total transferred: 51600 bytes HTML transferred: 23900 bytes Requests per second: 74.06 [#/sec] (mean) Time per request: 1350.274 [ms] (mean) Time per request: 13.503 [ms] (mean, across all concurrent requests) Transfer rate: 37.03 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 5 7.7 1 45 Processing: 572 684 141.0 584 1021 Waiting: 64 514 153.5 557 775 Total: 572 689 145.9 592 1032 Percentage of the requests served within a certain time (ms) 50% 592 66% 733 75% 776 80% 791 90% 960 95% 1012 98% 1029 99% 1032 100% 1032 (longest request) |
Lets break down the command to run ab. ./ab -n 100 -c 100 http://www2.wswt.net:58730/
./ab ---starts the program
-n 100 ---number of requests to send, 100 requests
-c 100 ---number of multiple requests to send, 100 multiple requests
http://www2.wswt.net:58730/ ---The website we are going to test
Lets break down the results.
running the test--Benchmarking www2.wswt.net (be patient).....done
Server Software: Apache/2.0.48
Server Hostname: www2.wswt.net
Server Port: -6806
Document Path: /
The size of the static document that is being tested----Document Length: 239 bytes
Concurrency Level: 100
Time taken for tests: 1.350274 seconds
Complete requests: 100
Failed requests: 0
Write errors: 0
Total transferred: 51600 bytes
HTML transferred: 23900 bytes
Requests per second: 74.06 [#/sec] (mean)
Time per request: 1350.274 [ms] (mean)
Time per request: 13.503 [ms] (mean, across all concurrent requests)
Transfer rate: 37.03 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 5 7.7 1 45
Processing: 572 684 141.0 584 1021
Waiting: 64 514 153.5 557 775
Total: 572 689 145.9 592 1032
Percentage of the requests served within a certain time (ms)
50% 592
66% 733
75% 776
80% 791
90% 960
95% 1012
98% 1029
99% 1032
100% 1032 (longest request)Speeding up server
This means that half of the requests were served in about half a second. The longest request was a little longer than a second.
To speed up the server, a few things can be done with changing the following configurations.
HostnameLookups Off ---This lookups the ipaddresses that are logged in the logs instead of recording just an ipaddress
LogLevel emerg ---This will write a lot less to the logs.
Registration Information
To lookup the detail of the registration of the wswt.net domain name you can do the following:
On the webserver, type: whois wswt.net
which will bring up the following:
| 7:35pm [/students/nmoreton/apache3/student]
:>whois wswt.net Whois Server Version 1.3 Domain names in the .com and .net domains can now be registered with many different competing registrars. Go to http://www.internic.net for detailed information. Domain Name: WSWT.NET Registrar: PRIMUS TELCO PTY LTD DBA PRIMUSDOMAIN/PLANETDOMAIN Whois Server: whois.planetdomain.com Referral URL: http://www.planetdomain.com Name Server: NS1.CS.RMIT.EDU.AU Name Server: NS2.CS.RMIT.EDU.AU Status: ACTIVE Updated Date: 18-mar-2004 Creation Date: 25-jan-2004 Expiration Date: 25-jan-2005 >>> Last update of whois database: Sat, 29 May 2004 20:03:40 EDT <<< NOTICE: The expiration date displayed in this record is the date the registrar's sponsorship of the domain name registration in the registry is currently set to expire. This date does not necessarily reflect the expiration date of the domain name registrant's agreement with the sponsoring registrar. Users may consult the sponsoring registrar's Whois database to view the registrar's reported date of expiration for this registration. TERMS OF USE: You are not authorized to access or query our Whois database through the use of electronic processes that are high-volume and automated except as reasonably necessary to register domain names or modify existing registrations; the Data in VeriSign Global Registry Services' ("VeriSign") Whois database is provided by VeriSign for information purposes only, and to assist persons in obtaining information about or related to a domain name registration record. VeriSign does not guarantee its accuracy. By submitting a Whois query, you agree to abide by the following terms of use: You agree that you may use this Data only for lawful purposes and that under no circumstances will you use this Data to: (1) allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations via e-mail, telephone, or facsimile; or (2) enable high volume, automated, electronic processes that apply to VeriSign (or its computer systems). The compilation, repackaging, dissemination or other use of this Data is expressly prohibited without the prior written consent of VeriSign. You agree not to use electronic processes that are automated and high-volume to access or query the Whois database except as reasonably necessary to register domain names or modify existing registrations. VeriSign reserves the right to restrict your access to the Whois database in its sole discretion to ensure operational stability. VeriSign may restrict or terminate your access to the Whois database for failure to abide by these terms of use. VeriSign reserves the right to modify these terms at any time. The Registry database contains ONLY .COM, .NET, .EDU domains and Registrars. |
Alternatively, you can open a web browser and go to any website that displays whois information. In, other words if you go to a search engine such as Google (www.google.com) or Yahoo! (www.yahoo.com) and search for whois, it will bring you results of hundreds of sites that can display information. If you go to networksolutions whois, which is the biggest domain registrar, you can see whois information.

Many websites, now make you type in a phrase that is displayed in a picture. This is to prevent computers from tapping into NetworkSolutions WHOIS server. So if I had a site called Neil'sWhoIs and there wasn't a graphical verification system, I could create a page that can grab the information off Network Solutions computer rather than setting up my own WHOIS server.

After verification of the graphic, the following is displayed:
Domain Name: WSWT.NET
Created on............: Jan 26, 2004 12:00:00 AM
Expires on............: Jan 25, 2005 12:00:00 AM
Record last updated on: Jan 26, 2004 12:00:00 AM
Status................: ACTIVE
Owner, Administrative Contact, Technical Contact, Billing Contact:
RMIT
Donal Ellis (ID00028203)
376-392 Swanston Street
Melbourne, Victoria 3001
Australia
Phone: +61.399259584
Email: dellis@cs.rmit.edu.au
Domain servers in listed order:
NS1.CS.RMIT.EDU.AU
NS2.CS.RMIT.EDU.AU
The previous information has been obtained either directly from the
registrant or a registrar of the domain name other than Network Solutions.
Network Solutions, therefore, does not guarantee its accuracy or completeness.
Thank you and we hope that you will approve of our recommendations.
-NeilMoreton Consultants