À¥¿¡¼­ÀÇ ¼º´É °³¼±

±è ¿ë ¿î
´ëÀü±¤¿ª½Ã À¯¼º±¸ °¡Á¤µ¿ 161
Çѱ¹ÀüÀÚÅë½Å¿¬±¸¿ø(ETRI)
E-mail : qkim@pec.etri.re.kr
URL : http://pec.etri.re.kr/~qkim/

Abstract:
WWW(World Wide Web)À» ȤÀÚµéÀº World Wide WaitingÀÌ¶ó ¸»Çϱ⵵ ÇÒ Á¤µµ·Î ÇöÀçÀÇ À¥ »ó¿¡¼­ ´À³¢´Â ´ÊÀº ÀÀ´äÀº »ç¿ëÀڵ鿡°Ô ¸¹Àº Â¥ÁõÀ» ÁÖ¾î ¿Ô´Ù. »ç½Ç»ó Àü¼Û¼Óµµ ¹®Á¦´Â »ç¿ëÀڵ鿡°Ô °¡Àå Á÷Á¢ÀûÀ¸·Î ´À²¸Áö´Â °ÍÀ̸ç, ÇϳªÀÇ È¨ÆäÀÌÁö È­ÀÏ¿¡ ÇÔ²² Á¸ÀçÇÏ´Â ¿©·¯ °¡Áö ±×¸² È­ÀÏÀ» Á¦´ë·Î º¸¿©ÁÖ±â±îÁö °É¸®´Â ½Ã°£ Áö¿¬¿¡ ´ëÇÑ »ç¿ëÀÚµéÀÇ Áö·çÇÔÀ̳ª ºÒ¸¸Àº ¹Î°¨ÇÑ ÁÖÁ¦ÀÌ´Ù. ±×·¡¼­ ±×¸² È­ÀÏÀÇ ÇØ»óµµ³ª Å©±â¸¦ ÁÙÀÓÀ¸·Î¼­ ±×¸² È­ÀÏÀÇ µ¥ÀÌŸ Å©±â¸¦ ÁÙÀ̵µ·Ï ÇÏ´Â °ÍÀº ¼­ºñ½º Á¦°øÀÚ°¡ »ç¿ëÀÚ¿¡°Ô Á¦°øÇÏ´Â ÇϳªÀÇ ³ÝƼÄÏÀ¸·Î Á¤ÀǵDZ⵵ ÇÏ¿´´Ù. ÀÌ·¯ÇÑ ´ÊÀº ÀÀ´ä ¼Óµµ¿¡ ´ëÇÑ ¿øÀÎÀ» »ç¿ëÇϰí ÀÖ´Â Åë½Å¸ÁÀÇ Àü¼Û´É·Â ÇÑ°è ¹× ¼ö¸¹Àº »ç¿ëÀڵ鿡 ÀÇÇÑ Æ®·¡ÇÈÀÇ °ú´Ù µîÀ¸·Î ¼³¸íÇØ ¿ÔÀ¸³ª, ÃÖ±ÙÀÇ ¿¬±¸ °á°ú¿¡ µû¸£¸é À¥ÀÇ ±Ùº»Àû ¼³°è ±¸Á¶ÀÇ ¹®Á¦°¡ ÀÌ »óȲÀ» ¾ÇÈ­½ÃŰ´Â µ¥¿¡ ÀÏÁ¶ÇÏ¿´´Ù´Â ºÐ¼®ÀÌ ³ª¿Ô´Ù. ÀÌó·³ À¥¿¡¼­ÀÇ ¼º´É ¹®Á¦´Â À¥ »ç¿ëÀÚ°¡ ´Ã¾î³¯¼ö·Ï ´õ¿í ¹Î°¨Çϰí Áß¿äÇÑ ¹®Á¦°¡ µÇ°í ÀÖÀ¸¸ç, ¿©±â¼­´Â À¥¿¡¼­ÀÇ ¼º´ÉÀ» Çâ»ó½Ãų ¼ö ÀÖ´Â ´Ù¾çÇÑ ¹æ¹ýµé¿¡ ´ëÇØ »ìÆìº¸°íÀÚ ÇÑ´Ù.
Keywords:
WWW, À¥¼º´É, ¼º´ÉºÐ¼®, ÆÄÀÌÇÁ¶óÀÎ, PNG, CSS1


1. ¼­·Ð

À¥À» ÀÌ¿ëÇÏ´Â »ç¿ëÀÚÀÇ Ã³Áö¿¡¼­´Â ¼­¹ö·ÎºÎÅÍ ¿øÇÏ´Â ¹®¼­¿Í Á¤º¸¸¦ °¡Á®¿Ã ¶§ Á» ´õ ÁÁÀº ¼º´ÉÀ¸·Î ÀÌ¿ëÇßÀ¸¸é ÇÏ´Â ¹Ù·¥À» ´©±¸³ª °¡Áú °ÍÀÌ´Ù. ÁÁÀº ¼º´ÉÀ̶ó ÇÔÀº ¾Æ·¡¿Í °°Àº ´Ù¾çÇÑ ¿ä¼ÒµéÀ» Æ÷ÇÔÇϰí ÀÖ´Â °ÍÀÌ´Ù.

ÀÌ¿ëÀÚ ÄÄÇ»ÅÍÀÇ Çϵå¿þ¾î ½Ã½ºÅÛ
ÀÌ¿ëÀÚ°¡ ¾²°í ÀÖ´Â ÄÄÇ»ÅÍÀÇ Çϵå¿þ¾îÀÇ ºÎºÐº° ¼öÁØÀÌ ¼º´É Çâ»óÀ» À§ÇÑ Á¡°Ë ¿ä¼Ò°¡ µÈ´Ù. ÄÄÇ»ÅÍÀÇ CPU Á¾·ù, ³»ºÎ µ¥ÀÌŸ ¹ö½ºÀÇ Àü¼Û ¼Óµµ, I/O ¼Óµµ, ºñµð¿À º¸µå, RAM ¿ë·® µî°ú °°Àº Çϵå¿þ¾îÀûÀÎ Á¡°Ë ¿ä¼Ò°¡ ÀÖÀ¸¸ç, °¢°¢ÀÇ ¿ä¼Ò »çÀÌ¿¡ Á߿䵵ÀÇ Â÷ÀÌ´Â ÀÖÀ¸³ª Á¾ÇÕÀûÀÎ °áÇÕÀÌ Àüü ¼º´ÉÀ» Á¿ìÇϰí ÀÖ´Ù.

ÀÌ¿ëÀÚ°¡ Ȱ¿ëÇÏ´Â ¼ÒÇÁÆ®¿þ¾îÀÇ Á¾·ù
À¥ ºê¶ó¿ìÀúÀÇ Á¾·ù¿¡ µû¸¥ ¼º´É Â÷ÀÌ, ºê¶ó¿ìÀúÀÇ È¯°æ ¼³Á¤¿¡ ÁöÁ¤Çϴ ij½Ã ¿ë·®, TCPÀÇ µ¿½Ã ¿¬°á °¹¼ö, TCPÀÇ »ó½Ã ¿¬°á ±â´É, ÀûÀýÇÑ ÇÁ¶ô½Ã ¼­¹öÀÇ È°¿ë ¿©ºÎ µî°ú °°Àº ¼ÒÇÁÆ®¿þ¾îÀûÀÎ Á¡°Ë ¿ä¼Ò°¡ ÀÖ°í, À̵éÀÇ Á¾ÇÕÀûÀÎ ¼öÁØÀÌ »ç¿ëÀÚ ÀÔÀå¿¡¼­ÀÇ ¼º´É¿¡ ¿µÇâÀ» ¹ÌÄ£´Ù. ºê¶ó¿ìÀú Á¾·ù¿¡ µû¸¥ Â÷ÀÌ´Â HTTP ÇÁ·ÎÅäÄݰú ¼ö½ÅÇÑ ¹®¼­ÀÇ Ã³¸® ¹× ±¸Çö ¸ðµâµéÀÇ È¿À²¼º µî°ú °°ÀÌ ±¸ÇöÀÇ ´ë»óÀÌ µÇ´Â ¸ðµç ¿ä¼ÒµéÀÇ ±¸ÇöÀÇ Áú°ú ¼öÁØ¿¡ ÀÇÇØ Á¾ÇÕÀûÀ¸·Î °áÁ¤µÇ´Â ¿ä¼ÒÀÌ´Ù.

³×Æ®¿öÅ© Àü¼Û ¼Óµµ
À̰ÍÀº »ç¿ëÀÚ°¡ °¡Àå ÇǺο¡ ¿Í´ê°Ô ´À³¢´Â ¼º´É ¿ä¼ÒÀÌ´Ù. 2400bpsÀÇ ¸ðµ©À» ÅëÇÑ ÀüÈ­¼±À» »ç¿ëÇÏ´Â °Í°ú T3 (45Mbps) Àü¿ë¼±À» »ç¿ëÇÏ´Â °Í°úÀÇ Â÷ÀÌ´Â ±×¾ß¸»·Î Çϴðú ¶¥ Â÷ÀÌÀÌ´Ù. µ·À» µé¿©¼­ Åë½Å¸ÁÀÇ Àü¼Û ¼Óµµ¸¦ ³ôÀÌ´Â °ÍÀº Áö±Ý ´çÀå¿¡ °¡Àå ¹Î°¨ÇÏ°Ô ¼º´ÉÀÇ Çâ»óÀ» ´À³¥ ¼ö ÀÖ´Â ¿ä¼ÒÀÌ´Ù.

HTTP ÇÁ·ÎÅäÄÝ ±¸Á¶
HTTP ÇÁ·ÎÅäÄÝÀÇ µ¿ÀÛ ¸ðµ¨Àº ¿ä±¸/ÀÀ´äÀÇ °úÁ¤À¸·Î¼­ ¸Þ½ÃÁö ¼Û¼ö½ÅÀ» À§ÇÑ ÇϳªÀÇ TCP ¿¬°á¼±À» ¼³¸³ÇÏ°í¼­, ¿ä±¸ ¸Þ½ÃÁö¸¦ ¼­¹ö¿¡°Ô Àü´ÞÇÏ¸é ¼­¹ö´Â ÀÌ¿¡ ´ëÇØ ÀÀ´ä ¸Þ½ÃÁö¸¦ Àü´ÞÇÔÀ¸·Î½á µÑ »çÀÌÀÇ µ¥ÀÌŸ ¿¬°á¼±ÀÌ ÇØÁ¦µÇ´Â ±¸Á¶·Î µÇ¾î ÀÖ¾ú´Ù. ÀÌ¿¡ µû¶ó ¶È°°Àº ¼­¹ö·ÎºÎÅÍ µ¿½Ã¿¡ ¸î °³ÀÇ È­ÀÏÀ» °®°í ¿À·Á°í ÇÒ ¶§ ±× °¹¼ö¸¸Å­ÀÇ TCP ¿¬°á¼±ÀÌ ¼³¸³µÇ¾î¾ß ÇßÀ¸¸ç TCP ¿¬°áÀ» °¢°¢ ¼³¸³Çϱâ±îÁöÀÇ ÇÁ·ÎÅäÄÝ Ã³¸®¸¦ À§ÇÑ ºÎ´ãÀÌ Ãß°¡µÇ¾ú´Ù. ÀÌ·¯ÇÑ HTTP ÇÁ·ÎÅäÄÝÀÇ ±Ùº»Àû ±¸Á¶ÀÇ ¹®Á¦¸¦ ÇØ°áÇϰųª º¸¿ÏÇÔÀ¸·Î½á ¼º´É °³¼±À» ±â´ëÇÒ ¼ö ÀÖ´Ù.

CSS1 (Cascading Style Sheets, level 1) »ç¿ë
À̰ÍÀº Åë½Å¸ÁÀ» ÅëÇØ Àü´ÞÇÒ µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÌ´Â ¹æ¹ýÀÌ´Ù. º¸´Ù ºü¸¥ Àü¼Û¼Óµµ¸¦ À§Çؼ­´Â Åë½Å¸ÁÀÇ Àü¼Û¼Óµµµµ Áß¿äÇÏÁö¸¸ ¼­¹ö°¡ Àü´ÞÇÒ µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÓÀ¸·Î½áµµ °¡´ÉÇÏ´Ù. ¿¹¸¦ µé¾î, ȨÆäÀÌÁö¿¡ ÀÖ´Â ¿©·¯ °¡Áö ¾ÆÀÌÄÜ ¸ð¾çÀÇ ±×¸² È­ÀϵéÀ» CSS¿Í HTMLÀ» ÀÌ¿ëÇÏ¿© Ç¥ÇöÇÏ°í ºê¶ó¿ìÀú¿¡¼­ º¸¿©ÁÙ ¼ö ÀÖ´Ù¸é »ó´çÇÑ Å©±â¸¦ Â÷ÁöÇÏ´Â ±×¸² È­ÀϵéÀ» Àü´ÞÇÏÁö ¾Ê¾Æµµ ¿øÇϴ ȨÆäÀÌÁö ¸ð¾çÀ» ¾òÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù. °á±¹ Àü´ÞÇÒ µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÏ ¼ö ÀÖ°Ô µÇ´Â °ÍÀÌ´Ù.

PNG (Portable Network Graphic) »ç¿ë
PNGÀÇ °æ¿ì¿¡µµ Àü´ÞÇÒ µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÓÀ¸·Î½á Àü¼Û¼Óµµ¸¦ Çâ»ó½Ãų ¼ö ÀÖ´Â ¹æ¹ýÀÌ´Ù. PNG´Â ±×¸² È­ÀÏÀ» Ç¥½ÃÇÏ´Â µ¥ÀÌŸ Çü½ÄÀ» Á¤ÀÇÇÑ °ÍÀ¸·Î¼­ ´ëÁßÀûÀ¸·Î ¾²ÀÌ´Â GIF Çü½Äº¸´Ù ÀÛÀº Å©±â·Î¼­µµ ±×¸² È­ÀÏÀ» ³ªÅ¸³¾ ¼ö ÀÖ´Ù. Áï, Àü´ÞÇÒ µ¥ÀÌŸÀÇ ¾çÀÌ ÁÙ¾îµé°Ô µÇ´Â °ÍÀÌ´Ù.

¹®¼­ ¾ÐÃà
HTML Çü½ÄÀ¸·Î ÀÛ¼ºµÇ¾î Àִ ȨÆäÀÌÁö ¹®¼­¸¦ ¼­¹ö°¡ Àü¼ÛÇÒ ¶§, ºê¶ó¿ìÀú¿Í »óÈ£ 󸮰¡ °¡´ÉÇÑ ¾ÐÃà/º¹¿ø ¹æ¹ýÀ» ÀÌ¿ëÇÏ¿© ¾ÐÃàÇÏ¿© Àü´ÞÇÑ´Ù¸é ¶ÇÇÑ Àü´ÞÇÒ µ¥ÀÌŸÀÇ ¾çÀÌ ÁÙ¾îµé°Ô µÇ°í, ºê¶ó¿ìÀú¿¡¼­´Â ¾ÐÃàÀ» Ç®¾î¼­ º¹¿øÇÏ¿© È­¸é¿¡ º¸¿©ÁÖ°Ô µÈ´Ù. °á±¹ À̰͵µ Àü¼ÛÇÒ µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÌ´Â ¹æ¹ýÀÌ´Ù.

ÀÌ»ó°ú °°Àº ¹æ¹ýµéÀ» Á¾ÇÕÀûÀ¸·Î Ȱ¿ëÇÔÀ¸·Î½á »ç¿ëÀÚ°¡ ´À³¢´Â À¥ Ȱ¿ëÀÇ ¼º´É Çâ»óÀº ´«¿¡ µÎµå·¯Áö°Ô ³ªÅ¸³ª°Ô µÇ°í, ¹ßÇ¥µÈ ½ÇÇè °á°ú¿¡ ÀÇÇϸé ÃÖÀú 2¹è¿¡¼­ ÃÖ°í 10¹èÀÇ Çâ»óÀ» °æÇèÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ̾ú´Ù.

2Àå¿¡¼­´Â ÇöÀçÀÇ À¥¿¡¼­ ¼º´É¿¡ °ü°èµÈ ¹®Á¦Á¡µéÀ» »ìÆìº¸°í, 3Àå¿¡¼­´Â ÀÌ ¹®Á¦Á¡µé¿¡ ´ëÇÑ ÇØ°áÃ¥ ¶Ç´Â ¼º´É Çâ»óÀ» À§ÇÑ ¹æ¹ýµé°ú ½ÇÇè °á°úµéÀ» »ìÆìº¸°í, 4Àå¿¡¼­´Â °á·ÐÀ» ¸Îµµ·Ï ÇÑ´Ù.

2. À¥¿¡¼­ÀÇ ¼º´É ¹®Á¦

Åë»ó ¸»ÇÏ´Â ¼º´ÉÀ̶õ ´Ù¾çÇÑ ¿ä¼ÒµéÀ» Æ÷ÇÔÇÒ ¼ö¹Û¿¡ ¾ø´Ù. ¾Õ¼­ ¼­·Ð¿¡¼­µµ ¾ð±ÞÇß´ø °Íó·³ °³ÀÎ »ç¿ëÀÚµéÀÌ »ç¿ëÇÏ´Â ÄÄÇ»ÅÍ ½Ã½ºÅÛÀÇ Çϵå¿þ¾î ±¸¼ºÇ°ÀÇ ÁúÀû Çâ»óÀ» ÅëÇØ¼­µµ ¼º´ÉÀÇ Çâ»óÀ» ±â´ëÇÒ ¼ö ÀÖÀ¸¸ç, ¼ÒÇÁÆ®¿þ¾îÀÇ ±¸Çö ¼öÁØÀ̳ª Åë½Å ÇÁ·ÎÅäÄÝÀÇ ¼º´É ¹× Åë½Å¸ÁÀÇ ¿ë·®À» ÅëÇØ¼­µµ ¼º´ÉÀÇ Çâ»óÀ» ±â´ëÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.

µ¥ÀÌŸ ÆÐŶÀ» ¼Û¼ö½ÅÇÔÀ¸·Î½á ÀÌ·ç¾îÁö´Â Åë½Å¸Á¿¡¼­ÀÇ ¼º´É Çâ»ó °üÁ¡¿¡¼­´Â µÎ °¡Áö ¿ä¼Ò¸¦ »ìÆìº¼ ¼ö ÀÖ´Ù. Latency¿Í Bandwidth¶ó°í ÇÏ´Â °ÍÀ¸·Î¼­ Åë½Å ÇÁ·ÎÅäÄÝÀ» Æ÷ÇÔÇÏ´Â Åë½Å¸ÁÀÇ ¼º´ÉÀ» Æò°¡ÇÒ ¼ö ÀÖ´Â ÁÖ¿äÇÑ ¿ä¼Ò·Î¼­ Ȱ¿ëµÈ´Ù.

latency´Â RTT(Round Trip Time)·Î¼­ ÃøÁ¤ÇÒ ¼ö ÀÖ´Â ¿ä¼ÒÀε¥, ¾ç ³¡´Ü »çÀÌ¿¡¼­ ÆÐŶ Çϳª°¡ ¿Õº¹ÇÏ´Â µ¥¿¡ °É¸®´Â ½Ã°£ÀÌ´Ù. µû¶ó¼­ ¼Û¼ö½ÅÇÒ ¹®¼­ µ¥ÀÌŸÀÇ Å©±â°¡ Å©³ª ÀÛÀ¸³ª Ç×»ó RTT´Â ÀÏÁ¤ÇÑ ½Ã°£ÀÌ µÈ´Ù. À̰ÍÀ» Çâ»ó½Ãų ¼ö ÀÖ´Â ¹æ¹ýÀº ºûÀÇ ¼Óµµ¸¦ ºü¸£°Ô ÇÏ´Â °ÍÀÌ µÉ ¼ö ÀÖ´Ù.

bandwidth´Â ½Ã°£´ç ¾ó¸¶³ª ¸¹Àº µ¥ÀÌŸ ¾çÀ» Àü¼ÛÇÒ ¼ö ÀÖ´À³Ä¿¡ µû¶ó Á¿ìµÈ´Ù. µû¶ó¼­ µ¥ÀÌŸ ÆÐŶ Çϳª¸¦ º¸³»´Â µ¥ °É¸®´Â ½Ã°£À¸·Î¼­ Ç¥ÇöÇÒ ¼öµµ ÀÖ´Ù. À̰ÍÀ» °¡Àå ½±°Ô Çâ»ó½Ãų ¼ö ÀÖ´Â ¹æ¹ýÀº µ·À» µé¿© º¸´Ù ºü¸¥ Åë½Å¸ÁÀ» ¿¬°áÇÏ´Â °ÍÀÌ µÉ ¼ö ÀÖ´Ù.

ÀÌ µÎ °¡Áö ¿ä¼Ò¸¦ ½±°Ô ºñÀ¯ÇÒ ¼ö ÀÖ´Â °ÍÀÌ ¼öµµ°ü ÆÄÀÌÇÁÀÌ´Ù. »ç¿ëÀÚ¿¡°Ô 1ÃÊ¿¡ 1ÅæÀÇ ¹°À» °ø±ÞÇϰíÀÚ ÇÒ ¶§ Á¶±×¸¸ ¼öµµ°ü¿¡ ¹°ÀÇ ¼Óµµ¸¦ ¸Å¿ì ºü¸£°Ô ÇÏ¿© 1ÃÊ µ¿¾È¿¡ 1ÅæÀ» °ø±ÞÇÒ ¼öµµ ÀÖ°í, ¼Óµµ´Â À̰ͺ¸´Ù ´À¸®Áö¸¸ ¸Å¿ì Å« ¼öµµ°üÀ» ÀÌ¿ëÇÏ¿© ´Ü¼û¿¡ 1ÅæÀÇ ¹°À» º¸³»ÁÙ ¼öµµ ÀÖ´Ù. »ç¿ëÀÚÀÇ Ã³Áö¿¡¼­´Â ¶È°°Àº °á°ú¸¦ °¡Áö°Ô µÇ³ª ±× ¹æ¹ýÀ¸·Î¼­´Â µÎ °¡Áö°¡ Á¸ÀçÇÒ ¼ö ÀÖ°í, ¼Óµµ¿Í ¿ë·®Àº »óÈ£ °áÇÕµÈ ÇüÅ·μ­ »ç¿ëÀÚ¿¡¼­ °¡½ÃÀûÀÎ ¼­ºñ½º¸¦ Á¦°øÇÏ°Ô µÈ´Ù. ¿©±â¼­ ºü¸¥ ¼Óµµ´Â º¸´Ù ªÀº ½Ã°£ÀÇ ÁÁÀº latency·Î ´ëÀÀµÇ°í ¿ë·®Àº bandwidth·Î ´ëÀÀµÈ´Ù ÇÒ ¼ö ÀÖ´Ù.

À¥ÀÌ ±â¹ÝÀ¸·Î Çϰí ÀÖ´Â TCP/IP Åë½Å¸Á¿¡¼­ÀÇ ¼º´ÉÀº ÀÌ¿Í °°Àº µÎ °¡Áö ÁÖ¿ä °üÁ¡À» ±âÁØÀ¸·Î Æò°¡µÉ ¼ö ÀÖÀ¸¸ç, HTTP ÀÀ¿ë ÇÁ·ÎÅäÄÝÀÇ ¼º´É ¹®Á¦¿Í HTTP ÇÁ·ÎÅäÄÝÀÇ ±â¹ÝÀÌ µÇ´Â TCP Àü¼Û ÇÁ·ÎÅäÄÝÀÇ ¼º´É ¹®Á¦°¡ À¥ ¼­ºñ½º¿¡¼­ÀÇ Åë½Å ¼º´ÉÀ» Á¿ìÇÏ°Ô µÈ´Ù.

¼­·Ð¿¡ ¾ð±ÞµÇ¾î ÀÖ´Â ´Ù¾çÇÑ ¼º´É Æò°¡ ¿ä¼ÒµéÀÌ ÀÖÀ½¿¡µµ ºÒ±¸Çϰí Åë½Å ¼º´ÉÀ» ÅëÇØ À¥ ¼­ºñ½º¸¦ ºÐ¼®ÇÏ·Á°í ÇÏ´Â °ÍÀº Àüü À¥ ¼­ºñ½º¿¡¼­ °¡Àå ±¤¹üÀ§ÇÑ ¿µÇâÀ» ¹ÌÄ¡±â ¶§¹®ÀÌ´Ù. ¼ÒÇÁÆ®¿þ¾î ±¸Çö¿¡¼­ ¹ß»ýÇÏ´Â ¼º´É ¹®Á¦¶ó¸é ÇØ´ç ¼ÒÇÁÆ®¿þ¾î¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸é ÇØ°áµÇ´Â °ÍÀÌÁö¸¸ µ¥ÀÌŸ ¼Û¼ö½ÅÀÇ ±â¹ÝÀ» Á¦°øÇØÁÖ´Â °ÍÀÎ °æ¿ì¿¡´Â ±Ùº»ÀûÀÎ ¼³°è ±¸Á¶ÀÇ °üÁ¡¿¡¼­ ¼º´É ¹®Á¦°¡ ´Ù·ç¾îÁ®¾ß ÇÏ´Â °ÍÀÌ´Ù.

2.1 TCP ¿¬°á ¼³¸³½ÃÀÇ ½Ã°£ Áö¿¬[2]

TCP/IP ÇÁ·ÎÅäÄÝÀº ¾Æ·¡ ±×¸² 1°ú °°Àº °èÃþÀû ¿ªÇÒÀ» ÇÏ´Â °¢Á¾ ÇÁ·ÎÅäÄݵéÀÇ ÁýÇÕÀ¸·Î ÀÌ·ç¾îÁ® ÀÖ´Ù. TCP/IP Åë½Å¸ÁÀº °¢°¢ÀÇ ÇÁ·ÎÅäÄݵéÀÇ »óÈ£ µ¿ÀÛÀ» ÅëÇØ µ¥ÀÌŸ ¼Û¼ö½ÅÀÌ ÀÌ·ç¾îÁø´Ù.

TCP/IP Protocol Stack
[±×¸² 1] TCP/IP ÇÁ·ÎÅäÄÝ ÁýÇÕ

À¥¿¡¼­ »ç¿ëÇÏ´Â HTTP µ¥ÀÌŸ Àü¼Û °æ·Î´Â À§ ±×¸² 1¿¡¼­¿Í °°ÀÌ TCP/IP ÇÁ·ÎÅäÄÝ Ã¼°è »ó¿¡¼­ TCP ¿¬°áÀ» ÅëÇØ¼­ ÀÌ·ç¾îÁø´Ù. ±×·¯¹Ç·Î ºê¶ó¿ìÀú¸¦ ÀÌ¿ëÇÏ¿© ¼­¹öÀÇ ¾î´À ȨÆäÀÌÁö ³»¿ëÀ» °®°í ¿À±â À§Çؼ­´Â HTTP ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇÑ ¹®¼­ ¿äûÀ» ÇØ¾ß Çϰí, ¼­¹ö´Â ÀÌ¿¡ ´ëÇÑ ÀÀ´äÀ» º¸³»ÁÖ°Ô µÈ´Ù. ÀÌ °úÁ¤¿¡¼­ HTTP ÇÁ·ÎÅäÄÝÀº ¿ä±¸ ¸Þ½ÃÁö¸¦ Àü´ÞÇϰí ÀÀ´äÀ» ¼ö½ÅÇϱâ À§ÇÑ ÇÏÀ§ÀÇ TCP ¿¬°áÀ» Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö »çÀÌ¿¡ ¸ÕÀú ¸¸µé¾î¾ß ÇÑ´Ù. ´Ù½Ã ¸»Çؼ­ ¼­¿ï ºÎ»ê »çÀÌÀÇ Á¦Ç° ¼ö¼ÛÀ» À§Çؼ­ ¸ÕÀú °í¼Óµµ·Î°¡ °Ç¼³µÇ¾î ¿¬°áµÇ¾î ÀÖ¾î¾ß ÇϵíÀÌ, HTTP ¸Þ½ÃÁö ¼Û¼ö½ÅÀ» À§Çؼ­´Â ¸ÕÀú TCP ¿¬°áºÎÅÍ ¸Î¾î¾ß ÇÏ°í ±× ´ÙÀ½¿¡ HTTP ¸Þ½ÃÁöÀÇ Àü¼ÛÀÌ ¼³¸³µÈ TCP ¿¬°áÀ» ÅëÇØ ÀÌ·ç¾îÁø´Ù.

TCP ¿¬°áÀ» ¸ÎÀ» ¶§´Â ¾Æ·¡ÀÇ ±×¸² 2¿Í °°Àº three-way handshake¶ó°í ÇÏ´Â ¹æ¹ýÀ» »ç¿ëÇÑ´Ù.

TCP Connection Establishment
[±×¸² 2] TCP ¿¬°á ¼³¸³°ú Three-way Handshake

TCP Connection Release
[±×¸² 3] TCP ¿¬°á ÇØÁ¦ °úÁ¤

Ŭ¶óÀÌ¾ðÆ®·ÎºÎÅÍ TCP ¿¬°áÀ» À§ÇÑ SYN ÆÐŶÀÌ ¼­¹ö¿¡°Ô Àü´ÞµÈ´Ù. À̶§ SYN ÆÐŶ¿¡´Â Ŭ¶óÀÌ¾ðÆ®°¡ ¾ÕÀ¸·Î Àü¼ÛÇÒ µ¥ÀÌŸ ÆÐŶÀÇ Ã¹ ¹øÂ° ¹ÙÀÌÆ®ÀÇ ¼ø¼­ ¹øÈ£°¡ Æ÷ÇԵǾî ÀÖ´Ù. ¼ø¼­ ¹øÈ£¸¦ »ç¿ëÇÏ´Â ÀÌÀ¯´Â Áß°£¿¡¼­ µ¥ÀÌŸ ÆÐŶÀÌ »ç¶óÁ³´ÂÁö ¿©ºÎ¸¦ °Ë»çÇϱâ À§Çؼ­ÀÌ´Ù. ¹øÈ£¸¦ °Ë»çÇÏ¿© Áß°£¿¡ ºñ¾îÀÖ´Â ¹øÈ£°¡ ÀÖ´Ù¸é ÀÌ¿¡ ÇØ´çÇÏ´Â ÆÐŶÀÌ Áß°£¿¡¼­ »ç¶óÁ³´Ù´Â °ÍÀ» ³ªÅ¸³»°í ÀçÀü¼ÛÀ» ÅëÇØ ½Å·Ú¼º ÀÖ´Â µ¥ÀÌŸ Àü¼ÛÀ» Á¦°øÇØ ÁÖ´Â °ÍÀÌ´Ù. µ¥ÀÌŸÀÇ µÎ ¹øÂ° ¹ÙÀÌÆ®ÀÇ ¼ø¼­ ¹øÈ£´Â ù ¹øÂ° ¼ø¼­ ¹øÈ£¿¡¼­ 1À» ´õÇÑ ¼ýÀÚÀÌ´Ù.

¼­¹ö¿¡¼­´Â SYN ÆÐŶÀ» ¼ö½ÅÇϰí ÀÚ½ÅÀÇ µ¥ÀÌŸ Àü¼ÛÀ» À§ÇÑ SYN ÆÐŶÀ» º¸³½´Ù. ÀÌ ÆÐŶ ¼Ó¿¡´Â ¼­¹ö ÀÚ½ÅÀÌ »ç¿ëÇÒ ¼ø¼­ ¹øÈ£ÀÇ Ã¹ ¼ýÀÚ°¡ µé¾î°¡ ÀÖ°í µÚÀÌ¾î º¸³¾ µ¥ÀÌŸ ÆÐŶÀÇ Ã¹ ¹øÂ° ¹ÙÀÌÆ®ÀÇ ÀÏ·Ã ¹øÈ£ ½ÃÀÛÀ» ¾Ë·ÁÁÖ°Ô µÈ´Ù. ÀÌ¿Í ÇÔ²² ¾Õ¼­ Ŭ¶óÀÌ¾ðÆ®°¡ º¸³½ SYN ÆÐŶÀ» ¼º°øÀûÀ¸·Î ¼ö½ÅÇß´Ù´Â Àǹ̷μ­ ack Á¤º¸¸¦ ÇÔ²² º¸³½´Ù. ¿©±â¼­ÀÇ ack Á¤º¸´Â Ŭ¶óÀÌ¾ðÆ®·ÎºÎÅÍ Àü´Þ¹ÞÀº ¼ø¼­ ¹øÈ£¿¡´Ù 1À» ´õÇÑ ¼ýÀÚ°¡ µÈ´Ù. ÀÌ¿Í °°Àº ack Á¤º¸ÀÇ Àǹ̴ ¾Õ¼­ º¸³½ ÆÐŶÀ» Àß ¹Þ¾ÒÀ¸¸ç ¾ÕÀ¸·Î ³»°¡ ¹Þ°íÀÚ ÇÏ´Â ÆÐŶÀÇ ¼ø¼­ ¹øÈ£´Â Áö±Ý ¾Ë·ÁÁÖ´Â ¹øÈ£ÀÌ´Ù ¶ó´Â °ÍÀ» ¶æÇÑ´Ù. ÀÌ·¯ÇÑ °úÁ¤¿¡¼­ »ç¿ëÇÏ´Â ¼ø¼­ ¹øÈ£´Â µ¥ÀÌŸÀÇ ¹ÙÀÌÆ® ´ÜÀ§·Î Áõ°¡ÇÏ´Â °ÍÀÌ¸ç ÆÐŶ´ç 1¾¿ ¼ø¼­ ¹øÈ£°¡ Áõ°¡ÇÏ´Â °ÍÀÌ ¾Æ´Ï´Ù.

Ŭ¶óÀÌ¾ðÆ®¿¡¼­´Â ¼­¹ö·ÎºÎÅÍ ¼ö½ÅÇÑ SYN ÆÐŶ¿¡ ´ëÇØ ¼º°øÀûÀÎ ¼ö½ÅÀ» ¾Ë¸®´Â ack ÆÐŶÀ» º¸³»°Ô µÇ°í, ÀÌ ¼Ó¿¡ µé¾î°¡´Â ¼ø¼­ Á¤º¸´Â ¼­¹öÀÇ SYNÀÌ ¾Ë·ÁÁØ ¼ø¼­ ¹øÈ£º¸´Ù 1ÀÌ Å« ¼ýÀÚÀÌ´Ù. Áï, ¾ÕÀ¸·Î ¼­¹ö·ÎºÎÅÍ ¼ö½ÅÇϰíÀÚ ÇÏ´Â ÆÐŶÀÇ Ã¹ ¼ø¼­ ¹øÈ£¸¦ ¾Ë·ÁÁÖ´Â °ÍÀÌ´Ù. ±× ´ÙÀ½ ÆÐŶÀÇ Ã¹ ¼ø¼­ ¹øÈ£´Â ¹Ù·Î ¾Õ¿¡ Àü¼ÛÇß´ø ÆÐŶ¿¡¼­ µ¥ÀÌŸÀÇ ÃÑ ¹ÙÀÌÆ® ¼ö¸¦ ´õÇÑ ¼ýÀÚ°¡ µÉ °ÍÀÌ´Ù.

µû¶ó¼­ TCP ¿¬°áÀ» »õ·Î ¸¸µé ¶§´Â Ç×»ó ¼¼ ¹øÀÇ end-to-end ÆÐŶ Àü¼Û ½Ã°£ÀÌ °É¸®°Ô µÇ¸ç, ÇϳªÀÇ ¼­¹ö·ÎºÎÅÍ µ¿½Ã¿¡ ´Ù¼¸ °³ÀÇ TCP ¿¬°áÀ» ¸Î¾î¼­ ´Ù¼¸ °³ÀÇ µ¥ÀÌŸ È­ÀÏÀ» °¡Á®¿À·Á ÇÒ ¶§ ´Ù¼¸ ¹øÀÇ ¶È°°Àº TCP ¿¬°áÀ» À§ÇÑ Áö¿¬½Ã°£ÀÌ »ý±â°Ô µÈ´Ù.

ÀÌ·¯ÇÑ ¹®Á¦´Â µ¿½Ã¿¡ °°Àº ¼­¹ö·ÎºÎÅÍ È­ÀÏÀ» °¡Áö°í ¿À·Á ÇÒ ¶§ »ý±â±âµµ ÇÏÁö¸¸, ¿¬À̾ ¸î °³ÀÇ ¹®¼­ È­ÀÏÀ» °¡Áö°í ¿À·Á ÇÒ ¶§µµ »ý±ä´Ù. »ç¿ëÀÚµéÀº ÇϳªÀÇ ¼­¹ö¿¡ Á¢¼ÓÇÏ¿© ¹®¼­¸¦ º¸¾ÒÀ» ¶§, ÇØ´ç ¹®¼­¿Í °ü·ÃµÈ ´Ù¸¥ ¹®¼­µéÀ» °°Àº ¼­¹ö·ÎºÎÅÍ ¿¬¼ÓÀûÀ¸·Î Àо°íÀÚ ÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù.

HTTP ¿¬°áÀº ¿ä±¸/ÀÀ´äÀ¸·Î¼­ ÀÌ·ç¾îÁö´Â À¥ Åë½Å ÇÁ·ÎÅäÄÝÀÌ¸ç ¼­¹ö°¡ ¹®¼­ È­ÀÏÀ» Àü¼ÛÇÏ°í ³ª¸é ÀÚµ¿À¸·Î ¿¬°áÀ» ²÷¾î¹ö¸®´Â ±¸Á¶·Î µÇ¾î ÀÖ´Ù. µû¶ó¼­ ¿¬¼ÓÀûÀÎ ¹®¼­ ¿äûÀ̶ó ÇÒÁö¶óµµ ¸Å¹ø TCP ¿¬°áÀ» ¸Î¾î¾ß Çϸç, ¿¬°á ¼³¸³Àº À§ÇÑ ½Ã°£ Áö¿¬Àº ¸Å¹ø °è¼Ó »ý±â°Ô µÈ´Ù.

2.2 TCP ¼¼±×¸ÕÆ® Á¶°¢[2]

HTTP¿Í °°Àº ÀÀ¿ë ÇÁ·ÎÅäÄݷκÎÅÍ ³Ñ°Ü ¹ÞÀº »ç¿ëÀÚ µ¥ÀÌŸ¸¦ TCP ÆÐŶ ¼Ó¿¡ ³Ö¾î¼­ Àü´ÞÇÒ ¶§, TCP°¡ ´Ù·ê ¼ö ¾ø´Â Á¤µµÀÇ Å« Å©±â¶ó¸é ÀûÀýÇÑ Å©±â·Î Àß¶ó¼­ Àü¼ÛÇÏ°Ô µÈ´Ù. ÀÌ·¸°Ô Àß¶ó³½ °¢°¢ÀÇ µ¥ÀÌŸ Á¶°¢µéÀ» ¼¼±×¸ÕÆ®¶ó°í Çϸç, ¼¼±×¸ÕÆ®ÀÇ ÃÖ´ë Å©±â¸¦ MSS(Maximum Segment Size)¶ó°í ÇÑ´Ù. ÀÌ ¼¼±×¸ÕÆ®¿¡ TCP Çì´õ¸¦ ºÙ¿©¼­ Àü¼ÛÇÏ°Ô µÈ´Ù.

ÀÌ Å©±â´Â Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö »çÀÌ¿¡ ¼­·Î Çù»óÇÏ¿© °áÁ¤ÇÒ ¼ö ÀÖÀ¸³ª ¼±ÅÃÀûÀÎ °ÍÀ̹ǷΠ¾î´À ÇÑ ÂÊÀÌ ÀÌ ±â´ÉÀ» »ç¿ëÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ´Ù. ÀÌ ±â´ÉÀ» »ç¿ëÇÏÁö ¾Ê°í Çù»ó ¾øÀÌ ÁøÇàµÇ´Â TCP ¿¬°á¿¡´Â ±âº»ÀûÀ¸·Î 536 ¹ÙÀÌÆ®·Î ¼³Á¤µÈ´Ù. ƯÈ÷ ¿ø°Å¸®·Î Á¢¼ÓµÇ´Â TCP ¿¬°áÀº ÃÖ¼Ò Å©±âÀÎ 536 ¹ÙÀÌÆ®·Î ¼³Á¤µÇ±â ¶§¹®¿¡ Á» ´õ Å« ¼¼±×¸ÕÆ®·Î Àü´ÞÇÒ ¼ö ÀÖÀ½¿¡µµ ºÒ±¸ÇÏ°í ºÒ°¡´ÉÇÏ°Ô µÇ¸ç, °á°úÀûÀ¸·Î °°Àº Å©±âÀÇ µ¥ÀÌŸ¸¦ Àü´ÞÇÒ ¶§ ´õ ¸¹Àº °¹¼öÀÇ TCP ÆÐŶÀÌ Àü¼ÛµÇ¾î¾ß ÇÑ´Ù.

À̰ÍÀº TCPÀÇ º»·¡ ¹®Á¦ÀÌ¸ç °á°úÀûÀ¸·Î ÀÀ¿ë ¼­ºñ½ºÀÇ ¼º´É¿¡ ¿µÇâÀ» ¹ÌÄ¡°Ô µÈ´Ù.

2.3 À©µµ¿ì ¹× ½½·Î¿ì ½ºÅ¸Æ®[2]

TCP ÇÁ·ÎÅäÄÝÀº end-to-endÀÇ ¾ç ³¡´Ü¿¡¼­ ¿À·ù°¡ ÀüÇô ¾ø´Â ¿ÏÀüÇÑ µ¥ÀÌŸ ½Å·Ú¼ºÀ» º¸ÀåÇØÁÖ´Â ÇÁ·ÎÅäÄÝÀÌ´Ù. ±×·¯¹Ç·Î Áß°£¿¡¼­ ÆÐŶÀÇ ¼Õ»óÀ̳ª ¼Õ½Ç¿¡ ÀÇÇØ ¿À·ù°¡ ¹ß»ýÇßÀ» ¶§´Â ¼Û½ÅÃøÀ¸·ÎºÎÅÍ ÀçÀü¼ÛÀ» ¹Þ¾Æ¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ ½Å·Ú¼ºÀ» À§ÇØ ¼ö½ÅÃø¿¡¼­ TCP ÆÐŶÀ» Á¤»óÀûÀ¸·Î Á¦´ë·Î ¹Þ¾Ò´Ù¸é ¼Û½ÅÃø¿¡°Ô Àß ¼ö½ÅÇßÀ½À» ¾Ë·ÁÁÖ¾î¾ß ÇÑ´Ù.

¸¸¾à ¼Û½ÅÃøÀ¸·ÎºÎÅÍ ¼ö½ÅÃø±îÁö ÆÐŶÀ» Àü¼ÛÇÏ´Â µ¥¿¡ ÇÑ ½Ã°£ÀÌ °É¸°´Ù°í °¡Á¤ÇÒ ¶§, ¼Û½ÅÃøÀÌ ¼ö½ÅÀÚ°¡ ÆÐŶÀ» Á¦´ë·Î ¼ö½ÅÇßÀ½À» ¾Ë±â±îÁö´Â µÎ ½Ã°£ÀÌ °É¸± °ÍÀ̸ç, ±×·± ´ÙÀ½¿¡ ¶Ç ´Ù¸¥ ÆÐŶÀ» Àü¼ÛÇÑ´Ù¸é ¼Û½ÅÃø¿¡¼­´Â ÇϳªÀÇ ÆÐŶÀ» º¸³»°í µÎ ½Ã°£À» ±â´Ù¸° ÈÄ¿¡¾ß ´Ù¸¥ ÆÐŶÀ» º¸³¾ ¼ö ÀÖ°Ô µÉ °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ¹æ½ÄÀº ¼º´É¿¡ ½É°¢ÇÑ ¹®Á¦¸¦ ÀÏÀ¸Å°´Â °ÍÀÌ´Ù.

±×·¡¼­ ¼ö½ÅÃø¿¡¼­ ¼º°øÀûÀÎ ¼ö½ÅÀ» ¾Ë·ÁÁÖÁö ¾Ê¾Ò´õ¶óµµ ¼Û½ÅÃø¿¡¼­ °è¼Ó TCP ÆÐŶÀ» º¸³¾ ¼ö ÀÖµµ·Ï Çϰí ÀÖ´Ù. ±×·¯³ª ¸¸¾à ¼ö½ÅÃøÀ¸·ÎºÎÅÍ ¾Æ¹«·± ÀÀ´äÀÌ ¾øÀ½¿¡µµ ¼Û½ÅÃø¿¡¼­ ¹«ÇÑÁ¤ ÆÐŶÀ» °è¼Ó º¸³»°Ô µÇ¸é, ¼ö½ÅÃø¿¡¼­ ¹öÆÛ ¿À¹öÇ÷ο찡 »ý±æ ¿ì·Á°¡ ÀÖ°í ¿¬¼ÓÀûÀÎ ÀçÀü¼Û µ¿ÀÛÀÌ ¼öÇàµÇ¾î¾ß ÇÏ´Â ¾Ç¼øÈ¯ÀÌ »ý±â°Ô µÈ´Ù.

ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇÑ ¹æ¹ýÀÌ 'À©µµ¿ì'¶ó°í ÇÏ´Â °ÍÀÌ´Ù. ÀûÀýÇÑ À©µµ¿ì Å©±â¸¦ Á¤ÇØ µÎ°í, ÀÌ ¹üÀ§ ¾È¿¡¼­¸¸ ¼ö½ÅÃøÀ¸·ÎºÎÅÍ ¼ö½Å ¼º°øÀÇ ÀÀ´äÀÌ ¾ø´õ¶óµµ ¼Û½ÅÃø¿¡¼­ °è¼Ó TCP ÆÐŶÀ» º¸³¾ ¼ö ÀÖµµ·Ï Çϰí ÀÖ´Ù. À©µµ¿ì Å©±â°¡ ¸ðµÎ ¼ÒÁøµÇ°í ³ª¸é ¼Û½ÅÃøÀº Àü¼ÛÀ» Áß´ÜÇÏ°í ¼ö½ÅÃøÀ¸·ÎºÎÅÍ ¼ö½Å ¼º°ø ÀÀ´äÀ» (acknowledgments) ±â´Ù¸°´Ù. ¼º°øÀûÀÎ ¼ö½ÅÀÌ Å뺸µÇ¸é ¼Û½ÅÃøÀº ¸¸¾àÀÇ ÀçÀü¼ÛÀ» À§ÇØ ¹öÆÛ ¼Ó¿¡ ³²°ÜµÎ¾ú´ø µ¥ÀÌŸ¸¦ Áö¿öµµ µÇ°í ±×¸¸Å­ÀÇ À©µµ¿ì¸¦ ´õ È®º¸ÇÏ°Ô µÈ´Ù. È®º¸µÈ À©µµ¿ì¸¦ ¹ÙÅÁÀ¸·Î ¼Û½ÅÃøÀº ´Ù½Ã Àü¼ÛÇÒ ¼ö ÀÖ°Ô µÈ´Ù.

ÀÌ·¯ÇÑ À©µµ¿ì¸¦ ÅëÇØ µ¥ÀÌŸ Àü¼Û·®À» Á¦¾îÇÒ ¼ö ÀÖÀ½¿¡µµ ºÒ±¸Çϰí, ¼ö½ÅÀÚ´Â ÇöÀç Åë½Å¸ÁÀÇ Æ®·¡ÇÈ °ú´Ù ¿©ºÎ¸¦ ¾Ë ¼ö ¾øÀ¸¸ç ¼Û½ÅÀÚ¿¡°Ô ÀÌ »ç½ÇÀ» ¾Ë¸± ¼öµµ ¾ø´Ù. ±×·¯³ª ¼Û½ÅÃø¿¡¼­´Â ¼ö½ÅÃøÀ¸·ÎºÎÅÍ µµÂøÇÏ´Â ÀÀ´äÀ» ÅëÇØ ½Ã°£ °è»êÀ» ÇÏ¿© Æ®·¡ÇÈÀÇ °ú´Ù ¿©ºÎ¸¦ ÁüÀÛÇÒ ¼ö ÀÖ´Ù. RTT°¡ ÀÏÁ¤ÇÑ ¼öÁØÀ» À¯ÁöÇÏ´Ù°¡ °©ÀÚ±â Áõ°¡Çß´Ù¸é ÇöÀç ³×Æ®¿öÅ©ÀÇ Æ®·¡ÇÈ °ú´Ù¸¦ ÃßÁ¤Çغ¼ ¼ö ÀÖ´Â °ÍÀÌ´Ù. ¼ö½ÅÃø¿¡¼­´Â ¼Û½ÅÃøÀ¸·ÎºÎÅÍ ¾ðÁ¦ ÆÐŶÀÌ µµÂøÇÒÁö ¸ð¸£¹Ç·Î ¼ö½ÅÃø¿¡¼­´Â ¾Ë ¼ö ¾ø´Ù.

µû¶ó¼­ ¼Û½ÅÃø¿¡¼­ À©µµ¿ì ¹üÀ§ ³»¿¡¼­ ÆÐŶÀ» ¿¬¼ÓÀûÀ¸·Î Àü¼ÛÇÏ°Ô µÇ¸é Æ®·¡ÇÈ °ú´ÙÀÇ °æ¿ì¿¡ ´õ ½É°¢ÇÑ ¹®Á¦¸¦ ¾ß±â½ÃŰ°Ô µÈ´Ù. ÀÌ ¹®Á¦¸¦ ¿¹¹æÇϱâ À§ÇØ ¼Û½ÅÃø¿¡¼­´Â ¹Ì¸® À©µµ¿ì Å©±â¸¦ ÃÖ¼Ò·Î Àâ¾Æ ³õ°í ÆÐŶÀ» Àü¼ÛÇÏ°Ô µÇ¸ç, ¼ö½ÅÃøÀÇ ÀÀ´äÀ¸·ÎºÎÅÍ Æ®·¡ÇÈÀÇ È¥ÀâÀÌ ¾øÀÌ Á¤»óÀûÀÎ Åë½Å »óȲÀÓÀÌ È®ÀεǸé À©µµ¿ìÀÇ Å©±â¸¦ Áõ°¡½ÃŲ´Ù. ÀÌ·¯ÇÑ °úÁ¤À» ÅëÇØ À©µµ¿ìÀÇ Å©±â°¡ Á¡Á¡ Áõ°¡µÇ°í, ¾î´À ¼ø°£ Æ®·¡ÇÈÀÇ È¥ÀâÀÌ ¹ß°ßµÇ¸é ÇöÀçÀÇ À©µµ¿ì Å©±â¸¦ Àý¹ÝÀ¸·Î ÁÙÀÌ°í ´Ù½Ã µ¹¾Æ¿Â ¼ö½ÅÃø ÀÀ´äÀ¸·ÎºÎÅÍ ¿©ÀüÈ÷ Æ®·¡ÇÈ È¥ÀâÀÌ ¹ß°ßµÇ¸é ´Ù½Ã À©µµ¿ì Å©±â¸¦ Àý¹ÝÀ¸·Î ÁÙÀÓÀ¸·Î½á Áö¼öÇÔ¼öÀûÀ¸·Î °¨¼Ò½ÃŲ´Ù. ±×·¯´Ù°¡ ÀûÁ¤ÇÑ RTT °ªÀ¸·Î¼­ Á¤»óÀûÀÎ ³×Æ®¿öÅ© »óȲÀÌ µÇ¸é À©µµ¿ì Å©±â°¡ ´Ù½Ã ¼øÂ÷ÀûÀ¸·Î Áõ°¡ÇÑ´Ù. À̰ÍÀÌ ½½·Î¿ì ½ºÅ¸Æ®¶ó°í ÇÏ´Â µ¿ÀÛ ¾Ë°í¸®ÁòÀÌ´Ù.

ÀÌ ¹æ½ÄÀÇ ¹®Á¦Á¡Àº ÇöÀçÀÇ Åë½Å¸Á »óȲÀÌ ¸Å¿ì ÁÁÀ½¿¡µµ ºÒ±¸Çϰí Á¶±×¸¸ À©µµ¿ì Å©±â·ÎºÎÅÍ ½ÃÀÛÇÑ´Ù´Â °ÍÀÌ´Ù. ¸¸¾à ¼Û¼ö½ÅÇÒ µ¥ÀÌŸÀÇ ¾çÀÌ ¸¹¾Æ¼­ ¿À·£ ½Ã°£ µ¿¾È TCP ¿¬°áÀ» ¸Î¾î µÎ°í ÀÖ´Ù¸é ÀÌ¿Í °°Àº ¹®Á¦´Â ¹«½ÃÇÒ¸¸ÇÑ °ÍÀÌ´Ù. ±×·¯³ª ¼Û¼ö½ÅÇÒ µ¥ÀÌŸÀÇ ¾çÀÌ Àû¾î¼­ ªÀº ½Ã°£ µ¿¾È Á¸ÀçÇÏ´Â TCP ¿¬°áÀ̶ó¸é ÀÌ·¯ÇÑ ½½·Î¿ì ½ºÅ¸Æ® ¾Ë°í¸®ÁòÀº ¼º´ÉÀ» È¿°úÀûÀ¸·Î ¹ßÈÖÇÒ ¼ö ¾ø°Ô ¸¸µå´Â ¿ä¼ÒÀÌ´Ù.

HTTP ÇÁ·ÎÅäÄݰú °°ÀÌ ¿ä±¸/ÀÀ´äÀÇ ¹æ½ÄÀ¸·Î µ¿ÀÛÇÏ¸ç ºñ±³Àû ªÀº ½Ã°£ µ¿¾È¿¡ µ¥ÀÌŸ ¼Û¼ö½ÅÀÌ ³¡³ª´Â ÀÀ¿ë¿¡¼­ ½½·Î¿ì ½ºÅ¸Æ®´Â ¼º´ÉÀ» ÀúÇϽÃŰ´Â ¿ä¼ÒÀÌ´Ù.

2.4 TIME_WAIT »óÅ ¹®Á¦[2]

À̰ÍÀº ±×¸® ½É°¢ÇÑ ¹®Á¦¸¦ ÀÏÀ¸Å°´Â °ÍÀº ¾Æ´ÏÁö¸¸ ¼º´É°ú °ü·ÃÀÌ ÀÖ´Â ¿ä¼ÒÀÎ °ÍÀº »ç½ÇÀÌ´Ù. ¼­¹ö°¡ µ¥ÀÌŸ¸¦ Àü¼ÛÇÑ ÈÄ¿¡ TCP ¿¬°áÀ» ÇØÁ¦ÇÏ°Ô µÇ´Âµ¥, ¿¹±âÄ¡ ¾ÊÀº Áö¿¬µÈ ÆÐŶÀÌ ¼ö½ÅÃø¿¡ µµÂøÇϰí ÀÌ·Î½á ºñ·ÔµÈ Ãß°¡ÀûÀÎ ¿À·ù Á¦¾î°¡ ÇÊ¿äÇÒ ¼ö ÀÖ´Ù. ±×·¯¹Ç·Î ÇØÁ¦µÈ TCP ¿¬°á¿¡ ´ëÇÑ »óÅÂÁ¤º¸¸¦ ÀÏÁ¤ ½Ã°£ µ¿¾È ÀúÀåÇϰí ÀÖ¾î¾ß Çϸç, ÀÌ ½Ã°£ µ¿¾È TIME_WAIT »óÅ¿¡ ÀÖ°Ô µÈ´Ù. ÀÌ ½Ã°£Àº Åë»ó 240ÃÊ·Î Á¤ÇØÁ® ¾²À̰í ÀÖÀ¸¸ç ÀÌ ½Ã°£ µ¿¾È ½Ã½ºÅÛ ÀÚ¿øÀº ÇÒ´çµÈ ä·Î ´Ù¸¥ ¿ëµµ·Î Ȱ¿ëµÉ ¼ö ¾ø´Ù.

TCP ¿¬°á¿¡ ´ëÇÑ ºÎÇϰ¡ Å©Áö ¾ÊÀº ½Ã½ºÅÛ¿¡¼­´Â ÀÌ·¯ÇÑ °úÁ¤ÀÌ º°´Ù¸¥ ¿µÇâÀ» ¹ÌÄ¡Áö ¾ÊÀ¸³ª, °Ë»ö¿£Áø°ú °°Àº Ȱ¿ë ºóµµ°¡ ¸Å¿ì ³ôÀº ¼­¹ö¿¡¼­´Â ¼ö¸¹Àº TCP ¿¬°áÀÌ ¼³¸³µÇ¾ú´Ù°¡ ÇØÁ¦µÇ´Â µ¿ÀÛÀÌ ÁøÇàµÇ¸ç À̶§ »ó´çÇÑ ¿µÇâÀ» ¹ÌÄ¡°Ô µÈ´Ù. ±×·¡¼­ »õ·Î¿î TCP ¿¬°á ¿ä±¸¿¡ ´ëÇÑ ÀûÀýÇÑ ÀÀ´äÀ» ÇØÁÙ ¼ö ¾ø´Â »óȲÀÌ »ý±æ ¼ö ÀÖ´Ù.

2.5 HTTP µ¥ÀÌŸ ÆÐŶÀÇ Á¶°¢

È­ÀÏ ¼Û¼ö½ÅÀ» À§ÇÑ ÀÀ¿ë ¼­ºñ½ºÀÎ FTP¿¡¼­ »ç¿ëÇÏ´Â FTP ÇÁ·ÎÅäÄÝÀº ÀϹÝÀûÀ¸·Î Àå½Ã°£ÀÇ TCP ¿¬°áÀÌ ¼³¸³µÇ°Ô µÇ°í ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼­ Àü´ÞÇÏ´Â »ç¿ëÀÚ µ¥ÀÌŸÀÇ Å©±âµµ Å« ÆíÀÌ´Ù. ÀÌ µ¥ÀÌŸ°¡ ¿©·¯ °³ÀÇ TCP ¼¼±×¸ÕÆ®·Î ºÐÇҵǰí 2.2Àý¿¡¼­ ¼³¸íÇÑ ´ë·Î ¼¼±×¸ÕÆ® Å©±â°¡ ÃÖ¼Ò·Î µÈ´Ù ÇÒÁö¶óµµ HTTP ÇÁ·ÎÅäÄݺ¸´Ù´Â ³ªÀº »óȲÀ» ¸¸µç´Ù. ¿Ö³ÄÇÏ¸é ¿ä±¸/ÀÀ´ä ¸ÞÄ¿´ÏÁòÀ¸·Î ÀÌ·ç¾îÁö´Â HTTP ÇÁ·ÎÅäÄÝ¿¡¼­´Â ºñ±³Àû Á¶±×¸¸ µ¥ÀÌŸ ¾çÀ» °¡Áö´Â ÆÐŶµéÀÇ ¿¬¼ÓÀûÀÎ ±³È¯À¸·Î ÀÌ·ç¾îÁö±â ¶§¹®¿¡ °á°úÀûÀ¸·Î ´õ ¸¹Àº °¹¼öÀÇ TCP ¼¼±×¸ÕÆ®¸¦ ¾ç»êÇÏ°Ô µÉ ¼ö ÀÖ´Ù.

À̰ÍÀº À¥¿¡¼­ÀÇ Åë½Å ¼º´ÉÀº bandwidth¿¡ °ü·ÃµÈ ¿ä¼Òº¸´Ù latency¿¡ °ü·ÃµÈ ¿ä¼Òµé¿¡ ÀÇÇØ Á¿ìµÈ´Ù´Â °ÍÀ» ¶æÇÑ´Ù. ¸¹Àº °¹¼öÀÇ TCP ¼¼±×¸ÕÆ®´Â Åë½Å¸ÁÀÇ ºÎÇϸ¦ ´õ ³ôÀÌ°í °á±¹ latency¸¦ ¾ÇÈ­½ÃŰ´Â °ÍÀ̸ç, À¥¿¡¼­ÀÇ Åë½Å ¼º´ÉÀ» À§Çؼ­´Â latency¸¦ ÁÙÀÌ°í ±³È¯ÇØ¾ß ÇÒ TCP ¼¼±×¸ÕÆ®¸¦ ÁÙÀÌ´Â °Í¿¡¼­ Ãâ¹ßÇÑ´Ù.[3]

bandwidth¸¦ ÀÌ¿ëÇÑ ¼º´É Çâ»óÀº µ·À» ´õ ÅõÀÚÇÏ¿© ´õ ³ÐÀº Àü¼Û ´ë¿ªÆøÀ» °®´Â Åë½Å ȸ¼±À» ¿¬°áÇÏ¸é µÈ´Ù.

2.6 HTTP¿¡¼­ÀÇ ¸Þ½ÃÁö ¹× ÆÐŶ ±³È¯

À¥ ºê¶ó¿ìÀú¿Í ¼­¹ö »çÀÌÀÇ Åë»óÀûÀÎ ¸Þ½ÃÁö ±³È¯À» ±×¸²À¸·Î ±×·Á º¸¸é ¾Æ·¡¿Í °°´Ù.[3]

Packet exchanges and RTTs
[±×¸² 4] HTTP µ¥ÀÌŸ ¼Û¼ö½ÅÀ» À§ÇÑ TCP ¼¼±×¸ÕÆ® ±³È¯°ú RTTs

±×¸² 4´Â ´ÙÀ½ÀÇ »óȲÀ» ±×¸° °ÍÀÌ´Ù.

´ëºÎºÐÀÇ HTML ¹®¼­ ¼Ó¿¡´Â ¿©·¯ °³ÀÇ ±×¸² È­ÀÏÀ» Æ÷ÇÔÇϰí Àִµ¥ ¸ðµÎ°¡ ¶È°°Àº ¼­¹ö·ÎºÎÅÍ Àü¼Û¹Þ¾Æ ¿È¿¡µµ ºÒ±¸ÇÏ°í ±×¸² 4¿¡¼­ ¼³¸íÇÑ °Íó·³ ¸Å¹ø º°µµÀÇ TCP ¿¬°áÀ» ¸Îµµ·Ï HTTP ÇÁ·ÎÅäÄÝÀº ¼³°èµÇ¾î ÀÖ´Ù.

ÀÌ¿Í °°Àº HTTP ÇÁ·ÎÅäÄÝ µ¿ÀÛ ¸ÞÄ«´ÏÁò¿¡ ÀÇÇØ ´ÙÀ½°ú °°Àº ¹®Á¦°¡ »ý±ä´Ù.

2.7 Nagle ¾Ë°í¸®Áò

À̰ÍÀº TCPÀÇ µ¿ÀÛ ¸ÞÄ«´ÏÁò¿¡¼­ ¹ß»ýÇÏ´Â ¹®Á¦ÀÌ´Ù. TCP¿¡¼­ interactive data flowÀÎ °æ¿ì¿¡ ÇϳªÀÇ TCP ¿¬°á ¼Ó¿¡¼­ Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö »çÀÌ¿¡ ¼­·Î ÁÖ°í¹Þ°í ÇÏ´Â ÆÐŶ ±³È¯ÀÌ ÀϾ°Ô µÈ´Ù. À̶§ 1 ¹ÙÀÌÆ®ÀÇ µ¥ÀÌŸ¿Í 20 ¹ÙÀÌÆ®ÀÇ Çì´õ·Î ±¸¼ºµÇ´Â ¸Å¿ì ÀÛÀº TCP ÆÐŶµé·Î¼­ »óÈ£°£ µ¿ÀÛÀÌ ¿¬¼ÓÀûÀ¸·Î ÀϾ´Ù¸é Æ®·¡ÇÈÀÇ È¥ÀâÀ» °¡Áß½Ãų ¼ö ÀÖ´Ù.

ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇÑ ¹æ¹ýÀÌ Nagle ¾Ë°í¸®ÁòÀ̶ó ÇÏ´Â °ÍÀÌ´Ù. ÀÌ¹Ì Àü¼ÛÇÑ ÆÐŶÀÌ ÀÖÀ» ¶§ ÀÌ ÆÐŶ¿¡ ´ëÇÑ ¼ö½Å ¼º°øÀ» ¾Ë¸®´Â ack ÆÐŶÀÌ µµÂøÇϱâ Àü±îÁö´Â ´Ù¸¥ ÆÐŶÀ» Àü¼ÛÇÏÁö ¾Ê°í ¹öÆÛ¿¡ ´ë±â½Ã۵µ·Ï ÇÑ´Ù. ÀÌ·¸°Ô ±â´Ù¸®´Â µ¿¾È¿¡ ¸î °³ÀÇ ÆÐŶÀÌ Àü¼ÛÀ» À§ÇØ ´ë±âÇÏ°Ô µÉ ¼ö ÀÖ°í, ack°¡ µµÂøÇßÀ» ¶§ À̵é Àü¼Û ´ë±â ÆÐŶµéÀ» ÇϳªÀÇ ¼¼±×¸ÕÆ®·Î ¹­¾î¼­ Àü´ÞÇϵµ·Ï ÇÒ ¼ö ÀÖ´Ù.[5]

ÀÌ·¯ÇÑ ¸ÞÄ«´ÏÁòÀº 3.3ÀýÀÇ ÆÄÀÌÇÁ¶óÀÎ µ¿ÀÛ¿¡¼­ ¹®Á¦¸¦ ÀÏÀ¸Å³ ¼ö ÀÖ´Ù.[6] ¿Ö³ÄÇÏ¸é ÆÄÀÌÇÁ¶óÀÎÀ» ÅëÇØ ¿¬¼ÓÀûÀ¸·Î ¿ä±¸ ¸Þ½ÃÁö°¡ Àü´ÞµÇ¾î¾ß Çϴµ¥ Nagle ¾Ë°í¸®Áò¿¡ ÀÇÇØ Áï½Ã Àü¼ÛµÇÁö ¸øÇϰí Àá±ñ ´ë±âÇØ¾ß ÇÏ´Â ¹®Á¦°¡ »ý±â±â ¶§¹®ÀÌ´Ù. ÀÌÀÇ ÇØ°áÃ¥Àº Nagle ¾Ë°í¸®ÁòÀ» »ç¿ëÇÏÁö ¾Ê´Â °ÍÀ¸·Î TCP µ¿ÀÛÀ» ¼³Á¤ÇÏ°í ÆÐŶ Àü¼ÛÀ» ÇÏ¸é µÈ´Ù.

3. ¼º´É °³¼±À» À§ÇÑ ¹æ¹ý

»ç¿ëÀÚ°¡ À¥À» ÀÌ¿ëÇÒ ¶§ Á¦ÀÏ ¸ÕÀú ¹Ù¶ó´Â °ÍÀº ÀÚ½ÅÀÌ ¿øÇÏ´Â ¹®¼­ Á¤º¸¸¦ º¸´Ù »¡¸® °®°í ¿Í¼­ º¸°íÀÚ ÇÏ´Â °ÍÀÌ´Ù. À̰ÍÀ» °¡´ÉÇÏ°Ô ÇØÁÖ´Â °ÍÀ» ¼º´É Çâ»óÀ̶ó ÇßÀ» ¶§, ¼º´É Çâ»óÀ» À§ÇÑ ¹æ¹ýÀº ¾Õ¼­ 1Àý°ú 2Àý¿¡¼­ ¼³¸íÇÏ¿´´ø ¿ä¼ÒµéÀ» ÇØ°áÇÏ´Â ¹æÇâÀ̶ó ÇÒ ¼ö ÀÖ´Ù. ÀÌ Àý¿¡¼­ ´Ù·ç°íÀÚ ÇÏ´Â ³»¿ëÀº ¼º´É Çâ»óÀ» À§ÇÑ ´Ù¾çÇÑ ¹æ¹ýµéÀ» ã¾Æº¸°íÀÚ ÇÏ´Â °ÍÀÌ´Ù.

3.1 ¼º´É ÁÁÀº Çϵå¿þ¾îÀÇ ±¸ÀÔ

Ŭ¶óÀÌ¾ðÆ®°¡ HTTP ¿ä±¸ ¸Þ½ÃÁö¸¦ ¼­¹ö¿¡°Ô Àü¼ÛÇßÀ» ¶§ ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇÏ´Â µ¥¿¡ ½Ã°£ÀÌ °É¸± ¼ö ÀÖÀ¸¸ç, ƯÈ÷ °úºÎÇÏ »óÅÂÀÇ ¼­¹ö³ª ¼­¹öÀÇ ´À¸° Çϵåµð½ºÅ© ¼Óµµ¿¡ ÀÇÇØ Àå½Ã°£ÀÌ °É¸± ¼ö ÀÖ´Ù. ¶ÇÇÑ ¼­¹ö·ÎºÎÅÍ Å¬¶óÀÌ¾ðÆ®¿¡°Ô Àü¼ÛµÈ ÀÀ´ä ¸Þ½ÃÁö°¡ ó¸®µÉ ¶§ »ç¿ëÀÚÀÇ È­¸é¿¡ º¸¿©ÁÖ±â±îÁöÀÇ Ã³¸®¿¡ ½Ã°£ÀÌ ´õ °É¸± ¼ö ÀÖÀ¸¸ç Á¾ÇÕÀûÀÎ ÀÀ´äÀÇ Áö¿¬ÀÌ ÃÊ·¡µÉ ¼ö ÀÖ´Ù.

ÀÌ¿Í °°ÀÌ Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹öÀÇ ´ÊÀº Çϵå¿þ¾îÀû ó¸® ¼Óµµ ¶§¹®¿¡ »ý±â´Â ½Ã°£ Áö¿¬Àº ´õ ¼º´É ÁÁÀº CPU, ´õ ¸¹Àº RAM, º¸´Ù ºü¸¥ HDD µî°ú °°ÀÌ Çϵå¿þ¾î ±¸¼ºÇ°µéÀÇ ¼º´ÉÀ» Çâ»ó½Ã۸é ÇØ°áµÇ´Â ¹®Á¦ÀÌ´Ù.

3.2 Long-lived Connections[3]

ºê¶ó¿ìÀú°¡ ¼­¹ö¿¡°Ô HTML ¹®¼­¸¦ óÀ½ ¿äûÇÒ ¶§ ¼³¸³µÈ TCP ¿¬°áÀ» ¼­¹ö°¡ ¹®¼­¸¦ Àü¼ÛÇÏ°í ³­ ÈÄ¿¡µµ ÇØÁ¦½ÃŰÁö ¾Ê°í ±×´ë·Î ¿¬°áµÈ »óÅ·ΠµÎ´Â °ÍÀ» ¸»ÇÑ´Ù. ÀÌ·¸°Ô °è¼Ó ¼³¸³µÇ¾î ÀÖ´Â TCP ¿¬°áÀ» ÀÌ¿ëÇÏ¿© ¿¬¼ÓÀûÀÎ µ¥ÀÌŸ ¿äûÀ» ÇÒ ¼ö ÀÖÀ¸¸ç, °¢°¢ÀÇ µ¥ÀÌŸ ¼Û¼ö½ÅÀ» À§ÇÑ º°µµÀÇ TCP ¿¬°á ¼³¸³À» ÇÏÁö ¾Ê¾Æµµ µÇ¹Ç·Î ÇÁ·ÎÅäÄÝ ¼º´ÉÀ» Çâ»ó½Ãų ¼ö ÀÖ´Ù.

±×¸² 5´Â ÀÌ·¯ÇÑ °úÁ¤À» ³ªÅ¸³»´Â ±×¸²À̸ç, ±×¸² 4¿¡ ±×·ÁÁ® ÀÖ´Â ¿¬¼ÓÀûÀÎ ¹®¼­ ¿äû¿¡ ´ëÇÑ °¢°¢ÀÇ TCP ¿¬°áÀ» ¼³¸³ÇÏ´Â °úÁ¤ÀÌ ±×¸² 5¿¡´Â »ý·«µÇ¾î ÀÖÀ½À» ¾Ë ¼ö ÀÖ´Ù.

Packet exchanges with long-lived connections
[±×¸² 5] Long-lived connections¿¡¼­ÀÇ ÆÐŶ ±³È¯

¶ÇÇÑ Àå½Ã°£ ¿¬°áµÇ¾î ÀÖ´Â TCP ¿¬°áÀ» ÅëÇØ 2.3Àý¿¡¼­ ¼³¸íµÈ ½½·Î¿ì ½ºÅ¸Æ®ÀÇ ¹®Á¦Á¡µµ ÇØ¼ÒµÉ ¼ö ÀÖ´Ù. ±×·¸´Ù°í ÇØ¼­ ¹«ÇÑÁ¤ ÀÌ ¿¬°áÀ» Áö¼Ó½Ãų ¼ö´Â ¾ø´Â °ÍÀ̹ǷΠŬ¶óÀÌ¾ðÆ®·ÎºÎÅÍ ¾Æ¹«·± ¿ä±¸°¡ ¾øÀÌ ÀÏÁ¤ ½Ã°£ÀÌ Áö³ª¸é ¼­¹ö°¡ ¿¬°áÀ» ÇØÁ¦ÇÏ´Â ¹æ½ÄÀ¸·Î ó¸®ÇÒ ¼ö ÀÖ´Ù.

ÀÌ·¯ÇÑ Çâ»óÀ» À§Çؼ­´Â Ŭ¶óÀÌ¾ðÆ®¿Í ¼­¹ö ¾çÃø¿¡¼­ HTTP ÇÁ·ÎÅäÄÝÀÇ µ¿ÀÛ ¸ÞÄ«´ÏÁòÀ» ¾à°£ ¼öÁ¤ÇØ ÁÖ¾î¾ß ÇÑ´Ù.

3.3 ÆÄÀÌÇÁ¶óÀÌ´× (Piplelining)

3.2ÀýÀÇ ¹æ¹ýÀ» ÀÌ¿ëÇÏ¿© ¿¬¼ÓÀûÀÎ È­ÀÏ ¼Û¼ö½ÅÀÇ °æ¿ì¿¡ °¢°¢¿¡ ´ëÇÑ TCP ¿¬°áÀ» °³º°ÀûÀ¸·Î ¼³¸³ÇÏ´Â ºÎ´ãÀº ÁÙ¾îµé ¼ö ÀÖÁö¸¸, °³°³ÀÇ ÆÄÀÏÀ» °®°í ¿À±â À§Çؼ­´Â ÇØ´ç °¹¼ö¸¸Å­ÀÇ RTT°¡ °É¸°´Ù´Â ¹®Á¦´Â ¿©ÀüÈ÷ Á¸ÀçÇÑ´Ù.

ÀÌ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Â ¹æ¾ÈÀÌ ÆÄÀÌÇÁ¶óÀÎ ¹æ½ÄÀÌ´Ù. À̰ÍÀº ¸î °¡Áö ¹æ½ÄÀ¸·Î Ç¥ÇöÀÌ °¡´ÉÇÏ´Ù. ÀÌÀÇ ±âº»ÀûÀÎ ÀüÁ¦´Â ÇϳªÀÇ TCP ¿¬°áÀ» ÅëÇØ ÀÌ·ç¾îÁø´Ù´Â °ÍÀε¥, »ó½Ã ¿¬°á ¶Ç´Â long-lived ¿¬°áÀ» ÅëÇØ ±¸ÇöÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù.

GETALL method[3]
Ŭ¶óÀÌ¾ðÆ®°¡ ¿ä±¸ ¸Þ½ÃÁö¸¦ º¸³¾ ¶§ °°Àº ¼­¹ö ³»¿¡ ÀÖ´Â È­ÀϵéÀ» ÇѲ¨¹ø¿¡ º¸³»´Þ¶ó°í ÇÏ´Â °ÍÀÌ´Ù. ¼­¹ö°¡ ¼Û½ÅÇÏ´Â HTML ¹®¼­ ¼Ó¿¡´Â Åë»óÀÇ °æ¿ì ¿©·¯ °³ÀÇ ±×¸² È­ÀÏÀÌ ÇÔ²² ¸µÅ©µÇ¾î ÀÖÀ¸¸ç À̵éÀº ´ëºÎºÐ °°Àº ¼­¹ö ³»¿¡ À§Ä¡Çϰí ÀÖ´Ù.

±×·¯¹Ç·Î Ŭ¶óÀÌ¾ðÆ®°¡ º¸³»´Â ¿ä±¸ ¸Þ½ÃÁö·Î¼­ GETALLÀ» Á¤ÀÇÇÏ¿© HTML ¹®¼­ ¼Ó¿¡ °°ÀÌ ¸µÅ©µÇ¾î ÀÖÀ¸¸ç °°Àº ¼­¹ö¿¡ À§Ä¡Çϰí ÀÖ´Â ¸ðµç È­ÀϵéÀ» ÇϳªÀÇ ÀÀ´ä ¸Þ½ÃÁö·Î¼­ ¼­¹ö°¡ º¸³»µµ·Ï ÇÒ ¼ö ÀÖ´Ù. À̰ÍÀ» À§ÇØ ¼­¹ö´Â HTML ¹®¼­¸¦ ¸ÕÀú parsingÇÏ¿©¾ß ÇÏ°í ±× °á°ú·Î¼­ ³»ºÎ¿¡ ¸µÅ©µÇ¾î ÀÖ´Â ±×¸² ¹®¼­µéÀÇ À§Ä¡ Á¤º¸¸¦ ÆÄ¾ÇÇÏ°í ¼­¹ö°¡ À̵éÀ» Àü¼ÛÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.

ÀÌ·¸°Ô ÇÏ¸é °³°³ È­ÀÏÀ» °®°í ¿À±â À§ÇØ ¿©·¯ °³ÀÇ TCP ¿¬°áÀ» ¸¸µé¾î¾ß ÇßÀ¸³ª ÇϳªÀÇ TCP ¿¬°á¸¸ ¼³¸³ÇÏ°í¼­ ¸ðµç °ÍÀ» º¸³»¶ó´Â ÇϳªÀÇ ¿ä±¸ ¸Þ½ÃÁö¿Í ÇØ´çÇÏ´Â ¸ðµç È­ÀÏÀ» ¹­¾î¼­ ÇϳªÀÇ ÀÀ´ä ¸Þ½ÃÁö·Î Àü¼ÛÇÏ´Â °ÍÀÌ °¡´ÉÇϸç, ¼º´ÉÀÇ Çâ»óÀº ¸í¾à°üÈ­ÇÏ´Ù.

ÀÌ ¹æ½ÄÀº ¼­¹ö¿¡°Ô HTML ¹®¼­ÀÇ ÆÄ½ÌÀ̶ó´Â Ãß°¡ÀûÀÎ ºÎ´ãÀ» ¾È°ÜÁÖ±â´Â ÇÏÁö¸¸, ¿¬¼ÓÀûÀÎ ±×¸² È­ÀÏÀÇ Àü¼Û ¿ä±¸ ¸Þ½ÃÁö¸¦ ¹Ì¿¬¿¡ ¹æÁöÇÒ ¼ö ÀÖ´Â ÀÕÁ¡À» ¸¸µé°Ô µÇ°í, ÀüüÀûÀ¸·Î´Â ¼º´ÉÀÇ Çâ»óÀ» º¸ÀåÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ´Ù.

GETLIST method[3]
Ŭ¶óÀÌ¾ðÆ®¿¡¼­ »ç¿ëÇϴ ij½Ã Á¤º¸ ¼Ó¿¡´Â ÀÌ¹Ì ¸¹Àº ¹®¼­µéÀÌ Ä³½ÃµÇ¾î ÀÖÀ» ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ »óȲ¿¡¼­ GETALLÀ» ÅëÇØ ¼­¹ö·ÎºÎÅÍ ¸ðµç °ü·Ã È­ÀÏÀ» ¹«Á¶°Ç °¡Á®¿Â´Ù¸é À̰͵µ ¹®Á¦ÀÌ´Ù. ±×·¡¼­ ¸ÕÀú GET method¸¦ ÀÌ¿ëÇÏ¿© ´ë»ó HTML È­ÀÏÀ» ¸ÕÀú °¡Á®¿À°í, ÀÌ ¼ÓÀÇ Á¤º¸¸¦ ºÐ¼®ÇÏ¿© ij½ÃµÇ¾î ÀÖÁö ¾ÊÀº È­Àϵ鿡 ´ëÇØ¼­¸¸ ÇϳªÀÇ ÀÀ´ä ¸Þ½ÃÁö·Î¼­ Àü¼ÛÇØ´Þ¶ó°í ÇÒ ¼ö ÀÖ´Ù. GET ÀÌÈÄÀÇ µ¿ÀÛ¿¡¼­ GETLIST´Â ÀÌ·¯ÇÑ ¸ñÀûÀ¸·Î ¾²ÀÏ ¼ö ÀÖ´Ù.

À̰ÍÀº ¿¬¼ÓÀûÀÎ GETÀÇ °æ¿ì·Î¼­ ¾Õ¼­ Àü´ÞµÈ GETÀÇ ÀÀ´äÀÌ Å¬¶óÀÌ¾ðÆ®¿¡°Ô ¾ÆÁ÷ µµÂøÇÏÁö ¾Ê¾ÒÀ½¿¡µµ °è¼Ó GETÀ» º¸³»¾î ÀÀ´äÀ» ¿ä±¸ÇÏ´Â °Í°ú ³í¸®ÀûÀ¸·Î ¶È°°Àº »óȲÀÌ´Ù.

¿¬¼ÓÀûÀÎ GET method[4]
À§ µÎ °¡Áö ¹æ¹ýÀº º°µµÀÇ HTTP method¸¦ Á¤ÀÇÇÏ¿©¾ß ÇÏ´Â ¹æ½ÄÀÌ´Ù. ÀÌ¿Í °°ÀÌ Á¤ÀÇÇÏÁö ¾Ê´õ¶óµµ GETLISTÀÇ ¼³¸í¿¡¼­ Àá½Ã ¾ð±ÞµÇ¾ú´ø °Íó·³ ¿¬¼ÓÀûÀÎ GET method¸¦ »ç¿ëÇÔÀ¸·Î½á °¡´ÉÇÏ´Ù.

±âÁ¸ÀÇ HTTP ÇÁ·ÎÅäÄÝ ¸ÞÄ«´ÏÁò¿¡¼­´Â ¿¬¼ÓÀûÀÎ GETÀ» º¸³¾ ¼ö´Â ÀÖ¾úÀ¸³ª ¸ðµÎ º°°³ÀÇ TCP ¿¬°áÀ» ÅëÇØ ÀÌ·ç¾îÁ³°í, Àü´ÞµÈ ¿ä±¸ ¸Þ½ÃÁö °¹¼ö¸¸Å­ÀÇ TCP ¿¬°áÀÌ Á¸ÀçÇß¾î¾ß Çß´Ù. À̰ÍÀº ±×¸² 6ÀÇ ¿ÞÂÊ ±×¸²¿¡ ±×·ÁÁ® ÀÖ´Â ¹æ½ÄÀÌ´Ù.

Pipeline
[±×¸² 6] ±âÁ¸ ¹æ½Ä°ú ÆÄÀÌÇÁ¶óÀÎ ¹æ½ÄÀÇ ºñ±³

'¿¬¼ÓÀûÀÎ GET' ¹æ¹ý¿¡¼­ ¸»ÇϰíÀÚ ÇÏ´Â °ÍÀº ÇϳªÀÇ long-lived ¿¬°áÀ» ¸Î¾î ¾ÆÁ÷ ÀÀ´ä ¸Þ½ÃÁö°¡ µµÂøÇÏÁö ¾Ê¾ÒÀ½¿¡µµ ¿¬¼ÓÀûÀÎ GET ¿ä±¸ ¸Þ½ÃÁö¸¦ ¼­¹ö¿¡°Ô Àü´ÞÇÑ´Ù. À̶§ ¼­¹ö´Â ¿ä±¸ ¸Þ½ÃÁö¸¦ ¼ö½ÅÇÑ ¼ø¼­´ë·Î ÀÀ´ä ¸Þ½ÃÁö¸¦ Àü´ÞÇØ¾ß ÇÑ´Ù. ÀÌ¿¡ ´ëÇÑ ±×¸²ÀÌ À§ ±×¸² 6ÀÇ ¿À¸¥ÂÊ¿¡ ÀÖ´Â °ÍÀÌ´Ù.

3.4 µ¥ÀÌŸ ¾ÐÃà[7]

¼º´É Çâ»óÀÇ ¹æ¹ýÀ¸·Î¼­ ÇÁ·ÎÅäÄÝÀÇ µ¿ÀÛÀ» °³¼±ÇÏ´Â ¹æ¹ýµµ ÀÖÀ¸³ª Àü¼ÛÇÒ µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÓÀ¸·Î½áµµ °¡´ÉÇÏ´Ù. ÀÌ·¯ÇÑ ¹æ¹ýÀ¸·Î¼­ ¾²ÀÏ ¼ö ÀÖ´Â °ÍÀÌ Àü¼ÛÇÒ ¹®¼­ È­ÀÏÀ» ¾ÐÃàÇϰí Ŭ¶óÀÌ¾ðÆ®¿¡¼­ Ç®¾î¼­ »ç¿ëÀÚ¿¡°Ô º¸¿©ÁÖ´Â ¹æ¹ýÀÌ´Ù.

Ŭ¶óÀÌ¾ðÆ®¿¡¼­ "Accept-Encoding: deflate" Çì´õ¸¦ ¿ä±¸ ¸Þ½ÃÁö¿¡ Æ÷ÇÔ½ÃÄѼ­ º¸³»¸é ¼­¹ö¿¡¼­´Â µ¥ÀÌŸ ºÎºÐÀ» deflate ¹æ½ÄÀ¸·Î ¾ÐÃàÀ» Çϰí ÀÀ´ä ¸Þ½ÃÁöÀÇ »ç¿ëÀÚ µ¥ÀÌŸ ºÎºÐ¿¡ ½Ç¾î¼­ º¸³»°Ô µÈ´Ù. À̶§ ÀÀ´ä ¸Þ½ÃÁö¿¡´Â "Content-Encoding" Çì´õ°¡ Ãß°¡µÇ°í ¾î¶² ¹æ½ÄÀ¸·Î ¾ÐÃàµÇ¾î ÀÖ´ÂÁö ¾Ë·ÁÁØ´Ù. Ŭ¶óÀÌ¾ðÆ®¿¡¼­´Â ÀÌ Á¤º¸¸¦ º¸°í¼­ ¿ø·¡ µ¥ÀÌŸ·Î º¹¿øÇÏ°í »ç¿ëÀÚ¿¡°Ô º¸¿©ÁØ´Ù.

À̸¦ ÅëÇÑ ¼º´ÉÀÇ Çâ»óÀº ¾à 10 ÆÛ¼¾Æ®´ë¿¡ À̸¥´Ù. ½ÇÇè¿¡ µû¶ó 14 ÆÛ¼¾Æ® ¶Ç´Â 17 ÆÛ¼¾Æ®ÀÇ Çâ»óÀ» º¸°íÇϰí Àֱ⵵ ÇÏ´Ù.

3.5 ȨÆäÀÌÁö Á¦ÀÛ ±â¹ýÀÇ º¯È­[7]

ÀÌ¿¡ ´ëÇØ¼­ ¼º´É Çâ»óÀÇ °üÁ¡¿¡¼­ ¹Ù¶óº»´Ù¸é »ç¿ëÀÚ¿¡°Ô Àü¼ÛÇÒ µ¥ÀÌŸÀÇ Å©±â¸¦ ÁÙÀÌ´Â ¹æ½ÄÀ̶ó ÇÒ ¼ö ÀÖ´Ù. À̺¸´Ùµµ ´õ¿í ÁÖ¸ñÀ» ²ô´Â °ÍÀº »ç¿ëÀÚ¿¡°Ô º¸´Ù ´Ù¾çÇÑ ±×·¡ÇÈ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇØÁÙ ¼ö ÀÖ°í, ȨÆäÀÌÁö Á¦ÀÛ ¹× µðÀÚÀ̳ʿ¡°Ô ±×¸² È­ÀϵéÀÇ Á¶ÀÛÀ» ÅëÇØ ½ÇÇö½Ãų ¼ö¹Û¿¡ ¾ø¾ú´ø Ç¥Çö Çü½ÄµéÀ» ´õ¿í ¼Õ½±°Ô ´Ù¾çÇÑ ÇüÅ·Π¸¸µé¾îÁÙ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù.

À̰ÍÀ» À§ÇÑ ¿ëµµ·Î¼­ µîÀåÇÑ °ÍÀÌ CSS(Cascading Style Sheets)¿Í PNG(Portable Network Graphic)¶ó°í ÇÏ´Â °ÍÀÌ´Ù. CSS´Â ¹®¼­ÀÇ ¸ð¾çÀ» °áÁ¤ÇÏ´Â ¿ä¼ÒµéÀ» º°µµ·Î Á¤ÀÇÇϰí HTML º»·¡ ¹®¼­¿Í °áÇÕ½ÃÅ´À¸·Î½á CSS¸¸ º¯°æ½ÃÄѵµ ´Ù¾çÇÑ ÇüÅ·Π¹®¼­ÀÇ ¸ð½ÀÀ» ¹Ù²Ü ¼ö ÀÖ´Ù. ¶ÇÇÑ ¹®¼­ÀÇ Ç¥Çö ¾ç½ÄÀ» ³ªÅ¸³»±â À§ÇØ ¾²ÀÌ´ø °¢Á¾ ¾ÆÀÌÄÜ ±×¸²µéÀ» CSS¿¡¼­ Á¤ÀÇÇϵµ·Ï ÇÔÀ¸·Î½á ±×¸² È­ÀÏ·Î Àü¼ÛÇØ¾ß Çß´ø °ÍµéÀ» HTML ¹®¼­ÀÇ ÅÂ±×¿Í CSS Ç¥ÇöÀ¸·Î¼­ °¡´ÉÇØÁ³°í, Àü¼ÛÀÇ ´ë»óÀÌ µÇ¾ú´ø ±×¸²µéÀ» Àü¼ÛÇÏÁö ¾Ê¾Æµµ µÊÀ¸·Î½á »ó´çÇÑ ¼º´ÉÀÇ Çâ»óÀ» ±â´ëÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù.

PNG¸¦ ÅëÇØ¼­µµ ¾î´À Á¤µµÀÇ Çâ»óÀ» ±â´ëÇÒ ¼ö Àִµ¥, ÀÌ°Í ¿ª½Ã µ¥ÀÌŸÀÇ Å©±â¸¦ ¾à°£ ÁÙ¿©ÁÖ´Â È¿°ú¸¦ ¹ßÈÖÇÑ´Ù. ƯÈ÷ gamma informationÀ» PNG ³»ºÎ¿¡ °®°í ÀÖÀ¸¹Ç·Î ÇØ¼­ ¸ðµç Ç÷§Æû¿¡¼­ ¶È°°Àº ±×¸²À» º¸¿©ÁÙ ¼ö ÀÖµµ·Ï Çϰí ÀÖ´Ù. GIF¿Í °°Àº È­ÀÏ Çü½Ä¿¡¼­´Â ÀÌ·¯ÇÑ ±â´ÉÀÌ Á¦°øµÇÁö ¾Ê´Â´Ù. µ¥ÀÌŸÀÇ Å©±â¿¡ À־µµ °æ¿ì¿¡ µû¶ó¼± GIFº¸´Ù PNGÀÇ Å©±â°¡ Å« ¶§µµ ÀÖÀ¸³ª ´ëºÎºÐ PNGÀÇ µ¥ÀÌŸ Å©±â°¡ ¾à°£ ÀÛÀº °ÍÀ¸·Î ³ªÅ¸³ª°í ÀÖ´Ù.

ȨÆäÀÌÁö Á¦ÀÛ¿¡ ¾²ÀÌ´Â »ó´ç¼ö ¾ÆÀÌÄÜ ±×¸²µéÀº HTML°ú CSS1ÀÇ Á¶ÇÕÀ¸·Î Ç¥ÇöÀÌ °¡´ÉÇÏ´Ù. ¾ÆÀÌÄÜ ±×¸² ´ë½Å¿¡ HTML°ú CSS1ÀÇ Á¶ÇÕÀ¸·Î Ç¥ÇöÇÏ°Ô µÇ¸é ´ÙÀ½°ú °°Àº µÎ °¡Áö ÀÕÁ¡ÀÌ »ý±ä´Ù.

  1. TCP ¿¬°áÀ» ¼³¸³ÇÒ Çʿ䰡 ¾ø¾îÁø´Ù. GIF ¶Ç´Â JPG Çü½ÄÀ¸·Î ¸¸µé¾îÁ® ÀÖ´ø ¾ÆÀÌÄÜ ±×¸²µéÀ» Àü¼ÛÇϱâ À§Çؼ­´Â È­Àϵ鸶´Ù º°µµÀÇ TCP ¿¬°áÀ» ¸¸µé¾î¼­ Àü¼ÛÇß¾î¾ß ÇßÀ¸³ª, ±×¸² ¾ÆÀÌÄܵéÀ» CSS1¿Í HTML ¹®¼­ÀÇ Á¶ÇÕÀ¸·Î Ç¥ÇöÇÒ ¼ö ÀÖ¾î óÀ½ÀÇ HTML ¹®¼­ Àü¼Û½Ã¿¡ ¸ðµç Àü¼ÛÀÌ ³¡³¯ ¼ö ÀÖ´Ù.

  2. Àü¼ÛÇÒ µ¥ÀÌŸÀÇ ¾çÀÌ ÁÙ¾îµç´Ù. GIF ¶Ç´Â JPG Çü½ÄÀÇ ±×¸² È­ÀÏ·Î µÇ¾î ÀÖ´ø ¾ÆÀÌÄܵéÀ» CSS1 + HTML·Î¼­ °£´ÜÇÏ°Ô Ç¥ÇöÇÒ ¼ö ÀÖ¾î Àü¼ÛÇØ¾ß ÇÒ µ¥ÀÌŸÀÇ ¾çÀÌ ¸¹ÀÌ ÁÙ¾îµç´Ù. ½ÇÇèÀûÀ¸·Î º¼ ¶§ 4/1¿¡¼­ 1/5 Á¤µµÀÇ °¨¼Ò È¿°ú°¡ ÀÖ°í, ±×¸² ¾ÆÀÌÄÜÀÇ Á¾·ù¿¡ µû¶ó 1/2 Á¤µµÀÇ °¨¼Ò È¿°ú¸¦ ³ªÅ¸³»´Â °æ¿ìµµ ÀÖ´Ù.

HTML°ú CSS1ÀÇ Á¶ÇÕÀ¸·Î Ç¥ÇöÇÒ ¼ö ¾ø´Â ±×¸² ¾ÆÀÌÄܵéÀº PNG·Î¼­ Ç¥ÇöÇÒ ¼öµµ Àִµ¥, ¾à°£ÀÇ µ¥ÀÌŸ ¾çÀÇ °¨¼Ò È¿°ú¸¦ º¼ ¼ö ÀÖ´Ù. ½ÇÇè °á°ú¿¡ µû¸£¸é, ÃѰè 80601 ¹ÙÀÌÆ®ÀÎ 14°³ ±×¸²¿¡ ´ëÇÑ PNG Çü½ÄÀÇ ±×¸²Àº ÃѰè 71913 ¹ÙÀÌÆ®·Î Ç¥ÇöµÇ°í 8688 ¹ÙÀÌÆ®ÀÇ °¨¼Ò È¿°ú¸¦ º¸¿´´Ù.

ÀÌ»ó°ú °°Àº ¹æ¹ýÀ» ÅëÇØ ÃѰèÀûÀÎ Àü¼Û µ¥ÀÌŸÀÇ °¨¼Ò¿Í HTTP ¿ä±¸ ¸Þ½ÃÁöÀÇ °¨¼Ò È¿°ú¸¦ º¼ ¼ö ÀÖ´Ù. À̰ÍÀº CPUÀÇ Ã³¸® ½Ã°£ °¨¼Ò, ÇÁ·ÎÅäÄÝ µ¿ÀÛÀÇ ´Ü¼øÈ­, Àü¼Û ½Ã°£ °¨¼Ò µî°ú °°Àº Á¾ÇÕÀûÀÎ ¼º´ÉÀÇ Çâ»óÀ¸·Î Á÷°áµÈ´Ù.

3.6 Range Requests[7]

ºê¶ó¿ìÀú Ãø¸é¿¡¼­ º¼ ¶§ ¼­¹ö¿¡ ÀÖ´Â ÀÚ·áµéÀÌ ¾î¶² °ÍÀÎÁö ¹Ì¸® ¾Ë ¼ö ÀÖ´Â ¹æ¹ýÀº ÀüÇô ¾ø´Ù. ÀÏ´Ü ºê¶ó¿ìÀú·Î °®°í ¿Í¼­ º¸¾Æ¾ß¸¸ »ç¿ëÀÚ Àڽſ¡°Ô ÇÊ¿äÇÑ °ÍÀÎÁö ¾Æ´ÑÁö ¾Ë ¼ö ÀÖ´Ù. ±×·¯¹Ç·Î ºÒÇÊ¿äÇÑ È­ÀÏ Àü¼ÛÀÌ ÀϾ °¡´É¼ºÀÌ ¸Å¿ì ³ôÀº °ÍÀÌ »ç½ÇÀÌ´Ù.

ÀÌ·¯ÇÑ °æ¿ì¿¡ ¹®¼­ È­ÀÏÀÇ ÀϺκи¸ °¡Á®¿À°í ÇÊ¿äÇÑ °ÍÀÏ ¶§ ³ª¸ÓÁö ÀüºÎ¸¦ °¡Á®¿Àµµ·Ï ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ¶ÇÇÑ ±×¸² È­ÀÏÀÇ °æ¿ì¿¡ Àüü¸¦ °¡Á® ¿À±â Àü¿¡ ±×¸²ÀÇ Àüü ¸ð½À¸¸ ¸ÕÀú º¸µµ·Ï ÇÒ ¼öµµ ÀÖ´Ù. Áï, ¾î´À °æ¿ìÀ̵ç È­ÀÏÀÇ ÀϺκи¸ ¸ÕÀú °¡Á® ¿Àµµ·Ï ÇÏ´Â ±â´ÉÀº ¼º´É °³¼±ÀÇ ÇÑ °¡Áö ¿ä¼Ò°¡ µÉ ¼ö ÀÖ´Ù.

4. HTTP/1.1¿¡¼­ÀÇ ¼º´É Çâ»ó ¹æ¹ý

HTTP/1.1À» ÅëÇØ ±¸ÇöÇÑ ¼º´É Çâ»ó ±â¹ýÀº ´ÙÀ½°ú °°Àº ¼¼ °¡Áö·Î¼­ ±¸º°ÇÒ ¼ö ÀÖ´Ù.[7]

  1. ÆÄÀÌÇÁ¶óÀÎÀ» ÅëÇØ ¿¬¼ÓÀû ¿ä±¸ ¹× ÀÀ´äÀÇ ¹æ¹ý
  2. Àü¼ÛÇÒ µ¥ÀÌŸÀÇ ¾ÐÃàÀ» ÅëÇØ Àü´ÞÇØ¾ß ÇÒ µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÌ´Â ¹æ¹ý
  3. CSS¿Í PNG¸¦ ÀÌ¿ëÇÑ È¨ÆäÀÌÁö Á¦ÀÛ ¹æ¹ýÀÇ º¯È­

ù ¹øÂ°ÀÇ °æ¿ì´Â HTTP ÇÁ·ÎÅäÄÝÀÇ µ¿ÀÛ ¹æ½ÄÀ» °³¼±ÇÑ °ÍÀ̰í, µÎ ¹øÂ° °æ¿ì´Â Àü¼ÛÇÒ µ¥ÀÌŸ ¾çÀ» ÁÙÀÌ´Â ¹æ½ÄÀ̸ç, ¼¼ ¹øÂ° °æ¿ì¿¡¼­ CSS´Â µ¥ÀÌŸÀÇ ¾çÀ» ÁÙÀÌ°í ¶ÇÇÑ Àü¼ÛÇß¾î¾ß ÇÒ ¿ä±¸ ¸Þ½ÃÁö¸¦ Àü¼ÛÇÏÁö ¾Ê¾Æµµ µÇ°Ô²û Çϰí ÀÖ°í, ¼¼ ¹øÂ° °æ¿ì¿¡¼­ PNG´Â ¾à°£ÀÇ µ¥ÀÌŸ ¾ç °¨¼Ò ¹× Ãß°¡ÀûÀÎ ±â´É Á¦°øÀ» Çϰí ÀÖ´Ù.

ÀÌ¿Í ÇÔ²² ¼º´É °³¼±À» À§ÇÑ ±¸Çö °üÁ¡ÀÇ Ãß°¡ »çÇ×µµ ÀÖ´Ù. 2.7Àý¿¡¼­ ¸»ÇÑ Nagle ¾Ë°í¸®ÁòÀº short-lived connectionsÀ» ±â¹ÝÀ¸·Î ÇÏ´Â HTTP/1.0¿¡¼­´Â ¼º´É ¹®Á¦¸¦ ¾ß±â½ÃŰÁö ¾ÊÀ¸³ª, long-lived connectionsÀ» ±â¹ÝÀ¸·Î ÇÏ´Â HTTP/1.1 ÇÁ·ÎÅäÄÝ ±¸Á¶¿¡¼­´Â ÆÄÀÌÇÁ¶óÀÎ µ¿ÀÛ ¸ÞÄ«´ÏÁòÀ» ÀÌ¿ëÇϰí ÀÖ¾î ½É°¢ÇÑ ¹®Á¦¸¦ ÀÏÀ¸Å°¹Ç·Î »ç¿ëÇÏÁö ¾Êµµ·Ï ÇÏ¿©¾ß ÇÑ´Ù. À̸¦ À§ÇØ TCP_NODELAY ¼ÒÄÏ ¿É¼ÇÀ» »ç¿ëÇÏ¿©¾ß ÇÑ´Ù.

HTTP/1.1¿¡¼­´Â 3.6ÀýÀÇ ±â´ÉÀ» À§ÇØ If-Range ¿ä±¸ Çì´õ¸¦ Á¤ÀÇÇÏ¿© µ¥ÀÌŸÀÇ ÀϺκи¸ ¼±º°ÀûÀ¸·Î °¡Á® ¿Ã ¼ö ÀÖ°Ô²û ÇÑ´Ù. À̰ÍÀ» ÀÌ¿ëÇÏ¿© ¾î¶² ¿ÀºêÁ§Æ® È­ÀÏÀÇ ¸ÞŸ µ¥ÀÌŸ¸¸ °¡Á®¿Í¼­ °øÅëÀûÀÎ µ¥ÀÌŸ Çü½Ä¿¡ ´ëÇØ ¾Ë ¼ö ÀÖµµ·Ï ÇÑ´Ù.

5. °á·Ð

HTTP/1.1 ÇÁ·ÎÅäÄÝ ¼³°è¿¡ À־ 4Àå¿¡¼­ ¾ð±ÞÇÑ ³»¿ëµéÀÇ Á¾ÇÕÀûÀÎ ¼º´É Çâ»ó È¿°ú´Â ´«¿¡ µÎµå·¯Áö°Ô ³ªÅ¸³ª°í ÀÖ´Ù. µ¿½Ã ¿¬°áÀ» ÅëÇØ ¿©·¯ °³ÀÇ µ¥ÀÌŸ È­ÀÏÀ» °¡Á®¿À´ø HTTP/1.0 ¸ðµ¨¿¡ ºñÇØ ¼Û¼ö½ÅÇÏ´Â ÆÐŶÀÇ °¹¼ö¸¦ ±âÁØÀ¸·Î Çϸé Àû¾îµµ 2¹è, Á¾Á¾ ±× ÀÌ»óÀÇ ºñÀ²·Î °¨¼Ò½ÃÄÑ ÁÖ°í, RTT ½Ã°£ÀÇ °¨¼Ò È¿°ú´Â ÆÐŶ °¹¼ö °¨¼Ò¿¡ ºñÇÏ¸é ´ú Çϱä ÇÏÁö¸¸ ±×·¡µµ ÁÖ¸ñÇÒ ¸¸Å­ÀÇ °¨¼Ò È¿°ú¸¦ º¸¿© ÁÖ¾úÀ¸¸ç, HTTP/1.1ÀÇ ÀÇÇÑ bandwidth °¨¼Ò´Â °¢Á¾ ¼º´É Çâ»ó ¿ä¼ÒµéÀÇ È°¿ë ¿©ºÎ¿¡ µû¶ó 2ÆÛ¼¾Æ®¿¡¼­ 35ÆÛ¼¾Æ® Á¤µµÀÇ Â÷À̸¦ º¸¿´°í, ÀÌ¿¡´Â ij½ÃÀÇ È°¿ë ¿©ºÎµµ ¸Å¿ì Áß¿äÇÑ ¿ªÇÒÀ» Â÷ÁöÇÑ´Ù.[7]

ÀÌ»ó°ú °°Àº HTTP/1.1 ¸ðµ¨Àº ÀÎÅÍ³Ý »ó¿¡¼­ÀÇ Æ®·¡ÇÈ Æ¯¼º¿¡µµ ¿µÇâÀ» ¹ÌÄ¡´Â ¿ä¼ÒÀÌ´Ù. ÇöÀçÀÇ ÀÎÅͳݿ¡¼­ Ȱ¿ëµÇ´Â À¥ Æ®·¡ÇÈÀÇ Áõ°¡ ¼Óµµ´Â °æÀ̷οï Á¤µµÀ̸ç ÀÌÁ¦´Â FTP¿Í ½Öº®À» ÀÌ·ç°í ÀÖ´Â »óȲÀ̹ǷΠ»õ·Ó°Ô º¯È­µÉ HTTP/1.1¿¡ ÀÇÇÑ À¥ Æ®·¡ÇÈÀº ÀÎÅÍ³Ý »óÀÇ Æ®·¡ÇÈ Æ¯¼º¿¡Á¶Â÷ ¿µÇâÀ» ¹ÌÄ¡°Ô µÈ´Ù. Æò±ÕÀûÀÎ ÆÐŶÀÇ Å©±â°¡ Ä¿Áö°í TCP ¿¬°á´ç ¼Û¼ö½ÅµÇ´Â ÆÐŶÀÇ °¹¼ö°¡ ¸¹¾ÆÁö¸ç TCP ¿¬°á ¼³¸³°ú ÇØÁ¦¸¦ À§ÇØ ¾²ÀÌ´ø ÆÐŶÀÌ ´ëºÎºÐ »ç¶óÁö°Ô µÈ´Ù.

À¥ÀÇ ±â¹Ý Åë½Å ±¸Á¶°¡ º¯È­µÇ¸é¼­ Àü¹ÝÀûÀÎ Åë½Å¸Á ȯ°æÀÇ °³¼±¿¡µµ ±â¿©ÇÏ°Ô µÇ¸ç »ç¿ëÀÚµéÀÌ Á÷Á¢ÀûÀ¸·Î ´À³¢´Â Çâ»óµµ ´À³¢°Ô µÇ¾î È®´ë Àç»ý»êÀÇ Ãʼ®ÀÌ µÇ°Ô µÈ´Ù.

References:

[1]
W3C, "HTTP/1.1 Performance Overview", http://www.w3.org/pub/WWW/Protocols/HTTP/Performance/
[2]
Simon E. Spero, "Analysis of HTTP Performance problems", W3C, http://www.w3.org/pub/WWW/Protocols/HTTP/1.0/HTTPPerformance.html
[3]
Venkata N. Padmanabhan and Jeffrey C. Mogul, "Improving HTTP Latency", Computer Networks and ISDN Systems, V.28, pp.25-35, Dec. 1995, http://www.ncsa.uiuc.edu/SDG/IT94/Proceedings/DDay/mogul/HTTPLatency.html
[4]
R. Fielding, J. Gettys, J.C. Mogul, H. Frystyk, T. Berners-Lee, "RFC 2068 - Hypertext Transfer Protocol - HTTP/1.1", UC Irvine, Digital Equipment Corporation, MIT
[5]
W. Richard Stevens, "TCP/IP Illustrated, Volume 1", Addison-Wesley, pp.267
[6]
John Heidemann, "Performance Interactions Between P-HTTP and TCP Implementations", USC/Information Sciences Institute, ACM Computer Communication Review, April 1997
[7]
Henrik Frystyk Nielsen, etc., "Network Performance Effects of HTTP/1.1, CSS1, and PNG", W3C