<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:DengXian;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:DengXian;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        text-align:justify;
        text-justify:inter-ideograph;
        font-size:10.5pt;
        font-family:DengXian;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin:0cm;
        margin-bottom:.0001pt;
        text-align:justify;
        text-justify:inter-ideograph;
        text-indent:21.0pt;
        font-size:10.5pt;
        font-family:DengXian;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:DengXian;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
/* Page Definitions */
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:832719609;
        mso-list-type:hybrid;
        mso-list-template-ids:-884695790 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F06C;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:21.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F06E;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:42.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F075;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:63.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F06C;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:84.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F06E;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:105.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F075;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:126.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F06C;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:147.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F06E;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:168.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F075;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:189.0pt;
        text-indent:-21.0pt;
        font-family:Wingdings;}
@list l1
        {mso-list-id:1778213625;
        mso-list-type:hybrid;
        mso-list-template-ids:1668996272 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l1:level1
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:21.0pt;
        text-indent:-21.0pt;}
@list l1:level2
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%2\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:42.0pt;
        text-indent:-21.0pt;}
@list l1:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:63.0pt;
        text-indent:-21.0pt;}
@list l1:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:84.0pt;
        text-indent:-21.0pt;}
@list l1:level5
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%5\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:105.0pt;
        text-indent:-21.0pt;}
@list l1:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:126.0pt;
        text-indent:-21.0pt;}
@list l1:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:147.0pt;
        text-indent:-21.0pt;}
@list l1:level8
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%8\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:168.0pt;
        text-indent:-21.0pt;}
@list l1:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:189.0pt;
        text-indent:-21.0pt;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="ZH-CN" link="#0563C1" vlink="#954F72" style="text-justify-trim:punctuation">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hello everyone:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I am Changye Wu, the project leader of the gazelle project in the openEuler community. I am delighted to introduce the gazelle project to you all.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://gitee.com/openeuler/gazelle">gazelle</a> is a high-performance user-space protocol stack based on DPDK. It has been open-sourced in the openEuler community and released with the openEuler LTS version.
 Thanks to DPDK's high-performance packet processing and gazelle's efforts in scheduling, threadization of the protocol stack, etc., gazelle has strong competitiveness in terms of latency, throughput, etc. It can achieve a performance improvement of 20%+ for
 MySQL and 100% for Redis. Currently, it is widely used in scenarios such as finance and storage.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">We have noticed that the DPDK community encourages everyone to
<a href="https://www.dpdk.org/ecosystem/">build open-source projects based on DPDK</a>. We also hope to interact with the DPDK community and leverage the power of the community to make gazelle better. Therefore, we hereby apply to join the DPDK open-source
 project ecosystem. We hope to strengthen our connection with the community, grow together with the community, and contribute to the prosperity of the DPDK community ecosystem. We look forward to your reply.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Below, I will provide a detailed introduction to the gazelle project, covering aspects such as its technical architecture and effects, project operation status, DPDK support, internal and external collaborations, etc.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-21.0pt;mso-list:l0 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:Wingdings"><span style="mso-list:Ignore">l<span style="font:7.0pt "Times New Roman""> 
</span></span></span><![endif]><span lang="EN-US">Gazelle Software Architecture:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><img border="0" width="555" height="436" style="width:5.7847in;height:4.5416in" id="_x56fe__x7247__x0020_1" src="cid:image001.jpg@01DA9BBD.ECBFADC0"></span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Technical Features of gazelle:<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US">High Performance: Zero-copy packet transmission and reception implemented based on DPDK.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US">Plug-and-Play: Posix compatible, LD_PRELOAD hijacking, no need for business adaptation.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US">Generality: Supports various network models such as run-to-completion, run-to-wakeup, accelerating applications like MySQL, Redis, etc.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-21.0pt;mso-list:l0 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:Wingdings"><span style="mso-list:Ignore">l<span style="font:7.0pt "Times New Roman""> 
</span></span></span><![endif]><span lang="EN-US">Project Operation Status:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">gazelle was open-sourced in the openEuler community in 2022. Over the course of two years, it has garnered contributions from over 35 developers from Kylin Software, China Mobile, Huawei, and others. There have been over
 1000 PR submissions. It has been released in over 10 community versions including openEuler 20.03 LTS, 22.03 LTS, 24.03 LTS, etc.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-21.0pt;mso-list:l0 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:Wingdings"><span style="mso-list:Ignore">l<span style="font:7.0pt "Times New Roman""> 
</span></span></span><![endif]><span lang="EN-US">DPDK Version Support:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">gazelle supports multiple versions of DPDK including 19.11, 21.11, 23.11, etc.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-21.0pt;mso-list:l0 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:Wingdings"><span style="mso-list:Ignore">l<span style="font:7.0pt "Times New Roman""> 
</span></span></span><![endif]><span lang="EN-US">Collaborations:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">gazelle has collaborated with enterprises such as China Mobile, Shanghai Stock Exchange, etc. It has jointly conducted
<a href="https://www.openeuler.org/zh/interaction/summit-list/summit2023/#live">community conference presentations</a>, released
<a href="https://www.openeuler.org/zh/news/openEuler/20240122-whitepape/20240122-whitepape.html">
technical whitepapers</a>, and more with its partners.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><img border="0" width="627" height="292" style="width:6.5277in;height:3.0416in" id="_x56fe__x7247__x0020_13" src="cid:image003.jpg@01DA9BBD.ECBFADC0"><img border="0" width="591" height="291" style="width:6.1527in;height:3.0347in" id="_x56fe__x7247__x0020_2" src="cid:image005.jpg@01DA9BBD.ECBFADC0"></span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-21.0pt;mso-list:l0 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:Wingdings"><span style="mso-list:Ignore">l<span style="font:7.0pt "Times New Roman""> 
</span></span></span><![endif]><span lang="EN-US">Future Evolution:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Currently, gazelle still faces challenges in scenarios such as multi-processes and containers. We are researching DPDK features like
<a href="https://doc.dpdk.org/guides/prog_guide/multi_proc_support.html">Multi-process</a>,
<a href="https://doc.dpdk.org/guides/howto/flow_bifurcation.html">flow_bifurcation</a>,
<a href="https://doc.dpdk.org/guides/howto/virtio_user_for_container_networking.html">
virtio_user</a>, etc. We will further enhance gazelle based on these features.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">For more detailed information about gazelle, you can visit our project repository:
<a href="https://gitee.com/openeuler/gazelle">https://gitee.com/openeuler/gazelle</a> . Feel free to contact us; we welcome any inquiries.<o:p></o:p></span></p>
</div>
</body>
</html>