
Commonality of hardware is what your going for, and to try
and use software to make up for it results in more work for you/the admin.
Having a base hardware profile for your "workstations" is important , and if you can have hardware commonality between your workstations, and servers, all the better. Your generic pc's can be whatever...
If your pushing your work stations hard, your on a 2 year (or less) upgrade cycle, so unless you overplan, and building expandability, your gonna be spending an average of 2-5k per upgrade cycle, per machine.
As a straw man (since these are my keystrokes), I would pick a server/ws vendor who had the fewest common SKUs for their machines. My fav so far is introtrend/uniwide. They have this clever little daughterboard that sits ontop of the main board that allows an additional 2 CPU sockets, and an additional 16 dimms to be added. You can run the 4 CPU boxes in a 2 cpu mode, with a little bit of fiddling. The advantage is that you can get a bunch of 2x core 8000 opterons cheep of of ebay, and then as the users wine for more power (a year down the road), swap them out for 4x core, or double them up, placeing 4x CPU in each box. Because this is running one generation behind, your gonna save some coin. You get 2 16x slots, that can fit double wide vid cards, not to shabby.
You stock the same spares for your work station, as your servers. If you have to run win7 , then you can only use 2 physical CPU's, (but all 32 memory slots), or of you install 2007r2 you can hit all 4.
Vid cards are another matter, if you have "performance issues" , then your gonna have to get set to play musical drivers, its a fact of life. You can limit the family and supported chipsets (nvidia) for the ones you buy, but only if you get the backing of the people who hold the purse strings.
If you explain to $ holders, that you can save the cost of 3 or 4 computer purchases over the equipment lifetime, and that the upgrades will be "low cost", just getting additional memory and CPU, vs a whole new machine.
You can also let them know that you can keep one spare motherboard around, and fix your servers, or a workstation.
I happen to have 5 of these boxes (the 940 sockets) at home, and should be setting up a few more as they get retired from datacenters, Photoshop rocks with 60gb of memory.
In one place that followed this plan, these machines are in front line use, after 5 years. They started off as 2x cpu's, went to 4x cpu's, the vid cards got SLIsed, than put into slower boxes as better vid cards came out, and then into the servers.
You can do this with any high end bit of kit, just set standards, and follow them, high end server and workstation boards tend to have a multiyear life, the mid end commodity pc's tend to last a year before they fade away . The Tyan n6650W was out in 2008, and should be around for a few more years.
http://www.overclock.net/amd-build-logs/357378-dual-quad-opty-sli-build-tyan.html
If you are unable to set standards and follow them, your kinda screwed anyway.
" the most easy-to-use network analy" ?
Crappy throughput?
Dingle berry token ring?
Network protocol H?
If your just looking for longer run time, you can take a look
into larger battery packs.
If your into doing things cheap, use a surplus APC 3000 chassis in the
manner as i've done at home. 4x 120ah 12v batteries, or for longer run times
8 6v golf cart batteries. Each setup is good to run 15 amps for a while.
So for less than 1k installed , NEXT to the machine room, not in it
(unless you want to pay for cooling things that are fine at 80 deg f)
you have lots of low cost power, just replace the battery every few years.
Test by running the system down to %80, then kicking in a gen set and
charging to %100, then switch over to "normal" power. Monthly.
If you include a 30 amp (continuous) rated gen set per UPS you should be
able to extend your run time. Your gen set should put out the maximum that
your UPS can, and what it takes to charge your batteries, plus about
%35 for overhead, safety and longevity.
A good way to size the UPS is to use the name plate amperage to limit the
machines that connect to it. Its an easy way to convince nontechnical people,
to give you the headroom you want.
Or you can do what I recommend large data centers do, buy used gen sets in bulk,
and have 2N for what you think you should have...
I like going to the ship breakers and getting the 60hz sets (or 50hz
convertible to 60) from them. Depending on the stock levels, you
can get quite a nice price on a few in bulk, then have them refurbished
to Lloyd of London specs (or better), and shipped.
At 2N, who cares if you drop a few a year, you can power your
whole campus during an outage, or peak shave and reduce your
power bill. It might even be cost effective to get more, than to rebuild.
Be careful what you order, and how its done, you could end up with a
bunch of miss matched parts, (no common spares) or the wrong thing,
or to big of a gen set... http://www.youtube.com/watch?v=D24EMlA8Bzc
when you wanted this http://www.youtube.com/watch?v=KYKoaS7bEuI&feature=related
oohh look, my fav , and its ebay... http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=180459158144&rvr_id=&crlp=1_263602_263622&UA=WVF%3F&GUID=022207c11230a040b1c48554ffdfcdaf&itemid=180459158144&ff4=263602_263622
look its a 6 pack of used gen sets... air start, and natural gas.
http://www.youtube.com/watch?v=EQwaVwj8I7w&feature=related
or if you can find one of these, (or kludge something like this together)
http://www.pickuptrucks.com/html/news/ram_contractor.html
you can drive your gen set to work.
There's plenty of real science being done, but it's being done by a bunch of rubes who assumed that all their initial data could be trusted since it came from government sponsored agencies.
"only 2.4 MB in size."?
640K should be enough for anybody!
You haven't mentioned what your contractor has done to limit your exposure in this case, have they offered free credit monitoring to those affected?
If so, that would make things "a little less wrong": in my eyes.
Here is a situation report that would make such an event "more right" to me
time = ungodly early hour of the morning (ie 7am)
ring RING ring
ME: oighewhhnweeruhhhhhhhhuuummmmm....
THEM: Sorry to wake you , we had a break in last night at one of our employees homes while they were away at a movie, and they took all the valuables in the home, including your data.
ME: What have you done about it, what are you doing about it, what are you going to do?
THEM: The data was mounted on an encrypted o/s , and our person still have the encryption key around his neck, so that part is secure, your data was mounted on a software raid0 put across 4 usb drives that were encrypted with a different key (also safe) , not only was the database encrypted, but all non public data (like id numbers, ss numbers) was further encoded/encrypted.
The lowjack on the laptop started reporting once it was removed from the firesafe it was stored in, and our goon squad captured the thief, and he quickly invited his companions over. We have recovered most of the physical equipment, and are continuing to dismember the miscreants to ensure that they are nothing more than teenage hoodlums.
ME: Do I know any of them, are any linked to my company in any way?
THEM: We believe that this was a targeted crime on this house, and its marketable contents, not at your data or your project. They do not know who you, or what your project is.
ME: Anything else?
THEM: We will offer a full 2 years of active credit fraud monitoring to all affected persons, and will reimburse anyone for all reasonable expenses, such as new checks, or fraudulent activity.
ME: Sounds like its all taken care of, I will want a full report by the end of day.
THEM: No problem.
If they hit all the points above, then they go to the "preferred vendor list", because they can handle problems that crop up, and I know my stuff is safe with them. Anything less, and I start taking points away.
If they haven't done diddlily , ill sue them to provide notification and credit monitoring for those affected.
the savings that you are talking about are so small, compared to the bandwidth we have today,it is beyond silly to look for savings compressing the http header.
If everyone had a 300 baud modem (0.3 kbit/s http://www.youtube.com/watch?v=X9dpXHnJXaE&eur ), THEN I could see doing something like this, but this is not 1964, the unused bandwidth in our connections is massive compared to the "savings" of such a scheme.
please get a packet sniffer, such as wireshark, or a local HTTP proxy (charles or fiddler) this will allow you to understand the larger picture. once you see how insignificant the HTTP headers are, in the total transmission of data, let alone compared to the size of most broadband pipes out there, it is not even close.
the traffic on the Internet was constructed so that people could read and debug the output using the simplest of tools, and require a little bit of knowledge, and not a bunch of "stuff" between the person trying to figure out what is not working, and the data. Take a look at how microsoft stores email, and how thunderbird does. When the mail spool gets out of sync, guess the one ya can open with a text editor and fix. Guess the one that gives you a "tool" to try and automagicily fix most of the common errors, that sometimes "mostly works".
there is a old school fortune message that should help you out...
http://buffy.sighup.org.uk/hfiles/aalg.html
A famous Lisp Hacker noticed an Undergraduate sitting in front of a
Xerox 1108, trying to edit a complex Klone network via a browser.
Wanting to help, the Hacker clicked one of the nodes in the network
with the mouse, and asked "what do you see?" Very earnestly, the
Undergraduate replied "I see a cursor." The Hacker then quickly
pressed the boot toggle at the back of the keyboard, while
simultaneously hitting the Undergraduate over the head with a thick
Interlisp Manual. The Undergraduate was then Enlightened.
( http://www.canonical.org/~kragen/tao-of-programming.html )
until the above koan is understood, lets try something more tangible, how about we see what is happening with some of the traffic. lets assume 160 bytes (payload) per packet , 1 char per byte (for the sake of the non technical people following along), and look at what is happening (space wise).
the http header that you give in your example contains 247 characters,
spanning 2 packets. The second packet follows about 2ms (high average)
after the first, so this saves you 1 packet per request, and 2ms
per http header request, for a grand total of 28ms and 14 packets.
your web page infinity-infinity.com/2009/06/making-the-internet-faster-in-5-minutes/
has 14 http header requests, (results in BYTES ).
GET http://infinity-infinity.com/2009/06/making-the-internet-faster-in-5-minutes/
Request Count: 1
Bytes Sent: 545
Bytes Received: 10,869
Requests started at: 21:15:48:3700
Responses completed at: 21:15:50:7720
Aggregate Session time: 00:00:02:4020
Sequence (clock) time: 00:00:02.4020000
TCP/IP Connect time: 452ms
RESPONSE BYTES (by Content-Type)
~headers: 328
text/html: 10,541
GET http://infinity-infinity.com/wp-content/plugins/sociable/sociable.css
Request Count: 1
Bytes Sent: 451
Bytes Received: 1,145
Requests started at: 21:15:50:8640
Responses completed at: 21:15:51:1610
Aggregate Session time: 00:00:00:2970
Sequence (clock) time: 00:00:00.2970000
RESPONSE BYTES (by Content-Type)
~headers: 293
text/css: 852
GET http://infinity-infinity.com/wp-content/themes/fancy/style.css
Request Count: 1
Bytes Sent: 444
Bytes Received: 22,123
Requests started at: 21:15:50:8840
Responses completed at: 21:15:56:2780
Aggregate Session time: 00:00:05:3940
Sequence (clock) time: 00:00:05.3940000
TCP/IP Connect time: 156ms
RESPONSE BYTES (by Content-Type)
~headers: 297
text/css: 21,826
GET http://infinity-infinity.com/logo.png
Request Count: 1
Bytes Sent: 419
Bytes Received: 1,051
Requests started at: 21:15:51:3650
Responses completed at: 21:15:55:7770
Aggregate Session time: 00:00:04:4120
Sequence (clock) time: 00:00:04.4120000
TCP/IP Connect time: 3,136ms
RESPONSE BYTES (by Content-Type)
~headers: 277
image/png: 774
GET http://infinity-infinity.com/wp-content/themes/fancy/img/banner.gif
Request Count: 1
Bytes Sent: 449
Bytes Received: 46,634
Requests started at: 21:15:51:6340
Responses completed at: 21:16:09:3600
Aggregate Session time: 00:00:17:7260
Sequence (clock) time: 00:00:17.7260000
RESPONSE BYTES (by Content-Type)
image/gif: 46,355
~headers: 279
GET http://pagead2.googlesyndication.com/pagead/show_ads.js
Request Count: 1
Bytes Sent: 437
Bytes Received: 408
GET http://infinity-infinity.com/wp-content/themes/fancy/img/feed-green.gif
Request Count: 1
Bytes Sent: 453
Bytes Received: 1,178
Requests started at: 21:15:52:3720
Responses completed at: 21:15:59:6340
Aggregate Session time: 00:00:07:2620
Sequence (clock) time: 00:00:07.2620000
TCP/IP Connect time: 3,105ms
RESPONSE BYTES (by Content-Type)
image/gif: 901
~headers: 277
GET http://infinity-infinity.com/wp-content/themes/fancy/img/scissors-green.gif
Request Count: 1
Bytes Sent: 457
Bytes Received: 621
Requests started at: 21:15:51:1710
Responses completed at: 21:15:51:3510
Aggregate Session time: 00:00:00:1800
Sequence (clock) time: 00:00:00.1800000
RESPONSE BYTES (by Content-Type)
image/gif: 345
~headers: 276
GET http://infinity-infinity.com/wp-content/plugins/wp-syntax/wp-syntax.css
Request Count: 1
Bytes Sent: 453
Bytes Received: 1,028
Requests started at: 21:15:51:3610
Responses completed at: 21:15:51:5340
Aggregate Session time: 00:00:00:1730
Sequence (clock) time: 00:00:00.1730000
RESPONSE BYTES (by Content-Type)
~headers: 293
text/css: 735
GET http://infinity-infinity.com/wp-content/themes/fancy/img/bg/bg.gif
Request Count: 1
Bytes Sent: 448
Bytes Received: 341
Requests started at: 21:15:56:3280
Responses completed at: 21:15:56:4350
Aggregate Session time: 00:00:00:1070
Sequence (clock) time: 00:00:00.1070000
RESPONSE BYTES (by Content-Type)
image/gif: 67
~headers: 274
GET http://infinity-infinity.com/wp-content/themes/fancy/img/sep.gif
Request Count: 1
Bytes Sent: 446
Bytes Received: 320
Requests started at: 21:15:56:4080
Responses completed at: 21:15:57:4970
Aggregate Session time: 00:00:01:0890
Sequence (clock) time: 00:00:01.0890000
TCP/IP Connect time: 109ms
RESPONSE BYTES (by Content-Type)
image/gif: 45
~headers: 275
GET http://infinity-infinity.com/wp-content/themes/fancy/img/sep-green.gif
Request Count: 1
Bytes Sent: 452
Bytes Received: 320
Requests started at: 21:15:56:4160
Responses completed at: 21:15:57:2150
Aggregate Session time: 00:00:00:7990
Sequence (clock) time: 00:00:00.7990000
TCP/IP Connect time: 110ms
RESPONSE BYTES (by Content-Type)
image/gif: 45
~headers: 275
GET http://infinity-infinity.com/wp-content/themes/fancy/img/clock.gif
Request Count: 1
Bytes Sent: 448
Bytes Received: 883
Requests started at: 21:15:56:4450
Responses completed at: 21:15:56:6310
Aggregate Session time: 00:00:00:1860
Sequence (clock) time: 00:00:00.1860000
RESPONSE BYTES (by Content-Type)
image/gif: 607
~headers: 276
GET http://infinity-infinity.com/wp-content/themes/fancy/img/person.gif
Request Count: 1
Bytes Sent: 449
Bytes Received: 1,280
Requests started at: 21:15:56:6410
Responses completed at: 21:15:56:8880
Aggregate Session time: 00:00:00:2470
Sequence (clock) time: 00:00:00.2470000
RESPONSE BYTES (by Content-Type)
image/gif: 1,003
~headers: 277
GET http://infinity-infinity.com/wp-content/themes/fancy/img/folder.gif
Request Count: 1
Bytes Sent: 449
Bytes Received: 1,246
Requests started at: 21:15:56:8980
Responses completed at: 21:16:00:2590
Aggregate Session time: 00:00:03:3610
Sequence (clock) time: 00:00:03.3610000
RESPONSE BYTES (by Content-Type)
image/gif: 970
~headers: 276
the only thing (from your web sever) that gets loaded when people hit a different article is the main page (and new graphics/elements). all the other previously used subsets (css,gifs, etc) get loaded from cache, so for each "new" viewing you only save 1 packet, unless the minimum time has expired (4 hrs) and the browser hits the web server with a header request.
if you run tidy on your HTML, you will save a bunch of space,
even if you run gzip compression...
tracking-visitors-mouse-movements/
old 25850 post tidy 25059
10-php-functions-you-probably-never-use/
old 51688 post tidy 49805
will-google-chrome-os-be-a-webos/
old 28392 post tidy 27595
you get the picture, if you open your
This is a great example of the fluff that can be removed.
Theme Name: Fancy
Theme URI: http://www.azmoney.co.uk/wordpress-themes/fancy
Description: "Fancy" is a free WordPress theme which really lets your blog stand out from the crowd. Make your blog unique by changing the main blog color (pink, yellow, green), background pattern (available over 20 background variations), banner etc through an options page. In addition you have the ability to choose the color of sidebar blocks (violet, yellow, green). Tech folks might find interesting that we built this theme based on css framework "Blueprint". Valid CSS & HTML. Designed by a href= h tp: www.azmoney.co.uk AZ Money a Web Design.
(blah blah blah, you get the point)
don't ask on slashdot.
Ok, so you get all the browsers and web servers to change the
way to do things, overnight and by magic, %100 compliance.
You don't make "the Internet faster" because HTTP headers make
up WAY less than %0.01 of the Internet traffic as a whole. If you
want to "make web pages display to the user faster" (there is
more to the Internet than port 80, 81, 443, 3128, 8000, and 8080)
make stupid graphics more cache friendly , place more/better
caches in an ISP's infrastructure, eliminate dynamically
generated static content, and have browsers support
SRV (RFC 2782 http://www.faqs.org/rfcs/rfc2782.html ) .
You also break packet sniffers,proxies, filter rules, and heaps of
other things that count on things that follow RFC standards.
Oh wait, I forgot about magic bit... my bad...
SRV record support would give you a MUCH better web page
viewing experience than rewriting a whole protocol. Its only
been about 10 years since SRV was thought up, and its more
doable than having a one letter substitution on standard replies.
If you point is to reduce number of packets sent across the
net why not put a 4 alpha/num code (a-z A-Z 0-9)for all the tags, that
will give you over 1,300,000 "tags" vs verbose stuff like
__ DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "blah://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.duh
that saves boatloads of space right there. WAY more than the
HTTP headers take up, and since the main HTML page crosses
packet boundaries, you will be reducing the packets transmitted
across the Internet. Those space savings WILL (mostly) cross the
packet boundaries, unlike the HTTP header.
While I applaud your desire to "make the Internet faster" please be
clear that web servers are a small subset of the total Internet traffic,
and HTTP headers are a MUCH smaller bit than that.
Lets travel back in time, pre torrent, around 10 years ago, when the
HTTP was the "biggest clog in the tubes", it made up around %70-%75
of the traffic as a whole.
http://www.isoc.org/inet98/proceedings/6g/6g_3.htm
Your talking about shaving 1 packet off of EACH transaction
AT THE MOST. Each "normal" packet ranges in size from
a few hundred bytes, to 1500, anything in that range is one packet.
Your scheme only "saves packets" when multiple packets are sent
out in the HTTP response, AND when your "savings" crosses
the packet boundary, a rare case.
The web page that you wrote
http://infinity-infinity.com/2009/06/making-the-internet-faster-in-5-minutes/
is over 100k, smaller than the average web page,
http://interface.missouri.edu/2008/05/average-web-page-size-triples.php
and at MOST you are talking about getting a 1k reduction in web
traffic.
If you bothered to run a simple HTML cleaner (tidy) on the web page,
http://infinity-infinity.com/2009/06/making-the-internet-faster-in-5-minutes/
you would save over 7,000 characters , over 10x more than
if everybody adopted your new and magical standard.
Lets take a look at a well written compact web page, www.lois.org ,
it is under 6,000 bytes, yours is over 140,000 bytes. Your raw
HTML is sloppy and verbose. I find it disparaging that, if you
cleaned up your own web pages you would save more packets
than if "every one did things my new and improved way".
I think it would be most ironic if you scrunched up your output,
and then added all the compliance thumbnails, making the result
larger than the uncleaned original.
Gosh that takes me back... or is it forward? That's the trouble with time travel, you never can tell." -- Doctor Who, "Androids of Tara"