Search
Duplicate
📒

[쉽게 이해하는 네트워크] 04-2. TCP/IP 데이터 전송 과정

상태
완료
수업
Network Study
주제
기본개념
4 more properties
참고

데이터 전송

NOTE
TCP/IP를 지원하는 인터넷에 연결된 컴퓨터, 즉 호스트는 TCP/IP의 4계층의 프로토콜을 구현하는 소프트웨어만 있으면 아무런 문제 없이 다른 종류의 호스트와 통신이 가능하다.
4→1 계층 - 데이터 전송 - 1→4계층 (통신순서)
통신은 원칙적으로 양방향으로 이루어지기 때문에 데이터를 송수신하는 호스트는 정해져있지 않다.
호스트간에 TCP/IP 통신을 할 때, 각 계층이 아래 위로 인접한 계층과 데이터를 주고받으며 통신을 처리한다.

송신 호스트의 데이터 전송(4→1 과정)

NOTE
상위계층으로 부터 받은 데이터에 헤더라는 정보를 붙여 하위 계층으로 넘긴다!
헤더 추가와 캡슐화
웹 서버의 캡슐화 과정
송신 호스트와 같은 계층의 수신 호스트의 프로토콜을 위한 정보헤더
송신 호스트의 다음 하위 계층으로 전달하는 정보데이터
한 계층에서 추가된 헤더는 다른 계층에서 볼 수 없다(은닉화)
송신지 호스트의 각 계층을 지날 때 마다 해당 계층의 프로토콜을 처리하고 데이터에 헤더를 추가하는 것을 캡슐화라고 한다.

캡슐화와 데이터 전송

1.
4→1계층을 통과하는 동안 헤더를 추가하며 캡슐화
2.
최하위 계층에서 디지털 데이터 → 전기신호 변환
3.
전송 매체를 통해 라우터 등의 중간 노드를 거쳐 수신 호스트의 최하위 계층으로 전송됨

수신 호스트의 데이터 전송(1→4 과정)

NOTE
하위 계층으로부터 받은 데이터에 포함한 헤더 부분의 정보를 사용해서 해당 계층의 프로토콜을 처리한 후 헤더를 제거한 데이터를 상위 계층에 넘긴다.
헤더 제거와 역캡슐화
웹 브라우저의 역캡슐화
캡슐화의 정반대로 수신지 호스트의 각 계층을 지날 떄 마다 해당 계층의 프로토콜을 처리하고 헤더가 삭제되는 것을 역캡슐화라고 한다.

역캡슐화와 데이터 전송

1.
송신 호스트가 캡슐화한 데이터를 받아서 1→4 계층까지 통과한다.
2.
각 계층을 통과하며 헤더를 삭제하고 송신 호스트가 보낸 원본 데이터를 수신한다

TCP/IP에 의한 전체 데이터의 전송

NOTE
같은 계층끼리 주고 받는 데이터를 구분해 부르는 것을 PUD(Protocol Data Unit)이라 한다!
각 계층의 데이터 단위를 기억하자!
송신측에서 4→1계층으로 보낼 때 상위 계층의 헤더를 데이터로 취급한다.
다른 계층의 헤더를 볼 수 없기 때문에 송수신 호스트의 각 계층에서 추가된 데이터는 동일한 계층에서만 사용된다.
데이터의 모습
각 헤더에는 적어도 다음의 정보가 들어가 있다.
1.
송신지와 수신지의 주소
ex) 이더넷 헤더 - MAC 주소, IP 헤더 - IP 주소
2.
헤더에 이어지는 데이터의 종류를 알려주는 식별자
ex) 이더넷 헤더 - IP 프로토콜, IP 헤더 - TCP 프로토콜, TCP 헤더 - 애플리케이션 프로토콜

네트워크 장비의 헤더 사용

중간 노드인 라우터의 데이터 처리
송신 호스트에서 캡슐화된 데이터가 네트워크 장비를 통과할 때 각 네트워크 장비는 자신의 역할에 대응하는 헤더를 읽고 데이터를 전송한다.
ex) NIC계층의 스위치 → 이더넷 헤더를 읽고 데이터 전송
ex) 인터넷 계층 라우터 → IP 헤더를 읽고 데이터 전송