go-gtp
go-gtp copied to clipboard
Test end-to-end ping/curl following attach/modify/delete
To prevent #68 in future we should provide convenience script to use the gw-tester code and test end-to-end connectivity in CI or by developer.
Agreed. Since I think the works by CNF Testbed team helps it, I'll try that after their use-case is merged into CNF Testbed repo.
Comment on #81 by @krsna1729
If we can have a docker compose file that would bring up the examples (not sure how with gw-tester as they have their own go.mod) and test e2e it would really improve the confidence. Also github actions supports docker-compose. we could upload the packet capture as an artifact too. #70
Hey @wmnsk, I've created a project to compare different CNI multiplexer technologies, like Multus and DANM. Initially I based the development of this using the CNF Testbed implementation but at the end I decided to use a different approach to cover End to End provisioning process.
As you can see, I have included two deployment options in this project:
-
Docker: This option uses docker-compose to create networks and services required for connecting client with the HTTP server. This project uses Vagrant to provision a VM in VirtualBox or Libvirt. Once you get the source code and installs vagrant you can run the following instruction:
vagrant up
-
Kubernetes: This option uses KinD tool for deploying a K8s cluster and their required flannel networks . It has to CNI options Multus and DANM.
DEPLOY=k8s CNI=danm vagrant up
I started working on the Network Service Mesh implementation but I noticed that I need to separate Control and User planes. They have dummy 4G example here. But when I split P-GW Control from Data plane instructions I faced with this reference in the handleCreateSessionRequest function. I'm not a networking expert but AFAIU I need to communicate those services via PFCP isn't it? Do you have an example on how to achieve this using your go implementation?
BTW: Great work!!!
Hi @electrocucaracha,
Thank you for working on making it cloud-native. It seems it will help me a lot 😃 As you see, the spec-compliant implementation of CUPS(Control and User Plane Separation) requires the PFCP protocol that is defined in TS 29.244. Unfortunately, however, our go-pfcp project is still in the early stage of development; it does not provide any networking features nor functional examples at this moment, and I cannot share any planning for the future of that project.
FYI #174 partially resolved this.