[Bulk] Re: [Bulk] Re: [Xorp-hackers] Some thoughts

Mike Horn caddisconsulting@yahoo.com
Tue, 8 Nov 2005 15:16:59 -0700


I too would prefer using a numbering convention for sub-interfaces (e.g.
fxp1.1, fxp1.2, etc.) if this is feasible.  

-mike

-----Original Message-----
From: xorp-hackers-admin@icir.org [mailto:xorp-hackers-admin@icir.org] On
Behalf Of Patrick Marc Preuss
Sent: Tuesday, November 08, 2005 11:05 AM
To: Kristian Larsson
Cc: Mark Handley; xorp-hackers@xorp.org
Subject: [Bulk] Re: [Bulk] Re: [Xorp-hackers] Some thoughts

Kristian Larsson wrote:

>On Tue, Nov 08, 2005 at 10:14:56AM +0000, Mark Handley wrote:
>  
>
>>On 11/8/05, Kristian Larsson <kristian@juniks.net> wrote:
>>    
>>
>>>Shouldn't you enable vlan-tagging on the physical interface instead 
>>>of on a vif?
>>>
>>>interfaces {
>>>  interface fxp0 {
>>>    vlan-tagging: true;
>>>    vif fxp0 {
>>>      bla bla
>>>    }
>>>    vif vlan0 {
>>>      vlan-tag: 20;
>>>    }
>>>  }
>>>}
>>>      
>>>
>>Yes, this is what Mike also suggested.
>>    
>>
>Sorry for repeating.
>  
>
>>    
>>
>>>though I'd still rather go with
>>>interfaces {
>>>  interface fxp0 {
>>>    vlan-tagging: true;
>>>    vif 0 {
>>>      description: "this is untagged";
>>>    }
>>>    vif 20 {
>>>      description: "this is tagged with tag 20";
>>>      perhaps including vlan-tag 20;
>>>    }
>>>  }
>>>}
>>>
>>>I like the skip superflous stuff like "vlan" :)
>>>      
>>>
>>The issue is that you really want vif names to be something that has 
>>direct meaning to the kernel or it gets really hard to integrate any 
>>non-XORP software (eg dhcpd, etc).
>>    
>>
>We could store the actual interface in a variable somewhere :)
>  
>
>>    
>>
>>>I'm not sure how you intend that "vlan0" in your example should be 
>>>handled. Is it like FreeBSD-vlan0 ie you can only have one per 
>>>system, if so the user would have to keep track of all the vlan 
>>>interfaces. not good.
>>>Or is it per interface, would the following work?
>>>      
>>>
>>On FreeBSD you can create as many vlan virtual interfaces as you need.
>> But there's only on namespace.  For example (trimmed a little to 
>>remove IP addresses, etc):
>>
>>vulture 107 # ifconfig
>>sk0: flags=8802<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
>>        ether 00:11:d8:71:0f:d1
>>dc0: flags=108843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
>>        options=8<VLAN_MTU>
>>        ether 00:a0:cc:39:95:1c
>>vlan0: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
>>        ether 00:a0:cc:39:95:1c
>>        vlan: 33 parent interface: dc0
>>vlan1: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
>>        ether 00:a0:cc:39:95:1c
>>        vlan: 34 parent interface: dc0
>>vlan2: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1496
>>        ether 00:11:d8:71:0f:d1
>>        vlan: 33 parent interface: sk0
>>
>>This machine has two physical interfaces (sk0 and dc0), and three vlan 
>>vifs configured, vlan0, vlan1, vlan2.  vlan- and vlan 1 are on dc0.
>>vlan2 is on sk0.  Both vlan0 and vlan2 are using vlan tag 33.
>>
>>This would then map to a XORP config of:
>>
>>interfaces {
>> interface sk0 {
>>   vlan-tagging: true
>>   vif sk0 {
>>   }
>>   vif vlan0 {
>>      vlan-tag: 33
>>   }
>>   vif vlan1 {
>>      vlan-tag: 34
>>   }
>> }
>> interface dc0 {
>>   vlan-tagging: true
>>   vif dc0 {
>>   }
>>   vif vlan2 {
>>     vlan-tag: 33
>>   }
>>}
>>
>>Thus the vif namespace maps directly to the kernel namespace on FreeBSD.
>>    
>>
>This would have to be done automatically. We have boxes here with close 
>to or perhaps even beyond thousand VLANs spread on different 
>interfaces, although we're not running FreeBSD I bet there are people 
>out there who do. You can't keep track of the vlan interfaces therefore 
>I thought that the user specifys:
>interfaces {
>  interface fxp0 {
>    vif 0 {
>    }
>    vif 3 {
>    }
>  }
>  interface fxp1 {
>    vif 0 {
>    }
>    vif 3 {
>    }
>  }
>}
>
>Which would result in
> xorp> show interfaces
> fxp0/0: Flags:<NO-CARRIER,ENABLED,BROADCAST,MULTICAST> mtu 1500
>        inet 1.3.3.7 subnet 1.3.3.0/24 broadcast 1.3.3.255
>	vlan: untagged, interface fxp0
>        physical index 6
>        ether 0:80:c8:cd:20:8c
> fxp0/3: Flags:<NO-CARRIER,ENABLED,BROADCAST,MULTICAST> mtu 1500
>        inet 1.3.3.7 subnet 1.3.3.0/24 broadcast 1.3.3.255
>	vlan: 3, interface vlan0
>        physical index 6
>        ether 0:80:c8:cd:20:8c
> fxp1/0: Flags:<NO-CARRIER,ENABLED,BROADCAST,MULTICAST> mtu 1500
>        inet 1.3.3.7 subnet 1.3.3.0/24 broadcast 1.3.3.255
>	vlan: untagged, interface fxp1
>        physical index 6
>        ether 0:80:c8:cd:20:8c
> fxp1/3: Flags:<NO-CARRIER,ENABLED,BROADCAST,MULTICAST> mtu 1500
>        inet 1.3.3.7 subnet 1.3.3.0/24 broadcast 1.3.3.255
>	vlan: 3, interface vlan1
>        physical index 6
>        ether 0:80:c8:cd:20:8c
>  
>
Greate, but i would suggest the result will be a dot and not a slash, i
would suggest to uses slashes for different hardware buses or somthing like
that:

 fxp1.3: Flags:<NO-CARRIER,ENABLED,BROADCAST,MULTICAST> mtu 1500
        inet 1.3.3.7 subnet 1.3.3.0/24 broadcast 1.3.3.255
	vlan: 3, interface vlan1
        physical index 6
        ether 0:80:c8:cd:20:8c



>I realise this might be harder to program but if xorp is going for 
>production environments I beleive there is little choice.
>  
>
Patrick

>   Kristian
>
>  
>
>> - Mark
>>    
>>
>_______________________________________________
>Xorp-hackers mailing list
>Xorp-hackers@icir.org
>http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-hackers
>
>
>  
>


_______________________________________________
Xorp-hackers mailing list
Xorp-hackers@icir.org
http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-hackers