Ãâó : http://www.ipv6.or.kr/archive/kripv6forum/html/0973.html

Re: SCTP ÀÚ·á ¿äû

From: Yong-Woon KIM (qkim@futuretel.co.kr)
Date: Thu Nov 29 2001 - 11:28:00 KST


> 'A New Transport Protocol for TCP/IP'·Î ºÒ¸®´Â
> SCTP(Strream Control Transmission Protocol) ÀÚ·á °¡ ÀÖ½º½Å ºÐÀº
> ÀڷḦ º¸³»ÁÖ½Ã¸é °í¸¿°Ú½À´Ï´Ù?

¿©±â °¡½Ã¸é ¿øÇϽô ¹®¼­ ´Ù ãÀ» ¼ö ÀÖÀ» °Ì´Ï´Ù.

http://www.sctp.de/

¾Æ·¡¿¡ °¡½Ã¸é sourceforge¿¡¼­ ÇÏ´Â Linux Ä¿³Î ÇÁ·ÎÁ§Æ®¸¦
±¸°æÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.

http://sourceforge.net/projects/lksctp/

¾Æ·¡¿¡ °¡½Ã¸é Overview ¼³¸íÇØ ³õÀ» °ÍÀ» º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

http://sctp.chicago.il.us/sctpoverview.html

¿¹Àü¿¡.... Àú·± °Ô ÀÖ±¸¸Õ.... ³Ê µÎ°í º¸ÀÚ...
±×·¯´Ù°¡ ¸¶Ä§ ±è»ó¹ü¾¾°¡ ¹°¾îº¸¼Ì±æ·¡.. ´ýº³½À´Ï´Ù.

³ª ¹Ù»Ûµ¥... ÇϽô ºÐµéÀ» À§ÇØ..
°£´ÜÈ÷ ¼Ò°³ÇØ µå¸³´Ï´Ù.
´õ ±íÀÌ ÀÌÇØÇϽðíÀÚ ÇϽô ºÐµéÀº overview¿Í RFC¸¦ °®°í
°øºÎÇϽðí....
Á¶±¹ÀÇ ¿µ±¤À» À§ÇØ ¿ä¾àÇØ Áֽøé ÁÁ±¸¿ä. :)

1.
SCTP´Â UDP¿Í TCP¿¡ ´ëÀÀµÇ´Â ¼ö¼Û°èÃþ ÇÁ·ÎÅäÄÝÀÔ´Ï´Ù.
±×·¯³ª reliableÇÏ´Ù´Â Á¡¿¡¼­ TCPÀÇ ¸Â»ó´ë¶ó°í ÇÒ ¼ö ÀÖÁö¸¸,
TCP°¡ °®Áö ¸øÇÑ ±â´ÉµéÀ» °®°í ÀÖ´Ù´Â Á¡¿¡¼­
¼º´É°ú´Â °ü°è°¡ ¾øÀÌ (Àúµµ ¸ð¸¨´Ï´Ù) ±â´ÉÀûÀ¸·Î´Â ´õ ¿ì¼öÇÏ´Ù
¸»ÇÒ ¼ö ÀÖ½À´Ï´Ù.

2.
20¿©³â°£ À¯ÁöµÇ¾î¿Â TCP/IP ü°è¿¡¼­ TCP ¿·ÀÚ¸®¿¡ ¾î¶² ÇÁ·ÎÅäÄÝ
Çϳª¸¦ µ¡ ³¢¿ö ³Ö´Â °Í¿¡ ´ëÇØ net-headsµéÀº ¸Å¿ì °­·ÂÇÑ Á¤¼­Àû
°ÅºÎ°¨À» °®°í Àֱ⠶§¹®¿¡...
kernel ·¹º§¿¡¼­ TCP ¿·ÀÚ¸®¿¡ SCTP°¡ µé¾î°¡±â´Â ¸Å¿ì ¾î·Á¿ï
°ÍÀÔ´Ï´Ù.

±×·¯³ª... SCTP°¡ ÇÙ½ÉÀûÀ¸·Î ¾²ÀÌ´Â Á¦ÇÑÀûÀΠȯ°æ¿¡¼­´Â SCTP°¡
Ä¿³Î¿¡ µé¾î°¡ ÀÖ´Â ½Ã½ºÅÛÀÌ ³Î¸® ¾²ÀÏ ¼ö´Â ÀÖÀ» °Ì´Ï´Ù.

±×¸®°í.. Linux¿Í °°ÀÌ ½ÇÇèÀûÀ̸鼭 ¹ü¿ëÀûÀÎ OSÀÇ °æ¿ì¿¡´Â...
kernel¿¡ ½±°Ô µé¾î°¥ ¼ö ÀÖÀ» °Ì´Ï´Ù.
ÇÏÁö¸¸ ¸®´©½º Åä¹ßÁ ¾Ù·± ÄÛ½º°¡ ±×¸® ½±»ç¸® ¹èÆ÷º»¿¡ ³¢¿ö
ÁÖÁö´Â ¾ÊÀ» °ÍÀÌ°í... patch ·¹º§¿¡¼­ ¹èÆ÷µÉ °¡´É¼ºÀÌ ³ô°Ú½À´Ï´Ù.

3.
SCTPÀÇ ¸ñÀûÀº PSTN ½Ã±×³Î¸µ Á¤º¸¸¦ IP ³×Æ®¿öÅ©¿¡¼­ Àü¼ÛÇϱâ
À§ÇÑ °ÍÀε¥.. SCTPÀÇ Æ¯Â¡ÀûÀÎ Àü¼Û ¼­ºñ½º¸¦ È¿°úÀûÀ¸·Î È°¿ëÇÒ
¼ö ÀÖ´Â ´Ù¾çÇÑ ÀÀ¿ë¼­ºñ½º¿¡µµ È°¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.. ¶ó°í
¸»ÇÏ°í ÀÖ½À´Ï´Ù.

4.
±×·¯¸é ¾î¶² Ư¡ÀûÀÎ Àü¼Û ¼­ºñ½º¸¦ Á¦°øÇÏ´À³Ä....
Stream Control Transmission ProtocolÀ̶õ À̸§¿¡¼­ µå·¯³ªµíÀÌ..
multi-streaming Àü¼ÛÀ» Á¦°øÇÑ´ä´Ï´Ù. TCPµµ stream Àü¼ÛÇÏÁö ¾Ê´À³Ä
ÇϽÇÅÙµ¥...

TCPÀÇ °æ¿ì´Â byte streamÀ¸·Î µÇ¾î ÀÖ´Â TCP segment¸¦
sequence number ºÙ¿©¼­ ÁÖ·ç·è º¸³À´Ï´Ù.
congestionÀ¸·Î loss or delayed packetsÀÌ »ý±ä´ÙµçÁö..
Àúó·³ °¡²û router power S/W¸¦ ²°´Ù°¡ ÄÒ´ÙµçÁö..
¿·¿¡¼­ ½ºÆÄÅ©¿ëÁ¢ °ø»ç¸¦ ÇÑ´Ù´ÂÁö (¿äÁò¿¡µµ ÀÌ·± °Å ¿µÇâÀ» ¹Þ³ª¿ä?)
±×·¡¼­ packet loss°¡ »ý±â¸é
TCPÀÇ flow control°ú congestion avoidance ¾Ë°í¸®Áò¿¡ ÀÇÇØ
¿µÇâÀ» ¹Þ½À´Ï´Ù. Áï, ±¦È÷ µÚµû¶ó °¡´Ù°¡ ³¯º­¶ô ¸Â´Â ÆÐŶµéÀÌ
»ý±ä´Ù´Â °Ì´Ï´Ù.

ÇÏÁö¸¸ SCTP´Â stream packetµéÀÌ independently handledµÈ´ä´Ï´Ù.
ÇϳªÀÇ ÆÐŶ¿¡ ¹®Á¦°¡ »ý±â¸é ±× ³ð¿¡ ÇÑÁ¤Çؼ­¸¸ ¹®Á¦°¡ µÇ°í
´Ù¸¥ ÆÐŶµé¿¡´Â ¿µÇâÀ» ³¢Ä¡Áö ¾Ê´Â´Ù´Â °ÍÀÌÁÒ.

¾Æ¸¶µµ...
1990³â Proceedings of ACM SIGCOMM '90, pp. 201-208¿¡ ÀÖ´Â
(ÀÚ·á Á» ã¾Ò½À´Ï´Ù. :)
"Architectural Considerations for a New Generation of Protocols"
³í¹®¿¡¼­ Á¦½ÃÇÑ ALF (Application Level Framing)À» µû¿Í¼­ ¼³°èÇÑ
°Í °°½À´Ï´Ù. ALF´Â µ¥ÀÌÅ͸¦ semantic ´ÜÀ§·Î º¸³»ÀÚ..¶ó´Â °ÍÀ̾ú½À´Ï´Ù.
Áï, On-line bookÀ» º¸³»´Â °æ¿ì¶ó¸é 1ÂÊ, 2ÂÊ, 3ÂÊ,
ÀÌ·¯ÇÑ user levelÀÇ semantic part¸¦ ±âÁØÀ¸·Î ÇÏ¿© framingÇÏ¿©
º¸³»ÀÚ´Â °ÍÀÌÁÒ. ±×·¯¸é... Áß°£¿¡ 2ÂÊÀÌ ºüÁøä 1ÂÊ°ú 3ÂÊÀÌ µµÂøÇϸé
TCP¶ó¸é ÂÊ ´ÜÀ§¸¦ ½Äº°ÇÒ ¼ö´Üµµ ¾øÀ» »Ó´õ·¯..
2ÂÊÀÌ ºüÁö¸é 3ÂÊÀÌ µµÂøÇصµ user¿¡°Ô ³Ñ°ÜÁÖÁö ¾ÊÁÒ...

SCTPÀÇ multiple-streamingµµ ÀÌ¿Í °°ÀÌ Áß°£¿¡ loss°¡ µÈ °ÍÀÌ À־
±×³ð¸¸ lossÀÌ°í ³ª¸ÓÁö´Â user¿¡°Ô Á¦´ë·Î µµÂøÇϴ´ë·Î ³Ñ°ÜÁÝ´Ï´Ù.
Áï, 2ÂÊÀÌ ºüÁ®µµ 1ÂÊ°ú 3ÂÊÀ» º¸¿©Áشٴ °ÍÀÌÁÒ..
±×·¯´Ù°¡ ³ªÁß¿¡ 2ÂÊÀÌ µµÂøÇϸé 2ÂÊ ºóÀÚ¸®¿¡´Ù ³¢¿ö³Ö¾î ÁÖ°í...

ÀÌ·¯ÇÑ ¸ñÀûÀ¸·Î SCTP¿¡´Â numbering field°¡ ¼¼ °³°¡ µé¾î°¡ ÀÖ½À´Ï´Ù.
ÇÑ °³´Â TCP¿Í °°Àº sequence number, ³ª¸ÓÁö µÎ °³´Â
Stream ID¿Í Stream Sequence NumberÀÔ´Ï´Ù.

5.
±× ´ÙÀ½¿¡ multi-homingÀ» Áö¿øÇÑ´ä´Ï´Ù.
ÀÌ°Ô ¹«½¼ ¸»ÀÌ³Ä Çϸé...
TCP´Â source port, source IP, destination port, destination IP ÀÌ·¸°Ô
³× °¡Áö ¿ä¼Ò¸¦ °¡Áö°í data flow¸¦ ½Äº°ÇÏ°í ÀÖ°í, ÇÑ ÂÊÀÇ end-point´Â
socket file descriptor·Î user¿¡ Àü´ÞµÇ´Âµ¥, socket binding °úÁ¤À»
ÅëÇØ end-point¿Í Àú±â ³× °¡Áö ¿ä¼Ò°¡ bindingÀÌ µË´Ï´Ù. ¸¸¾à
À§ ³× °¡Áö ¿ä¼Ò °¡¿îµ¥ ¾î´À Çϳª¶óµµ ´Þ¶óÁö°Ô µÇ¸é connectionÀÌ
²÷¾îÁö°Ô µÇ´Â ¼ÀÀÌ µÇ°í... Mobile IP°¡ ¹Ù·Î ÀÌ ¿øÀÎ ¶§¹®¿¡ ³ª¿Â
°ÍÀ̱⵵ ÇÕ´Ï´Ù.

SCTP¿¡¼­´Â multiple IP¸¦ end-point¿¡ ÇÒ´çÇÒ ¼ö°¡ ÀÖ´ä´Ï´Ù.
ÀÌ·¸°Ô µÇ¸é... µ¥ÀÌÅÍ ¼Û¼ö½ÅÀÌ ÀϾ°í ÀÖ´Â µ¿¾È¿¡...
Åë½Å °æ·Î»óÀÇ ¾î´À °÷¿¡¼­ Åë½Å ¿¡·¯°¡ »ý±â´õ¶óµµ..
(ÄÉÀ̺í Àý´Ü, ¶ó¿ìÅÍ °íÀå, ½ºÀ§Ä¡, Çãºê °íÀå µîµî..)
multi-homing¿¡ ÀÇÇØ ´Ù¸¥ Àå¼Ò·Î °è¼Ó Åë½ÅÀÌ °¡´ÉÇÏ´Ù´Â °ÍÀÔ´Ï´Ù.
¿¹¸¦ µé¾î, ¼­¿ï°ú ´ëÀü »çÀÌ¿¡ Åë½ÅÇÏ°í ÀÖ°í.. ºÎ»ê¿¡ ¹é¾÷ ¼¾ÅÍ°¡
ÀÖ´Ù°í ÇßÀ» ¶§.... ¼­¿ï-´ëÀü »çÀÌ¿¡ ÇÑÂü Åë½ÅÇÏ°í Àִµ¥
Åë½Å ¿À·ù°¡ ¹ß»ýÇÏ¸é °ð¹Ù·Î ºÎ»ê ¹é¾÷ ¼¾ÅÍ¿Í °è¼Ó Åë½ÅÀ» ÇÒ ¼ö
ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. »õ·Î¿î Åë½Å ä³ÎÀ» ¿­Áö ¾Ê°íµµ....

6.
±× ´ÙÀ½¿¡.... TCPó·³ ÀÌ·± ±â´Éµéµµ ´Ù °®°í ÀÖ°í¿ä...

unicast between 2 end points,
reliable transmission
full duplex
flow control
congestion avoidance

7.
±× ´ÙÀ½¿¡.. ÇÁ·ÎÅäÄÝ ÀýÂ÷, packet format, ±âŸ µîµîÀÌ Àִµ¥..
±Ã±ÝÇϽøé Àо½Ã°í¿ä...

À§¿Í °°Àº Á¤µµÀÇ ¼³¸íÀ̸é.. ¾î¶² ±â´ÉÀ» Á¦°øÇÏ´ÂÁö ´ë·«ÀûÀÎ
ÀÌÇØ´Â µÉ °Í °°½À´Ï´Ù.

---
±è»ó¹ü¾¾, ´öºÐ¿¡ °øºÎ Á» Çß½À´Ï´Ù.
È­µÎ¸¦ ´øÁ® Áּż­ °¨»çÇÕ´Ï´Ù.
¾îÁ¦±îÁö ±ÞÇÑ ÀÏ ³¡³»°í.. ¿À´Ã ¸¶À½ÀÌ Á» ÇÑ°¡·Ó½À´Ï´Ù. :)