병훈's Blog

네트워크 뿌수기 - 데이터 송수신 규칙1 본문

Computer/Network

네트워크 뿌수기 - 데이터 송수신 규칙1

thdqudgns 2022. 12. 15. 02:42
프로토콜의 제어정보 '헤더'를 만든다

 

통신 주체인 애플리케이션이 데이터를 주고받게 하려면,

복수의 프로토콜을 조합할 필요가 있습니다.

TCP/IP에서는 네 개의 프로토콜을 조합합니다.

 

각 프로토콜에는 각각의 기능을 실현하기 위한 제어정보(헤더)가 필요합니다. 

예를 들어, 데이터를 전송하는 프로토콜이라면, 헤더에는 출발지 주소도착지 주소가 지정됩니다.

각 프로토콜은 데이터를 전송할 때 헤더를 추가합니다.

헤더를 추가하는 처리캡슐화라고 부릅니다.

헤더로 데이터를 포장하는 듯한 이미지입니다.

 

헤더 이미지

 

프로토콜이 데이터를 받으면,

각 프로토콜 헤더를 바탕으로 적절하게 처리하여

헤더를 벗겨내고 다시 다른 프로토콜로 처리를 넘깁니다.

이런 동작을 역캡슐화 또는 비캡슐화라고 부릅니다.

 

캡슐화와 역캡슐화

 

    ** 헤더 : 저장되거나 전송되는 데이터 블록의 맨앞에 위치한 보충 데이터

 


 

물리적인 신호로 변환된다

 

클라이언트 PC의 웹브라우저에서

웹서버 애플리케이션으로의 데이터 송신과 전송,

그리고 수신하는 모습을 생각해 보겠습니다.

 

데이터 송신측은 TCP/IP 계층을

위에서부터 아래로 따라가며 각 프로토콜 헤더를 추가합니다.

애플리케이션층의 HTTP - 트랜스포트층의 TCP - 인터넷층의 IP - 네트워크 인터페이스층의 이더넷

순서로 헤더가 추가되는 이미지를 확인해보겠습니다.

 

TCP/IP 프로토콜
웹브라우저에서 상위 프로토콜부터 헤더 추가하며 데이터 보내기

 

웹브라우저의 데이터는 우선 HTTP 헤더로 캡슐화되어 TCP로 넘어갑니다.

TCP 헤더가 추가되고 다시 IP 헤더가 추가됩니다.

마지막으로 이더넷 헤더FCS(Frame Check Sequence)가 추가되면

네트워크로 내보낼 데이터 전체가 완성됩니다.

FCS는 에러 체크를 위한 정보입니다.

 

    ** FCS : 통신 프로토콜 에서 프레임 에 추가 되는 오류 감지 코드.

    FCS 필드에는 프레임의 데이터를 기반으로 소스 노드에서 계산되는 숫자가 포함됩니다. 이 번호는 전송되는 프레임의 끝에 추가됩니다.

    대상 노드가 프레임을 수신하면 FCS 번호가 다시 계산되어 프레임에 포함된 FCS 번호와 비교됩니다.

    두 숫자가 다르면 오류로 간주하고 프레임을 버립니다.

 

이처럼 TCP/IP의 상위 계층 프로토콜에서부터

하위 계층 프로토콜의 헤더가 점차 캡슐화되면서,

네트워크로 내보내는 데이터에는 여러 프로토콜의 헤더가 추가됩니다.

마지막에는 이용하는 이더넷 규격에 대응하는 물리적인 신호로 변환해

전송 매체로 내보냅니다.

 

 

 

 

728x90
728x90