consul/contributing/rpc/routing.svg

1 line
34 KiB
XML

<svg id="graph-div" width="100%" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="819" style="max-width: 1284.40625px;" viewBox="0 0 1284.40625 819"><style>#graph-div{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#graph-div .error-icon{fill:#552222;}#graph-div .error-text{fill:#552222;stroke:#552222;}#graph-div .edge-thickness-normal{stroke-width:2px;}#graph-div .edge-thickness-thick{stroke-width:3.5px;}#graph-div .edge-pattern-solid{stroke-dasharray:0;}#graph-div .edge-pattern-dashed{stroke-dasharray:3;}#graph-div .edge-pattern-dotted{stroke-dasharray:2;}#graph-div .marker{fill:#333333;stroke:#333333;}#graph-div .marker.cross{stroke:#333333;}#graph-div svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#graph-div .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#graph-div .cluster-label text{fill:#333;}#graph-div .cluster-label span{color:#333;}#graph-div .label text,#graph-div span{fill:#333;color:#333;}#graph-div .node rect,#graph-div .node circle,#graph-div .node ellipse,#graph-div .node polygon,#graph-div .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#graph-div .node .label{text-align:center;}#graph-div .node.clickable{cursor:pointer;}#graph-div .arrowheadPath{fill:#333333;}#graph-div .edgePath .path{stroke:#333333;stroke-width:1.5px;}#graph-div .flowchart-link{stroke:#333333;fill:none;}#graph-div .edgeLabel{background-color:#e8e8e8;text-align:center;}#graph-div .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#graph-div .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#graph-div .cluster text{fill:#333;}#graph-div .cluster span{color:#333;}#graph-div div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80,100%,96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#graph-div .node rect,#graph-div .er.entityBox{fill:rgb(220,71,125);stroke-width:1;stroke:black;}#graph-div .node .label{color:white;}#graph-div .cluster rect{fill:#f0f0f0;stroke-width:1px;stroke:#333;}#graph-div .edgeLabel{background-color:#f0f0f0;}#graph-div .er.entityBox + .er.entityLabel{fill:white;}#graph-div .er.attributeBoxEven,#graph-div .er.attributeBoxOdd{fill:#fff;stroke:#777;}#graph-div:root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><g class="output"><g class="clusters"></g><g class="edgePaths"><g class="edgePath LS-handleConn LE-handleConsulConn" id="L-handleConn-handleConsulConn" style="opacity: 1;"><path class="path" d="M85.02877938034189,270L103.08127448361824,254.16666666666666C121.13376958689459,238.33333333333334,157.23875979344731,206.66666666666666,202.52562989672364,190.83333333333334C247.8125,175,302.28125,175,361.7955729166667,175C421.3098958333333,175,485.8697916666667,175,553.1575520833334,175C620.4453125,175,690.4609375,175,752.1588541666666,175C813.8567708333334,175,867.2369791666666,175,914.2575566750629,204.41666666666666C961.2781341834593,233.83333333333334,1001.9390808669186,292.6666666666667,1022.2695542086482,322.0833333333333L1042.600027550378,351.5" marker-end="url(#arrowhead111183)" style="fill:none"></path><defs><marker id="arrowhead111183" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-raftLayer" id="L-handleConn-raftLayer" style="opacity: 1;"><path class="path" d="M75.15135200777202,270L94.85008500647668,241.5C114.54881800518133,213,153.94628400259066,156,200.87939200129532,127.5C247.8125,99,302.28125,99,361.7955729166667,99C421.3098958333333,99,485.8697916666667,99,545.9713541666666,99.06622715663667C606.0729166666666,99.13245431327333,661.7161458333334,99.26490862654664,689.5377604166666,99.33113578318331L717.359375,99.39736293981998" marker-end="url(#arrowhead111184)" style="fill:none"></path><defs><marker id="arrowhead111184" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-handleConn" id="L-handleConn-handleConn" style="opacity: 1;"><path class="path" d="M38.51787109374999,314L33.43155924479166,319.22222222222223C28.345247395833326,324.4444444444444,18.172623697916663,334.88888888888886,13.086311848958331,341.4166666666667C8,347.9444444444444,8,350.5555555555556,16.657552083333332,353.1666666666667C25.315104166666668,355.7777777777778,42.630208333333336,358.3888888888889,59.9453125,358.3888888888889C77.26041666666667,358.3888888888889,94.57552083333333,355.7777777777778,103.23307291666667,353.1666666666667C111.890625,350.5555555555556,111.890625,347.9444444444444,106.80431315104165,341.4166666666667C101.71800130208334,334.88888888888886,91.54537760416667,324.4444444444444,86.45906575520833,319.22222222222223L81.37275390625001,314" marker-end="url(#arrowhead111185)" style="fill:none"></path><defs><marker id="arrowhead111185" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-handleMultiplexV2" id="L-handleConn-handleMultiplexV2" style="opacity: 1;"><path class="path" d="M68.14298184357541,314L89.00977653631283,370C109.87657122905027,426,151.61016061452514,538,199.71133030726256,594C247.8125,650,302.28125,650,361.7955729166667,650C421.3098958333333,650,485.8697916666667,650,540.4791666666666,651.7009100151256C595.0885416666666,653.4018200302512,639.7473958333334,656.8036400605024,662.0768229166666,658.504550075628L684.40625,660.2054600907536" marker-end="url(#arrowhead111186)" style="fill:none"></path><defs><marker id="arrowhead111186" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-handleSnapshotConn" id="L-handleConn-handleSnapshotConn" style="opacity: 1;"><path class="path" d="M106.52889384920636,270L120.9980365410053,263.1666666666667C135.46717923280423,256.3333333333333,164.40546461640213,242.66666666666666,206.10898230820104,235.83333333333334C247.8125,229,302.28125,229,361.7955729166667,229C421.3098958333333,229,485.8697916666667,229,539.1744791666666,229.30028639440602C592.4791666666666,229.600572788812,634.5286458333334,230.20114557762403,655.5533854166666,230.50143197203002L676.578125,230.80171836643606" marker-end="url(#arrowhead111187)" style="fill:none"></path><defs><marker id="arrowhead111187" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-handleInsecureConn" id="L-handleConn-handleInsecureConn" style="opacity: 1;"><path class="path" d="M71.14670801526718,270L91.51288167938931,230C111.87905534351144,190,152.6114026717557,110,186.5530971692112,70C220.49479166666666,30,247.64583333333334,30,261.2213541666667,30L274.796875,30" marker-end="url(#arrowhead111188)" style="fill:none"></path><defs><marker id="arrowhead111188" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-handleGossipConn" id="L-handleConn-handleGossipConn" style="opacity: 1;"><path class="path" d="M66.57006560383748,314L87.69901300319789,384.1666666666667C108.8279604025583,454.3333333333333,151.08585520127914,594.6666666666666,199.4491776006396,664.8333333333334C247.8125,735,302.28125,735,361.7955729166667,735C421.3098958333333,735,485.8697916666667,735,553.1575520833334,735C620.4453125,735,690.4609375,735,752.1588541666666,735C813.8567708333334,735,867.2369791666666,735,904.3138020833334,737.2334994305239C941.390625,739.466998861048,962.1640625,743.9339977220957,972.55078125,746.1674971526196L982.9375,748.4009965831435" marker-end="url(#arrowhead111189)" style="fill:none"></path><defs><marker id="arrowhead111189" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConsulConn LE-RPCServer" id="L-handleConsulConn-RPCServer" style="opacity: 1;"><path class="path" d="M1133.171875,373.5L1137.3385416666667,373.5C1141.5052083333333,373.5,1149.8385416666667,373.5,1158.171875,373.5C1166.5052083333333,373.5,1174.8385416666667,373.5,1179.0052083333333,373.5L1183.171875,373.5" marker-end="url(#arrowhead111190)" style="fill:none"></path><defs><marker id="arrowhead111190" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleMultiplexV2 LE-handleConsulConn" id="L-handleMultiplexV2-handleConsulConn" style="opacity: 1;"><path class="path" d="M773.3345688868613,644L797.881671989051,602C822.4287750912408,560,871.5229812956204,476,906.3734698144768,432.6105685269552C941.2239583333334,389.22113705391047,961.8307291666666,386.4422741078208,972.1341145833334,385.052842634776L982.4375,383.66341116173123" marker-end="url(#arrowhead111191)" style="fill:none"></path><defs><marker id="arrowhead111191" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-handleNativeTLS" id="L-handleConn-handleNativeTLS" style="opacity: 1;"><path class="path" d="M75.27045936684073,314L94.94934113903393,342.25C114.62822291122716,370.5,153.98598645561358,427,189.28075364447344,455.25C224.57552083333334,483.5,255.80729166666666,483.5,271.4231770833333,483.5L287.0390625,483.5" marker-end="url(#arrowhead111192)" style="fill:none"></path><defs><marker id="arrowhead111192" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-handleConsulConn" id="L-handleNativeTLS-handleConsulConn" style="opacity: 1;"><path class="path" d="M396.7589495305164,505.5L422.37073919209706,519.5833333333334C447.98252885367765,533.6666666666666,499.2061081768388,561.8333333333334,559.8257103384194,575.9166666666666C620.4453125,590,690.4609375,590,752.1588541666666,590C813.8567708333334,590,867.2369791666666,590,914.4682448036951,557.5833333333334C961.6995104407237,525.1666666666666,1002.7818333814472,460.3333333333333,1023.3229948518091,427.9166666666667L1043.8641563221709,395.5" marker-end="url(#arrowhead111193)" style="fill:none"></path><defs><marker id="arrowhead111193" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-raftLayer" id="L-handleNativeTLS-raftLayer" style="opacity: 1;"><path class="path" d="M368.83781028368793,461.5L399.1031231530733,406.4166666666667C429.36843602245864,351.3333333333333,489.89906176122935,241.16666666666666,547.985989213948,181.9110224652235C606.0729166666666,122.6553782637804,661.7161458333334,114.31075652756083,689.5377604166666,110.13844565945102L717.359375,105.96613479134122" marker-end="url(#arrowhead111194)" style="fill:none"></path><defs><marker id="arrowhead111194" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-handleMultiplexV2" id="L-handleNativeTLS-handleMultiplexV2" style="opacity: 1;"><path class="path" d="M377.94877176616916,505.5L406.695591055141,535.3333333333334C435.4424103441127,565.1666666666666,492.9360489220564,624.8333333333334,544.0122952943615,652.6999894616778C595.0885416666666,680.5666455900221,639.7473958333334,676.6332911800441,662.0768229166666,674.6666139750552L684.40625,672.6999367700662" marker-end="url(#arrowhead111195)" style="fill:none"></path><defs><marker id="arrowhead111195" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-handleSnapshotConn" id="L-handleNativeTLS-handleSnapshotConn" style="opacity: 1;"><path class="path" d="M376.70762587822014,461.5L405.66130281518343,429.5833333333333C434.6149797521468,397.6666666666667,492.52233362607336,333.8333333333333,542.50075014637,298.1130390041905C592.4791666666666,262.3927446750477,634.5286458333334,254.78548935009545,655.5533854166666,250.98186168761933L676.578125,247.17823402514318" marker-end="url(#arrowhead111196)" style="fill:none"></path><defs><marker id="arrowhead111196" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-grpcHandler" id="L-handleNativeTLS-grpcHandler" style="opacity: 1;"><path class="path" d="M381.88836651917404,461.5L409.9785866826451,436.9166666666667C438.06880684611605,412.3333333333333,494.249247173058,363.1666666666667,548.4071756698623,340.07258424458826C602.5651041666666,316.9785018225098,654.7005208333334,319.9570036450197,680.7682291666666,321.44625455627465L706.8359375,322.9355054675296" marker-end="url(#arrowhead111197)" style="fill:none"></path><defs><marker id="arrowhead111197" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-handleWANGossipPacket" id="L-handleNativeTLS-handleWANGossipPacket" style="opacity: 1;"><path class="path" d="M426.4609375,463.1640111330725L447.1223958333333,457.1366759442271C467.7838541666667,451.1093407553817,509.1067708333333,439.05467037769085,548.6419270833334,433.0273351888454C588.1770833333334,427,625.9244791666666,427,644.7981770833334,427L663.671875,427" marker-end="url(#arrowhead111198)" style="fill:none"></path><defs><marker id="arrowhead111198" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-handleWANGossipStream" id="L-handleNativeTLS-handleWANGossipStream" style="opacity: 1;"><path class="path" d="M426.4609375,496.997337743536L447.1223958333333,500.99778145294664C467.7838541666667,504.99822516235736,509.1067708333333,512.9991125811787,548.3893229166666,516.9995562905893C587.671875,521,624.9140625,521,643.53515625,521L662.15625,521" marker-end="url(#arrowhead111199)" style="fill:none"></path><defs><marker id="arrowhead111199" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleNativeTLS LE-handleGossipConn" id="L-handleNativeTLS-handleGossipConn" style="opacity: 1;"><path class="path" d="M371.77981701940035,505.5L401.5547954328336,549.0833333333334C431.32977384626685,592.6666666666666,490.87973067313345,679.8333333333334,555.6625215865668,723.4166666666666C620.4453125,767,690.4609375,767,752.1588541666666,767C813.8567708333334,767,867.2369791666666,767,904.3138020833334,766.8107203872437C941.390625,766.6214407744874,962.1640625,766.2428815489749,972.55078125,766.0536019362186L982.9375,765.8643223234624" marker-end="url(#arrowhead111200)" style="fill:none"></path><defs><marker id="arrowhead111200" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleMultiplexV2 LE-handleGossipConn" id="L-handleMultiplexV2-handleGossipConn" style="opacity: 1;"><path class="path" d="M786.9659891917294,688L809.2411889097745,706.5C831.5163886278197,725,876.0667880639098,762,908.7287065319548,777.8879413439636C941.390625,793.7758826879272,962.1640625,788.5517653758543,972.55078125,785.9397067198178L982.9375,783.3276480637813" marker-end="url(#arrowhead111201)" style="fill:none"></path><defs><marker id="arrowhead111201" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g><g class="edgePath LS-handleConn LE-grpcHandler" id="L-handleConn-grpcHandler" style="opacity: 1;"><path class="path" d="M106.52889384920636,314L120.9980365410053,320.8333333333333C135.46717923280423,327.6666666666667,164.40546461640213,341.3333333333333,206.10898230820104,348.1666666666667C247.8125,355,302.28125,355,361.7955729166667,355C421.3098958333333,355,485.8697916666667,355,544.2174479166666,351.40097696446725C602.5651041666666,347.80195392893455,654.7005208333334,340.60390785786905,680.7682291666666,337.0048848223363L706.8359375,333.40586178680354" marker-end="url(#arrowhead111202)" style="fill:none"></path><defs><marker id="arrowhead111202" viewBox="0 0 10 10" refX="9" refY="5" markerUnits="strokeWidth" markerWidth="8" markerHeight="6" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowheadPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"></path></marker></defs></g></g><g class="edgeLabels"><g class="edgeLabel" transform="translate(550.4296875,175)" style="opacity: 1;"><g transform="translate(-37.3203125,-12)" class="label"><rect rx="0" ry="0" width="74.640625" height="24"></rect><foreignObject width="74.640625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-handleConsulConn" class="edgeLabel L-LS-handleConn' L-LE-handleConsulConn">RPCConsul</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(356.75,99)" style="opacity: 1;"><g transform="translate(-28.890625,-12)" class="label"><rect rx="0" ry="0" width="57.78125" height="24"></rect><foreignObject width="57.78125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-raftLayer" class="edgeLabel L-LS-handleConn' L-LE-raftLayer">RPCRaft</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(59.9453125,361)" style="opacity: 1;"><g transform="translate(-26.4453125,-12)" class="label"><rect rx="0" ry="0" width="52.890625" height="24"></rect><foreignObject width="52.890625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-handleConn" class="edgeLabel L-LS-handleConn' L-LE-handleConn">RPCTLS</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(356.75,650)" style="opacity: 1;"><g transform="translate(-55.84375,-12)" class="label"><rect rx="0" ry="0" width="111.6875" height="24"></rect><foreignObject width="111.6875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-handleMultiplexV2" class="edgeLabel L-LS-handleConn' L-LE-handleMultiplexV2">RPCMultiplexV2</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(356.75,229)" style="opacity: 1;"><g transform="translate(-45.859375,-12)" class="label"><rect rx="0" ry="0" width="91.71875" height="24"></rect><foreignObject width="91.71875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-handleSnapshotConn" class="edgeLabel L-LS-handleConn' L-LE-handleSnapshotConn">RPCSnapshot</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(193.34375,30)" style="opacity: 1;"><g transform="translate(-56.453125,-12)" class="label"><rect rx="0" ry="0" width="112.90625" height="24"></rect><foreignObject width="112.90625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-handleInsecureConn" class="edgeLabel L-LS-handleConn' L-LE-handleInsecureConn">RPCTLSInsecure</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.4296875,735)" style="opacity: 1;"><g transform="translate(-36.8203125,-12)" class="label"><rect rx="0" ry="0" width="73.640625" height="24"></rect><foreignObject width="73.640625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-handleGossipConn" class="edgeLabel L-LS-handleConn' L-LE-handleGossipConn">RPCGossip</span></div></foreignObject></g></g><g class="edgeLabel" transform="" style="opacity: 1;"><g transform="translate(0,0)" class="label"><rect rx="0" ry="0" width="0" height="0"></rect><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConsulConn-RPCServer" class="edgeLabel L-LS-handleConsulConn' L-LE-RPCServer"></span></div></foreignObject></g></g><g class="edgeLabel" transform="" style="opacity: 1;"><g transform="translate(0,0)" class="label"><rect rx="0" ry="0" width="0" height="0"></rect><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleMultiplexV2-handleConsulConn" class="edgeLabel L-LS-handleMultiplexV2' L-LE-handleConsulConn"></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(193.34375,483.5)" style="opacity: 1;"><g transform="translate(-40.9921875,-12)" class="label"><rect rx="0" ry="0" width="81.984375" height="24"></rect><foreignObject width="81.984375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-handleNativeTLS" class="edgeLabel L-LS-handleConn' L-LE-handleNativeTLS">PeekForTLS</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(760.4765625,590)" style="opacity: 1;"><g transform="translate(-59.8515625,-12)" class="label"><rect rx="0" ry="0" width="119.703125" height="24"></rect><foreignObject width="119.703125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-handleConsulConn" class="edgeLabel L-LS-handleNativeTLS' L-LE-handleConsulConn">ALPN_RPCConsul</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.4296875,131)" style="opacity: 1;"><g transform="translate(-51.421875,-12)" class="label"><rect rx="0" ry="0" width="102.84375" height="24"></rect><foreignObject width="102.84375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-raftLayer" class="edgeLabel L-LS-handleNativeTLS' L-LE-raftLayer">ALPN_RPCRaft</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.4296875,684.5)" style="opacity: 1;"><g transform="translate(-78.375,-12)" class="label"><rect rx="0" ry="0" width="156.75" height="24"></rect><foreignObject width="156.75" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-handleMultiplexV2" class="edgeLabel L-LS-handleNativeTLS' L-LE-handleMultiplexV2">ALPN_RPCMultiplexV2</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.4296875,270)" style="opacity: 1;"><g transform="translate(-68.390625,-12)" class="label"><rect rx="0" ry="0" width="136.78125" height="24"></rect><foreignObject width="136.78125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-handleSnapshotConn" class="edgeLabel L-LS-handleNativeTLS' L-LE-handleSnapshotConn">ALPN_RPCSnapshot</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.4296875,314)" style="opacity: 1;"><g transform="translate(-55.75,-12)" class="label"><rect rx="0" ry="0" width="111.5" height="24"></rect><foreignObject width="111.5" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-grpcHandler" class="edgeLabel L-LS-handleNativeTLS' L-LE-grpcHandler">ALPN_RPCGRPC</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.4296875,427)" style="opacity: 1;"><g transform="translate(-85.2109375,-12)" class="label"><rect rx="0" ry="0" width="170.421875" height="24"></rect><foreignObject width="170.421875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-handleWANGossipPacket" class="edgeLabel L-LS-handleNativeTLS' L-LE-handleWANGossipPacket">ALPN_WANGossipPacket</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.4296875,521)" style="opacity: 1;"><g transform="translate(-86.7265625,-12)" class="label"><rect rx="0" ry="0" width="173.453125" height="24"></rect><foreignObject width="173.453125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-handleWANGossipStream" class="edgeLabel L-LS-handleNativeTLS' L-LE-handleWANGossipStream">ALPN_WANGossipStream</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(760.4765625,767)" style="opacity: 1;"><g transform="translate(-59.3515625,-12)" class="label"><rect rx="0" ry="0" width="118.703125" height="24"></rect><foreignObject width="118.703125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleNativeTLS-handleGossipConn" class="edgeLabel L-LS-handleNativeTLS' L-LE-handleGossipConn">ALPN_RPCGossip</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(920.6171875,799)" style="opacity: 1;"><g transform="translate(-36.8203125,-12)" class="label"><rect rx="0" ry="0" width="73.640625" height="24"></rect><foreignObject width="73.640625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleMultiplexV2-handleGossipConn" class="edgeLabel L-LS-handleMultiplexV2' L-LE-handleGossipConn">RPCGossip</span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(356.75,355)" style="opacity: 1;"><g transform="translate(-33.21875,-12)" class="label"><rect rx="0" ry="0" width="66.4375" height="24"></rect><foreignObject width="66.4375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;"><span id="L-L-handleConn-grpcHandler" class="edgeLabel L-LS-handleConn' L-LE-grpcHandler">RPCGRPC</span></div></foreignObject></g></g></g><g class="nodes"><g class="node default" id="flowchart-handleConn-65136" transform="translate(59.9453125,292)" style="opacity: 1;"><rect rx="0" ry="0" x="-51.9453125" y="-22" width="103.890625" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-41.9453125,-12)"><foreignObject width="83.890625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleConn</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleConsulConn-65138" transform="translate(1057.8046875,373.5)" style="opacity: 1;"><rect rx="0" ry="0" x="-75.3671875" y="-22" width="150.734375" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-65.3671875,-12)"><foreignObject width="130.734375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleConsulConn</div></foreignObject></g></g></g><g class="node default" id="flowchart-raftLayer-65140" transform="translate(760.4765625,99.5)" style="opacity: 1;"><rect rx="0" ry="0" x="-43.1171875" y="-22" width="86.234375" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-33.1171875,-12)"><foreignObject width="66.234375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">raftLayer</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleMultiplexV2-65144" transform="translate(760.4765625,666)" style="opacity: 1;"><rect rx="0" ry="0" x="-76.0703125" y="-22" width="152.140625" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-66.0703125,-12)"><foreignObject width="132.140625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleMultiplexV2</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleSnapshotConn-65146" transform="translate(760.4765625,232)" style="opacity: 1;"><rect rx="0" ry="0" x="-83.8984375" y="-22" width="167.796875" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-73.8984375,-12)"><foreignObject width="147.796875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleSnapshotConn</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleInsecureConn-65148" transform="translate(356.75,30)" style="opacity: 1;"><rect rx="0" ry="0" x="-81.953125" y="-22" width="163.90625" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-71.953125,-12)"><foreignObject width="143.90625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleInsecureConn</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleGossipConn-65150" transform="translate(1057.8046875,764.5)" style="opacity: 1;"><rect rx="0" ry="0" x="-74.8671875" y="-22" width="149.734375" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-64.8671875,-12)"><foreignObject width="129.734375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleGossipConn</div></foreignObject></g></g></g><g class="node default" id="flowchart-RPCServer-65152" transform="translate(1229.7890625,373.5)" style="opacity: 1;"><rect rx="0" ry="0" x="-46.6171875" y="-22" width="93.234375" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-36.6171875,-12)"><foreignObject width="73.234375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">RPCServer</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleNativeTLS-65156" transform="translate(356.75,483.5)" style="opacity: 1;"><rect rx="0" ry="0" x="-69.7109375" y="-22" width="139.421875" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-59.7109375,-12)"><foreignObject width="119.421875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleNativeTLS</div></foreignObject></g></g></g><g class="node default" id="flowchart-grpcHandler-65166" transform="translate(760.4765625,326)" style="opacity: 1;"><rect rx="0" ry="0" x="-53.640625" y="-22" width="107.28125" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-43.640625,-12)"><foreignObject width="87.28125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">grpcHandler</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleWANGossipPacket-65168" transform="translate(760.4765625,427)" style="opacity: 1;"><rect rx="0" ry="0" x="-96.8046875" y="-22" width="193.609375" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-86.8046875,-12)"><foreignObject width="173.609375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleWANGossipPacket</div></foreignObject></g></g></g><g class="node default" id="flowchart-handleWANGossipStream-65170" transform="translate(760.4765625,521)" style="opacity: 1;"><rect rx="0" ry="0" x="-98.3203125" y="-22" width="196.640625" height="44" class="label-container"></rect><g class="label" transform="translate(0,0)"><g transform="translate(-88.3203125,-12)"><foreignObject width="176.640625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">handleWANGossipStream</div></foreignObject></g></g></g></g></g></g></svg>