<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>networks | UCSC OSPO</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/tag/networks/</link><atom:link href="https://deploy-preview-1007--ucsc-ospo.netlify.app/tag/networks/index.xml" rel="self" type="application/rss+xml"/><description>networks</description><generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><lastBuildDate>Wed, 05 Feb 2025 00:00:00 +0000</lastBuildDate><image><url>https://deploy-preview-1007--ucsc-ospo.netlify.app/media/logo_hub6795c39d7c5d58c9535d13299c9651f_74810_300x300_fit_lanczos_3.png</url><title>networks</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/tag/networks/</link></image><item><title>Seam: Kubernetes-Aware Programmable Networking &amp; Cloud Provisioning</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre25/ucsd/seam/</link><pubDate>Wed, 05 Feb 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre25/ucsd/seam/</guid><description>&lt;p>Seam is a project focused on building a Kubernetes-aware programmable networking and cloud provisioning system. It combines Python, Kubernetes, P4 programming, and SmartNICs to create a robust framework for managing cloud resources, optimizing networking, and provisioning virtual machines. Students will learn about cutting-edge technologies such as Kubernetes, Docker, P4 programming, SmartNICs, KubeVirt, Prometheus, Grafana, and Flask, while working on real-world applications in high-performance computing environments. This project will help students understand the intricacies of cloud resource management and programmable networking, providing them with valuable skills for future careers in software engineering, networking, and DevOps.&lt;/p>
&lt;p>The project involves creating a &lt;strong>Python library&lt;/strong> for provisioning Kubernetes resources, including virtual machines and networking, using tools such as &lt;strong>KubeVirt&lt;/strong> for VM provisioning and &lt;strong>ESnet SENSE&lt;/strong> for network configuration. The library will also integrate monitoring solutions with &lt;strong>Prometheus&lt;/strong> and &lt;strong>Grafana&lt;/strong> for real-time metrics collection and visualization. Students will develop &lt;strong>Flask-based dashboards&lt;/strong> for managing these resources, implement automated pipelines using &lt;strong>GitLab CI/CD&lt;/strong>, and explore full-stack web development, database management with &lt;strong>PostgreSQL&lt;/strong>, and API design.&lt;/p>
&lt;p>In addition, students will gain hands-on experience with &lt;strong>programmable networking&lt;/strong> using &lt;strong>P4&lt;/strong> and &lt;strong>SmartNICs&lt;/strong>, learning how to write P4 programs for dynamic routing, security, and network policy enforcement at the hardware level. The integration of &lt;strong>Kubernetes&lt;/strong>, &lt;strong>SmartNICs&lt;/strong>, and &lt;strong>P4 programming&lt;/strong> will allow for advanced optimizations and efficient management of high-performance cloud environments.&lt;/p>
&lt;p>Thus far, the framework has been developed to allow provisioning of resources within Kubernetes, integrating Prometheus and Grafana for monitoring, and providing an interface for users to manage cloud resources. We aim to extend this by incorporating advanced network policies and improving the web interface.&lt;/p>
&lt;h3 id="seam--kubernetes-resource-provisioning-and-management">Seam / Kubernetes Resource Provisioning and Management&lt;/h3>
&lt;p>The proposed work includes expanding the Python library to support comprehensive &lt;strong>Kubernetes resource provisioning&lt;/strong>, &lt;strong>network management&lt;/strong>, and &lt;strong>virtual machine provisioning&lt;/strong> using &lt;strong>KubeVirt&lt;/strong>. Students will enhance the current implementation to allow users to define &lt;strong>resource limits, CPU/GPU quotas, and network policies&lt;/strong>. They will also integrate with &lt;strong>ESnet SENSE&lt;/strong> to facilitate &lt;strong>L2 networking&lt;/strong>, and explore the use of &lt;strong>Prometheus&lt;/strong> and &lt;strong>Grafana&lt;/strong> for real-time performance monitoring and metrics collection.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Topics:&lt;/strong> Kubernetes, Python, Cloud Computing, Networking, Programmable Networking, Monitoring, CI/CD&lt;/li>
&lt;li>&lt;strong>Skills:&lt;/strong> Python, Kubernetes, P4 programming, KubeVirt, ESnet SENSE, Docker, GitLab CI/CD, Prometheus, Grafana, PostgreSQL, Flask&lt;/li>
&lt;li>&lt;strong>Difficulty:&lt;/strong> Hard&lt;/li>
&lt;li>&lt;strong>Size:&lt;/strong> Large (350 hours)&lt;/li>
&lt;li>&lt;strong>Mentors:&lt;/strong> &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/mohammad-firas-sada/">Mohammad Firas Sada&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/thomas-a.-defanti/">Thomas A. DeFanti&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/jeffrey-weekley/">Jeffrey Weekley&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/derek-weitzel/">Derek Weitzel&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/dmitry-mishin/">Dmitry Mishin&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="seam--full-stack-web-development-and-dashboard">Seam / Full-Stack Web Development and Dashboard&lt;/h3>
&lt;p>The proposed work includes building a &lt;strong>Flask-based web dashboard&lt;/strong> using &lt;strong>Bootstrap&lt;/strong> for UI, integrating it with the &lt;strong>Python library&lt;/strong> to enable users to easily provision resources, monitor network performance, and track resource usage in real-time. The dashboard will support &lt;strong>role-based access control (RBAC)&lt;/strong>, allowing for secure multi-user management. Students will also integrate &lt;strong>PostgreSQL&lt;/strong> for managing and storing configurations, logs, and performance metrics.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Topics:&lt;/strong> Full-Stack Web Development, Flask, Bootstrap, PostgreSQL, Kubernetes, Monitoring, DevOps&lt;/li>
&lt;li>&lt;strong>Skills:&lt;/strong> Web Development, Flask, Bootstrap, PostgreSQL, API Development, Kubernetes&lt;/li>
&lt;li>&lt;strong>Difficulty:&lt;/strong> Medium to Hard&lt;/li>
&lt;li>&lt;strong>Size:&lt;/strong> Large (350 hours)&lt;/li>
&lt;li>&lt;strong>Mentors:&lt;/strong> &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/mohammad-firas-sada/">Mohammad Firas Sada&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/thomas-a.-defanti/">Thomas A. DeFanti&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/jeffrey-weekley/">Jeffrey Weekley&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/derek-weitzel/">Derek Weitzel&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/dmitry-mishin/">Dmitry Mishin&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="seam--cicd-and-gitlab-integration">Seam / CI/CD and GitLab Integration&lt;/h3>
&lt;p>The proposed work includes setting up &lt;strong>GitLab CI/CD pipelines&lt;/strong> for automated &lt;strong>testing, deployment&lt;/strong>, and &lt;strong>maintenance&lt;/strong> of the Python library, Kubernetes resources, and web dashboard. Students will automate the deployment of &lt;strong>P4 programs&lt;/strong>, &lt;strong>Kubernetes deployments&lt;/strong>, and &lt;strong>networking configurations&lt;/strong>. They will also focus on &lt;strong>unit testing, integration testing&lt;/strong>, and the &lt;strong>automation of benchmarking experiments&lt;/strong> to ensure reproducibility of results.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Topics:&lt;/strong> CI/CD, GitLab, Python, Kubernetes, DevOps, Testing, Automation&lt;/li>
&lt;li>&lt;strong>Skills:&lt;/strong> GitLab CI/CD, Python, Kubernetes, Docker, Automation, Testing, Benchmarking&lt;/li>
&lt;li>&lt;strong>Difficulty:&lt;/strong> Medium to Hard&lt;/li>
&lt;li>&lt;strong>Size:&lt;/strong> Large (350 hours)&lt;/li>
&lt;li>&lt;strong>Mentors:&lt;/strong> &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/mohammad-firas-sada/">Mohammad Firas Sada&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/thomas-a.-defanti/">Thomas A. DeFanti&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/jeffrey-weekley/">Jeffrey Weekley&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/derek-weitzel/">Derek Weitzel&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/dmitry-mishin/">Dmitry Mishin&lt;/a>&lt;/li>
&lt;/ul>
&lt;h3 id="seam--networking--smartnic-programming">Seam / Networking &amp;amp; SmartNIC Programming&lt;/h3>
&lt;p>The proposed work includes writing &lt;strong>P4 programs&lt;/strong> to control network traffic flow, enforce network security policies, and optimize data transfer across the Kubernetes cluster. Students will gain experience with &lt;strong>SmartNICs&lt;/strong> (Xilinx Alveo U55C, SN1000, NVIDIA Bluefield 2) and &lt;strong>Tofino switches&lt;/strong>, using P4 to write &lt;strong>network policies&lt;/strong> and integrate with the &lt;strong>Kubernetes network layer&lt;/strong> (Multus, Calico). Students will also explore &lt;strong>gRPC APIs&lt;/strong> for dynamically adjusting network policies and provisioning virtual network interfaces in real time.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Topics:&lt;/strong> Networking, P4 Programming, SmartNICs, Kubernetes Networking, Cloud Computing&lt;/li>
&lt;li>&lt;strong>Skills:&lt;/strong> P4, Networking, SmartNICs, Kubernetes Networking, Multus, Calico, gRPC&lt;/li>
&lt;li>&lt;strong>Difficulty:&lt;/strong> Hard&lt;/li>
&lt;li>&lt;strong>Size:&lt;/strong> Large (350 hours)&lt;/li>
&lt;li>&lt;strong>Mentors:&lt;/strong> &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/mohammad-firas-sada/">Mohammad Firas Sada&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/thomas-a.-defanti/">Thomas A. DeFanti&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/jeffrey-weekley/">Jeffrey Weekley&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/derek-weitzel/">Derek Weitzel&lt;/a>, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/dmitry-mishin/">Dmitry Mishin&lt;/a>&lt;/li>
&lt;/ul></description></item></channel></rss>