IP specifies the addressing scheme and actual format of packets for communicate over a network. Networks combine internet protocol with a higher-level protocol which is known as Transmission Control Protocol, this establishes a virtual connection form source to destination. IP in easy way can be compared to the postal system. IP helps us to address a data package and give it to the system, but no direct link exist between sender and recipient. TCP/IP establishes a connection for two hosts, for a time period they can be used to send messages in both directions. There are two version currently used for Internet Protocol, IPv4 and a latest version IPv6. IPv6 is an upgrade to IPv4 Internet Protocol. IPv6 can coexist with older version of IPv4.
IPv4 - Internet Protocol Version 4
IPv4 is fourth version of Internet Protocol and it is used to identify multiple devices on a network by an addressing system. IP is designed to use in interconnected devices of packet-switched communication networks. IPv4 is most widely used internet protocol for connecting devices to Internet. Internet protocol version 4 uses a length of 32-bit address, allowing maximum of just over four billion addresses. With the rapid growth of Internet it is clear that number of unused Internet Protocol version 4 addresses will run out as every device including smartphones, computers and game consoles needs to be connected to Internet, which requires an IP address. A new IP addressing system IPv6 is deployed to fulfill needs for more IP address.
Internet Protocol Version 6
IPv6 also known as Internet Protocol next generation (IPng), it is the latest version of Internet Protocol reviewed in IETF standards committees and replacing current IP version of IPv4. IPv6 is the next generation of IPv4, It was develop as an upgrade to Internet Protocol and it will coexist with older version of IPv4 for a time period. IP version 6 is designed to help in the growth of the Internet, in terms of number of devices connected and amount of data traffic. IPv6 was been under development since mid-1990s. Internet protocol version 6 born out of issues that demand for internet protocol addresses will exceed its availability. Increasing the number of addresses is the most often benefit of IPv6 but there are some other important changes in IPv6 which will improve IP protocols:
- No more Network Address Translation
- Auto configuration of IP addresses
- Private address collisions removed
- Better routing for multicast
- Simpler format for header
- More efficient routing for Simplified IPs
- True quality for service
- Built-in privacy and authentication support
- Flexible extensions and options
- Easier administration (no DHCP)
Major Differences between IPv6 and IPv4 Addresses
An Internet protocol address is a set of binary numbers but it can be saved as text. For example, a 32 bit address in IPv4 is define in decimal as 4 numbers which are separated by “.”. Each number can range from 0 to 255. As, 220.127.116.11 could be define as an IP address. IPv6 addresses can mask up to 128-bit IP addresses in hexadecimal. IPv6 address can be written as 3abe:1900:4545:3:200:f8ef:fe21:67af
Following table shows major differences between IPv4 and IPv6
Existing routing protocols
Earliest TCP/IP routing were born at the time when computer networks were very small, a single backbone was used to serve the Internet. At that time, many factors such as table size for routing, scalability and efficiency were not very important. With the advancement of technology more complex and huge size network are formed, so a need for advanced TCP/IP increased. Now we will focus on the Internet protocols which are actively used today.
Interior routing protocols
Interior routing protocols also known as interior gateway protocols (IGP) are protocols used to manage routing for a collection of networks which are administered by a single administrator. These networks also known as autonomous systems. The Internet itself has no clear internal routing protocol. RIP is a popular, while OSPF is currently recommended protocol, other protocols dual IS-IS and proprietary EIGRP are used by some networks. Some other previous protocols HELLO and GATED have abandoned as they are inefficient and technically obsolete.
The RIP (Routing Information Protocol) is an IGP that routes using a distance vector metrics. The cost of routing is measured by number of hops (links), regardless the state of specific hops. This is a gross simplification. RIPv2 is 2nd version of the RIP protocol, it adds additional information for routing, and it also include some security considerations. The main advantage of RIP protocol is that it is very small in size as requires little code, it is easy for implementation, which makes it more useful for smaller networks. RIP process each node periodically and broadcast the distance between itself and other nodes. The metric which is is used for the distance simply is the number of hops. RIP nodes work on the information broadcasted through other nodes and build routing tables by themselves to all nodes in specific network. The network makes its own mask through iterations of routing broadcasts.
Open Shortest Path First (OSPF) is relatively a new protocol, it is designed by OSPF Working Group of IETF. OSPF is now at version 2. OSPF is one of the shortest-path-first protocol which is bases on routing decisions and on linking state records are dynamically updated. OSPF is recommended for IPv6, and IETF is designing latest version of OSPF to use with IPv6, the changes required are minimal. OSPF with IPv6 can run between IPv6 nodes, link state data will not share with IPv4 data and the two versions for IPv4 and IPv6 OSPF will operate parallel. The main changes required in IPv6 OSPF are
- The link records is identified by 128-bit field.
- The routers will be reorganized by their IPv6 addresses.
- The network areas address will be reorganized by their IPv6 addresses.
- An integer is used for signifying the numbers of bits for prefix.
Exterior routing protocols
Exterior routing protocols (ERP) or external gateway protocols (EGP) is protocol for routing data packets between autonomous networks. ERP typically view autonomous networks as black boxes with defined entry and exit points, it attempt to route data between points as much efficient as possible.
The IDRP (Inter-Domain Routing Protocol) was designed to use for OSI protocols which were developed by ISO. The most designers for BGP were involved in the designing of IDRP, the opinion among IPv6 designers was that adopting IDRP is wiser than designing a new version for IPv6. Some other reasons for this choice are:
- It does not contains any OSI dependencies
- It was designed for multiprotocol network routing, it can compute routing data from multiple address families.
The changes required for IDRP in order to support IPv6 are just by defining the content for certain fields.
Coexistence of IPv4 with IPv6
In the ideal world, entire Internet will be soon converted to IPv6, so everyone will carry on with their business using IPv6. But in reality, the transition will not be fast as many sites will probably show resistance for switching to IPv6 technology. In the start, sites which will benefit by IPv6 will be academic sites as they want to exploit new opportunities of IPv6. It is really hard to convince any website to upgrade, because the system they are using works well. The fact is that for a fair time period Internet will have coexisting of both IPv4 and IPv6. This arises some special issues for routing, as IPv6 fundamentally differs from IPv4. A network which is using IPv6 presents no issues, as it can communicate using IPv6 and use IPv6 routing protocols, it can also communicate externally via IPv4. A problem arises when we have two IPv6 networks which are separated by sea through IPv4 networks. In this case the routers of IPv6 domain must make a tunnel from IPv4 network.
Upgrading Issues and Recommendations
Multiple problems surface in the process of migrating from IPv4 to IPv6. First issue is the assignment of IPv6 IP addresses, considering the huge size of Internet it is a time taking task. To help in migration, a mapping can be helpful for IPv4 addresses to IPv6 which in common is achieved by using 96-zero-bit prefix. This allows the IPv6 software to handle IPv4 addresses. IPv6 routing is a hierarchical routing while the IPv4 addresses generally do not correspond to network topology, so the algorithm of IPv6 cannot be used in routing of IPv4 addresses. The use of changed IPv4 addresses is not a permanent measure, IPv4 will be in limited in use for next ten years to come. At first, routing IPv4 addresses in IPv6 seems like an impossible task. However, the issue is moved away by recent use of CIDR (classless inter-domain routing) in IPv4 routing. The CIDR is used to curb the increase in routing tables by variable-length prefixes of IPv4 address, and it does not uses fixed-length network IDs. In CIDR addresses are generally defined by political and/or geographical boundaries, on the other hand IPv6 address are defined by multiple abstract levels. The CIDR addresses show one possibility of using embedded information for routing in IPv4 addresses and IPv6 routing. IPv6 addresses does not need to follow geographical or political boundaries because this would not give proper aggregation for address. Networks should not follow geographical boundaries, as geographical areas typically have many ways to connect by the Internet providers. Providers does arise some difficulties, in a sense it bond a customer to particular provider as changing providers will changes network address. If a customer shifts from provider called ‘A’ to another provider called ‘B’, there are possibly two possibilities for IP address
- The customer ask both providers to allow him use old IP address. It is easy for customer, this will forces B to change the whole Internet routing so that the traffic for specific customer should always be routed through A’s network. After some time, this will lead towards a newer version of current routing table explosion issue.
- Customer change all stations in his network in order to use new IP address. This option is ideal for providers, but it require lots of changing for customer using IPv4 address.
IPv6 address auto-configuration process enables easy redefined mapping of networks, which makes the second option easier to deal with. Since IPv6 addresses direct to interfaces in place of network hosts, customer has an option to connect with both networks, routing packets to any of the networks is dependent on network load and some other factors. This was impossible to do in IPv4. IPv6 addresses provide convenient hierarchy, the actual definition of addresses themselves is probably a slow process which is complicated by non-technical problems.
The transfer from IPv4 to IPv6 is inevitable, the fact is that this transition will be not any easy way. The latest routing protocols (OSPF, IDRP) support CIDR (classless routing), which extends to IPv6 routing. Older protocols are tied to 32-bit IPv4 routing format will soon become obsolete, as there is not any real reason to using them. Interim functions such as tunneling, IPv6 encapsulation in IPv4 enable smooth transition, as the fact is that a transition should be taken place. IPv6 provide lot more benefits from its previous version and it is the need of future to move a smoothly transition between both protocols.
Amoss, J. John and Daniel Minoli. Handbook of IPv4 to IPv6 Transition. Taylor & Francis, 2007.
Beijnum, Iljitsch van. Running IPv6. Apress, 2005.
Donahue, A. Gary. Network Warrior. O'Reilly Media, Inc., 2008.
Doyle, Jeff and Jennifer DeHaven Carroll. Routing TCP/IP 1. Cisco Press, 2005.
http://www.techsutram.com/2009/03/differences-ipv4-vs-ipv6.html. 01 March 2009.
IPv4 to IPv6 Transition Tools. Information Gatekeepers Inc, n.d.
Li, Qing, Jinmei Tatuya and Keiichi Shima. IPv6 Advanced Protocols Implementation. Morgan Kaufmann, 2010.
Moy, J. T. OSPF: Anatomy of an Internet Routing Protocol. Addison-Wesley Professional, 1998.
Sportack, Mark. Ip Routing Fundamentals. Cisco Press, 1999.