@@ -83,6 +83,10 @@ metadata:
8383 " cni.projectcalico.org/vppExtraMemifPorts " : " tcp:4444-20000,udp:4444-20000"
8484` ` ` `
8585
86+ This meaning that ports `4444` to `20000` in both UDP and TCP will
87+ go to the memif interface while the rest of the traffic will flow
88+ normally to the tuntap.
89+
8690This is called PBL (Port based balancer).
8791
8892A pod supports having both memif and [vcl](vcl.md) interfaces at the same time
@@ -101,57 +105,6 @@ VPP api has a particular syntax for abstract sockets: using the keyword
101105For example : ` abstract:memif1,netns_name=/var/run/netns/cni-75e26661-4119-90a4-b9d2-0b00489f76f3` .
102106This syntax appears in vppctl.
103107
104- # # Troubleshooting memif interface creation
105-
106- To check abstract socket creation in linux, you can run the following command
107- on the pod using memif :
108-
109- ` ` ` ` bash
110- lsof -U | grep memif
111- vpp_main 420448 root 41u unix 0xffdd 0t0 30888503 @memif1 type=SEQPACKET
112- ````
113-
114- To check it in vpp cli:
115-
116- ```` bash
117- _______ _ _ _____ ___
118- __/ __/ _ \ (_)__ | | / / _ \/ _ \
119- _/ _// // / / / _ \ | | / / ___/ ___/
120- /_/ /____(_)_/\_ __/ | ___/_/ /_/
121-
122- vpp# sh memif
123- sockets
124- id listener filename
125- 0 no /run/vpp/memif.sock
126- 101 yes (1) abstract:memif1,netns_name=/var/run/netns/cni-75e61-4119-0b004
127-
128- interface memif1013904223/0
129- socket-id 1013904223 id 0 mode ethernet
130- flags admin-up
131- listener-fd 41 conn-fd 0
132- num-s2m-rings 0 num-m2s-rings 0 buffer-size 0 num-regions 0
133- ````
134-
135- To check memif interface creation:
136-
137- ```` bash
138- vpp# sh int addr
139- ...
140- ...
141- memif1013904223/0 (up):
142- unnumbered, use loop4
143- L3 11.0.0.195/32 ip4 table-id 1649346937 fib-idx 12
144- L3 fd20::58fd:b191:5c13:9cc2/128 ip6 table-id -1526094716 fib-idx 16
145- ...
146- ````
147-
148- In multinet case, this interface has a unique address and it attaches to a
149- dummy interface.
150- However, in PBL, memif interface is attached to the same interface as tun/tap.
151-
152- To check dummy interface created in multinet/memif, connect to the memif pod
153- then type ` ip address ` to find memif dummy interfaces.
154-
155108# # Testing memif feature
156109
157110Testing depends on the way memif interface is consumed. We present three
0 commit comments