[ CnUnix ] in KIDS ±Û ¾´ ÀÌ(By): whbear (¼­º´±¹) ³¯ Â¥ (Date): 2002³â 3¿ù 29ÀÏ ±Ý¿äÀÏ ¿ÀÈÄ 11½Ã 19ºÐ 01ÃÊ Á¦ ¸ñ(Title): [Q] TCP/IP flow TCP/IP ¿¡ ´ëÇÑ Áú¹®ÀÔ´Ï´Ù. Ŭ¶óÀ̾ðÆ® ¹× ¼­¹öÀÇ OS´Â Solaris 2.6 ÀÔ´Ï´Ù. Client/Server°£ÀÇ ³×Æ®¿÷¿¡¼­ ´ÙÀ½°ú °°Àº ¿¡·¯°¡ ¹ß»ýÇؼ­ ¿©Âã´Ï´Ù. ´ÙÀ½Àº C/S °£ÀÇ flow ÀÔ´Ï´Ù. (¿¬°á ½ÃÀÛ) .... 1. S->C D=1186 S=4511 ACK=7429 Seq=6991 Len=208, Win=64240 2. C->S D=4511 S=1186 ACK=7199 Seq=7429 Len=0 Win=64240 .... C°¡ ´Ù¸¥ °÷°ú ±³½ÅÇÏ´À¶ó S¿Í´Â ¾à 1ºÐ 30ÃÊ°£ ½® µÚ ´Ù½Ã µ¥ÀÌŸ Àü¼ÛÇÏ·Á ÇÔ. .... 3. C->S D=4511 S=1186 SYN Seq=21030 Len=0 Win=64240 4. S->C D=1186 S=4511 ACK=7429 Len=0 Win=64240 5. C->S D=4511 S=1186 SYN Seq=21030 Len=0 Win=64240 6. S->C D=1186 S=4511 ACK=7429 Len=0 Win=64240 6. C->S D=4511 S=1186 RST Win=0 ... 1-2¸¦ ÅëÇØ 1Â÷ÀûÀÎ C/S°£ÀÇ µ¥ÀÌŸ ±³È¯Àº ³¡³³´Ï´Ù. ÀÌÈÄ C´Â ´Ù¸¥ °÷°ú ³×Æ®¿÷ Åë½Å ÀÌÈÄ ±×°÷¿¡¼­ ¹ÞÀº µ¥ÀÌŸ¸¦ S¿¡ Àü´ÞÇÏ·Á 3. ½ÃÁ¡¿¡¼­ ¹«¾ð°¡ ÇØ¾ß ÇÏÁö¸¸ ¾û¶×ÇÏ°Ô 'SYN'ÀÌ ¹ß¼Û µË´Ï´Ù. 4.¿¡¼­ ¼­¹ö´Â 3¿¡ ´ëÇÑ reply°¡ ¾Æ´Ñ 2.¹øÀÇ Seq ¹øÈ£¿¡ ´ëÇÑ ACKÀ» ³¯¸®±¸¿ä. ÀÌ ¾î±ß³²ÀÌ ¼­·Î °è¼Ó ¹Ýº¹µÇ´Ù°¡ ³¡³» Ŭ¶óÀ̾ðÆ®´Â RST¸¦ ³¯¸®°í Á×Áö¸¸ ¼­¹ö´Â ¶Ç ±×°ÍÀ» ÀÌÇظøÇØ °è¼Ó ¼¼¼ÇÀ» »ì¸®´Â »óÅ°¡ µË´Ï´Ù. °á°úÀûÀ¸·Î ¼­¹ö´Â idleÇÑ ESTABLISHEDµÇ¾î ÀÖ´Â ¼¼¼ÇÀ» ¸¹ÀÌ À¯ÁöÇÔÀ¸·Î½á ÀÚ¿ø ³¶ºñ¸¦ ÇÏ°í ÀÖ´Â Á¡ÀÌ ¹®Á¦ ÀÔ´Ï´Ù. ±Ã±ÝÇÑ Á¡Àº: 1. 'SYN'Àº Ãʱ⠿¬°á ¸ÎÀ» ¶§ 3-handshaking¿¡¼­¸¸ »ç¿ëµÇ´Â °Í ¾Æ´Ñ°¡¿ä? C°¡ 3´Ü°è¿¡¼­ ¿¬°áÀ» ´Ù½Ã ¸ÎÀ¸·Á ÇÏ´Â °Íµµ ¾Æ´Ï¸é¼­(¼Ò½º Æ÷Æ®°¡ ÀÌÀü°ú µ¿ÀÏÇÕ´Ï´Ù.) SYNÀ» ¿Ö ³¯¸®´ÂÁö ¸ð¸£°Ú½À´Ï´Ù. ÀÌ·± °ÍÀÌ TCP/IP °¡´ÉÇÏ´Ù¸é ¾î¶² ½ÄÀ¸·Î codingÇÏ¸é °¡´ÉÇÑ ÀÏÀϱî¿ä? 2. ¼­¹öÀÇ setsockopt¿¡ TCP_KEEPALIVE ¸¦ ÁÖ¸é Ŭ¶óÀ̾ðÆ®°¡ ¾î¶² ¹ÌÄ£ÁþÀ» Çصµ Àú·± idleÇÑ sessionÀº »ý±âÁö ¾ÊÀ»·±Áö. ndd¿¡ tcp_keepalive_intervalÀÌ ÀÖ´øµ¥ ±×°É ÀÌ¿ëÇÏ¸é ±»ÀÌ ¼ÒÇÁÆ®¿þ¾î¿¡ ¼ÕÀ» ´ëÁö ¾Ê¾Æµµ µ¿ÀÏÇÑ È¿°ú¸¦ ¾òÀ» ¼ö ÀÖÀ»±î¿ä? 3. µ¿ÀÏÇÑ ¼­¹ö¿¡ Á¢¼ÓÇÏ´Â ´Ù¸¥ ȸ»çÀÇ Å¬¶óÀ̾ðÆ®´Â ¹®Á¦°¡ »ý±âÁö ¾Ê´Â´Ù°í Çؼ­ ±× ÂÊ flow¸¦ ºÃ´õ´Ï window size°¡ Çϳª°°ÀÌ ´Ù 8760ÀÌ´õ±º¿ä. ÀÌÂÊ °ÍÀº 64240Àε¥. ÀÌ·± °Íµµ °ü·ÃÀÌ ÀÖÀ» ¼ö ÀÖÀ»±î¿ä? ¸¸ÀÏ window size¸¦ º¯°æÇÏ·Á ÇÑ´Ù¸é... À¸... ndd parameter´Â ¾Æ¹«¸® ºÁµµ °¨ÀÌ ¾È¿À°í, setsockopt¿¡¼­ SO_RECVBUF¸¦ º¯°æÇÏ¸é µÉ °Í °°Àºµ¥. ÀÌ °ªÀÌ ¿ô±â°Ôµµ optval=1460 À¸·Î ÇÏ¸é ½ÇÁ¦·Î´Â 5840, optval=1460*5 ÇÏ¸é ½ÇÁ¦·Î 8760ÀÌ µÇ´Âµ¥ ÀÌÀ¯¸¦ ¸ð¸£°Ú³×¿ä. µµ¿ò Á» ÁÖ¼¼¿ä~ [ CnUnix ] in KIDS ±Û ¾´ ÀÌ(By): belami (__Ä¿ÇÇ__) ³¯ Â¥ (Date): 2002³â 3¿ù 29ÀÏ ±Ý¿äÀÏ ¿ÀÈÄ 11½Ã 37ºÐ 18ÃÊ Á¦ ¸ñ(Title): Re: [Q] TCP/IP flow À½ ±ÛÀ» ÀÐ°í ±Ã±ÝÇÏ¿© ã¾Æº¸¾Ò´õ´Ï Windows 2000ÀÇ TCP Windows Size°¡ 64240 ÀÌ»óÀÏ °æ¿ì ¹®Á¦°¡ ÀÖ´Ù´Â ±ÛÀÌ Àֳ׿ä (Microsoft KB) ¾Æ·¡ ±ÛÀÌ °ü·ÃÀÌ ÀÖ´Â °ÍÀÌ ¾Æ´ÒÁö... http://support.microsoft.com/default.aspx?scid=kb;EN-US;q263088 [ CnUnix ] in KIDS ±Û ¾´ ÀÌ(By): whbear (¼­º´±¹) ³¯ Â¥ (Date): 2002³â 3¿ù 30ÀÏ Åä¿äÀÏ ¿ÀÀü 11½Ã 01ºÐ 56ÃÊ Á¦ ¸ñ(Title): Re: [Q] TCP/IP flow ´äº¯ °¨»çµå¸³´Ï´Ù. ±Ùµ¥ Ŭ¶óÀ̾ðÆ® ¿ª½Ã Solaris 2.6 ÀÔ´Ï´Ù. ±×·¡µµ 64240 À̶ó´Â ¼ýÀÚ°¡ ¿ØÁö ¹ü»óÄ¡ ¾ÊÀº ¼ýÀÚ ÀÏ °Í °°Àº ¿¹°¨ÀÌ... Á¤¸» ¹æµµ°¡ ¾ø³×¿ä. [ CnUnix ] in KIDS ±Û ¾´ ÀÌ(By): terzeron (microkid) ³¯ Â¥ (Date): 2002³â 3¿ù 30ÀÏ Åä¿äÀÏ ¿ÀÈÄ 12½Ã 03ºÐ 33ÃÊ Á¦ ¸ñ(Title): Re: [Q] TCP/IP flow 1. 'SYN'Àº Ãʱ⠿¬°á ¸ÎÀ» ¶§ 3-handshaking¿¡¼­¸¸ »ç¿ëµÇ´Â °Í ¾Æ´Ñ°¡¿ä? C°¡ 3´Ü°è¿¡¼­ ¿¬°áÀ» ´Ù½Ã ¸ÎÀ¸·Á ÇÏ´Â °Íµµ ¾Æ´Ï¸é¼­(¼Ò½º Æ÷Æ®°¡ ÀÌÀü°ú µ¿ÀÏÇÕ´Ï´Ù.) SYNÀ» ¿Ö ³¯¸®´ÂÁö ¸ð¸£°Ú½À´Ï´Ù. ÀÌ·± °ÍÀÌ TCP/IP °¡´ÉÇÏ´Ù¸é ¾î¶² ½ÄÀ¸·Î codingÇÏ¸é °¡´ÉÇÑ ÀÏÀϱî¿ä? ´ëºÎºÐÀº ¸»¾¸ÇϽŠ°Íó·³ openÀ» ÇÒ ¶§, sender¿Í receiver°¡ °¢°¢ ù¹ø° ¼¼±×¸ÕÆ®¿¡ '³­ Áö±Ý ½ÃÀÛÇÑ´Ù!'¶ó´Â Àǹ̷ΠSYNÀ» ÄѼ­ º¸³À´Ï´Ù. ÀÌ¹Ì ¿¬°áÀÌ ²÷¾îÁø »óÅ¿¡¼­ ´Ù½Ã °°Àº ¿¬°á Á¤º¸(TAO ij½Ã°°Àº)¸¦ °¡Áö°í ºü¸£°Ô À翬°áÀ» ½ÃµµÇÒ ¶§¿¡µµ SYNÀ» ¾µ ¼ö ÀÖ°ÚÁÒ. »ç½Ç TCP ±¸Çö¸¶´Ù ¾î¶»°Ô ¾²´À³Ä¿¡ ´Þ·È´Ù°íµµ º¼ ¼ö Àִµ¥(ÀÀ¿ëÀ̳ª ²Ç¼ö·Î SYNÀ» »ç¿ë) ¾Æ¸¶ ¿¬°áÀÌ ²÷¾îÁ®¼­ À翬°áÀ» ÇÏ·Á´Â °Ô ¾Æ´Ñ°¡ ÁüÀÛµÉ µû¸§ÀÔ´Ï´Ù. 2. ¼­¹öÀÇ setsockopt¿¡ TCP_KEEPALIVE ¸¦ ÁÖ¸é Ŭ¶óÀ̾ðÆ®°¡ ¾î¶² ¹ÌÄ£ÁþÀ» Çصµ Àú·± idleÇÑ sessionÀº »ý±âÁö ¾ÊÀ»·±Áö. ndd¿¡ tcp_keepalive_intervalÀÌ ÀÖ´øµ¥ ±×°É ÀÌ¿ëÇÏ¸é ±»ÀÌ ¼ÒÇÁÆ®¿þ¾î¿¡ ¼ÕÀ» ´ëÁö ¾Ê¾Æµµ µ¿ÀÏÇÑ È¿°ú¸¦ ¾òÀ» ¼ö ÀÖÀ»±î¿ä? ¼ÒÄÏ¿¡µµ ±×·± ¿É¼Ç(SO_KEEPALIVE)ÀÌ ÀÖ½À´Ï´Ù¸¸ ÀÌ°ÍÀº Åë»ó 2½Ã°£ µ¿¾È µ¥ÀÌÅÍ ±³È¯ÀÌ ¾øÀ» ¶§¿¡³ª Àǹ̰¡ ÀÖ½À´Ï´Ù. ±×¸®°í Á¤¸» idleÇÑ sessionÀÌ À¯ÁöµÇµµ·Ï ÀϺη¯ ¸¸µé·Á°í ÇÒ ¶§¿¡ ÇÊ¿äÇÏ°ÚÁÒ. 3. µ¿ÀÏÇÑ ¼­¹ö¿¡ Á¢¼ÓÇÏ´Â ´Ù¸¥ ȸ»çÀÇ Å¬¶óÀ̾ðÆ®´Â ¹®Á¦°¡ »ý±âÁö ¾Ê´Â´Ù°í Çؼ­ ±× ÂÊ flow¸¦ ºÃ´õ´Ï window size°¡ Çϳª°°ÀÌ ´Ù 8760ÀÌ´õ±º¿ä. ÀÌÂÊ °ÍÀº 64240Àε¥. ÀÌ·± °Íµµ °ü·ÃÀÌ ÀÖÀ» ¼ö ÀÖÀ»±î¿ä? ¸¸ÀÏ window size¸¦ º¯°æÇÏ·Á ÇÑ´Ù¸é... À¸... ndd parameter´Â ¾Æ¹«¸® ºÁµµ °¨ÀÌ ¾È¿À°í, setsockopt¿¡¼­ SO_RECVBUF¸¦ º¯°æÇÏ¸é µÉ °Í °°Àºµ¥. ÀÌ °ªÀÌ ¿ô±â°Ôµµ optval=1460 À¸·Î ÇÏ¸é ½ÇÁ¦·Î´Â 5840, optval=1460*5 ÇÏ¸é ½ÇÁ¦·Î 8760ÀÌ µÇ´Âµ¥ ÀÌÀ¯¸¦ ¸ð¸£°Ú³×¿ä. window size´Â TCP°¡ µ¿ÀûÀ¸·Î º¯È­½Ãų ¼ö Àֱ⠶§¹®¿¡ ´Ù¸¥ Ŭ¶óÀ̾ðÆ®¿ÍÀÇ »óÅ°¡ ´Ù¸£´Ù°í ¹®Á¦°¡ µÉ °Í °°Áö´Â ¾Ê½À´Ï´Ù. ¹°·Ð À§ÀÇ windows-based platform¿¡¼­ÀÇ ¹ö±×´Â ´Ù¸¥ À̾߱âÁö¸¸¿ä. SO_RCVBUF¸¦ º¯°æÇÑ´Ù°í ÇÏ´õ¶óµµ Ä¿³ÎÀÌ °¡Áö°í ÀÖ´Â min, max°ªÀÌ ÀÖÀ» °ÍÀ̹ǷΠ¿©±â¿¡ ¸ÂÃß°ÚÁÒ. À̰͵µ Ä¿³ÎÀÇ ±¸Çö¿¡ µû¶ó ´Ù¸¦ ¼ö ÀÖ°Ú½À´Ï´Ù. °á±¹ ¹®Á¦´Â Ä¿³Î¿¡¼­ ºñ·ÔµÈ °ÍÀÌ ¾Æ´Ï¶ó ¼ÒÄÏÇÁ·Î±×·¡¹Ö¿¡ ¼û¾îÀÖ´Â °ÍÀÌ ¾Æ´Ò±î ½Í½À´Ï´Ù. Ä¿³ÎÀ» ÀǽÉÇÏ¸é ¹¹ ¹Ï°í ÇÒ ¼ö ÀÖ´Â °Ô ¾ø´Â °ÅÁÒ. °Ô´Ù°¡ À¯´Ð½º Áß¿¡¼­µµ »ó´çÈ÷ '³ªÀ̽º'ÇÏ°í '±×·¹À̽ºÇ®'ÇÑ ¼Ö¶ó¸®½º¸¦ ÀǽÉÇÑ´Ù¸é¾ß ´õ¿í ´õ... ^^ ¿¬°áÀ» µÎ °³ ¿­¾î¼­ ÀÛ¾÷À» ÇϽô °Í °°Àºµ¥, µÎ ¿¬°áÀ» À§ÇÑ ¼³Á¤À̳ª µ¥ÀÌÅÍ, ¶Ç´Â ÇÔ¼ö »ç¿ë ¹æ¹ý¿¡ ¹®Á¦°¡ ÀÖ´Â °Í ¾Æ´Ò±î¿ä? [ CnUnix ] in KIDS ±Û ¾´ ÀÌ(By): ahmlhs (_¿ÕÀÏ) ³¯ Â¥ (Date): 2002³â 3¿ù 30ÀÏ Åä¿äÀÏ ¿ÀÈÄ 03½Ã 19ºÐ 08ÃÊ Á¦ ¸ñ(Title): Re: [Q] TCP/IP flow Ȥ½Ã ¸ð¸£´Ï±ñ Solaris 2.6 Patch¸¦ Çѹø µÚÁ®º¸½ÃÁÒ?