1. TCP와 UDP의 이해
- 네트워크를 통한 데이터 전송을 위해 수행되는 트랜스포트 계층의 프로토콜
- 네트워크 내에서의 패킷 및 신호 전송을 담당하는 핵심 기능을 하는 프로토콜
- 연결형(Connection Oriented)인 TCP와 비연결형(Connnectionless)인 UDP
2. 연결지향의 신뢰성을 보장하는 Transmission Cotrol Protocol
가. TCP의 개요
- 재전송 메커니즘,흐름제어,혼잡제어를 이용하여 패킷전송을 보장해 주는 신뢰성 있는 전송 프로토콜
나. TCP의 패킷 형식
- Source & Destination port address : 클라이언트와 서버 프로그램을 정의하기 위한 식별자
- Sequence number : ip datagram에서의 fragmentation offset과 비슷한 용도로 사용
- Acknowledgment number : 다음에 받을 것으로 예상되는 데이터 옥텟의 순서번호
- Header length : 4bit HLEN 항목은 TCP의 길이를 32bit 워드로 부여
- Window size : 상대편에서 유지되어야 하는 Window의 크기, flow control에서 이용
다. TCP의 특징
- 연결 지향 프로토콜(Connection Oriented)
- 점대점 통신(Point-to-Point Communication) : 2개의 종단이 신뢰성 있는 전송
- 전이중 통신(Full Duplex Communication)
- 스트림 인터페이스(Stream Interface) : 바이트의 연속적인 흐름
- 신뢰성 있는 연결설정(Connection startup) : 이전 연결과 새로운 연결이 상호 혼동되지 않음
- 우아한 연결 해제(Connection shutdown) : 연결 종료 이전에 전송한 데이터는 손실되지 않음
라. TCP의 동작(3Way Handshake)방식
- Client는 서버의 포트번호와 클라이언트의 초기순서번호를 지정한 SYN세그먼트를 보냄
- Server는 클라이언트의 ISN+1 ACK를 보냄으로써 클라이언트의 SYN에 확인 응답
- Client는 Server로부터 보내 온 SYN에 대하여 서버의 ISN+ 1 ACK로 확인 응답
3. 비연결지향의 효율을 추구하는 User Datagram Protocol
가. UDP의 개요
- 제어용 메시지 처리, 빠른 응답 요구 응용서비스에 사용되는 비연결형 프로토콜
나. UDP의 패킷 형식
- 네트워크를 통한 데이터 전송을 위해 수행되는 트랜스포트 계층의 프로토콜
- 네트워크 내에서의 패킷 및 신호 전송을 담당하는 핵심 기능을 하는 프로토콜
- 연결형(Connection Oriented)인 TCP와 비연결형(Connnectionless)인 UDP
2. 연결지향의 신뢰성을 보장하는 Transmission Cotrol Protocol
가. TCP의 개요
- 재전송 메커니즘,흐름제어,혼잡제어를 이용하여 패킷전송을 보장해 주는 신뢰성 있는 전송 프로토콜
나. TCP의 패킷 형식
- Source & Destination port address : 클라이언트와 서버 프로그램을 정의하기 위한 식별자
- Sequence number : ip datagram에서의 fragmentation offset과 비슷한 용도로 사용
- Acknowledgment number : 다음에 받을 것으로 예상되는 데이터 옥텟의 순서번호
- Header length : 4bit HLEN 항목은 TCP의 길이를 32bit 워드로 부여
- Window size : 상대편에서 유지되어야 하는 Window의 크기, flow control에서 이용
다. TCP의 특징
- 연결 지향 프로토콜(Connection Oriented)
- 점대점 통신(Point-to-Point Communication) : 2개의 종단이 신뢰성 있는 전송
- 전이중 통신(Full Duplex Communication)
- 스트림 인터페이스(Stream Interface) : 바이트의 연속적인 흐름
- 신뢰성 있는 연결설정(Connection startup) : 이전 연결과 새로운 연결이 상호 혼동되지 않음
- 우아한 연결 해제(Connection shutdown) : 연결 종료 이전에 전송한 데이터는 손실되지 않음
라. TCP의 동작(3Way Handshake)방식
- Client는 서버의 포트번호와 클라이언트의 초기순서번호를 지정한 SYN세그먼트를 보냄
- Server는 클라이언트의 ISN+1 ACK를 보냄으로써 클라이언트의 SYN에 확인 응답
- Client는 Server로부터 보내 온 SYN에 대하여 서버의 ISN+ 1 ACK로 확인 응답
3. 비연결지향의 효율을 추구하는 User Datagram Protocol
가. UDP의 개요
- 제어용 메시지 처리, 빠른 응답 요구 응용서비스에 사용되는 비연결형 프로토콜
나. UDP의 패킷 형식
- 발신지 포트 번호(Source Port number)
- 목적지 포트 번호(Destination Port number)
- 길이(length) : 헤더+ 데이터
- 검사합 : 오류검출
다. UDP의 특징
- 비연결형, 흐름제어, 에러 복구 없음(no acks)
- 세션을 설정하지 않고 데이터를 상대의 주소로 송출함
- 오류정정이나 재송신 기능이 없어 프로토콜 처리가 고속임
라. UDP의 동작방식
- 송신측 UDP는 메시지를 Segment로 나누지 않고 해더만 덧붙여 전송
- 수신측 UDP는 Checksum방식의 간단한 에러검사 기능을 수행
- 송신측 UDP는 데이터가 목적지로 안전하게 전송되었는지 확인하지 않음
- 흐름제어 기능을 제공하지 않아 수신측에 도착한 비트블록이 순차적이지 않을 수 있음
4. TCP와 UDP의 상호비교
- 목적지 포트 번호(Destination Port number)
- 길이(length) : 헤더+ 데이터
- 검사합 : 오류검출
- 비연결형, 흐름제어, 에러 복구 없음(no acks)
- 세션을 설정하지 않고 데이터를 상대의 주소로 송출함
- 오류정정이나 재송신 기능이 없어 프로토콜 처리가 고속임
라. UDP의 동작방식
- 송신측 UDP는 메시지를 Segment로 나누지 않고 해더만 덧붙여 전송
- 수신측 UDP는 Checksum방식의 간단한 에러검사 기능을 수행
- 송신측 UDP는 데이터가 목적지로 안전하게 전송되었는지 확인하지 않음
- 흐름제어 기능을 제공하지 않아 수신측에 도착한 비트블록이 순차적이지 않을 수 있음
4. TCP와 UDP의 상호비교
구분 |
TCP |
UDP |
데이터 순서 |
순서 유지 |
순서 유지하지 않음 |
데이터 손실 |
손실 없음 |
손실 가능 |
에러제어 |
에러 검사 후 에러시 재전송 |
에러 시 재전송하지 않음 |
흐름제어 |
슬라이딩 윈도우 사용 |
흐름제어 없을 |
특징 |
송수신지간의 연결설정 |
연결설정, 종료절차 없음 |
▶ 내용 출처 : http://jncis.egloos.com/3314220
댓글 없음:
댓글 쓰기