![](../data/file/QnA/2207/1657157936_J6hBbf5g_B7B1C4C4B9AEC0C7.png)
160;
타 업체와 서비스 연ᇼ1; 1473; 요청 실패가 많다lj16; 문1032;를 0155;아 tcpdump Ȣ16;여 해NJ17; IP만 /196;ƾ13;Ȣ16;였lj16;데 첨ǥ12; 파1068;1012; 보시면 Retransmission 너무 많1060; 0156;견.104;Ǻ12; 문1032; 글 올리,172; .104;었습니다.
타 업체/196;ǥ12;터 2초 1060;상 1025;NJ13;1060; 없1012; ᅆ1;우 1200;7148; 1901; 요청1012; 1473;단Ȣ16;였고 그 실패율1060; 60%1221;도 라고 Ȣ16;여 Retransmission 만 필터링 해서 보니 대략 수량1060; 맞lj16; ,163; 같습니다.
대ǥ12;ǥ16; SYN 시 tcp 포트를 1116;사용 Ȣ16;였고 1060;후 160;RTO 1초가 1648;나면 요청 패ᓟ1;1008; 버/140;1648;lj16; ,163;1064;가요 새/196;운 seq 번호/196; 1116;요청1060; .104;나요? (TCP Retransmission 1032; seq_raw 다1020; 번호(+1)/196; ,160;색했1012; ᅆ1;우 나오1648; 않았습니다.)
아래lj16; sysctl 구성1077;니다.
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_rmem = 8192 87380 8388608
net.ipv4.tcp_wmem = 8192 87380 8388608
net.ipv4.tcp_timestamps = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
fs.file-max = 360000
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.tcp_keepalive_probes = 5
netstat -nao | grep "TIME_WAIT" | wc -l => 1500 ~ 2000160;
ss -t | wc -l => 10000 ~ 12000
Retransmission 1012; 1460;1068; 수 1080;lj16; 0169;법1060; 1080;1012;까요?
1312;Ǻ16; ǥ12;ᓠ1;드립니다.
감사합니다.
ÆÐŶ ·Î½º°¡ ³ª¸é Çϵå¿þ¾î ºÒ·®ÀÌ ´ëºÎºÐÀ̶ó°í »ý°¢ÇÕ´Ï´Ù..
ÆÐŶ ·Î½º°¡ ³ª´Â ±¸°£ÀÇ Àåºñ ¸ðµ¨ /ÄÉÀÌºí ¿¬°á¹æ¹ý /°Å¸® /¼ÂÆà »óÅ µîÀº ¾î¶°ÇÑ°¡¿ä??
±×¸®°í Àåºñ´Â ´ë·« ¸î ³â µÈ °ÍµéÀΰ¡¿ä??
¾Æ¸¶ IDC ³ª AWS °°À» °É ¾²°í ÀÖÀ»ÅÙµ¥ ÀÌ °æ¿ì Çϵå¿þ¾î ºÒ·®À̶ó°í º¸±ä ¾î·Æ½À´Ï´Ù..
+1 ÇßÀ» ¶§ seq °ªÀÌ ³ª¿ÀÁö ¾Ê´Â °Ç Ŭ¶óÀ̾ðÆ® ÂÊ¿¡¼ active close Çؼ ±×·± °É·Î ÃßÁ¤µË´Ï´Ù. ±×·¯´Ï±î °è¼Ó »õ·Î¿î seq°¡ Àç¿äûµÇ°í ÀÖ´Â »óÅÂÀΰÅÁÒ.
°è¼Ó »õ·Î¿î ¼¼¼ÇÀ» ¸¸µå´Ï±î Çڵ彦ÀÌÅ©¿¡¼ 1ÃÊ ³Ñ±âµµ ÇÏ°í ¾È ³Ñ±âµµ Çϴµ¥ ±×·¯¸é ·Î½ºÀ²ÀÌ 60ÆÛ³ª µÇ´Â°Ô ¼³¸íµË´Ï´Ù.
¿¬µ¿ÇÑ ¼ºñ½º°¡ ¾î¶² ¾îÇø®ÄÉÀ̼ÇÀÎÁö´Â ¸ð¸£°ÚÁö¸¸ Ÿ ¾÷ü·ÎºÎÅÍ 2ÃÊ ÀÌ»ó ÀÀ´äÀÌ ¾øÀ» °æ¿ì ÀúÈñ ÂÊ ¿äûÀ» Áß´ÜÇÏ¿´´Ù¶ó´Â ¸»·Î º¸¾ÒÀ» ¶§ Á¦°¡ º¸±â¿£ ¾÷ü Âʵµ Æ©´×ÀÌ ÇÊ¿äÇÒ °Í °°½À´Ï´Ù.
´ë»óÀÌ À¥ ¼ºñ½º°¡ ¾Æ´Ï¶ó Ÿ ¾÷üÀÇ ¼ºñ½ºÀÎ °æ¿ì ¾çÂÊ¿¡¼ Æ©´×À» Àß ÇØÁà¾ß ÇÕ´Ï´Ù.
TIME_WAIT ¼ö°¡ ¸¹±ä Çѵ¥ Listen¸¸ ÇÏ´Â ¼¹ö°¡ Àú Á¤µµ °³¼ö·Î ÆÐŶ·Î½ºÀ²ÀÌ 60ÆÛ³ª µÉ Á¤µµ·Î ¼º´É¿¡ ÁöÀåÀ» ÁÖÁø ¾Ê½À´Ï´Ù.
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_tw_reuse = 1 ¿¡´Ù
net.ipv4.tcp_tw_recycle = 1 À» Ãß°¡Çϸé TIME_WAIT ¼ÒÄÏ ¼ö´Â ÁÙ°ÚÁö¸¸ ÆÐŶ·Î½º´Â ¿©ÀüÇÒ °Ì´Ï´Ù.
ÀÏ´Ü RTO¸¦ 2ÃÊ·Î ´Ã¸®¸é ÇØ°áÀº µÉ °Ì´Ï´Ù. ±Ùµ¥ ¾÷ü ÂÊ ¼¹öµµ TIME_WAIT ÀÌ »ó´ç ÇÒ ÅÙµ¥ Àß ¸»Çؼ ¾çÂÊ¿¡¼ Æ©´×ÇÏ´Â°Ô Á¦ÀÏ ¼Õ½ÇÀ» ÁÙÀÌ°í È¿À²ÀûÀÔ´Ï´Ù.
»ó´ë ÂÊ¿¡ ¸»Çغ¸°í ±×°Ô Àß ¾È µÈ´Ù¸é net.ipv4.tcp_tw_recycle = 2 InitRTO 2ÃÊ·Î ¸ÂÃçÁÖ½É µË´Ï´Ù..
¹ö·ÁÁö´Â ¼¼¼ÇÀÌ °¡´ÉÇÑ ¾ø´Â °Ô ÁÁ±äÇÕ´Ï´Ù..
sysctl -a | grep rto
net.ipv4.tcp_frto = 2
net.ipv4.tcp_frto_response = 0
rto °ü·Ã º¯¼ö´Â 2°³ ¹Û¿¡ º¸ÀÌÁú ¾Ê³×¿ä..
¹Ú¹®Çü´Ô ´ä±Û°ú °°ÀÌ ¾ç ³¡´Ü ¼¹ö »çÀÌÀÇ ¾îµò°¡¿¡¼ ÆÐŶ ¼Õ½ÇÀÌ ¹ß»ýÇÏ°í ÀÖ½À´Ï´Ù.
½ºÀ§Ä¡, ¹æȺ®, ¶ó¿ìÅÍ, ·£ÄÉÀÌºí µî ÆÐŶ À¯½ÇÀ» ¹ß»ý½Ãų ¼ö ÀÖ´Â Àåºñ´Â ³Ê¹« ´Ù¾çÇÕ´Ï´Ù.
Áø´ÜÇÏ´Â °¡Àå ½¬¿î ¹æ¹ýÀº traceroute ¸í·ÉÀ» »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ¶ó¿ìÅÍ ±âÁØ ±¸°£º°·Î ¾î´À ±¸°£¿¡¼ ¹®Á¦°¡ »ý±â´ÂÁö¸¦ ¾Ë·ÁÁÝ´Ï´Ù. ¹®Á¦ ±¸°£ÀÌ ½Äº°µÇ¸é ±× ±¸°£ ´ã´çÀÚ¿¡°Ô Á¶Ä¡ ¿äûÇϼ¼¿ä.
±¸±Û °Ë»öÇϸé ÀÚ·á°¡ ¸¹ÀÌ ÀÖÀ¸´Ï »ç¿ëÇغ¸¼¼¿ä.