Page 214 - 완) I MDP 프로젝트 작품 보고서(전체과 1학년)1.6
P. 214

켓을  통하여  네트워크에  접속하여야  한다.

                소켓은  이렇게  어플리케이션에게  네트워크  접속을  위한  연결  장치,  인터페이스  역할을  하는
                것이다.  네트워크  어플리케이션이  보낸  데이터를  소켓을  거쳐  운영체제상에  존재하는
            TCP/IP  소프트웨어에게  전달하게  된다.  다시  하드웨어  상인  랜카드를  거쳐  네트워크에  전
            달하게  된다.  서버의  경우는  클라이언트와  정  반대되는  개념이다.  네트워크는  서버에게  보낸
            데이터를  서버의  랜카드에게  보내지게  한다.  다시  운영체제의  TCP/IP소프트웨어를  거쳐  어플

            리케이션과  연결개념인  소켓을  통해  최종적으로  서버  어플리케이션에게  전달되는  것이다.  소
            켓은  이렇게  어플리케이션과  TCP/IP  사이에  존재  하고  있다.


            *  소켓의  종류

              1.  스트림
            스트림  소켓은  양방향으로  바이트  스트림을  전송  할  수  있는  연결  지향형  소켓으로  양쪽  어플
            리케이션이  모두  데이터를  주고받을  수  있다는  것을  의미한다.  스트림소켓은  오류수정,  전송처
            리,  흐름제어  등을  보장해  주며  송신된  순서에  따른  중복되지  않은  데이터를  수신하게  된다.
            이  소켓은  각  메세지를  보내기  위해  별도의  연결을  맺는  행위를  하므로  약간의  오버헤드가  존

            재한다.  그러므로  소량의  데이터보다는  대량의  데이터를  보내는  경우에  적당하다.  스트림소켓
            은  이러한  품질의  통신을  수행하기  위해서  TCP를  사용한다.

              2.  데이터그램
            명시적으로  연결을  맺지  않으므로  비  연결형  소켓이라고  한다.  메세지는  대상  소켓으로  전송

            되며  대상  소켓은  메세지를  적절히  수신한다.  스트림소켓을  사용하는  것이  데이터그램  소켓을
            사용하는  것보다  더  신뢰성이  높은  방법이지만  연결을  수립하는데  드는  오버헤드는  무시할  수
            없다.  데이터그램  소켓을  사용하려면  클라이언트에서  서버로  데이터를  전송할  때  UDP를  사용
            한다.  이  프로토콜에서는  메세지의  크기에  약간의  제한이  있으며  메세지의  확실한  전달  역시
            보장하지  않으며  통신  중  데이터를  읽어  버리더라도  오류를  되돌리지  않는다.


             3.  RAW
            RAW소켓은  패킷을  가져오면  TCP/IP스택상의  TCP,  UDP계층을  우회하여  바로  어플리케이션으
            로  송신하는  소켓이다.  이런  소켓에서  패킷은  TCP/IP필터를  통해  전달되지  않으므로  원형  그
            대로의  패킷을  볼  수  있다.  이는  모든  데이터를  적절히  처리하거나  헤더를  제거하고  이를  파

            싱하는  과정은  모두  수신  어플리케이션에서  담당해야  하는  것이다.  실제  RAW소켓을  이용하여
            프로그래밍을  하는  일은  거의  드물며  만약  시스템  소프트웨어나  패킷을  분석하는  프로그램을
            개발할  경우  필요  할  수도  있다.

             4.  IP  주소와 포트의 이해

            IP  주소는  1바이트  4자리의  주소로  이루어집니다.  (예  :  202.131.293.70)
            이를  기억하기  힘들기  때문에  naver.com  과  같은  문자로  변환해서  사용하는데  이를




                                                         -  207  -
   209   210   211   212   213   214   215   216   217   218   219