Day One Books Archive
These Day One Books are outdated, soon to be out of print and unsupported. Use at your own risk
Administrator Administrator
Administrator
‎01-16-2013 12:09 PM
‎01-16-2013 12:09 PM

Packet_Walkthrough_CoverSmall.jpgOne of the most exciting advantages of ping is its ability to uncover details of the internal architecture of M/MX/T-Series routers. In Antonio Sanchez-Monge’s new book, ping becomes a tourist guide that takes you on a packet walkthrough and provides you with a new perspective of the device architecture. Here is a book brimming with valuable information for troubleshooting the interactions between different components inside a router, with unique usage applications for both large and small network operators.

 

This book is available in a free PDF edition and includes: (1) a Copy & Paste edition in RTF format (open in any text editor), as well as (2) the complete packet captures in libpcap format. Simply download the linked files below.

 

  • For iPads and iPhones, use your device’s iBook app. Search for “Juniper Networks” in the iBookstore. Download directly to your iPhone or iPad. 
  • For Kindles, Androids, Blackberry, iPhones/iPads, Macs. and PCs, download the free Kindle app for your device. Go to the Kindle Store using your device’s Kindle app and search for “Day One Juniper.” Download directly to your device.

Start a discussion, post a comment or let us know what Day One books you really want, and we'll pass the info to the editors.

Jan 28, 2013
maheswaran.b

Good document to understand the packet flow. I believe this kind of document was not avilable earlier and it certainly helps the end user.

 

Thanks.

Jan 29, 2013
Juniper Employee

Ato is simply the lord of the pings.  

Feb 6, 2013
Recognized Expert Recognized Expert

Note from the author. Figures 3.5 and 3.6 are slightly incorrect. In Trio PFEs, for a 1000-byte packet like in the Figures:

 

  • A parcel is built with the first 320 bytes of the packet.
  • The rest of the packet is stored in 128-byte segments.

P.S. Thanks for the feedback, maheswaran

Feb 25, 2013
Recognized Expert Recognized Expert

Note from the author. The sweep option allowing to send packets with different sizes with ping is not currently available in Junos CLI. However, there is an Operational script that allows to do that:

 

http://www.juniper.net/us/en/community/junos/script-automation/library/operations/op-pingsweep/

 

Thanks to David Janssens for the tip!

Mar 9, 2013

Hello

 

very nice book. 

 

Not yet available in the iBookStore? If yes, i didn't find it

 

thks

 

david

Mar 9, 2013
Recognized Expert Recognized Expert
Mar 10, 2013
Recognized Expert Recognized Expert

In the context of a question by serkan:

 

http://forums.juniper.net/t5/Routing/MS-DPC-healthy-check/td-p/182049

 

serkan asked me unicast if the methods outlined in chapters 3 and 5 could be applied for MultiServices PIC/DPC. The answer is yes.

 

(1) Testing the MS-DPC or PIC control plane connections:

 

user@MX> show chassis fpc pic-status
[…]
Slot 2   Online       MS-DPC
  PIC 0  Online       MS-DPC PIC
  PIC 1  Online       MS-DPC PIC

 

user@MX> file show /etc/hosts.junos | match fpc2    
128.0.0.18       fpc2
128.0.1.18       fpc2.pic0
128.0.2.18       fpc2.pic1

And these IPv4 addresses can be ping'ed in the __juniper_private1__ routing-instance.

 

(2) Testing the MS-DPC or PIC forwarding plane connections:


In this example:

 

user@router> show interfaces terse | match vt-
vt-2/0/0                up    up
vt-2/1/0                up    up

We can test each of the two PICs embedded in the MS-DPC. Here goes an example for PIC 2/0. We use an auxiliary ethernet port in a different MPC or DPC. Here is the configuration:

 

interfaces {
    xe-0/2/0 {
        gigether-options {
            loopback;
        }
        unit 0 {
            family inet {
                address 10.123.1.1/30 {
                    arp 10.123.1.2 mac 28:c0:da:05:6c:a4;
                }
            }
            family mpls;
        }
    }
    vt-2/0/0 {
        unit 0 {
            family inet;
        }
    }
    lo0 {                               
        unit 100 {
            family inet {
                address 10.123.100.100/32;
            }
        }
    }
}
routing-options {
    static {
        route 10.123.100.100/32 {
            next-hop 10.123.100.1;
            resolve;
        }
    }
}
protocols {
    mpls {
        static-label-switched-path INGRESS {
            ingress {
                next-hop 10.123.1.2;
                to 10.123.100.1;
                push 299776;
            }                        
        }
        interface xe-0/2/0.0;
    }
}
routing-instances {
    TEST {
        instance-type vrf;
        interface vt-2/0/0.0;
        interface lo0.100;
        route-distinguisher 65000:1;
        vrf-target target:65000:100;
        routing-options {
            static {
                route 0.0.0.0/0 next-table inet.0;
            }
        }
    }
}

 

The key here is label 299776, that is coming from here:

 

user@MX> show route output interface vt-2/0/0.0  
[...]
mpls.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

299776             *[VPN/0] 00:15:54
                    > via vt-2/0/0.0, Pop      

And the ping test:

 

user@MX> ping 10.123.100.100 rapid count 1000      


Actually causes transit traffic to be processed by interface vt-2/0/0. This traffic goes through the MS-DPC #2 and through PIC #2/0.

May 23, 2013
Juniper Employee

Ato,

 

very nice book.

 

On page 23 there is a typo. First of all, captures don't show MAC addresses (although text talks about seeing some MAC addresses in the captures), and 

 

ping 239.1.1.1 interface ge-1/0/0.101 count 1

 

should have additional 'bypass-routing' option, otherwise still normal DMAC (not MCAST DMAC) is used.

 

thanks,

Krzysztof

May 23, 2013
Recognized Expert Recognized Expert
Thanks for useful feedback Krzsysztof!
Apr 7, 2014
amjad.khan.tanoli

Nice Sharing. Smiley Happy