Project

General

Profile

Juniper ACX2100 » History » Revision 4

Revision 3 (laforge, 10/30/2021 10:34 AM) → Revision 4/5 (laforge, 11/27/2021 12:22 PM)

{{>toc}} 

 h1. Juniper ACX2100 

 This is an Access Router that can carry up to 16x E1/T1 lines over SAToP/MPLS/Ethernet 

 h2. Pseudowire formats 

 The ACX2100 supports the following formats: 
 # SAToP (structure agnostic TDM over packet) 
 # Cisco-HDLC compatible framing 
 # PPP 
 # Inverse ATM Multiplex (used in classic 3G NodeB with Iub over ATM) 

 

 h3. SAToP 

 In this format, the pseudowire format consists of 256 bytes unaligned E1 bitstream sent every 1ms. 

 Layer stacking is: 
 * 14-byte Ethernet II, ethtype MPLS (0x8847) 
 * 4-byte MPLS header containing the label 
 * 4-byte Pseudowire Ethernet Control Word containing sequence number 
 * 256-byte E1 payload 

 See attachment:juniper-acx2100-satop-static-mpls.pcap 

 

 h2. Configuration related to E1/T1 pseudowires 

 The ACX2100 supports so-called _pseudowires_ which is the option of encapsulating/transporting E1/T1 circuits via Ethernet.    Contrary to other equipment, the ACX seems to be constrained to transport over MPLS only. 

 h3. Normal usage with OSPF, LDP and RSVP 

 First, the ACX establishes dynamic routing to its peers via OSPF. You can interface this to a Linux machine running FRR ospfd. 

 Second, the ACX establishes LDP.    You can interface this to a Linux machine running FRR ldpd. 

 Third, the ACX uses RSVP to configure the lables used for the individual pseudowires. There is currently no known Linux implementation that understands the specific RSVP use case for E1 pseudowires. 

 h4. Configuration on ACX side 

 <pre> 
 chassis { 
     fpc 0 { 
         pic 0 { 
             framing e1; 
         } 
     } 
 } 
 interfaces { 
     ce1-0/0/0 { 
         no-partition interface-type e1; 
     } 
     e1-0/0/0 { 
         encapsulation satop; 
         unit 0; 
     } 
     ge-1/0/0 { 
         unit 0 { 
             family inet { 
                 address 20.1.1.2/24; 
             } 
             family mpls; 
         } 
     } 
 } 
 protocols { 
     rsvp { 
         traceoptions { 
             file rsvp-log; 
             flag all; 
         } 
         interface ge-1/0/0.0; 
     } 
     mpls { 
         no-cspf; 
         label-switched-path PE1-to-PE2 { 
             to 20.1.1.222; 
         } 
         interface ge-1/0/0.0; 
     } 
     ospf { 
         area 0.0.0.0 { 
             interface ge-1/0/0.0; 
         } 
     } 
     ldp { 
         traceoptions { 
             file ldp-log; 
             flag all; 
         } 
         interface ge-1/0/0.0; 
     }                                    
     l2circuit { 
         neighbor 20.1.1.222 { 
             interface e1-0/0/0.0 { 
                 virtual-circuit-id 1; 
             } 
         } 
     } 
 } 
 </pre> 

 h3. static pseudowires 

 Much less documented/publicized, one can also simply crate a "static" label configuration for a    given l2circuit: 

 Example: 

 <pre> 
 protocols {  
     l2circuit { 
         neighbor 20.1.1.222 { 
             interface e1-0/0/0.0 { 
                 static { 
                     incoming-label 1000023; 
                     outgoing-label 23; 
                     send-oam; 
                 } 
                 virtual-circuit-id 1; 
             } 
         } 
     } 
 } 
 </pre> 

 In this configuration the E1 interface 0/0/0 is associated with the incoming label 1000023 and outgoing label 23.    You can send and receive the pseudowire payload using the above-mentioned mpls labels. The Ethernet destination address is the one associated with the neighboring router 20.1.1.122. 

 h2. boot log 

 <pre> 
 ELF file is 32 bit 
 Loading .text @ 0x00010060 (194856 bytes) 
 Loading .rodata @ 0x0003f988 (13601 bytes) 
 Loading .rodata.str1.4 @ 0x00042eac (16496 bytes) 
 Loading set_Xcommand_set @ 0x00046f1c (92 bytes) 
 Loading .rodata.cst4 @ 0x00046f78 (36 bytes) 
 Loading .data @ 0x00047000 (13544 bytes) 
 Loading .data.rel.ro @ 0x0004a4e8 (120 bytes) 
 Loading .data.rel @ 0x0004a560 (320 bytes) 
 Loading .data.rel.ro.local @ 0x0004a6a0 (288 bytes) 
 Loading .data.rel.local @ 0x0004a7c0 (68 bytes) 
 Loading .got2 @ 0x0004a804 (4172 bytes) 
 Loading .fixup @ 0x0004b850 (584 bytes) 
 Loading .sdata @ 0x0004ba98 (80 bytes) 
 Clearing .sbss @ 0x0004bae8 (128 bytes) 
 Clearing .bss @ 0x0004bb68 (9440 bytes) 
 ## Starting application at 0x00010060 ... 
 Consoles: U-Boot console   
 Will try to boot from 
 nand-flash0 

 FreeBSD/PowerPC U-Boot bootstrap loader, Revision 2.4 
 (venky@bng-junos-pool62.juniper.net, Tue Dec    3 12:09:59 IST 2013) 
 Memory: 1536MB 
 Trying to boot from nand-flash0 
 Loading /boot/defaults/loader.conf  
 /kernel data=0x9c9e24+0xa9f6c syms=[0x4+0x89470+0x4+0xc865f] 


 Hit [Enter] to boot immediately, or space bar for command prompt. 
 Booting [/kernel]...                
 Kernel entry at 0xa00000c0 ... 
 GDB: debug ports: uart 
 GDB: current port: uart 
 KDB: debugger backends: ddb gdb 
 KDB: current backend: ddb 
 platform_early_bootinit: MX-PPC Series Early Boot Initialization 
 mxppc_set_re_type: hw.board.type is ACX-2100 
 WDOG initialized 
 Copyright (c) 1996-2014, Juniper Networks, Inc. 
 All rights reserved. 
 Copyright (c) 1992-2006 The FreeBSD Project. 
 Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 
         The Regents of the University of California. All rights reserved. 
 JUNOS 12.3X54-D15.3 #0: 2014-11-29 23:21:25 UTC 
     builder@faranth.juniper.net:/volume/build/junos/12.3/service/12.3X54-D15.3/obj-powerpc/junos/bsd/kernels/JUNIPER-PPC/kernel 
 WARNING: debug.mpsafenet forced to 0 as ipsec requires Giant 
 Timecounter "decrementer" frequency 62500000 Hz quality 0 
 cpu0: Freescale e500v2 core revision 5.1 
 cpu0: HID0 80004000<EMCP,TBEN> 
 real memory    = 1585446912 (1512 MB) 
 avail memory = 1553989632 (1482 MB) 
 Security policy loaded: JUNOS MAC/runasnonroot (mac_runasnonroot) 
 Security policy loaded: Junos MAC/veriexec (mac_veriexec) 
 Security policy loaded: JUNOS MAC/pcap (mac_pcap) 
 MAC/veriexec fingerprint module loaded: SHA1 
 MAC/veriexec fingerprint module loaded: SHA256 
 ETHERNET SOCKET BRIDGE initialising 
 Initializing M/T platform properties .. 
 nexus0: <PPC e500 Nexus device> 
 ocpbus0: <on-chip peripheral bus> on nexus0 
 openpic0: <OpenPIC in on-chip peripheral bus> iomem 0xf7f40000-0xf7f600b3 on ocpbus0 
 uart0: <16550 or compatible> iomem 0xf7f04500-0xf7f0450f irq 58 on ocpbus0 
 uart0: console (9600,n,8,1) 
 uart1: <16550 or compatible> iomem 0xf7f04600-0xf7f0460f irq 58 on ocpbus0 
 lbc0: <Freescale 8533 Local Bus Controller> iomem 0xf7f05000-0xf7f05fff,0xf8000000-0xffffffff irq 17,16 on ocpbus0 
 cfi0: <AMD/Fujitsu - 8MB> iomem 0xffc00000-0xffffffff on lbc0 
 fsyspld0 iomem 0xfef00000-0xfef00fff on lbc0 
 ramdev0 iomem 0xfee1f000-0xfee1ffff on lbc0 
 i2c0: <MPC85XX OnChip i2c Controller> iomem 0xf7f03000-0xf7f03014 irq 59 on ocpbus0 
 8564 rtc0: <8564 RTC> on i2c0 
 USB2513i usb hub0: <USB2513Bi usb hub> on i2c0 
 tsec0: <eTSEC ethernet controller> iomem 0xf7f24000-0xf7f24fff irq 45,46,50 on ocpbus0 
 tsec0: hardware MAC address 40:a6:77:13:89:7f 
 miibus0: <MII bus> on tsec0 
 brgphy0: <BCM54610 10/100/1000baseTX PHY> on miibus0 
 brgphy0:    10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto 
 tsec1: <eTSEC ethernet controller> iomem 0xf7f25000-0xf7f25fff irq 51,52,56 on ocpbus0 
 tsec1: hardware MAC address 02:00:00:00:00:04 
 miibus1: <MII bus> on tsec1 
 gentbi0: <Generic ten-bit interface> on miibus1 
 gentbi0:    1000baseSX-FDX, 1000baseT-FDX, auto 
 ehci0: <Frescale Integrated USB 2.0 controller> iomem 0xf7f22000-0xf7f22503 irq 44 on ocpbus0 
 usb0: EHCI version 1.0 
 usb0 on ehci0 
 usb0: USB revision 2.0 
 uhub0: Freescale EHCI root hub, class 9/0, rev 2.00/1.00, addr 1 
 uhub0: 1 port with 1 removable, self powered 
 uhub1: SMSC USB2513Bi, class 9/0, rev 2.00/b.a0, addr 2 
 uhub1: multiple transaction translators 
 uhub1: 3 ports with 3 removable, self powered 
 umass0: vendor 0x13fe USB DISK 2.0, rev 2.00/1.00, addr 3 
 umass0: SCSI over Bulk-Only; quirks = 0x0000 
 umass0:0:0:-1: Attached to scbus0 
 Initializing product: 140 .. 
 Setting up M/T interface operations and attributes 
 platform_cookie_read not implemented 
 ###PCB Group initialized for udppcbgroup 
 ###PCB Group initialized for tcppcbgroup 
 da0 at umass-sim0 bus 0 target 0 lun 0 
 da0: < USB DISK 2.0 PMAP> Removable Direct Access SCSI-0 device  
 da0: 40.000MB/s transfers 
 da0: 7640MB (15646720 512 byte sectors: 255H 63S/T 973C) 
 Kernel thread "wkupdaemon" (pid 45) exited prematurely. 
 Trying to mount root from ufs:/dev/da0s2a 
 Invalid time in real time clock. 
 Check and reset the date immediately! 
 Process-1 beginning MFSROOT initialization... 
 Creating MFSROOT... 
 /dev/md0: 25.0MB (51196 sectors) block size 16384, fragment size 2048 
         using 4 cylinder groups of 6.25MB, 400 blks, 896 inodes. 
 super-block backups (for fsck -b #) at: 
  32, 12832, 25632, 38432 
 Populating MFSROOT... 
 Setting up mounts... 
 Changing Root to MFSROOT... 
 Continuing boot from MFSROOT... 
 Attaching /packages/jbase via /dev/mdctl... 
 Mounted jbase package on /dev/md1... 
 J 
 Verified manifest signed by PackageProduction_12_3_0 
 Verified jboot signed by PackageProduction_12_3_0 
 Verified jbase-ppc-12.3X54-D15.3 signed by PackageProduction_12_3_0 
 Setting up ACX specific options 
 Mounted jkernel package on /dev/md2... 
 Verified manifest signed by PackageProduction_12_3_0 
 Verified jkernel-ppc-12.3X54-D15.3 signed by PackageProduction_12_3_0 
 Mounted jpfe package on /dev/md3... 
 Mounted jdocs package on /dev/md4... 
 Verified manifest signed by PackageProduction_12_3_0 
 Verified jdocs-12.3X54-D15.3 signed by PackageProduction_12_3_0 
 Mounted jroute package on /dev/md5... 
 Verified manifest signed by PackageProduction_12_3_0 
 Verified jroute-ppc-12.3X54-D15.3 signed by PackageProduction_12_3_0 
 Mounted jcrypto package on /dev/md6... 
 Verified manifest signed by PackageProduction_12_3_0 
 Verified jcrypto-ppc-12.3X54-D15.3 signed by PackageProduction_12_3_0 
 swapon: adding /dev/da0s4WARNING: /var was not properly dismounted 
 b as swap device 
 Checking file systems status for recovery action... 
 /var and /var/log bsdlabel found 
 Checking sanity of /var [ /dev/da0s3f ] ... done (full) 
 Checking sanity of /var/log [ /dev/da0s3d ] ... done (full) 
 Checking sanity of /config [ /dev/da0s2e ] ... done (full) 
 ** /dev/da0s1a 
 FILE SYSTEM CLEAN; SKIPPING CHECKS 
 clean, 368832 free (40 frags, 46099 blocks, 0.0% fragmentation) 
 ** /dev/da0s1e 
 FILE SYSTEM CLEAN; SKIPPING CHECKS 
 clean, 47221 free (21 frags, 5900 blocks, 0.0% fragmentation) 
 kern.init_chroot_path:    -> /mfsmnt 
 Automatic reboot in progress... 
 Executing tunefs on /... 
 Enable softupdates for /... 
 tunefs: soft updates cannot be enabled until fsck is run 
 tunefs: /dev/md0: failed to write superblock 
 Enable softupdates for config... 
 tunefs: soft updates remains unchanged as enabled 
 Will be using platform specific rc.mount-var to mount var 
 *** No fsck will be done by us... 
 Enable softupdates for var... 
 tunefs: soft updates remains unchanged as enabled 
 tunefs: soft updates remains unchanged as enabled 
 Mounting var... 
 Mounting var/log... 
 Creating initial configuration...mgd: warning: could not open /config/juniper.conf.md5: No such file or directory 
 Setting up ACX specific options 
 mgd: commit complete 
 Setting initial options:    debugger_on_panic=NO debugger_on_break=NO. 
 Starting optional daemons: . 
 Doing initial network setup: 
 . 
 Initial interface configuration: 
 additional daemons:. 
 checking for core dump... 
 savecore: Reboot reason(s): 0x1: power cycle/failure  
 No dump exists 
 Setting up ACX specific options 
 Additional routing options:kern.module_path: /boot//kernel;/boot/modules -> /modules/peertype;/modules/ifpfLoading the IMA Link Media Layer; Attaching to media services layer 
 Loading the IMA Group Media Layer; Attaching to media services layer 
 e_drv;/modules/ifpfe_media;/modules/platform;/moLoading the SONET Media Layer; Attaching to media services layer 
 dules; 
 kld netpfe media: ifpfem_ds0 ifpfem_ds1e1 ifpfem_ds3e3 iLoading the CHMIC module 
 fpfem_ima ifpfem_otn ifpfem_sonetkld netpfe drv: ifpfed_atm ifpfed_chmic ifpfed_controller ifpfed_ds0 ifpfed_ds1e1 ifpfed_ds3e3 ifpfed_eth ifpfed_irb ifpfed_lt ifpfed_ml_cmn ifpfed_ml_ha ifpfed_posLoading POS driver 
  ifpfed_pppoe ifpfed_sa Loading Aggregate sonet driver 
  ifpfed_svcs ifpfed_vtkld platform: mt_ifpfeLoading Multilink Services PICs module. 
 Loading the M&T Platform NETPFE module 
 kld peertype: peertype_xdpc ipsec kld. 
 Doing additional network setup:. 
 Starting final network daemons:. 
 Run ACX dual root init to setup sysctls and other stuff... 
 Boot media /dev/da0 has dual root support 
 WARNING: JUNOS versions running on dual partitions are not same 
 ** /dev/da0s1a 
 FILE SYSTEM CLEAN; SKIPPING CHECKS 
 clean, 368832 free (40 frags, 46099 blocks, 0.0% fragmentation) 
 setting ldconfig path: /usr/lib /opt/lib 
 starting standard daemons: cron. 
 Initial rc.powerpc initialization:. 

  Lock Manager 
 RDM Embedded 7 [04-Aug-2006] http://www.birdstep.com 
 Copyright (c) 1992-2006 Birdstep Technology, Inc.    All Rights Reserved. 

 Unix Domain sockets Lock manager 
 Lock manager 'lockmgr' started successfully. 

 Database Initialization Utility 
 RDM Embedded 7 [04-Aug-2006] http://www.birdstep.com 
 Copyright (c) 1992-2006 Birdstep Technology, Inc.    All Rights Reserved. 

 /var/pdb/profile_db initialized 

 Profile database initialized 
 Local package initialization:. 
 kern.securelevel: -1 -> 1 
 starting local daemons:. 
 Fri Jan    1 00:04:38 UTC 2010 
 platform_cookie_read not implemented 

 Amnesiac (ttyu0) 

 login:  
 </pre>
Add picture from clipboard (Maximum size: 48.8 MB)