TCP/UDP

Internet/TCP/IP 2015. 9. 20. 09:09

1. TCP/IP Protocol Suite 구성




                                                                      <출처> http://sandilands.info/sgordon/taxonomy/term/168

 

출처: http://cafe.naver.com/ipte4

 

2. 전송계층

  - 서로 다른 호스트에서 실행 중인 응용프로그램 사이에 논리적인 연결을 제공하여, 두 응용프로그램 사이에서의 전송을 담당

  - 데이터 링크/물리 계층은 물리적인 인프라에 해당하는 고속도로에 해당

  - 네트워크 계층은 네트워크상에서 패킷을 통해 데이터를 교환하는 것처럼 트럭 또는 자동차를 통해 화물을 주고받는 데에 비유

  - 전송계층은 택배회사에 의해 화물수송 작업이 이루어지는 데에 비유 가능

출처: 방송과 기술 Vol.225

3. 컴퓨터 응용프로그램에 따른 전송 특성

출처: 방송과 기술 Vol.225

4. TCP와 UDP

 - 전송 계층에서 전송이 이루어지는 방식은 TCP와 UDP라는 2가지 방식으로 나누어짐 

 1) TCP

   - Transmission Control Protocol의 약자

   - 데이터를 안정적으로 그리고 확실하게 전달하고자 하는 것을 목표로 함(비실시간 데이터 전송에 사용)

   - TCP를 사용하는 2개이 어플리케이션은 데이터를 교환하기 전에 서로 TCP 연결을 확립해야 함(3-way handshaking)

   - Sliding window 흐름 제어

   - Error correction(Go-back-N ARQ, Select to Reject ARQ)

   - TCP는 매우 신뢰성 있는 고급 택배 회사로 비유 가능

   - TCP Header 구조

                  - Source port number(16bit) : 출발지 포트 번호를 기록 (80port → 0000 0000 0101 0000)

                  - Destination port number(16bit) : 목적지 포트 번호를 기록 (80port → 0000 0000 0101 0000)

                  - Sequence number(32bit) : 전체 데이터 중 이 데이터가 몇 번째에 해당하는지를 기록

                  - Acknowledgement number(32bit) : 다음에 받을 데이터가 전체 데이터 중 몇 번째 데이터인지 기록

                  - Header length(4bit) : 헤더길이

                  - Reserved(6bit) : 예약필드, 현재는 사용하지 않는다.

                  - TCP Control Flag(6bit) : Control Flag bit이며, 통신 상태를 전달하는 수단

                  - Window size(16bit) : 수신 가능한 데이터 크기를 기록

                  - TCP chechsum(16bit) : 데이터가 손상 여부를 확인하기 위한 값을 기록

                  - Urgent pointer(16bit) : URG Flag가 1bit인 경우 사용

  2) UDP

   - User Datagram Protocol의 약자

   - 데이터를 최대한 빠르게 전달하는 것을 목표로 함

   - 신뢰성 제공 안하고, 목적이 도착에 대한 보장이 없음, 즉 흐름 제어를 하지 않는다

   - 신뢰성은 떨어지나, 빠른 처리와 실시간 전송이 가능하여 음성/방송 서비스에 이용됨

   - 화물 분실에 대해서는 전혀 책임을 지지 않고 최대한 빠르게 배송만 하고자 하는 택배회사

   -  UDP는 TCP와는 달리, 메시지를 패캣(데이터그램)으로 나누고, 반대편에서 재조립하는 등의 서비스는 제공하지 않으며, 특히 도착하는 데이터 패킷들의 순서를 제공하지 않는다

                      - Source port number(16bit) : 출발지 포트 번호를 기록 (80port → 0000 0000 0101 0000)

                      - Destination port number(16bit) : 목적지 포트 번호를 기록 (80port → 0000 0000 0101 0000)

                      - Length(16bit) : UDP 헤더와 데이터의 바이트 수

                      - UDP checksum(16bit) : 데이터가 손상 여부를 확인하기 위한 값을 기록

 

   3) TCP와 UDP 비교

출처: 방송과 기술 Vol.225

   4) TCP 및 UDP: 데이터 전송확인

출처: 방송과 기술 Vol.225

 

 


 

Posted by 둔탱이
,