4계층 전송층
전송층은 호스트간에 데이터를 투명하게 전송하는 역할을 하며 종단 시스템 간의 오류 복구화 흐름 제어를 담당한다.
흐름제어
흐름제어란 수신 호스트가 데이터를 모두 처리할 수 있도록 발신자가 데이터 흐름을 조정하는 과정을 뜻한다.
예를 들어 발신자 인터넷속도가 높아서 빠른속도로 데이터를 전송하여 수신호스트가 처리하기 벅찬 양을 보내는 경우
흐름제어가 작동하여 수신 호스트가 발신자에게 속도를 늦추도록 신호하는 매커니즘을 가질 수 있다.
세션 다중화
제 4계층에서 세션 다중화는 호스트가 동시에 여러 세션을 지원하고
단일 링크에서 개별 트래픽 흐름을 관리할수 있는 과정이다.
예시로 왼쪽에 발신자가
상단 수신자에게 SMTP트래픽 25번 포트 , HTTP 80번 포트
하단 수신자에게 SMTP트래픽 25번 포트
왼쪽의 발신자에겐 3가지 세션, 오른쪽 상단수신자 하나의 세션, 오른쪽 하단수진자 2가지 세션
이렇게 전송층은 호스트가 가진 다양한 세션을 추적하고 제어할수있다.
포트
각 트래픽이 어떤 애플리케이션을 사용할지 구분할때 포트를 사용한다.
위 사진같이 HTTP웹 트래픽은 80번 포트 SMTP 이메일 트래픽은 25번 포트를 사용한다.
이렇게 출발지와 목적지 포트 번호를 조합하면 세션을 추적할 수 있다.
다른 예시로
발신자는 목적지인80번포트를 사용하여 웹트래픽을 보내고 출발지 포트는 1500포트를 사용
수진자가 트래픽을 다시 보내려면 발신자입장에서의 출발지와 목적지포트를 뒤바꾼다
발신자 출발지포트 1500 목적지 80 - - - - - 수진자 출발지포트 80 목적지포트 1500
이는 스테이트풀 방화벽이 연결을 추적하는 방법이기도 한다.
방화벽
가운데에 스위치 대신 방화벽이 있다고 가정해보자
방화벽규칙에는 트래픽은 왼쪽의 발신자에서 오른쪽 네트워크로만 나갈수있고 그 반대는 불가능하다.
발신자→수신자 트래픽만이 전송 되도록 허용할 것이고 반환 트래픽이 다시 들어오면
방화벽은 출발지와 목적지 포트번호를 확인하고 이 트래픽이 되돌아오는 반환 트래픽인지 확인해 지나가도록 허용한다.
만약 반환트래픽이아닌 일반 트랙이 오른쪽 호스트에서 출발한것이면 그 트래픽은 허락하지 않는다.
TCP 전송 제어 프로토콜의
연결기반인 TCP는 발신자,수신자에게 양방향으로 데이터를 전송한다.
순서 제어
수행하는데 트래픽에 순서 번호를 포함해 세그먼트가 옳은 순서대로 누락없이 처리되도록 한다.
트래픽이 수신자에게 도달하면 수진자는 순서 번호를 확인후 올바른 순서로 트래픽을 조립할 수 있게 된다.
또 순서번호로 전송중 세그먼트 누락 여부를 확이하고 발신자에게 알리고
발신자는 누락은 인지하면 해당 트래픽은 다시 전송한다.
흐름제어
발신자의 전송률이 너무 높아서 수신자가 처리할 수 없는 경우에
수신자는 발신자에게 속도를 늦추라는 신호를 보낼 수 있다.
TCP 헤더
출발지와 도착지 포트 번호, 순서 번호 및 응답 번호 , 헤더 길이,
나중에 예약된 정보를 위한 예약 필드 , 코드 비트
흐름 제어를 위한 윈도우 , 전송 중 트래픽 오류 여부를 확인하기 위한 체크섬
헤더의 긴급 위치 , 다른 옵션을 추가할 수도 옵션 필드 , 데이터
UDP 유저 데이터그램 프로토콜
사용자 데이터그램 프로토콜로써 best effort 방식을 사용한다.
best effort란 프로토콜에 연결이나 신뢰성 없이 발신자가 패킷을 구성해서
수신자에게 전송하며 전송이 성공적이기를 바라는 것이다.
UDP는 연결 기반이 아니며 호스트 간 아무 연결 설정이 없고 순차 제어를 수행하지 않는다.
세그먼트가 순서대로 누락 없이 처리될지 확인할 수 없으니 신뢰할 수가 없고
발신자에게 수취 통보를 보내지 않고 흐름 제어 능력도 없다.
UDP 헤더
TCP헤더보다 많이 단순하다.
'Network' 카테고리의 다른 글
10. CIDR (0) | 2023.07.03 |
---|---|
9. OSI 3계층 (0) | 2023.07.03 |
7. Cisco IOS 운영체제 탐색 (0) | 2023.07.03 |
6. Cisco 장치 연결 (0) | 2023.07.03 |
5. Inbound outbound (0) | 2023.06.30 |