In traditional STP environment,one link will be blocked to avoid Layer2 loops. So Etherchannel comes to rescue.Etherchannel is used to avail maximum bandwidth and avoid STP loops.This is because STP treats etherchannel as a single port.
Q1: I have seen a discussion saying only 1 BPDU per etherchannel is sent. This BPDU represents the link from the bundle whichever comes UP first. Is this understanding correct?
Q2:How does this prevent loop? I mean, what actual change results in loop avoidance.I know that this is logically like a single link. But what is actually happening at hardware level that prevents loops?
Q3: Etherchannel uses hashing and XOR to choose the link which is used to forward traffic at given time.So, at the end of the day ONLY ONE LINK IS USED AT ANY GIVEN TIME(same thing happens in STP also, though witha little delay)...so how does it actually make use of the bandwidth of all links? For sure, all links cannot be used SIMULTANEOUSLY
Q4: Moving to the advanced etherchannel( i mean vPC) where the uplinks go to 2 different devices. I know that VPC secondary replicates the BPDUs of the VPC primary. What i intend to understand is how this is avoiding layer 2 loops. The downstream switch(having the traditional etherchannel) will send only 1 BPDU. However, the upstream Primary and upStream Secondary both will send the same BPDU--is that correct? How will this avoid loop?