Is 'Trunking F-Port' pointless ?

Hi,  I've been doing some research and lab work and have come to the conclusion that 'Trunking F-Port' is a pointless feature - am I wrong?  I just don't see any benefit, unless there is something I am missing completely (hence the question, so am hoping for some clarification).

I have a very simple setup:

N5K1: NPIV switch

N5K2: NPV switch

Just FC. not FCoE

N5K1 fc1/5 is connected to N5K2 fc1/5

N5K1:

vsan database
  vsan 20 interface fc1/5

interface fc1/5
  switchport mode F
  switchport trunk allowed vsan 10
  switchport trunk allowed vsan add 20
  switchport trunk allowed vsan add 30
  no shutdown

N5K2:

vsan database
  vsan 20 interface fc1/5

interface fc1/5
  switchport mode NP
  switchport trunk allowed vsan 10
  switchport trunk allowed vsan add 20
  switchport trunk allowed vsan add 30
  switchport trunk mode on
  port-license acquire
  no shutdown

 

Now, when I do a 'show vsan' on the N5Ks I get the following:

switch(config-if)# sh vsan 10
vsan 10 information
         name:VSAN0010  state:active
         interoperability mode:default
         loadbalancing:src-id/dst-id/oxid
         operational state:down

switch(config-if)# sh vsan 20
vsan 20 information
         name:VSAN0020  state:active
         interoperability mode:default
         loadbalancing:src-id/dst-id/oxid
         operational state:up

switch(config-if)# sh vsan 30
vsan 30 information
         name:VSAN0030  state:active
         interoperability mode:default
         loadbalancing:src-id/dst-id/oxid
         operational state:down

This confirms that the VSAN for which my fc1/5 interface is in, is the only vsan which is in the UP state - this seems logical.

So then, if the ONLY vsan which is 'UP' is the vsan which the physical interface is in, what is the point of trunking multiple vsans down the link?  Yes, I agree you can trunk them, but they are of no use, as they are not 'UP'.

If I quickly change my fc1/5 to be in vsan 30, then VSAN 20 goes into the 'DOWN' state, and vsan 30 is now 'UP':

switch(config-if)# vsan database
switch(config-vsan-db)# interface fc1/5
switch(config-if)# vsan database
switch(config-vsan-db)# vsan 30 interface fc1/5
switch(config-vsan-db)# sh vsan 10
vsan 10 information
         name:VSAN0010  state:active
         interoperability mode:default
         loadbalancing:src-id/dst-id/oxid
         operational state:down

switch(config-vsan-db)# sh vsan 20
vsan 20 information
         name:VSAN0020  state:active
         interoperability mode:default
         loadbalancing:src-id/dst-id/oxid
         operational state:down

switch(config-vsan-db)# sh vsan 30
vsan 30 information
         name:VSAN0030  state:active
         interoperability mode:default
         loadbalancing:src-id/dst-id/oxid
         operational state:up

switch(config-vsan-db)#

I'm pretty sure I'm not missing anything, it just seems a bit of a daft feature to me!

Comments

  • imagine that you have VSAN 10 lets say connected to Server1 on N5K2 port fc1/1, VSAN 20 connected to server2 on N5K2 fc1/2 and you got the same on N5K1, but instead of servers, you have JBODs attached. And by using single physical fc1/5 link in your case, you are trunking 2 VSANs and both of them should be active.

    if you catch this, now imagine the same situation with UCS, where instead of 2 physical FC links you can use one and enable  FC Uplink Trunk

    feature, so it will carry your southbound VSANs to the upstream MDS/N5K, which should also have these VSANs, so they become active on a trunk.

    If you are trunking , you don't need to indicate VSAN on uplink port or portchannel in UCS like you normally do for Fabric A and B.

    If you omit it, it will default to VSAN 1 , which basically will become native VSAN on that trunk. And assuming you don't change native VSAN on uplink switch, which normally you won't do, your trunk will come up with VSANs active on the link.

     

    HTH mate

     

     

  • Hey Nizami, thanks for that - yes complete clarity now and makes sense.  It was the native vsan bit I was missing, which we discussed last week, but now I have it.  Thanks for the example.

Sign In or Register to comment.