It’s been a year. What’s next?

It’s been awhile since I’ve posted to this blog. I have almost forgotten about it, until the bill showed up 🙂

I’m coming up on a year since I’ve achieved my CCIE and I started to reflect how has it changed my life.

After getting my CCIE I took a break from doing anything networking wise in my personal time. I took a lot of time to fix up things around the house, redid the kitchen, got back into woodworking, built the massive Millennium Falcon lego, basically anything that kept me away from a computer.

The CCIE journey really burnt me out and it took a lot of time to figure out what I wanted to learn next. A few months ago I got interested in Cisco DevNet. I’ve know about this for a long time, but programming never really interested me, I didn’t like it in college and couldn’t really see the use-cases. Until recently that changed when I started playing around with some of the API’s available in Meraki and Webex Teams and seeing some of the power of writing a python script and understanding the API interaction.

This new found interest has lead me down the DevNet Associate path and learn some more about python and how API’s can be used in networking. By no means does this mean I want to be a programmer, however I want a basic understanding of how scripts are made and how to pull them apart.

I have already attempted the DevNet exam once, more to see where I was at in my studying and see where my weak points were. What I found is how much more python I needed to learn. I’ve taken a step back, watch a lot more youtube videos, attended DevNet day and found some more resources to help out. In doing that I’ve also written a couple of scripts focusing on webex teams and just using simple GETs.

The code I have written is not pretty, but it’s functional and that’s all I’m aiming for. I’m sure as time goes on I’ll get better and understand how to write it in a more concise way.

I’ll try and post about this next journey, but at this point I’ve already done a lot of work and didn’t plan on posting about it

CCIE RS – Written – L2 – Implement and Troubleshoot Etherchannel

Implement and Troubleshoot Etherchannel

Etherchannel / Portchannel

Ability to aggregate multiple interfaces into a single logical interface to increase the amount of bandwidth and redundancy when connecting to a node.

Support up to max of 64 etherchannels per switch (4500)

Etherchannel Modes

On – Mode that forces the LAN port to channel unconditionally. In the on mode, a usable EtherChannel exists only when a LAN port group in the on mode is connected to another LAN port group in the on mode. Because ports configured in the on mode do not negotiate, there is no negotiation traffic between the ports. 

Auto – PAgP mode that places a LAN port into a passive negotiating state in which the port responds to PAgP packets it receives but does not initiate PAgP negotiation. 

Desirable – PAgP mode that places a LAN port into an active negotiating state in which the port initiates negotiations with other LAN ports by sending PAgP packets. 

Passive – LACP mode that places a port into a passive negotiating state in which the port responds to LACP packets it receives but does not initiate LACP negotiation. 

Active – LACP mode that places a port into an active negotiating state in which the port initiates negotiations with other ports by sending LACP packets.



Modes – Active / Passive

  • Open standard
  • Bundle together multiple ports to increase overall bandwidth utilization
    • Acts as a single link
  • Links must have same speed, duplex and type (access / trunk) setting
  • Supports 16 ports in LACP, only 8 can be active
  • Configured in Active / Passive mode
  • LACP parameters
    • System Priority – Forms the system ID and is used during negotiation.
      • Default is 32768
      • Lower value is preferred
    • Port Priority – Used to decide which ports should be put in standby mode when there is a limitation or something preventing a port from aggregating.
    • Administrative Key – Defines the ability of a port to aggregate with other ports.


Cisco proprietary

Modes – Auto / Desirable

  • Bundle together multiple ports to increase overall bandwidth utilization
    • Acts as a single link
  • Supports 8 ports in single group, all active
  • Configured in Auto / desirable modes
  • Negotiates with PDU’s, sent and received on lowest numbered VLAN of trunk link
  • Links must have same speed, duplex and type (access / trunk) setting

Manual Etherchannel

Mode – on

For devices that do not support LACP or PAgP

Layer 2

Operates as either a layer 2 access or trunk interface

Layer 3

Assigned an IP address. Can participate in a routing protocol

Load Balancing

To balance the load, EtherChannel uses MAC addresses, IP addresses, or Layer 4 port numbers, and either the message source or message destination, or both

  • src-mac—Source MAC addresses 
  • dst-mac—Destination MAC addresses 
  • src-dst-mac—Source and destination MAC addresses 
  • src-ip—Source IP addresses 
  • dst-ip—Destination IP addresses 
  • src-dst-ip—Source and destination IP addresses (Default) 
  • src-port—Source Layer 4 port 
  • dst-port—Destination Layer 4 port 
  • src-dst-port—Source and destination Layer 4 port
Switch# show etherchannel load-balance
EtherChannel Load-Balancing Configuration:
EtherChannel Load-Balancing Addresses Used Per-Protocol:
Non-IP: Source XOR Destination MAC address
IPv4: Source XOR Destination IP address
IPv6: Source XOR Destination IP address

Etherchannel Misconfiguration Guard

Protect against misconfiguration on the switch. Recover by shutting and no shutting the interface(s)

spanning-tree etherchannel guard misconfig

CCNA Collaboration – Notes, Chapter 10

Understanding CUCM Dial Plan Elements and Interactions

CUCM Call Flows

This chapter reviews:

  • Call signaling and voice traffic flow
  • Components of call routing
  • Call routing decision process
  • Component configuration
  • Redundancy
  • Restrictions

Call Flow – DNS

DNS is not recommended with IP phones

If DNS is used, the phone must complete a DNS name resolution to learn the IP address of CUCM before signaling can occur. This process introduces delay and also reliance on another system (DNS) that could break the call setup process.

After DNS has resolved the name of CUCM to an IP address the call flow is as follows

  1. SCCP or SIP signaling between phone and CUCM
  2. RTP (real-time transport protocol) carries voice phone to phone (CUCM is not in traffic path for voice)

Call Flow – No DNS

Removing DNS reliance (demonstrated in ch9 notes) is recommended in CUCM. This allows phones to use IP to reach CUCM. The call flow becomes simiplified as the DNS step described above is not done and normal traffic flow occurs.

Phones signal to CUCM with SIP or SCCP, CUCM setups call, phones talk directly using RTP

Centralized Remote Branch Call Flow

Centralized deployment – CUCM servers are located at a main location (companies DC) with remote sites connecting over the WAN for both signaling and on-net voice.

Off-net calls could be routed out a local gateway at the site (PSTN or POTs lines installed in voice gateway at the branch)

Signaling remains the same, SCCP or SIP signaling traffic is sent to CUCM, CUCM setups the call between the 2 phones and the voice (RTP) traffic flows directly from phone to phone. The phones can be located in different sites (Branch to Branch, Branch to HQ, etc).

PSTN Backup Call Flow

If WAN fails, phones can no longer register with CUCM and no longer function. In this scenario SRST is recommended to provide local phone registration in the event of a WAN failure.

Survivable Remote Site Telephony (SRST) is a feature that allows branch routers to take over phone registration and call control if phones cannot reach CUCM. SRST provides on-net calling between phones within the branch. If the SRST routers dial plan is configured properly the branch can dial on-net extensions at another site and SRST will modify the dialed digits for PSTN routing.

CUCM will see the phones as unregistered. Reaching the phones over the PSTN is possible if CUCM is setup with an alternate path.

  • Call routing table has 2nd option to provide PSTN gateway and digit manipulation for PSTN dialed digits
  • Call Forward UnRegistered (CFUR) – destination number that calls will be forwarded if the phone is unregistered with CUCM. Used in conjunction with SRST. This is configured for each branch phone to configure the full PSTN number to reach the branch phones

These configurations in CUCM along with the dial plan in SRST will allow the branch site to still be able to call between sites during a WAN failure. When the WAN recovers, phones register back with CUCM and normal call flow resumes.

Centralized Deployment Considerations

CUCM v10 supports a max of 2000 locations and a max of 2100 H.323 or MGCP gateways per cluster.

• H.323 – Protocol created by ITU-T to allow multimedia communication over network-based environments

• MGCP – Media Gateway Control Protocol – Voice signaling protocol created by IETF. Allows voice gateways to be controlled by a centralized call agent (client / server)

There is no limit of number of phones at a branch site, however the number of phones supported by SRST is limited based on the router hardware at the branch site.

WAN’s must be configured with QOS and allocate bandwidth in the priority queue for voice traffic based on the number of concurrent calls that will happen at the site.

Call Admission Control (CAC)

A technique for monitoring the total remaining bandwidth available for voice traffic over a WAN circuit. The purpose of CAC is to prevent voice traffic in excess of what the circuit can support without overflowing the QOS priority queue and causing voice traffic to be dropped. CAC can be implemented using Locations in CUCM (shown in last chapter). RSVP (Resource Reservation Protocol) can also be used, a QOS mechanism.

Locations – track how many calls are between given locations and subtract bandwidth for each concurrent call. If no bandwidth is available, the call is dropped (default CAC behavior). The user gets a reorder tone.

AAR – Automated Alternate Routing – allows calls that would be dropped by CAC to be rerouted over the PSTN. AAR is triggered by CAC when CAC prevents a call over the WAN. AAR requires digit manipulation to retry the call over the PSTN

Distributed Call Flow

Distributed deployments of CUCM, one CUCM cluster signals another CUCM cluster over the WAN. Signaling flows from calling phone to local CUCM and from local CUCM to remote CUCM over the WAN. RTP traffic is setup directly phone to phone across the WAN.

CUCM used the following signaling protocols between CUCM clusters

  • ICT – Inter-Cluster Trunk
  • H.323
  • SIP

CUCM Call Routing – Sources

  • Phone – places a routing request through a dialed number
  • Trunk – Signals inbound calls from another CUCM, CME or call agent
  • Gateway – Signals inbound calls from SPTN to another call agent
  • Translation Pattern – Matches originally dialed digits and transforms them into a new dial string
  • Voicemail Port – Can be source of a call routing request if the application attempts to call, transfer or message notification on behalf of a users mailbox

CUCM Call Routing – Destinations

  • Directory Number (DN) – Unique on-net extension that can be assigned to a button on an IP phone
  • Translation Pattern – Matches a dialed string and transforms them into a new dialed string. This new string is analyzed and routed to a different target
  • Route Pattern – Matches a set of dialed digits and triggers a call routing process that can include one or more potential paths. Hierarchical set of call routing options
  • Hunt Pilot – Specific pattern of digits that can trigger a customizable call coverage system
  • Call Park Number – A pattern or range or patterns that CUCM can use to temporarily hold a call until a user dials the call park number to pick up the call
  • Meet-Me Number – Conference call initiator dials into a Meet-Me number to begin a conference

All destinations are a string of digits or a SIP URI (Uniform Resource Identifier) 

SIP URI – alphanumeric string –

Call Routing Configuration

Components of CUCM call routing: route patterns, route lists, route groups, gateways/trunks

Route Pattern

  • Matches a string of dialed digits
  • Pattern may be specific matching a single dialable number or general and match hundreds/thousands or possible numbers
    • Wildcards are used in the pattern
  • Required to provide PSTN access
  • Can be used to integrate with existing PBX dial plans
  • Associated with a route list or gateway
    • If the route pattern is directly associated with a gateway, the gateway can no longer be referenced by a route group. Gateway is locked to the specific route pattern

Route List

  • Ordered list of route groups
  • First entry is the preferred call routing path
    • If unavailable the 2nd in list will be used
    • Each new call uses the top-down order
  • This allows admins to choose which circuits get used for which type of calls

Route Group

  • List of gateways or trunks that are configured to support circuits to PSTN or remote CUCM clusters
  • Commonly configured to contain devices with similar signaling characteristics 
  • Distribution of the calls is configurable: top/down, circular

Gateways and Trunks

  • Physically terminate and support circuits to PSTN, digital/analog PBX and WAN circuits to remote clusters or IP-TSP circuits to service provider
  • CUCM supports peer to peer gateway protocols – H.323 and SIP
  • CUCM supports gateway control protocols – MGCP and SCCP

Call Routing Behavior

Dial analysis is performed by CUCM by matching dialed digits.

  • SCCP – Digits are collected digit by digit
  • SIP – Keypad Markup Language (KPML) and en-bloc (all at once as a set of digits)

Digit Analysis

CUCM selects a destination for the call routing request based on closest match

T.302 – Wait time, inter-digit timeout – default is 15 seconds. To wait for any additional digits to be dialed. After the timer is finished the call is routed.

Digit by digit analysis means CUCM collects digits one at a time as they are dialed. When collected patterns that no longer match as discarded as routing targets.

Hunt Groups

A hunt group is a set of phones (DN’s) that are reachable by calling a common number.

  • Line Group – contains DN’s that will ring sequentially. Allows for call distribution: top/down, circular, longest idle, broadcast
  • Hunt List – Contains top/down ordered list of line groups. Each call is routed to the first line in the list unless it is busy then the 2nd line will be rung. If the group is busy the next group in the hunt list will be used
  • Hunt Pilot – Matches a dialed string and targets a hunt list (call routing entry). Hunt pilot numbers can be on-net, E.164 or any format required.

Class of Control

Class of Control defines the ability to apply calling restrictions to a device. Configured using partitions and calling search spaces (CSS).

  • Prevent a phone from calling long distance
  • Routing the same called number to different targets depending on the time of day
  • Routing the same called number to different targets at different locations


Grouping of things with similar reachability characteristics. Assigned to things that get dialed.

By Default – one partition exists, null partition

75 additional partitions can be created

  • DN
  • Route Pattern
  • Translation Pattern
  • Voicemail Ports
  • Meet-Me Conference

Calling Search Space (CSS)

Top/down ordered list of partitions. Can be applied to device (phone or gateway) or to line on the phone

One CSS exists by default, contains null partition.

CSS’s are applied to things that make calls

Partitions and CSS

If the target dialed number does not exist in one of the partitions in the CSS, the call will fail

When a route pattern is moved from default partition, it is no longer available to the default CSS

Every CSS includes the default partition and the end of the list.

If both device and line CSS are applied, the partitions in both CSS are concatenated in sequential top/down order. The LINE CSS partitions are listed first followed by the device CSS partitions.

Line CSS overrides the device CSS

Best practice – Setup device CSS to allow full calling privilege to all patterns based on the devices location. The calling restrictions are applied using the line CSS which contain route patterns that match long distance but configured to block the call

Study Strategy & Habits

I have spent a lot of time reading and watching videos on study tips and how to better retain what I have been studying. There is a general consensus of what works, but it mostly comes down to what works best for you.

Here is what I have come up with as my studying habits

  • Build a learning schedule
    • I wake up early (around 5am) and start doing some reading and take some notes.
    • Around 8pm after the little man goes to bed I’ll get back to studying, either reading and writing notes or doing a lab.
    • Any other time I can find I’ll take advantage of as well. Example: I’ll listen to audio while driving or mowing the lawn
  • Read pressbook(s)
    • Highlight as reading
    • Currently reading in digital formats, either on Kindle or iPad using the Safari Queue App (more on this below)
    • I like to read the book fully and then go back through it once more after watching videos of the subjects to help clear up anything I may not have fully understood
  • Go back through chapters again and handwritten notes
    • I have been hand writing the notes on my iPad using the native Apple Notes app. I switched from old school paper and pencil because when I’m on the road, I may forget to pack the notebook, but I always have my iPad with me.
    • The Notes app also syncs across all my devices seamlessly (I’m fully bought into the Apple ecosystem)
  • New – type up notes and post into blog for everyone to enjoy and learn from
    • I start by typing my notes into Pages (another Apple app which saves to iCloud) and transfer into a blog post. I’m still figuring out the differences of format between the 2 since photos don’t copy over.
    • I used to use onenote for this, however with what I have seen coming out in iOS11, I wanted to start building the habit of using the apple notes app.
  • Watch videos and actively take notes
    • Active engagement is important. If I don’t actively engage I find that my mind will wonder and I’ll miss what was being discussed.
    • Watching videos also has the amazing advantage of being able to pause, rewind, speed up and slow down the recording. Allows for time to take notes or follow along doing a lab
  • Always be Labbing (ABL)
    • I have build a Collab lab in my basement, it’s a work in progress. I’ll make another post dedicated to going through what I have setup


I have a Safari Online Books subscription which makes it much easier for me to consume books and have quick access. I was first introduced to this in college when a professor didn’t want us to get the physical book. Now that I’m at Cisco, there is a subscription I can take advantage of. What I like about this service is the ability to easily access any technical book. I have a queue built of about 30 books that I can easily move between and access from any device (laptop, phone, iPad) and have the highlights follow. There are also videos that can be added to the queue to give more options for different learning styles. I would highly suggest this site for anyone who is studying any subject.


I hope this is helpful for anyone who is studying and looking for other ideas on how to study and remember what you’ve studied.


Latest video that I’ve watched and looking to incorporate some of these tips