Junos OS

Expand all | Collapse all

Shaping Dynamic PPPoE Subscribers over Psuedowire

Jump to Best Answer
  • 1.  Shaping Dynamic PPPoE Subscribers over Psuedowire

    Posted 03-01-2018 11:34

    I've got PPPoE subs terminating to an MX104 using psuedowire head-end termination.  I'm attempting to configuring shaping on the dynamic ppX interfaces, but I am getting this error:

     

    /kernel: if_pfe_pppoe_iflconfig_tlv: ps0.1073752125: underlying interface configurable only on a pppoe ifl
    cosd[1852]: per-unit-scheduler or hierarchical-scheduler is required M-^_��^P^A�M-^^
    jpppd: sdb_update_client_license: client:18031 state:2 licenses client count:1

     

    Note the "per-unit-scheduler or hierarchical-scheduler is required" -- I have hierarchial-scheduling on the anchor interface (lt-0/0/0) -- I'm not sure what else I can apply this to.  I've tried applying to the pseudowire-interface itself and get this:

     

    [edit interfaces ps0]
      'hierarchical-scheduler'
        Error in parsing interface name
    error: chasd_cfg_taz_read_interfaces_hpsched_config: dax_query error. query string [interfaces $if hierarchical-scheduler]

     

    The BNG is getting a shaping rate and burst rate from RADIUS.  Here is my dynamic profile config:

     

    pppoe-prof {
        interfaces {
            pp0 {
                unit "$junos-interface-unit" {
                    ppp-options {
                        chap;
                        pap;
                    }
                    pppoe-options {
                        underlying-interface "$junos-underlying-interface";
                        server;
                    }
                    keepalives interval 30;
                    family inet {
                        rpf-check;
                        unnumbered-address lo0.0;
                    }
                    family inet6 {
                        unnumbered-address lo0.0;
                    }
                }
            }
        }
        class-of-service {
            traffic-control-profiles {
                tcp-dynamic {
                    shaping-rate "$junos-cos-shaping-rate" burst-size "$junos-cos-shaping-rate-burst";
                    excess-rate proportion 0;
                }
            }
            interfaces {
                pp0 {
                    unit "$junos-interface-unit" {
                        output-traffic-control-profile tcp-dynamic;
                    }
                }
            }
        }
        routing-options {
            access {
                route $junos-framed-route-ip-address-prefix {
                    qualified-next-hop "$junos-interface-name";
                }
            }
        }
    }

     

    My anchor interface config:

     

    lt-0/0/0 {
        hierarchical-scheduler maximum-hierarchy-levels 2;
    }

     

     



  • 2.  RE: Shaping Dynamic PPPoE Subscribers over Psuedowire

    Posted 03-01-2018 13:54

    I also did a debug on cosd and saw this in the log:

     

    Mar  1 14:43:57 populate_meta_info(lt-0/0/0): fpc: 0x0 pic: 0x2E0
    Mar  1 14:43:57 cos_validate_feature(lt-0/0/0): support_egress_rich_queuing_capable_with_cchip(81)
    Mar  1 14:43:57 cos_validate_feature (error): support_egress_rich_queuing_capable_with_cchip - attrib-id: 81  sizeof result: 4
    Mar  1 14:43:57 cos_config_interfaces_scheduler_flag_check: ifl pp0.1073752150, no hierarchical or per unit scheduler flags set for ifd lt-0/0/0. cos_ifd->if_flags: 0x20

     

    Mar  1 14:43:57 cosd_iflm_handler: calling cosd_ifl_tcp_map
    Mar  1 14:43:57 cosd_ifl_tcp_map: pp0.1073752150 tcp 0x1d3fc00
    Mar  1 14:43:57 cosd_ifl_tcp_map: cannot map if hierarchical or per-unit scheduler is not configured for ifl = pp0.1073752150

     

    ----

    Notice the message "no hierarchical or per unit scheduler flags set for ifd lt-0/0/0. cos_ifd->if_flags: 0x20" -- odd thing is, I *do* have the hierarchial-scheduler set on lt-0/0/0...

     



  • 3.  RE: Shaping Dynamic PPPoE Subscribers over Psuedowire
    Best Answer

    Posted 03-01-2018 16:46
    I solved the issue.

    In case anyone else has this issue, the problem was that on my PIC (xe-0/0/0) that was tied to my LT interface was set to per-unit-scheduler. That has to be hieraechial as well.