TCP 3

[Interview Question] 3-way handshake와 4-way handshake 과정은 무엇인가요?

TCP 연결 같은 경우에는 데이터를 주고받을 때, 서로 준비가 되었는지 확인하는 절차가 필요합니다. 그 방법이 3-way handshake입니다. 처음에 클라이언트가 서버에 syn 패킷을 보내면서버가 클라이언트의 syn 패킷을 수신하고 요청을 수락하며 자신의 isn이 담긴 syn 패킷을 재전송합니다. 또한, 클라이언트의 syn에 대한 응답인 ack도 전송합니다.클라이언트가 서버의 syn패팃을 수신하면 그에 맞는 응답인 ack를 서버에 보냅니다. 이 단계가 끝나면 서로 연결이 완료됩니다. 연결을 종료할 때, 서로 양쪽 모두 통신이 끝났음을 알려야하므로 4-way-handshake를 진행하게 됩니다. 처음에 클라이언트가 서버에게 더이상 보낼 데이터가 없음을 알리고 fin을 전송합니다.서버가 fin을 받았다는..

Interview Question 2025.09.04

[Interview Question] TCP와 UDP의 차이를 설명해보세요.

애플리케이션에서 데이터를 생성한 후 TCP 소켓을 통해 TCP 계층에 데이터를 넘깁니다. 그 후 TCP는 데이터를 세그먼트 단위로 쪼개서 헤더를 붙인 다음 IP계층에 넘깁니다. 또 다른 컴퓨터의 IP 계층이 세그먼트를 받으면 TCP로 넘기고 그 후 순서대로 TCP는 재조립, 손실된 데이터는 재전송 요청, 중복을 제거합니다. 그 후 복구한 데이터를 해당 포트의 애플리케이션에 넘깁니다. UDP의 경우 애플리케이션에서 데이터를 UDP 소켓을 통해 UDP 계층에 전달을 받게되면 UDP는 메시지에 간단한 헤더(길이, 포트)정도만 붙여 데이터그램을 만들어 IP계층으로 넘깁니다. 또 다른 컴퓨터의 IP 계층이 그 데이터그램을 받게되면 UDP로 넘기고 헤더에 써있는 포트로 그대로 애플리케이션으로 전송하게 됩니다. 만약..

Interview Question 2025.09.02

[Network] TCP vs UDP 차이가 무엇일까?

네트워크 전송 계층 중 '전송 계층'에서 사용하는 프로토콜인 TCP와 UDP의 차이에 대해서 알아보자. '전송 계층'은 말그대로 송신자에서 수신자로 가는 데이터의 전송을 맡는 계층이다. 그 데이터를 보내기 위한 규약들이 존재하는데 그것들 중 하나가 TCP, UDP이다. 밑 사진은 OSI 7계층과 TCP/IP 4계층 사진이다.TCP(Transmission Controll Protocol)란?TCP는 인터넷에서 데이터를 메시지 형태로 안정적으로 전송시키는 프로토콜이다. 보통 TCP는 IP와 함께 사용하게 되는데 이 때, TCP는 데이터를 잘게 나누고, 추적하고, 순서대로 재조립하는 역할을 하고, IP는 데이터를 목적지까지 주소를 찾아 보내주는 역할을 하게된다. IP는 데이터를 목적지에 보내주는 역할만 하고..

Network 2025.06.11