hit counter code
Showing posts with label storage. Show all posts
Showing posts with label storage. Show all posts

Sunday, March 21, 2010

Internet, wireless, network, and hard drive speeds

I recently upgraded my old wireless G router to a new wireless N. My new laptop will support the higher speeds. I also realized that my Windows Home Server (WHS) box has gigabit Ethernet on it, as does the new laptop. What does all of this mean? Well, it means with a slight upgrade in equipment and cables I can get a much faster speed when transferring files between machines. But just how does all this speed stack up and what are the different speeds? Should I upgrade? Is the speed increase worth it?

First, let's start with your incoming broadband Internet connection. Most connections through DSL or Cable range anywhere from 1 Mb/s (Megabit per second, more on that in a second :-) up to about 20 Mb/s. What does that mean in simple terms? Well, I'll put a chart at the end of this post, but a Megabit should not be confused with what you normally think of in terms of computer storage the Megabyte. Just remember that there are 8 bits that make up a byte, so anytime you see transfer speeds of bits per second, you need to divide by 8 to get the equivalent bytes per second.

So, a somewhat typical 5 Mb/s broadband internet connection can transfer 5,000 bytes (1 megabyte = 1,000 bytes) per second. So what you say? Well, doing a little math that is equivalent to 625 bytes per second.

In more realistic terms, let's say you have a single layer DVD that is FULL (4.37 Gigabytes or GB) of about an hour's worth of home videos. Let's say you want to download the equivalent DVD over your 5 Mb/s broadband connection. How long will that take? Hint, pay attention, we'll use this DVD example for wireless, wired network, and hard drive speeds later. Well, multiplying out 4.37 * 1024 gives us 4474 mega bytes to transfer. Multiply 4474 * 1024 again to get the total bytes to transfer at 4,582,277 . Multiply again by 8 to get the bits to transfer and it is about 36,658,217. Now, your internet speed can handle 5,000 of those bits per second, so it would theoretically take about 122 minutes or about 2 hours-- quite a long time.

Reality check though: No internet connection advertised at 5 Mb/s will really download that fast and any network connection will never work at it's peak rate, those are the rate of the 'pipeline' so to speak, but the pipeline is never stuffed completely full, so realize this rate is somewhat of a hypothetical one, in reality it would take a bit longer.

Next, let's examine the different wireless network speeds for your laptop, TV, or gaming console. First, realize that wired networks speeds are generally spoken of as 10/100/1000 or 10 Mb/s, 100 Mb/s, and 1000 Mb/s or 1 Gb/s (Gigabit networking). Just as a comparison, I'll get to those with our DVD example shortly.

So, you've got a wireless network setup and your laptop or Wii can handle wireless "G" networking. What does that mean? Well the G standard means speeds up to (again that hypothetical pipeline) of 54 Mb/s. Using our DVD example it would take about 11.3 minutes to download the home movie that fills up a single-layer DVD. That is much better and much faster than downloading it off of the internet! Now, this assumes that you already have the DVD on another machine (such as a server) and you are copying the contents to your wireless device, laptop, etc., using the G standard.

The wireless N standard is up to 150 Mb/s so it is faster than most common 100 Mb/s wired networks. However, you've got to have a newer laptop that supports the wireless N. In addition, you've got to have a wireless N router or box that emits the signal and processes in the N class. Currently, these boxes are about $80 or so. You can buy a G box new for about $40. What is the download or speed difference for upgrading? Well, that DVD that took 11.3 minutes on the G network would download in 4 hypothetical minutes. So, taking 150 (Mb/s) and dividing by 54 you see about a 3x increase in speed between wireless G and wireless N. This is great for downloading files, and may be worth the $80 upgrade to you. However, a caution: Remember if your internet connection is at 5 Mb/s, that's all you'll get is 5 Mb, it does not matter if you have a 54 or a 150 Mb/s pipeline, the internet will only go at 5Mb, so you won't see any increase there.

Almost lastly, how about gigabit Ethernet and your home network speeds? Most home networks are 100 based, meaning they use Cat5 cables (a specification and what most home networks have used in the past) and that utilize up to 100 Mb/s speeds. Most routers and switches you see have been 10/100 or can handle up to 100 Mb/s in each direction.

However, Gigabit Ethernet is a 1,000 Mb/s or 1 Gb/s speed. In order to achieve this, though, you have to have everything on your home network at this speed. It will only go as fast as the slowest part. To start with you'll need a gigabit swtich or router. I purchased a gigabit switch for $25 recently with a mail-in-rebate, making it quite affordable. Then you would need to have Cat6 (not Cat5) cables. I ordered 4 of them for about $10.50, shipping included. Finally, you need to make sure your computer can handle the gigabit standard or is marked 1,000 or commonly says 10/100/1,000 or just 100/1000 meaning it can handle slower as well as the faster gigabit speeds.

So, back to the DVD example, just how fast is this? My first experience over the weekend with gigabit Ethernet was quite fast. Again, remember this will only be realized in transferring files back and forth between machines or a server, but it was fast! When going from 100 to 1000 you may not see a full 10x increase, but I had a file that copied over in 15 minutes, then I shut down, installed the gigabit switch and cables and transferred it again in less than 2 minutes!

As for the hypothetical 4.37 GB DVD instead of taking 4 minutes on the wireless N speed, it would now take just 0.61 minutes or about 37 seconds on the gigabit network, not bad!

After all that blazing speed, it made me wonder if the network will soon outpace the speed of your computer, i.e. the speed to transfer read/ write files on your hard drive? Lastly, let's examine disk speeds.

A common SATA hard drive today has the capacity to transfer up to 3 Gbytes/s, but they typically transfer at about 70 Megabytes or 560 Mbits/s. This is due to the nature of hard drives, spin-up time, seek time, and so forth. A discussion for another day. But, suffice it to say when you're dealing with a gigabit network, your slowest part now could very well be your hard drive, NOT your network! Of course, as mentioned, your network will never quite run to full capacity either with your file transfer, so perhaps it is best to consider it a "toss up" as to whether the gigabit network or the 7200 RPM modern hard drive is the weakest link in the data transfer.

Of course you could put a Solid State Drive (or SSD) in your computer. These are still relatively expensive but get rid of the "wait for the hard drive light always on" bottleneck by increasing the data rate to about 250 Gbytes or 2 Gbits/s. Now we're talking the speed of a fully functional gigabit network as it can handle (in full duplex) a 1 Gb/s download AND a 1Gb/s upload. So, theoretically, your Solid State Drive could be uploading a file to the server and simultaneously downloading a file from the server and it would be about as fast as the gigabit Ethernet it travels over.

Of course servers seldom handle just one machine connected to it. At my house I've got one newer machine and two older ones coming into it. At that point you're not concerned with drive speed but with the network. There is a 10 Gigabit standard out there, but it has not yet found its way into mainstream home use.

Below is a chart showing the DVD file transfer scenario and how long it would take to transfer over a 5 Gb/s Internet connection as well as on various wireless and wired networks and the rate at which it can transfer on a hard drive. It is a good reference to show just how fast each of the options can be, relatively speaking. Enjoy!

DVD 4.37 4,475 4,582,277 36,658,217
Example GB MB K bytes







Internet 5 Mb/s 5,000 122


Connection bits/ sec Minutes







Wireless 54 Mb/s 54,000 11.3

G Connection bits/ sec Minutes







Wireless 150 Mb/s 150,000 4.1

N Connection bits/ sec Minutes







100 100 Mb/s 100,000 6.1

Network Speed bits/ sec Minutes







1,000 1 Gb/s 1,000,000 0.61 37

Gigabit Speed bits/ sec Minutes Seconds







Typical 70 Mbytes/s 573,440 1.07 64

Hard Drive Speed bits/ sec Minutes Seconds







Solid-State 250 Mbytes/s 2,048,000 0.30 18

Drive Speed bits/ sec Minutes Seconds





Tuesday, September 2, 2008

Article, binary on a single electron

This is an interesting article. It just goes to show, that theoretically computer storage can happen on anything that is binary-- anything that can change between a one (on) and a zero (off). This article talks about looking at the magnetic orientation of a single electron and using that as the binary differentiation to make the 1's & 0's.

"You have memory, one bit that is represented by one electron, and that's it," said University of Utah assistant physics professor Christoph Boehme. He says his team has controlled an electrical current through an electron's spin, or magnetic presence. He says all you have to do is read whether the electron has a north or south magnetic signature.

Read the full article from KSL.com

Tuesday, August 19, 2008

1's & 0's: Note and the first part

NOTE: I pondered which article to write and post first. I want to do one on hard drive storage, one on digital cameras and storage, and others. However, I realized that they all come down to a basic understanding of how computers store information. If you understand that other posts will make a lot more sense. I will put this in plain language but follow along closely—no dozing off! :-)

If you get lost or your eyes start to “glaze over” in this post PLEASE leave a comment or send an email so that I will know! If you are bored at the prospect of reading on, please wait for the future posts on storage in which I will link back to this “base understanding” post. I'm sure I will reference this post often.

This post will be broken up into sub-sections for easier clickability and reading. Enjoy!

=============================================

You may have heard that all a computer “understands” or stores is 1's and 0's. Yup, that's right, all a computer knows or stores is an “on” or an “off”, an electromagnetic charge or discharge, like a light that is on or off. This true/ false or 1/ 0 or on/ off is also called binary, “bi” meaning two or it can be one of two things-- a 1 or a 0.

So what's a 1 or a 0 got to do with storage? Well, let's look at how the characters I am typing and that you are reading on this blog are stored, in their most basic sense, on a computer system. We need to understand how the letter “A” gets stored as 1's and 0's.

1's & 0's: ASCII Tables

First you need to know that all letters and characters are converted to a number. One of these easy to understand number conventions is called the ASCII (say “Ask Key or Ask Key Two”). This standard dates back to the early 1960's as a conventional way of storing the English alphabet and stands for American Standard Code for Information Interchange, or ASCII. There are other formats out there, but for our discussion we'll stick with this one.

So, according to the ASCII standard, the letter “A” gets the decimal (number) value of 65. Why you ask? I don't know, that's just the way it has been for many years. The letter “B” is 66, and so forth. You can view a table here or look up ASCII on Wikipedia if you are really inquisitive and want to read more.

So, how does a computer store the number 65 that represents and ASCII letter “A”? To understand that we need to explore how 0's and 1's can represent any number. This gets a little interesting, but if you follow it you'll know the answer to the question of why a computer “sees” Kilobyte (K) of memory, for example, is 1024 bytes and NOT 1000 bytes.


1's & 0's: Base-2 numbers

A zero and a one gives you two options or base-2, as the mathematicians would say. I'm not a mathematician, and I never did enjoy calculus. Basically it means instead of counting from 1 to 10 as we do in our base-10 number system we all know, computers only have two numbers (0 and 1) NOT ten numbers (0,1,2,3,4,5,6,7,8,and 9) as we know it. OK, so a base-2 you go 0,1 then 0,1 then 0,1, exciting, right? My eyes are glossing over and I'm starting to drift off to sleep! How in the blazes do you store a 65 when all you can do is go 0,1 0,1, 0 or 1?

Well, let's line each of those zeros or ones up and give them a base-2 value. In our current base-10 numbering system if I have a 1 it is 10 to the 0 power or 10^0 = 1 . If I add a zero behind it I have 10 to the 1st power or 10 (10^1 = 10). Add another zero and I have 10 to the 10th power or 100 (10^10 = 100). You get the idea. I other words 001 is (10^0 = 1) and 010 is (10^1 = 10) and so forth. Each movement to the left represents another 10 to the power of or 10-based value. Have I confused you yet?

Well, in a base-2 world if I have a 1 it is now 2^0 or 1 as well. But the next placement over of 10 the “1” actually represents 2^1 = 2. (two to the first power exponentially) Therefore 100 is “100” in base-10 but in computer land of 0's and 1's in base-2 the 100 actually is broken down to 2^2 = 4. Here's a little representation of the decimal places that could represent any number from zero to 255.

1 1 1 1 1 1 1 1
(2^7=128) + (2^6=64) + (2^5=32) + (2^4=16) + (2^3=8) + (2^2=4) + (2^1=2) + (2^0=1) = 255

Whew, that's heavy! It might take a little review, but this concept of base-2 numbers is everywhere in the world of electronics today. Basically if you see a 1 you figure out what exponential position it is in (2^? power) and then add them together. If you see a zero or “off” you ignore it.

So, 0000001 is 1, 00000010 equals 2, and so forth. As shown above 11111111 is equal to 255. Given this, [Quiz time!] what would 00100100 be? If you said 36 (32 + 4) you are right!

1's & 0's: Base-2 and bytes- How characters are stored

You may have noticed a pattern now that looks strangely familiar in the world of electronics. Specifically if you have ever purchased a memory card for your camera or RAM (Random Access Memory) for your computer you have noticed that it comes in these strange base-2 numbers like 128K, 256MB, 512, or even 1024K of RAM.

Ah, but what does all of that mean? Interestingly enough when you count by base-2 or 2^7 you will notice you get these “funky” numbers like 128 or that 2^10 is actually 1024. Hold that thought for just a moment.

Given the background you know have you know that our letter “A” represented by the decimal “65” or by 01000001 in binary zero's and ones' stores this one character. Well one character is typically a byte or eight bits. A bit is simply a zero or a one and a byte (8 bits) can then represent any number from 0 to 255 as we have seen above.

So, each character of this long post is represented in the computer as a byte—a number from 0 to 255 that corresponds to a character in the ASCII (say “Ask Key two”) table. If I put the word “word” in the computer it is represented by four bytes. You'd say the document (if strictly ASCII text with no formatting) would then take up 4 bytes of space.


1's & 0's: Cool sounding Mega-prefixes

So what if you type a few paragraphs and it is over a thousand characters or bytes? Well, since the computer stores bytes as 2 to the ? Power when we reach 2^10 (1024) it is called a Kilobyte. Why Kilo? Well, in the metric system Kilo means 1,000 if I remember correctly.
Now, we come down to the age-old computer question of WHY is a Kilobyte (K) 1024 bytes and not 1000 bytes? Well, according to the metric 'purists' I'll call them 1000 is truly a Kilobyte. In a perfect world of base-10 I suppose it is a great metrics name, Kilobyte, Kilo meaning a thousand. But wait, we're not in a perfect base-10 world, we're in a computer realm of base-2, remember?

So, as we represented succeeding numbers with each 1 being a power of 2 or 2^10 we found it equals 1024, NOT 1,000. Therefore, computers see a Kilobyte or K as 1024 not 1000. Does that make sense? Say yes! :-)

Here's the “cool sounding” prefixes that will dazzle your friends at the water cooler. A thousand (1024 really) is a K or Kilobyte. What if you have 1024K or 1024 Kilobytes? Well, then you could say it is 1024K or you could go to the next level and say it is a Megabyte or MB for short. Here's a list of all of these.

1024 bytes or 1024^1 = 1K (Kilobyte)
1024K or 1024^2 bytes = 1Mb (Megabyte)
1024Mb or 1024^3 bytes = 1Gb (Gigabyte)
1024Gb or 1024^4 bytes = 1Tb (Terabyte)

Note that there are hard drives that have 1 terabyte of storage today. Also note that when you get into hard drives they use 1000 not 1024 but that is a discussion for another day. Perhaps my chart above should be in 1000 not 1024 as Kilo theoretically means 1000 (base 10) not 1024 (base 2). The important thing is to remember that the prefixes in order are:

Kilo, Mega, Giga, Tera, Peta, Exa, Zetta, Yotta.

Why the standard goes from zetta back to “Y” in yottabyte I have no idea. About ten years ago I heard that Boeing corporation had an Exabyte network for storing streaming video in the Seattle area. A more recent article predicts that by 2013 all of the hard drives combined shipping to all the customers in the world will equal a yottabyte a year. Interesting.

1's & 0's: Summary and the END

Since there is no time to "splain" let me sum-up. A computer stores information in on or off, zeros or ones. This is called binary as there are only two options. This means that numbers are stored in base-2. To store the letter “A” we go to the ASCII table and see that A is given a decimal value of “65” which is then stored in binary as 01000001.

When you get 2^10 characters together or 1024 characters it is known as a K or kilobyte of storage. In order the higher prefixes are Mega, Giga, Tera, Peta, Exa, Zetta, and Yotta. Today we have terabyte home disk drives available and a single yottabyte device is still theoretical.

Now, go amaze your friends with your new-found knowledge and amaze the salesperson at the electronics store by knowing that a terabyte is a thousand (1024) gigabytes!