Hi,

Yes, of course!
In fact, the TPID value is not limited to be 0x88a8/0x8100, it could be 
spicified by different service provider. 
The systems of different vendors might set the TPID of the outer VLAN tag of 
Q-in-Q frames to different values.

I think the code of ryu did not refer to this case.

Best Regards,


[email protected]
 
From: 澤田和宏
Date: 2015-07-03 14:37
To: [email protected]
CC: ryu-devel
Subject: Re: [Ryu-devel] How to pop vlan tag
Hi,

Thank you for your quick reply.

>First of all, I think it's not a good solution to pop tags on >controller. The 
>reasons are listed below:
>   1. all packets arrived controller via packetin event. The origin  packets 
> is encapsulated to be the payload of openflow message.
>    2. it's an ineffictive when the traffic become bigger.
I agree with you.
But I want to do such as:
|double tag packet|------>|OpenFlowSwitch|------->|untag packet|


>If you still want to go on, focus on the method "get_packet_type" of >class 
>"ethernet", in file ethernet.py.
I tried to look at ethernet.py.
Probably, If outer tag's ether type is 0x88a8, I will be able to pop both tag 
using  OFPActionPopVlan(ether.ETH_TYPE_8021AH) and 
OFPActionPushVlan(ether.ETH_TYPE_8021Q).

But my packet's both ether type are 0x8100. So I can not pop both tag.

Do I understand correctly?

----
Best Regards,
[email protected]

2015-07-03 14:47 GMT+09:00 [email protected] <[email protected]>:
Hi 澤田和宏,

First of all, I think it's not a good solution to pop tags on controller. The 
reasons are listed below:
    1. all packets arrived controller via packetin event. The origin packets is 
encapsulated to be the payload of openflow message.
    2. it's an ineffictive when the traffic become bigger.

If you still want to go on, focus on the method "get_packet_type" of class 
"ethernet", in file ethernet.py.
maybe current code could not parser Qinq packets.

Best Regards,


[email protected]
 
From: 澤田和宏
Date: 2015-07-03 13:21
To: ryu-devel
Subject: [Ryu-devel] How to pop vlan tag
Hello there,


I am a newbie to OpenFlow and Ryu.
I am trying to pop double tag which tagged by cisco's dot1q-tunnel.

It is such a packet.
-------------------------------------------------------------------------------------
No.     Time           Source                Destination           Protocol 
Length Info
      1 0.000000000    00:00:00_00:00:01     Broadcast             ARP      50  
   Who has 10.0.2.2?  Tell 10.0.2.1

Frame 1: 50 bytes on wire (400 bits), 50 bytes captured (400 bits) on interface 0
Ethernet II, Src: 00:00:00_00:00:01 (00:00:00:00:00:01), Dst: Broadcast 
(ff:ff:ff:ff:ff:ff)
    Destination: Broadcast (ff:ff:ff:ff:ff:ff)
    Source: 00:00:00_00:00:01 (00:00:00:00:00:01)
    Type: 802.1Q Virtual LAN (0x8100)
802.1Q Virtual LAN, PRI: 0, CFI: 0, ID: 20
    000. .... .... .... = Priority: Best Effort (default) (0)
    ...0 .... .... .... = CFI: Canonical (0)
    .... 0000 0001 0100 = ID: 20
    Type: 802.1Q Virtual LAN (0x8100)
802.1Q Virtual LAN, PRI: 0, CFI: 0, ID: 100
    000. .... .... .... = Priority: Best Effort (default) (0)
    ...0 .... .... .... = CFI: Canonical (0)
    .... 0000 0110 0100 = ID: 100
    Type: ARP (0x0806)
Address Resolution Protocol (request)
-------------------------------------------------------------------------------------

I could pop outer tag(vid=20).
But I could not pop inner tag(vid=100).

Can RYU pop innner tag?
If possible, How can I do it?


----
Best Regards,
[email protected]

------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to