mirror of
https://github.com/logos-messaging/docs.waku.org.git
synced 2026-01-03 21:33:05 +00:00
1 line
3.9 KiB
JavaScript
1 line
3.9 KiB
JavaScript
"use strict";(self.webpackChunkwaku_guide=self.webpackChunkwaku_guide||[]).push([[4061],{28453:(e,s,n)=>{n.d(s,{R:()=>c,x:()=>o});var t=n(96540);const r={},i=t.createContext(r);function c(e){const s=t.useContext(i);return t.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function o(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:c(e.components),t.createElement(i.Provider,{value:s},e.children)}},53763:(e,s,n)=>{n.r(s),n.d(s,{assets:()=>a,contentTitle:()=>o,default:()=>d,frontMatter:()=>c,metadata:()=>t,toc:()=>l});const t=JSON.parse('{"id":"learn/concepts/peer-discovery","title":"Peer Discovery","description":"When initialising a Waku node, it must connect with other peers to enable message sending, receiving, and retrieval. To achieve this, a discovery mechanism is employed to locate other peers in the network. This process is known as bootstrapping.","source":"@site/docs/learn/concepts/peer-discovery.md","sourceDirName":"learn/concepts","slug":"/learn/concepts/peer-discovery","permalink":"/learn/concepts/peer-discovery","draft":false,"unlisted":false,"editUrl":"https://github.com/waku-org/docs.waku.org/tree/develop/docs/learn/concepts/peer-discovery.md","tags":[],"version":"current","lastUpdatedAt":null,"frontMatter":{"title":"Peer Discovery","hide_table_of_contents":true,"displayed_sidebar":"learn"},"sidebar":"learn","previous":{"title":"Transports","permalink":"/learn/concepts/transports"},"next":{"title":"Static Peers","permalink":"/learn/concepts/static-peers"}}');var r=n(74848),i=n(28453);const c={title:"Peer Discovery",hide_table_of_contents:!0,displayed_sidebar:"learn"},o=void 0,a={},l=[];function p(e){const s={a:"a",li:"li",p:"p",ul:"ul",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(s.p,{children:"When initialising a Waku node, it must connect with other peers to enable message sending, receiving, and retrieval. To achieve this, a discovery mechanism is employed to locate other peers in the network. This process is known as bootstrapping."}),"\n",(0,r.jsx)(s.p,{children:"Once a connection is established, the node must actively seek out additional peers to have:"}),"\n",(0,r.jsxs)(s.ul,{children:["\n",(0,r.jsxs)(s.li,{children:["Sufficient peers in the ",(0,r.jsx)(s.a,{href:"/learn/concepts/protocols#relay",children:"Relay"})," mesh: The goal is to have at least 6 peers in the mesh. This ensures a robust network where messages can be efficiently relayed."]}),"\n",(0,r.jsx)(s.li,{children:"Reserve peers for backup: It is essential to have a surplus of peers available as reserves. These reserves are backups when the current peers become overloaded or experience unexpected disconnections."}),"\n",(0,r.jsxs)(s.li,{children:["Peers with specific capabilities: The node seeks out peers with specific capabilities, such as ",(0,r.jsx)(s.a,{href:"/learn/concepts/protocols#store",children:"Store"}),", ",(0,r.jsx)(s.a,{href:"/learn/concepts/protocols#light-push",children:"Light Push"}),", or ",(0,r.jsx)(s.a,{href:"/learn/concepts/protocols#filter",children:"Filter"}),". This allows for targeted interactions and enhanced functionality based on the desired capabilities."]}),"\n"]}),"\n",(0,r.jsx)(s.p,{children:"Waku supports multiple peer discovery mechanisms, such as:"}),"\n",(0,r.jsxs)(s.ul,{children:["\n",(0,r.jsx)(s.li,{children:(0,r.jsx)(s.a,{href:"/learn/concepts/static-peers",children:"Configuring Static Peers"})}),"\n",(0,r.jsx)(s.li,{children:(0,r.jsx)(s.a,{href:"/learn/concepts/dns-discovery",children:"Peer Discovery via DNS"})}),"\n",(0,r.jsx)(s.li,{children:(0,r.jsx)(s.a,{href:"/learn/concepts/discv5",children:"Discv5 Ambient Peer Discovery"})}),"\n",(0,r.jsx)(s.li,{children:(0,r.jsx)(s.a,{href:"/learn/concepts/peer-exchange",children:"Peer Exchange"})}),"\n"]})]})}function d(e={}){const{wrapper:s}={...(0,i.R)(),...e.components};return s?(0,r.jsx)(s,{...e,children:(0,r.jsx)(p,{...e})}):p(e)}}}]); |