Outcomes from the GWTester NSM implementation Victor Morales

  • Slides: 20
Download presentation

Outcomes from the GW-Tester NSM implementation Victor Morales v. morales@samsung. com

Outcomes from the GW-Tester NSM implementation Victor Morales v. morales@samsung. com

GW Tester https: //github. com/cncf/cnf-testbed/tree/master/examples/use_case/gogtp-k 8 s https: //github. com/electrocucaracha/gw-tester/

GW Tester https: //github. com/cncf/cnf-testbed/tree/master/examples/use_case/gogtp-k 8 s https: //github. com/electrocucaracha/gw-tester/

NSM maps the concept of a service mesh to L 2/L 3 payloads. Releases:

NSM maps the concept of a service mesh to L 2/L 3 payloads. Releases: • Aug 9, 2019 - 0. 1. 0 (Andromeda) Per-Pod Network Services within a single cluster support • Nov 17, 2019 - 0. 2. 0 (Borealis) Introduces interdomain support

Implementation alternatives

Implementation alternatives

4 G Network Topology example https: //github. com/networkservicemesh /examples NSM Endpoint PFCP Protocol NSM

4 G Network Topology example https: //github. com/networkservicemesh /examples NSM Endpoint PFCP Protocol NSM Client

1. Control and User Plane Separation https: //github. com/wmnsk/go-gtp/issues/70#issuecomment-688414207

1. Control and User Plane Separation https: //github. com/wmnsk/go-gtp/issues/70#issuecomment-688414207

2. Multiple services per one NSM endpoint https: //github. com/networkservicemesh/issues/2186

2. Multiple services per one NSM endpoint https: //github. com/networkservicemesh/issues/2186

3. Multiple NSM sidecars MME sidecar-s 1 c sgw e. NB sidecar-euu enb S-GW

3. Multiple NSM sidecars MME sidecar-s 1 c sgw e. NB sidecar-euu enb S-GW sidecar-s 1 u sidecar-s 11 Client externalclient sgw P-GW sidecar-s 5 u HTTP Server sidecar-s 5 c http-server sidecar-sgi pgw https: //github. com/electrocucaracha/gw-tester/blob/master/k 8 s/pgw_nsm. yml Container Pod

Implementation details

Implementation details

How NSM endpoint selection works? https: //github. com/networkservicemesh/blob/v 0. 2. 0/sdk/README. md#client-list NIC name

How NSM endpoint selection works? https: //github. com/networkservicemesh/blob/v 0. 2. 0/sdk/README. md#client-list NIC name

NSE Routing implementation https: //github. com/electrocucaracha/gw-tester/blob/master/k 8 s/nsm/nse/cmd/main. go

NSE Routing implementation https: //github. com/electrocucaracha/gw-tester/blob/master/k 8 s/nsm/nse/cmd/main. go

Init script Improvised DNS NICs on demand https: //github. com/electrocucaracha/gw-tester/blob/master/k 8 s/mme_nsm. yml

Init script Improvised DNS NICs on demand https: //github. com/electrocucaracha/gw-tester/blob/master/k 8 s/mme_nsm. yml

Conclusion • Networks are defined through Network. Attachment. Definition or Cluster. Network/Tenant. Network resources

Conclusion • Networks are defined through Network. Attachment. Definition or Cluster. Network/Tenant. Network resources • Supports Static and Dynamic IP addresses assignment. • Creates network interfaces during the Pod Creation • Allows to specify network interface names. • Easy to retrieve IP addresses[1]. • Isolated networks [1] https: //github. com/k 8 snetworkplumbingwg/network-attachmentdefinition-client/blob/release-1. 16/pkg/utils/net-attach-def. go#L 63 CNI Multiplexers • Networks are defined through Network. Service resources • Only provides Dynamic IP addresses assignment • Network Interfaces are created on demand • Naming network interfaces is restricted only to clients[2]. • SDK supports NSC Routing. [2]https: //github. com/networkservicemesh/blo b/v 0. 2. 0/sdk/endpoint/connection. go#L 82 -L 88 Service Meshes

How to get involved Weekly CNF Conformance/Testbed developer meetings: Thursdays at 14: 15 -

How to get involved Weekly CNF Conformance/Testbed developer meetings: Thursdays at 14: 15 - 15: 00 UTC Meeting details: https: //github. com/cncf/cnf-conformance Monthly CNCF Telecom User Group meetings: 1 st Mondays (alternating start times, 15: 00 UTC or 11: 00 UTC) Meeting details: https: //github. com/cncf/telecom-user-group

Q&A https: //github. com/electrocucaracha/gw-tester/

Q&A https: //github. com/electrocucaracha/gw-tester/

Backup

Backup

Does NSM supports sidecar injection?

Does NSM supports sidecar injection?

NSM Endpoints based on Annotations?

NSM Endpoints based on Annotations?

NSM provides many sidecar examples • ICMP Responder NSE: https: //github. com/networkservicemesh/blob/v 0. 2.

NSM provides many sidecar examples • ICMP Responder NSE: https: //github. com/networkservicemesh/blob/v 0. 2. 0/test/applications/cmd/icmp-respondernse/main. go • VPP Agent ICMP Responder NSE: https: //github. com/networkservicemesh/blob/v 0. 2. 0/test/applications/cmd/vppagent-icmpresponder-nse/main. go • VPP Agent Firewall NSE: https: //github. com/networkservicemesh/blob/v 0. 2. 0/test/applications/cmd/vppagent-icmpresponder-nse/main. go • 4 G Network NSE: https: //github. com/networkservicemesh/examples/blob/v 0. 2. 0/examples/4 g-network/sidecarnse/cmd/main. go • VPP Bridge Domain: https: //github. com/networkservicemesh/examples/tree/v 0. 2. 0/examples/bridge-domain • Envoy Interceptor: https: //github. com/networkservicemesh/examples/blob/v 0. 2. 0/examples/envoy_interceptor/envoynse/cmd/main. go • HTTP reverse proxy: https: //github. com/networkservicemesh/examples/blob/v 0. 2. 0/examples/proxy/sidecarnse/cmd/main. go • Secure Intranet: https: //github. com/networkservicemesh/examples/blob/v 0. 2. 0/examples/secure-intranet/vppagentendpoint/cmd/main. go