Thursday, April 25, 2013

Connect Two Home Computers for File Sharing

The simplest kind of home network contains exactly two computers. You can use this kind of network to share files, a printer or another peripheral device, and even an Internet connection. To connect two computers for sharing these and other network resources, consider the options described below.

Connecting Two Computers Directly With Cable

The traditional method to network two computers involves making a dedicated link by plugging one cable into the two systems. Several alternatives exist for networking two computers in this manner:
Ethernet crossover cable
Null modem serial cable or parallel peripheral cable
Special-purpose USB cables

Ethernet - Of the above choices, the Ethernet method is preferred as it supports a reliable, high-speed connection with minimal configuration required. Additionally, Ethernet technology offers the most general-purpose solution, allowing networks with more than two computers to be built fairly easily later. If one of your computers possesses an Ethernet adapter but the other has USB, an Ethernet crossover cable can still be used by first plugging a USB-to-Ethernet converter unit into the computer's USB port.


Serial and parallel - This type of cabling, calledDirect Cable Connection (DCC) when using Microsoft Windows, offers lower performance but offers the same basic functionality as Ethernet cables. You may prefer this option if you have such cables readily available and network speed is not a concern. Serial and parallel cables are never used to network more than two computers.
USB - Ordinary USB cables must not be used to connect two computers directly to each other. Attempting to do so can electrically damage the computers! However, special USB cables designed for direct connection exist that can be used safely. You may prefer this option over others if your computers lack functional Ethernet network adapters.
To make dedicated connections with Ethernet, USB, serial or parallel cables requires
  1. each computer have a functioning network interface with an external jack for the cable, and
  2. the network settings on each computer appropriately configured

One phone line or power cord cannot be used to directly connect two computers to each other for networking.

Operating Systems and Computer Networks


What Is a Computer Operating System?

Computers use low-level software called an operating system (O/S) to help people build and run their own programs. Operating system software runs not just on laptop computers but also on cell phones, network routers and other so-called embedded devices.

Types of Operating Systems

The best-known operating systems are those used on personal computers:

Microsoft Windows
Mac OS X
Linux

Some operating systems are designed for certain types of equipment, such as

Google Android (a variant of Linux), and Symbian - for cell phones
Solaris, HP-UX, DG-UX, and other variants of Unix - for server computers
DEC VMS (Virtual Memory System) - for mainframe computers
Other operating systems enjoyed a period of notoriety but are of only historical interest now:
Novell Netware was a popular O/S for PCs in the 1990s
IBM OS/2 was an early PC O/S that competed with Microsoft Windows for a time but had limited success
Multics was an especially innovative operating system created in the 1960s for mainframes, that influenced the later development of Unix.

Network Operating Systems

A modern O/S contains much built-in software designed to simplify networking of a computer. Typical O/S software includes an implementation of TCP/IP protocol stack and related utility programs like ping and traceroute. This includes the necessary device drivers and other software to automatically enable a device's Ethernet interface. Mobile devices also normally provide the programs needed to enable Wi-Fi, Bluetooth, or other wireless connectivity.

The early versions of Microsoft Windows did not provide any computer networking support. Microsoft added basic networking capability into its operating system starting with Windows 95 and Windows for Workgroups. Microsoft also introduced its Internet Connection Sharing (ICS) feature in Windows 98 Second Edition (Win98 SE). Contrast that with Unix, which was designed from the beginning with networking in view. Nearly any consumer O/S today qualifies as a network operating system due to the popularity of the Internet.

Embedded Operating Systems

A so-called embedded system supports no or limited configuration of its software. Embedded systems like routers, for example, typically include a pre-configured Web server, DHCP server, and some utilities but do not allow the installation of new programs. Examples of embedded operating systems for routers include:
Cisco IOS (Internetwork Operating System)

DD-WRT
Juniper Junos

An embedded OS can also be found inside an increasing number of consumer gadgets including phones (iPhone OS), PDAs (Windows CE), and digital media players (ipodlinux).

What Is a TCP/IP Routing Table?


A routing table is used by TCP/IP network routers to calculate the destinations of messages it is responsible for forwarding. The table is a small in-memory database managed by the router's built-in hardware and software.

Routing Table Entries and Sizes

Routing tables contain a list of IP addresses. Each IP address identifies a remote router (or other network gateway) that the local router is configured to recognize. For each IP address, the routing table additionally stores a network mask and other data that specifies the destination IP address ranges that remote device will accept.

Home network routers utilize a very small routing table because they simply forward all outbound traffic to the Internet Service Provider (ISP) gateway which takes care of all other routing steps. Home router tables typically contain ten or fewer entries. By comparison, the largest routers at the core of the Internet backbone must maintain the full Internet routing table that exceeds 100,000 entries and growing as the Internet expands.


Two hypothetical, partial routing table entries are shown below:

IP Address: 172.48.11.181 - Network Mask: 255.255.255.255

IP Address: 192.168.1.1 - Network Mask: 255.255.255.0

In this example, the first entry represents the route to the ISP's primary DNS server. Requests made from the home network to any destination on the Internet will be sent to the IP address 172.48.11.181 for forwarding. The second entry represents the route between any computers within the home network, where the home router has IP address 192.168.1.1.

Dynamic vs. Static Routing

Home routers set up their routing tables automatically when connected to the ISP, a process called dynamic routing. They generate one routing table entry for each of the ISPs DNS servers (primary, secondary and tertiary if available) and one entry for routing among all the home computers. They may also generate a few additional routes for other special cases including multicast and broadcast routes.

Most residential network routers prevent you from manually overriding or changing the routing table. However, business routers typically allow network administrators to manually update or manipulate routing tables. This so-called static routing can be useful when optimizing for network performance and reliability.

Viewing the Contents of Routing Tables

On home broadband routers, the routing table contents are typically shown on a screen inside the administrative console.

On Windows and Unix/Linux computers, the netstat -r command also displays the contents of the routing table configured on the local computer.

Router



Routers are small physical devices that join multiple networks together. Technically, a router is a Layer 3 gateway device, meaning that it connects two or more networks and that the router operates at the network layer of the OSI model.


Home networks typically use a wireless or wired Internet Protocol (IP) router, IP being the most common OSI network layer protocol. An IP router such as a DSL or cable modem broadband router joins the home's local area network (LAN) to the wide-area network (WAN) of the Internet.


By maintaining configuration information in a piece of storage called the routing table, wired or wireless routers also have the ability to filter traffic, either incoming or outgoing, based on the IP addresses of senders and receivers. Some routers allow a network administrator to update the routing table from a Web browser interface. Broadband routers combine the functions of a router with those of a network switch and a firewall in a single unit.

Protocol (Network)


A network protocol defines rules and conventions for communication between network devices. Protocols for computer networking all generally use packet switching techniques to send and receive messages in the form of packets.

Network protocols include mechanisms for devices to identify and make connections with each other, as well as formatting rules that specify how data is packaged into messages sent and received. Some protocols also support message acknowledgement and data compression designed for reliable and/or high-performance network communication. Hundreds of different computer network protocols have been developed each designed for specific purposes and environments.

Internet Protocols

The Internet Protocol family contains a set of related (and among the most widely used network protocols. Besides Internet Protocol (IP) itself, higher-level protocols like TCP, UDP, HTTP, and FTP all integrate with IP to provide additional capabilities. Similarly, lower-level Internet Protocols like ARP and ICMP also co-exist with IP. These higher level protocols interact more closely with applications like Web browsers while lower-level protocols interact with network adapters and other computer hardware.

Routing Protocols

Routing protocols are special-purpose protocols designed specifically for use by network routers on the Internet. Common routing protocols include EIGRP, OSPF and BGP.

How Network Protocols Are Implemented

Modern operating systems like Microsoft Windows contain built-in services or daemons that implement support for some network protocols. Applications like Web browsers contain software libraries that support the high level protocols necessary for that application to function. For some lower level TCP/IP and routing protocols, support is implemented in directly hardware (silicon chipsets) for improved performance.