Comments (7)
Actually in my experience I've never seen more than two tags in a single frame,
but in practice there is no limiting to the number of tags. To be honest I would like
to remove the while but I am not sure it's the best choice.
from pf_ring.
Double tagged frame is ok for extracting IP addresses
It has inner tag and outer tag. If you configured Cisco or Juniper router you could use double tagged interfaces, single tagged or untagged. But not triple tagged etc.
Of course MTU is the key for making as much tags as you wish. But if you run three tags - it means you have transit VLAN with QinQ enabled and your customer runs his own QinQ. In this case you don't need to know what traffic he runs.
(0x8100 as ethertype is the most common, but it should be remembered that 0x8100 is not the only one option)
from pf_ring.
And in case of nested vlan (QnQ) we need separate field (for example: outer_vlan) for storing external vlan number.
from pf_ring.
It makes sense. Pavel if you have a patch, please send a pull request. Please pay attention to backward compatibility (i.e. an outer_vlan_id field is fine, rather than inner_vlan_id, in addition to the current vlan_id)
from pf_ring.
Hi Pavel,
Could you please help me to find out the patch supporting QinQ in pf_ring.
Thanks,
Vasu.
from pf_ring.
Hello!
I havent tried to implement this code because it's pretty complex.
Different vendors are using different approaches here with different ether
types. Some vendors offer option to change QnQ's ethertype. So you need to
write custom code acording to your network vendor.
On Tuesday, 10 May 2016, vasubabukandimalla [email protected]
wrote:
Hi Pavel,
Could you please help me to find out the patch supporting QinQ in pf_ring.
Thanks,
Vasu.—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#57 (comment)
Sincerely yours, Pavel Odintsov
from pf_ring.
Hello!
And this issue hit us again :) So, as I mentioned before we still need to add additional code to handle QnQ properly and this code depends on vendor's implementation.
For this purposes, we need to modify your code for each vendor and use custom version for each one. But the library is licensed under GPLv2 terms and it's incompatible with commercial/closed source code. And we could not do it :(
Maybe you could unify this code some way to export such interfaces or offer another license for code in this particular file/function?
Thanks!
from pf_ring.
Related Issues (20)
- DKMS driver compilation on Debian 12 HOT 1
- PF_RING FT using user defined protocol file not work HOT 12
- Activating ice ZC Driver disables all i40e interfaces on RHEL 8.8 HOT 5
- 100% Pkt Drop with Multiple RSS HOT 2
- No forum/community to find help? HOT 1
- Failed to install ice-zc-dkms on HWE kernel HOT 11
- Compile issue on fc39 HOT 4
- Fails to install HOT 1
- Add ZC support for igc adapters (Intel 2.5 Gbit)
- igb-zc make failed HOT 4
- ICE Kernel BUG PF 8.6.1, DELL Server HPC MODE HOT 10
- incorrect ipv6 formate lead to a kernel crash HOT 3
- Can't RX Network traffic is stable on ZC PF_Ring HOT 4
- A Question to "i40e" Driver HOT 3
- Patch ZC drivers to support Ubuntu 24.04 LTS
- ice-zc device initialization randomly fails HOT 17
- kernel module makefile side effets removing linux-headers files HOT 1
- ice-zc driver error in Rocky Linux 9.2 & 9.3 under XCP-ng 8.2 (Xen) HOT 2
- Issues of Packet Loss and Drivers' Dependency HOT 2
- kernel module makefile side effets removing linux-headers files HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pf_ring.