Google Summer of Code 2020 and Layer5 Community

      What is Layer5 Community?
      While small, the Layer5 community represents the largest collection of service mesh projects and their maintainers in the world. We build projects to provide learning environments, deployment and operational best practices, performance benchmarks, create documentation, share networking opportunities, and more. Our shared commitment to the open source spirit pushes Layer5 projects forward. New members are always welcome.
      Is it Open Source?
      Layer5 projects are open source software. Anyone can download, use, work on, and share it with others. It's built on principles like collaboration, globalism, and innovation. Layer5 projects are distributed under the terms of Apache v2.
      Google Summer of Code Participation?
      The key component of these projects is our Community. This community, which you will join as an participant in Google Summer of Code, is improving the world of diverse cloud native systems. Your contributions will affect people you've never met. The Layer5 community includes software engineers, researchers, students, artists, system administrators, operators and web designers -- all of whom will be happy to help you get started.
      We believe that all contributors should expect and be part of a safe and friendly environment for constructive contribution. We can more effectively and successfully compare and challenge different ideas to find the best solutions for advancement, while building the size, diversity, and strength of our community.
2020 Program Timeline
  • - January 14 - Organization applications open
  • - February 20 - Accepted GSoC Organizations announced
  • - March 16-March 31 - Students submit their proposals
  • - April 27 - Accepted students are announced
  • - April 27-May 18 - Community bonding period with orgs
  • - May 18-Aug 17 - Students code the summer away
  • - August 25 - Successful student projects are announced
Statistics
  • - In 15 years 15,926 students from 109 countries have been accepted into GSoC
  • - Countries with the most students: India (4,065), United States (2,552), and Germany (870 )
  • - Approximately 36+ million lines of code have been produced
Project Ideas
      SMI Conformance Testing
      Description: Ensure that a service mesh is properly configured and that its behavior conforms to official SMI specifications. Conformance consists of both capabilities and compliance status as outlined in the design specification.
      Distributed Load Testing of Service Meshes
      Description: Many performance benchmarks are limited to single instance load generation (single pod load generator). This limits the amount of traffic that can be generated to output of the single machine that the benchmark tool runs on in or out of a cluster. Overcoming this limitation would allow for more flexible and robust testing. Distributed load testing in parallel poses a challenge when merging results without losing the precision we need to gain insight into the high tail percentiles. Use Meshery’s interface for supporting different load generators (a point of extensibility) to place support for Vegeta. Workloads running on service meshes are hit in various ways and generally not from the same source. Use of a distributed load generator will aid in the testing of service mesh behavior.

Recommended Skills:

Golang, Kubernetes

Mentors:

Lee Calcote (@lcalcote), Sagar Utekar (@named_uttu)

Prateek Sahu (@PrateekSahu22), Kanishkar J (@_kanishkarj_)

Mentee:

Naveen Jain (@nveenjain)

Kush Trivedi (@kushthedude)

Issue:

https://github.com/servicemeshinterface/smi-spec/issues/70
https://github.com/envoyproxy/envoy-perf/issues/72