Web

TCP/IP 프로토콜, 전송 계층(Transport Layer)

쟈근꿈틀이 2022. 4. 25. 11:29
728x90

OSI 7계층(OSI 7 Layer): 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리하여 각 계층간 상호 작동하는 방식을 정해 놓은 것, OSI Protocol 뿐만 아니라 네트워킹 전반적인 동작을 설명하는 도구

 

TCP/IP 계층: 인터넷 표준 프로토콜

 

공통된 네트워크 모델의 필요성

- 공통된 Model이 사용된 경우 서로 다른 벤더의 장비 역시 호환성이 있기 때문에 상호 간의 통신이 가능

- 계층별로 구분된 Model의 경우 전체적인 네트워크 동작을 좀 더 쉽게 이해할 수 있음

- 네트워크 장애 발생 시 이를 해결하기 위한 Trouble Shooting 접근을 체계적으로 수행할 수 있음

 

Application 계층: 사용자가 인터넷을 편하고 효과적으로 사용할 수 있도록 인터페이스를 제공하며, 사용자는 그 인터페이스를 통해서 원하는 데이터를 생성

 

Transport 계층: 사용자가 생성한 데이터를 어떤 방식으로 상대방의 Application 계층에 효과적으로 전송할 것인지 결정


 

Data Encapsulation(데이터 전송 시)
Data Encapsulation(데이터 전송 시)

 

전송 계층(Transport Layer)

Transport Layer: 애플리케이션 층과 네트워크 층의 중계 역할을 담당

 

TCP(Transmission Control Protocol): 연결형 서비스; 대용량 데이터를 나누어서 전송할 때 안전하고 확실하게 전달하기 위해서 만들어진 프로토콜; 데이터가 전송되는 도중에 손실되거나 상대에게 전달되지 못했을 때 재전송하는 기능이 있음

3-way handshaking

*3-way handshaking과정을 통해 연결을 설정하고 4-way handshaking을 통해 해제 -> 신뢰성 제공 but 속도가 느림

 

UDP(User Datagram Protocol): 비연결형 서비스; 소량의 데이터를 빠르게 전송하기 위해서 만들어진 프로토콜; 문제가 발생한 부분에 대해서 재전송하는 기능은 없음

*정보를 주고 받을 때 정보를 보내거나 받는다는 신호 절차를 거치지 않음 -> 속도가 빠름

*흐름제어가 없어 패킷이 제대로 전송되었는지, 오류가 없는지 확인할 수 없음 -> 신뢰성 없음

 

*Port Address: 애플리케이션 계층에는 사용자의 인터넷 사용의 편의성을 제공하기 위한 여러 서비스가 존재하는데, 서비스들을 전송 계층에서 구분할 때 사용됨

 


Data Segmentation

 

 

MTU(Maximum Transmission Unit): 패킷 한 개로 운반할 수 있는 디지털 데이터의 최대 길이, 이더넷에서는 보통 1,500Byte

 

MSS(Maximum Segment Size): 한 개의 패킷으로 운반 할 수 있는 TCP의 데이터 최대 길이(L4 Header를 제외)

 

*패킷(packet)

: 네트워크를 통해 전송하기 쉽도록 자른 데이터의 전송 단위

 

 

IP헤더: 20, TCP헤더: 20, 데이터: 1460 *단위: byte
데이터가 1460바이트를 초과하면 TCP가 조각으로 분할하여 헤더 부가함

 


Application Identity

서버: L2 Mac 주소 체크 -> 자신의 MAC 주소와 일치하면 L2 헤더 제거하고 상위 계층으로 전달 ->

자신의 IP 주소와 일치하면 L3 헤더를 제거하고 상위 계층으로 전달 -> L4 헤더의 포트 주소가 80인지 확인하고 L4 헤더 제거 후 웹 서비스로 데이터 전달

 


Port Address

Well known Port 예시

*IANA: 인터넷 할당 번호 관리 기관(Internet Assigned Number Authority), 포트 번호를 세 개의 범위로 나누어서 관리

 

Well Known Port: 1 ~ 1,023; 이미 널리 알려진 포트, Server측에 각 용도별로 예약되어 동작되고 있으며 이를 사용하게되는 클라이언트는 보통 임시 포트 번호를 이용하여 접속함

 

Registered Port: 1,024 ~ 49,151; IANA에 의해 할당되거나 또는 통제를 받지 않음, 중복 방지를 위해서 단지 IANA에 등록만 되어 있음

 

Dynamic and Private Port: 49,152 ~ 65,535; 임시 포트, IANA에 의해 통제되지 않고 등록도 되어 있지 않음, 어떠한 프로세스에 의해서도 사용이 가능

 

 


참고: https://mangkyu.tistory.com/15 [MangKyu's Diary]

728x90