All Downloads are FREE. Search and download functionalities are using the official Maven repository.

es.tid.bgp.bgp4Peer.updateTEDB.UpdateLink Maven / Gradle / Ivy

The newest version!
package es.tid.bgp.bgp4Peer.updateTEDB;

import java.net.Inet4Address;
import java.util.ArrayList;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import es.tid.bgp.bgp4.update.fields.LinkNLRI;
import es.tid.bgp.bgp4.update.tlv.linkstate_attribute_tlvs.MaxReservableBandwidthLinkAttribTLV;
import es.tid.bgp.bgp4.update.tlv.linkstate_attribute_tlvs.MaximumLinkBandwidthLinkAttribTLV;
import es.tid.bgp.bgp4.update.tlv.linkstate_attribute_tlvs.UnreservedBandwidthLinkAttribTLV;
import es.tid.bgp.bgp4.update.tlv.node_link_prefix_descriptor_subTLVs.AutonomousSystemNodeDescriptorSubTLV;
import es.tid.bgp.bgp4.update.tlv.node_link_prefix_descriptor_subTLVs.NodeDescriptorsSubTLV;
import es.tid.bgp.bgp4.update.tlv.node_link_prefix_descriptor_subTLVs.NodeDescriptorsSubTLVTypes;
import es.tid.ospf.ospfv2.lsa.LSA;
/**
 * This class is used to control BGP updates (not changing database when is a 'refresh BGP message')
 * 
 *  WARNING: we only control when adding new link or when bitmap changes.
 * @author baam
 *
 */
public class UpdateLink {
	
	
	private MaximumLinkBandwidthLinkAttribTLV maximumLinkBandwidthTLV;
	private MaxReservableBandwidthLinkAttribTLV maxReservableBandwidthTLV;
	private UnreservedBandwidthLinkAttribTLV unreservedBandwidthTLV;
	private LinkNLRI linkNLRI;
	private Inet4Address localDomainID;
	private Inet4Address localRouterASBR;
	private Inet4Address remoteDomainID;
	private Inet4Address remoteRouterASBR;
	private byte[] bitmap;
	private byte[] bitmapReserved;
	
	public UpdateLink(Inet4Address remote, Inet4Address local, byte[] bitMap, byte[] bitmapRes) {
		this.bitmap=new byte[bitMap.length];
		for(int i=0; i




© 2015 - 2025 Weber Informatics LLC | Privacy Policy