Activation Scripts to Configure E-Line

Size: px
Start display at page:

Download "Activation Scripts to Configure E-Line"

Transcription

1 APPENDIXA This appendix contains the complete text of the activation scripts called to configure an E-Line: Configure E-Line, page A-1 Add Service Instance to Interface, page A-5 Add xconnect to Service Instance, page A-9 Activate Interface, page A-12 Remove Service Instance from Interface, page A-13 Remove xconnect from Service Instance, page A-14 Add Switchport Trunk, page A-15 Add VLAN to Interface, page A-17 Add xconnect to VLAN, page A-22 Add Policy Map to a Service Instance, page A-23 Add Switchport Trunk, page A-26 Remove Switchport Trunk, page A-28 Configure E-Line /******* Script to configure e-line ****** // sourcing the utility files String sep = File.separator; "CarrierEProvUtil.bsh"); "add_service_instance_to_interface.bsh"); "add_xconnect_to_serviceinstance.bsh"); "remove_service_instance_from_interface.bsh"); "activate_interface.bsh"); "remove_xconnect_from_serviceinstance.bsh"); /* * This function is called by the configure_eline function when it encounters A-1

2 Configure E-Line Appendix A * error condifiton and rollback is needed. It passes this function information * about where it failed through 'failurelevel' parameter and the rollback * function would handle rollback accordingly by calling the appropriate utility * scripts void rollback(string interfacename,integer intserviceinstanceid, String failurelevel) // Function entry message telnetinterface.println ("Inside rollback_configure_eline..."); // convert type to string String strserviceinstanceid = ""; if (intserviceinstanceid!= null) strserviceinstanceid = String.valueOf(intServiceInstanceId); if (failurelevel =="xconnect") // invoking utility script to remove service instance from // interface remove_service_instance_from_interface(interfacename,strserviceinstanceid); else if(failurelevel == "activate-interface") // invoking utility scripts to remove xconnect and service instance // from interface remove_xconnect_from_serviceinstance(interfacename,strserviceinstanceid); remove_service_instance_from_interface(interfacename,strserviceinstanceid); // Set the appropriate status for this function // Function exit message telnetinterface.println ("rollback_configure_eline done"); sendresult(false, "The script --configure_eline --failed"); /* * This function configures flex uni eline command set on the box. If it * encounters error condition, it would invoke rollback such that any cli pushed * to the router by this function is removed. The various actions taken by this * function include, * a) Convert the input parametrs to data types as needed * b) Check that all the manadatory parameters are entered, if not return error. * c) Check for range and syntax on parameter values * d) Check for existence ofobjects against the router if needed * e) Invoke utility scripts and handle errors * f) Invoke rollback if needed boolean configure_eline(string interfacename,integer intserviceinstanceid,string outervlantag,string innervlantag,string rewritepopaction,integer intpushoutervlantag,integer intpushinnervlantag,integer inttranslatevlantag,string peerdeviceip,integer inttunnelid,string activateinterface) telnetinterface.println("inside Configure E-Line..."); // typecasting the necessary inputs to string String strpushoutervlantag = ""; if (intpushoutervlantag!= null) strpushoutervlantag = String.valueOf(intPushOuterVlanTag); A-2

3 Appendix A Configure E-Line String strpushinnervlantag = ""; if (intpushinnervlantag!= null) strpushinnervlantag = String.valueOf(intPushInnerVlanTag); String strtranslatevlantag = ""; if (inttranslatevlantag!= null) strtranslatevlantag = String.valueOf(intTranslateVlanTag); String strserviceinstanceid = ""; if (intserviceinstanceid!= null) strserviceinstanceid = String.valueOf(intServiceInstanceId); String strtunnelid = ""; if (inttunnelid!= null) strtunnelid = String.valueOf(intTunnelId); // handling 'rewritepopaction' combo input String strrewritepopaction=""; if(rewritepopaction.equals("none")) strrewritepopaction=empty; else if(rewritepopaction.equals("1")) strrewritepopaction="1"; else if(rewritepopaction.equals("2")) strrewritepopaction="2"; // handling 'activateinterface' combo input String stractivateinterface=""; if(activateinterface.equals("true")) stractivateinterface="true"; else if(activateinterface.equals("false")) stractivateinterface="false"; // Check for manadatory parameters // checking if mandatory input interface name is left blank if(!checkblank(interfacename,"interface Name")) sendresult(false, "The script --configure_eline -- failed"); // checking if mandatory input service instance is left blank if(!checkblank(strserviceinstanceid,"service Instance ID")) sendresult(false, "The script --configure_eline-- failed"); // checking if mandatory input peer device ip is left blank if(!checkblank(peerdeviceip,"peer Device IP")) A-3

4 Configure E-Line Appendix A sendresult(false, "The script --configure_eline-- failed"); // checking if mandatory input tunnel id is left blank if(!checkblank(strtunnelid,"tunnel ID")) sendresult(false, "The script --configure_eline-- failed"); // invoke the utility script to add service instance. This script verifies the input parameters locally as well // as against the router before configuring service instance. If there is an error, returns false. if(!add_service_instance_to_interface(interfacename,strserviceinstanceid,outervlantag,innervlantag,strrewritepopaction,strpushoutervlantag,strpushinnervlantag,str TranslateVlanTag)) sendresult(false, "The script --configure_eline-- failed"); // invoke the utility script to add xconnect on the service instance. This script verifies the input parameters locally as well // as against the router before configuring xconnect on service instance. If there is an error, returns false. // If there is an error configuring xconnect, rollback is called to remove the configured service instance. if(!add_xconnect_to_serviceinstance(interfacename,strserviceinstanceid,outervlantag,innerv lantag,peerdeviceip,strtunnelid)) rollback(interfacename,intserviceinstanceid,"xconnect"); // Activate the interface if needed. if(stractivateinterface.equals("true")) if(!activate_interface(interfacename)) rollback(interfacename,intserviceinstanceid,"activate-interface"); // Success!! Print success message and exit. sendresult(true, "The script configure_eline was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); // Get the input parameters from ANA Integer intserviceinstanceid = (Integer)scriptEnvInterface.getParam("serviceInstanceId"); A-4

5 Appendix A Add Service Instance to Interface Integer intpushoutervlantag= (Integer)scriptEnvInterface.getParam("pushOuterVlanTag"); Integer intpushinnervlantag = (Integer)scriptEnvInterface.getParam("pushInnerVlanTag"); Integer inttranslatevlantag = (Integer)scriptEnvInterface.getParam("translateVlanTag"); Integer inttunnelid = (Integer)scriptEnvInterface.getParam("tunnelId"); String rewritepopaction = (String)scriptEnvInterface.getParam("rewritePopAction"); String activateinterface = (String)scriptEnvInterface.getParam("activateInterface"); // Invoke the configure_eline function boolean result = configure_eline(interfacename,intserviceinstanceid,outervlantag,innervlantag,rewritepopaction,intpushoutervlantag,intpushinnervlantag,inttra nslatevlantag,peerdeviceip,inttunnelid,activateinterface); Add Service Instance to Interface import java.io.file; /* The script adds a service instance on a particular interface. * In case of error conditions rollback is called and any configuration * sent is removed from the device // Utilities load String sep = File.separator; "CarrierEProvUtil.bsh"); /* This function does the rollback based on where the configuration failed. void rollback_addserviceinstance_interface(string interfacename,string serviceinstanceid,string failurelevel) telnetinterface.println ("In rollback_add_service_instance_to_interface..."); if (failurelevel =="vlan") // already at (config-if-srv) config("no service instance " + serviceinstanceid); config("exit"); config("exit"); else if ((failurelevel =="rewrite")) config("no service instance " + serviceinstanceid); config("exit"); config("exit"); telnetinterface.println ("rollback_addserviceinstance done"); /* This function adds a service instance on an interface. Rollback is called if there are errors. boolean add_service_instance_to_interface(string interfacename,string serviceinstanceid,string outervlantag,string innervlantag,string rewritepopaction,string pushoutervlantag,string pushinnervlantag,string translatevlantag) telnetinterface.println("inside Add Service Instance to Interface!!"); // check that the interface exists in the device if (!checkinterface(interfacename)) A-5

6 Add Service Instance to Interface Appendix A // checks whether serviceinstanceid is a number if(!checknumber(serviceinstanceid,"serviceinstanceid")) //Check that the serviceinstanceid is in the valid range if (!checkrange(serviceinstanceid,service_instance_id_min,service_instance_id_max,"service Instance Id")) // check that this service instance is not already configured on this interface in the device. if (checkifserviceinstanceexists(serviceinstanceid, interfacename)) sendresult(false, "The Service Instance " + serviceinstanceid + " already exists on interface " + interfacename ); //check for outervlantag if(!outervlantag.equals(empty) && innervlantag.equals(empty)) if(firstcharcheck(outervlantag)) if (!validatevlan(outervlantag)) sendresult(false, "outervlantag is not in the right range"); if(!checkifencapsulationexists(outervlantag,interfacename)) sendresult(false,"outervlantag "+outervlantag+" already configured under other service instance"); else if (!checkinput(outervlantag,"any,default,untagged")) sendresult(false, "outervlantag has invalid input"); //check for optional parameter innervlantag if(!innervlantag.equals(empty)) if (!validatevlan(innervlantag)) sendresult(false, "innervlantag is not in the right range"); A-6

7 Appendix A Add Service Instance to Interface //check for optional parameter rewritepopaction if(!rewritepopaction.equals(empty)) //to check whether only the allowed value is inputted // (1,2) is the comma separated reference string //against which rewritepopaction value needs to be checked if(!checkinput(rewritepopaction,"1,2")) sendresult(false, "Rewrite Pop Action has invalid input value"); //check for optional parameter pushoutervlantag if(!pushoutervlantag.equals(empty)) if (!checkrange(pushoutervlantag,vlan_min,vlan_max,"pushoutervlantag")) //check for optional parameter pushinnervlantag if(!pushinnervlantag.equals(empty)) if (!checkrange(pushinnervlantag,vlan_min,vlan_max,"pushinnervlantag")) //check for optional parameter translatevlantag if(!translatevlantag.equals(empty)) if (!checkrange(translatevlantag,vlan_min,vlan_max,"translatevlantag")) // now send configurations down if(!config("conf t")) if(!config("int " + interfacename)) if(!config("service instance " + serviceinstanceid + " e")) telnetinterface.config("#","end"); // If outervlantag and innervlantag are empty if(outervlantag.equals(empty) && innervlantag.equals(empty)) if(!config("encapsulation dot1q any")) // call rollback_addserviceinstance here rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "vlan"); // If outervlantag is not empty and innervlantag is empty if(!outervlantag.equals(empty) && innervlantag.equals(empty)) A-7

8 Add Service Instance to Interface Appendix A //If outervlantag is either default or untagged and innervlantag is empty if(outervlantag.equals("default")) if(!config("encapsulation default")) // call rollback_addserviceinstance here rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "vlan" ); else if(outervlantag.equals("untagged")) if(!config("encapsulation untagged")) // call rollback_addserviceinstance here rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "vlan" ); else if(!config("encapsulation dot1q " + outervlantag)) // call rollback_addserviceinstance here rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "vlan" ); // If outervlantag and innervlantag both are not empty if(!outervlantag.equals(empty) &&!innervlantag.equals(empty)) if(!config("encapsulation dot1q " + outervlantag+ " second-dot1q "+innervlantag)) // call rollback_addserviceinstance here rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "vlan" ); // rewritepopaction is not empty if(!rewritepopaction.equals(empty)&& pushoutervlantag.equals(empty) && pushinnervlantag.equals(empty) && translatevlantag.equals(empty)) if(!config("rewrite ingress tag pop "+rewritepopaction+" symmetric")) rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "rewrite" ); // rewritepopaction is empty pushoutervlantag is not empty and pushinnervlantag is empty and translatevlantag empty else if(rewritepopaction.equals(empty) &&!pushoutervlantag.equals(empty) && pushinnervlantag.equals(empty) && translatevlantag.equals(empty)) if(!config("rewrite ingress tag push dot1q "+pushoutervlantag+" symmetric")) rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "rewrite" ); A-8

9 Appendix A Add xconnect to Service Instance // rewritepopaction is empty pushoutervlantag is not empty and pushinnervlantag is not empty and translatevlantag empty else if(rewritepopaction.equals(empty) &&!pushoutervlantag.equals(empty) &&!pushinnervlantag.equals(empty) && translatevlantag.equals(empty)) if(!config("rewrite ingress tag push dot1q "+pushoutervlantag+" second-dot1q "+pushinnervlantag+" symmetric")) rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "rewrite" ); // rewritepopaction, pushoutervlantag and pushinnervlantag are empty and translatevlantag not empty else if(rewritepopaction.equals(empty) && pushoutervlantag.equals(empty) && pushinnervlantag.equals(empty) &&!translatevlantag.equals(empty)) if(!config("rewrite ingress tag translate 1-to-1 dot1q "+translatevlantag+" symmetric")) rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "rewrite" ); // rewritepopaction, pushoutervlantag and pushinnervlantag and translatevlantag are empty else if(rewritepopaction.equals(empty) && pushoutervlantag.equals(empty) && pushinnervlantag.equals(empty) && translatevlantag.equals(empty)) sendresult(true, "The script ---add_service_instance_interface--- was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); telnetinterface.config("#","end"); // Invalid option else sendresult(false,"invalid set of input paramenters"); rollback_addserviceinstance_interface(interfacename, serviceinstanceid, "vlan" ); if(!config("end")) // Success sendresult(true, "The script ---add_service_instance_interface--- was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); Add xconnect to Service Instance import java.io.file; A-9

10 Add xconnect to Service Instance Appendix A /* The script adds xconnect on a service instance. String sep = File.separator; "CarrierEProvUtil.bsh"); /* The function handles adding of xconnect on service instance boolean add_xconnect_to_serviceinstance(string interfacename,string serviceinstanceid,string outervlantag,string innervlantag,string peerdeviceip,string tunnelid) telnetinterface.println("inside add xconnect to service instance!!"); // validate that the interface exists in the device if (!checkinterface(interfacename)) //checks whether serviceinstanceid is a number if(!checknumber(serviceinstanceid,"serviceinstanceid")) //Check range for serviceinstanceid (1 to 8000) if (!checkrange(serviceinstanceid,service_instance_id_min,service_instance_id_max,"service Instance Id")) // check that the service instance id is configured on the interface if (!checkifserviceinstanceexists(serviceinstanceid, interfacename)) sendresult(false, "The Service Instance " + serviceinstanceid + " does not exist on interface " + interfacename ); // check for loopback address if (!checkip(peerdeviceip,"peerdeviceip")) // now send configurations down if(!config("conf t")) if(!config("int "+interfacename )) A-10

11 Appendix A Add xconnect to Service Instance if(!config("service instance " +serviceinstanceid + " e")) //If outervlantag and innervlantag are empty if(outervlantag.equals(empty) && innervlantag.equals(empty)) if(!config("encapsulation dot1q any")) // If outervlantag is not empty and innervlantag is empty if(!outervlantag.equals(empty) && innervlantag.equals(empty)) //outervlantag is either default or untagged and innervlantag is empty if(outervlantag.equals("default")) if(!config("encapsulation default")) else if(outervlantag.equals("untagged")) if(!config("encapsulation untagged")) else if(!config("encapsulation dot1q " + outervlantag)) //If outervlantag and innervlantag both are not empty if(!outervlantag.equals(empty) &&!innervlantag.equals(empty)) if(!config("encapsulation dot1q " + outervlantag+ " second-dot1q "+innervlantag)) if(!config("xconnect "+peerdeviceip+" "+tunnelid+" encapsulation mpls")) telnetinterface.config("#","end"); if(!config("end")) // Success sendresult(true, "The script ---add_xconnect_to_serviceinstance--- was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); A-11

12 Activate Interface Appendix A Activate Interface import java.io.file; /********* Script to activate a given interface*********** // Utilities load String sep = File.separator; "CarrierEProvUtil.bsh"); boolean activate_interface(string interfacename) telnetinterface.println("inside Activate Interface!!"); // validate that the interface exists in the device if (!checkinterface(interfacename)) // now send configurations down if(!config("conf t")) if(!config("int " + interfacename)) if(!config("no shut")) if(!config("exit")) // call rollback here if(!config("exit")) // Success sendresult(true, "The script for activate-interface was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); A-12

13 Appendix A Remove Service Instance from Interface Remove Service Instance from Interface import java.io.file; /* The script removes a service instance from a given interface String sep = File.separator; "CarrierEProvUtil.bsh"); boolean remove_service_instance_from_interface(string interfacename,string serviceinstanceid) telnetinterface.println("inside Remove Service Instance from Interface!!"); // check whether the interface exists on the device if (!checkinterface(interfacename)) // check whether serviceinstanceid is a number if(!checknumber(serviceinstanceid,"serviceinstanceid")) //Check range for serviceinstance_id if (!checkrange(serviceinstanceid,service_instance_id_min,service_instance_id_max,"service Instance Id")) // check that the service instance exists on the interface in the device if (!checkifserviceinstanceexists(serviceinstanceid, interfacename)) sendresult(false, "The Service Instance " + serviceinstanceid + " does not exist on interface " + interfacename ); // now send configurations down if(!config("conf t")) if(!config("int " + interfacename )) if(!config("no service instance " + serviceinstanceid + " e")) if(!config("exit")) A-13

14 Remove xconnect from Service Instance Appendix A if(!config("exit")) // Success sendresult(true, "The script ---remove_service_instance_interface--- was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); Remove xconnect from Service Instance import java.io.file; /* The script removes xconnect from a service instance String sep = File.separator; "CarrierEProvUtil.bsh"); boolean remove_xconnect_from_serviceinstance(string interfacename,string serviceinstanceid) telnetinterface.println("inside Remove xconnect from Service Instance!!"); // validate that the interface exists in the device if (!checkinterface(interfacename)) //checks whether serviceinstanceid is a number if(!checknumber(serviceinstanceid,"serviceinstanceid")) //Check range for serviceinstanceid if (!checkrange(serviceinstanceid,service_instance_id_min,service_instance_id_max,"service Instance Id")) // check that this service instance exists on the interface in the device if (!checkifserviceinstanceexists(serviceinstanceid, interfacename)) sendresult(false, "The Service Instance " + serviceinstanceid + " does not exist on interface " + interfacename ); A-14

15 Appendix A Add Switchport Trunk // now send configurations down if(!config("conf t")) if(!config("int "+interfacename )) if(!config("service instance " +serviceinstanceid + " e")) if(!config("no xconnect ")) if(!config("end")) rollback_removexconnect_serviceinstance(interfacename,loopbackaddress,"end"); // Success sendresult(true, "The script ---remove_xconnect_serviceinstance--- was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); Add Switchport Trunk import java.io.file; /******* Script to Add Switchport Trunk whales****** // Utilities load String sep = File.separator; "CarrierEProvUtil.bsh"); /* function to check if interface has trunk mode configured on it boolean checkiftrunkmodeexists(string interfacename) String accessresponse = telnetinterface.config("#","show running-config interface "+interfacename+" i switchport mode trunk"); if(accessresponse.startswith(" switchport")) boolean checkiftrunkallowedvlannone(string interfacename) String accessresponse = telnetinterface.config("#","show running-config interface "+interfacename+" include switchport trunk allowed vlan none"); if(accessresponse.startswith(" switchport")) A-15

16 Add Switchport Trunk Appendix A void rollback_add_switchport_trunk_whales(string interfacename,string failurelevel) telnetinterface.println ("IN ROLLBACK rollback_add_switchport_trunk_whales..."); /* if (failurelevel =="switchport") config("conf t"); config("default interface "+interfacename); config("exit"); telnetinterface.println ("cannot do ROLLBACK for rollback_add_switchport_trunk_whales"); boolean add_switchport_trunk_whales(string interfacename) telnetinterface.println("inside Add Switchport Trunk whales!!"); /* //validating interface if(!checkinterface(interfacename)) if(!checkifaccessportexists(interfacename)) boolean trunkmodeexists = checkiftrunkmodeexists(interfacename); boolean trunkallowedvlannone = checkiftrunkallowedvlannone(interfacename); //Need to check it switchport is already defined otherwise the command fails. if (!trunkmodeexists!trunkallowedvlannone) // sending configurations down if(!config("conf t")) if(!config("interface "+interfacename)) if (!trunkmodeexists!trunkallowedvlannone) if(!config("switchport")) rollback_add_switchport_trunk_whales(interfacename,"switchport"); A-16

17 Appendix A Add VLAN to Interface if (!trunkallowedvlannone) if(!config("switchport trunk allowed vlan none")) telnetinterface.config("#","end"); rollback_add_switchport_trunk_whales(interfacename,"switchport"); if (!trunkmodeexists) if(!config("switchport mode trunk ")) telnetinterface.config("#","end"); rollback_add_switchport_trunk_whales(interfacename,"switchport"); if(!config("exit")) if(!config("exit")) // Success /* sendresult(true, "The script for add_switchport_trunk_whales was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); boolean result = add_switchport_trunk_whales(interfacename); telnetinterface.println("result of the script add_switchport_trunk_whales : "+result); Add VLAN to Interface import java.io.file; //******* Script to add_vlan_to_interface_on_whales* CLI example: conf t no ip igmp snooping vlan 1 int GigabitEthernet0/16 service instance 3 ethernet A-17

18 Add VLAN to Interface Appendix A encapsulation dot1q any bridge-domain 1 split-horizon group 0 end ***** // Utilities load String sep = File.separator; "CarrierEProvUtil.bsh"); // Please note, in this particular case, the failure level might not matter. But in other cases, // based on the failure level, differnt rollback actions could be take. // in ideal case rollback will not be called void rollback_add_vlan_to_interface_on_whales(string serviceinstanceid, String failurelevel) telnetinterface.println ("IN rollback_add_vlan_to_interface_on_whales..."); if (failurelevel =="vlan") // we do not delete the vlan else // delete the service instance config("no service instance " + serviceinstanceid); config("exit"); config("exit"); telnetinterface.println ("rollback_add_vlan_to_interface_on_whales DONE"); boolean add_vlan_to_interface_on_whales(string interfacename, String vlanid, String serviceinstanceid, String outervlantag, String innervlantag, String enablesplithorizion) telnetinterface.println("add_vlan_to_interface_on_whales!!"); //Validations // validating that the interface exists in the device if (!checkinterface(interfacename)) //validating if vlan id id is numeric if(!checknumber(vlanid,"vlanid")) //validating vlan id is within the right range. if(!checkrange(vlanid,bridge_domain_id_min,bridge_domain_id_max,"vlan Id")) //validating if the service instance entered is numeric if(!checknumber(serviceinstanceid,"serviceinstanceid")) //Check range for serviceinstance_id A-18

19 Appendix A Add VLAN to Interface if (!checkrange(serviceinstanceid,service_instance_id_min,service_instance_id_max,"servic e Instance Id")) // validate that the vlan id is in the valid range //validating if the service instance exists for the interface if(!checkifserviceinstanceexists(serviceinstanceid,interfacename)) sendresult(false, "The Service Instance " + serviceinstanceid + " does not exists on interface " + interfacename ); //check for outervlantag when innervlantag is empty if(!outervlantag.equals(empty) && innervlantag.equals(empty)) if(firstcharcheck(outervlantag)) if (!validatevlan(outervlantag)) //telnetinterface.println("error! OuterVlanTag is not in the right range"); sendresult(false, "Error! OuterVlanTag is not in the right range"); else if (!checkinput(outervlantag,"any,default,untagged")) //telnetinterface.println("error! OuterVlanTag has invalid input"); sendresult(false, "Error! OuterVlanTag has invalid input"); //check for optional parameter innervlantag if(!innervlantag.equals(empty)) if (!validatevlan(innervlantag)) //telnetinterface.println("error! InnerVlanTag is not in the right range"); sendresult(false, "Error! InnerVlanTag is not in the right range"); //validating if user inputs enable split-horizion as true or false if(!enablesplithorizion.equals(empty)) if(!checkinput(enablesplithorizion,"true,false")) //telnetinterface.println("error! EnableSplitHorizion has invalid value"); sendresult(false, "Error! EnableSplitHorizion has invalid value"); // sending configurations down if(!config("conf t")) A-19

20 Add VLAN to Interface Appendix A //no ip igmp snooping vlan is configured on the device level. if(!config("no ip igmp snooping vlan " + vlanid)) if(!config("int " + interfacename)) if(!config("service instance " + serviceinstanceid + " ethernet")) //pushing the appropriate CLI based on the number of vlan id inputs entered //case 1 if outervlantag and innervlantag are empty if(outervlantag.equals(empty) && innervlantag.equals(empty)) if(!config("encapsulation dot1q any")) // call rollback_add_vlan_to_interface_on_whales here rollback_add_vlan_to_interface_on_whales(serviceinstanceid, "service_instance"); //case 2 if outervlantag is not empty and innervlantag is empty if(!outervlantag.equals(empty) && innervlantag.equals(empty)) //case 4 VLANID_1 is either default or untagged and innervlantag is empty if(outervlantag.equals("default")) if(!config("encapsulation default")) // call rollback_add_vlan_to_interface_on_whales here rollback_add_vlan_to_interface_on_whales(serviceinstanceid,"service_instance"); else if(outervlantag.equals("untagged")) if(!config("encapsulation untagged")) // call rollback_add_vlan_to_interface_on_whales here rollback_add_vlan_to_interface_on_whales(serviceinstanceid, "service_instance"); else if(!config("encapsulation dot1q " + outervlantag)) // call rollback_add_vlan_to_interface_on_whales here rollback_add_vlan_to_interface_on_whales(serviceinstanceid, "service_instance"); //case 3 if outervlantag and innervlantag both are not empty if(!outervlantag.equals(empty) &&!innervlantag.equals(empty)) if(!config("encapsulation dot1q " + outervlantag+ " second-dot1q "+innervlantag)) // call rollback_add_vlan_to_interface_on_whales here A-20

21 Appendix A Add VLAN to Interface rollback_add_vlan_to_interface_on_whales(serviceinstanceid, "service_instance"); // if enable split horizion is ture then push the following CLI if(enablesplithorizion.equals("true")) if(!config("bridge-domain " + vlanid+" "+"split-horizon group 0" )) // call rollback_add_vlan_to_interface_on_whales here rollback_add_vlan_to_interface_on_whales(serviceinstanceid, "service_instance"); telnetinterface.config("#","end"); else if(!config("bridge-domain " + vlanid)) // call rollback_add_vlan_to_interface_on_whales here rollback_add_vlan_to_interface_on_whales(serviceinstanceid, "service_instance"); telnetinterface.config("#","end"); // end after bridge domain cli have been pushed if(!config("end")) //rollback // call rollback_add_vlan_to_interface_on_whales here rollback_add_vlan_to_interface_on_whales(vlanid, "end"); // Success sendresult(true, "The script for add_vlan_to_interface_on_whales was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); /* boolean result = add_vlan_to_interface_on_whales(interfacename,vlanid,serviceinstanceid,outervlantag,in nervlantag,enablesplithorizion); telnetinterface.println("result of the script add_vlan_to_interface_on_whales: "+result); A-21

22 Add xconnect to VLAN Appendix A Add xconnect to VLAN import java.io.file; /******* Script to add_xconnect_to_vlan_on_whales****** // Utilities load String sep = File.separator; "CarrierEProvUtil.bsh"); // Please note, in this particular case, the failure level might not matter. But in other cases, // based on the failure level, differnt rollback actions could be take. /* inputs String vlanid; String peerdeviceip; String tunnelid; void rollback_add_xconnect_to_vlan_on_whales(string vlanid) telnetinterface.println ("IN ROLLBACK add_xconnect_to_vlan_on_whales..."); if (failurelevel =="end") // already at (config-if) config("interface vlan "+vlanid); config("no xconnect"); config("exit"); telnetinterface.println ("ROLLBACK DONE"); boolean add_xconnect_to_vlan_on_whales(string tunnelid, String peerdeviceip, String vlanid) telnetinterface.println("add_xconnect_to_vlan_on_whales!!"); //Validations //validating if tunnel id is numeric if(!checknumber(tunnelid,"tunnel Id")) //validating if vlanid is numeric if(!checknumber(vlanid,"vlan ID")) //validating if vlan is in the right range if(!checkrange(vlanid,vlan_min, VLAN_MAX, "Vlan Id")) //validating if the remote loopback address is in the right format if(!checkip(peerdeviceip,"peer Device Ip")) A-22

23 Appendix A Add Policy Map to a Service Instance // sending configurations down if(!config("conf t")) // after the command no ip igmp snooping vlan # the curser returns to the device level so we return it to the vlan level. if(!config("interface vlan " + vlanid)) if(!config("xconnect "+peerdeviceip+" "+tunnelid+" encapsulation mpls ")) telnetinterface.config("#","end"); if(!config("end")) rollback_add_xconnect_on_vlan(vlanid,"end"); /* // Success sendresult(true, "The script for add_xconnect_to_vlan_on_whales was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); boolean result = add_xconnect_to_vlan_on_whales(tunnelid,peerdeviceip,vlanid); telnetinterface.println("result of the script add_xconnect_to_vlan_on_whales: "+result); Add Policy Map to a Service Instance import java.io.file; /* Script to add policy map to a service instance String sep = File.separator; "CarrierEProvUtil.bsh"); boolean add_policy_map_to_service_instance_whales(string interfacename,integer intserviceinstanceid,string direction,string policymapname) A-23

24 Add Policy Map to a Service Instance Appendix A telnetinterface.println("inside add policy map to service instance!!"); String strserviceinstanceid = ""; if (intserviceinstanceid!= null) strserviceinstanceid = String.valueOf(intServiceInstanceId); String strdirection=""; if(direction.equals("input")) strdirection="input"; else if(direction.equals("output")) strdirection="output"; else sendresult(false, "The input parameter Direction does not expect the passed value: "+direction+".the expected values are input,output"); sendresult(false, "The script -- add_policy_map_to_service_instance_whales -- failed"); //check if interfacename is blank if(!checkblank(interfacename,"interface Name")) sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); //check if ServiceInstanceId is blank if(!checkblank(strserviceinstanceid,"service Instance Id")) sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); //check if policymapname is blank if(!checkblank(policymapname,"policy Map Name")) sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); // validate that the interface exists in the device if (!checkinterface(interfacename)) sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); A-24

25 Appendix A Add Policy Map to a Service Instance //Check range for serviceinstance_id if (!checkrange(strserviceinstanceid,service_instance_id_min,service_instance_id_max,"ser vice Instance Id")) // validate that the vlan id is in the valid range sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); // check that the service instance id exists if (!checkifserviceinstanceexists(strserviceinstanceid, interfacename)) sendresult(false,"service Instance Id "+strserviceinstanceid+" does not exist"); sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); //function to check whether policy map exists if(!previewmode &&!checkifpolicymapexists(policymapname)) sendresult(false, "The policy map name "+policymapname+" does not exist"); sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); // now send configurations down if(!config("conf t")) if(!config("interface "+interfacename)) if(!config("service instance "+intserviceinstanceid+" ethernet")) if(!config("service-policy "+strdirection+" "+policymapname)) sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); if(!config("end")) //verifying whether the policy is addded if(!checkpolicymaponserviceinstance(interfacename,strserviceinstanceid,policymapname)) A-25

26 Add Switchport Trunk Appendix A sendresult(false, "The script ---add_policy_map_to_service_instance_whales--- failed"); else // Success sendresult(true, "The script ---add_policy_map_to_service_instance_whales--- was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); //Integer intserviceinstanceid = (Integer)scriptEnvInterface.getParam("serviceInstanceId"); //String strdirection = (String)scriptEnvInterface.getParam("direction"); boolean result = add_policy_map_to_service_instance_whales(interfacename,intserviceinstanceid,direction,policymapname); Add Switchport Trunk import java.io.file; /******* Script to Add Switchport Trunk whales****** // Utilities load String sep = File.separator; "CarrierEProvUtil.bsh"); /* function to check if interface has trunk mode configured on it boolean checkiftrunkmodeexists(string interfacename) String accessresponse = telnetinterface.config("#","show running-config interface "+interfacename+" i switchport mode trunk"); if(accessresponse.startswith(" switchport")) boolean checkiftrunkallowedvlannone(string interfacename) String accessresponse = telnetinterface.config("#","show running-config interface "+interfacename+" include switchport trunk allowed vlan none"); if(accessresponse.startswith(" switchport") A-26

27 Appendix A Add Switchport Trunk void rollback_add_switchport_trunk_whales(string interfacename,string failurelevel) telnetinterface.println ("IN ROLLBACK rollback_add_switchport_trunk_whales..."); /* if (failurelevel =="switchport") config("conf t"); config("default interface "+interfacename); config("exit"); telnetinterface.println ("cannot do ROLLBACK for rollback_add_switchport_trunk_whales"); boolean add_switchport_trunk_whales(string interfacename) telnetinterface.println("inside Add Switchport Trunk whales!!"); //validating interface if(!checkinterface(interfacename)) /* if(!checkifaccessportexists(interfacename)) boolean trunkmodeexists = checkiftrunkmodeexists(interfacename); boolean trunkallowedvlannone = checkiftrunkallowedvlannone(interfacename); //Need to check it switchport is already defined otherwise the command fails. if (!trunkmodeexists!trunkallowedvlannone) // sending configurations down if(!config("conf t")) if(!config("interface "+interfacename)) if (!trunkmodeexists!trunkallowedvlannone) if(!config("switchport")) rollback_add_switchport_trunk_whales(interfacename,"switchport"); A-27

28 Remove Switchport Trunk Appendix A if (!trunkallowedvlannone) if(!config("switchport trunk allowed vlan none")) telnetinterface.config("#","end"); rollback_add_switchport_trunk_whales(interfacename,"switchport"); if (!trunkmodeexists) if(!config("switchport mode trunk ")) telnetinterface.config("#","end"); rollback_add_switchport_trunk_whales(interfacename,"switchport"); if(!config("exit")) if(!config("exit")) // Success sendresult(true, "The script for add_switchport_trunk_whales was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); /* boolean result = add_switchport_trunk_whales(interfacename); telnetinterface.println("result of the script add_switchport_trunk_whales : "+result); Remove Switchport Trunk import java.io.file; /******* Script to remove Switchport Trunk whales****** // Utilities load String sep = File.separator; "CarrierEProvUtil.bsh"); /* function to check if interface has trunk mode configured on it A-28

29 Appendix A Remove Switchport Trunk boolean checkiftrunkmodeexists(string interfacename) String accessresponse = telnetinterface.config("#","show running-config interface "+interfacename+" i switchport mode trunk"); if(accessresponse.startswith(" switchport")) boolean checkiftrunkallowedvlannone(string interfacename) String accessresponse = telnetinterface.config("#","show running-config interface "+interfacename+" include switchport trunk allowed vlan none"); if(accessresponse.startswith(" switchport")) boolean remove_switchport_trunk_whales(string interfacename) telnetinterface.println("inside Remove Switchport Trunk whales!!"); //validating interface if(!checkinterface(interfacename)) boolean trunkmodeexists = checkiftrunkmodeexists(interfacename); boolean trunkallowedvlannone = checkiftrunkallowedvlannone(interfacename); //Need to check it switchport is already defined otherwise the command fails. if (trunkmodeexists trunkallowedvlannone previewmode) // sending configurations down /* if(!config("conf t")) if(!config("default interface "+interfacename)) if(!config("exit")) // Success A-29

30 Remove Switchport Trunk Appendix A telnetinterface.println ("cannot do ROLLBACK for rollback_add_switchport_trunk_whales"); sendresult(true, "The script for remove_switchport_trunk_whales was executed successfully"); telnetinterface.setstatus(carrierethernet_provisioning_status_success ); boolean result = remove_switchport_trunk_whales(interfacename); telnetinterface.println("result of the script remove_switchport_trunk_whales : "+result); A-30

EVC Command Reference

EVC Command Reference EVC Command Reference This chapter describes commands used to configure an Ethernet Virtual Circuit (EVC). bridge-domain, page 2 clear ethernet service instance, page 3 encapsulation, page 5 l2protocol,

More information

Ethernet Virtual Connections Configuration

Ethernet Virtual Connections Configuration An Ethernet Virtual Connection (EVC) is defined by the Metro-Ethernet Forum (MEF) as an association between two or more user network interfaces that identifies a point-to-point or multipoint-to-multipoint

More information

IGMP Snooping Command Reference

IGMP Snooping Command Reference This chapter describes commands used to configure Internet Group Management Protocol (IGMP) snooping., page 2 immediate-leave, page 3 mrouter, page 4 report-suppression, page 5 show, page 6 show querier,

More information

Configuring Routed Pseudowire and VPLS

Configuring Routed Pseudowire and VPLS Routed Pseudowire and VPLS feature routes Layer 3 traffic and Layer 2 frames for pseudowire connections between provider edge (PE) devices using Virtual Private LAN Services (VPLS) multipoint PE. Prerequisites

More information

IEEE 802.1ah on Provider Backbone Bridges

IEEE 802.1ah on Provider Backbone Bridges IEEE 802.1ah on Provider Backbone Bridges First Published: November 25, 2009 Last Updated: February 8, 2011 The IEEE 802.1ah on Provider Backbone Bridges feature enables MAC-in-MAC tunneling on Ethernet

More information

This chapter tells how to configure VLAN subinterfaces.

This chapter tells how to configure VLAN subinterfaces. This chapter tells how to configure VLAN subinterfaces. Note For multiple context mode, complete all tasks in this section in the system execution space. To change from the context to the system execution

More information

Configuring Virtual Private LAN Services

Configuring Virtual Private LAN Services Virtual Private LAN Services (VPLS) enables enterprises to link together their Ethernet-based LANs from multiple sites via the infrastructure provided by their service provider. This module explains VPLS

More information

ITU-T G.8032 Ethernet Ring Protection Switching

ITU-T G.8032 Ethernet Ring Protection Switching The feature implements protection switching mechanisms for Ethernet layer ring topologies. This feature uses the G.8032 Ethernet Ring Protection (ERP) protocol, defined in ITU-T G.8032, to provide protection

More information

Configuring Ethernet Virtual Connections on the Cisco ASR 1000 Series Router

Configuring Ethernet Virtual Connections on the Cisco ASR 1000 Series Router Configuring Ethernet Virtual Connections on the Cisco ASR 1000 Series Router Ethernet virtual circuit (EVC) infrastructure is a Layer 2 platform-independent bridging architecture that supports Ethernet

More information

Configuring Virtual Private LAN Service (VPLS) and VPLS BGP-Based Autodiscovery

Configuring Virtual Private LAN Service (VPLS) and VPLS BGP-Based Autodiscovery Configuring Virtual Private LAN Service (VPLS) and VPLS BGP-Based Autodiscovery Finding Feature Information, page 1 Configuring VPLS, page 1 Configuring VPLS BGP-based Autodiscovery, page 17 Finding Feature

More information

BFD on BDI Interfaces

BFD on BDI Interfaces The Cisco feature alleviates limitations on the maximum number of interfaces per system that switched virtual interfaces (SVI) impose. This document describes how to configure the Bidirectional Forwarding

More information

Configuring Layer 3 Interfaces

Configuring Layer 3 Interfaces This chapter contains the following sections: Information About Layer 3 Interfaces, page 1 Licensing Requirements for Layer 3 Interfaces, page 4 Guidelines and Limitations for Layer 3 Interfaces, page

More information

UniNets MPLS LAB MANUAL MPLS. UNiNets Multiprotocol label Switching MPLS LAB MANUAL. UniNets MPLS LAB MANUAL

UniNets MPLS LAB MANUAL MPLS. UNiNets Multiprotocol label Switching MPLS LAB MANUAL. UniNets MPLS LAB MANUAL MPLS UNiNets Multiprotocol label Switching MPLS LAB MANUAL CCNP TOPOLOGY Lab: OSPF Routing VPN Topology: Task1: Perform the basic Configuration to provide the reachability as per diagram. SW1 Configuration

More information

Configuring VLANs. Understanding VLANs CHAPTER

Configuring VLANs. Understanding VLANs CHAPTER 7 CHAPTER This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and extended-range VLANs (VLAN IDs 1006 to 4094) on the Cisco MWR 2941 router. It includes information about VLAN

More information

Configure Multipoint Layer 2 Services

Configure Multipoint Layer 2 Services This module provides the conceptual and configuration information for Multipoint Layer 2 Bridging Services, also called Virtual Private LAN Services (VPLS). Note VPLS supports Layer 2 VPN technology and

More information

Configuring Q-in-Q VLAN Tunnels

Configuring Q-in-Q VLAN Tunnels Information About Q-in-Q Tunnels, page 1 Licensing Requirements for Interfaces, page 7 Guidelines and Limitations, page 7 Configuring Q-in-Q Tunnels and Layer 2 Protocol Tunneling, page 8 Configuring Q-in-Q

More information

Configuring Flex Links and the MAC Address-Table Move Update Feature

Configuring Flex Links and the MAC Address-Table Move Update Feature CHAPTER 23 Configuring Flex Links and the MAC Address-Table Move Update Feature This chapter describes how to configure Flex Links, a pair of interfaces on the Catalyst 3750-X or 3560-X switch that provide

More information

Configuring Private VLANs

Configuring Private VLANs 36 CHAPTER This chapter describes private VLANs (PVLANs) on Catalyst 4500 series switches. It also provides restrictions, procedures, and configuration examples. This chapter includes the following major

More information

BFD on BDI Interfaces

BFD on BDI Interfaces The Cisco feature alleviates limitations on the maximum number of interfaces per system that switched virtual interfaces (SVI) impose. This document describes how to configure the Bidirectional Forwarding

More information

Transparent CFM. Information About Transparent CFM. EFP (Q-in-Q interfaces with dot1q or dot1ad C-UNI)

Transparent CFM. Information About Transparent CFM. EFP (Q-in-Q interfaces with dot1q or dot1ad C-UNI) CFM support on a customer VLAN (C-VLAN) allows a customer to provision maintenance intermediate points (MIPs) and Up maintenance endpoints (MEPs) on a C-VLAN component for EFP (Q-in-Q interfaces with dot1q

More information

Configuring Flex Links and the MAC Address-Table Move Update Feature

Configuring Flex Links and the MAC Address-Table Move Update Feature CHAPTER 19 Configuring Flex Links and the MAC Address-Table Move Update Feature This chapter describes how to configure Flex Links, a pair of interfaces on the Catalyst 3560 switch that provide a mutual

More information

Configuring Access and Trunk Interfaces

Configuring Access and Trunk Interfaces Configuring Access and Trunk Interfaces Ethernet interfaces can be configured either as access ports or trunk ports. Trunks carry the traffic of multiple VLANs over a single link and allow you to extend

More information

Configuring VLAN-VPN CHAPTERS

Configuring VLAN-VPN CHAPTERS CHAPTERS 1. VLAN-VPN 2. Basic VLAN-VPN Configuration 3. Flexible VLAN-VPN Configuration 4. Configuration Example 5. Appendix: Default Parameters VLAN-VPN This guide applies to: T2600G-28TS v3 or above,

More information

Resilient Ethernet Protocol (REP)

Resilient Ethernet Protocol (REP) The is a Cisco proprietary protocol that provides an alternative to the Spanning Tree Protocol (STP). REP provides a way to control network loops, handle link failures, and improve convergence time. It

More information

Command Reference for Voice VLAN

Command Reference for Voice VLAN APPENDIX A This section provides reference information for the following voice VLAN commands: interface range, page A-1 interface vlan, page A-3 monitor session, page A-4 spanning-tree, page A-6 spanning-tree

More information

BCP Support on MLPPP

BCP Support on MLPPP , page 1 Finding Feature Information, page 1 Information About, page 1 How to Configure, page 3 Configuration Examples for, page 12 Additional References, page 20 Feature Information for, page 22 This

More information

MAC Learning Command Reference

MAC Learning Command Reference MAC Learning Reference This chapter describes commands to configure MAC learning. clear mac-address-table, page 2, page 3 mac limit maximum addresses, page 5 mac static address, page 6 show mac-address-table,

More information

Configuring Traffic Mirroring

Configuring Traffic Mirroring This module describes the configuration of the traffic mirroring feature. Traffic mirroring is sometimes called port mirroring, or switched port analyzer (SPAN). Feature History for Traffic Mirroring Release

More information

Configuring Q-in-Q VLAN Tunnels

Configuring Q-in-Q VLAN Tunnels This chapter describes how to configure Q-in-Q VLAN tunnels. Finding Feature Information, page 1 Feature History for Q-in-Q Tunnels and Layer 2 Protocol Tunneling, page 1 Information About Q-in-Q Tunnels,

More information

Multiprotocol Label Switching (MPLS)

Multiprotocol Label Switching (MPLS) 36 CHAPTER Prerequisites for MPLS, page 36-1 Restrictions for MPLS, page 36-1 Information About MPLS, page 36-2 Default Settings for MPLS, page 36-7 How to Configure MPLS Features, page 36-7 Configuration

More information

Configuring IEEE 802.1Q Tunneling and Layer 2 Protocol Tunneling

Configuring IEEE 802.1Q Tunneling and Layer 2 Protocol Tunneling 9 CHAPTER Configuring IEEE 802.1Q Tunneling and Layer 2 Protocol Tunneling Virtual private networks (VPNs) provide enterprise-scale connectivity on a shared infrastructure, often Ethernet-based, with the

More information

Configuring Traffic Mirroring

Configuring Traffic Mirroring This module describes the configuration of the traffic mirroring feature. Traffic mirroring is sometimes called port mirroring, or switched port analyzer (SPAN). Feature History for Traffic Mirroring Release

More information

Configuring IEEE 802.1Q Tunneling and Layer 2 Protocol Tunneling

Configuring IEEE 802.1Q Tunneling and Layer 2 Protocol Tunneling CHAPTER 14 Configuring IEEE 802.1Q Tunneling and Layer 2 Protocol Tunneling With Release 12.1(13)E and later, the Catalyst 6500 series switches support IEEE 802.1Q tunneling and Layer 2 protocol tunneling.

More information

Configuring Private VLANs

Configuring Private VLANs 36 CHAPTER This chapter describes private VLANs (PVLANs) on Catalyst 4500 series switches. It also provides restrictions, procedures, and configuration examples. This chapter includes the following major

More information

Configuring Resilient Ethernet Protocol

Configuring Resilient Ethernet Protocol This chapter describes Resilient Ethernet Protocol (REP), REP configuration guidelines, VLAN load balancing, REP timers, and REP over EVC. This chapter also describes procedures to configure REP. Understanding

More information

ethernet cfm mep crosscheck through location prefer

ethernet cfm mep crosscheck through location prefer ethernet cfm mep crosscheck through location prefer ethernet cfm mep crosscheck, page 4 ethernet cfm mep crosscheck start-delay, page 7 ethernet cfm mep domain mpid, page 9 ethernet cfm mep level mpid

More information

Configuring Pseudowire

Configuring Pseudowire This chapter provides information about configuring pseudowire features on the Cisco ASR 920 Series Router. Pseudowire Overview, on page 1 CEM Configuration, on page 2 CEM Configuration Guidelines and

More information

Configuring VLANs. Understanding VLANs CHAPTER

Configuring VLANs. Understanding VLANs CHAPTER CHAPTER 11 This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and extended-range VLANs (VLAN IDs 1006 to 4094) on the Cisco ME 3400 Ethernet Access switch. It includes information

More information

Configuring Link Aggregation

Configuring Link Aggregation Information About Link Aggregation, page 1 Restrictions for Link Aggregation, page 1 (GUI), page 3 (CLI), page 4 Verifying Link Aggregation Settings (CLI), page 4 Configuring Neighbor Devices to Support

More information

22 Cisco IOS Commands for the Catalyst 4500 Series Switches interface

22 Cisco IOS Commands for the Catalyst 4500 Series Switches interface Chapter 2 22 interface interface To select an interface to configure and to enter interface configuration mode, use the interface command. interface type number type number Type of interface to be configured;

More information

Configuring Command Macros

Configuring Command Macros CHAPTER 10 This chapter describes how to configure and apply command macros on the Cisco ME 3400 switch. Note For complete syntax and usage information for the commands used in this chapter, see the command

More information

VLAN Configuration. Understanding VLANs CHAPTER

VLAN Configuration. Understanding VLANs CHAPTER CHAPTER 11 This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and extended-range VLANs (VLAN IDs 1006 to 4094) on the CGR 2010 ESM. It includes information about VLAN membership

More information

Configuring IEEE 802.1Q and Layer 2 Protocol Tunneling

Configuring IEEE 802.1Q and Layer 2 Protocol Tunneling CHAPTER 8 Configuring IEEE 802.1Q and Layer 2 Protocol Tunneling Virtual private networks (VPNs) provide enterprise-scale connectivity on a shared infrastructure, often Ethernet-based, with the same security,

More information

Configuring SPAN and RSPAN

Configuring SPAN and RSPAN CHAPTER 32 This chapter describes how to configure Switched Port Analyzer (SPAN) and Remote SPAN (RSPAN) on the Catalyst 3750-X or 3560-X switch. Unless otherwise noted, the term switch refers to a Catalyst

More information

L2VPN over IOS-XE and IOS-XR: Configuration, Deployment and Troubleshooting LTRSPG-2500

L2VPN over IOS-XE and IOS-XR: Configuration, Deployment and Troubleshooting LTRSPG-2500 L2VPN over IOS-XE and IOS-XR: Configuration, Deployment and Troubleshooting LTRSPG-2500 Kashif Islam (kislam@cisco.com) Mobeen Tahir (mobeen@cisco.com) 1 of 22 Introduction The objective of this lab is

More information

Hardware Compatibility Matrix for Cisco Remote PHY Device

Hardware Compatibility Matrix for Cisco Remote PHY Device Hardware Compatibility Matrix for Cisco Remote PHY Device Note The hardware components introduced in a given Cisco Remote PHY Device Software Release are supported in all subsequent releases unless otherwise

More information

Configuring Cisco IP Phone Support

Configuring Cisco IP Phone Support CHAPTER 16 This chapter describes how to configure support for Cisco IP phones on the Catalyst 6500 series switches. For complete syntax and usage information for the commands used in this chapter, refer

More information

Example: Configuring Layer 2 Protocol Tunneling on EX Series Switches

Example: Configuring Layer 2 Protocol Tunneling on EX Series Switches Example: Configuring Layer 2 Protocol Tunneling on EX Series Switches Requirements Layer 2 protocol tunneling (L2PT) allows you to send Layer 2 protocol data units (PDUs) across a service provider network

More information

VLAN Configuration via CLI on 300/500 Series Managed Switches

VLAN Configuration via CLI on 300/500 Series Managed Switches Article ID: 4986 4986 - VLAN Configuration via CLI on 300/500 Series Managed Switches Objective VLANs allow you to logically segment a LAN into different broadcast domains. In scenarios where sensitive

More information

Carrier Ethernet Services

Carrier Ethernet Services CHAPTER 6 The following topics describe how you can use Cisco ANA to monitor Carrier Ethernet services. Supported Carrier Ethernet Technologies, page 6-1 VLANs, page 6-2 STP, page 6-5 Cisco REP, page 6-6

More information

Configuring SPAN and RSPAN

Configuring SPAN and RSPAN 41 CHAPTER This chapter describes how to configure the Switched Port Analyzer (SPAN) and Remote SPAN (RSPAN) on the Catalyst 4500 series switches. SPAN selects network traffic for analysis by a network

More information

Configuring VLAN Trunks

Configuring VLAN Trunks Finding Feature Information, page 1 Prerequisites for VLAN Trunks, page 1 Information About VLAN Trunks, page 2 How to Configure VLAN Trunks, page 5 Configuration Examples for VLAN Trunking, page 20 Where

More information

Configuring Link Aggregation

Configuring Link Aggregation Information About Link Aggregation, page 1 Restrictions for Link Aggregation, page 2 (GUI), page 4 (CLI), page 4 Verifying Link Aggregation Settings (CLI), page 5 Configuring Neighbor Devices to Support

More information

L2VPN Protocol-Based CLIs

L2VPN Protocol-Based CLIs The feature provides a set of processes and an improved infrastructure for developing and delivering Cisco IOS software on various Cisco platforms. This feature introduces new commands and modifies or

More information

Layer 2 Access Control Lists on EVCs

Layer 2 Access Control Lists on EVCs The ability to filter packets in a modular and scalable way is important for both network security and network management. Access Control Lists (ACLs) provide the capability to filter packets at a fine

More information

Microwave ACM Signaling and EEM Integration

Microwave ACM Signaling and EEM Integration This feature module describes the Microwave Adaptive Code Modulation (ACM) Signaling and Embedded Event Manager (EEM) integration, which enables the microwave radio transceivers to report link bandwidth

More information

26 CHAPTER Virtual Private Networks (VPNs) provide a secure way for customers to share bandwidth over an ISP backbone network. A VPN is a collection of sites sharing a common routing table. A customer

More information

Configuring VPLS. VPLS overview. Operation of VPLS. Basic VPLS concepts

Configuring VPLS. VPLS overview. Operation of VPLS. Basic VPLS concepts Contents Configuring VPLS 1 VPLS overview 1 Operation of VPLS 1 VPLS packet encapsulation 4 H-VPLS implementation 5 Hub-spoke VPLS implementation 7 Multi-hop PW 8 VPLS configuration task list 9 Enabling

More information

Configuring Q-in-Q VLAN Tunnels

Configuring Q-in-Q VLAN Tunnels This chapter contains the following sections: Information About Q-in-Q VLAN Tunnels, page 1 Licensing Requirements for Q-in-Q Tunnels, page 4 Guidelines and Limitations for Q-in-Q VLAN Tunnels, page 5

More information

Configuring VLANs. Understanding VLANs CHAPTER

Configuring VLANs. Understanding VLANs CHAPTER CHAPTER 9 This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and extended-range VLANs (VLAN IDs 1006 to 4094). It includes information about VLAN membership modes, VLAN configuration

More information

Deploying Carrier Ethernet Features on Cisco ASR 9000 BRKSPG-2202

Deploying Carrier Ethernet Features on Cisco ASR 9000 BRKSPG-2202 Deploying Carrier Ethernet Features on Cisco ASR 9000 BRKSPG-2202 Agenda Carrier Ethernet Overview Cisco ASR 9000 Overview EFP Overview and Configurations Ethernet Services Overview, Configurations and

More information

Configuring Ethernet OAM, CFM, and E-LMI

Configuring Ethernet OAM, CFM, and E-LMI CHAPTER 42 Ethernet Operations, Administration, and Maintenance (OAM) is a protocol for installing, monitoring, and troubleshooting Ethernet networks to increase management capability within the context

More information

Configuring SPAN. Understanding SPAN CHAPTER. This chapter describes how to configure Switched Port Analyzer (SPAN) and on the Catalyst 2960 switch.

Configuring SPAN. Understanding SPAN CHAPTER. This chapter describes how to configure Switched Port Analyzer (SPAN) and on the Catalyst 2960 switch. CHAPTER 23 This chapter describes how to configure Switched Port Analyzer (SPAN) and on the Catalyst 2960 switch. Note For complete syntax and usage information for the commands used in this chapter, see

More information

Deploying MPLS L2VPN

Deploying MPLS L2VPN Deploying MPLS L2VPN Nurul Islam Roman (nurul@apnic.net) 1 Abstract This session covers the fundamental and advanced topics associated with the deployment of Layer 2 VPNs over an MPLS network. The material

More information

Configuring Private VLANs

Configuring Private VLANs CHAPTER 15 This chapter describes how to configure private VLANs on the Cisco 7600 series routers. Note For complete syntax and usage information for the commands used in this chapter, refer to the Cisco

More information

VLAN Range. Feature Overview

VLAN Range. Feature Overview VLAN Range Feature History Release 12.0(7)XE 12.1(5)T 12.2(2)DD 12.2(4)B 12.2(8)T 12.2(13)T Modification The interface range command was introduced. The interface range command was integrated into Cisco

More information

Configuring BPDU tunneling

Configuring BPDU tunneling Contents Configuring BPDU tunneling 1 Introduction to BPDU tunneling 1 Background 1 BPDU Tunneling implementation 2 Configuring BPDU tunneling 3 Configuration prerequisites 3 Enabling BPDU tunneling for

More information

Configuring SPAN and RSPAN

Configuring SPAN and RSPAN 34 CHAPTER This chapter describes how to configure the Switched Port Analyzer (SPAN) and Remote SPAN (RSPAN) on the Catalyst 4500 series switches. SPAN selects network traffic for analysis by a network

More information

AutoQoS. Prerequisites for AutoQoS CHAPTER

AutoQoS. Prerequisites for AutoQoS CHAPTER 64 CHAPTER Prerequisites for, page 64-1 Restrictions for, page 64-2 Information About, page 64-2 Default Settings for, page 64-4 How to Configure, page 64-4 For complete syntax and usage information for

More information

Configuring Layer 3 Interfaces

Configuring Layer 3 Interfaces This chapter contains the following sections: Information About Layer 3 Interfaces, page 1 Licensing Requirements for Layer 3 Interfaces, page 4 Guidelines and Limitations for Layer 3 Interfaces, page

More information

Configuring SPAN and RSPAN

Configuring SPAN and RSPAN Prerequisites for SPAN and RSPAN, page 1 Restrictions for SPAN and RSPAN, page 1 Information About SPAN and RSPAN, page 3 How to Configure SPAN and RSPAN, page 14 Monitoring SPAN and RSPAN Operations,

More information

Configuring IEEE 802.1Q Tunneling

Configuring IEEE 802.1Q Tunneling CHAPTER 26 This chapter describes how to configure IEEE 802.1Q tunneling in Cisco IOS Release 12.2SX. For complete syntax and usage information for the commands used in this chapter, see the Cisco IOS

More information

Configuring the Catalyst 3750G Integrated Wireless LAN Controller Switch

Configuring the Catalyst 3750G Integrated Wireless LAN Controller Switch APPENDIXA Configuring the Catalyst 3750G Integrated Wireless LAN Controller Switch The Catalyst 3750G Integrated Wireless LAN Controller Switch is an integrated Catalyst 3750 switch and Cisco 4400 series

More information

HP0-Y49. Applying HP FlexNetwork Fundamentals.

HP0-Y49. Applying HP FlexNetwork Fundamentals. HP HP0-Y49 Applying HP FlexNetwork Fundamentals http://killexams.com/exam-detail/hp0-y49 QUESTION: 54 Refer to the Exhibit. Exhibit: HP Comware switch configuration. [Comware] vlan 100 [Comware-vlan100]

More information

Configuring MPLS L2VPN

Configuring MPLS L2VPN Contents Configuring MPLS L2VPN 1 MPLS L2VPN overview 1 About MPLS L2VPN 1 Comparison with traditional VPN 2 Comparison with MPLS L3VPN 2 Basic concepts 2 MPLS L2VPN implementation 3 MPLS L2VPN configuration

More information

Configure Virtual LANs in Layer 2 VPNs

Configure Virtual LANs in Layer 2 VPNs The Layer 2 Virtual Private Network (L2VPN) feature enables Service Providers (SPs) to provide L2 services to geographically disparate customer sites. A virtual local area network (VLAN) is a group of

More information

IEEE 802.1Q-in-Q VLAN Tag Termination

IEEE 802.1Q-in-Q VLAN Tag Termination IEEE 802.1Q-in-Q VLAN Tag Termination Encapsulating IEEE 802.1Q VLAN tags within 802.1Q enables service providers to use a single VLAN to support customers who have multiple VLANs. The IEEE 802.1Q-in-Q

More information

Configuring System Port Profiles

Configuring System Port Profiles 4 CHAPTER This chapter describes system port profiles and how to configure them. This chapter includes the following sections: Information About System Port Profiles, page 4-1 Guidelines and Limitations

More information

Configuring MPLS L2VPN

Configuring MPLS L2VPN Contents Configuring MPLS L2VPN 1 Overview 1 Comparison with traditional VPN 1 Comparison with MPLS L3VPN 2 Basic concepts 2 MPLS L2VPN implementation 3 MPLS L2VPN configuration task list 4 Configuring

More information

Deploying Carrier Ethernet Features on Cisco ASR 9000

Deploying Carrier Ethernet Features on Cisco ASR 9000 Deploying Carrier Ethernet Features on Cisco ASR 9000 Vinod Kumar Balasubramanyam (vinbalas@cisco.com) Technical Marketing Engineer Agenda Carrier Ethernet Overview Cisco ASR 9000 Overview EFP Overview

More information

Cisco Evolved Programmable Network Service Orchestration User Guide, Release 5.0

Cisco Evolved Programmable Network Service Orchestration User Guide, Release 5.0 Cisco Evolved Programmable Network Service Orchestration User Guide, Release 5.0 First Published: 2017-06-22 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA

More information

Building Carrier Ethernet Services Using Cisco Ethernet Virtual Circuit (EVC) Framework

Building Carrier Ethernet Services Using Cisco Ethernet Virtual Circuit (EVC) Framework Building Carrier Ethernet Services Using Cisco Ethernet Virtual Circuit (EVC) Framework Agenda Introduction Cisco EVC Fundamentals Operation and Packet Flow Dynamic Ethernet Service Activation (DE) Deployment

More information

Cisco HWIC-4ESW and HWIC-D-9ESW EtherSwitch Interface Cards

Cisco HWIC-4ESW and HWIC-D-9ESW EtherSwitch Interface Cards Cisco HWIC-4ESW and HWIC-D-9ESW EtherSwitch Interface Cards This document provides configuration tasks for the 4-port Cisco HWIC-4ESW and the 9-port Cisco HWIC-D-9ESW EtherSwitch high-speed WAN interface

More information

ASR 9000 Series Common Problems with Spanning Tree Protocols

ASR 9000 Series Common Problems with Spanning Tree Protocols ASR 9000 Series Common Problems with Spanning Tree Protocols Document ID: 116514 Contributed by Bryan Garland and David Powers, Cisco TAC Engineers. Sep 19, 2013 Contents Introduction Problem Port VLAN

More information

Configuring VLANs. Understanding VLANs CHAPTER

Configuring VLANs. Understanding VLANs CHAPTER CHAPTER 14 This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and extended-range VLANs (VLAN IDs 1006 to 4094) on the Catalyst 3750 switch. It includes information about VLAN

More information

EVC Quality of Service

EVC Quality of Service This document contains information about how to enable quality of service (QoS) features (such as traffic classification and traffic policing) for use on an Ethernet virtual circuit (EVC). An EVC as defined

More information

Configuring Interfaces

Configuring Interfaces CHAPTER 9 This chapter defines the types of interfaces on the Cisco ME 3400 Ethernet Access switch and describes how to configure them. Understanding Interface Types, page 9-1 Using Interface Configuration

More information

VLAN Subinterface Commandsonthe Cisco IOS XR Software

VLAN Subinterface Commandsonthe Cisco IOS XR Software VLAN Subinterface Commandsonthe Cisco IOS XR Software This module provides command line interface (CLI) commands for configuring 802.1Q VLANs on the Cisco CRS Router. The maximum VLAN limit that can be

More information

Configuring Private Hosts

Configuring Private Hosts CHAPTER 25 This chapter describes how to configure the private hosts feature in Cisco IOS Release 12.2SX. Note For complete syntax and usage information for the commands used in this chapter, see the Cisco

More information

Configuring SPAN and RSPAN

Configuring SPAN and RSPAN Finding Feature Information, page 1 Prerequisites for SPAN and RSPAN, page 1 Restrictions for SPAN and RSPAN, page 2 Information About SPAN and RSPAN, page 3 How to Configure SPAN and RSPAN, page 14 Monitoring

More information

Configuring MPLS, MPLS VPN, MPLS OAM, and EoMPLS

Configuring MPLS, MPLS VPN, MPLS OAM, and EoMPLS CHAPTER 43 Configuring MPLS, MPLS VPN, MPLS OAM, and EoMPLS This chapter describes how to configure multiprotocol label switching (MPLS) and Ethernet over MPLS (EoMPLS) on the Cisco ME 3800X and ME 3600X

More information

Storm Control over EVC

Storm Control over EVC This chapter describes and procedures to configure., page 1 Restrictions for, page 1 Configuring, page 2 Examples, page 3 Verification, page 5 Storm control prevents traffic on a LAN from being disrupted

More information

Configuring Interfaces

Configuring Interfaces CHAPTER 6 This chapter describes how to configure interfaces for the Catalyst 4500 series switches. It also provides guidelines, procedures, and configuration examples. This chapter includes the following

More information

Configuring Interfaces

Configuring Interfaces CHAPTER 9 This chapter defines the types of interfaces on the Cisco ME 3400 Ethernet Access switch and describes how to configure them. The chapter consists of these sections: Understanding Interface Types,

More information

Configuring VLANs. Understanding VLANs CHAPTER

Configuring VLANs. Understanding VLANs CHAPTER CHAPTER 10 This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and extended-range VLANs (VLAN IDs 1006 to 4094) on the switch. It includes information about VLAN membership

More information

FSOS Ethernet Port Configuration

FSOS Ethernet Port Configuration FSOS Ethernet Port Configuration Contents 1. Ethernet Port Configuration...1 1.1 Ethernet Port Overview... 1 1.1.1 Link Type of Ethernet Ports... 1 1.1.2 Configuring Default VLAN ID for an Ethernet Port...

More information

Chapter 5: Inter-VLAN Routing. Routing & Switching

Chapter 5: Inter-VLAN Routing. Routing & Switching Chapter 5: Inter-VLAN Routing Routing & Switching What is Inter-VLAN routing? Layer 2 switches cannot forward traffic between VLANs without the assistance of a router. Inter-VLAN routing is a process for

More information

Provisioning Overlay Networks

Provisioning Overlay Networks This chapter has the following sections: Using Cisco Virtual Topology System, page 1 Creating Overlays, page 2 Creating Network using VMware, page 4 Creating Subnetwork using VMware, page 4 Creating Routers

More information

Configuring Control-Plane Security

Configuring Control-Plane Security CHAPTER 32 This chapter describes the control-plane security feature in the Cisco ME 3400 Ethernet Access switch. In any network, Layer 2 and Layer 3 switches exchange control packets with other switches

More information

Cisco CSR 1000V VxLAN Support 2

Cisco CSR 1000V VxLAN Support 2 Cisco CSR 1000V VxLAN Support Cisco CSR 1000V VxLAN Support 2 Finding Feature Information 2 Introduction 2 Prerequisites for Cisco CSR 1000V VxLAN Support 2 Configuring the Cisco CSR 1000V as a VxLAN Layer

More information