Greetings,

Sorry for the dumb question, but I'm trying to work out how to set the
extended communities.  Anybody know how to set the Link Bandwidth Extended
communities?

As defined here:
https://tools.ietf.org/html/draft-ietf-idr-link-bandwidth-04

Where we're hoping to do this:
http://www.juniper.net/techpubs/en_US/junos14.1/topics/topic-map/bgp-multipath-unequal.html

Basically, need to set the community to:
"
   This document defines a specific application of the two-octet AS
   specific extended community.  IANA is requested to assign a sub- type
   value of 0x04 for the link bandwidth extended community.


      Name                                           Value
      ----                                           -----
      non-transitive Link Bandwidth Ext. Community  0x4004
"

I've been reading at the data types section of the bird doco (
http://bird.network.cz/?get_doc&f=bird-5.html ), and trying different way
for a while now, and just don't seem to be able to get it right.

e.g.
export filter { bgp_ext_community.add((4, 65300, 999)); accept; };
( Mostly stolen from this nice example:
http://bird.mpls.in/projects/mpls-bird/wiki/Bird_pe/2 )

On a juniper this is a config to apply a link bandwidth community:
-------------------------
protocols {
    bgp {
        group CORE {
            type internal;
            description "core full mesh";
            passive;
            log-updown;
            family inet {
                unicast;
            }
            family inet-vpn {
                unicast;
            }
            export [ beer ];
            peer-as 65300;
            local-as 65300;
            multipath;
            neighbor 10.1.0.2 {
                description bird1;
                local-address 10.1.0.1;
            }
        }
    }
policy-options {
    policy-statement beer {
        from {
            route-filter 9.9.9.9/32 exact;
        }
        then {
            community add beer;
            accept;
        }
    }
    community beer members bandwidth:65300:9999;
}
-------------------------
So the community "beer" has this value "bandwidth" which the junos knows is
0x04.

In bird it looks like this:
-------------------------
bird> show route 9.9.9.9/32 all
9.9.9.9/32         via 10.1.0.1 on VLAN100 [core 17:38:44] * (100/0) [i]
    Type: BGP unicast univ
    BGP.origin: IGP
    BGP.as_path:
    BGP.next_hop: 10.1.0.1
    BGP.local_pref: 100
    BGP.ext_community: (unknown 0x4, 65300, 1176255488)
-------------------------

When tcpdump-ed the update has the values: 0x0004 ff14 461c3c00

Attached is the pcap of the bgp update with the community value set via the
juniper.

Kind regards,
Dave

Attachment: bandwidth_communities_2014_12_23.pcap
Description: application/vnd.tcpdump.pcap

Reply via email to