{"id":1388,"date":"2024-05-06T05:13:56","date_gmt":"2024-05-06T05:13:56","guid":{"rendered":"https:\/\/craftcookcode.com\/?p=1388"},"modified":"2024-05-06T05:23:06","modified_gmt":"2024-05-06T05:23:06","slug":"qlik-replicate-the-saga-of-replicating-to-aws-part-3-wireshark","status":"publish","type":"post","link":"https:\/\/craftcookcode.com\/?p=1388","title":{"rendered":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark!"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Continuing on the story<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the AWS DB.&nbsp; Anything like IPS, QOS, bandwidth limitation components that could explain the slowdown.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I also asked the cloud team if they can find anything as well.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It was a high hope for them to find anything; but since they are the SMEs in the area, it was worth asking the question.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As expected, they did not find anything.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But the Network team &nbsp;did come back with a couple of pieces of information:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The network bandwidth to the AWS was wide enough and we were not reaching its capacity.<\/li>\n\n\n\n<li>It is a 16ms &#8211; 20ms round trip from our Data centre to the AWS data centre.&nbsp;<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Loaction&#8230; Location&#8230;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Physically the distance to the AWS data centre is 700Km.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Unfortunately, AWS set up a closer data centre in the past few years, which is only 130Km away.&nbsp; We are not currently set up to use this new region yet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The Network team gave me permission to install wire shark on our OnPrem Qlik server and our AWS EC2 Qlik server.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">From both servers with psql I connected to the AWS RDS database and updated one row; capturing the traffic using Wireshark.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I lined up the two results from the different servers to see if there was anything obvious<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wireshark results<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"774\" height=\"254\" src=\"http:\/\/craftcookcode.com\/wp-content\/uploads\/2024\/05\/code_wire_shark-1.jpg\" alt=\"\" class=\"wp-image-1397\" srcset=\"https:\/\/craftcookcode.com\/wp-content\/uploads\/2024\/05\/code_wire_shark-1.jpg 774w, https:\/\/craftcookcode.com\/wp-content\/uploads\/2024\/05\/code_wire_shark-1-300x98.jpg 300w, https:\/\/craftcookcode.com\/wp-content\/uploads\/2024\/05\/code_wire_shark-1-768x252.jpg 768w\" sizes=\"(max-width: 774px) 100vw, 774px\" \/><\/figure>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n(ip.src == ip.of.qlik.server and ip.dst == ip.of.aws.rds) or (ip.src == ip.of.aws.rds and ip.dst == ip.of.qlik.server)\n<\/pre><\/div>\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>SEQ<\/th><th class=\"has-text-align-left\" data-align=\"left\">Source<\/th><th>Destination<\/th><th>Protocol<\/th><th>Length<\/th><th class=\"has-text-align-left\" data-align=\"left\">Info<\/th><th>On Prem 2 RDS<\/th><th>EC2 2 RDS<\/th><th class=\"has-text-align-right\" data-align=\"right\">Difference (sec)<\/th><th class=\"has-text-align-right\" data-align=\"right\">% of difference<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>66<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [SYN, ECE, CWR] Seq=0 Win=64240 Len=0 MSS=1460 WS=256 SACK_PERM<\/td><td>0<\/td><td>0<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>2<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>66<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [SYN, ACK] Seq=0 Ack=1 Win=26883 Len=0 MSS=1460 SACK_PERM WS=8<\/td><td>0.019<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.018<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>10%<\/strong><\/td><\/tr><tr><td>3<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>54<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [ACK] Seq=1 Ack=1 Win=262656 Len=0<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>4<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>PGSQL<\/td><td>62<\/td><td class=\"has-text-align-left\" data-align=\"left\">&gt;?<\/td><td>0.000<\/td><td>0.005<\/td><td class=\"has-text-align-right\" data-align=\"right\">-0.005<\/td><td class=\"has-text-align-right\" data-align=\"right\">-3%<\/td><\/tr><tr><td>5<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>60<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [ACK] Seq=1 Ack=9 Win=26888 Len=0<\/td><td>0.018<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.018<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>10%<\/strong><\/td><\/tr><tr><td>6<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>PGSQL<\/td><td>60<\/td><td class=\"has-text-align-left\" data-align=\"left\">&lt;<\/td><td>0.001<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>7<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>343<\/td><td class=\"has-text-align-left\" data-align=\"left\">Client Hello<\/td><td>0.004<\/td><td>0.004<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>8<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>220<\/td><td class=\"has-text-align-left\" data-align=\"left\">Hello Retry Request<\/td><td>0.021<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.021<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>12%<\/strong><\/td><\/tr><tr><td>9<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>455<\/td><td class=\"has-text-align-left\" data-align=\"left\">Change Cipher Spec, Client Hello<\/td><td>0.003<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.002<\/td><td class=\"has-text-align-right\" data-align=\"right\">1%<\/td><\/tr><tr><td>10<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>566<\/td><td class=\"has-text-align-left\" data-align=\"left\">Server Hello, Change Cipher Spec<\/td><td>0.023<\/td><td>0.005<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.019<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>11%<\/strong><\/td><\/tr><tr><td>11<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>1514<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [ACK] Seq=680 Ack=699 Win=29032 Len=1460 [TCP segment of a reassembled PDU]<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>12<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>1514<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [ACK] Seq=2140 Ack=699 Win=29032 Len=1460 [TCP segment of a reassembled PDU]<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>13<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>1514<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [ACK] Seq=3600 Ack=699 Win=29032 Len=1460 [TCP segment of a reassembled PDU]<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>14<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>394<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>15<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>54<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [ACK] Seq=699 Ack=5400 Win=262656 Len=0<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>16<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>112<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.003<\/td><td>0.002<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">1%<\/td><\/tr><tr><td>17<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>133<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>18<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>60<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [ACK] Seq=5400 Ack=836 Win=29032 Len=0<\/td><td>0.018<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.018<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>10%<\/strong><\/td><\/tr><tr><td>19<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>142<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.001<\/td><td>0.008<\/td><td class=\"has-text-align-right\" data-align=\"right\">-0.007<\/td><td class=\"has-text-align-right\" data-align=\"right\">-4%<\/td><\/tr><tr><td>20<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>135<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.006<\/td><td>0.003<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.003<\/td><td class=\"has-text-align-right\" data-align=\"right\">2%<\/td><\/tr><tr><td>21<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>54<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [ACK] Seq=836 Ack=5569 Win=262400 Len=0<\/td><td>0.000<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">-0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>22<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>157<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.005<\/td><td>0.007<\/td><td class=\"has-text-align-right\" data-align=\"right\">-0.002<\/td><td class=\"has-text-align-right\" data-align=\"right\">-1%<\/td><\/tr><tr><td>23<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>179<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.018<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.018<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>10%<\/strong><\/td><\/tr><tr><td>24<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>251<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.011<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.011<\/td><td class=\"has-text-align-right\" data-align=\"right\">6%<\/td><\/tr><tr><td>25<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>147<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.018<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.018<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>11%<\/strong><\/td><\/tr><tr><td>26<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>433<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data, Application Data<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>27<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>98<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>28<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>54<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [ACK] Seq=1136 Ack=6210 Win=261888 Len=0<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>29<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>93<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.001<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>30<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>148<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.020<\/td><td>0.001<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.018<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>11%<\/strong><\/td><\/tr><tr><td>31<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TLSv1.3<\/td><td>98<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>32<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>54<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [ACK] Seq=1175 Ack=6348 Win=261632 Len=0<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>33<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>81<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>34<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TLSv1.3<\/td><td>78<\/td><td class=\"has-text-align-left\" data-align=\"left\">Application Data<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>35<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>54<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [FIN, ACK] Seq=1226 Ack=6348 Win=261632 Len=0<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>36<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>60<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [ACK] Seq=6348 Ack=1226 Win=30104 Len=0<\/td><td>0.019<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.018<\/td><td class=\"has-text-align-right\" data-align=\"right\"><strong>11%<\/strong><\/td><\/tr><tr><td>37<\/td><td class=\"has-text-align-left\" data-align=\"left\">RDS DB<\/td><td>Qlik server<\/td><td>TCP<\/td><td>60<\/td><td class=\"has-text-align-left\" data-align=\"left\">5432 &gt; 58313 [FIN, ACK] Seq=6348 Ack=1227 Win=30104 Len=0<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td>38<\/td><td class=\"has-text-align-left\" data-align=\"left\">Qlik server<\/td><td>RDS DB<\/td><td>TCP<\/td><td>54<\/td><td class=\"has-text-align-left\" data-align=\"left\">58313 &gt; 5432 [ACK] Seq=1227 Ack=6349 Win=261632 Len=0<\/td><td>0.000<\/td><td>0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0.000<\/td><td class=\"has-text-align-right\" data-align=\"right\">0%<\/td><\/tr><tr><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The data from the two captures showed a couple of things:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Firstly, both systems had the same number of events captured by Wireshark.&nbsp; This gives me an indication that there are no networking components from source to destination that is dropping traffic; or doing anything extra unexpected actions to the packet requests.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I cannot say for sure what is happening on the return trip if there is anything timing out from the AWS side back.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Also, when taking the difference between the OnPrem vs the EC2 server I can see the difference of 18ms keep popping up.&nbsp; I believe this is the round trip of the connection.&nbsp; Since this happens multiple times; our latency is compounded into quite a significant value.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What&#8217;s next?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I am not a network engineer, so I do not have the knowledge to dive deeper into the Wireshark packets.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It would be interesting to try the closer AWS data centre to see if the physical distance can help the latency.&nbsp; But to do this will require effort from the cloud team and the project budget wouldn\u2019t extend to this piece of work.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Our other option is to reduce the number of round trips from our OnPrem server to the AWS datacentre as much as possible.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":1247,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[16],"tags":[36,63],"class_list":["post-1388","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-qlik-replicate","tag-qlikreplicate","tag-wireshark"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"jonny.donker@gmail.com\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/craftcookcode.com\/?p=1388\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Craft Cook Code - c^3?\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark! - Craft Cook Code\" \/>\n\t\t<meta property=\"og:description\" content=\"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/craftcookcode.com\/?p=1388\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-05-06T05:13:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-05-06T05:23:06+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark! - Craft Cook Code\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#blogposting\",\"name\":\"Qlik Replicate \\u2013 The saga of replicating to AWS Part 3 \\u2013 Wireshark! - Craft Cook Code\",\"headline\":\"Qlik Replicate \\u2013 The saga of replicating to AWS Part 3 \\u2013 Wireshark!\",\"author\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?author=1#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/craftcookcode.com\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/code_snail.jpg\",\"width\":1266,\"height\":539,\"caption\":\"Illustration: Mal Webster https:\\\/\\\/www.malwebster.com\\\/\"},\"datePublished\":\"2024-05-06T05:13:56+00:00\",\"dateModified\":\"2024-05-06T05:23:06+00:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#webpage\"},\"articleSection\":\"Qlik Replicate, qlikreplicate, wireshark\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/craftcookcode.com\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=13#listItem\",\"name\":\"Code\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=13#listItem\",\"position\":2,\"name\":\"Code\",\"item\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=13\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=16#listItem\",\"name\":\"Qlik Replicate\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=16#listItem\",\"position\":3,\"name\":\"Qlik Replicate\",\"item\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=16\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#listItem\",\"name\":\"Qlik Replicate \\u2013 The saga of replicating to AWS Part 3 \\u2013 Wireshark!\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=13#listItem\",\"name\":\"Code\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#listItem\",\"position\":4,\"name\":\"Qlik Replicate \\u2013 The saga of replicating to AWS Part 3 \\u2013 Wireshark!\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?cat=16#listItem\",\"name\":\"Qlik Replicate\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/#person\",\"name\":\"jonny.donker@gmail.com\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/12ea7810156e378894993fa29611c905482263dd05898a50ae5ece294bb6aff0?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"jonny.donker@gmail.com\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?author=1#author\",\"url\":\"https:\\\/\\\/craftcookcode.com\\\/?author=1\",\"name\":\"jonny.donker@gmail.com\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/12ea7810156e378894993fa29611c905482263dd05898a50ae5ece294bb6aff0?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"jonny.donker@gmail.com\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#webpage\",\"url\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388\",\"name\":\"Qlik Replicate \\u2013 The saga of replicating to AWS Part 3 \\u2013 Wireshark! - Craft Cook Code\",\"description\":\"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\\u2019s Qlik server and the\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?author=1#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?author=1#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/craftcookcode.com\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/code_snail.jpg\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388\\\/#mainImage\",\"width\":1266,\"height\":539,\"caption\":\"Illustration: Mal Webster https:\\\/\\\/www.malwebster.com\\\/\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/?p=1388#mainImage\"},\"datePublished\":\"2024-05-06T05:13:56+00:00\",\"dateModified\":\"2024-05-06T05:23:06+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/#website\",\"url\":\"https:\\\/\\\/craftcookcode.com\\\/\",\"name\":\"Craft Cook Code\",\"description\":\"c^3?\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/craftcookcode.com\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark! - Craft Cook Code","description":"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the","canonical_url":"https:\/\/craftcookcode.com\/?p=1388","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/craftcookcode.com\/?p=1388#blogposting","name":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark! - Craft Cook Code","headline":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark!","author":{"@id":"https:\/\/craftcookcode.com\/?author=1#author"},"publisher":{"@id":"https:\/\/craftcookcode.com\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/craftcookcode.com\/wp-content\/uploads\/2024\/02\/code_snail.jpg","width":1266,"height":539,"caption":"Illustration: Mal Webster https:\/\/www.malwebster.com\/"},"datePublished":"2024-05-06T05:13:56+00:00","dateModified":"2024-05-06T05:23:06+00:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/craftcookcode.com\/?p=1388#webpage"},"isPartOf":{"@id":"https:\/\/craftcookcode.com\/?p=1388#webpage"},"articleSection":"Qlik Replicate, qlikreplicate, wireshark"},{"@type":"BreadcrumbList","@id":"https:\/\/craftcookcode.com\/?p=1388#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/craftcookcode.com#listItem","position":1,"name":"Home","item":"https:\/\/craftcookcode.com","nextItem":{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?cat=13#listItem","name":"Code"}},{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?cat=13#listItem","position":2,"name":"Code","item":"https:\/\/craftcookcode.com\/?cat=13","nextItem":{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?cat=16#listItem","name":"Qlik Replicate"},"previousItem":{"@type":"ListItem","@id":"https:\/\/craftcookcode.com#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?cat=16#listItem","position":3,"name":"Qlik Replicate","item":"https:\/\/craftcookcode.com\/?cat=16","nextItem":{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?p=1388#listItem","name":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark!"},"previousItem":{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?cat=13#listItem","name":"Code"}},{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?p=1388#listItem","position":4,"name":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark!","previousItem":{"@type":"ListItem","@id":"https:\/\/craftcookcode.com\/?cat=16#listItem","name":"Qlik Replicate"}}]},{"@type":"Person","@id":"https:\/\/craftcookcode.com\/#person","name":"jonny.donker@gmail.com","image":{"@type":"ImageObject","@id":"https:\/\/craftcookcode.com\/?p=1388#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/12ea7810156e378894993fa29611c905482263dd05898a50ae5ece294bb6aff0?s=96&d=mm&r=g","width":96,"height":96,"caption":"jonny.donker@gmail.com"}},{"@type":"Person","@id":"https:\/\/craftcookcode.com\/?author=1#author","url":"https:\/\/craftcookcode.com\/?author=1","name":"jonny.donker@gmail.com","image":{"@type":"ImageObject","@id":"https:\/\/craftcookcode.com\/?p=1388#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/12ea7810156e378894993fa29611c905482263dd05898a50ae5ece294bb6aff0?s=96&d=mm&r=g","width":96,"height":96,"caption":"jonny.donker@gmail.com"}},{"@type":"WebPage","@id":"https:\/\/craftcookcode.com\/?p=1388#webpage","url":"https:\/\/craftcookcode.com\/?p=1388","name":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark! - Craft Cook Code","description":"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/craftcookcode.com\/#website"},"breadcrumb":{"@id":"https:\/\/craftcookcode.com\/?p=1388#breadcrumblist"},"author":{"@id":"https:\/\/craftcookcode.com\/?author=1#author"},"creator":{"@id":"https:\/\/craftcookcode.com\/?author=1#author"},"image":{"@type":"ImageObject","url":"https:\/\/craftcookcode.com\/wp-content\/uploads\/2024\/02\/code_snail.jpg","@id":"https:\/\/craftcookcode.com\/?p=1388\/#mainImage","width":1266,"height":539,"caption":"Illustration: Mal Webster https:\/\/www.malwebster.com\/"},"primaryImageOfPage":{"@id":"https:\/\/craftcookcode.com\/?p=1388#mainImage"},"datePublished":"2024-05-06T05:13:56+00:00","dateModified":"2024-05-06T05:23:06+00:00"},{"@type":"WebSite","@id":"https:\/\/craftcookcode.com\/#website","url":"https:\/\/craftcookcode.com\/","name":"Craft Cook Code","description":"c^3?","inLanguage":"en-US","publisher":{"@id":"https:\/\/craftcookcode.com\/#person"}}]},"og:locale":"en_US","og:site_name":"Craft Cook Code - c^3?","og:type":"article","og:title":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark! - Craft Cook Code","og:description":"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the","og:url":"https:\/\/craftcookcode.com\/?p=1388","article:published_time":"2024-05-06T05:13:56+00:00","article:modified_time":"2024-05-06T05:23:06+00:00","twitter:card":"summary_large_image","twitter:title":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark! - Craft Cook Code","twitter:description":"Continuing on the story After concluding that the low TPS is not resulting from poor query performance; our attention was turned to the network latency between our OnPrem Qlik system and the AWS RDS database. First, I asked the networks team if there were any suspect networking components between our on-premise\u2019s Qlik server and the"},"aioseo_meta_data":{"post_id":"1388","title":null,"description":null,"keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2024-05-06 03:38:27","updated":"2025-06-04 13:22:08","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/craftcookcode.com\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/craftcookcode.com\/?cat=13\" title=\"Code\">Code<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/craftcookcode.com\/?cat=16\" title=\"Qlik Replicate\">Qlik Replicate<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tQlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark!\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/craftcookcode.com"},{"label":"Code","link":"https:\/\/craftcookcode.com\/?cat=13"},{"label":"Qlik Replicate","link":"https:\/\/craftcookcode.com\/?cat=16"},{"label":"Qlik Replicate \u2013 The saga of replicating to AWS Part 3 \u2013 Wireshark!","link":"https:\/\/craftcookcode.com\/?p=1388"}],"_links":{"self":[{"href":"https:\/\/craftcookcode.com\/index.php?rest_route=\/wp\/v2\/posts\/1388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/craftcookcode.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/craftcookcode.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/craftcookcode.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/craftcookcode.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1388"}],"version-history":[{"count":7,"href":"https:\/\/craftcookcode.com\/index.php?rest_route=\/wp\/v2\/posts\/1388\/revisions"}],"predecessor-version":[{"id":1399,"href":"https:\/\/craftcookcode.com\/index.php?rest_route=\/wp\/v2\/posts\/1388\/revisions\/1399"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/craftcookcode.com\/index.php?rest_route=\/wp\/v2\/media\/1247"}],"wp:attachment":[{"href":"https:\/\/craftcookcode.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1388"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/craftcookcode.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1388"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/craftcookcode.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}