02 TCP/IP 개요

  • 통신 프로토콜: 데이터를 주고 받으려면, 송신측과 수신측의 컴퓨터가 미리 정해둔 공통 메뉴얼에 따라 연락을 취해야한다. 이 때 이 메뉴얼을 프로토콜이라고 한다.

  • TCP/IP란?

    • 데이터 송수신에 관한 일련의 작업을 하나로 모은것.

    • 전 세계적으로 공통된 통신 프로토콜로 체택.

    • '데이터를 디지털 신호로 바꾼다' => '보낼 곳에 전달' => 디지털 신호를 데이터로 되돌린다.

    • 이 때, 5 단계의 절차를 거친다.

    • 각 단계를 계층(layer)라고 하며

      사용자에게 가까운 application 계층 => 기계에 가까운 물리 계층 순으로 아래 작성.

      • 어플리케이션 계층

        • application에 맞춰 통신 수행

        • 어플리케이션마다 다양한 프로토콜이 있음.

        • 예: HTTP, SMTP,POP3, FTP, ...

      • 트렌스포트 계층

        • 송신된 데이터를 수신측 application에 전달하기 위해 작동

        • 예: TCP(Transmission Control Protocol), UDP

      • 네트워크 계층

        • 수신측 컴퓨터까지 데이터를 전달하기 위해 작동.

        • 전달된 데이터가 손상됬는지 또는 수신측이 잘 받았는지는 관여X

        • 예: IP(Internet Protocol)

      • 데이터링크 계층

        • 네트워크에 직접 연결된 기기간 전송을 수행할 수 있게 함.

        • 네트워크계층과 물리계층간의 차이를 완전 흡수하기위한 다양한 프로토콜 존재

        • 예: Ethernet, ATM, PPP, PPPoE, FDDI , ...

      • 물리계층

        • 데이터를 신호로, 신호를 데이터로 변환.

        • 변환 방법은 통신 매체에 의존.

        • 따라서 특정 프로토콜이 정해져 있진 않음.

    • 일반적으로 TCP/IP라고 하면, 위 5계층을 가리킴.

    • 하지만 TCP, IP 각 프로토콜을 가리키는 경우도 있어서, 구별하기위해

      5계층 전체를 TCP/IP 프로토콜 군이라고 함.

    • 프로토콜 조합을 바꿈으로써, 다양한 Application이나 기기 처리가 가능.

    • '무엇을 할지?'에 따라, 사용할 프로토콜 조합이 달라짐.

  • 계층간 연락방법

    • 송신측의 각 계층에서는 수신측의 동일한 계층에서 필요한 정보를 공통된 서식으로 데이터를 추가해 가야한다.

    • [헤더]-[데이터]-[트레일러]

    • 데이터 앞에 추가한 정보를 헤더, 뒤에 추가한 정보를 트레일러라고함.

    • 상위 계층에서 추가한 헤더와 트레일러는 데이터로 합쳐져서 하나로 묶인다.

      (캡슐화: 데이터와 정보가 하나루 묶여서 다뤄지는 것.)

    • 트레일러가 없는 것도 있음!

    • 송신측에서 추가된 헤더와 트레일러는 수신측의 동일한 계층에서만 사용됨.

  • 계층으로 보는 데이터 송수신 작업

    • 송신

      • Application 계층

        • 어플리케이션간에 데이터 주고받기 위해 필요한 정보를 넣음(헤더/트레일러)

      • 트렌스포트 계층

        • 접속환경에 맞춘 크기로 분할, 분할된 하나하나를 패킷이라고함.

        • 어플리케이션을 나타내는 번호와, 데이터를 조합하기위한 정보를 넣음

      • 네트워크 계층

        • 송수신할 컴퓨터의 주소와, 수신 불명일 경우 데이터를 파기하는 표시등을 함.

      • 데이터 링크 계층

        • 네트워크 종류에 맞춘 형식으로 보낼 곳의 정보를 써넣음.

      • 물리계층

        • 비트열을 신호로 변환

    • 수신

      • 물리 계층

        • 신호를 비트열로 변환

      • 데이터 링크 계층

        • 헤더에 정보를 확인하고, 지정된 프로토콜로 전달.

      • 네트워크 계층

        • 헤더에 적힌 목적지를 확인하고, 지정된 프로토콜로 전달.

      • 트렌스포 계층

        • 헤더를 확인하고, 데이터 순서대로 나열 하고 조합.

        • 데이터에 문제가 있을시, 그에 따른 처리를 함.

      • 어플리케이션 계층

        • 지정된 어플리케이션으로 전달.

  • 패킷: TCP/IP에서 데이터를 일정한 크기로 분할해서 보낼때, 작게 나눠진 데이터 하나하나를 뜻한다. 보통 1,024bit로 데이터 외에도 데이터 목적지, 주소 등 제어 정보를 가지고 있다.

Last updated