저번 글까지는, Application layer에 대해서 정리했다. 이번 글부터는, Application layer와 network layer 사이에 있는 Transport layer에 대해서 정리해보려고 한다.
1. Transport layer 프롤로그
Internet 계층 구조에 대해서 정리했을 때, 각 계층은 그 전 단계의 계층에 의존적이라는 특징을 가지고 있다고 했다. 그래서 Application layer에 대해서 정리할 때, TCP나 UDP 같이 중간중간 transport 계층에 대해서도 같이 설명했다.
계층 구조 특징을 고려하면, Transport 계층은 그 하위 단계 계층인 network 계층에 의존적이라는 것을 유추할 수 있다. 그래서 Transport layer에 대해서 정라할 때
- network에 어떤 서비스를 받는지,
- 그 network에게 받은 서비스를 통해 상위계층인 application에 어떻게 전달할 지
에 대해서 집중적으로 알아보려고 한다.
2. Transport services and protocols
먼저, transport 계층에서 어떤 서비스를 제공하는지 알아보자. transport 계층의 protocol은 end system(=host)에서 작동하는데,
- sender: sender는 application layer의 메세지를 segment(TCP 데이터 전송 단위)로 쪼개 network layer에 넘긴다.
- receiver: receiver는 network layer에게 전달받은 segment를 다시 재조합해서 application layer에 전달한다.
위 과정을 거쳐 작동한다. 여기서, transport 계층 하위계층(=network layer)과 상위계층(=transport layer)에 어떤 service를 받아서, 전달하는지 잘 나타나져 있다.
그럼 저 두 가지 역할을 하는 transport protocol에는 무엇이 있을까? 바로, TCP와 UDP가 있다. 이 protocol에 대해서는 뒤에서 더 자세히 다룰 것이니 이름만 한 번 기억해두자.
3. Transport & Network layer services and protocols
Transport layer와 network layer의 사이 일 처리 과정에 대한 예시가 있다. A집과 B집에 똑같이 12명의 아이들이 있고, 12명이 각각 나이도 같다고 가정해보자. ( ex)A집의 첫째가 18살이면 B집의 첫째도 18살 )
이 중, A집의 셋째가 B집의 셋째에게 편지를 보낸다는 상황을 가정하면, 먼저, A집의 셋째는, 편지에 누구에게 보내는지(B집 3째의 이름 = port number), 목적지가 누구인지(B집의 주소 = destination IP address)를 적어둬야 편지가 B집에 올바르게 갈 것이다.
이 때, 편지를 전달하는 우편 배달부가 있을 것이고, 우편 배달부가 B집에 편지를 전달할 것이다. 여기서 우편 배달부는 Internet에서 network layer protocol임을 알 수 있고, transport layer protocol은 집 내부에서 이 편지가 누구 것인지 식별하는 그 과정임을 알 수 있다.
4.Transport Layer Actions
이제, 위에서 설명한 sender와 receiver가 어떻게 일을 하는지 조금 더 자세히 알아보자.
먼저, sender의 transport layer에서는 다음과 같이 작동한다.
- application layer로부터 메세지를 전달 받는다.
- 그리고, segment(TCP 데이터 전송단위)의 header fields 값들을 결정한 뒤,
- segment를 만들고
- 만든 segment를 network layer에 전달한다.
그렇다면 reciever는 어떻게 작동할까?
- segment를 network계층으로부터 전달받는다
- header fields 값들을 확인한다(나에게 오는 segment가 맞는지)
- 정보가 일치하면 application layer message를 추출한다
- demultiplex(역다중화)를 통해 application layer에게 socket을 통해 메세지를 전달한다.
5. Transport protocols
앞서, transport protocol은 TCP, UDP 두 종류가 존재한다고 설명했다. 조금 더 뒤에 더 자세히 정리할 예정이지만, 프롤로그이니만큼 특징들만 간단히 정리하고 넘어가보려 한다. 이 특징들은 저번 글에서도 확인할 수 있다.
-TCP(Transmission Control Protocol)
- 신뢰성있고, 순서가 존재하는 데이터 전달 보장
- 혼잡 제어
- 흐름 제어
- 연결 설정 필요
-UDP(User Datagram Protocol)
- 신뢰성과 순서가 모두 보장되지 않는 데이터 전달
- 지연 보장 못함, 대역폭 보장 못함
'학교공부 > [컴퓨터 네트워크]' 카테고리의 다른 글
| [컴퓨터 네트워크]-Transport layer_UDP (0) | 2025.04.24 |
|---|---|
| [컴퓨터 네트워크]-Transport layer_Multiplexing & Demultiplexing (0) | 2025.04.23 |
| [컴퓨터 네트워크] - Application layer_Socket Programming (0) | 2025.04.21 |
| [컴퓨터 네트워크]-Application layer_Video Streaming and CDNs (0) | 2025.04.21 |
| [컴퓨터 네트워크]-Application layer_P2P (0) | 2025.04.20 |