본문 바로가기

cs/컴퓨터와 네트워크

컴퓨터와 네트워크 4(UDP,TCP)

-UDP에 대해 설명해주세요.

TCP와 달리 UDP 는 연결지향형이 아니고 신뢰적인 데이터를 전송을 보장하지 않는다. UDP는 TCP에 비해 기능이 별로 없기 때문에 적은 오버헤드로 빠른 전송이 가능하다. 조금의 데이터 손실을 허용하는 스트링 애플리케이션에 어울린다.

 

-  UDP의 장단점에 대해 설명해주세요.

장점: 

- 비연결형 서비스이므로 TCP에 비해 속도가 빠르며 네트워크 부하가 적다.

- 1:1,1:N,N:N 통신이 가능하다

단점

- 데이터의 신뢰성이 없다.

 

-UDP 체크섬에 대해 설명해주세요.

UDP체크섬은 UDP세그먼트의 오류 검출을 위해 사용된다. 체크섬은 송신할 세그먼트를 16비트 단위로 나누고 모두 더한 다음 1의 보수를 취해서 만들어진다. 

이 체크섬은 세그먼트와 같이 전송한다. 수신자는 수신된 세그먼트에 대해 동일한 방식으로 체크섬을 만들고 헤더의 체크섬과 일치하는지 비교함으로써 수신된 세그먼트의 오류를 검출할 수 있다.

 

- 전송후 대기 프로토콜이란?

전송후 대기 프로토콜은 패킷을 전송하고 그 패킷에 대한 수신 확인 응답을 받고나서, 다음 패킷을 전송하는 방식이다. 이러한 방식은 네트워크 링크 이용률이 낮아 속도가 느리다는 단점이 있다.

 

 - 파이프라인 프로토콜

파이프라이닝 프로토콜은 전송한 패킷에 대한 수신 확인 응답을 받지 않고도, 여러 개의 패킷을 연속으로 전송하여 링크 이용률과 전송 속도를 높이는 프로토콜 입니다.

 

-TCP에 대해 설명해주세요.

서버와 클라이언트간에 데이터를 신뢰성 있게 전달하기 위한 프롴토콜이다. 데이터를 전송하기전에 데이터 전송을 위한 연결을 만드는 연결지향 프로토콜이다.

- 데이터는 전달하는 과정에서 손실되거나 순서가 뒤바뀔수있는데 이를 TCP는 손실을 검색해내서  교정하고 순서를 재조합할 수 있도록 해준다.

- 연결형 서비스이며 양방향으로 운반할 수 있다. 

- 3way handshake절차를 사용하여 열린다.

 

 

- 3 way handshake에 대해 설명해주세요.

3-way handshake는 TCP 프로토콜에서 연결을 설정하는 과정으로, 클라이언트와 서버 간의 통신을 시작하기 위해 사용됩니다.

- SYN : 클라이언트가 서버에게 연결을 요청하는 단계이다. 클라이언트는 SYTN패킷을 보내고 이 패킷에 초기 시퀸스 넘버가 포함되어있다.

-SYN-ACK: 서버는 클라이언트의 요청을 받아들이고 클라이언트에게 응답하기 위해 SYN과 ACK를 포함한 패킷을 전송한다. 

-ACK: 클라이언트는 서버에게 SYN-ACK를 받으면 ACK 패킷을 보내어 연결을 최종적으로 설정한다. 이 패킷에는 서버의 초기 시퀸스 넘버와 함께 데이터 전송이 시작될 수 있는 응답이 포함되어있다. 

이렇게 2가지 단계를 거치면서  통신을 한다.

 

- 4 way handshake에 대해 설명해주세요.

- 클라이언트가 연결을 종료하겠다는 FIN플래그를 전송한다.
서버는 일단 확인메시지를 보내고 자신의 통신이 끝날때까지 기다리는데 이 상태가 TIME_WAIT상태다. 

- 서버가 통신이 끝났으면 연결이 종료되었다고 클라이언트에게 FIN플래그를 전송한다. 

- 클라이언트는 확인했다는 메시지를 보낸다.

 

- TCP 빠른 재전송에 대해서 설명해주세요.

TCP의 빠른 재전송은 패킷 손실을 감지하고, 재전송을 빠르게 수행하여 효율적인 통신을 유지하는 TCP의 메커니즘 중 하나이다. 패킷 손실이 감지되면, TCP는 빠른 재전송을 통해 빠르게 손실된 패킷을 재전송합니다. 손실된 패킷만을 재전송함으로써, 전체 데이터 전송의 효율성을 높이고, 불필요한 전송 시간을 최소화합니다.

 

- Congestion control에 대해 설명해주세요.

Congestion control은 네트워크 내에서 혼잡이 발생하는 것을 방지하고, 혼잡이 발생하더라도 네트워크 성능을 유지하기 위한 메커니즘입니다. 목표는 네트워크의 효율성을 유지하면서도 혼잡을 최소화하는 것입니다.

 

- Flow control에 대해 설명해주세요.

Flow control은 송신자와 수신자 간의 데이터 전송 속도를 조절하여 네트워크 혼잡을 방지하고 데이터 손실을 최소화하는 메커니즘입니다. 목적은 수신자가 처리할 수 있는 속도보다 빠른 속도로 데이터를 전송하는 것을 방지하는 것입니다.

'cs > 컴퓨터와 네트워크' 카테고리의 다른 글

컴퓨터와 네트워크3  (1) 2024.01.25
컴퓨터와 네트워크 2  (0) 2024.01.16
컴퓨터 네트워크  (0) 2024.01.11