Friday, June 28, 2013

Samsung's Galaxy Tab 10.1

I swear I'll get back to blogging about low level network communication someday... today is not that day.

I just had to wrestle with my tablet, a Samsung Galaxy Tab 10.1 to connect to a 5Ghz wifi AP. I found the problem, even after googling, people seem to just give up... hopefully people having trouble, will find this. (for those looking for help, scroll down to the marker and start reading, a little backstory follows)

I have a pretty complicated network, as you might imagine; being that my wifi is mainly shared, I actually setup an Access Point that will automatically choose the "least congested" channel, so that my android devices can connect to it.  Mainly my phone, since it will only connect to 2.4Ghz wireless. I do however, have 5Ghz routers, and one is on the network, and it's the only 5Ghz in my neighborhood (that I've ever detected).  This is good because there's typically so many 2.4 Ghz networks that congestion will stop you from having a nice, clear, quality signal; as I've stated in previous posts, this will slow down your network communication to a crawl.

Well, that's exactly what happened for me today, I have one AP at 2.4Ghz auto-select "least congested" JUST FOR ME, and a household, shared AP, also 2.4Ghz, that I tend to avoid; primarily so that the bandwidth there can be used by others in the house, and I don't have to fight with their devices... in terms of contention. so there's that.  But today, while using my tablet, I found that I was on the household AP, and trying to watch youtube clips was insanely slow (5+ mins of buffering for a 2 minute video).  I said enough is enough, and went to check my network status; once I found I was on the household wifi I thought to myself "that must be why" and promptly switched to my "least congested" access point.  To my disappointment, this yielded zero improvement. Without going through the motions of reassigning the wifi channels to all my devices to see if I can find something a little less congested (a very difficult feat in this environment); I decided to jump-ship and onto the 5Ghz. I set my tablet to only connect to 5Ghz networks.... voila. wait what? no networks? how is this right?

I logged into my 5Ghz AP and started tinkering.

---- FIX FOLLOWS (for those skipping my little story time) ----

After a little effort, I changed the settings to be more compatible, and the network popped up almost immediately.  My current 5Ghz settings (that are working with my Tab): I selected a low-numbered channel, the second lowest, 36 I believe, changed the channel width to 20Mhz, and saved.

That's it. pretty much just pick a channel in the first dozen or so.

network popped up quickly, I connected and all my wifi woes went away.

Happy networking folks!

Tuesday, June 18, 2013

Broadcom!

What an aggrivation.

I've spent the last day and a half trying to get Broadcom Advanced Control Suite to team four links together, turns out, the issue may be my OS.

Some time ago, for reasons only known to broadcom, they decided to disable teaming functions on all SBS servers.  I'm quite baffled as to why.

Turns out that when BACS installer detects SBS, it disabled the option to install Broadcom Advanced Server Program; this BASP program is used to create the virtual interface for a team, that dictates the IP settings across the entire team.

So, anybody have a hacked BACS install that overrides the check for SBS?

Sunday, April 21, 2013

WiFi? or not to WiFi?

I feel as though I should really type this out once; and give everyone a good rundown of HOW wifi works, what should be changed, and what should not be changed.  So here goes.

DISCLAIMER: This is for a fairly intermediate crowd, those who have setup wifi before, understand that wifi has channels, SSIDs, etc. - to those in the industry, that will be considered a beginner level.  I'll try to explain things clearly.

First of all, let's talk about frequency. It's getting so confusing when picking a router, do I get "gigabit" or "Wireless N" or that fancy "Wireless AC" (whatever that is)... what do I need, and why? - I'm here to help with exactly that, and more.

There are two parts when it comes to frequency. First, is the capability of the router (or AP) - is it a "dual band", or "simultaneous dual band"? what's the difference and why does it matter? Well, with most older, common 'wireless' networks for households, you didn't have a choice of 'band' - everything operated on 2.4Ghz.  Just like your radio, where stations operate at frequencies like "104.5 FM" (which is 104.5Mhz) - same applies to wireless, just instead of transmitting voice, it's data.  2.4Ghz is by-far the most common. It's internationally a 'free' channel.  Which means, you don't need a permit to broadcast on the channel, anyone can use it, at any time, for any reason.  This is why you'll see wireless phones toting "2.4Ghz" on the box, etc. This 'band' is the only frequency range available for the 802.11b/g (more affectionately known as 'wireless b' and 'wireless g').  In being so, earlier model routers, and inexpensive options will default to this range and this range alone; not having the necessary transceivers to operate anywhere but on the 2.4Ghz spectrum.  "Dual band" comes from routers being able to operate not only on the 2.4Ghz band, but the 5Ghz band aswell. The 5Ghz band typically ranges from 5.180Ghz to 5.825Ghz, which is much more broad than the 2.4Ghz band (spanning 2.412Ghz to 2.472Ghz); the benefits of this is quite simple, more room for more networks; this leads us into our second point, then we'll have a small discussion on which is better in what situations.

The second part of frequency has to do with contention; contention is a fancy term to talk about interference - specifically the interference created by OTHER networks operating on the same, or similar frequencies. I've already mentioned that each 'band' is a span of frequencies; what I haven't said is that each of those frequencies boils down to 20Mhz segments.  Let me start with an analogy.  Think for a moment about our earlier discussion of radio.  When you're in your car, as I'm sure you're familliar, if you tune away, just one step from a local radio station (one that comes in quite clearly) often, you can hear the station, both one-step above and below the actual 'channel' - this is because of BANDWIDTH. the station is CENTERED on the frequency you're tuned into - our earlier example was 104.5Mhz; this is the channel center. From there, the station occupies an amount of frequency range both above and below the 104.5Mhz mark, the further you get away from the station, the lower the effect of this, so it won't happen on all stations. You'll notice that at 104.3 and 104.7 (the next step in either direction), you can still hear the original station, though the transmission may be poor, it's there.  Same thing with wifi, except the channels are 5Mhz apart, and the bandwidth is 20mhz - this means that there are a LOT of overlaps when it comes to 2.4Ghz. so much so, that in north america, there are only 3 viable "non overlapping" channels: 1, 6, and 11.  Obviously on 5Ghz, there are many more channels, and while they overlap with other channels just as much, there are so many of them, there's a large portion more "non-overlapping channels".

So what does this all mean? how does it affect your decision on a router? well, quite simply put, depending on where you live and what you need, you may want to pick 5ghz, or you may require 2.4ghz.  According to the scientific properties of electromagnetic waves, the lower the wavelength, the less likely it is to be scattered and/or misdirected - this means if you need high penetration, or longer distance, 2.4Ghz is likely for you.  how long? about 75m (240 ft).  you can attain longer links with directional antennas (eg parabolics .  If you need shorter-range with more reliable access in a high-density environment (eg, a housing complex or apartment building), 5ghz is definitely the way to go.

Word of warning while choosing a frequency range - many small devices (such as smartphones and tablets) don't necessarily support dual-band. it would be worthwhile to look into this while picking an option.  That said, if you're in a high-density environment, but need both high reliability and 2.4ghz for micro devices, a simultaneous dual band option would be best, as it will do both 2.4ghz and 5ghz at the same time.

Next, let's talk network names and encryption.

If you've ever setup a wireless network, you've dealt with these before.  The key with network naming is to pick something unique for you, that you don't mind having other people see, that you will recognize as yours. I've seen people even put witty phrases as their network names. be creative; the sky is the limit here.  Next, you'll have to consider encryption. DO NOT, and I really mean this, DO NOT USE WEP - if anyone tells you to use it, hit them for me.  ALWAYS use WPA.  WPA2 if possible.  Don't complicate the wireless too much, if you're going to use a WPA/WPA2 mixed (or WPA2 Auto) set encryption to auto as well. for just WPA, use TKIP, for just WPA2, use AES.  I cannot recommend highly enough to use WPA2 with AES.  This is an industry standard (802.11i for those curious), and is the recommended configuration from apple, the wifi alliance and IEEE for wireless encryption.  It is the newest and possibly the best wireless encryption standard to date and has yet to be broken.  WITH THAT SAID, pick a good wireless encryption key sequence; the only known attacks on WPA2/AES to date, have to do with guessing passwords. Do not just use character substitution in a short word for the password.  Eg: 'P@ssW0rD' is no more secure than 'Password' - use something long, and easy to remember.  In the past I've used slogans and parts of mission statements, or peoples combined middle names (eg, the middle names of all the people that regularly use the wireless, with spaces inbetween) - ensure it's not something you'll hesitate to give out to guests who need wireless, but ensure it's not something someone who doesn't know you, will readily guess, or be able to pull from a dictionary.  Even using a line from a song that the whole family enjoys, is more secure than a single word; whether that word has numbers and symbols in it or not.

I cannot emphasize strongly enough to use a strong wireless password. take some time and do it right, you'll never have to worry about it again.

Next, we're going to get into some more complicated stuff. You'll find most of these options in your "Advanced" section.  I won't tell you which ones to pick to turn on or off, you'll have to decide on that from my description of what they do; no two networks are built for doing the same thing, and no two networks are designed for the same users; be careful when changing these options as they can also have adverse effects on performance - however, DO EXPERIMENT - the worst that can happen is needing to reset the router to defaults (a procedure you should look up first) and re-configuring it from scratch to get reconnected.  Enjoy.

BEACON INTERVAL:  This setting changes how frequently the Beacon is sent. The Beacon has two main tasks: 1. to inform stations that the access point is still active, and 2. to deliver 'wake up' messages to stations in 'low power' states.  I'll deal with point #2 more in my next talking point "DTIM Interval".  Basically, the beacon contains information about the network, the network name, it's wireless encryption types (only types, not the keys), etc. effectively everything required for a new station to connect.  Higher Beacon intervals: less intrusive. the Beacon has a fairly high priority for transmission, as it not only provides information for new stations to connect it tells existing connections that it's still around, if the Beacon is set too low, the router or AP will spend all it's time and available bandwidth advertising that it's there, and spend no time actually moving information.  Too low of a beacon interval, and connected stations may lose their connection at random.  The beacon is typically measured in ms, and the default is typically 100ms (1/10th of a second), I've seen these as low as 250ms (1/4 of a second) or as frequently as 50ms.  Depending on your needs, you may want to increase this number, if it creates a problem of dropped connections you may want to decrease the number.

DTIM Interval: DTIM's are wake-up messages for 'sleeping' devices. effectively it boils down to; if a small device is in a standby state or has activated a low-power state on the device will only power-up for two reasons: 1. to send information.  2. a DTIM request.  Basically, the DTIM is telling the low-power devices, to connect to the AP, since it has a message for it. the device will 'wake' from it's low-power mode, connect to the AP and request the delayed transaction message.  In low-power states, the device will only listen for beacons, nothing more.  DTIM is set in frequency of beacon intervals; so a setting of 1, is every beacon, 2, is every other beacon. etc.  Typically DTIM is set to 1 or 2, but can be set higher if you wish. KEEP IN MIND, this is also based on the beacons interval, if you have a higher interval, you may want to consider a lower DTIM, a higher beacon, you may want to consider a lower DTIM.  I don't believe there are any adverse effects to a higher DTIM, except that low-power devices (such as cellphones and tablets) will take seconds longer to receive a message while in standby; this may not be important to you.

PREAMBLE: options are long and short.  Long preambles are required for older equipment, and are more standards compliant. however, there are many performance improvements to a short preamble.  Effectively, the preamble is a sync message prior to transmission, it's sent by the transmitting station (eg. your PC or the router), so that receiving stations can sync their clock rate to the transmission. newer hardware requires less preamble to sync.  cheap hardware may also require a longer preamble.  There is no significant change in router performance either way, short is better, but only slightly.  If possible use short, if any device exhibits strange connection behavior, try a long preamble to try to correct the problem.

PROTECTED MODE:  This is kind of a big topic, so try to hold on.  Effectively Protected mode has two parts: 1. a "basic" rate, and 2. a request, then send, method of communication.  Let me break this down a little. The basic rate is the MINIMUM require connection speed that a station must sustain to be able to participate in the network.  Typical values are 1 or 2Mbps.  This is low because, typically, you want a lot of compatibility.  If you're on a computer with wireless, you can check your connection rate at any time, typically by opening your wireless connection status window; it will show the connection "speed" - if that speed is less than the basic rate of the network, your connection is not considered valid.  The reason this is important is because of the second point.  The basic rate is used for control messages for RTS/CTS (Request to Send, Clear to Send) requests.  Protected mode, if set to auto, is triggered when the network detects that some stations cannot 'hear' other stations, and/or collisions (more than one station sending at a time) happens frequently.  How this works is as follows.  Your PC (let's just say, it works in reverse too) will transmit a RTS to the AP.  That request contains all the information about the length of the transmission you want to send, etc. the AP will then transmit a CTS, which includes all the information from the request, plus a confirmation that you're clear to send.  The AP does this so that every station on the network knows that someone is transmitting for X ms (whatever was defined in the RTS). All other stations will now wait (or "back off") for AT LEAST that length of time, before attempting to request to send.  This is analogous to raising your hand to speak in a classroom.  While just blurting out answers is faster, if everyone did that, you would not be able to understand anyone.  This, while slowing down the overall transaction time for each message sent, ensures that only one "person" (or station) 'speaks' at a time.  This ensures more reliable communication across the network, but can slow it down significantly.  If you're in a situation where you have a lot of differing devices with differing capabilities, you may want to consider turning this on.  If you're in a situation where you need faster speed of message transaction, you may want to turn this off. cases and results will vary.

Wireless Multimedia (WMM): Also known as WME (Wireless Multimedia Extensions) is an extension of the RTS/CTS found in protected mode.  Effectively, what happens is an RTS/CTS request/response occurs, whether or not Protected mode is enabled, however, the main difference here is, rather than sending just one message, the station is requesting time to send a block of messages. - this VASTLY improves overall throughput for the one connection stream, however it greatly delays other transmissions. choose this option carefully.  I highly recommend using an Ethernet connection for anything multimedia; but if you must use wireless to connect a media extender, be sure to enable this; I will leave you with a warning, if anyone is doing anything time-sensitive on the network (VoIP or Gaming), and this option is set to ON, they WILL NOTICE a significant drop in responsiveness in their data.  For gamers, this phenomenon is referred to as "lag".  Reduce LAG by turning off WMM.

There you have it. The comprehensive 'advanced wireless configuration for dummies' guide.  I hope this helps some people in choosing the right wireless access points and network configurations.  I don't think this is the first time I've posted this.  In any case, have a great day, and may all your packets arrive with their checksums intact.

Tuesday, February 12, 2013

Blackberry 10

Working professionally as an IT technician awards me some interesting circumstances.  Fleeting circumstances where I get a glimpse into someone's digital world, only to fix what is requested, and when I am done, walking away from the mess that is their world.

Today, that journey led me into the depths of Blackberry 10.

For those too lazy or tired to read it all, currently, I AM NOT a fan of BB10. the changes made to the data management, though minor, created hours of work for me and a few headaches.

okay, for those ready to follow along, let's ride.

First of all, how it was.  It was a confusing mess.  SOMETHING NEEDED TO BE DONE. So let us begin.
BIS. Blackberry Internet Service.  This was a server/service that was purchased by your mobile telephone service provider, which allowed for blackberry devices on their system to interact with the rest of the world.

All blackberries, with the exception of the Z10 (currently the only BB10 device available), first send their information to the BIS server, before it leaves and goes out towards it's final destination.  The purpose of the BIS server is clear: to encrypt and compress all data going to/from each device, and facilitate connection to the internet, email, BBM, etc.  Without your mobile service provider having a BIS server, your blackberry would be little more than a really expensive dumbphone. It would be IMPOSSIBLE for any data communication to take place without the BIS server in the mix.  This means no internet, no BBM, no messenger apps, no new apps at all, no email, nothing. just phone calls and text messages.

With the implementation of BIS, accounts were necessary to manage your account, for the purposes of transferring settings/restoring backups from a lost device to a new device. You could also login to manage email accounts and other mundane chores you can also find in the depths of the settings and setup menus.  This also meant that blackberries were portable, that you could have them on your account, or remove them, transfer your settings to a new device... etc. each blackberry uniquely identified with an 8 digit hexadecimal PIN connected to an account.

Groups of accounts could also be managed under certain circumstances. eg. in business. a business could have a master account to manage several blackberries, each of those blackberries would still have their own account and login username and password.  It gets complicated pretty fast, but I think you get the drift.

NEXT, we had the BIS servers, each with their own unique branding, by service provider, able to provide email addresses. Basically, if you were with, for example, Bell (I'm using Bell since it exists both in Canada and the USA), then you may have been able to get a blackberry with an email account like name@bell.blackberry.net - or something similar.  The BIS servers would facilitate the delivery of email to/from these addresses and would provide backup for 2 weeks worth of email; this also meant if your blackberry was off, you would still have email, it would just buffer on the server until your device came back online to retrieve it.  So now we have two logins for blackberries, one for your BIS account, the next for your email account.

In addition to these logins, you have two places to login to, one for email, one for account management. joy.

a number of years back, blackberry in their infinite wisdom decided to impliment a new account management system, separate from BIS accounts, called BLACKBERRY ID or BBID for short.  your BBID would track ALL your email accounts and became a single sign-on to associate all your information, apps, passwords, emails, BBM, etc. all into one point of entry.  Which is convenient if you're not near a PC and you want to get rolling as quickly as possible with a new device. get a service contract, setup your BBID, and you're off to the races.

This, of course, makes things confusing, since BIS and BBID basically do similar things, except BBID is a bit more broad, but convoluted, which settings are ACTUALLY backed up and to WHERE? these questions are not easy to answer, however, I do know that the quickest way to migrate from one device to the next was to transfer all the settings using the desktop app, then associate the BBID for the user. almost everything would set itself up.  In theory, you never have to touch their BIS account, so many users STILL don't know what their BIS login even IS, nevermind what it can do, or why it would be important to them.

What's important to note here is that your Blackberry email addresses, which almost everyone has, whether they use it or not, plus the device management account, are both on the BIS server. with BBID taking up the rear, managed by Blackberry.

What RIM did with BB10 is to remove the requirement to have a BIS server entirely.

To the people who never even knew they had, or at least had the option of an @blackberry.net email address, and to those on the very high end (corporate-wise), they probably won't notice much of a difference, since corporate blackberries use BES already; more on BES in a minute. it's all the people in the middle that ACTUALLY USED their @blackberry.net email addresses that are going to get screwed by upgrading to 10.  They don't even know it's coming.

I spoke to Bell today for a client, the only consolation the tech could offer me for my user was "I can forward from their blackberry.net address to any place you want" - thanks. that's not helpful.  not in the situation I was in anyways (I won't explain).  Quite frankly, in my opinion, this is a poor business move. quite frankly, the idea that, without anything else, a user could pick up a blackberry and get email for no other reason than they have a blackberry.... that's pretty good. now users will have to resort to one of the many free services, among others, hotmail, yahoo and gmail.  Not to knock gmail, I use and love it, but if I want to present that level of professional image, a blackberry address makes a statement.

So, no more mail @blackberry.net. goodbye for good.... at least, until RIM determines it was a terrible idea and lose another massive chunk of market share...

seriously, do they not even realize WHY people buy their devices?

....okay, last note, about BES - BES or Blackberry Enterprise Server, is a separate product designed to integrate with in-house, IT driven mail solutions, such as Exchange, to facilitate Blackberry connectivity to existing accounts.  The full version costs thousands to purchase, licence, and deploy, thousands more per year to licence, etc.  it's not a great solution unless you're managing several hundred ore more blackberries. For smaller business there's also BES Express, which is a light-weight version of the BES server; runs out of a browser from back-end processes.... but it's free.  Either way, the bastards that have a BES server plus exchange won't even notice, and should be able to migrate to BB10 without too much trouble (unless BES needs to be upgraded to support it).

Wednesday, February 6, 2013

Killer Packets

They'll kill your ethernet link!

you can read the full article here.

For those too busy to read here's the skinny: a problem with specific Intel Gigabit network controller's onboard EEPROM creates a condition that can only be described as extremely strange. basically if you receive a packet with a specific set of numbers at a specific offset in any packet and poof. your ethernet connection goes away.

Neat stuff, but ultimately, not favorable.

if you have an Intel NIC, start looking for a firmware update.

Sunday, January 20, 2013

Communication Speed

Continuing in my (just starting) series of explaining the underpinnings of internet communication, I'd like to discuss PING.

This is, of course, a follow up to my posting about Bandwidth.

PING is the time it takes to transmit a simple (usually very small 100bytes or less) packet of information, for your system to a remote system, and back again.  The return trip is often referred to as a "Pong".

Ping has several factors that can contribute to the time it takes to communicate. These factors include the number of nodes between you and the destination.  these nodes can be entire networks, single routers, a computer, or just about anything designed to relay information from one connection to another.  Typically, the more complicated the system, the longer the time a router (or other type of relaying device) will take to forward a packet.

My complicated, I mean that some routers are setup to perform various intrusion prevention scans, antivirus and antimalware detection, etc.  There's also a number of rules that the information needs to be scanned to check for a match, before the router will allow the packet to be forwarded.  In addition to that, the more complicated the routing table on-board on that device, the longer it can take to find a match.

Let's compare the typical home-based router, to a corporate-level router with integrated firewall.

On the consumer end, the most complicated thing the device is doing is called Network Address Translation.  This type of NAT is one-to-many; meaning one address (on the internet) to many addresses (internally on the network), so your PC is on the network, all the router has to do is forward the information, and track who is sustaining the connection (so it knows to send responses to you).  On the other hand, with a corporate firewall, often it will have a few-to-many NAT (meaning multiple internet addresses for maintaining connections for a v.large group of systems); it will have to monitor which connection on which address goes to which internal system... there's a long, very complicated way in which it does this... I won't elaborate for now.  In addition to keeping track of a lot more sessions, the router also performs security profile matching, meaning the systems administrator will define firewall rules to say X type of traffic from X networks is not allow to talk to X systems - in a typical high-end network, there are thousands of these types of commands, both allowing, and disallowing network traffic to/from certain locations.  The router will also often have a network antivirus and antimalware system embedded, where it will scan all network traffic to ensure no viruses or malware is matched coming in or out of the network.  After all that, the router can finally pass the traffic.

All in all, the corporate router will take longer to process the packet, but usually not by much, since often they're built on much more capable hardware.

Transaction time through a router or entire network, can take tens of miliseconds. it doesn't sound like a lot, but it is.  You're only dealing with about 1.5kb of information at a time, and millions of these tiny packets of information need to be processed almost all the time; depending on network load.  I've mentioned the figure of about 10ms here, to contrast between transaction times.

Most switching methods (this is different than routing, which I was talking about above), use store-and-forward methods of transmission, this ensures a high data consistency rate.  Basically it weeds out the errors.  It does a good job at this, and considering the transaction times for 100megabit and gigabit networking, for the average packet, the speed gains using another method for forwarding, are nearly non-existant.  That being said, in a 100mbit network, the time it takes to process a packet through the connection at wire-speed, is aproximately 12microseconds.  Considering that's about 0.012 ms (miliseconds), that's a good, short amount of time to have a transaction. At gigabit networking, that number is further reduced to 1.2 microseconds, or 0.0012 ms.  Compare that to the 10ms or so, for a routed transaction, and you start to see the value in switching when you can, and routing when you have to.

With all this in the mix, faster network speeds; moving up from megabit to gigabit, or even higher, isn't always about network capacity. it's about network linespeed. being able to transact a message between two points in as short of an amount of time as possible.

These times are specifically important when dealing with online gaming.  Gamers refer to the phenomenon of having "high ping times" (somewhere above 100ms) as "LAG"  though, most lag can be attributed to the server going unresponsive for a fraction of a second.

With this said, this is the primary reason why so many gamers choose to have "LAN Parties" - they have the lowest ping time over a local LAN (12 microseconds or so), so LAG is almost entirely eliminated as a possibility.

One other good reason to have the lowest ping times possible is in the case of VoIP.  You may not realize it, but VoIP is becoming very popular.  If you own a cellphone with the ability to make a call over WIFI, you're using VoIP.  Almost all business telephones are now based on VoIP technology.  Many ISPs and telephone providers that deliver information to your home in any manner other than the standard 2-wired RJ11 telephone jack, is using VoIP to deliver that information to your doorstep.  In terms of VoIP, delay in delivering sound to your destination is referred to as "jitter".  You can test your jitter at Pingtest.net. The functional result of jitter is gaps and bursts in speech.

It's important to deliver information from end-to-end as quickly as can be possible done, however there's a limit where costs meets practicality  we won't be seeing 10gigabit networks hitting homes in the next year, but they'll eventually become necessary.  Hopefully by the time we need that much capacity, that quick of a transaction, these technologies will be very affordable.

Sunday, January 13, 2013

Virus alert

Yet again, another unintelligble, propaganda-ridden, mac-loving post about a miscellaneous blogger...

This post brought to you by: Beatweek!

I didn't really make it through the whole article before getting myself tied up in such a way that I knew I had to write something about it...

To be fair, I want to do an eloquent series about bandwidth, ping, latency, transaction time, etc. detailing the finer points of all, in such language that people can follow along at home, and this is going to be....  kind of in the middle of all that... but that's ok.

Here's what the article got wrong; what gets to me about the misinformation of integrated systems...

Mac's don't have viruses, there are no computer viruses, there are only windows viruses.

WRONG.

dead wrong.

there are viruses for Android, iPhone, Mac, Windows, Linux, Unix, Solaris... every flavor of "computing device" possible.  some systems are more susceptible than others. let's discuss a few.

many of these variants use some kind of "market", "store" or "repository" to obtain new programs.  I'll talk about Linux, but these concepts apply to the android market, iTunes store, etc.  In linux, the repository, or "Repo", contains all open-source, pre-approved (and often pre-compiled) applications that are supported by the people who made the software running on the OS. when you stick to the supported repo, you'll often get a large amount of good, working software that is completely virus free.  When you start installing programs from outside sources (in linux, you can add additional repos, on android, you can "sideload" applications, and on iPhone/iOS, if you jailbreak, you can load your own/free apps), you open yourself up to accepting programming made by someone who is not inherently trusted by the creator of your chosen OS.  To be fair, many times, this is not a problem, with a good understanding of who is providing the software and why; you can avoid any viruses or issues. - you hit problems when the software is coming from somewhere you're unsure of.

for these closed environments, risk only enters when you add software that can possibly do something you wouldn't like happening on your device.  Often, you can avoid this software with little, to no, effort.

on more open platforms like Mac's OS X and Microsoft Windows (especially windows), there are no markets to buy apps from and no "fully trusted" sources to use; you have to make the decision yourself.  Many viruses that have affected mac systems, have been snuffed out pretty quickly, and often, Apple will disavow any knowledge that such a virus exists at all, often denying it fiercely to someone who is currently infected with the virus; though the evidence is clear.  Windows makes no such claims.

So what makes Windows such a target? that's an easy answer.  Market share.

Market share is the percentage of the market currently running one system or another.  While Apple has made great strides to regain a massive amount of consumers, and the numbers of people running OS X are vastly improved over a decade ago, in comparison to how many windows systems there are, there's no competition.  a huge number of companies and corporations run windows, almost exclusively. From Servers, to workstations to mobile devices; windows is everywhere in business.  Being that I see IT from a business perspective, and I see how many people even have macs at all, nevermind use them as a primary computer system for anything or anyone, I can clearly, and honestly say, that OS X is a rare occurrence compared to windows.

When it comes down to it, Mac is selling primarily to consumers, not businesses, and frankly, if I were a virus programmer, I don't care about you. I care about big business.  Despite how much money you may THINK you have; the business you work for, works through your yearly contribution to GDP and your entire net worth, often in less than a day.  So why would I care about you, when a few hours of transactions for a large business, is more than you make in a month?  If I break into a company mainframe, or server, and I can access user data, and remotely connect to, and administrate their accounting computers, I've hit a gold mine.  Those are not mac systems, those are windows systems, with Excel and Quickbooks Enterprise. that's the information hackers and virus programmers want.

nobody cares about the few thousand you have stashed away for retirement, it's small cheese to these guys. even if the idea is to cause havoc and take down systems, there are still far more windows systems than there are macs.

Windows is targeted simply because it is everywhere. that and the constant analysis of the OS, looking for so-called "zero-day" exploits (those that were discovered today and/or too recently for anyone to know about them), that other OSes simply don't get the attention of.

I'm waiting for the day that Macs become popular enough to have a major virus outbreak, so that all these pompous, self-righteous windows-hating bloggers can stuff a sock in their "Mac's don't get viruses" mouths.

Please don't get me wrong, I don't hate macs, if you use a mac, that's nice, I'm happy for you. Please don't be all self-righteous about it. I don't hate macs, I hate the people that use them because of a perceived notion that windows is bad, then they take all the time and life they can to convince everyone else this is true. it's not.

Windows, Mac, Linux, Android, iPhone... whatever. use what you want, stick with what you like, enjoy what you're comfortable with.  These products are different for a reason, because we're not all the same.

Saturday, January 5, 2013

Understanding Bandwidth

Hello again everybody!

I felt it was about time to dust off the blog and give it a go. I think I should start a series on the essentials of networking and what you should know about it, to make an informed decision about what to buy, etc.

This could get very technical, so try to follow along as I take you through all this.

How do I know this: Years in college and hands-on experience working I.T. in my local area. I've seen the effects of everything I'll be discussing.

When deciding on a network type, you really have to start with, what will I be doing with the network. For many, the answer is easy, I want to get on the internet; for others, the answer is a bit more complicated.

When talking about speed, it's important to note that there are two major measurements of indicating speed, they're closely related but give very different numbers. Think about it like temperature, Celsius and Fahrenheit, if the temperature goes up, both will rise, if it goes down, they both will fall, but not necessarily at the same speed, or to the same numbers, or by the same amounts.
These two are in bits per second (bps) and Bytes per second (Bps)

Confused yet? you should be.
The way this works is that a bit is a single 1 or 0 in a computer system; a byte is a set of 8 bits that contains information, one value of a possible 255. Why the strange numbers? because a bit has two options, either be a 1, or a 0. which means that if you want 3 options, you need to use two bits, but two bits gives you 4 options, one of which is simply invalid. but what if you want 5 options? you need 3 bits, but three bits means you have 8 options (000, 001, 010, 011, 100, 101, 110, 111), 3 of which will simply be invalid. It's because of this (factoring by 2), which is why we see the same numbers cropping up with computers a lot.

2, 4, 8, 16, 32, 64, 128...

so what happens when bps meets Bps?

well, the speed in bps, is much higher in number than the speed in Bps.

For simplicity, lets use a value very close to the national average, that divides nicely, so it's easy to follow: 16. a majority of internet connections in north america are running at aproximately 16 megabits per second. that means, at any given second, 16,000,000 bits can travel across your internet link. sound like a lot? it used to be.
Truth is, 16,000,000 bits is only 2MB (megabytes in this case)

I want to point something out before moving further. the difference between bits and bytes is supposed to be indicated by the use of capital or lower case lettering. eg. 16 megabits per second is supposed to be indicated with 16 mbps (with a capital on the M being optional), and 16 megabytes per second is supposed to be indicated with 16 mBps (again, capital on the M is optional). the capital "B" indicates bytes, where the lower-case "b" indicates bits. Unfortunately, not everyone (especially marketing departments) understand this; so we get ISPs selling 16MBPS speeds, which is actually in bits.

so, with an average connection speed of 16mbps, that means we get 2MBps (16/8, because there's 8 bits per byte)

This trend of using bits per second, penetrates the telecom world. whenever dealing with communication speeds between two points, whether they are connected by ethernet, wireless, fiber optics, or a string with two cans, generally, we use bits per second. The problem with this, of course, is that everyone else uses bytes per second.

Example: in windows, all file transfer dialogs are in bytes per second, not bits. This means if you have a 16mbps line to the internet and download something, windows will show your speed (given that you're using the entire thing for just this download) as 2MBps. This has caused (in the past) a lot of confusion about what actual speed consumers are getting and what they should expect to get.
one of the most common misconceptions I've seen with internet is "I pay for 10mb service, but I can only download at 1.2mbps" - that's about what you should expect from 10mb service...

Bandwidth is a crazy thing too, since we have USB 2.0 which, in theory, runs at 480mbps, and the fastest I've seen it transfer has been about 200mbps (aproximately 25MBps) - what they don't tell you is that some of these connection types require overhead, USB more than most. Ethernet is actually rather slim on it's overhead, running about 40 bytes of overhead per packet (1500bytes or so): about 2.5% overhead. obviously it's much higher with USB.

So how much bandwidth do you need? depends on what you're doing. For an example, let's talk about HD video. If, by chance, you wanted to stream full-frame HD video from a blu-ray disk to a computer across a network, you would need to be able to sustain a minimum transfer speed, which is the same or greater than the amount of data per second in the blu-ray video files. Luckily, the specifications for these formats are published: first some facts from the specs.

BluRay disks when playing video, have a defined maximum bitrate of 54mbit/s - so, for example, if you wanted to send the bluray to a media player on wireless, you're going to have a bad time, depending on the wifi.

I say that because of duplexing. Full-Duplex is when you have a dedicated line of communication to/from a source, Half-Duplex is when you have to share a send/receive channel. Think of this like trying to shout over someone: nobody can understand either of you, so one person can talk at a time - this is half-duplex. If you have a direct line to someone's ear, and they have a direct line to yours, you and they can both talk, hearing only the other's voice, which makes more sense.

okay, so the example broke down at the end, give me a break. :)

so wireless, by nature (since you're only using one channel) is half-duplex, meaning the theoretical 54mbps on Wireless G (802.11g) is shared amongst send and receive, which would be fine, if you didn't have to send confirmations that you received information, and requests for more. This means your real-bandwidth on wireless will be significantly less than the 54mbps as advertised. This is the reason behind Wireless N being recommended for 'streaming' media.

wired networking could definitely handle it, transferring, on average, 100mbps in full-duplex mode. This far out performs the 54mbps coming off the blu-ray, and stutter-free playback should be possible... provided the rest of the network is fairly quiet.


Bandwidth is a topic that seems to confuse many people, here I'm talking about bandwidth in your house, and I hope that clears things up for you and yours. Soon I'll have discussions more in-depth about why wireless bandwidth isn't nearly what it should be, moreso than just being half-duplex. why we don't have full-duplex wireless, as well as internet bandwidth (why so slow). All this among many other topics to help clarify your digital life.

Be safe, enjoy.