IP addressing and routing

April 1st, 2008

Perhaps the most complex aspects of IP are IP addressing and routing. Addressing refers to how end hosts become assigned IP addresses and how subnetworks of IP host addresses are divided and grouped together. IP routing is performed by all hosts, but most importantly by internetwork routers, which typically use either interior gateway protocols (IGPs) or external gateway protocols (EGPs) to help make IP datagram forwarding decisions across IP connected networks.

Reliability of IP

April 1st, 2008

IP provides an unreliable service (i.e., best effort delivery). This means that the network makes no guarantees about the packet and none, some, or all of the following may apply:

* data corruption
* out of order delivery (packet A may be sent before packet B, but B can arrive before A)
* duplicate arrival
* lost or dropped/discarded packages

In terms of reliability the only thing IP does is ensure the IP packet’s header is error-free through the use of a checksum. This has the side-effect of discarding packets with bad headers on the spot, and with no required notification to either end (though an ICMP message may be sent).

To address any of these reliability issues, an upper layer protocol must handle it. For example, to ensure in-order delivery the upper layer may have to cache data until it can be passed up in order.

If the upper layer protocol does not self-police its own size by first looking at the Layer 2 Maximum Transmission Unit (MTU) size, and sends the IP layer too much data, IP is forced to fragment the original datagram into smaller fragments for transmission. IP does provide re-ordering of any fragments that arrive out of order by using the fragmentation flags and offset. Transmission Control Protocol (TCP) is a good example of a protocol that will adjust its segment size to be smaller than the MTU. User Datagram Protocol (UDP) and Internet Control Message Protocol (ICMP) are examples of protocols that disregard MTU size thereby forcing IP to fragment oversized datagrams.

The primary reason for the lack of reliability is to reduce the complexity of routers. While this does give routers carte blanche to do as they please with packets, anything less than best effort yields a poor experience for the end user. So, even though no guarantees are made, the better the effort made by the network, the better the experience for the user. Most protocols are built around the idea that error checking is best done at each end of the communication line, see End-to-end principle.

Reliability of IP

April 1st, 2008

IP provides an unreliable service (i.e., best effort delivery). This means that the network makes no guarantees about the packet and none, some, or all of the following may apply:

* data corruption
* out of order delivery (packet A may be sent before packet B, but B can arrive before A)
* duplicate arrival
* lost or dropped/discarded packages

In terms of reliability the only thing IP does is ensure the IP packet’s header is error-free through the use of a checksum. This has the side-effect of discarding packets with bad headers on the spot, and with no required notification to either end (though an ICMP message may be sent).

To address any of these reliability issues, an upper layer protocol must handle it. For example, to ensure in-order delivery the upper layer may have to cache data until it can be passed up in order.

If the upper layer protocol does not self-police its own size by first looking at the Layer 2 Maximum Transmission Unit (MTU) size, and sends the IP layer too much data, IP is forced to fragment the original datagram into smaller fragments for transmission. IP does provide re-ordering of any fragments that arrive out of order by using the fragmentation flags and offset. Transmission Control Protocol (TCP) is a good example of a protocol that will adjust its segment size to be smaller than the MTU. User Datagram Protocol (UDP) and Internet Control Message Protocol (ICMP) are examples of protocols that disregard MTU size thereby forcing IP to fragment oversized datagrams.
The primary reason for the lack of reliability is to reduce the complexity of routers. While this does give routers carte blanche to do as they please with packets, anything less than best effort yields a poor experience for the end user. So, even though no guarantees are made, the better the effort made by the network, the better the experience for the user. Most protocols are built around the idea that error checking is best done at each end of the communication line, see End-to-end principle.

Services provided by IP

April 1st, 2008

Because of the abstraction provided by encapsulation, IP can be used over a heterogeneous network (i.e., a network connecting two computers can be any mix of Ethernet, ATM, FDDI, Wi-Fi, token ring, etc.) and it makes no difference to the upper layer protocols. Each data link layer can (and does) have its own method of addressing (or possibly the complete lack of it), with a corresponding need to resolve IP addresses to data link addresses. This address resolution is handled by the Address Resolution Protocol (ARP).

Packetization of IP

April 1st, 2008

Data from an upper layer protocol is encapsulated inside one or more packets/datagrams (the terms are basically synonymous in IP). No circuit setup is needed before a host tries to send packets to a host it has previously not communicated with (this is the point of a packet-switched network), thus IP (Internet protocol) is a connectionless protocol. This is quite unlike Public Switched Telephone Networks that require the setup of a circuit before a phone call may go through (a connection-oriented protocol).

Internet Protocol

April 1st, 2008

The Internet Protocol (IP) is a data-oriented protocol used for communicating data across a packet-switched internetwork.IP is a network layer protocol in the Internet protocol suite and is encapsulated in a data link layer protocol (e.g., Ethernet). As a lower layer protocol, IP provides the service of communicable unique global addressing amongst computers

Virtual Network

April 1st, 2008

A virtual network provides the virtual links between nodes in a physical computer network to form a virtual network. The implementation of these virtual links may or may not correspond to physical connections between nodes.

The terms VLAN, VPN, and VPLS are all used to describe different types of virtual network.

A VLAN is a partitioning of a network into multiple subnets using a VLAN ID. The partitioned network can be on a single router, can be on multiple routers that would otherwise form a single network, or can be on a VPN.

A VPN is multiple remote routers (or networks) joined by some sort of tunnel over another network, usually a third party network. Two such routers constitute a ‘Point to Point Virtual Private Network’ (or a PTP VPN). Connecting more than two routers by putting in place a mesh of tunnels creates a ‘Multipoint VPN’.

A VPLS is a specific type of Multipoint VPN. VPLS are divided into Transparent LAN Services (TLS) and Ethernet Virtual Connection Services. A TLS sends what it receives, so it provides geographic separation, but not VLAN subnetting. An EVCS adds a VLAN ID, so it provides geographic separation and VLAN subnetting.

Virtual LAN

April 1st, 2008

A virtual LAN, commonly known as a VLAN, is a group of hosts with a common set of requirements that communicate as if they were attached to the same wire, regardless of their physical location. A VLAN has the same attributes as a physical LAN, but it allows for end stations to be grouped together even if they are not located on the same LAN segment. Network reconfiguration can be done through software instead of physically relocating devices.

A VLAN can be thought of as a broadcast domain that exists within a defined set of switches. Ports on a switch can be grouped into VLANs in order to limit traffic flooding since it is limited to ports belonging to that VLAN and its trunk ports. Any switch port can belong to a VLAN. Packets are forwarded and flooded only to stations in the same VLAN. Each VLAN is a logical network, and packets destined for stations that do not belong to the same VLAN must be forwarded through a routing device. Each VLAN can also run a separate instance of the spanning-tree protocol (STP).

VLANs are created to provide the segmentation services traditionally provided by routers in LAN configurations. VLANs address issues such as scalability, security, and network management. Routers in VLAN topologies provide broadcast filtering, security, address summarization, and traffic flow management. By definition, switches may not bridge IP traffic between VLANs as it would violate the integrity of the VLAN broadcast domain.

Virtual LANs are essentially Layer 2 constructs, whereas IP subnets are Layer 3 constructs. In a LAN employing VLANs, a one-to-one relationship often exists between VLANs and IP subnets, although it is possible to have multiple subnets on one VLAN or have one subnet spread across multiple VLANs. Virtual LANs and IP subnets provide independent Layer 2 and Layer 3 constructs that map to one another and this correspondence is useful during the network design process.

Cabling

April 1st, 2008

Twisted-pair Ethernet standards are such that the majority of cables can be wired ’straight-through’ (pin 1 to pin 1, pin 2 to pin 2 and so on), but others may need to be wired in the ‘crossover’ form (receive to transmit and transmit to receive).

10BASE-T and 100BASE-TX only require two pairs to operate, pins 1 and 2 (transmit or TX), and pins 3 and 6 (receive or RX). Since 10BASE-T and 100BASE-TX need only two pairs and Category 5 cable has four pairs, it is possible, but not standard, to run two network connections (or a network connection and two phone lines) over a cat 5 cable by using the normally unused pairs in these 10 and 100 Mbit/s configurations. This is not possible with 1000BASE-T since it requires all four pairs to operate, pins 1 and 2, 3 and 6 — as well as 4 and 5, 7 and 8.

It is conventional to wire cables for 10 or 100 Mbit/s Ethernet to either the T568A or T568B standards. Since these standards only differ in that they swap the positions of the two pairs used for transmitting and receiving (TX/RX), a cable with TIA-568A wiring at one end and TIA-568B wiring at the other will be a crossover cable. The terms used in the explanations of the 568 standards, tip and ring, refer to older communication technologies, and equate to the positive and negative parts of the connections.

A 10BASE-T node (such as a PC) that transmits on pins 1/2 and receives on pins 3/6 to a network device is most often on a “straight-through” cable in the “MDI” wiring pattern where RX goes to RX and TX goes to TX. A straight-through cable is usually used to connect a node to its network device. In order for two network devices or two nodes to communicate with each other (such as a switch to another switch or computer to computer) a crossover cable is often required at speeds of 10 or 100. If available, connections can be made with a straight-through cable by means of an “MDI-X” port, also known as an “internal crossover” or “embedded crossover” connection. Hub and switch ports with such internal crossovers are usually labelled as such, with “uplink” or “X”. For example, 3Com usually labels their ports 1X, 2X, and so on.

To connect two PCs directly together without a switch, an Ethernet crossover cable is often used. Although many modern Ethernet host adapters can automatically detect another PC connected with a straight-through cable and then automatically introduce the required crossover, if needed; if one or neither of the PC does not, then a crossover cable is required. If both devices being connected support 1000BASE-T according to the standards, they will connect regardless of the cable being used or how it is wired.

To connect two hubs or switches directly together, a crossover cable can be used, but some hubs and switches have an “uplink” port used to connect network devices together, or have a way to manually select MDI or MDI-X on a single port so that a straight-through cable can connect that port to another switch or hub. Most newer switches have automatic crossover (”auto MDI-X” or “auto-uplink”) on all ports, eliminating the uplink port and the MDI/MDI-X switch, and allowing all connections to be made with straight-through cables.

100BASE-TX follows the same wiring patterns as 10BASE-T but is more sensitive to wire quality and length, due to the higher bit rates.

1000BASE-T uses all four pairs bi-directionally and the standard includes auto MDI-X, however implementation is optional. With the way that 1000BASE-T implements signaling, how the cable is wired is immaterial in actual usage. The standard on copper twisted pair is IEEE 802.3ab for Cat 5e UTP, or 4D-PAM5; 4 D
Dmensions using PAM (pulse amplitude modulation) with 5 voltages, -2, -1, 0, +1, and +2
Unlike earlier Ethernet standards using broadband and coaxial cable, such as 10BASE5 (thicknet) and 10BASE2 (thinnet), 10BASE-T does not specify the exact type of wiring to be used but instead specifies certain “characteristics” which a cable must meet. This was done in anticipation of using 10BASE-T in existing twisted pair wiring systems that may not conform to any specified wiring standard. Some of the specified characteristics are attenuation, characteristic impedance, timing jitter, propagation delay, and several types of noise. Cable testers are widely available to check these parameters to determine if a cable can be used with 10BASE-T. These characteristics are expected to be met by 100 meters of 24 gauge unshielded twisted-pair cable, and 100 meters is the stated maximum length for baseband signal runs. However, with high quality cabling, cable runs of 150 meters or longer are often obtained and are considered viable by most technicians familiar with the 10baseT specification, though — as with all CSMA/CD network environments — the absolute limit on run length is determined by the size of the collision domain and cable quality. In reality, what meets the standards may not work, and those that don’t meet the standards might work.

100BASE-TX and 1000BASE-T both require a minimum of Category 5 cable (5e or 6 with 1000) and also specify a maximum cable length of 100 meters. Furthermore while 10BASE-T is more tolerant of poor wiring such as split pairs, poor terminations and even use of short sections of flat cable, 100BASE-T is not as much so, and 1000BASE-T is less tolerant still. Since testing of cable is often limited to checking if it works with Ethernet, running faster speeds over existing cable is often problematic. This problem is made worse by the fact that Ethernet’s autonegotiation takes account only of the capabilities of the end equipment not of the cable in between.

Ethernet over twisted pair

April 1st, 2008

There are several standards for Ethernet over twisted pair or copper-based computer networking physical connectivity methods. The currently most widely used of these are 10BASE-T, 100BASE-TX, and 1000BASE-T(Gigabit Ethernet), running at 10 Mbit/s, 100 Mbit/s, and 1000 Mbit/s (1 Gbit/s) respectively. These three standards all use the same connectors. Higher speed implementations nearly always support the lower speeds as well, so that in most cases different generations of equipment can be freely mixed. They use 8 position modular connectors, usually (but incorrectly) called RJ45 in the context of Ethernet over twisted pair. The cables usually used are four-pair Category 5 or above twisted pair cable. Each of the three standards support both full duplex and half-duplex communication. According to the standards, they all operate over distances of ‘up to 100 meters’.

The common names of the standards are derived from several aspects of the physical media. The number refers to the theoretical maximum transmission speed in Megabits per second (Mbit/s). The BASE is short for baseband, meaning that there is no frequency division multiplexing (FDM) or other frequency shifting modulation in use; each signal has full control of wire, on a single frequency. The T designates twisted pair cable, where the pairs of wires are twisted together for purposes of reducing crosstalk (FEXT and NEXT) when the pulsing direct current goes across the wires and creates electromagnetic induction effects. Where there are several standards for the same transmission speed, they are distinguished by a letter or digit following the T, such as TX. Some higher-speed standards use twin-axial cable, designated by CX.