I intrupt my normal posting (infequent as it may have been lately) with this special statement regarding the death of Steve Jobs:
I am saddened more deeply than I ever imagined I would have been upon hearing of the passing of Steve Jobs. Although I'm a relatively new user of Apple computers (they had always been out of my price range), I have followed his career since shortly after moving his company out of the garage. I have always admired him not only as a brilliant and creative mind, but also as an incredible public speaker.
When I first started college, I had never done much public speaking. I think the last time I got up in front of an audience to say something it was (coincidentally) at my best friends funeral more than 15 years prior and I was terrified. My first presentation in college was no different. I stumbled, stuttered, and sweated my way through it, but once it was over, I found that it wasn't all that bad. After some tutelage from an instructor who went by the name of "Coach" (don't ask me his real name because for the life of me I can't remember), I became even more comfortable, but I still sucked. One piece of advice he gave me was to study great public speakers.
I went home and Googled "great public speakers" (or maybe it was brilliant public speakers something like that) and I hit on a site called TED: Ideas Worth Spreading (http://www.ted.com/). It is the official home of the Technology, Education, and Design (TED) conference held in Monterey, CA, a stones throw away from where I live. It is now one of my favorite sites. That first night I must have spent 6 hours watching speeches and presentations given at the TED conference. One of my favorite speakers is a man named Rives. His 4 am speech was brilliant,
but I digress.
One night I was looking for some new speeches to watch and since I was already a fan of Steve Jobs and knew he did quite a bit of public speaking, I thought, "I wonder if he has ever given a presentation at TED". So I entered his name in the search box and the first hit was not a speech he gave at TED, but rather one he gave at a graduation ceremony at Stanford University. The speech was called called How to live before you die.
It was by no means his best ever speech or presentation, however, it completely changed the way I viewed him. See, before he was like this ethereal, unassailable being who I knew was real, but was to me, like so many other celebrities, cardboard. However, his speech at Stanford completely brought him down to earth for me and made me view him as a real, tangible, and vulnerable human being. I could see that he was not just a cardboard facade, but that he was who he was.
I could go on and tell you how he inspired me and helped me improve my public speaking, which he did, but I won't. That is a story for another time. What I will tell you is that, while I am a sensitive person, I am not one who is moved to tears that often, but the two most recent times I have shed a tear are during Job's Stanford speech and today when I learned of his passing. I feel as though I lost a relative even though I have never met the man and he will be missed.
Rest in peace Mr. Jobs.
Thursday, October 6, 2011
Thursday, August 11, 2011
Part 8 - SLIP Versus PPP
Serial Line Internet Protocol (SLIP) is an older protocol that was used to connect computers over phone or serial lines. If you recall, the discussion on serial and parallel transmission, you will remember that computers have various serial ports. Well, two computers can be connected through their serial ports for simple serial communication. This serial connection can also occur over greater distance through a modem. When two computers link through modems, this creates the same type of serial connection as if the computers were connected through their serial ports [1].
A serial connection exists on the Physical Layer of the OSI model. As such there is no way to arrange the data for transmission. So engineers created SLIP to help arrange the data for serial transmission. This was an informal protocol that for a while became the de facto standard for serial transmission, but it was never adopted as a true TCP/IP protocol. In fact, when the Internet Engineering Task Force (IETF) finally described it in RFC 1055 in 1988, they made it perfectly clear that SLIP was "nonstandard" [1]. The protocol only provides Layer 2 framing when needed and does so in a very simple manner, so it was deemed that there was not enough going on to standardize it.
The way that SLIP frames data is that it simply appends a character to the end of each datagram to define its boundaries. It does not do much more than that, therefore error correction is not supported in SLIP [2]. Even before the IETF had issued RFC 1055, engineers were already working on a better protocol for directly connected computers and eventually came up with Point-to-Point Protocol (PPP), so SLIP is not used much anymore [1].
Point-to-Point Protocol provides services on both the Physical and Data Link Layer of the OSI model, which allows a modem to act as a network interface controller (NIC). Using several sub-protocols, PPP provides full Layer 2 connectivity through physically linked devices. These sub-protocols include, IP, IPX, and NetBEUI. Error checking and data compression are also supported making PPP faster and more reliable than SLIP [2]. The Point-to-Point protocol is pretty complex and I am not going to delve too deep into it for the sake of simplicity here, but if you are interested in learning more about it please check out the links. Suffice it to say that even though it is much more complex than SLIP, PPP has replaced SLIP for TCP/IP physical connections because of the much more robust service that it provides [2].
This concludes Part 8 of the the Data Transmission and Protocol series. In Part 9 I will clarify the difference between Hypertext Transfer Protocol (HTTP) and File Transfer Protocol (FTP). I know some of you are only a bit familiar with these two protocols. Anyone who has ever typed in a URL manually will at least have seen HTTP in the address. In Part 9 I will explain what it is and how it is used and give FTP the same considerations.
A serial connection exists on the Physical Layer of the OSI model. As such there is no way to arrange the data for transmission. So engineers created SLIP to help arrange the data for serial transmission. This was an informal protocol that for a while became the de facto standard for serial transmission, but it was never adopted as a true TCP/IP protocol. In fact, when the Internet Engineering Task Force (IETF) finally described it in RFC 1055 in 1988, they made it perfectly clear that SLIP was "nonstandard" [1]. The protocol only provides Layer 2 framing when needed and does so in a very simple manner, so it was deemed that there was not enough going on to standardize it.
The way that SLIP frames data is that it simply appends a character to the end of each datagram to define its boundaries. It does not do much more than that, therefore error correction is not supported in SLIP [2]. Even before the IETF had issued RFC 1055, engineers were already working on a better protocol for directly connected computers and eventually came up with Point-to-Point Protocol (PPP), so SLIP is not used much anymore [1].
Point-to-Point Protocol provides services on both the Physical and Data Link Layer of the OSI model, which allows a modem to act as a network interface controller (NIC). Using several sub-protocols, PPP provides full Layer 2 connectivity through physically linked devices. These sub-protocols include, IP, IPX, and NetBEUI. Error checking and data compression are also supported making PPP faster and more reliable than SLIP [2]. The Point-to-Point protocol is pretty complex and I am not going to delve too deep into it for the sake of simplicity here, but if you are interested in learning more about it please check out the links. Suffice it to say that even though it is much more complex than SLIP, PPP has replaced SLIP for TCP/IP physical connections because of the much more robust service that it provides [2].
This concludes Part 8 of the the Data Transmission and Protocol series. In Part 9 I will clarify the difference between Hypertext Transfer Protocol (HTTP) and File Transfer Protocol (FTP). I know some of you are only a bit familiar with these two protocols. Anyone who has ever typed in a URL manually will at least have seen HTTP in the address. In Part 9 I will explain what it is and how it is used and give FTP the same considerations.
[1] Kozierok, C. M. (2005). The TCP/IP Guide. Retrieved from http://bit.ly/qMaZ62
[2] What is SLIP/PPP?. (n.d.). Retrieved from http://sunsite.nus.edu.sg/pub/slip-ppp/whatis.html (no longer active)
Saturday, August 6, 2011
Part 7 - TCP Versus IP
In my last post I mentioned that there is a difference between TCP/IP, TCP, and IP. The difference is this: TCP and IP are Internet protocols and TCP/IP is a suite of Internet protocols. The TCP/IP suite includes not just the TCP and IP protocols, but also, dozens of other protocols such as, HTTP, POP, SMTP, and ISDN to name a few. I'm not going to elaborate on the meaning of those acronyms nor am I going to explain all of the protocols in the Internet Protocol Suite in this series. I will only be going over six of these starting with TCP and IP. So what are they?
Transmissions Control Protocol (TCP) and Internet Protocol (IP) were created by the Department of Defense(DoD) during the infancy of the Internet [1]. In 1983 the United States military invaded the island of Grenada in an operation called "Operation Urgent Fury," which was an attempt to protect and rescue US medical students who lived there. However, the military had a hard time finding the students due to lack of intelligence [2]. This lack of intelligence was caused in part by the inability of the different branches (Army, Navy, and Air Force) computer systems to communicate over the communications system (ARPANET) that the Defense Advanced Research Projects Agency (DARPA) had created and been using since the late 1960s [3].
The problem was that by law, defense contracts have to go to the lowest bidder. When each branch launched bids to build their systems, they did so separately, so three different companies won three different bids to build systems; Digital Equipment Corporation won the Army's bid, International Business Machines won the Air Force's bid, and Unisys won the Navy's bid. After the systems were built, each branch had an effective local area network (LAN), however, the LAN had trouble communicating to say the least, because there were no standards protocols set to allow them to. Each network operated independently, which led to the trouble with the joint military operation in Grenada [1].
This led to the DoD setting out to create protocols that would allow these independent networks to communicate as if they were a part of one big LAN. They wanted to create a language that would allow multiple LAN to communicate with one another creating a wide area network (WAN). Not only did this language make things like file transfers and email possible between branches, it provided a fail safe so that if any one LAN or phone line went down or was destroyed in battle, the WAN could still communicate without having to be rebuilt. Essentially, the WAN would self-recover [1].
Transmissions Control Protocol (TCP) provides guaranteed client/server transmission by supporting timeouts and re-transmissions when data is lost or errors occur. It is used when applications require guaranteed delivery of data. This protocol uses full-duplex transmission and each client is identified with an IP address and a TCP port number. Transmissions Control Protocol also provides basic data transfer, reliability, flow control, and multiplexing [6]. Essentially, TCP is the protocol that ensures that the illegal copy of Photoshop that you are downloading gets to your computer intact with no bits of the file missing. That way the cops have evidence that you did in fact download an illegal copy of Photoshop. Transmissions Control Protocol operates on Layer 4 of the OSI model also called the Transport layer. This is the Layer that is responsible for transmission and error checking [7].
Transmissions Control Protocol (TCP) and Internet Protocol (IP) were created by the Department of Defense(DoD) during the infancy of the Internet [1]. In 1983 the United States military invaded the island of Grenada in an operation called "Operation Urgent Fury," which was an attempt to protect and rescue US medical students who lived there. However, the military had a hard time finding the students due to lack of intelligence [2]. This lack of intelligence was caused in part by the inability of the different branches (Army, Navy, and Air Force) computer systems to communicate over the communications system (ARPANET) that the Defense Advanced Research Projects Agency (DARPA) had created and been using since the late 1960s [3].
The problem was that by law, defense contracts have to go to the lowest bidder. When each branch launched bids to build their systems, they did so separately, so three different companies won three different bids to build systems; Digital Equipment Corporation won the Army's bid, International Business Machines won the Air Force's bid, and Unisys won the Navy's bid. After the systems were built, each branch had an effective local area network (LAN), however, the LAN had trouble communicating to say the least, because there were no standards protocols set to allow them to. Each network operated independently, which led to the trouble with the joint military operation in Grenada [1].
This led to the DoD setting out to create protocols that would allow these independent networks to communicate as if they were a part of one big LAN. They wanted to create a language that would allow multiple LAN to communicate with one another creating a wide area network (WAN). Not only did this language make things like file transfers and email possible between branches, it provided a fail safe so that if any one LAN or phone line went down or was destroyed in battle, the WAN could still communicate without having to be rebuilt. Essentially, the WAN would self-recover [1].
Now with the history lesson out of the way, here's what each protocol does. On LAN, there are various protocols used to assign addresses to individual computers depending on what vendor is used to build the network. These protocols are generally not compatible with one another. In other words, LAN using Apple computers use Appletalk and LAN using Novell machines use IPX to communicate, but these two LAN could not communicate without a common protocol. Internet Protocol (IP) is that protocol. Internet Protocol is the main protocol used in Internet communications. Unique 4-byte (32-bit) addresses (with each byte having a value of 0-254) are provided for all computers on the network using IP and when I say unique, I mean unique. The intent of IP is to assign every computer in the world that is connected to the Internet a different IP address [1]. That is how the cops can find you if you download that illegal copy of Photoshop (I kid of course. I know none of you would do anything illegal). This is done to ensure that the data is being sent to the right computer.
"Wait! Every computer in the world? Surely there are more computers in the world than can be provided for with a 4-byte address." Well, each byte has a value of 0-254 or 255 possible combinations for just the one byte. Since we are combining four bytes that makes 2554 or 4,228,250,625 unique addresses. Although some of these addresses are reserved, 4.2 billion is a lot of computers. Despite that, IP addresses are in fact running out [4]. The IP we have been using is referred to as "IPv4" or Internet Protocol version 4, and most of us do have a IPv4 address, but since around 2005 or so IPv6 has been rolling out all over the world. IPv6 provides 128-bit addresses [5]. Since as we know, a bit can only be a one or a zero, that would make 2128 or 3.4x1038 different combinations.
But I digress. We were discussing how IP works. In addition to assigning each computer a unique identifying address, transmitted data is organized into packets with a header that contains source and destination IP addresses as well as other information about the data. This helps TCP do its job which we will get to in a minute. Internet Protocol operates on Layer 3 of the Open Systems Interconnection (OSI) model, which allows it to function on different mediums such as Ethernet or Wi-Fi [6]. I do not want to delve into a discussion of the OSI model as it is beyond the scope of this series, but just so you know, Layer 3 is the the level on which LAN communication and routing occurs. In other words, we just have LAN only transmissions and preparation for WAN transmission occurring on this Layer, no interpretation or application of data goes on [7].
"Wait! Every computer in the world? Surely there are more computers in the world than can be provided for with a 4-byte address." Well, each byte has a value of 0-254 or 255 possible combinations for just the one byte. Since we are combining four bytes that makes 2554 or 4,228,250,625 unique addresses. Although some of these addresses are reserved, 4.2 billion is a lot of computers. Despite that, IP addresses are in fact running out [4]. The IP we have been using is referred to as "IPv4" or Internet Protocol version 4, and most of us do have a IPv4 address, but since around 2005 or so IPv6 has been rolling out all over the world. IPv6 provides 128-bit addresses [5]. Since as we know, a bit can only be a one or a zero, that would make 2128 or 3.4x1038 different combinations.
But I digress. We were discussing how IP works. In addition to assigning each computer a unique identifying address, transmitted data is organized into packets with a header that contains source and destination IP addresses as well as other information about the data. This helps TCP do its job which we will get to in a minute. Internet Protocol operates on Layer 3 of the Open Systems Interconnection (OSI) model, which allows it to function on different mediums such as Ethernet or Wi-Fi [6]. I do not want to delve into a discussion of the OSI model as it is beyond the scope of this series, but just so you know, Layer 3 is the the level on which LAN communication and routing occurs. In other words, we just have LAN only transmissions and preparation for WAN transmission occurring on this Layer, no interpretation or application of data goes on [7].
This concludes Part 7 of the the Data Transmission and Protocol series. In Part 8 I will explain Serial Line Internet Protocol and Point-To-Point Protocol. After reading Part 8 you will understand why PPP is so widely used while SLIP is barely used at all.
[1] Gilbert, H. (1995). Introduction to TCP/IP. Retrieved from http://bit.ly/pSChlt
[2] Military Advantage. (2011). Invasion of Granada: Operation Urgent Fury. Retrieved from http://bit.ly/nNfhaA
[3] Howe, W. (2010). A brief history of the Internet. Retrieved from http://bit.ly/qUfkcb
[4] Huston, G. (2011). IPv4 Address Report. Retrieved from August 4, 2011 http://bit.ly/n4OZ78
[5] Das, K. (2008). IPv6 deployment around the world. Retrieved from http://bit.ly/oIH9lK
[6] Mitchell, B. (2010). IP - Internet Protocol. Retrieved from http://bit.ly/qTodlE
[7] Tomsho, G., Tittel, E., & Johnson, G. (2004). Guide to networking essentials. Thomson Course Technology: Boston, MA. ISBN-13: 978-1-4188-3718-1
Thursday, August 4, 2011
Part 6 - Serial and Parallel Transmission
Serial and parallel transmissions are another way that computers communicate and are usually used in peripheral communication. With serial communication bits are sent one at a time over the medium, but since processors handle data in parallel, communication controllers are used for conversion. This conversion is done using a shift register. The way a shift register works is it takes bits in parallel chunks and with the use of a clock sends each bit out one at a time to the serial device. The same is done in reverse with serial data coming back from the device. The shift register takes one bit at a time until it fills up the register then sends the parallel chunk to the processor [1]. Serial communication is used between your computer and monitor. That somewhat rectangular port with nine pins that you plug your monitor into on the back of your computer is a serial port. Another type of serial port you might use are the small round ones with six pins that you plug your keyboard and mouse into. These are called PS/2 ports. However, some of you might use a USB mouse, but guess what? That's serial communication too. USB stands for Universal Serial Bus. Anything you plug into a USB port is using serial communication.
Parallel transmissions are used to communicate with devices capable of parallel communication. With this mode of transmission a communication controller is not needed. Instead, the processor transmits bits simultaneously through a parallel medium like a ribbon cable. This mode of transmission is obviously faster, but it is subject to interference because the wires run in parallel and signal leakage (crosstalk) can cause corruption of the data especially at higher speeds [1]. If you are as old as me you might remember the old serial printers with the big fat ribbon cable. These aren't used too much any more as USB printers have become more common, but you probably still have a serial port on the back of your computer. It's that long, somewhat rectangular one with 25 pins. Aside from a few specialized devices, printers are about the only things that use that port, but that does not mean that your computer doesn't use parallel communication if don't have anything plugged into that port. Inside your computer you may find at least one parallel device; your hard drive or CD/DVD drive. Many internal hard drives use a 40-pin Parallel Advanced Technology Attachment (PATA) connection. Some optical drives also uses PATA connections, but I think Serial ATA (SATA) connections are becoming the standard for these devices. That said, there are still a lot of older computers out there using the PATA drives. I see them all the time. In fact, someone reading this right now probably has one in the computer they are reading it on.
There is also a form of parallel transmission that is done through a single line. This is similar to broadband in that the line’s bandwidth is divide into channels of differing frequency and each bit is sent down a channel [1]. This type of parallel transmission is often used in fiber optics, which is a huge topic on its own, so I will leave that for discussion another day.
To control data flow in serial or parallel communication Xon/Xoff protocol is used. To illustrate how Xon/Xoff works, computer/printer communication can be used as an example. When a computer sends data to a printer, the data often comes faster than the printer can print it. Therefore, most printers have a small buffer to store incoming data until it can be printed. When this buffer fills up, the printer sends an Xoff signal to the computer which tells it to stop transmitting data. When the printer catches up and clears some of the buffer it sends an Xon signal telling the computer to resume sending data. Modems may also use Xon/Xoff in a similar fashion when communicating with a computer’s operating system ("Xon/Xoff", 2010).
This concludes Part 6 of the the Data Transmission and Protocol series. Part 7 begins the protocol section of the series. It seems fitting that the first set of protocols I will discuss were be the earliest protocols defined for Internet transmission; Transmissions Control Protocol (TCP) and Internet Protocol (IP). I have run into some that say, "Don't you mean TCP/IP?" My answer? "No." TCP, IP, and TCP/IP are three completely different things. If you don't understand, you will after reading Part 7.
Parallel transmissions are used to communicate with devices capable of parallel communication. With this mode of transmission a communication controller is not needed. Instead, the processor transmits bits simultaneously through a parallel medium like a ribbon cable. This mode of transmission is obviously faster, but it is subject to interference because the wires run in parallel and signal leakage (crosstalk) can cause corruption of the data especially at higher speeds [1]. If you are as old as me you might remember the old serial printers with the big fat ribbon cable. These aren't used too much any more as USB printers have become more common, but you probably still have a serial port on the back of your computer. It's that long, somewhat rectangular one with 25 pins. Aside from a few specialized devices, printers are about the only things that use that port, but that does not mean that your computer doesn't use parallel communication if don't have anything plugged into that port. Inside your computer you may find at least one parallel device; your hard drive or CD/DVD drive. Many internal hard drives use a 40-pin Parallel Advanced Technology Attachment (PATA) connection. Some optical drives also uses PATA connections, but I think Serial ATA (SATA) connections are becoming the standard for these devices. That said, there are still a lot of older computers out there using the PATA drives. I see them all the time. In fact, someone reading this right now probably has one in the computer they are reading it on.
There is also a form of parallel transmission that is done through a single line. This is similar to broadband in that the line’s bandwidth is divide into channels of differing frequency and each bit is sent down a channel [1]. This type of parallel transmission is often used in fiber optics, which is a huge topic on its own, so I will leave that for discussion another day.
To control data flow in serial or parallel communication Xon/Xoff protocol is used. To illustrate how Xon/Xoff works, computer/printer communication can be used as an example. When a computer sends data to a printer, the data often comes faster than the printer can print it. Therefore, most printers have a small buffer to store incoming data until it can be printed. When this buffer fills up, the printer sends an Xoff signal to the computer which tells it to stop transmitting data. When the printer catches up and clears some of the buffer it sends an Xon signal telling the computer to resume sending data. Modems may also use Xon/Xoff in a similar fashion when communicating with a computer’s operating system ("Xon/Xoff", 2010).
This concludes Part 6 of the the Data Transmission and Protocol series. Part 7 begins the protocol section of the series. It seems fitting that the first set of protocols I will discuss were be the earliest protocols defined for Internet transmission; Transmissions Control Protocol (TCP) and Internet Protocol (IP). I have run into some that say, "Don't you mean TCP/IP?" My answer? "No." TCP, IP, and TCP/IP are three completely different things. If you don't understand, you will after reading Part 7.
[1] Kioskea. (2008). Data transmission - Transmission modes. Retrieved from http://bit.ly/pu9GeN
[2] Xon/Xoff. (2010). In Computer, Telephony & Electronics Industry Glossary. Retrieved from http://bit.ly/nTRyCj
Wednesday, August 3, 2011
Part 5 - Baseband and Broadband Transmission
Baseband and broadband are two ways to send signals over cables. Baseband transmission is most often used in networking transmission. Baseband takes data, encodes it digitally, and sends the digital signal at a fixed frequency over the medium as electrical or light pulses. The signal uses the entire bandwidth of the medium so is automatically half-duplex unless a second line is used. Repeaters are often used in baseband transmissions to strengthen signals and clean up signal degradation over longer lengths of line [1].
"Wait I thought you said, 'digital signals were not subject to signal degradation'?" This is true as long as the medium is also digital, like a CD. However, notice that the digital signal is sent "at a fixed frequency." This indicates an analog medium. Think of it like this: One bit of data is either a one or a zero. To signal a one let's say that the pulse has to be between 3-5 kHz and anything lower is a zero. That one bit alone is an analog signal. However, all the bits as a whole is a digital signal. As this bit travels over the medium is is being subjected to degradation of the frequency. The further it travels, the more it degrades to the point where it will eventually be interpreted as a zero instead of a one. Each bit is subjected to the same degradation. Some might experience less, some might experience more, but all degrade which is why repeaters are used over longer lines. It is also worth mentioning that repeaters are also used for wireless signals as well and they work in much the same way. Before things start getting confused, let me point something out. Data that is sent out from your computer is always digital and the medium that it travels on is almost always analog.
Now, with broadband transmission, data is transmitted as a continuous electromagnetic or optical wave (see an analog wave instead of a digital pulse) [1]. This is a form of analog signaling and as mentioned in Part 3, can be divided into channels, over which different data can be transmitted. This is called multiplexing, or more specifically, frequency division multiplexing (FDM). Briefly, FDM divides the medium into two or more channels of different frequencies. These channels are combined into an aggregate frequency that can be sent over the medium. Each channel is separated from one another by an unused frequency so that data from one frequency does not bleed into the one next to it. This is called "crosstalk" and the unused frequencies are called "guard bands" [2]. Falling back to the busy street example you could think of the guard bands as concrete barriers between the lanes. They keep all cars (data) in their proper lane (channel).
Now, the receivers must have some means to dial into the right channel, like the cable box you have for your TV and the cable modem you use for your computer. Cable companies use broadband to deliver hundreds of channels and high-speed Internet to customers. Broadband transmissions are also half-duplex. However, two methods are used to create full-duplex broadband. One is called mid-split broadband which splits bandwidth into two groups of channels, one for sending and one for receiving. The other method is called dual-cable broadband, which just as its name implies, uses a transmission cable and receiver cable. Similarly to baseband, broadband has a way to improve transmission distances. Amplifiers detect and amplify weak signals then rebroadcast then to the next section of line [1].
Since, baseband signals are of very low frequencies, they are not good for transmitting over large distances because degradation is much more pronounced in low frequency waves. However, baseband is very efficient over short distances and is therefore commonly used in local area network (LAN) communication. In addition, baseband does not have to be modulated into an analog signal, so less equipment is needed to communicate between devices. The Ethernet cable that you have going from your modem to your computer or router is a baseband line. Most office networks are set up on a baseband network with a broadband connection to the Internet.
Broadband uses much higher frequencies and therefore is much better for transmitting over long distances. Wide area networks (WAN) use broadband to communicate. In fact, the whole Internet is really just one big WAN. Broadband is generally faster than baseband, but only because of the multiple signals factor. The data is really traveling in general at about the same rate. It's just that more signals can be passed through broadband and therefore, the resulting data transfer rate is higher. However, broadband is more expensive to implement due to the equipment involved and cost of service. Since broadband travels over cables that are buried underground and are usually owned by another entity, you have to pay to use them. Since baseband does not require much special equipment and because you can run the lines above ground, it is much less expensive to implement [3], not to mention that you own the lines.
This concludes the Part 5 of the the Data Transmission and Protocol series. In Part 6 I will go over the final set of transmission methods, serial and parallel. These transmission methods are generally used in peripheral communication. How does your computer communicate with your monitor? How about the printer? You will know after reading Part 6. Then in Part 7 I will begin contrasting and explaining protocols starting with Transmission Control Protocol and Internet Protocol.
"Wait I thought you said, 'digital signals were not subject to signal degradation'?" This is true as long as the medium is also digital, like a CD. However, notice that the digital signal is sent "at a fixed frequency." This indicates an analog medium. Think of it like this: One bit of data is either a one or a zero. To signal a one let's say that the pulse has to be between 3-5 kHz and anything lower is a zero. That one bit alone is an analog signal. However, all the bits as a whole is a digital signal. As this bit travels over the medium is is being subjected to degradation of the frequency. The further it travels, the more it degrades to the point where it will eventually be interpreted as a zero instead of a one. Each bit is subjected to the same degradation. Some might experience less, some might experience more, but all degrade which is why repeaters are used over longer lines. It is also worth mentioning that repeaters are also used for wireless signals as well and they work in much the same way. Before things start getting confused, let me point something out. Data that is sent out from your computer is always digital and the medium that it travels on is almost always analog.
Now, with broadband transmission, data is transmitted as a continuous electromagnetic or optical wave (see an analog wave instead of a digital pulse) [1]. This is a form of analog signaling and as mentioned in Part 3, can be divided into channels, over which different data can be transmitted. This is called multiplexing, or more specifically, frequency division multiplexing (FDM). Briefly, FDM divides the medium into two or more channels of different frequencies. These channels are combined into an aggregate frequency that can be sent over the medium. Each channel is separated from one another by an unused frequency so that data from one frequency does not bleed into the one next to it. This is called "crosstalk" and the unused frequencies are called "guard bands" [2]. Falling back to the busy street example you could think of the guard bands as concrete barriers between the lanes. They keep all cars (data) in their proper lane (channel).
Now, the receivers must have some means to dial into the right channel, like the cable box you have for your TV and the cable modem you use for your computer. Cable companies use broadband to deliver hundreds of channels and high-speed Internet to customers. Broadband transmissions are also half-duplex. However, two methods are used to create full-duplex broadband. One is called mid-split broadband which splits bandwidth into two groups of channels, one for sending and one for receiving. The other method is called dual-cable broadband, which just as its name implies, uses a transmission cable and receiver cable. Similarly to baseband, broadband has a way to improve transmission distances. Amplifiers detect and amplify weak signals then rebroadcast then to the next section of line [1].
Since, baseband signals are of very low frequencies, they are not good for transmitting over large distances because degradation is much more pronounced in low frequency waves. However, baseband is very efficient over short distances and is therefore commonly used in local area network (LAN) communication. In addition, baseband does not have to be modulated into an analog signal, so less equipment is needed to communicate between devices. The Ethernet cable that you have going from your modem to your computer or router is a baseband line. Most office networks are set up on a baseband network with a broadband connection to the Internet.
Broadband uses much higher frequencies and therefore is much better for transmitting over long distances. Wide area networks (WAN) use broadband to communicate. In fact, the whole Internet is really just one big WAN. Broadband is generally faster than baseband, but only because of the multiple signals factor. The data is really traveling in general at about the same rate. It's just that more signals can be passed through broadband and therefore, the resulting data transfer rate is higher. However, broadband is more expensive to implement due to the equipment involved and cost of service. Since broadband travels over cables that are buried underground and are usually owned by another entity, you have to pay to use them. Since baseband does not require much special equipment and because you can run the lines above ground, it is much less expensive to implement [3], not to mention that you own the lines.
This concludes the Part 5 of the the Data Transmission and Protocol series. In Part 6 I will go over the final set of transmission methods, serial and parallel. These transmission methods are generally used in peripheral communication. How does your computer communicate with your monitor? How about the printer? You will know after reading Part 6. Then in Part 7 I will begin contrasting and explaining protocols starting with Transmission Control Protocol and Internet Protocol.
[1] Tomsho, G., Tittel, E., & Johnson, G. (2004). Guide to networking essentials. Thomson Course Technology: Boston, MA. ISBN-13: 978-1-4188-3718-1
[2] General Telecom. (1998). Multiplexing Techniques. Retrieved from http://bit.ly/mTPngG
[3] James, E. (2010). Broadband. Retrieved from http://bit.ly/oZRc2t
[3] James, E. (2010). Broadband. Retrieved from http://bit.ly/oZRc2t
Tuesday, August 2, 2011
Part 4 - Simplex and Duplex Transmission
In any transmission, data can flow in one of three ways, simplex, half-duplex, and full-duplex. When a simplex transmission is referred to this means data only flows in one direction over the medium [1]. A simple example of simplex communication is that which occurs between a mouse and the computer. The mouse has no need for any information from the computer, so it can just constantly transmit data to the computer on its movement and button actions, which the computer can translate and convert into cursor movements and other functions.
In half-duplex transmissions, data can flow in both directions over the medium, but only in one direction at a time [1]. A classic example of half-duplex communication is two-way radios. When using a two-way radio, only one person can speak at a time. If signals are sent simultaneously, they collide and neither receiver gets the information. Half-duplex transmissions are usually synchronous [2] because in order for the information to be exchanged reliably, the transmissions must be timed and in sync. Half-duplex transmission also use the full bandwidth of the medium [3].
Finally, when transmissions are full-duplex, this means that information can be sent in both directions simultaneously [1]. Telephone communication is the most common example of full-duplex communication. Full-duplex transmissions are usually asynchronous [2]. Since data can flow in both directions there is less need to time and synchronize the transmission, data can be sent and received "on-demand". In addition, with full-duplex transmissions bandwidth is divided so that data can flow in both directions over the same medium [3].
This concludes the Part 4 of the the Data Transmission and Protocol series. I spoke a bit about bandwidth in this part, so in Part 5 I be discussing baseband and broadband transmissions. Baseband and broadband are two sides of the same coin and often can dictate the way in which you set up a network. After reading Part 5 you will know the difference between the two as well as their capabilities and limitations.
[1] Tomsho, G., Tittel, E., & Johnson, G. (2004). Guide to networking essentials. Thomson Course Technology: Boston, MA. ISBN-13: 978-1-4188-3718-1
[2] InetDaemon Enterprises. (2010). Asynchronous vs. synchronous. Retrieved from http://bit.ly/pOhOl8
[3] Kioskea. (2008). Data transmission - Transmission modes. Retrieved from http://bit.ly/pu9GeN
In half-duplex transmissions, data can flow in both directions over the medium, but only in one direction at a time [1]. A classic example of half-duplex communication is two-way radios. When using a two-way radio, only one person can speak at a time. If signals are sent simultaneously, they collide and neither receiver gets the information. Half-duplex transmissions are usually synchronous [2] because in order for the information to be exchanged reliably, the transmissions must be timed and in sync. Half-duplex transmission also use the full bandwidth of the medium [3].
Finally, when transmissions are full-duplex, this means that information can be sent in both directions simultaneously [1]. Telephone communication is the most common example of full-duplex communication. Full-duplex transmissions are usually asynchronous [2]. Since data can flow in both directions there is less need to time and synchronize the transmission, data can be sent and received "on-demand". In addition, with full-duplex transmissions bandwidth is divided so that data can flow in both directions over the same medium [3].
Regarding bandwidth . . . In general, full-duplex transmissions are going to require more than twice the bandwidth of simplex and half-duplex transmission. I say in general because there are cases where transmissions require very little bandwidth in the first place, so full-duplex transmissions experience very little hit in performance in these cases. However, in cases where large amounts of data are being sent in both directions, low bandwidth mediums are going to prove inadequate. I fall back to online gaming as being a good example of this, which is why most popular online games require a broadband connection to play, although they may not require a full-duplex connection. You will understand this more after reading Part 5 on Baseband and Broadband Transmission.
Think of it like this: Let's say we have a four-lane, one-way street in a busy city. All four lanes are consistently full and travelling in one direction. This is how simplex transmission works. The four lanes are your bandwidth and the cars are your data.
Now take that same four-lane street and make a law that says that every other day the traffic can travel in the other direction. This is a physical example of half-duplex transmission. Again, the lanes are your bandwidth, cars are your data, but this time we have a law, which represents a protocol (more on protocols in future posts). Notice what happened though. Even though our cars can still use the full four lanes available to travel in one direction, the amount of traffic that can can travel in one direction has been reduced by the law. Likewise, half-duplex is going to reduce the amount of data that can travel over the medium when compared to simplex communication. So even though the same amount of data is being transferred over all, only half the data is being transferred in either direction.
Now again, let's take that same four-lane street and say, "okay we are going to make this a two-way street." Now cars can travel either way at the same time and we are going to discard the old law and create a new one that says, "cars must stay in the right two lanes relative to the direction they are travelling" to avoid collisions. This is a physical example of full-duplex transmission. Things all remain the same, except the type of transmission and the protocol have changed. Now notice how the traffic or amount of data being exchanged has changed. Essentially the same amount of data is being transferred in either direction, i.e in a two-day period, four lanes in one direction with a one day wait = two lanes in one direction with no wait. However, there are more things to consider. Even though we are transferring at the same rate, look at the congestion we have created by making the street two-way. What was a busy, but efficient one-way-only or one-way-every-other-day street, is now a clogged-up two-way street. And even though we have a new protocol intended to prevent collisions, due to congestion, collisions are highly likely to occur as traffic tries to get to where it is supposed to be going. Therefore, even though half and full-duplex can send at the same rate over a period of time, the rate at any given instant is at least half and maybe even more due to congestion. So in situations where you will be switching to full-duplex transmission, bandwidth is definitely plays a factor.
This concludes the Part 4 of the the Data Transmission and Protocol series. I spoke a bit about bandwidth in this part, so in Part 5 I be discussing baseband and broadband transmissions. Baseband and broadband are two sides of the same coin and often can dictate the way in which you set up a network. After reading Part 5 you will know the difference between the two as well as their capabilities and limitations.
[1] Tomsho, G., Tittel, E., & Johnson, G. (2004). Guide to networking essentials. Thomson Course Technology: Boston, MA. ISBN-13: 978-1-4188-3718-1
[2] InetDaemon Enterprises. (2010). Asynchronous vs. synchronous. Retrieved from http://bit.ly/pOhOl8
[3] Kioskea. (2008). Data transmission - Transmission modes. Retrieved from http://bit.ly/pu9GeN
Monday, August 1, 2011
Part 3 - Analog and Digital Signals
Telecommunication, whether it is data, voice, or some other type of transmission, occurs over two types of signals. The earliest transmission signaling is analog. Analog technology takes the data (or audio, video, etc.) and converts it into electronic pulses or radio waves depending on the medium over which the information is travelling. On the contrary, digital technology takes information and converts it into binary data. Binary data consists of just zeroes and ones so much more data can be crammed into a digital signal than an analog signal [1].
In the early years of computing, there was no way to transmit a digital signal directly over an analog medium. Therefore, engineers designed the MODEM which takes a digital signal from a computer and converts it to an analog signal (modulates; “MO”) that can be sent over the phone lines. The modem on the receiving end takes the analog signal and converts it back to a digital signal (demodulates; “DEM”) that the computer can understand [1]. Although analog transmission is still used, many devices are switching to digital signals; telephones and television being two examples. However, analog is still important in modern telecommunications. In fact, anytime frequency is mentioned in relating to data transmission, such as 2.4 GHz wireless signal, analog signals are being used.
The easiest way to illustrate the difference between digital and analog signals is by using sound as an example. When you hold a note with your voice, you produce a sound wave that can be recorded. When you record that sound wave on an analog medium, such as a cassette tape, the wave is duplicated exactly as it is. That is to say that every point in that sound wave is captured and recorded to an infinite degree, so when played back the wave is reproduced exactly as it was created. This creates a richness in sound that has audiophiles pining for the days of vinyl records.
Now if you were to do the same thing and record the sound wave digitally, the wave has to be turned into a series of ones and zeros called bits. In order to do this, the recording device has to take a number of quick snapshots of the wave with each snapshot representing a one or a zero. This is called a sampling rate. Since we are taking a certain number of snapshots at timed intervals, some of the sound wave is lost. The higher your sampling rate, the less space between snapshots and the more of the wave you will capture, therefore, the richer the wave will sound. Compact discs typically have a sampling rate of 44.1 kHz or around 44,000 bits per second. For most humans, this is a high enough threshold that the ear cannot tell the difference, but some folks insist that they can.
One of the biggest advantages of digital signaling is that there is no degradation of the signal due to signal noise. Since a digital signal is just a static series of numbers, as long as those numbers can be read, the signal remains intact regardless of any noise introduced into the transmission medium. Since, each one and each zero only has to be within a certain electronic threshold, noise spikes are very unlikely to affect the signal. However, with analog, noise introduced into the transmission medium can corrupt the signal because each noise spike disrupts the natural wave of the signal. The more distance an analog signal has to cover, the more noise that can get introduced in to the signal. Think about when you travel out of range of a radio station. The further you get from the station's broadcast tower the more static or even other signals you start to hear. The same thing holds true for any other analog signal. For example, many of you probably use WiFi on your computers. You may notice that sometimes your Internet connection is faster than it is at other times. This is often because of signal degradation. Just about every electronic device in your home gives off some sort of electromagnetic frequency that can interfere with your WiFi signal, thus degrading it. While analog may give you a more precise representation of the signal, digital is less prone to degradation. So, if an analog medium is being used to transmit digital data, it is important to protect this data from degradation which is why protocols are so important. I will be talking about protocols more specifically starting in Part 7 (and yes I did miscalculate how many parts this series will be. The new count is 9).
However, analog signals do have one important advantage of digital signals. Since analog signals can are sent as a frequency, we can adjust that frequency so that it can fit within a single medium along with other signals. By dividing the medium into channels, we can allow analog signals to travel in ether direction at the same time. This is called "full-duplex" signaling. Digital signals cannot do this because they have to use the entire bandwidth of the medium to send pulses. So this means that if you send a digital signal it has to be either simplex or half-duplex and it can only travel in one direction at a time. I will be talking about simplex and duplex transmissions in Part 4. Until then I will continue explaining transmission methods.
This concludes the Part 3 of the the Data Transmission and Protocol series. In Part 4 I will go over simplex and duplex transmission. These types of transmissions are not as complicated as they sound, and once explained you will have no trouble telling the difference between simplex, half-duplex and full-duplex, which, for engineers, should increase your understanding of which type should be used in a given situation.
[1] Wotel, P. (2004). Analog. Digital. What’s the difference?. Retrieved from http://bit.ly/p8R7i3
In the early years of computing, there was no way to transmit a digital signal directly over an analog medium. Therefore, engineers designed the MODEM which takes a digital signal from a computer and converts it to an analog signal (modulates; “MO”) that can be sent over the phone lines. The modem on the receiving end takes the analog signal and converts it back to a digital signal (demodulates; “DEM”) that the computer can understand [1]. Although analog transmission is still used, many devices are switching to digital signals; telephones and television being two examples. However, analog is still important in modern telecommunications. In fact, anytime frequency is mentioned in relating to data transmission, such as 2.4 GHz wireless signal, analog signals are being used.
The easiest way to illustrate the difference between digital and analog signals is by using sound as an example. When you hold a note with your voice, you produce a sound wave that can be recorded. When you record that sound wave on an analog medium, such as a cassette tape, the wave is duplicated exactly as it is. That is to say that every point in that sound wave is captured and recorded to an infinite degree, so when played back the wave is reproduced exactly as it was created. This creates a richness in sound that has audiophiles pining for the days of vinyl records.
Now if you were to do the same thing and record the sound wave digitally, the wave has to be turned into a series of ones and zeros called bits. In order to do this, the recording device has to take a number of quick snapshots of the wave with each snapshot representing a one or a zero. This is called a sampling rate. Since we are taking a certain number of snapshots at timed intervals, some of the sound wave is lost. The higher your sampling rate, the less space between snapshots and the more of the wave you will capture, therefore, the richer the wave will sound. Compact discs typically have a sampling rate of 44.1 kHz or around 44,000 bits per second. For most humans, this is a high enough threshold that the ear cannot tell the difference, but some folks insist that they can.
One of the biggest advantages of digital signaling is that there is no degradation of the signal due to signal noise. Since a digital signal is just a static series of numbers, as long as those numbers can be read, the signal remains intact regardless of any noise introduced into the transmission medium. Since, each one and each zero only has to be within a certain electronic threshold, noise spikes are very unlikely to affect the signal. However, with analog, noise introduced into the transmission medium can corrupt the signal because each noise spike disrupts the natural wave of the signal. The more distance an analog signal has to cover, the more noise that can get introduced in to the signal. Think about when you travel out of range of a radio station. The further you get from the station's broadcast tower the more static or even other signals you start to hear. The same thing holds true for any other analog signal. For example, many of you probably use WiFi on your computers. You may notice that sometimes your Internet connection is faster than it is at other times. This is often because of signal degradation. Just about every electronic device in your home gives off some sort of electromagnetic frequency that can interfere with your WiFi signal, thus degrading it. While analog may give you a more precise representation of the signal, digital is less prone to degradation. So, if an analog medium is being used to transmit digital data, it is important to protect this data from degradation which is why protocols are so important. I will be talking about protocols more specifically starting in Part 7 (and yes I did miscalculate how many parts this series will be. The new count is 9).
However, analog signals do have one important advantage of digital signals. Since analog signals can are sent as a frequency, we can adjust that frequency so that it can fit within a single medium along with other signals. By dividing the medium into channels, we can allow analog signals to travel in ether direction at the same time. This is called "full-duplex" signaling. Digital signals cannot do this because they have to use the entire bandwidth of the medium to send pulses. So this means that if you send a digital signal it has to be either simplex or half-duplex and it can only travel in one direction at a time. I will be talking about simplex and duplex transmissions in Part 4. Until then I will continue explaining transmission methods.
This concludes the Part 3 of the the Data Transmission and Protocol series. In Part 4 I will go over simplex and duplex transmission. These types of transmissions are not as complicated as they sound, and once explained you will have no trouble telling the difference between simplex, half-duplex and full-duplex, which, for engineers, should increase your understanding of which type should be used in a given situation.
[1] Wotel, P. (2004). Analog. Digital. What’s the difference?. Retrieved from http://bit.ly/p8R7i3
Saturday, July 30, 2011
Part 2 - Asynchronous and Synchronous Transmission
In asynchronous communication, there is no synchronization between the clients. The sending computer just sends a continuous stream of data to the receiving computer [1]. Connection parameters are not negotiated before transmission of the data, so “Asynchronous is sometimes called ‘best effort’ transmission because one side simply transmits, and the other does it's [sic] best to receive” [2]. The receiver does receive some help from the sender. The stream is embedded with start and stop bits to help the receiver coordinate the data. In addition, the modem handles error control using parity bits. A parity bit is a one or a zero at the end of each fragment of data. The number of ones in the fragment of data determines the parity bit. If the total number of ones in the fragment is odd, then the parity bit will be a one, if the number is even then the parity bit will be a zero. The receiving modem counts the number of ones in the fragment then compares that to the parity bit. If there is a mismatch then the modem sends a request for a retransmission [1].
Synchronous transmission is essentially the opposite. Connections are established and a protocol is used to coordinate the transmission. The protocols used in synchronous transmission are “Synchronous Data Link Control, High-level Data Link Control, and Binary Synchronous (bisync) communications. These protocols format the data into blocks, add control information, and check the information for errors” [1]. Since these protocols function on the Data Link Layer instead of the Physical Layer like asynchronous transmissions, error detection and correction is more sophisticated and accurate. Timing is also used to coordinate the transmission. Instead of start and stop bits, groups of bits (frames) are separated by a timing scheme. To ensure that the computers stay in sync, occasionally “synch bits” are sent in the transmission. According to Tomsho et al., “Asynchronous (async) communication is the most popular for communicating with a modem because it uses regular telephone lines” [1]. This statement is a testament to how fast telecommunications technology has come in seven years since DSL and cable is now the most popular standard for data transmission.
There are some obvious pros and cons to each transmission method, the main ones being speed and reliability. Asynchronous transmission can be considerably faster than synchronous transmission in most cases since data is capable of flowing in either direction simultaneously using full-duplex transmission (I will explain simplex and duplex transmission in part 4). However, asynchronous transmission has no error control and data can be lost or dropped. This is especially true with full-duplex transmissions because there is more chance for data "collisions" to occur. Synchronous transmission is therefore more reliable yet slower. Since data is organized into predetermined chunks and sent with a predefined timing (usually using half-duplex transmission), there is much less chance for data loss or corruption. Add in more sophisticated and accurate error detection and intermittent transmissions to keep the computers in sync, and you have a highly reliable method to transmit data. So in practical terms, it is best to use synchronous transmission when data integrity is vital and asynchronous when speed is more important than data integrity. For example, asynchronous transmission is often used in online gaming because the game state is changing so fast and often that the loss of a few bits of data is of little consequence since it is rapidly replaced. Conversely, synchronous transmission is often used during file transfer and in peer-to-peer applications since data integrity is much more important.
So far I have been referring to synchronous and asynchronous transmissions as they specifically apply to network communication, but there is application of the same concepts in the realm of software engineering when we see the use of threading. However, threading exceeds the scope of this article so I will not go into it here. Perhaps it would make a good discussion topic to have within the comments of this post.
This concludes the Part 2 of the the Data Transmission and Protocol series. In part three, I will be discussing analog and digital signals. Very interesting if you have ever wondered "what is the difference between the music that comes from a CD versus that which comes from a vinyl record?"
Resources:
[1] Tomsho, G., Tittel, E., & Johnson, G. (2004). Guide to networking essentials. Thomson Course Technology: Boston, MA. ISBN-13: 978-1-4188-3718-1
[2] InetDaemon Enterprises. (2010). Asynchronous vs. synchronous. Retrieved from http://bit.ly/pOhOl8
Synchronous transmission is essentially the opposite. Connections are established and a protocol is used to coordinate the transmission. The protocols used in synchronous transmission are “Synchronous Data Link Control, High-level Data Link Control, and Binary Synchronous (bisync) communications. These protocols format the data into blocks, add control information, and check the information for errors” [1]. Since these protocols function on the Data Link Layer instead of the Physical Layer like asynchronous transmissions, error detection and correction is more sophisticated and accurate. Timing is also used to coordinate the transmission. Instead of start and stop bits, groups of bits (frames) are separated by a timing scheme. To ensure that the computers stay in sync, occasionally “synch bits” are sent in the transmission. According to Tomsho et al., “Asynchronous (async) communication is the most popular for communicating with a modem because it uses regular telephone lines” [1]. This statement is a testament to how fast telecommunications technology has come in seven years since DSL and cable is now the most popular standard for data transmission.
There are some obvious pros and cons to each transmission method, the main ones being speed and reliability. Asynchronous transmission can be considerably faster than synchronous transmission in most cases since data is capable of flowing in either direction simultaneously using full-duplex transmission (I will explain simplex and duplex transmission in part 4). However, asynchronous transmission has no error control and data can be lost or dropped. This is especially true with full-duplex transmissions because there is more chance for data "collisions" to occur. Synchronous transmission is therefore more reliable yet slower. Since data is organized into predetermined chunks and sent with a predefined timing (usually using half-duplex transmission), there is much less chance for data loss or corruption. Add in more sophisticated and accurate error detection and intermittent transmissions to keep the computers in sync, and you have a highly reliable method to transmit data. So in practical terms, it is best to use synchronous transmission when data integrity is vital and asynchronous when speed is more important than data integrity. For example, asynchronous transmission is often used in online gaming because the game state is changing so fast and often that the loss of a few bits of data is of little consequence since it is rapidly replaced. Conversely, synchronous transmission is often used during file transfer and in peer-to-peer applications since data integrity is much more important.
So far I have been referring to synchronous and asynchronous transmissions as they specifically apply to network communication, but there is application of the same concepts in the realm of software engineering when we see the use of threading. However, threading exceeds the scope of this article so I will not go into it here. Perhaps it would make a good discussion topic to have within the comments of this post.
This concludes the Part 2 of the the Data Transmission and Protocol series. In part three, I will be discussing analog and digital signals. Very interesting if you have ever wondered "what is the difference between the music that comes from a CD versus that which comes from a vinyl record?"
Resources:
[1] Tomsho, G., Tittel, E., & Johnson, G. (2004). Guide to networking essentials. Thomson Course Technology: Boston, MA. ISBN-13: 978-1-4188-3718-1
[2] InetDaemon Enterprises. (2010). Asynchronous vs. synchronous. Retrieved from http://bit.ly/pOhOl8
Friday, July 29, 2011
Part 1 - Data Transmission and Protocol
This post is the beginning of a series on data transmission and protocol. I decided to make it a series for a couple of reasons. First, the topic of data transmission and the topic of protocol by themselves are pretty broad subjects that could really get lengthy. So I decided it would be best to break the article into easy to digest chunks.
So, why not tackle them individually? Well, by breaking it up in to parts I am in a way, but I'm making it one series instead of two because protocols are tightly tied into data transmissions. That is to say that without one, you can't have the other. Even though I will be going into some depth, I'm really only going to be able to scratch the surface.
Why this topic? Other than the fact that it is rather interesting learning how the telecommunication systems that we use everyday work, it can be a very important factor to consider in a number of areas. Knowing data transmission methods and protocols is vital to fields like software engineering, information system design and implementation, and even application implementation. Therefore, if you are an engineer, having a working knowledge of the methods and protocols I will cover will help you make sound decisions when data transmission is involved in your implementation (which it almost always is in one form or another).
For those, just learning networking, telecommunications, or some other type of engineering this will be a good starting point to understanding how systems communicate. For those who are already in some type of field that requires data transmission, this series may offer a good refresher or perhaps a jumping off point for further research if you are stuck with a particular problem since I will be listing other references that you can check out. Those not in this field of study or profession may still find it interesting to learn how their cellphone, computers, their networks at work, and the Internet communicate with one another. I will avoid technical jargon as much as possible and try to explain things in a clear and understandable way so that even the layperson will understand.
Computers and networks use many different types of data transmission methods. Asynchronous and synchronous transmissions; analog and digital signaling; simplex, half duplex, and full duplex transmission; serial and parallel transmission; and broadband and baseband transmissions, all have distinct differences. With all these different ways for computers to communicate, protocols become very important. Protocols are basically a set of agreed upon rules on how computers will communicate in different situations. Just as many different protocols regarding data communication exist as there are ways to transmit the data. This series will cover the differences between the different types of data transmission as well as contrast six of the protocols that have been developed to govern data transmission; Serial Line Internet Protocol versus Point-To-Point Protocol; Hypertext Transfer Protocol versus File Transfer Protocol; and Transmission Control Protocol versus Internet Protocol.
This concludes the introduction the the Data Transmission and Protocol series. In part two I will explain asynchronous and synchronous transmission.
So, why not tackle them individually? Well, by breaking it up in to parts I am in a way, but I'm making it one series instead of two because protocols are tightly tied into data transmissions. That is to say that without one, you can't have the other. Even though I will be going into some depth, I'm really only going to be able to scratch the surface.
Why this topic? Other than the fact that it is rather interesting learning how the telecommunication systems that we use everyday work, it can be a very important factor to consider in a number of areas. Knowing data transmission methods and protocols is vital to fields like software engineering, information system design and implementation, and even application implementation. Therefore, if you are an engineer, having a working knowledge of the methods and protocols I will cover will help you make sound decisions when data transmission is involved in your implementation (which it almost always is in one form or another).
For those, just learning networking, telecommunications, or some other type of engineering this will be a good starting point to understanding how systems communicate. For those who are already in some type of field that requires data transmission, this series may offer a good refresher or perhaps a jumping off point for further research if you are stuck with a particular problem since I will be listing other references that you can check out. Those not in this field of study or profession may still find it interesting to learn how their cellphone, computers, their networks at work, and the Internet communicate with one another. I will avoid technical jargon as much as possible and try to explain things in a clear and understandable way so that even the layperson will understand.
Computers and networks use many different types of data transmission methods. Asynchronous and synchronous transmissions; analog and digital signaling; simplex, half duplex, and full duplex transmission; serial and parallel transmission; and broadband and baseband transmissions, all have distinct differences. With all these different ways for computers to communicate, protocols become very important. Protocols are basically a set of agreed upon rules on how computers will communicate in different situations. Just as many different protocols regarding data communication exist as there are ways to transmit the data. This series will cover the differences between the different types of data transmission as well as contrast six of the protocols that have been developed to govern data transmission; Serial Line Internet Protocol versus Point-To-Point Protocol; Hypertext Transfer Protocol versus File Transfer Protocol; and Transmission Control Protocol versus Internet Protocol.
This concludes the introduction the the Data Transmission and Protocol series. In part two I will explain asynchronous and synchronous transmission.
Wednesday, July 27, 2011
Creating a Strong Yet Memorable Password
In my last post I spoke briefly about creating a strong pass phrase for your WAP connection. Today I'm going to explain some techniques that you can use to create a strong password for your bank account, e-mail address, router, or anything else requiring a password to log in. Not only will these passwords be strong, but they will be very easy to remember. I guarantee you will have no need to write them down, which will make them even more secure.
The problem that most people have with passwords is that usually they make them very weak. I don't know how many people I have consulted with that have revealed passwords that were not only weak, but would be relatively easy to guess. Hint: Never use your name, birthday, anniversary, or any other personally linked information that is a matter of public record as your password. Also, never use a dictionary word as your password. If you do I could easily breech your account in a few minutes using brute force with a small script and a large dictionary. A brute force attack is simply using every possible combination of a password. A program can be written (and several are available to download) that can try every single word in a dictionary on your account. Brute force can also be applied to passwords that are known to be numbers of a specific length. The four-digit PIN that you use in the ATM is very weak and can be cracked in minutes or even seconds because all the program would have to do is test 0000 - 9999. Fortunately, there is no way to hook up a device to an ATM, besides which, most bank ATMs have a limit on how many PIN attempts you can make before confiscating your card.
However, I digress. It seems that the primary reason (at least from those I have talked with) for choosing such weak passwords is because they are easy to remember. Many companies have IT departments that try to combat this practice by enforcing password rules such as, "password much contain at least one number and one special character". The problem with this is then users generate passwords like "Johnson@68" or they write their password on a post-it note and stick it to their computer screen defeating the purpose of having a password in the first place and while "Johnson@68" is better than "Johnson", it's still weak. I feel that IT departments are going about it all wrong. Imposing rules for passwords is not going to force users to create strong passwords. They're just going to find ways to bend the rules to suit their memories. What IT departments need to do is educate users in how to create memorable passwords that are hard to break and that is what I'm going to do right now.
There are tons of password generators out there that you can use to create nice strong passwords of any length, but these are very hard to remember because they are comprised of meaningless random letters numbers and symbols. So the trick is to get those seemingly meaningless characters to mean something to you. One generator that I like for this is SafePasswd.com. This online generator creates unique passwords that are somewhat easy to remember because it mixes real words with special characters. For example, I created this 12 character password using it: 0@pIzZeRIA_7. It is fairly easy to remember because it is composed of 0@PIZZERIA_7. However, I must also remember which letters are shifted, which makes it a little bit harder, especially when the password is much longer. You can get to the site by clicking the button at the bottom of this post.
However, you don't need a generator when you know how to make your own strong passwords. One way to do this is to think up a phrase that you will have no trouble remembering that is of sufficient length to create the password you need and then convert the words and special characters into the digits of your password. For example, let's say the IT department says I need to have a password that is at least 12 characters in length, has at least one number, and at least two non-alphanumeric symbols. I first think of a phrase that is meaningful to me and has the characters to cover the requirements, like: "There is one thing that I like about working here; GOING HOME!" Now I simply convert each word to a character of my password; "Ti1ttilawh;GH!" Viola! A 14 character password that more than covers the requirements of IT that I can easily remember, but would be very difficult for anyone to guess. When you pick a phrase, play with capitalization and special symbols. Compound sentences with proper names in them are great or even two sentences. Also change words like won, to, for, ate, at, number, dollar, percent, carrot, and, star to 1, 2, 4, 8, @, #, $, %, ^, &, *. "My 12th grade math teacher, John Davis, sucked at lectures and personal hygiene!" Becomes, "M12gmt,JD,s@l&ph!" Seventeen letter e-mail password that nobody would ever break. You get the idea. Simple.
The second technique I will show you just requires that you can remember a pattern. Patterns tend to be easier to remember and are particularly easy to remember when you are the one that invents the pattern. The first step in this technique is to choose a letter from the middle two rows of the keyboard excluding Q, A, ;, ', [, ], and \. This leaves you with a choice of W, E, R, T, Y, U, I, O, P, S, D, F, G, H, J, K, or L. Once you pick that letter, you are going to have 8 letters that adjoin it. For instance, say you pick O. Your pattern layout will look like this:
8 9 0
I O P
K L ;
Now you can make any pattern you wish, of any length you wish, out of not just those nine character, but their shift equivalents as well. For example, say I want a 16-digit password with some numbers and special character in it. I could start my pattern at 8 and make two clockwise circles around O with the second circle being shift characters. So my password would look like this: 890p;lki*()P:LKI
Using the same base I could also create this password: 0(8O;Lk*iK9)o:l That password was created by tracing the initials SB over the pattern and shifting every other character. The combinations are endless. Although you can use any of the letters I listed above as a base because they all have eight adjacent character keys, the letters S, D, F, G, and H, do not have any numbers or special characters adjacent so avoid them for the strongest passwords. Also, J and K only have 2 and 4 special characters and no numbers, so these although better, are still not the strongest bases for your pattern.
Those are just a couple of techniques to have you creating strong passwords in no time that you won't have to write down. You should not use the same password for all your accounts and a recent event illustrates exactly why. The PlayStation Network was hacked into a few months back and user names and passwords among other things were compromised. Now someone has the password to my PlayStation Network account. However, if the password is also the password to my bank account, they now have potential access to my bank account. Using the techniques I have shown you should have you creating unique passwords for all of your accounts with no problems. If you have any other tips for making strong and memorable passwords, share them in a comment to this post.
The problem that most people have with passwords is that usually they make them very weak. I don't know how many people I have consulted with that have revealed passwords that were not only weak, but would be relatively easy to guess. Hint: Never use your name, birthday, anniversary, or any other personally linked information that is a matter of public record as your password. Also, never use a dictionary word as your password. If you do I could easily breech your account in a few minutes using brute force with a small script and a large dictionary. A brute force attack is simply using every possible combination of a password. A program can be written (and several are available to download) that can try every single word in a dictionary on your account. Brute force can also be applied to passwords that are known to be numbers of a specific length. The four-digit PIN that you use in the ATM is very weak and can be cracked in minutes or even seconds because all the program would have to do is test 0000 - 9999. Fortunately, there is no way to hook up a device to an ATM, besides which, most bank ATMs have a limit on how many PIN attempts you can make before confiscating your card.
However, I digress. It seems that the primary reason (at least from those I have talked with) for choosing such weak passwords is because they are easy to remember. Many companies have IT departments that try to combat this practice by enforcing password rules such as, "password much contain at least one number and one special character". The problem with this is then users generate passwords like "Johnson@68" or they write their password on a post-it note and stick it to their computer screen defeating the purpose of having a password in the first place and while "Johnson@68" is better than "Johnson", it's still weak. I feel that IT departments are going about it all wrong. Imposing rules for passwords is not going to force users to create strong passwords. They're just going to find ways to bend the rules to suit their memories. What IT departments need to do is educate users in how to create memorable passwords that are hard to break and that is what I'm going to do right now.
There are tons of password generators out there that you can use to create nice strong passwords of any length, but these are very hard to remember because they are comprised of meaningless random letters numbers and symbols. So the trick is to get those seemingly meaningless characters to mean something to you. One generator that I like for this is SafePasswd.com. This online generator creates unique passwords that are somewhat easy to remember because it mixes real words with special characters. For example, I created this 12 character password using it: 0@pIzZeRIA_7. It is fairly easy to remember because it is composed of 0@PIZZERIA_7. However, I must also remember which letters are shifted, which makes it a little bit harder, especially when the password is much longer. You can get to the site by clicking the button at the bottom of this post.
However, you don't need a generator when you know how to make your own strong passwords. One way to do this is to think up a phrase that you will have no trouble remembering that is of sufficient length to create the password you need and then convert the words and special characters into the digits of your password. For example, let's say the IT department says I need to have a password that is at least 12 characters in length, has at least one number, and at least two non-alphanumeric symbols. I first think of a phrase that is meaningful to me and has the characters to cover the requirements, like: "There is one thing that I like about working here; GOING HOME!" Now I simply convert each word to a character of my password; "Ti1ttilawh;GH!" Viola! A 14 character password that more than covers the requirements of IT that I can easily remember, but would be very difficult for anyone to guess. When you pick a phrase, play with capitalization and special symbols. Compound sentences with proper names in them are great or even two sentences. Also change words like won, to, for, ate, at, number, dollar, percent, carrot, and, star to 1, 2, 4, 8, @, #, $, %, ^, &, *. "My 12th grade math teacher, John Davis, sucked at lectures and personal hygiene!" Becomes, "M12gmt,JD,s@l&ph!" Seventeen letter e-mail password that nobody would ever break. You get the idea. Simple.
The second technique I will show you just requires that you can remember a pattern. Patterns tend to be easier to remember and are particularly easy to remember when you are the one that invents the pattern. The first step in this technique is to choose a letter from the middle two rows of the keyboard excluding Q, A, ;, ', [, ], and \. This leaves you with a choice of W, E, R, T, Y, U, I, O, P, S, D, F, G, H, J, K, or L. Once you pick that letter, you are going to have 8 letters that adjoin it. For instance, say you pick O. Your pattern layout will look like this:
8 9 0
I O P
K L ;
Now you can make any pattern you wish, of any length you wish, out of not just those nine character, but their shift equivalents as well. For example, say I want a 16-digit password with some numbers and special character in it. I could start my pattern at 8 and make two clockwise circles around O with the second circle being shift characters. So my password would look like this: 890p;lki*()P:LKI
Using the same base I could also create this password: 0(8O;Lk*iK9)o:l That password was created by tracing the initials SB over the pattern and shifting every other character. The combinations are endless. Although you can use any of the letters I listed above as a base because they all have eight adjacent character keys, the letters S, D, F, G, and H, do not have any numbers or special characters adjacent so avoid them for the strongest passwords. Also, J and K only have 2 and 4 special characters and no numbers, so these although better, are still not the strongest bases for your pattern.
Those are just a couple of techniques to have you creating strong passwords in no time that you won't have to write down. You should not use the same password for all your accounts and a recent event illustrates exactly why. The PlayStation Network was hacked into a few months back and user names and passwords among other things were compromised. Now someone has the password to my PlayStation Network account. However, if the password is also the password to my bank account, they now have potential access to my bank account. Using the techniques I have shown you should have you creating unique passwords for all of your accounts with no problems. If you have any other tips for making strong and memorable passwords, share them in a comment to this post.
Saturday, July 23, 2011
Securing your Wifi connection
Wireless connectivity is changing the way we access the Internet. Many of you probably have a wireless router in your home, and it is not hard to find Wifi connections just about anywhere you go. Many of these connection are owned and secured by businesses that operate a wireless local area network (WLAN). In other words, they are not meant for public access. Some connections you will find are meant for public access, but are secured so that you cannot access them unless you purchase something and the proprietor give you an access key, and others are secured by redirecting your browser to a login page where you enter a user name and password. This type of wireless access pont (WAP) usually requires some kind of subscription (AT&T Hotspots use this type of security protocol). You will even come across completely open (and free to use) WAPs in places like libraries and even some bars, coffee shops, and other types of businesses.
That being said, if you do have a WAP in your home you should take measures to secure it. For two reasons. The first is that it will prevent your neighbors from stealing your bandwidth. This is a relatively common and mild offense. In fact you might not even care if your neighbor uses your Wifi connection. If this is the case you should still secure your WAP, then give an access key to the neighbors that you want to share with. If all your neighbors are using your Wifi you will experience significant slow down in your Internet speed. So securing your WAP and giving a passkey to only those you want to have access will preserve your bandwidth so that everyone on the network has an optimum speed when accessing the Internet.
The second, and most important reason to secure your WAP is to protect you from malicious individuals. With an open Wifi router a malicious individual can use your connection to "disguise" themselves while they perform illegal activities. For example, many commercial websites like Amazon.com record IP addresses during credit card transaction. They do this to help the authorities catch people committing credit card fraud. If someone reports to them that they have a charge on their card for a purchase that they did not make, Amazon can look up that purchase and turn the IP address of the purchaser over to the authorities. Your IP address uniquely identifies your connection on the Internet. Much information can be learned from simply having someone's IP address such as the city and the Internet service provider supplying the IP address. This is more than enough information for authorities to pinpoint the location of the illegal transaction. If your WAP is open and someone uses it for such a purpose you are going to have some explaining to do when the authorities come knocking on your door.
Malicious individuals are not limited to using your open WAP to disguise themselves either. Delving in to other computers on an open WAP is fairly easy with the right software and knowledge. I can get into any computer connected to a WAP usually in under ten minutes. I, of course, only do this for testing security and would never do it without the owner's permission, and I would never do anything illegal after gaining entry in this way. However, others are not as honest as me, and once they have acces to you or your neighbor's computer there are any number of things they could do to make your lives miserable. They could delete or steal files; install viruses, trojans, key-loggers, or any other malware; steal your identity, and that is just the tip of the iceberg. So as you can see, you definitely want to secure your WAP.
There are several security protocol available to use that may or may not be available for your brand and model of wireless router. I'm not going to hit on every one. There are three primary protocols that nearly all routers have; Wired Equivalency Privacy (WEP), Wifi Protected Access (WPA), and Wifi Protected Access version 2 (WPA2).
At minimum you should have your WAP secured using the WEP protocol. I am not going to explain how to set your WAP for WEP protection though for two reasons. One is that it is very easy and you can probably figure it out on your own after you know how to set up WPA. The second reason is because I do not recommend this type of protect because it is not very effective.
The Wireless Equivalent Privacy (WEP) algorithm was designed in the 1990s and was purposely weak, to remain within the confines of existing US export regulations. In fact, if you Google cracking WEP you will find a multitude of free tools that you can use to break a WEP key. That being the case, it is amazing to me that more than 50% (based on my experience) of those wireless signals at the coffee shops and other public places are, in fact, WEP setups. Remember, a lot of these are business networks.
This being the case WPA and WPA2 are better (stronger) methods of securing your Wifi. WPA and WPA2 are nearly the same except that WPA2 is stronger because it allows for longer passphrases. That being said, WPA2 can be cracked with brute force (this a method that involves trying every possible combination in a password or other type of security key) (http://securityandthe.net/2008/10/12/russian-researchers-achieve-100-fold-increase-in-wpa2-cracking-speed/). This does not mean that WPA2 is of no use. The researchers in the linked article had to use a homemade super computer to do it. So it's possible, but not probable. It is still a very good encryption method. In fact, when used in combination with other security measures, you can create a wireless network that is invulnerable to all but the most dedicated and skilled hacker. I am going to show you haw to do this. Keep in mind, what I am about to show you will make your WAP like Fort Knox. This is not always necessary. For example, if you live in a rural area, it is unlikely that you will encounter anyone with the skills or desire to break into your network (these types of people like to hang out where there is better fishing so to speak), so the strongest security measures are not perhaps necessary in this scenario (perhaps just one of the tips would be good enough for this instance). if you live in an area with a lot of traffic (both vehicle and wireless network) you will want a more secure network, but not necessarily as strong as using all three tips (maybe just two are good enough for you). However, if you have a business with a WLAN or you keep a lot of sensitive information on your computer, you'd do best to follow all three of these tips.
The tips I will show you apply to Linksys brand routers. If you have a different router the steps outlined in each tip still apply, but you may have to poke around or consult your user's manual to find the proper settings pages. So without further ado, here's how to easily create the most secure wireless network possible (other than unplugging it).
Tip 1. Use WPA (at minimum) or WPA2 (preferred) encryption. This allows you to enter a passphrase between 8 and 63 characters. Use a passphrase that is at least 20 characters, but if you want maximum protection use 63 random extended ASCII characters. That just means to include special symbols like the British pound symbol or the trade mark sign. If you are interested in seeing what symbols are included in the extended ASCII characters, go here: http://www.ascii-code.com/. Something like, \mkKTj?&u`f-y";oHtOf))8W-oOcXdh52('c1SZVn_25Cb'Lf.TDpwS*pt:j4+ would be quite secure. Furthermore, change the passphrase regularly. If you change the passphrase once a week, even Russian researchers (the ones from the link above) would have a hard time breaching your security. Here is how to setup WPA2 on a Linksys wireless router:
a) First connect your computer directly to your router through one of the LAN ports in the back. You cannot change router settings over the air. You have to be directly connected.
b) Connect the modem to the WAN port on the back if it is not already.
c) Open Internet Explorer (other browsers can work too, but I have had problems with some Mozilla based browsers, IE will for sure not give you problems) and ensure that you are connected to the Internet by going to a known website like www.google.com. Then enter http://192.168.1.1 and hit enter.
d) It will ask you for a username and password. Enter it. If you don't know your username and password, you probably have not changed it from the default. If this is the case, enter admin for both the username and password (on some Linksys routers you leave the username blank and enter admin as the password, so if admin in both fields doesn't work try admin in the password field only), then click Ok. This takes you to the router setup page.
e) Click on the "WIreless" tab at the top of the screen.
f) Under that tab click "Wireless Security".
g) You will see a drop-down box next to "Security mode:". Click the arrow to the right of the box and select "WPA2 Personal" (or WPA or WEP, if you prefer).
h) Choose one of the WPA algorithms (AES should be fine, but I prefer TKIP).
i) In the "WPA Shared Key" box enter a passphrase of your choosing, but keeping mind that it must be between 8 and 63 (exactly 10 for WEP and 8 to 32 for WPA) characters in length (the longer the better, try for at least 20), and don't use real words. Passphrases that use actual words are much easier to break. Try to use random (or apparently random) numbers, letters, and symbols (see my example above). In a future post I will teach you how to create very strong passwords that you can easily remember.
j) Click the "Save Changes" button and then the "Continue" button after that and your router is secure.
k) Disconnect your computer from the router (unless of course it is a wired computer) and establish a connection to the router by entering the passphrase you entered. You should be good to go.
Tip 2. Hide your SSID. Most routers are set by default to broadcast the SSID. Disable this. You know what your SSID is so you shouldn't need to broadcast it. Many people leave their router set to broadcast because it makes it easier to connect new devices, but unless you are running business that offers free wifi, this is not a good idea. An average hacker can still sniff out your SSID over the airwaves, but it does prevent the average Joe from just jumping on your network even if it's wide open. Plus it creates just another annoying step that someone has to take to breech your security. The more hurdles that you can put in the way of an intruder the better. Also, if you have not changed your SSID from the default (for Linksys routers default is linksys), now is the time to change it. Here is how to change and hide your SSID.
a) Go through the same process outlined above to get to your router settings page.
b) Once on the Setup page click the "Wireless" tab.
c) Where it says "Wireless SSID Broadcast:" click the disable radio button then click Save Settings and then click continue in the next window.
d) Now where it says, "Wireless Network Name (SSID)", delete the default name and enter a name of your choosing. It does not have to be like the passphrase, but you want it to be something that would not be easy for someone to guess but you can easily remember and type (STi.Boy@Wireless is an example).
e) Save your settings and exit the settings settings page.
f) Now you will not see your network listed in the network selection window so you will have to click "Select Another Network" and enter your new SSID.
g) You will then be prompted for your passphrase. Enter that and tell the computer to remember this network and you should be able to connect to your newly secured WAP automatically. Remember: you have to connect all devices on the network in the same manner, so additional computers and phones that access your Wifi need to have the new SSID and passphrase entered as well. And don't forget your neighbor.
Tip 3. Enable MAC filtering. This is a little trickier, but as always, I'll make it painless for you. What MAC filtering does is it makes it so that only the devices that you define can connect to your router. Good hackers can spoof a MAC address, but again, it's just another obstacle. Having MAC filtering enabled is like having a butler answering the door at a party. If the guest is not on the list, he can't come in. The same principal applies to MAC filtering. If a device's MAC address is not on your list, it cannot access your router. If you don't know how to do this it is not to hard to explain. Before messing with your router settings you need to make a list of the MAC addresses of all the devices you want to allow on the network. I'm going to outline how to find the MAC address of your computers. If you have other devices that you need to connect to your WAP and you don't know how to find it's MAC address, a comment and I'll see what I can do. So here's what you do to find your computer's MAC address:
a) Click Start. Go to the run box and type cmd then click ok.
b) You will see a black screen with white font. This is the command prompt. In the command prompt type ipconfig/all and hit enter
c) The Mac address of the computer you do this on is listed in the set of numbers to the right of Physical Address (should be 6 pairs of alpha-numeric digits separated ny dashes like this: 00-B0-D0-86-BB-F7).
d) Right this down.
e) Repeat this process for all computers that need access to the router. (Note: if any of your computers have Windows XP, instead of typing ipconfig/all in the command prompt, type getmac and it will return only the MAC address for you)
f) Now that you have your list of MAC addresses, go to the router settings page (I'm going to assume that you know how to do this by now).
g) Once again click the "Wireless" tab.
h) Under the tab you should see a button labeled "Wireless MAC Filter". Click it (if you don't see this look under "Wireless Connection Control").
i) Click the "Enabled" and "Allow only following MAC Addresses to connect to wireless Network" radio buttons.
j) Click "Wireless Client List" you will get a list of all empty mac-addresses as (00:00:00:00:00:00). Now all you have to do is enter the MAC addresses on your list.
k) Save your settings and close the browser.
If you do these three things, you will have the most secure wireless network possible. It would be extremely difficult to breach a wireless network secured in this way.
That being said, if you do have a WAP in your home you should take measures to secure it. For two reasons. The first is that it will prevent your neighbors from stealing your bandwidth. This is a relatively common and mild offense. In fact you might not even care if your neighbor uses your Wifi connection. If this is the case you should still secure your WAP, then give an access key to the neighbors that you want to share with. If all your neighbors are using your Wifi you will experience significant slow down in your Internet speed. So securing your WAP and giving a passkey to only those you want to have access will preserve your bandwidth so that everyone on the network has an optimum speed when accessing the Internet.
The second, and most important reason to secure your WAP is to protect you from malicious individuals. With an open Wifi router a malicious individual can use your connection to "disguise" themselves while they perform illegal activities. For example, many commercial websites like Amazon.com record IP addresses during credit card transaction. They do this to help the authorities catch people committing credit card fraud. If someone reports to them that they have a charge on their card for a purchase that they did not make, Amazon can look up that purchase and turn the IP address of the purchaser over to the authorities. Your IP address uniquely identifies your connection on the Internet. Much information can be learned from simply having someone's IP address such as the city and the Internet service provider supplying the IP address. This is more than enough information for authorities to pinpoint the location of the illegal transaction. If your WAP is open and someone uses it for such a purpose you are going to have some explaining to do when the authorities come knocking on your door.
Malicious individuals are not limited to using your open WAP to disguise themselves either. Delving in to other computers on an open WAP is fairly easy with the right software and knowledge. I can get into any computer connected to a WAP usually in under ten minutes. I, of course, only do this for testing security and would never do it without the owner's permission, and I would never do anything illegal after gaining entry in this way. However, others are not as honest as me, and once they have acces to you or your neighbor's computer there are any number of things they could do to make your lives miserable. They could delete or steal files; install viruses, trojans, key-loggers, or any other malware; steal your identity, and that is just the tip of the iceberg. So as you can see, you definitely want to secure your WAP.
There are several security protocol available to use that may or may not be available for your brand and model of wireless router. I'm not going to hit on every one. There are three primary protocols that nearly all routers have; Wired Equivalency Privacy (WEP), Wifi Protected Access (WPA), and Wifi Protected Access version 2 (WPA2).
At minimum you should have your WAP secured using the WEP protocol. I am not going to explain how to set your WAP for WEP protection though for two reasons. One is that it is very easy and you can probably figure it out on your own after you know how to set up WPA. The second reason is because I do not recommend this type of protect because it is not very effective.
The Wireless Equivalent Privacy (WEP) algorithm was designed in the 1990s and was purposely weak, to remain within the confines of existing US export regulations. In fact, if you Google cracking WEP you will find a multitude of free tools that you can use to break a WEP key. That being the case, it is amazing to me that more than 50% (based on my experience) of those wireless signals at the coffee shops and other public places are, in fact, WEP setups. Remember, a lot of these are business networks.
This being the case WPA and WPA2 are better (stronger) methods of securing your Wifi. WPA and WPA2 are nearly the same except that WPA2 is stronger because it allows for longer passphrases. That being said, WPA2 can be cracked with brute force (this a method that involves trying every possible combination in a password or other type of security key) (http://securityandthe.net/2008/10/12/russian-researchers-achieve-100-fold-increase-in-wpa2-cracking-speed/). This does not mean that WPA2 is of no use. The researchers in the linked article had to use a homemade super computer to do it. So it's possible, but not probable. It is still a very good encryption method. In fact, when used in combination with other security measures, you can create a wireless network that is invulnerable to all but the most dedicated and skilled hacker. I am going to show you haw to do this. Keep in mind, what I am about to show you will make your WAP like Fort Knox. This is not always necessary. For example, if you live in a rural area, it is unlikely that you will encounter anyone with the skills or desire to break into your network (these types of people like to hang out where there is better fishing so to speak), so the strongest security measures are not perhaps necessary in this scenario (perhaps just one of the tips would be good enough for this instance). if you live in an area with a lot of traffic (both vehicle and wireless network) you will want a more secure network, but not necessarily as strong as using all three tips (maybe just two are good enough for you). However, if you have a business with a WLAN or you keep a lot of sensitive information on your computer, you'd do best to follow all three of these tips.
The tips I will show you apply to Linksys brand routers. If you have a different router the steps outlined in each tip still apply, but you may have to poke around or consult your user's manual to find the proper settings pages. So without further ado, here's how to easily create the most secure wireless network possible (other than unplugging it).
Tip 1. Use WPA (at minimum) or WPA2 (preferred) encryption. This allows you to enter a passphrase between 8 and 63 characters. Use a passphrase that is at least 20 characters, but if you want maximum protection use 63 random extended ASCII characters. That just means to include special symbols like the British pound symbol or the trade mark sign. If you are interested in seeing what symbols are included in the extended ASCII characters, go here: http://www.ascii-code.com/. Something like, \mkKTj?&u`f-y";oHtOf))8W-oOcXdh52('c1SZVn_25Cb'Lf.TDpwS*pt:j4+ would be quite secure. Furthermore, change the passphrase regularly. If you change the passphrase once a week, even Russian researchers (the ones from the link above) would have a hard time breaching your security. Here is how to setup WPA2 on a Linksys wireless router:
a) First connect your computer directly to your router through one of the LAN ports in the back. You cannot change router settings over the air. You have to be directly connected.
b) Connect the modem to the WAN port on the back if it is not already.
c) Open Internet Explorer (other browsers can work too, but I have had problems with some Mozilla based browsers, IE will for sure not give you problems) and ensure that you are connected to the Internet by going to a known website like www.google.com. Then enter http://192.168.1.1 and hit enter.
d) It will ask you for a username and password. Enter it. If you don't know your username and password, you probably have not changed it from the default. If this is the case, enter admin for both the username and password (on some Linksys routers you leave the username blank and enter admin as the password, so if admin in both fields doesn't work try admin in the password field only), then click Ok. This takes you to the router setup page.
e) Click on the "WIreless" tab at the top of the screen.
f) Under that tab click "Wireless Security".
g) You will see a drop-down box next to "Security mode:". Click the arrow to the right of the box and select "WPA2 Personal" (or WPA or WEP, if you prefer).
h) Choose one of the WPA algorithms (AES should be fine, but I prefer TKIP).
i) In the "WPA Shared Key" box enter a passphrase of your choosing, but keeping mind that it must be between 8 and 63 (exactly 10 for WEP and 8 to 32 for WPA) characters in length (the longer the better, try for at least 20), and don't use real words. Passphrases that use actual words are much easier to break. Try to use random (or apparently random) numbers, letters, and symbols (see my example above). In a future post I will teach you how to create very strong passwords that you can easily remember.
j) Click the "Save Changes" button and then the "Continue" button after that and your router is secure.
k) Disconnect your computer from the router (unless of course it is a wired computer) and establish a connection to the router by entering the passphrase you entered. You should be good to go.
Tip 2. Hide your SSID. Most routers are set by default to broadcast the SSID. Disable this. You know what your SSID is so you shouldn't need to broadcast it. Many people leave their router set to broadcast because it makes it easier to connect new devices, but unless you are running business that offers free wifi, this is not a good idea. An average hacker can still sniff out your SSID over the airwaves, but it does prevent the average Joe from just jumping on your network even if it's wide open. Plus it creates just another annoying step that someone has to take to breech your security. The more hurdles that you can put in the way of an intruder the better. Also, if you have not changed your SSID from the default (for Linksys routers default is linksys), now is the time to change it. Here is how to change and hide your SSID.
a) Go through the same process outlined above to get to your router settings page.
b) Once on the Setup page click the "Wireless" tab.
c) Where it says "Wireless SSID Broadcast:" click the disable radio button then click Save Settings and then click continue in the next window.
d) Now where it says, "Wireless Network Name (SSID)", delete the default name and enter a name of your choosing. It does not have to be like the passphrase, but you want it to be something that would not be easy for someone to guess but you can easily remember and type (STi.Boy@Wireless is an example).
e) Save your settings and exit the settings settings page.
f) Now you will not see your network listed in the network selection window so you will have to click "Select Another Network" and enter your new SSID.
g) You will then be prompted for your passphrase. Enter that and tell the computer to remember this network and you should be able to connect to your newly secured WAP automatically. Remember: you have to connect all devices on the network in the same manner, so additional computers and phones that access your Wifi need to have the new SSID and passphrase entered as well. And don't forget your neighbor.
Tip 3. Enable MAC filtering. This is a little trickier, but as always, I'll make it painless for you. What MAC filtering does is it makes it so that only the devices that you define can connect to your router. Good hackers can spoof a MAC address, but again, it's just another obstacle. Having MAC filtering enabled is like having a butler answering the door at a party. If the guest is not on the list, he can't come in. The same principal applies to MAC filtering. If a device's MAC address is not on your list, it cannot access your router. If you don't know how to do this it is not to hard to explain. Before messing with your router settings you need to make a list of the MAC addresses of all the devices you want to allow on the network. I'm going to outline how to find the MAC address of your computers. If you have other devices that you need to connect to your WAP and you don't know how to find it's MAC address, a comment and I'll see what I can do. So here's what you do to find your computer's MAC address:
a) Click Start. Go to the run box and type cmd then click ok.
b) You will see a black screen with white font. This is the command prompt. In the command prompt type ipconfig/all and hit enter
c) The Mac address of the computer you do this on is listed in the set of numbers to the right of Physical Address (should be 6 pairs of alpha-numeric digits separated ny dashes like this: 00-B0-D0-86-BB-F7).
d) Right this down.
e) Repeat this process for all computers that need access to the router. (Note: if any of your computers have Windows XP, instead of typing ipconfig/all in the command prompt, type getmac and it will return only the MAC address for you)
f) Now that you have your list of MAC addresses, go to the router settings page (I'm going to assume that you know how to do this by now).
g) Once again click the "Wireless" tab.
h) Under the tab you should see a button labeled "Wireless MAC Filter". Click it (if you don't see this look under "Wireless Connection Control").
i) Click the "Enabled" and "Allow only following MAC Addresses to connect to wireless Network" radio buttons.
j) Click "Wireless Client List" you will get a list of all empty mac-addresses as (00:00:00:00:00:00). Now all you have to do is enter the MAC addresses on your list.
k) Save your settings and close the browser.
If you do these three things, you will have the most secure wireless network possible. It would be extremely difficult to breach a wireless network secured in this way.
Maiden Post
This is my first blog post. I won't be posting any tips, tricks, or other magic in this one, but those will be soon to come. I'm not even sure if I have time to keep a blog because I am very busy, but I thought I'd try it to see what it was like.
So for this first blog post I'd just like to answer some questions that I anticipate that some of you might have. Here goes . . .
"What can I expect from this blog?"
I used to post tips and tricks every Tuesday on Facebook, which went okay for a while, but schooling got in the way so I gave it up. I'm hoping that I can do something similar with this blog, but maybe not weekly. We'll just have to see what time permits.
"What kind of 'tips and tricks'?"
Over the many years I have spent in the computer industry (I don't want to say how many unless you are hiring), I have collected all kinds of computer and tech-related goodies. I will share these with you all. I will also try to formulate some informative posts and tutorials that will walk the novice through things like installing more RAM in your computer, repairing electronic components of various kinds, How-To's on anything tech-related.
"What if your tip or trick doesn't work or what if I can't understand or follow your tutorial?"
I try to explain things in as clear a way as possible, but I do make some assumptions when I explain how to do something. For one, I assume that you know how to work a computer. I won't explain what right-clicking is or what context menus are, etc. I also assume that you know how to use standard software. I won't go into detail about how to use Microsoft Word or your Web browser. I assume that you do speak, read, and understand English. I'm not bi-lingual, but I do speak a little Spanish and a very little of some other languages like Russian, but I won't post in them. If some thing is not working for you leave a comment and I'll try to make it clearer, but I make no promises. Sometimes you just can't teach an old dog new tricks.
"Can I email you?"
No. I get far too many e-mails that I have to sort through already and do not want to clutter up my inbox with more than I have time to get around to.
"How often do you post?"
That remains to be seen. Right now I don't have as much time as I would like, but that could change soon. I will check for comments to blog posts more frequently than I post, so don't be afraid to ask a question or leave a comment. I will get to it soon.
"Can you fix my computer or give me technical support?"
Yes. But not for free. Prices are negotiable, but if you are looking for free support, try http://www.computerhope.com/oh.htm. I hang out there sometimes and do offer free support when I'm there.
"Are you good at math?"
I'm very good at math and will sometimes post mathematical tricks or brain teasers, but I won't do your home work.
"Can you write a program for me?"
Yes. But not for free. Prices are negotiable and I will sometimes write simple programs for free or show you how to do it yourself.
If you have any questions that I did not already answer, do not hesitate to post them in a comment. Please don't bother asking the same questions that I already answered. you will not get a response. Also, if you are a tech like me and you find something I say in error, please feel free to correct me in a constructive manner. Name calling and pointing out flaws in thinking or error in information is not necessary. I am happy to make corrections to posts.
Enjoy!
So for this first blog post I'd just like to answer some questions that I anticipate that some of you might have. Here goes . . .
"What can I expect from this blog?"
I used to post tips and tricks every Tuesday on Facebook, which went okay for a while, but schooling got in the way so I gave it up. I'm hoping that I can do something similar with this blog, but maybe not weekly. We'll just have to see what time permits.
"What kind of 'tips and tricks'?"
Over the many years I have spent in the computer industry (I don't want to say how many unless you are hiring), I have collected all kinds of computer and tech-related goodies. I will share these with you all. I will also try to formulate some informative posts and tutorials that will walk the novice through things like installing more RAM in your computer, repairing electronic components of various kinds, How-To's on anything tech-related.
"What if your tip or trick doesn't work or what if I can't understand or follow your tutorial?"
I try to explain things in as clear a way as possible, but I do make some assumptions when I explain how to do something. For one, I assume that you know how to work a computer. I won't explain what right-clicking is or what context menus are, etc. I also assume that you know how to use standard software. I won't go into detail about how to use Microsoft Word or your Web browser. I assume that you do speak, read, and understand English. I'm not bi-lingual, but I do speak a little Spanish and a very little of some other languages like Russian, but I won't post in them. If some thing is not working for you leave a comment and I'll try to make it clearer, but I make no promises. Sometimes you just can't teach an old dog new tricks.
"Can I email you?"
No. I get far too many e-mails that I have to sort through already and do not want to clutter up my inbox with more than I have time to get around to.
"How often do you post?"
That remains to be seen. Right now I don't have as much time as I would like, but that could change soon. I will check for comments to blog posts more frequently than I post, so don't be afraid to ask a question or leave a comment. I will get to it soon.
"Can you fix my computer or give me technical support?"
Yes. But not for free. Prices are negotiable, but if you are looking for free support, try http://www.computerhope.com/oh.htm. I hang out there sometimes and do offer free support when I'm there.
"Are you good at math?"
I'm very good at math and will sometimes post mathematical tricks or brain teasers, but I won't do your home work.
"Can you write a program for me?"
Yes. But not for free. Prices are negotiable and I will sometimes write simple programs for free or show you how to do it yourself.
If you have any questions that I did not already answer, do not hesitate to post them in a comment. Please don't bother asking the same questions that I already answered. you will not get a response. Also, if you are a tech like me and you find something I say in error, please feel free to correct me in a constructive manner. Name calling and pointing out flaws in thinking or error in information is not necessary. I am happy to make corrections to posts.
Enjoy!
Subscribe to:
Posts (Atom)

