Repeating same TLV in a given VSA Issue
We have configured FreeRadius 2.1.12 on RedHat ; Requirement ========== In a given WiMax-Packet-Flow-Descriptor VSA, we want to have following multiple WiMAX-Uplink-Classifier (attribute 9) as shown in the below packet capture: WiMAX-Uplink-Classifier: =================== 1. permit in ip src any dst any 0-66 priority 3 2. permit in ip src any dst any 69-65535 priority 3 1st Packet Capture (Expected Behavior) =============================== AVP: l=125 t=Vendor-Specific(26) v=WiMAX(24757) VSA: l=119 t=WiMAX-Packet-Flow-Descriptor(28) C=0x00: 8 TLV(s) inside TLV: l=4 t=WiMAX-Packet-Data-Flow-Id(1): 111 WiMAX-Packet-Data-Flow-Id: 111 TLV: l=4 t=WiMAX-Service-Data-Flow-Id(2): 101 WiMAX-Service-Data-Flow-Id: 101 TLV: l=3 t=WiMAX-Direction(4): Uplink(1) WiMAX-Direction: Uplink (1) TLV: l=3 t=WiMAX-Activation-Trigger(5): 4 WiMAX-Activation-Trigger: 4 TLV: l=3 t=WiMAX-Transport-Type(6): IPv4-CS(1) WiMAX-Transport-Type: IPv4-CS (1) TLV: l=3 t=WiMAX-Uplink-QOS-Id(7): 111 WiMAX-Uplink-QOS-Id: 111 TLV: l=46 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 0-66 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 0-66 priority 3 TLV: l=50 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 69-65535 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 69-65535 priority 3 Configuration in MySQL ================== Here are the inserts we have in the radreply table: //--- WiMAX Capabilities attributes INSERT INTO radreply (username, attribute, op, value) VALUES ('testuser', 'WiMAX-Accounting-Capabilities', ':=', '1'), ('testuser', 'WiMAX-Hotlining-Capabilities', ':=', '1'), ('testuser', 'WiMAX-Idle-Mode-Notification-Cap', ':=', '0'), ('testuser', 'WiMAX-ROHC-Support', ':=', '01'); //--- WiMAX Packet Flow and QoS Descriptors - First Pair INSERT INTO radreply (username, attribute, op, value) VALUES ('testuser', 'WiMAX-Packet-Data-Flow-Id', ':=', '101'), ('testuser', 'WiMAX-Service-Data-Flow-Id', ':=', '101'), ('testuser', 'WiMAX-Direction', ':=', '2'), ('testuser', 'WiMAX-Activation-Trigger', ':=', '4'), ('testuser', 'WiMAX-Transport-Type', ':=', '1'), ('testuser', 'WiMAX-Downlink-QOS-Id', ':=', '101'), ('testuser', 'WiMAX-Downlink-Classifier', ':=', 'permit in any src any dst any priority 3'), ('testuser', 'WiMAX-QoS-Id', ':=', '101'), ('testuser', 'WiMAX-Schedule-Type', ':=', '2'), ('testuser', 'WiMAX-Traffic-Priority', ':=', '1'), ('testuser', 'WiMAX-Maximum-Sustained-Traffic-Rate', ':=', '22000000'), ('testuser', 'WiMAX-Minimum-Reserved-Traffic-Rate', ':=', '0'), ('testuser', 'WiMAX-Transmission-Policy', ':=', '208'); //--- WiMAX Packet Flow and QoS Descriptors - Second Pair //--- Note: Please note that change in the 'op' column value from the above //--- Since this is an additional packet flow and qos descriptor operator is set to '+=' instead of ':=' INSERT INTO radreply (username, attribute, op, value) VALUES ('testuser', 'WiMAX-Packet-Data-Flow-Id', '+=', '111'), ('testuser', 'WiMAX-Service-Data-Flow-Id', '+=', '101'), ('testuser', 'WiMAX-Direction', '+=', '1'), ('testuser', 'WiMAX-Activation-Trigger', '+=', '4'), ('testuser', 'WiMAX-Transport-Type', '+=', '1'), ('testuser', 'WiMAX-Uplink-QOS-Id', '+=', '111'), ('testuser', 'WiMAX-Uplink-Classifier', '+=', 'permit in ip src any dst any 0-66 priority 3'), ('testuser', 'WiMAX-Uplink-Classifier', '+=', 'permit in ip src any dst any 69-65535 priority 3'), ('testuser', 'WiMAX-QoS-Id', '+=', '111'), ('testuser', 'WiMAX-Schedule-Type', '+=', '5'), ('testuser', 'WiMAX-Traffic-Priority', '+=', '1'), ('testuser', 'WiMAX-Maximum-Sustained-Traffic-Rate', '+=', '5500000'), ('testuser', 'WiMAX-Minimum-Reserved-Traffic-Rate', '+=', '0'), ('testuser', 'WiMAX-Tolerated-Jitter', '+=', '1000'), ('testuser', 'WiMAX-Maximum-Latency', '+=', '1000'), ('testuser', 'WiMAX-Unsolicited-Grant-Interval', '+=', '40'), ('testuser', 'WiMAX-Transmission-Policy', '+=', '211'); Issue/Problem: ============ Version 2.1.2 and 2.20 -------------------------- In both FreeRadius versions 2.1.2 and 2.20 on RedHat, the 2nd Uplink-Classifier (permit in ip src any dst any 69-65535 priority 3) is showing up in a separate VSA on its own as shown below; Expecting to see it in the same VSA as show in the first packet capture. 2nd Packet Capture (Not an expected Behavior) ================================== AVP: l=125 t=Vendor-Specific(26) v=WiMAX(24757) VSA: l=119 t=WiMAX-Packet-Flow-Descriptor(28) C=0x00: 7 TLV(s) inside TLV: l=4 t=WiMAX-Packet-Data-Flow-Id(1): 111 WiMAX-Packet-Data-Flow-Id: 111 TLV: l=4 t=WiMAX-Service-Data-Flow-Id(2): 101 WiMAX-Service-Data-Flow-Id: 101 TLV: l=3 t=WiMAX-Direction(4): Uplink(1) WiMAX-Direction: Uplink (1) TLV: l=3 t=WiMAX-Activation-Trigger(5): 4 WiMAX-Activation-Trigger: 4 TLV: l=3 t=WiMAX-Transport-Type(6): IPv4-CS(1) WiMAX-Transport-Type: IPv4-CS (1) TLV: l=3 t=WiMAX-Uplink-QOS-Id(7): 111 WiMAX-Uplink-QOS-Id: 111 TLV: l=46 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 0-66 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 0-66 priority 3 VSA: l=50 t=WiMAX-Packet-Flow-Descriptor(28) C=0x00: 1 TLV(s) inside TLV: l=50 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 69-65535 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 69-65535 priority 3 Master Branch ------------------ If we configure the FreeRadius using the "Master" branch, we get the 2nd Uplink-Classifier in the same VSA as expected (as shown in the first packet capture) Wondering if the behavior in versions 2.1.2 and 2.20 is a bug and was fixed in the "master" branch or are we missing any configuration in 2.1.2/2.20 which is causing the undesired behavior? For our production implementation, don't want to go to the "master" branch if possible. Sorry for the last email, but want to provide as much details as possible. Thanks -Hanu
Hi,
If we configure the FreeRadius using the "Master" branch, we get the 2nd Uplink-Classifier in the same VSA as expected (as shown in the first packet capture)
so likely a bug fixed
For our production implementation, don't want to go to the "master" branch if possible.
??? well, wait until 2.2.1 comes out - the only difference between 2.2.0 and the 2.2.x master is bug fixes and some nice little feature/option updates. all the big changes, new config etc are in HEAD alan
Cholleti, Hanumantha wrote:
Version 2.1.2 and 2.20
--------------------------
In both FreeRadius versions 2.1.2 and 2.20 on RedHat, the 2^nd Uplink-Classifier (permit in ip src any dst any 69-65535 priority 3) is showing up in a separate VSA on its own as shown below;
Yeah, that's an issue.
If we configure the FreeRadius using the “Master” branch, we get the 2nd Uplink-Classifier in the same VSA as expected (as shown in the first packet capture)
Yes.
Wondering if the behavior in versions 2.1.2 and 2.20 is a bug and was fixed in the “master” branch or are we missing any configuration in 2.1.2/2.20 which is causing the undesired behavior?
It's a minor bug in v2.2.0. I've pushed a fix to the v2.x.x branch from "git". It will go into the 2.2.1 release. The code in master has been *completely* re-written.
For our production implementation, don’t want to go to the “master” branch if possible.
That's OK.
Sorry for the last email, but want to provide as much details as possible.
You provided exactly the correct information to find and fix the problem. Alan DeKok.
Hi Alan, Thanks a lot for the quick response and putting in the fix under 2.x.x branch. We configured the FreeRadius using this new 2.x.x branch from git; The length of the AVP comes correct, but the 2nd classifier is showing in a separate AVP. Here is the packet capture (2.x.x git branch): AVP: l=125 t=Vendor-Specific(26) v=WiMAX(24757) VSA: l=119 t=WiMAX-Packet-Flow-Descriptor(28) C=0x00: TLV: l=4 t=WiMAX-Packet-Data-Flow-Id(1): 111 WiMAX-Packet-Data-Flow-Id: 111 TLV: l=4 t=WiMAX-Service-Data-Flow-Id(2): 101 WiMAX-Service-Data-Flow-Id: 101 TLV: l=3 t=WiMAX-Direction(4): Uplink(1) WiMAX-Direction: Uplink (1) TLV: l=3 t=WiMAX-Activation-Trigger(5): 4 WiMAX-Activation-Trigger: 4 TLV: l=3 t=WiMAX-Transport-Type(6): IPv4-CS(1) WiMAX-Transport-Type: IPv4-CS (1) TLV: l=3 t=WiMAX-Uplink-QOS-Id(7): 111 WiMAX-Uplink-QOS-Id: 111 TLV: l=46 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 0-66 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 0-66 priority 3 [TLV too short: length 0 < 2] AVP: l=59 t=Vendor-Specific(26) v=WiMAX(24757) VSA: l=53 t=WiMAX-Packet-Flow-Descriptor(28) C=0x00: 1 TLV(s) inside TLV: l=50 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 69-65535 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 69-65535 priority 3 Alan DeKok wrote:
It's a minor bug in v2.2.0. I've pushed a fix to the v2.x.x branch from "git". It will go into the 2.2.1 release.
Thanks -Hanu
Cholleti, Hanumantha wrote:
Thanks a lot for the quick response and putting in the fix under 2.x.x branch.
It's what I do. :)
We configured the FreeRadius using this new 2.x.x branch from git;
The length of the AVP comes correct, but the 2nd classifier is showing in a separate AVP.
Whoops... that's a typo. Do a "git pull", and then another "make;make install" You don't need to re-configure. Alan DeKok.
Thanks a lot Alan for the quick response and change again :-). The new fix works like charm :-). We see the 2 classifier in the same AVP. Here is the packet capture: -------------------------------- AVP: l=125 t=Vendor-Specific(26) v=WiMAX(24757) VSA: l=119 t=WiMAX-Packet-Flow-Descriptor(28) C=0x00: 8 TLV(s) inside TLV: l=4 t=WiMAX-Packet-Data-Flow-Id(1): 111 WiMAX-Packet-Data-Flow-Id: 111 TLV: l=4 t=WiMAX-Service-Data-Flow-Id(2): 101 WiMAX-Service-Data-Flow-Id: 101 TLV: l=3 t=WiMAX-Direction(4): Uplink(1) WiMAX-Direction: Uplink (1) TLV: l=3 t=WiMAX-Activation-Trigger(5): 4 WiMAX-Activation-Trigger: 4 TLV: l=3 t=WiMAX-Transport-Type(6): IPv4-CS(1) WiMAX-Transport-Type: IPv4-CS (1) TLV: l=3 t=WiMAX-Uplink-QOS-Id(7): 111 WiMAX-Uplink-QOS-Id: 111 TLV: l=46 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 0-66 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 0-66 priority 3 TLV: l=50 t=WiMAX-Uplink-Classifier(9): permit in ip src any dst any 69-65535 priority 3 WiMAX-Uplink-Classifier: permit in ip src any dst any 69-65535 priority 3 Thanks again for the great support - wish all other products have the same support response. -Hanu Alan DeKok wrote:
Whoops... that's a typo. Do a "git pull", and then another "make;make install"
You don't need to re-configure.
participants (3)
-
A.L.M.Buxey@lboro.ac.uk -
Alan DeKok -
Cholleti, Hanumantha