///////
Search
🤿

OSI 전송계층 1

Lesson 23 전송 계층의 역할

전송 계층의 역할
1.
오류를 점검하는 기능: 오류가 발생하면 데이터를 재전송하도록 요청
물리 계층, 데이터 링크 계층, 네트워크 계층이 있으면 목적지에 데이터를 보낼 수 있으나 데이터가 잘못 전달되거나 유실 될 수 있으므로 전송계층이 재대로 도착했는 지 확인
2.
전송된 데이터가 어떤 애플리케이션에 사용되는지 식별
연결형 통신과 비연결형 통신
a.
연결형 통신
신뢰성/정확성을 우선시
상대편과 확인해 가면서 통신하는 방식
TCP (Transmission Control Protocol) 프로토콜을 사용
b.
비연결형 통신
효율성을 우선
상대편과 확인절차 없이 일방적으로 데이터를 전송하는 방식
UDP (User Diagram Protocol) 프로토콜을 사용
⇒ 두 가지 통신은 이러한 장단점이 있기 때문에 신뢰할 수 있고 정확한 데이터 전송이 필요한 애플리케이션에는 연결형 통신을 사용하고, 효율적인 데이터 전송이 필요한 애플리케이션에는 비연결형 통신을 사용

Lesson 24 TCP의 구조

응용 계층부터 물리 계층까지 계층별로 데이터를 전달할 때 해더를 붙이고 분혜하는 캡슐화와 역캡슐화 과정에서 TCP 통신의 특징을 알아 볼 수 있다.
TCP로 전송할 때 붙이는 헤더를 TCP 헤더라고 하고, 이 TCP 헤더가 붙는 데이터를 세그먼트 (segment)라고 합니다. TCP 헤더는 목지까지 데이터를 제대로 전송하기 위해 필요한 정보를 가지고 있습니다.
코드 비트 (6비트)
SYN 연결 요청
ACK 연결 응답
FIN 연결 종료
3-way Handshake
연경형 통신은 제이터를 전송하기 전에 연결(connection)이라는 가상의 독점 통신로를 확보해야한다. 신뢰할 수 있는 연결을 하려면 데이터를 전송하기 전에 패킷을 세 번 교환한다. 이때, 코드 비트의 SYN과 ACK가 1로 활성화된다.
데이터를 전송한 후에는 연결을 끊기 위한 요청을 교환
연결을 종료할 때는 FIN과 ACK가 1로 활성화된다.

LESSON 25 일련번호와 확인 응답 번호의 구조

3-way Handshake가 끝나고 실제 데이터를 보내거나 받을 때는 TCP 헤더의 일련번호와 확인 응답 번호를 사용한다.
일렬번호 (Sequence Number)
송신 측에서 이 데이터가 몇 번째 데이터인지 알려준다
확인 응답 번호 (Acknowledgement Number)
몇 번째 데이터를 수신했는지 알리고, 다음 번호의 데이터를 요청한다
이 과정을 데이터를 전송이 완료될 때 까지 반복한다
제전송 제어
데이터가 손상되거나 유실된 경우에 일정 시간 동안 대기한 후에 데이터를 재전송합니다.
윈도우 크기와 버퍼
위 처럼 세그먼트 하나를 보낼 때 마다 확인 응답을 한 번 반환하는 통신은 효율이 높지 않다. 따라서 받은 세그먼트를 일시적으로 보관하는 버퍼 (buffer) 를 사용해서 세그먼트를 연속해서 보낼 수 있도록 합니다.
오버플로우 overflow
수신 측이 데이터를 대량으로 받아 처리하지 못하는 경우
윈도우 크기: 얼마나 많은 용량의 데이터를 저장해 둘 수 있는 지