매일 배운 것을 정리하며 기록합니다. 네트워크의 캡슐화와 역캡슐화에 대해 공부를 시작했습니다.
캡슐화 & 역캡슐화를 살펴보기 전에 OSI 7 Layer에 대해 간단히 살펴보면 좋은데요,
계층에 관한 정보는 이전 블로깅인 OSI 7 Layer을 참고해 보시면 좋아요.
네트워크를 통해 데이터를 보낼 때는 캡슐화와 역캡슐화의 과정이 이루어집니다.
왜냐하면 데이터를 보내기 위해선 데이터의 앞부분에 전송하는데 필요한 정보를 붙여서 다음 계층으로 보내기 때문입니다.
이처럼 헤더를 붙여나가는 것을 캡슐화라고 합니다.
데이터 송신 측에서 캡슐화를 통해 데이터를 전송하다면 수신측에서는 역캡슐화를 통해 최초로 보낸 데이터 형태로 받을 수 있는 것이죠.
캡슐화 & 역캡슐화가 무엇인지 감이 잡히시나요?
그럼 각 계층별로 조금 더 자세하게 살펴보겠습니다.
먼저 송신 측 컴퓨터에서 요청 데이터가 만들어집니다.
데이터는 응용 계층에서 전송계층으로 전달되는데, 전송계층에서 신뢰할 수 있는 통신이 이루어지도록 응용계층에서 만들어진 데이터에 헤더를 붙입니다.
전송계층에서 만들어진 데이터를 다른 네트워크와 통신하기 위해 네트워크 계층에서 헤더를 붙입니다.
또 네트워크 게층에서 만들어진 데이터를 물리적인 통신 채널을 연결하기 위해 데이터 링크 계층에서 헤더와 트레일러를 붙입니다.
데이터 링크 계층에서 트레일러가 처음 등장했는데요, 트레일러는 데이터를 전달할 때 데이터의 마지막에 추가하는 정보를 말합니다.
이렇게 응용 게층에서의 요청 데이터는 전송 계층 헤더, 네트워크 계층 헤더, 데이터 링크 계층 헤더와 트레일러가 추가됩니다.
데이터 링크 계층에서 만들어진 데이터는 최종적으로 전기 신호로 변환돼서 수식 측에 도착합니다.
정리하자면 필요한 데이터를 추가해 나가는 것을 캡슐화라고 할 수 있습니다.
수신 측에서는 헤더를 제거합니다.
캡슐화와 반대로 데이터 링크 계층부터 순서대로 상위 계층으로 전달합니다.
이처럼 데이터 한 개를 전달하는데도 네트워크 통신의 내부에서는 캡슐화와 역캡슐화 과정이 일어납니다.
복잡해 보이는 과정이지만 이러한 여러 규칙 덕분에 데이터를 문제없이 전달할 수 있는 것입니다.
Reference : 미즈구치 카츠야, 『모두의 네트워크』 길벗 (2018), p54-60.