Comments (3)
I think this MTU value can be fixed as 16536 (max value) when Vlan 1 router interface is created. This cannot be configured from Sonic. Note, In Sonic, only CPU port is part of Vlan 1
from sai.
I think this is not a SAI related question. Since SAI doesn't have the definition of the MTU of packets sent back to CPU. Could you move the issue towards SONiC websites?
from sai.
Thanks for your follow-up Prince, ShuoTian!
The issue is about switch front-panel ports.
We are testing ip mtu with SONiC 201803 branch image on our Broadcom Tomahawk (bcm56960) d7032 switch. After changing ip_mtu to 9100, we saw SONiC "show interface status", e.g. Ethernet0, has 9100 ip_mtu size and "bcmcmd ps" shows 9122. The problem we hit is that only able to route and forward up to 1532 bytes packet. Refer to the following “* MTU of Routing Interface doesn't work” on test details.
The Broadcom ASIC L3 forwarding datapath mtu is capped by L3 Intf 0 1514 bytes mtu size. SAI creates this Intf 0.
Thanks!
Wilson
• MTU of Routing Interface doesn't work
[Test step and config]
Test Center TCA port sends L3 IP packets to switch d7032 front-panel port Ethernet0 and TCB receives from Ethernet4.
/etc/sonic/config_db.json
"INTERFACE": {
"Ethernet0|20.20.20.100/24": {},
"Ethernet4|10.10.10.100/24": {}
},
[Test Result]
- Test 1, ip mtu: 1500, Passed:
root@SONiC-Inventec-d7032-100:~# vi /etc/sonic/config_db.json
"PORT": {
"Ethernet0": {
"alias": "Ethernet0",
"lanes": "1,2,3,4",
"mtu":1500
},
"Ethernet4": {
"alias": "Ethernet4",
"lanes": "5,6,7,8",
"mtu":1500
},
root@SONiC-Inventec-d7032-100:~# show interfaces status
Command: intfutil status
Interface Lanes Speed MTU Alias Oper Admin
Ethernet0 1,2,3,4 N/A 1500 Ethernet0 up up
Ethernet4 5,6,7,8 N/A 1500 Ethernet4 up up
root@SONiC-Inventec-d7032-100:~# bcmcmd "ps"
ps
ena/ speed/ link auto STP lrn inter max cut loop
port link Lns duplex scan neg? state pause discrd ops face frame thru? back
ce0( 1) up 4 100G FD SW No Forward TX RX None F KR4 1522 No
ce1( 2) up 4 100G FD SW No Forward TX RX None F KR4 1522 No
TCA sends traffic to TCB:
size
63 drop
64 pass
1526 pass (correct)
1527 drop (correct)
- Test 2, ip mtu: 9100, failed:
root@SONiC-Inventec-d7032-100:~# vi /etc/sonic/config_db.json
"PORT": {
"Ethernet0": {
"alias": "Ethernet0",
"lanes": "1,2,3,4",
"mtu":9100
},
"Ethernet4": {
"alias": "Ethernet4",
"lanes": "5,6,7,8",
"mtu":9100
},
root@SONiC-Inventec-d7032-100:~# show interfaces status
Command: intfutil status
Interface Lanes Speed MTU Alias Oper Admin
Ethernet0 1,2,3,4 N/A 9100 Ethernet0 up up
Ethernet4 5,6,7,8 N/A 9100 Ethernet4 up up
root@SONiC-Inventec-d7032-100:~# bcmcmd "ps"
ps
ena/ speed/ link auto STP lrn inter max cut loop
port link Lns duplex scan neg? state pause discrd ops face frame thru? back
ce0( 1) up 4 100G FD SW No Forward TX RX None F KR4 9122 No
ce1( 2) up 4 100G FD SW No Forward TX RX None F KR4 9122 No
TCA sends traffic to TCB:
size
1532 pass
1533 drop (failed!!)
9100 drop (failed!!)
from sai.
Related Issues (20)
- SAI_API_MPLS not supported for Mellanox/Nvidia Spectrum chips
- Possible SAI API struct *_api_t mismatch
- Question: Google Proto Buff for SAI-RPC available? HOT 10
- Correct version in saithrift package HOT 3
- Too many saithrift servers in SAI repo HOT 18
- buffer overflow vulnerability in sai_serialize_attribute function HOT 3
- Unused code? HOT 3
- Some generated metadata items are not binary backward compatible HOT 1
- Query: Shared threshold mode for the buffer profile HOT 5
- wrong size of sai_acl_capability_t HOT 3
- outside the range of type ‘sai_object_type_t’ HOT 8
- WEIGHT is valid for SAI_SCHEDULING_TYPE_WRR as well
- How to generate test report for SAI PTF test case
- test
- Clarification on Conflicting Actions Resolution in ACL Table HOT 5
- [information request] do we have a way to set the type of hash algo?
- Get vendor specific version information from SAI HOT 5
- saithrift build issue for bookworm HOT 1
- GCC 12 error in saimetadatatest.c HOT 1
- checkenumlock.sh fails with SAI v1.11 HOT 9
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 sai.