1"use strict";(self.webpackChunkkentik_com=self.webpackChunkkentik_com||[]).push([[1751],{3541:function(t,e,n){n.d(e,{BX:function(){return p}});var i=n(5588),o=n(882),r=n(38571),s=n(57227),a=n(52557),l=n(22622),c=n(74744),d=n(74848);const h=(0,o.default)(l.Ay).withConfig({displayName:"AuthorsBlock__StyledAuthorLink",componentId:"sc-vs7fxn-0"})(["color:",";font-weight:600;a{text-decoration:none;&:hover{color:",";text-decoration:underline;}}"],(0,s.A)("colors.body"),(0,s.A)("colors.body")),p=(0,o.default)(i.G).withConfig({displayName:"AuthorsBlock__AuthorImage",componentId:"sc-vs7fxn-1"})(["flex-grow:0;flex-shrink:0;width:80px;height:80px;border-radius:50%;",";"],r.xe),u=o.default.span.withConfig({displayName:"AuthorsBlock__PreSpan",componentId:"sc-vs7fxn-2"})(["white-space:pre;"]);function m({name:t,shortId:e,pre:n=!1}){return(0,d.jsxs)(d.Fragment,{children:[n&&(0,d.jsx)(u,{children:" & "}),(0,d.jsx)(h,{fontSize:18,to:`/blog/author/${e}/`,children:t})]})}function g({jobTitle:t}){return(0,d.jsx)(c.A,{fontSize:18,children:t})}function x({name:t,image:e,shortId:n,jobTitle:i}){return(0,d.jsxs)(a.Ay,{gap:"21px",alignItems:"center",children:[e&&(0,d.jsx)(p,{image:e.gatsbyImageData,alt:t}),(0,d.jsxs)(a.Ay,{flexDirection:"column",children:[(0,d.jsx)(m,{name:t,shortId:n}),i&&(0,d.jsx)(g,{jobTitle:i})]})]})}e.Ay=function({authors:t}){if(!t||0===t.length)return"Alan Smithee";const e=t.length>1,[n]=t;return(0,d.jsx)(a.Ay,{alignItems:"center",children:e?(0,d.jsx)("span",{children:t.map((t,e)=>(0,d.jsx)(m,{pre:e>0,...t},t.name))}):(0,d.jsx)(x,{...n})})}},6407:function(t,e,n){var i=n(96540),o=n(16383),r=n(99085),s=n(52778),a=n(77237),l=n(74848);e.A=function({offset:t=40+r.uF+24,mainRef:e,breakpoint:n="lg",width:c=289,children:d,...h}){const p=(0,a.Gu)(),u=(0,i.useRef)(null),{0:m,1:g}=(0,i.useState)(null),x=p[n];return(0,i.useEffect)(()=>(u.current&&e.current&&(x&&!m?g((0,o.A)({sidebar:u.current,relative:e.current,topSpacing:t,bottomSpacing:24})):!x&&m&&(m.destroy(),g(null),u.current.firstElementChild instanceof HTMLElement&&(u.current.firstElementChild.style.position="static"),requestAnimationFrame(()=>{u.current&&(u.current.style.height="auto")}))),()=>{null==m||m.destroy()}),[x,m,e,t]),(0,l.jsx)(s.A,{ref:u,as:"aside",position:"relative",width:{[n]:c},...h,children:(0,l.jsx)(s.A,{width:{[n]:c},children:d})})}},16383:function(t,e,n){n.d(e,{A:function(){return u}});const i="START",o="TOP_FIXED",r="UNFIXED",s="BOTTOM_FIXED",a="FINISH";var l={[i]:(t,{$sideInner:e})=>{e.style.position="absolute",e.style.top="0",e.style.bottom="auto"},[o]:(t,{$sideInner:e})=>{e.style.position="fixed",e.style.top=`${t.topSpacing}px`,e.style.bottom="auto"},[r]:(t,{$sideInner:e})=>{e.style.position="absolute",e.style.top=t.sideInnerTop-t.startPoint+"px",e.style.bottom="auto"},[s]:(t,{$sideInner:e})=>{e.style.position="fixed",e.style.top="auto",e.style.bottom=`${t.bottomSpacing}px`},[a]:(t,{$sideInner:e})=>{e.style.position="absolute",e.style.top="auto",e.style.bottom="0"}},c={[i]:[{to:a,when:t=>[!0===t.isSideInnerWithinPath,t.viewportTop+t.sideInnerHeight+t.bottomSpacing>t.finishPoint,t.viewportBottom>t.finishPoint]},{to:s,when:t=>[!0===t.isSideInnerWithinPath,!1===t.isSideInnerWithinViewport,t.viewportBottom>t.sideInnerBottom+t.bottomSpacing]},{to:o,when:t=>[!0===t.isSideInnerWithinPath,!0===t.isSideInnerWithinViewport,t.viewportTop>t.startPoint-t.topSpacing]}],[o]:[{to:i,when:t=>[!1===t.isSideInnerWithinPath]},{to:i,when:t=>[t.viewportTop<=t.startPoint-t.topSpacing]},{to:a,when:t=>[t.sideInnerBottom>t.finishPoint]},{to:r,when:t=>["down"===t.scrollDirection,!1===t.isSideInnerWithinViewport]}],[r]:[{to:i,when:t=>[!1===t.isSideInnerWithinPath]},{to:i,when:t=>[t.viewportTop<=t.startPoint-t.topSpacing]},{to:a,when:t=>[t.viewportBottom>t.finishPoint]},{to:o,when:t=>["up"===t.scrollDirection,t.viewportTop<=t.sideInnerTop-t.topSpacing]},{to:o,when:t=>[!0===t.isSideInnerWithinViewport,t.viewportBottom>=t.sideInnerBottom+t.bottomSpacing]},{to:s,when:t=>[!1===t.isSideInnerWithinViewport,t.viewportBottom>t.sideInnerBottom+t.bottomSpacing]}],[s]:[{to:i,when:t=>[!1===t.isSideInnerWithinPath]},{to:i,when:t=>[!0===t.isSideInnerWithinPath,t.sideInnerTop<=t.startPoint-t.topSpacing]},{to:r,when:t=>["up"===t.scrollDirection]},{to:o,when:t=>[!0===t.isSideInnerWithinViewport]},{to:a,when:t=>[t.sideInnerBottom>t.finishPoint]}],[a]:[{to:i,when:t=>[!1===t.isSideInnerWithinPath]},{to:i,when:t=>[t.viewportTop<=t.startPoint-t.topSpacing]},{to:s,when:t=>[t.sideInnerBottom+t.bottomSpacing<=t.finishPoint,t.viewportBottom<t.finishPoint]},{to:o,when:t=>[t.viewportTop<=t.sideInnerTop-t.topSpacing]}]};var d=function({actions:t,transitions:e,initialState:n}){let i=n;return{findTransitionFor:(...t)=>e[i].find(({when:e})=>e(...t).every(t=>t)),performTransition:({to:e})=>(...n)=>{i=e,t[e](...n)}}};let h=(t,e)=>{let n=t.getBoundingClientRect();
1return{top:n.top+e,bottom:n.bottom+e,height:n.height}};var p=function(t,{$viewport:e,$relative:n,$sideInner:i,$sideOuter:o,topSpacing:r,bottomSpacing:s}){let a={},l=()=>{let t=(t=>{let e=t.clientHeight||t.innerHeight,n=t.scrollTop||t.pageYOffset;return{top:n,bottom:n+e,height:e}})(e),l=h(i,t.top),c=h(o,t.top),d=h(n,t.top),p=(u=t.top,a.viewportTop<u?"down":a.viewportTop>u?"up":"notChanged");var u;let m=c.top,g=d.bottom,x=g-m,f=l.height+r+s<t.height,w=l.height<x,b=Math.max(l.height,x);return{startPoint:m,finishPoint:g,topSpacing:r,bottomSpacing:s,scrollDirection:p,isSideInnerWithinPath:w,isSideInnerWithinViewport:f,sideOuterHeight:b,viewportTop:t.top,viewportBottom:t.bottom,sideInnerTop:l.top,sideInnerBottom:l.bottom,sideInnerHeight:l.height}},c=()=>{let e=l();t(a,e),a=e},d=function(t){let e;return()=>{e||(e=requestAnimationFrame(()=>{e=null,t()}))}}(c);return{start:()=>{e.addEventListener("scroll",d),e.addEventListener("resize",d),c()},stop:()=>{e.removeEventListener("scroll",d),e.removeEventListener("resize",d)},tick:c}};var u=function(t){let e=t.viewport||window,n=t.sidebar,o=t.sidebarInner||n.firstElementChild,r=t.relative,s=t.topSpacing||0,a=t.bottomSpacing||0,h=t.onStateChange,u=d({actions:l,transitions:c,initialState:i}),m=p((t,e)=>{let i=u.findTransitionFor(e);i&&(u.performTransition(i)(e,{$sideInner:o,$sideOuter:n,$relative:r}),h&&h(i.to)),g(t,e)},{$viewport:e,$sideOuter:n,$sideInner:o,$relative:r,topSpacing:s,bottomSpacing:a}),g=(t,e)=>{Math.abs((t.sideOuterHeight||0)-e.sideOuterHeight)>=1&&(n.style.height=`${e.sideOuterHeight}px`)};return requestAnimationFrame(()=>{n.style.willChange="height",o.style.width="inherit",o.style.transform="translateZ(0)",o.style.willChange="transform",m.start()}),{forceUpdate:()=>{m.tick()},destroy:()=>{m.stop()}}}},75702:function(t,e,n){n.d(e,{$:function(){return j},P:function(){return b}});var i=n(96540),o=n(882),r=n(3),s=n(52557),a=n(74744),l=n(22250),c=n(46942),d=n.n(c),h=n(53596),p=n(74848);const u=(0,o.default)(s.Ay).withConfig({displayName:"ToC__ClickableHeader",componentId:"sc-ecx2cb-0"})(["cursor:pointer;justify-content:space-between;align-items:center;"]),m=o.default.a.withConfig({displayName:"ToC__HeadingLink",componentId:"sc-ecx2cb-1"})(["font-size:18px;line-height:130%;color:currentColor;text-decoration:none;padding-top:12px;&:not(.nested):not(:first-child){margin-top:12px;border-top:1px solid #b0b2b6;}&:hover{text-decoration:underline;}&.nested{padding-top:8px;font-size:16px;}&.active{color:",";}"],h.Tj.blue);function g({id:t,depth:e,inView:n=!1,value:i}){return(0,p.jsx)(m,{href:`#${t}`,className:d()({nested:e>2,active:n}),style:{paddingLeft:8*(e-2)},children:i})}function x({headings:t,inView:e="",...n}){return(0,p.jsx)(s.Ay,{flexDirection:"column",mt:[1,2],...n,children:t.map(({id:t,...n})=>(0,p.jsx)(g,{id:t,inView:e===t,...n},`toc-${t}`))})}function f({title:t="Table of contents"}){return(0,p.jsx)(a.A,{fontWeight:600,letterSpacing:"0.1em",textTransform:"uppercase",children:t})}function w({headings:t,display:e,...n}){return 0===t.length?null:(0,p.jsx)(s.Ay,{display:e,p:[2,3],flexDirection:"column",bg:"white",boxShadow:"light",borderRadius:"8px",...n})}function b({title:t,headings:e,inView:n="",listProps:i={},showAt:o="lg",...r}){return(0,p.jsxs)(w,{headings:e,display:{xs:"none",[o]:"flex"},...r,children:[(0,p.jsx)(f,{title:t}),(0,p.jsx)(x,{headings:e,inView:n,...i})]})}function j({headings:t,inView:e="",listProps:n={},hideAt:o="lg",...s}){const{0:a,1:c}=(0,i.useState)(!1);return(0,p.jsxs)(w,{headings:t,display:{xs:"flex",[o]:"none"},...s,children:[(0,p.jsxs)(u,{onClick:()=>{c(t=>!t)},children:[(0,p.jsx)(f,{}),a?(0,p.jsx)(r.wAb,{}):(0,p.jsx)(r.fK4,{})]}),(0,p.jsx)(l.A,{open:a,children:(0,p.jsx)(x,{headings:t,inView:e,...n})})]})}},94741:function(t,e,n){n.r(e),n.d(e,{Head:function(){return H},default:function(){return W}});var i=n(45458),o=n(40397),r=n(96540),s=n(15852),a=n(52778),l=n(22240),c=n(76065),d=n(64982),h=n(33224),p=n(97472),u=n(5588),m=n(9144),g=n(78234),x=n(63053),f=n(52557),w=n(3541),b=n(882),j=n(22622),y=n(74848);const A=b.default.span.withConfig({displayName:"MetaBlock__MetaText",componentId:"sc-1j78zz1-0"})(["font-size:18px;"]),I=(0,b.default)(j.Ay).withConfig({displayName:"MetaBlock__TagLink",componentId:"sc-1j78zz1-1"})(["font-size:18px;"]);function v({slug:t,name:e}){return(0,y.jsx)(I,{to:`/blog/category/${t}/`,variant:"underline",color:"currentColor",children:e})}function S({tags:t}){return t.map(({slug:t,name:e})=>(0,y.jsx)(v,{slug:t,name:e},e))}var k=function({date:t,formattedDate:e,tags:n=[]}){return(0,y.jsx)(f.Ay,{flexDirection:"column",gap:3,mt:5,borderTop:"normal",pt:3,children:(0,y.jsxs)(f.Ay,{flexWrap:"wrap",gap:{xs:1,sm:3,lg:5},flexDirection:{xs:"column",sm:"row"},children:[(0,y.jsx)(A,{as:"time",dateTime:t,children:e}),(null==n?void 0:n.length)&&(0,y.jsx)(S,{tags:n})]})})},T=({featureImage:t,title:e,authors:n,date:i,formattedDate:o,tags:r})=>(0,y.jsxs)(a.A,{as:"header",height:"fit-content",position:"relative",boxShadow:"inset 0px -15px 15px -25px grey",pt:7,children:[(0,y.jsx)(m.A,{backgroundImage:"linear-gradient(180deg, #FCFAF4 0%, #85D7EE 100%)"}),(0,y.jsx)(l.A,{children:(0,y.jsxs)(c.A,{columns:{xs:1,lg:"6fr 5fr"},rows:{xs:"1fr auto",lg:1},overflow:"visible",gap:{xs:4,lg:"100px"},pb:7,children:[(0,y.jsxs)(a.A,{children:[(0,y.jsx)(g.A,{to:"/blog/",text:"Back to Blog",fontWeight:600,letterSpacing:"0.1em",textTransform:"uppercase",mt:0,mb:3}),(0,y.jsx)(x.H1,{fontSize:[28,30,32],mb:3,children:e}),(0,y.jsx)(f.Ay,{justifyContent:"space-between",flexWrap:"wrap",alignItems:"center",children:(0,y.jsxs)(a.A,{flex:"1 auto",children:[(0,y.jsx)(w.Ay,{authors:n}),(0,y.jsx)(k,{date:i,formattedDate:o,tags:r})]})})]}),(0,y.jsx)(f.Ay,{flexDirection:"column",gap:3,height:"fit-content",width:"fit-content",children:t&&(0,y.jsx)(u.G,{image:t.gatsbyImageData,alt:t.title||"blog post feature image",style:{borderRadius:8,boxShadow:"0px 0px 15px -5px grey"}})})]})})]}),P=n(71077);const B=b.default.hr.withConfig({displayName:"Summary__HR",componentId:"sc-1904jxx-0"})(["width:100%;border-top:0;border-bottom:1px solid ",";"],t=>`${t.theme.colors.keyline}80`);var C=function({excerpt:t}){const e=(0,P.Ay)();return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(x.H3,{fontFamily:"default",children:"Summary"}),e(t.childMarkdownRemark.htmlAst),(0,y.jsx)(a.A,{py:[24,24,30],children:(0,y.jsx)(B,{})})]})},$=n(75702),_=n(72740),D=n(6407),F=n(44333),E=n(30297);function W({data:t}){const e=(0,o.qM)({...t.contentfulBlogPost,sys:{id:t.contentfulBlogPost.contentful_id}}),{0:n,1:u}=(0,r.useState)(!1),{title:m,excerpt:g,featureImage:x,author:f,date:w,formattedDate:b,tags:j,sidebarCta:A,relatedPosts:I=!1}=e,{htmlAst:v,headings:S=[]}=(k=e).content&&k.content2?{htmlAst:{type:"root",children:[].concat((0,i.A)(k.content.childMarkdownRemark.htmlAst.children),(0,i.A)(k.content2.childMarkdownRemark.htmlAst.children))},headings:[].concat((0,i.A)(k.content.childMarkdownRemark.headings),(0,i.A)(k.content2.childMarkdownRemark.headings)
1)}:(null===(B=k.content)||void 0===B?void 0:B.childMarkdownRemark)||{};var k,B;const E=(0,r.useRef)();return(0,r.useEffect)(()=>(document.documentElement.style.scrollBehavior="smooth",()=>{document.documentElement.style.scrollBehavior="auto"}),[]),(0,y.jsx)(h.A.Provider,{value:e,children:(0,y.jsxs)(d.A,{darkLogo:!0,darkLinks:!0,headerBackground:"none",helmet:!1,children:[(0,y.jsxs)("article",{children:[(0,y.jsx)(T,{featureImage:x,title:m,authors:f,date:w,formattedDate:b,tags:j}),(0,y.jsx)(a.A,{bg:"cream",children:(0,y.jsx)(l.A,{py:{xs:24,lg:70},children:(0,y.jsxs)(c.A,{columns:{xs:"100%",lg:"289px minmax(10px, 1fr) minmax(500px, 10fr)"},areas:{xs:'"main" "toc"',lg:'"toc . main"'},columnGap:0,rowGap:4,children:[(0,y.jsx)(D.A,{gridArea:"toc",mainRef:E,children:(0,y.jsxs)(s.so,{gap:3,flexDirection:"column",children:[(0,y.jsx)($.P,{headings:S}),(0,y.jsx)(F.A,{sidebarCta:A,height:"fit-content"})]})}),(0,y.jsxs)(a.A,{gridArea:"main",ref:E,children:[(0,y.jsx)($.$,{headings:S,mb:3}),(0,y.jsx)(s.$n,{fontSize:16,variant:"outline",m:"-2px 0 15px 24px",p:"6px 16px 5px",style:{float:"right"},onClick:()=>u(!0),children:"Subscribe"}),g&&(0,y.jsx)(C,{excerpt:g}),v&&(0,P.i_)(v)]})]})})})]}),(null==I?void 0:I.length)>0&&(0,y.jsxs)(a.A,{backgroundImage:"linear-gradient(180deg, #FCFAF4 0%, #85D7EE 100%)",pt:70,pb:50,display:"grid",alignItems:"center",children:[(0,y.jsx)(l.A,{children:(0,y.jsx)(s.X3,{children:"Explore more from Kentik"})}),(0,y.jsx)(_.A,{bg:"transparent",pt:20,related:I,showLink:!1})]}),(0,y.jsx)(p.A,{isOpen:n,onClose:()=>u(!1)})]})})}function H({data:t}){const{contentfulBlogPost:e}=t,{title:n,metaTitle:i,noFollow:o,noIndex:r,canonicalUrl:s,schema:a,excerpt:l,slug:c,featureImage:d}=e,h=`https://www.kentik.com/blog/${c}/`;return(0,y.jsx)(y.Fragment,{children:(0,E.A)({type:"article",pageTitle:`${n} | Kentik Blog`,metaTitle:i||n||"Untitled",description:(null==l?void 0:l.childMarkdownRemark.excerpt)||`Kentik blog post: ${n}. Learn more about network intelligence in the Kentik blog.`,url:h,canonicalUrl:s||h,image:d||E.E,card:d?"summary_large_image":void 0,schema:null==a?void 0:a.internal.content,noFollow:o,noIndex:r})})}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.