Ads 468x60px

Tuesday, August 30, 2011

Understanding IPv6 Extension Headers in Details

In last post, we have seen all basics of IPv6 headers. As we know the IPv6 header is very efficient as compared to IPv4 header due to less fields in IPv6 header and extension header approach in Next header field.

These extension headers are added only if needed. Extension headers are appended after the basic datagram header as per requirements.

The extension headers numbers may be more in a single datagram, so in this case how to identify, how many extension headers are placed ?  For this Header chaining mechanism is introduced.
It helps to identify next headers and upper layer protocol information.

In IPv6 the Next Header field has below responsibilities
  1. If there is an extension header present, the Next Header field determines its type and value. Every extension header also contains its own Next Header field identifying the next following data.
  2.  It finds next extension header with particular value. Any extension headers  will be chained with other header by simply announcing who is next header.
  3. The last extension header in Next header fields identifies the upper-layer protocol (TCP/UDP) to which the datagram content should be passed.


Below you can find the details about extension headers identification numbers/values and protocol identification numbers.



 As the IPV6 is having this approach of extension headers, When the number of Extension headers increases, It is arranged sequentially , most important header for all node (router/device) will be placed first and header important for destination will be placed at last. That means no need to look into each Extension header field for processing. The first extension header will tell what next action needs to be taken.

This process improves the processing performance significantly.


Below diagram process shows some examples of Header chaining process for better understanding. The first datagram is plain IPv6 and TCP, the second one contains a single extension header (Routing) and the chain in third datagram includes two extension headers (Routing and Fragment).

IPv6 header Next = 6 (TCP)
TCP segment
 Above a plain datagram without any extension headers.


IPv6 Header Next =43 (Routing)
Routing Header Next =6 (TCP)
TCP segment
 Datagram containing Routing extension header in Next header.


IPv6 Header Next =43 (Routing)
Routing Header Next =44 (Fragment)
Fragment Header Next =6 (TCP)
TCP segment
 Datagram containing Routing and fragment extension headers.



Let’s see some important extension headers in details -

Routing Header

The Routing extension header is responsible for route information of the datagram/packet. It allows user to define some sequence of nodes/devices of (IPv6 addresses) from which the datagram/packet should must pass/travel to reach destination.

Two types of options are defined in Routing extension header for efficient processing –

Type 0  - is a normal,  allows all router addresses in sequence to reach to destination.
Type 2 -  is a used for mobility purposes  (source and destination)

Type -0 in Details,

In this case the Routing header contains two pieces of information:

1. Sequence(path) of nodes/routers  with IPv6 addresses to reach destination.
2. Identifies how many routers are passed and how many are remaining to reach destination.

Working of Type-0 (Routing headers) headers in action –
  • The sender use this feature and adds routing header to datagram/packet.
  • In this header next hop/node address is placed as address of first checkpoint which is in between router in path to reach Destination address.
  • It also adds the Routing header containing the sequence of remaining routers/nodes information.
  • The final destination (its real target) is the last member of this sequence. 
  • When delivered to the Destination Address (actually the first node/Router) the router finds the Routing header and realizes that i am just a path router.
  • So it swaps the address in the Destination Address and the next address from behind of the Routing header and remaining sequence left is decreased by 1 and datagram/packet is sent to the next node/router.


This process is executed on every Router.As the remaining sequence number is left 0, that means it reached to destination.


Type 2  in Details –

It just contains destination address. That means it is directly delivered to destination address using source as any temp address also known as home address. When the packet delivered to destination with home address, it present the data to destination with upper layer protocols details with home address.

Fragmentation Extension header-
  
Every lower-layer technology will use IPv6 to transport data in future over network. To transport datagrams over IPv6 , The lower layer devices have to consider packet size for IPv6 also known as MTU (Maximum Transmission Unit).
If the IPv6 datagram is longer than specified MTU 1500 bytes, the data must be divided/fragmented/chopped up and divided into set of smaller IPv6 datagrams, called fragments.
Fragments are transported over IPv6 network from source to destination and assembled by the receiver/destination to create the original packet/datagram. This is known as fragmentation.


Let’s see how the fragment extension headers works in IPv6 next header. The fragment extension header containing three important fields to perform fragmentation proces –

  • Identification field -  It helps to identify same datagram/packet from all, Which is originally fragmented from source. It is identified with unique values.
  • Offset -  It helps to identify the sequence numbers of fragments and re-assemble the fragmented data/fragments properly using sequence numbers.
  • More fragmentsThis flag announces if this fragment is the last one or if another fragment is still there.


The helps to destination to identify the full datagram is arrived or not from source.

Process - The destination router collects all packets having Fragmentation Next header, using the inside fields. It identifies the fragments, using offset it reassembles properly.  Using more fragments it confirms that all fragments for particular packet is received.

But fragmentation affects router packet processing, So IPv6 came with new guidelines about MTU-

  • Minimum allowed MTU on IPv6 supporting links is 1280 Bytes (1500 Bytes is recommended). It decreases the need for fragmentation every time. 
  • Only the sender is allowed to fragment a datagram/packet. If some in between Router needs to forward it through a link with insufficient MTU, It must drop the datagram and send an ICMP message to the sender informing datagram drop and the MTU mismatch information.
  • Every router has to know the Path MTU for all its neighbors to keep the communication efficient.
  • Path MTU is the supported MTU size with route between the sender and destination. This is the largest datagram size deliverable with particular route. Source should try to send datagrams/packets of this size ,since they are the most efficient.



Path MTU is calculated based on ICMP messages. The packet is sent out on link with MTU value of our device, Then if the ICMP fail message is received due to different MTU size in path, Then sender decreases MTU size and send the ICMP message again, This process will continue till the packet is reached to destination.
            The MTU value is noted when the ICMP message is reached at destination and shared to neighbours as Path MTU.

Options Extension header-

IPv6 header is of 40 bytes fixed. The options is a extension header in IPv6. Options Header provides some additional information related to the datagram for processing packets same like IPV4. It is very important field in IPv4 for special packet processing requirements,

Here IPv6 options  header are having two groups:

Hop-by-Hop options - Options dedicated to every node forwarding the datagram,
Destination options - Options intended for the destination host only.


If Hop-by-hop options is used then it is placed at the start of all extension headers, since they are important for every router for forwarding the datagram. This option inform router that some important message is for you with Router alert - like jumbo frame and RSVP messages.

Destination options is mostly placed at last of extension headers. It is used in IPv6 Mobility supported  applications



In this post, I tried to explain details about IPv6 Extension headers simply with key points. I know this post is lengthy, But every topic was related to each other. So I tried to complete this all in same post itself.

Hope you didn’t get bored while reading. I tried to put in points so that it can be easily understandable.

Hope you like this post..

For any likes and feedback, Plz comment with your Name and mail Id. For new users you can use Name/URL option in account.

Thanks for reading…

Thursday, August 25, 2011

Maipu IOS

Hi, Many of you will be looking for latest IOS for Maipu Routers and switches.  To know your IOS is latest, you have to check the compile date of IOS in show version. 


Here is list of Latest IOS for different products -






This list is updated as on today's date - 25/08/2011


You can download Maipu IOS from - FTP server.


Maipu FTP Server - 221.10.5.194
Username - overseas
Password - overseas
Path - Technical support/IOS_softwares


In previous post I already shared more details about Maipu IOS like initials - 
http://startnetworks.blogspot.com/2011/05/maipu-ios-details.html


Hope this information is useful for you. 


For any feedback, Plz comment with your Name and Mail id. New users may use Name/URL option. 


Thanks for reading

Wednesday, August 24, 2011

IPv6 and IPv4 Headers


As we discussed in last post about IPv6 and IPv4 headers.  In this post we will see in details about it.
IPv6 header  design is focused mainly on simplicity - to keep the datagram as simple as possible and to keep the size of the headers fixed.
The  reason for this was to increase processing performance - simple constant size headers can be processed quickly, at or very close to wire-speed.

  • The IPv4 header format contains a lot of fields including some unpredictable optional ones leading to fluctuating header sizes. 
  • IPv6 shows a different approach - the basic header is minimized and  with constant/fix  size. 
  • Only important fields are included in IPv6 headers. 
  • Everything else has been separated from header and formed extension headers, which are attached on requirements in IPv6 headers.
Check in below diagram, the similarities and differences between IPv4 header format and IPv6 header format.



While designing IPv6 header, Engineers maintained some important IPV4 header fields in IPv6 header format also.

In above diagram, you can check different colours indicating similarities and differences.

Header Fields –

  • Version - Protocol version identification. It helps to identify protocol version as IPv6.
  • Traffic Class - Intended for the Quality of Service (QoS). It may distinguish various classes or priorities of traffic (in combination with other header fields, e.g. source/destination addresses).
  • Flow Label - Identifies a flow which is a “group of related datagrams or flow from same session”.
  • Payload Length – The Total Length is the length of the IPv4 packet including the header.But in IPv6, the Payload Length does not include the 40-byte IPv6 header. It save the host or router receiving a packet from having check whether the packet is large enough to hold the IP header in initial phase. Making for a small efficiency gain. Despite the name, the Payload Length field includes the length of any additional headers, not just the length of the user data.It is in Bytes, so the maximum possible payload size is 64 KB.
  • Next Header -The protocol header which follows, It identifies the type of following data - it may be some extension header or upper layer protocol (TCP, UDP) data.
  • Hop Limit - Time to Live (TTL) is now called Hop Limit in IPv6. The sending node assigns some value to this field defining the reach of given datagram. Every forwarding host decreases the value by 1. If decremented to zero, the datagram is dropped and an ICMP message is sent to the sender. It protects the IPv6 transport system against routing loops - in the case of such loop the datagram circulates around the loop for a limited time only.
  • Source Address - It contains the IPv6 address of the host who sent this datagram.
  • Destination Address - This is the target/destination address  where  the datagram should be delivered to particular IPv6 address.

 Details - 
  • The total length of the datagram header doubled (from 20 bytes to 40 bytes) although the IPv6 addresses are four times as long.
  • In IPv6  just a subset of IPv4 header fields have been adopted.
  • The whole second line of the IPv4 datagram, designed for fragmentation, has been moved to an extension header in IPv6.
  • The CRC (cyclic redundancy check) has been skipped for two good reasons: First, frame consistency is checked in lower layers, so it is largely redundant.
  • Second, CRC decelerates the datagram processing – every forwarding node decreases the datagram lifetime, so it changes the header and must recalculate the CRC.
  • Thanks to the constant header length the corresponding header length field is not necessary anymore.

Due to all these reasons, IPv6 headers are more efficient and less CPU intense to Routers than IPv4 headers. 

Hope this post is informative for you. 

Thanks for reading. For feedback and likes, Plz comment with Name and mail id, New users can use Name/URL option.


IPv6 - Basic Introduction



Hi , As we all know IPv6 is on its way to enter in our life. Why I am saying life ..?
Since in one year it is planned to implement in India and hopefully I know its same situation everywhere.


India's Internet Gateway and all Service provider is all equipped and ready with IPv6 Internet services. 

As right now we are using so many devices, Which are taking us on Internet like Mobile, Laptop, PC, Pads,etc. But we don't have enough IP addresses for usage. 

Right now major IPV4 addresses are allocated to U.S.  So as we need addresses, we don't have any other option than IPv6.

First a brief , Why we want IPv6 address ?
Right now we are facing severe shortage of public IP address, every device wants a public IP address to go on internet. Till now we are using NAT to survive or we can say to extend life of IPv4.  Otherwise IPv4 was suppose to expire years before.

Current Network Limitation with IPv4 Addresses - 
  • Shortage of Public IP addresses.
  • Mobility is limited.
  • New devices are lacking with IP address.
  •  Management issues.
  • IPv4 lacks scalability due to 4.4bn addresses. Major address pools are allocated to US.



Everybody is looking positively for IPv6 deployments. Since it’s our future …

Let’s see some Goals and Benefits of IPv6.

Goals -
  •  Every Network device should have Public IP address to use Internet.
  •  As we have public network, we can have IPSec and secure communication across Networks.
  • Mobility – In IPv6 we have tons of address, That means every Mobile devices will have Public address for communications.
  • IPv6 major target is to eliminate NAT.

Benefits –
  • IPv6 comprises of 128 bit address as compared to IPv4 32 bit address space.
  • It is having 3.4 x 1038 address, which is more than enough.
  • IPv6 is having very simpler header as compared to IPv4 header. If you compare size of header, its more than IPV4. But right now bandwidth is not issue or our concerns.
  • IPv6 has less fields in header, It will help to improve Router CPU performance as compared to IPv4 complex header. Which is CPU intense. 
  • As IPv6 header is simple, with less fields. So, Its very secure as compared to IPv4. 
  • In IPv6 apart from basic header, we have extension headers. Which will be used as per requirements.  For example a mobile node adds mobility related extension headers to its outgoing traffic.
  • IPv6 don’t have broadcast. Now in IPv6 everything will majorly work on Multicast.
  • ARP has been replaced with ICMP ND (Network discovery).
  • IPv6 will improve routing – Aggregated Routing entries are created to reduce Routing table sizes.
I just started making study notes on IPv6, So In upcoming post I will share more about IPv6.

Hope this post is informative for you.

Thanks for reading. For feedback and likes, Plz comment with Name and mail id, New users can use Name/URL option.


Tuesday, August 9, 2011

Serial Link Troubleshooting - Maipu


Today I was troubleshooting one case, Maipu router as CPE with last mile as Serial link.
 As we all know, serial interface configuration is not complicated.

Below is standard configuration for serial interface in Maipu routers.

interface serial0/0
 physical-layer sync
 encapsulation ppp
ip address  x.x.x.x 255.255.255.252
exit

As router is DTE device, no need to configure clock rate under serial interface.
Then also the line protocol was not coming up. After debugging the interface, I didn’t find any IPCP events.

After analysis of debugging logs we got to know, The peer router is  not sending IPCP packets to Maipu router.

So in show output we cannot see destination address, it is showing 0.0.0.0

serial0/0:
     line protocol is down
     Flags: (0x80f0) POINT-TO-POINT MULTICAST RUNNING
     Type: PPP
     Internet address: x.x.x.x/30
     Destination Internet address: 0.0.0.0
     Queue strategy: FIFO , Output queue: 0/16 (current/max packets)(0)
     Metric: 0, MTU: 1500, BW: 128 Kbps, DLY: 20000 usec, VRF: global
     Reliability 255/255, Txload 1/255, Rxload 1/255
     5 minutes input rate 0 bits/sec, 0 packets/sec
     5 minutes output rate 0 bits/sec, 0 packets/sec
     0 packets received; 41 packets sent
     0 multicast packets received
     0 multicast packets sent
     0 input errors; 0 output errors
     0 collisions; 0 dropped
      LCP:REQUEST SENT
      encap-type: simply PPP
rxFrames: 3, rxChars: 54
txFrames: 438, txChars: 5894
rxNoOctet: 39, rxAbtErrs: 1, rxCrcErrs: 13
rxOverrun: 0, rxLenErrs: 38015188, txUnderrun: 0
DCD=up  DSR=up  DTR=up  RTS=up  CTS=up  TxC=up
Rate = 2000000 bps


As you can see the last status in bold is up. That means majorly no problem from our end.
Below is description for status –

DCD: INPUT/OUTPUT, the carrier detection signal.
DSR: INPUT, the data service request signal, input by the peer DTR.
DTR: OUTPUT, the terminal device is ready; output the DSR to the peer Side.
RTS: OUTPUT, the sending signals of the request data; output the CTS to the peer side, used for the hard flow control.
CTS: INPUT, allows the data sending signals, input from the peer RTS, used for hard flow control.
TxC: INPUT, the data sending clock. In DTE mode, it is input from the outside ,in DCE mode, generated by itself.


After this output, I added one command to configure manual IPCP peer under serial interface. Then it started working.

Below is working configuration –

interface serial0/0
 physical-layer sync
 encapsulation ppp
ip address  10.1.1.1 255.255.255.252
peer default address  10.1.1.2
exit

In future you face any time such issue you can try this command in Maipu routers for serial troubleshooting.

Hope this post is informative for you.

For any feedback, Plz comment with your Name and Mail id. New users can use
Name/URL option.

Thanks for reading…



Saturday, August 6, 2011

L2 QOS - 802.1p Priority


This section will explain you about 802.1p priority field in L2 header.This field is majorly used in L2 QOS. 

      The 802.1p priority is located in the L2 packet header. It is used when you don’t want to analyze the L3 packet header, but need to ensure QOS in L2 environment. As shown in below diagram, the 4-byte 802.1Q header contains 2-byte TPID (Tag Protocol Identifier valued as 0x8100) and 2-byte TCI (Tag Control Information).


Figure 1 - Ethernet Frame with 802.1Q Header

The following figure shows the detailed contents of the 802.1Q header. Ethernet frame with 802.1Q header.



Figure 2 802.1Q header

As shown in above diagram, the Priority field in TCI is the 802.1p priority. It comprises three bits and the value range is 0-7.

It is called 802.1p priority.

Hope this information is informative for you. In coming post, I will share 802.1p configuration for L2 QOS.

For any feedback, Plz comment with your name and mail ID. For new users, you can use Name/URL option. 

Thanks for reading...

Wednesday, August 3, 2011

The History of Metro Ethernet


News Article - 
A lot has happened with Ethernet in service provider networks in the past 10 years. And the Metro Ethernet Forum has been behind a lot of that progress. From promoting and education the industry on the merits of Ethernet in the service provider network, to actually defining carrier-class Ethernet specifications, the MEF has been at the forefront of advances in the technology on a larger-than-enterprise-network scale. Here are the major milestones the MEF has achieved over that time period:


2001

The MEF was formed to develop ubiquitous business services for enterprise users accessed over optical metropolitan networks. The group was founded by Nan Chen, director of product marketing at Atrica, and Ron Young, co-founder and chief marketing officer of Yipes Communications, with 16 initial member companies.
2002
The first technology demonstration of Ethernet services was conducted at the Supercommconference and trade show.

2003
The MEF board expands and Mark Fishburn is appointed chairman. The first MEF specification is published, which is the first formal definition of Ethernet service capabilities in the metro and wide area network.
2004
Ethernet inventor Bob Metcalfe joins as advisory director. Eight new specifications are published, and the first large multivendor demonstration of Ethernet services is conducted at SuperComm.
2005
The MEF defines "Carrier Ethernet" by specifying standardized business services, and scalability, reliability, quality of service and service management attributes. Included in these are:
• Worldwide services traversing national and global networks
• Access networks to provide availability over fiber, copper, cable, PON and wireless
• Economy of scale from the resulting converged business, residential and wireless networks sharing the same infrastructure and services
MEF also introduces a certification program, publishes three new specifications, conducts a large multivendor demonstration of Carrier Ethernet at the Globalcomm conference and trade show, and unveils the Carrier Ethernet Service Provider of the Year awards for North America, Europe and Asia
2006
Mike Tighe appointed as chairman of the board; Kevin Vachon appointed COO; Expansion of membership to more than 100 members; Expansion of scope from metro to access and wireless networks; Carrier Ethernet attributes further defined; Two new MEF specifications published.
2007
Carrier Ethernet launched in India; 320 systems, 45 equipment manufacturers and 17 service providers certified; Three new MEF specifications published for management, circuit emulation and services testing.
2008
Founding technical chair Bob Klessig retires and Paul Bottorff returns as technical committee co-chair; Expansion of Carrier Ethernet into mobile backhaul networks; Membership exceeds 150.
2009
Membership grows in the Asia Pacific and Carrier Ethernet expands to New Zealand; Ethernet Academy for peer reviewed papers, moderated forums, groups and community launched, and adds live chat, personal web pages and podcasting; 500+ systems, 75 equipment manufacturers, 30 service providers are certified; Thousands of tests conducted, 750+ certifications granted; Industry certification program for Link OA&M unveiled; Service Provider Awards Program launched; introduction of MEF Global Interconnect Program; Multiple technical specifications published; Hosted Ethernet Business Services seminars conducted in Bangalore, Delhi, Mumbai.   
2010
Ethernet Academy reaches more than 1,000 registered Carrier Ethernet experts; Extended Ethernet to Ethernet (External Network-to-Network Interface) and MEF 7.1 EMS-NMS Ratified








*** This article is taken from other source 
Related Posts Plugin for WordPress, Blogger...