mirror of
https://github.com/vacp2p/research.logos.co.git
synced 2026-04-03 03:01:03 -04:00
1 line
19 KiB
JavaScript
1 line
19 KiB
JavaScript
"use strict";(self.webpackChunkresearch_logos_co=self.webpackChunkresearch_logos_co||[]).push([[4975],{4053:e=>{e.exports=JSON.parse('{"permalink":"/rlog/gsub-idontwant-perf-eval","source":"@site/rlog/2024-10-28-gsub-idontwant-perf-eval.mdx","title":"Libp2p GossipSub IDONTWANT Message Performance Impact","description":"This post provides quick insights into the IDONTWANT message performance and highlights minor tweaks that can further contribute to performance gains.","date":"2024-10-28T12:00:00.000Z","tags":[],"readingTime":3.39,"hasTruncateMarker":true,"authors":[{"name":"Umar Farooq","github":"ufarooqstatus","key":"farooq","page":null}],"frontMatter":{"title":"Libp2p GossipSub IDONTWANT Message Performance Impact","date":"2024-10-28T12:00:00.000Z","authors":"farooq","published":true,"slug":"gsub-idontwant-perf-eval","categories":"research","discuss":"https://forum.research.logos.co/t/libp2p-gossipsub-idontwant-message-performance-impact/374","toc_min_heading_level":2,"toc_max_heading_level":5},"unlisted":false,"prevItem":{"title":"Large Message Handling in GossipSub: Potential Improvements","permalink":"/rlog/gsub-largemsg-improvements"},"nextItem":{"title":"Vac 101: Transforming an Interactive Protocol to a Noninteractive Argument","permalink":"/rlog/vac101-fiat-shamir"}}')},28453:(e,s,n)=>{n.d(s,{R:()=>r,x:()=>l});var i=n(96540);const a={},t=i.createContext(a);function r(e){const s=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function l(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:r(e.components),i.createElement(t.Provider,{value:s},e.children)}},31679:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/BW_700ms-54baea410c768c9ccbe8313c7ab3f992.png"},40576:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/BW_1500ms-d3b9c0f60549d0c6fabe47b548024f41.png"},47451:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/Lat_1500ms-42ca1f7a5f110002ed960be4fb811457.png"},56417:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/BW_1000ms-340307cdf866c54fd52becb4df316fdf.png"},62153:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/Lat_1000ms-6a2af695a929c61c40d169a7d390606d.png"},82548:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/IWANT_Requests-a19c04fc0a361e98075caa8e7cb1885a.png"},93879:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/Lat_700ms-8fc202f87796b38baae0b623fcea4b57.png"},95905:(e,s,n)=>{n.r(s),n.d(s,{assets:()=>h,contentTitle:()=>l,default:()=>m,frontMatter:()=>r,metadata:()=>i,toc:()=>c});var i=n(4053),a=n(74848),t=n(28453);const r={title:"Libp2p GossipSub IDONTWANT Message Performance Impact",date:new Date("2024-10-28T12:00:00.000Z"),authors:"farooq",published:!0,slug:"gsub-idontwant-perf-eval",categories:"research",discuss:"https://forum.research.logos.co/t/libp2p-gossipsub-idontwant-message-performance-impact/374",toc_min_heading_level:2,toc_max_heading_level:5},l=void 0,h={authorsImageUrls:[void 0]},c=[{value:"Overview",id:"overview",level:2},{value:"Experiments",id:"experiments",level:2},{value:"Findings",id:"findings",level:2},{value:"References",id:"references",level:2}];function d(e){const s={a:"a",annotation:"annotation",h2:"h2",img:"img",li:"li",math:"math",mi:"mi",mrow:"mrow",msub:"msub",ol:"ol",p:"p",semantics:"semantics",span:"span",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,t.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(s.p,{children:"This post provides quick insights into the IDONTWANT message performance and highlights minor tweaks that can further contribute to performance gains."}),"\n","\n",(0,a.jsx)(s.h2,{id:"overview",children:"Overview"}),"\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.a,{href:"https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.2.md?plain=1#L52",children:"IDONTWANT"})," messages are introduced to curtail redundant transmissions without compromising resilience.\r\nCutting down on duplicates can potentially render two significant advantages:"]}),"\n",(0,a.jsxs)(s.ol,{children:["\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsx)(s.p,{children:"Reducing bandwidth requirements"}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsx)(s.p,{children:"Reducing message dissemination time (latency)"}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.p,{children:"For IDONTWANTs to be effective, they must be received and processed by the sender before the sender starts relaying the respective message."}),"\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.a,{href:"https://ethresear.ch/t/number-duplicate-messages-in-ethereums-gossipsub-network/19921#arrival-time-of-duplicates-9",children:"Duplicates investigation"})," reveals that\r\nthe average time difference between the first message arrival and the first duplicate arrival is higher than the average round trip time in Ethereum's GossipSub network."]}),"\n",(0,a.jsx)(s.p,{children:"This allows for timely IDONTWANT reception and canceling of many duplicate transmissions,\r\nshowing a potential for a significant drop in bandwidth utilization.\r\nOn the other hand, lowering message dissemination time is only possible by minimizing queuing delays at busy peers."}),"\n",(0,a.jsx)(s.h2,{id:"experiments",children:"Experiments"}),"\n",(0,a.jsx)(s.p,{children:"We conducted a series of experiments with different arrangements (changing heartbeat_interval and message size)\r\nto precisely identify the impact of IDONTWANT messages on bandwidth utilization and message dissemination time."}),"\n",(0,a.jsxs)(s.p,{children:["The experiments are performed on nim-libp2p using the ",(0,a.jsx)(s.a,{href:"https://github.com/vacp2p/dst-gossipsub-test-node/pull/4",children:"shadow simulator"}),".\r\nThe peer bandwidth and link latency are uniformly set between 50-150 Mbps and 40-130 milliseconds in five stages."]}),"\n",(0,a.jsx)(s.p,{children:"In all experiments, ten messages are transmitted to the network, i.e.,\r\nten peers (publishers) are selected as the message transmitters.\r\nEvery publisher transmits exactly one message,\r\nand inter-packet spacing (delay) is set to four seconds for each published message.\r\nFor a fair assessment, we ensure that the publishers are uniformly selected from each bandwidth class."}),"\n",(0,a.jsxs)(s.p,{children:["At the start of each experiment, two additional messages are transmitted to increase the TCP ",(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsx)(s.mrow,{children:(0,a.jsxs)(s.msub,{children:[(0,a.jsx)(s.mi,{children:"C"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mi,{children:"w"}),(0,a.jsx)(s.mi,{children:"n"}),(0,a.jsx)(s.mi,{children:"d"})]})]})}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"C_{wnd}"})]})})}),(0,a.jsx)(s.span,{className:"katex-html","aria-hidden":"true",children:(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.8333em",verticalAlign:"-0.15em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mord mathnormal",style:{marginRight:"0.07153em"},children:"C"}),(0,a.jsx)(s.span,{className:"msupsub",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.3361em"},children:(0,a.jsxs)(s.span,{style:{top:"-2.55em",marginLeft:"-0.0715em",marginRight:"0.05em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"2.7em"}}),(0,a.jsx)(s.span,{className:"sizing reset-size6 size3 mtight",children:(0,a.jsxs)(s.span,{className:"mord mtight",children:[(0,a.jsx)(s.span,{className:"mord mathnormal mtight",style:{marginRight:"0.02691em"},children:"w"}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",children:"n"}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",children:"d"})]})})]})}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200b"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.15em"},children:(0,a.jsx)(s.span,{})})})]})})]})]})})]}),".\r\nThese messages are not included in latency computations."]}),"\n",(0,a.jsx)(s.p,{children:"The simulation details are presented in the table below."}),"\n",(0,a.jsxs)(s.table,{children:[(0,a.jsx)(s.thead,{children:(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.th,{children:(0,a.jsx)(s.strong,{children:"Parameter"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.strong,{children:"Value"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.strong,{children:"Parameter"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.strong,{children:"Value"})})]})}),(0,a.jsxs)(s.tbody,{children:[(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.td,{children:"Peers"}),(0,a.jsx)(s.td,{children:"2000"}),(0,a.jsx)(s.td,{children:"Publishers"}),(0,a.jsx)(s.td,{children:"10"})]}),(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.td,{children:"Peer bandwidth"}),(0,a.jsx)(s.td,{children:"50-150 Mbps"}),(0,a.jsx)(s.td,{children:"Link latency"}),(0,a.jsx)(s.td,{children:"40-130 ms"})]}),(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.td,{children:"Message size"}),(0,a.jsx)(s.td,{children:"1KB, 50KB, 500KB, 1MB"}),(0,a.jsx)(s.td,{children:(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsx)(s.mrow,{children:(0,a.jsx)(s.mi,{children:"D"})}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"D"})]})})}),(0,a.jsx)(s.span,{className:"katex-html","aria-hidden":"true",children:(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.6833em"}}),(0,a.jsx)(s.span,{className:"mord mathnormal",style:{marginRight:"0.02778em"},children:"D"})]})})]})}),(0,a.jsx)(s.td,{children:"8"})]}),(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.td,{children:"Heartbeat interval"}),(0,a.jsx)(s.td,{children:"700ms, 1000ms, 1500ms"}),(0,a.jsx)(s.td,{children:(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsx)(s.mrow,{children:(0,a.jsxs)(s.msub,{children:[(0,a.jsx)(s.mi,{children:"D"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mi,{children:"l"}),(0,a.jsx)(s.mi,{children:"o"}),(0,a.jsx)(s.mi,{children:"w"})]})]})}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"D_{low}"})]})})}),(0,a.jsx)(s.span,{className:"katex-html","aria-hidden":"true",children:(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.8333em",verticalAlign:"-0.15em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mord mathnormal",style:{marginRight:"0.02778em"},children:"D"}),(0,a.jsx)(s.span,{className:"msupsub",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.3361em"},children:(0,a.jsxs)(s.span,{style:{top:"-2.55em",marginLeft:"-0.0278em",marginRight:"0.05em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"2.7em"}}),(0,a.jsx)(s.span,{className:"sizing reset-size6 size3 mtight",children:(0,a.jsxs)(s.span,{className:"mord mtight",children:[(0,a.jsx)(s.span,{className:"mord mathnormal mtight",style:{marginRight:"0.01968em"},children:"l"}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",children:"o"}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",style:{marginRight:"0.02691em"},children:"w"})]})})]})}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200b"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.15em"},children:(0,a.jsx)(s.span,{})})})]})})]})]})})]})}),(0,a.jsx)(s.td,{children:"6"})]}),(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.td,{children:"FloodPublish"}),(0,a.jsx)(s.td,{children:"False"}),(0,a.jsx)(s.td,{children:(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsx)(s.mrow,{children:(0,a.jsxs)(s.msub,{children:[(0,a.jsx)(s.mi,{children:"D"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mi,{children:"h"}),(0,a.jsx)(s.mi,{children:"i"}),(0,a.jsx)(s.mi,{children:"g"}),(0,a.jsx)(s.mi,{children:"h"})]})]})}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"D_{high}"})]})})}),(0,a.jsx)(s.span,{className:"katex-html","aria-hidden":"true",children:(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.9694em",verticalAlign:"-0.2861em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mord mathnormal",style:{marginRight:"0.02778em"},children:"D"}),(0,a.jsx)(s.span,{className:"msupsub",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.3361em"},children:(0,a.jsxs)(s.span,{style:{top:"-2.55em",marginLeft:"-0.0278em",marginRight:"0.05em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"2.7em"}}),(0,a.jsx)(s.span,{className:"sizing reset-size6 size3 mtight",children:(0,a.jsxs)(s.span,{className:"mord mtight",children:[(0,a.jsx)(s.span,{className:"mord mathnormal mtight",children:"hi"}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",style:{marginRight:"0.03588em"},children:"g"}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",children:"h"})]})})]})}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200b"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.2861em"},children:(0,a.jsx)(s.span,{})})})]})})]})]})})]})}),(0,a.jsx)(s.td,{children:"12"})]}),(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.td,{children:"Gossip factor"}),(0,a.jsx)(s.td,{children:"0.05"}),(0,a.jsx)(s.td,{children:"Muxer"}),(0,a.jsx)(s.td,{children:"yamux"})]})]})]}),"\n",(0,a.jsx)(s.h2,{id:"findings",children:"Findings"}),"\n",(0,a.jsx)(s.p,{children:"We use bandwidth utilization and latency as evaluation metrics.\r\nBandwidth utilization represents total network-wide traffic (including gossip and other control messages).\r\nLatency refers to network-wide message dissemination time.\r\nThe total number of IWANT requests and the number of message transmissions saved by IDONTWANT messages are also presented for detailed insights."}),"\n",(0,a.jsx)(s.p,{children:"Experiments reveal that IDONTWANT messages yield a noticeable (up to 21%) drop in bandwidth utilization.\r\nA higher drop is seen with a higher heartbeat interval.\r\nInterestingly, a relatively low bandwidth reduction (12-20%) is seen for 1MB messages,\r\ncompared to 500KB messages (18-21%)."}),"\n",(0,a.jsx)(s.table,{children:(0,a.jsx)(s.thead,{children:(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 1",src:n(31679).A+"",width:"1982",height:"1157"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 2",src:n(56417).A+"",width:"1982",height:"1157"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 3",src:n(40576).A+"",width:"1982",height:"1157"})})]})})}),"\n",(0,a.jsxs)(s.p,{children:["This is because downloading a large message may consume several hundred milliseconds.\r\nDuring this time, a receiver will likely\r\n",(0,a.jsx)(s.a,{href:"https://forum.research.logos.co/t/iwant-messages-may-have-negative-impact-on-message-dissemination-latency-for-large-messages/366",children:"generate multiple IWANT requests"}),"\r\nfor the same message, increasing bandwidth utilization."]}),"\n",(0,a.jsxs)(s.p,{children:["Moreover, a peer can generate\r\n",(0,a.jsx)(s.a,{href:"https://forum.research.logos.co/t/large-message-handling-idontwant-imreceiving/281",children:"IDONTWANTs only after it has finished downloading the message"}),".\r\nA longer download time will result in simultaneous reception of the same message from other mesh members."]}),"\n",(0,a.jsx)(s.table,{children:(0,a.jsx)(s.thead,{children:(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 1",src:n(82548).A+"",width:"1982",height:"1157"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 2",src:n(99291).A+"",width:"1982",height:"1157"})})]})})}),"\n",(0,a.jsx)(s.p,{children:"These IWANT requests mainly overwhelm early message receivers,\r\nwhich can negatively impact message dissemination time on some occasions.\r\nTherefore, a similar message dissemination time is seen with and without IDONTWANT messages."}),"\n",(0,a.jsx)(s.table,{children:(0,a.jsx)(s.thead,{children:(0,a.jsxs)(s.tr,{children:[(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 1",src:n(93879).A+"",width:"2052",height:"1155"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 2",src:n(62153).A+"",width:"2052",height:"1155"})}),(0,a.jsx)(s.th,{children:(0,a.jsx)(s.img,{alt:"Image 3",src:n(47451).A+"",width:"2052",height:"1155"})})]})})}),"\n",(0,a.jsxs)(s.p,{children:["Similar results are seen on our large-scale deployment runs\r\n(",(0,a.jsx)(s.a,{href:"https://zealous-polka-dc7.notion.site/Nim-libp2p-v1-5-0-regression-testing-August-2024-25edba733c704ccaa411919555c5db1a",children:"running Waku nodes in Kubernetes"}),")."]}),"\n",(0,a.jsxs)(s.p,{children:["Please feel free to join the discussion and leave feedback regarding this post in the\r\n",(0,a.jsx)(s.a,{href:"https://forum.research.logos.co/t/libp2p-gossipsub-idontwant-message-performance-impact/374",children:"VAC forum"}),"."]}),"\n",(0,a.jsx)(s.h2,{id:"references",children:"References"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.2.md",children:"GossipSub Specifications v1.2"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://github.com/libp2p/specs/pull/548",children:"GossipSub v1.2: IDONTWANT Control Message"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://ethresear.ch/t/number-duplicate-messages-in-ethereums-gossipsub-network/19921",children:"Number Duplicate Messages in Ethereum\u2019s Gossipsub Network"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://forum.research.logos.co/t/iwant-messages-may-have-negative-impact-on-message-dissemination-latency-for-large-messages/366",children:"IWANT Messages Impact on Latency "})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://forum.research.logos.co/t/large-message-handling-idontwant-imreceiving/281",children:"Large Message Handling (IDONTWANT + IMReceiving)"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://forum.research.logos.co/t/idontwant-message-impact/283",children:"IDONTWANT Message Impact Before/After Message Validation"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://hackmd.io/X1DoBHtYTtuGqYg0qK4zJw#2",children:"GossipSub for Big Messages"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"https://zealous-polka-dc7.notion.site/Nim-libp2p-v1-5-0-regression-testing-August-2024-25edba733c704ccaa411919555c5db1a",children:"Regression Test Results: nim-libp2p"})}),"\n"]})]})}function m(e={}){const{wrapper:s}={...(0,t.R)(),...e.components};return s?(0,a.jsx)(s,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}},99291:(e,s,n)=>{n.d(s,{A:()=>i});const i=n.p+"assets/images/IDONTWANT_Saves-463b248e2a1ee7995919cec733576159.png"}}]); |