本文整理汇总了Python中exabgp.bgp.message.update.nlri.evpn.nlri.EVPN类的典型用法代码示例。如果您正苦于以下问题:Python EVPN类的具体用法?Python EVPN怎么用?Python EVPN使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了EVPN类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
def __init__ (self, rd, esi, ip, packed=None,nexthop=None,action=None,addpath=None):
EVPN.__init__(self,action,addpath)
self.nexthop = nexthop
self.rd = rd
self.esi = esi
self.ip = ip
self._pack(packed)
示例2: __init__
def __init__(self,rd,esi,etag,mac,label,ip,packed=None):
self.rd = rd
self.esi = esi
self.etag = etag
self.mac = mac
self.ip = ip
self.label = label if label else Labels.NOLABEL
EVPN.__init__(self,packed if packed else self.pack())
示例3: __init__
def __init__ (self, rd, esi, etag, label, packed=None,nexthop=None,action=None,addpath=None):
EVPN.__init__(self,action,addpath)
self.nexthop = nexthop
self.rd = rd
self.esi = esi
self.etag = etag
self.label = label if label else Labels.NOLABEL
self._pack(packed)
示例4: __init__
def __init__ (self, rd, etag, ip, packed=None,nexthop=None,action=None,addpath=None):
EVPN.__init__(self,packed,nexthop,action,addpath)
# assert(isinstance(rd, RouteDistinguisher))
# assert(isinstance(etag, EthernetTag))
# assert(isinstance(ip, IP))
self.rd = rd
self.etag = etag
self.ip = ip
self._pack()
示例5: __init__
def __init__ (self, rd, esi, etag, mac, maclen, label,ip,packed=None):
EVPN.__init__(self,packed)
self.rd = rd
self.esi = esi
self.etag = etag
self.maclen = maclen
self.mac = mac
self.ip = ip
self.label = label if label else Labels.NOLABEL
self.pack()
示例6: __init__
def __init__ (self, rd, esi, etag, mac, maclen, label,ip,packed=None,nexthop=None,action=None,addpath=None):
EVPN.__init__(self,packed,nexthop,action,addpath)
assert(isinstance(rd, RouteDistinguisher))
assert(isinstance(etag, EthernetTag))
assert(isinstance(ip, IP))
assert(isinstance(mac, MACQUAL))
self.rd = rd
self.esi = esi
self.etag = etag
self.maclen = maclen
self.mac = mac
self.ip = ip
self.label = label if label else Labels.NOLABEL
self._pack()
示例7: __eq__
def __eq__ (self, other):
return \
EVPN.__eq__(self,other) and \
self.rd == other.rd and \
self.etag == other.etag and \
self.mac == other.mac and \
self.ip == other.ip
示例8: test99_EVPNMACCreatePackUnpack
def test99_EVPNMACCreatePackUnpack(self):
'''Test pack/unpack for E-VPN MAC routes'''
nlri = EVPNMAC(RouteDistinguisher.fromElements("42.42.42.42", 5),
ESI(),
EthernetTag(111),
MAC("01:02:03:04:05:06"), 6*8,
Labels([42], True),
IP.create("1.1.1.1"))
packed = nlri.pack()
unpacked,leftover = EVPN.unpack_nlri(AFI(AFI.l2vpn), SAFI(SAFI.evpn),
packed, OUT.UNSET, None)
self.assertEqual(0, len(leftover))
# TODO: compare packed with a reference encoding verified
# as conformant with RFC7432
self.assertTrue(isinstance(unpacked, EVPNMAC))
self.assertEqual("42.42.42.42:5", unpacked.rd._str())
self.assertEqual(ESI.DEFAULT, unpacked.esi.esi)
self.assertEqual(EthernetTag(111), unpacked.etag)
self.assertEqual(MAC("01:02:03:04:05:06"), unpacked.mac)
self.assertEqual(IP.create("1.1.1.1"), unpacked.ip)
self.assertEqual(1, len(unpacked.label.labels))
self.assertEqual(42, unpacked.label.labels[0])
示例9: test99_EVPNPrefixCreatePackUnpack
def test99_EVPNPrefixCreatePackUnpack(self):
'''Test pack/unpack for E-VPN Prefix routes'''
nlri = EVPNPrefix(RouteDistinguisher.fromElements("42.42.42.42", 5),
ESI(),
EthernetTag(111),
Labels([42], True),
IP.create("1.1.1.0"),24,
IP.create("2.2.2.2"),
)
packed = nlri.pack()
unpacked,leftover = EVPN.unpack_nlri(AFI.l2vpn, SAFI.evpn,
packed, OUT.UNSET, None)
self.assertEqual(0, len(leftover))
# TODO: compare packed with a reference encoding verified
# as conformant with RFC7432
self.assertTrue(isinstance(unpacked, EVPNPrefix))
self.assertEqual("42.42.42.42:5", unpacked.rd._str())
self.assertEqual(ESI.DEFAULT, unpacked.esi.esi)
self.assertEqual(EthernetTag(111), unpacked.etag)
self.assertEqual(IP.create("1.1.1.0"), unpacked.ip)
self.assertEqual(24, unpacked.iplen)
self.assertEqual(IP.create("2.2.2.2"), unpacked.gwip)
self.assertEqual(1, len(unpacked.label.labels))
self.assertEqual(42, unpacked.label.labels[0])
示例10: __init__
def __init__(self, rd, esi, etag, label, ip, iplen, gwip, packed=None,nexthop=None,action=None,addpath=None):
'''
rd: a RouteDistinguisher
esi: an EthernetSegmentIdentifier
etag: an EthernetTag
mac: a MAC
label: a LabelStackEntry
ip: an IP address (dotted quad string notation)
iplen: prefixlength for ip (defaults to 32)
gwip: an IP address (dotted quad string notation)
'''
EVPN.__init__(self,packed,nexthop,action,addpath)
self.rd = rd
self.esi = esi
self.etag = etag
self.ip = ip
self.iplen = iplen
self.gwip = gwip
self.label = label
self.label = label if label else Labels.NOLABEL
self.pack()
示例11: test99_EVPNMulticastCreatePackUnpack
def test99_EVPNMulticastCreatePackUnpack(self):
'''Test pack/unpack for E-VPN Multicast routes'''
nlri = EVPNMulticast(RouteDistinguisher.fromElements("42.42.42.42", 5),
EthernetTag(111),
IP.create("1.1.1.1"))
packed = nlri.pack()
unpacked,leftover = EVPN.unpack_nlri(AFI(AFI.l2vpn), SAFI(SAFI.evpn),
packed, OUT.UNSET, None)
self.assertEqual(0, len(leftover))
# TODO: compare packed with a reference encoding verified
# as conformant with RFC7432
self.assertTrue(isinstance(unpacked, EVPNMulticast))
self.assertEqual("42.42.42.42:5", unpacked.rd._str())
self.assertEqual(EthernetTag(111), unpacked.etag)
self.assertEqual(IP.create("1.1.1.1"), unpacked.ip)
示例12: index
def index (self):
return EVPN.index(self)
示例13: __init__
def __init__(self,rd,etag,ip):
self.rd = rd
self.etag = etag
self.ip = ip
EVPN.__init__(self,self.pack())
示例14: Copyright
"""
evpn/__init__.py
Created by Thomas Mangin on 2014-06-27.
Copyright (c) 2014-2015 Orange. All rights reserved.
"""
from exabgp.bgp.message.update.nlri.evpn.nlri import EVPN
from exabgp.bgp.message.update.nlri.evpn.ethernetad import EthernetAD
from exabgp.bgp.message.update.nlri.evpn.mac import MAC
from exabgp.bgp.message.update.nlri.evpn.multicast import Multicast
from exabgp.bgp.message.update.nlri.evpn.segment import EthernetSegment
# EVPN.register_evpn(EthernetAD)
EVPN.register_evpn(MAC)
EVPN.register_evpn(Multicast)
# EVPN.register_evpn(EthernetSegment)