본문 바로가기

컴퓨터네트워크

컴퓨터 네트워크 : TCP, UDP, SCTP 전송층 프로토콜 - 1

Transport layer : SCTP TCP UDP

UDP : 오류제어가 응용층 프로세스에 의해 제공되는 응용에서 단순성과 효율성으로 사용되는 신뢰성 없는 비연결 전송층 프로토콜이다.

TCP : 신뢰성이 중요한 어떤 응용에 의해 사용될 수 있는 신뢰성 있는 연결 - 지향 프로토콜이다.

SCTP : UDP와 TCP의 특성을 결합한 새로운 전송층 프로토콜이다.

포트번호 

전송층 프로토콜은 보통 다수의 책임을 가진다. 1개가 프로세스 - 대 - 프로세스 통신을 생성하는 것이다.

사용자 데이터그램 프로토콜(UDP) : 비연결이고, 신뢰성이 없는 전송프로토콜이다.

순서번호가 필요없다 바로 데이터를 보낸다.

사용자 데이터그램 이라고 부르는 UDP 패킷은 각각 2바이트(16비트)인 4개의 필드로 만들어진 고정된 크기의 8바이트 헤더를 가지고 있다.

 처음 두 필드는 근원지와 목적지 포트 번호를 정의한다. 세 번째 필드는 헤더에 데이터를 더한 사용자 데이터그램의 전체 길이를 정의한다. 16비틑 전체 길이 0부터 65,536바이트를 정의할 수 있다.  그러나 하나의 UDP 사용자 데이터그램은 65,535바이트의 총 길이를 가지는 IP 데이터그램에 저장되기 때문에 총 길이는 훨씬 작은 것을 요구한다. 마지막 필드는 선택적 검사합을 운반한다.

16진 형식의 UDP 헤더의 내용이다.

CB84;000D;001C;001C

a. 근원지 포트 번호는 얼마인가?

근원지 포트 번호는 첫 번째 4자리의 16진수 (CB84) 16진수로 근원지 포트 번호는 521000을 의미한다.

b. 목적지 포트 번호는 얼마인가?

목적지 포트 번호는 두 번째 4자리의 16진수 (000D) 16진수로, 근원지 포트 번호는 13을 의미힌다.  

c. 사용자 데이터그램의 전체 길이는 얼마인가?

세 번째 4자리의 16진수(001C)  16진수로 전체 UDP 패킷의 길이는 28바이트로 정의된다. 

d. 데이터의 길이는 얼마인가?

데이터 길이는 전체 패킷 길이에서 헤더의 길이를 뺀 것으로, 28-8 = 20바이트이다.

e. 클라이언트에서 서버로 향하는 패킷인가 혹은 반대인가?

목적지 포트 번호는 13(잘 알려진 포트)이기 때문에, 패킷은 클라이언트에서 서버로 가는 것이다.

f. 클라이언트 프로세스는 무엇인가?

일시(DateTime)이다.

프로세스-대-프로세스 통신

UDP는 IP 주소와 포트 번호의 결합인 소켓 주소(Socket address)를 이용하여 프로세스-대-프로세스 통신을 제공한다.

UDP는 비연결 서비스를 제공한다 . 이것은 UDP에 의해 보내지는 각 사용자 데이터그램은 독립된 데이터그램이라는 것을 의미한다. 동일한 근원지 프로세스로부터 들어와서 동일한 목적지 프로그램으로 간다고 할지라도 사용자 데이터그램은 서로 관계가 없다.

흐름제어

UDP는 매우 단순한 프로토콜이다 흐름제어가 없고 따라서 윈도 메커니즘이 없다.

오류 제어 

UDP에는 오류제어 메커니즘이 없다. 이것은 송신자는 메시지가 손실이 되었는지 또는 중복이 되었는지를 알 수 없음을 의미한다.