[CS/network] 트랜스포트 계층 TCP vs UDP

0
post-thumbnail

본 포스팅은 도서 TCP/IP 쉽게 더 쉽게를 참고하여 공부한 내용을 바탕으로 작성하였습니다.

트랜스포트 계층

  • 웹 브라우저로 여러 페이지를 볼 때 서버와 브라우저간에 HTTP 프로토콜을 사용해서 데이터를 주고 받는다. 그럼 PC 내부에서 해당 응용 프로그램까지 어떻게 데이터가 전달될까? 바로 트랜스포트 계층(Transport Layer)을 통해서 포트 번호에 맞는 애플리케이션으로 로 전달되게 된다. 트랜스포트 계층은 여러 PC로 부터 받은 데이터를 포트 번호에 따라 분류해서 응용 계층 내 프로그램에 전달하는 네트워크 계층의 우편부인 셈이다.

포트 번호

1) 포트 번호란?

포트 번호는 전달할 데이터에 적힌 우편 번호와 같다. 트랜스포트 계층의 프로토콜은 외부로 부터 받은 패킷에 적혀있는 포트 번호를 보고 해당 애플리케이션으로 패킷을 전달할 수 있다.

2) 포트 번호와 IP 주소

서버 측 포트 번호는 보통 고정되어있기 때문에 여러 클라이언트가 서버와 통신을 하게 되면 하나의 포트로 여러 요청이 들어오게 되는데, 이때 서버는 클라이언트의 고유 IP 주소와 포트 번호를 조합해서 각 통신을 식별할 수 있다.

3) 클라이언트와 서버 통신 과정에서의 포트 번호

클라이언트와 서버가 서로 통신하기 위해서는 먼저 클라이언트가 사용할 포트를 결정하고 이후 서버의 포트에 접속하게 된다. 예를 들어 웹 서버와의 통신을 할 때 웹 서버는 80번 포트를 사용해서 클라이언트의 요청 수신을 기다리고, 클라이언트의 웹 브라우저는 서버처럼 고정된 포트가 아닌 다이나믹 포트를 할당 받아 웹 서버에 접속 요청을 하게 된다.

TCP vs UDP

https://medium.com/quantum-ant/tcp-ip%EA%B0%80-%EB%B3%B4%EC%9D%B4%EB%8A%94-%EA%B7%B8%EB%A6%BC%EC%B1%85-%EC%9D%B4%EC%A0%95%ED%98%84-%EC%9E%84%EC%84%B8%EC%A7%84-%EC%9C%A4%EC%9E%AC%EC%9B%85-b905f8244239

0개의 댓글