네트워킹에서 캡슐화는 어떻게 작동합니까?

네트워킹 환경에서 데이터 캡슐화는 출발지 컴퓨터와 목적지 컴퓨터 사이의 원활한 정보 교환을 가능하게 하는 핵심적인 기술입니다.

데이터 캡슐화의 역과정인 캡슐 해제 또한 동일한 목적을 달성하는 데 필수적입니다. 이 두 과정은 동시에 작동하면서 네트워크를 통한 정확한 통신과 데이터 흐름을 보장합니다.

사용자가 컴퓨터를 통해 특정 데이터에 접근하려 할 때, 몇 가지 키워드만 입력하면 몇 분 안에 원하는 결과를 얻을 수 있습니다.

하지만 눈에 보이지 않는 곳에서는 엄청난 속도로 수많은 작업들이 진행되고 있습니다. 네트워크와 구성 요소들은 사용자가 요청한 정보를 제공하기 위해 쉴 새 없이 움직입니다.

대부분의 사람들은 이러한 작업을 가능하게 하는 숨겨진 메커니즘에 대해 거의 알지 못합니다. 사실, 네트워크, 구성 요소, 그리고 관련 개념들은 현대 사회에서 우리의 일상생활에 중요한 역할을 하고 있습니다.

본 글에서는 네트워크의 핵심 개념을 보다 쉽게 이해할 수 있도록 데이터 캡슐화 및 캡슐 해제에 대해 자세히 알아보겠습니다.

지금부터 함께 시작해 보겠습니다!

데이터 캡슐화와 캡슐 해제란 무엇일까요?

데이터 캡슐화: 네트워킹에서 데이터 캡슐화란, 데이터가 OSI 또는 TCP/IP 네트워크 모델을 따라 출발지에서 목적지로 이동하는 과정에서 추가 정보를 덧붙여 데이터에 새로운 기능들을 부여하는 것을 의미합니다.

데이터 캡슐화는 데이터 전송이 정확하게 이루어지도록 데이터의 헤더나 푸터에 프로토콜 정보를 추가하는 방식으로 진행됩니다. 이는 애플리케이션 계층에서 물리 계층까지 송신자 측에서 일어납니다. 각 계층은 이전 계층에서 캡슐화된 정보를 받아 더 많은 데이터를 추가하여 재캡슐화한 후 다음 계층으로 전달합니다.

이 과정에는 오류 감지, 데이터 순서화, 혼잡 제어, 흐름 제어, 라우팅 데이터 등 다양한 요소들이 포함될 수 있습니다.

데이터 캡슐 해제: 데이터 캡슐화의 반대 과정입니다. 캡슐화된 데이터는 수신자 측에서 물리 계층에서 애플리케이션 계층으로 이동하면서 원래 정보를 얻기 위해 추가되었던 정보가 제거됩니다.

이 과정은 송신자 측에서 캡슐화된 계층과 동일한 계층에서 진행됩니다. 새롭게 추가되었던 헤더 및 트레일러 정보는 데이터에서 제거됩니다.

결론적으로, 데이터는 각 계층의 송신자 측에서 캡슐화되며, TCP/IP 또는 OSI 네트워크 모델의 동일한 계층에서 수신자 측에서 캡슐 해제됩니다.

프로토콜 데이터 단위(PDU)란 무엇일까요?

PDU(Protocol Data Unit)란, 데이터 전송 과정에서 OSI 또는 TCP/IP 모델의 각 계층에서 데이터에 추가되는 제어 데이터를 의미합니다. 이 정보는 데이터 항목의 필드 헤더에 추가되기도 하고, 끝부분이나 트레일러에 추가되기도 합니다.

네트워크 모델의 각 계층은 PDU를 활용하여 인접한 계층과 상호 작용하며 데이터를 주고받습니다. 이러한 PDU는 각 계층에서 데이터에 추가되어 캡슐화됩니다. 각 PDU는 포함된 데이터에 따라 이름이 다르게 지정됩니다. 목적지에 위치한 인접 계층은 데이터가 제거되어 다음 계층으로 전달되기 전에 데이터만 읽을 수 있습니다.

OSI 모델에서의 PDU

앞서 설명한 것처럼, 각 OSI 모델 계층의 PDU는 고유한 이름을 가지고 있습니다. 아래 표에 제시된 것처럼, 서로 다른 모델의 다른 계층에서 캡슐화된 데이터에 대해 서로 다른 용어가 사용됩니다.

TCP/IP 네트워크의 애플리케이션 계층과 OSI 모델의 애플리케이션, 프레젠테이션 및 세션 계층에서는 단순히 ‘데이터’라고 부르지만, 두 모델의 다른 계층에서는 다르게 지칭됩니다.

캡슐화된 용어 OSI 레이어 TCP/IP 레이어
Data Application Application
Data Presentation
Data Session
Segment Transport Transport
Packet Network Internet
Frame Data-Link Data-Link
Bits Physical Physical

이제 각 PDU를 자세히 살펴보고 네트워킹에서 이들이 갖는 중요성을 알아봅시다.

전송 계층 PDU

전송 계층에서 프로토콜 데이터 단위는 ‘세그먼트’라고 불립니다. 이 계층은 헤더를 생성한 후 데이터 조각과 함께 첨부합니다. 여기서 데이터 단위에는 모든 데이터 조각을 재조립하기 위해 원격 호스트에서 사용할 정보가 포함됩니다.

따라서 전송 계층에서 데이터 조각이 포함된 헤더를 계층이 추가 처리(네트워크 계층)를 위해 전송할 때, 이를 세그먼트라고 부릅니다.

네트워크 계층 PDU

네트워크 계층의 PDU는 ‘패킷’이라고 합니다. 네트워크 계층은 전송 계층으로부터 받은 모든 세그먼트에 대해 유사하게 헤더를 생성합니다. 이 헤더에는 라우팅과 주소 지정에 관한 정보가 담겨 있습니다.

네트워크 계층이 헤더를 생성한 후, 이를 세그먼트에 연결합니다. 이렇게 하여 데이터 항목은 패킷이 되어 다음 계층으로 이동하게 됩니다.

데이터 링크 계층 PDU

이 계층에서 PDU는 ‘프레임’으로 알려져 있습니다. 데이터 링크 계층은 이전 계층에서 패킷을 받은 다음, 수신된 각 패킷에 대한 헤더와 트레일러를 생성합니다. 헤더에는 출발지 컴퓨터의 주소, 목적지 컴퓨터의 주소 등과 같은 스위칭 데이터가 포함되어 있습니다. 반면, 트레일러에는 손상된 데이터 패키지에 대한 정보가 포함되어 있습니다.

데이터 링크 계층은 헤더와 트레일러 정보를 패킷에 첨부합니다. 이렇게 하여 데이터 단위는 프레임이 되고, 다음 계층(물리 계층)으로 보내지게 됩니다.

물리 계층 PDU

물리 계층의 PDU는 ‘비트’라고 불립니다. 물리 계층은 이전 계층에서 프레임을 가져온 후, 전송 매체로 전달할 수 있는 형태로 변환합니다. 여기서 비트는 이러한 형태를 나타냅니다.

캡슐화는 어떻게 작동할까요?

캡슐화는 데이터 또는 패킷 단위의 시작과 끝부분에서 발생합니다. 시작 부분은 헤더이고, 끝 부분은 트레일러입니다. 그리고 헤더와 트레일러 사이의 데이터를 페이로드라고 할 수 있습니다.

패킷의 헤더는 패킷의 시작을 알리고 전달되는 정보를 식별하는 초기 바이트에 데이터를 포함합니다. 이제 패킷은 출발지 컴퓨터에서 목적지 컴퓨터로 이동합니다. 또한 헤더에는 모든 프로토콜이 명확한 형식을 가지고 있기 때문에 사용되는 프로토콜에 따라 다양한 데이터가 포함됩니다.

패킷의 트레일러는 패킷의 끝에 도달한 수신 컴퓨터를 가리킵니다. 전체 패킷이 수신되었는지 확인하기 위해 장치에서 사용되는 오류 검사 값이 포함될 수 있습니다.

단계별 캡슐화 과정:

1단계: OSI 모델의 애플리케이션, 프레젠테이션 및 세션 계층, 또는 TCP/IP 모델의 애플리케이션 계층은 사용자의 데이터를 데이터 스트림 형태로 받습니다. 그런 다음, 데이터를 캡슐화하여 다음 계층, 즉 전송 계층으로 전달합니다. 이때, 데이터에 항상 헤더나 푸터가 추가되는 것은 아닙니다. 이는 애플리케이션에 따라 다르며, 필요한 헤더 또는 푸터만 추가됩니다.

2단계: 데이터가 TCP/IP 및 OSI 모델 모두에서 전송 계층으로 이동함에 따라, 이 계층은 상위 계층에서 오는 데이터 스트림을 가져와 여러 조각으로 나눕니다. 이 계층은 세그먼트라고 불리는 각 데이터 조각에 적절한 헤더를 추가하여 데이터 캡슐화를 수행합니다. 추가된 헤더에는 순서 정보가 포함되어 수신자 측에서 세그먼트가 재조립될 수 있도록 합니다.

3단계: 이제 헤더 정보가 추가된 데이터 항목은 네트워크 계층(OSI 모델) 또는 인터넷 계층(TCP/IP 모델)으로 이동합니다. 이 계층은 이전 계층에서 세그먼트를 가져와 데이터가 올바르게 전달되도록 필요한 라우팅 정보를 추가하여 캡슐화를 수행합니다. 캡슐화 후, 데이터는 이 계층에서 데이터그램 또는 패킷이 됩니다.

4단계: 데이터 패킷은 TCP/IP 또는 OSI 모델의 데이터 링크 계층으로 이동합니다. 이 계층은 패킷을 가져와 헤더와 푸터를 첨부하여 캡슐화합니다. 이때 헤더에는 데이터가 수신 하드웨어 구성 요소로 올바르게 전달되도록 하는 전환 정보가 포함되어 있습니다. 반대로 트레일러에는 오류 감지 및 완화와 관련된 데이터가 포함되어 있습니다. 이 단계에서 데이터는 프레임이 되어 최종 계층으로 이동합니다.

5단계: 데이터 링크 계층에서 오는 데이터 프레임은 TCP/IP 또는 OSI 모델의 물리 계층으로 이동합니다. 이 계층은 데이터를 비트 또는 데이터 신호로 변환하여 캡슐화합니다.

캡슐 해제는 어떻게 작동할까요?

캡슐 해제는 OSI 또는 TCP/IP 모델의 물리적 계층에서 애플리케이션 계층까지 캡슐화의 역순으로 진행됩니다. 발신자 측에서 캡슐화 과정 중에 데이터 조각에 추가되었던 모든 추가 정보는 수신자 측으로 이동하는 동안 제거됩니다.

캡슐 해제 과정에 대한 단계별 설명은 다음과 같습니다.

1단계: 물리 계층에서 캡슐화된 데이터(비트 또는 데이터 신호)를 받아와 캡슐 해제를 시작합니다. 이제 데이터는 데이터 프레임이 되어 상위 계층, 즉 데이터 링크 계층으로 전달됩니다.

2단계: 데이터 링크 계층은 이러한 데이터 프레임을 받아 캡슐 해제합니다. 또한 데이터 프레임의 헤더를 통해 올바른 하드웨어로 전달되었는지 확인합니다. 데이터 프레임이 잘못되었거나 올바르지 않은 대상에 해당하는 경우 폐기됩니다. 데이터 프레임이 올바르다면, 데이터 링크 계층은 데이터 프레임의 트레일러에서 정보를 확인합니다.

트레일러나 데이터에서 오류가 발견되면 데이터 재전송을 요청합니다. 그러나 트레일러에 올바른 정보가 있다면, 해당 계층은 이를 캡슐 해제하여 데이터그램 또는 데이터 패킷을 형성한 다음 상위 계층으로 전달합니다.

3단계: 데이터 링크 계층에서 오는 데이터 패킷은 인터넷 계층(TCP/IP 모델) 또는 네트워크 계층(OSI 모델)으로 이동합니다. 이 계층은 패킷을 캡슐 해제하고 데이터 세그먼트를 형성합니다.

이 계층은 패킷 헤더의 라우팅 정보를 확인하여 올바른 대상으로 라우팅되는지 확인합니다. 라우팅이 올바르지 않으면 데이터 패킷이 삭제됩니다. 라우팅 정보가 올바르다면, 해당 계층은 패킷을 캡슐 해제하고 상위 계층, 즉 전송 계층으로 보냅니다.

4단계: 인터넷 계층 또는 네트워크 계층에서 오는 데이터 세그먼트는 TCP/IP 및 OSI 모델 모두에서 전송 계층으로 이동합니다. 전송 계층은 세그먼트를 가져와 헤더 정보를 확인합니다. 그다음, 세그먼트를 재조립하고 데이터 스트림을 형성한 후 상위 계층으로 이동시킵니다.

5단계: 전송 계층의 데이터 스트림은 TCP/IP 모델의 애플리케이션 계층에 도달합니다. OSI 모델에서는 세션 계층, 프레젠테이션 계층, 마지막으로 애플리케이션 계층에 도달합니다. 각 계층은 데이터 스트림을 가져와 캡슐 해제하면서 애플리케이션별 데이터만 수신자의 컴퓨터 또는 애플리케이션으로 전달합니다.

캡슐화의 장점

네트워킹에서 캡슐화가 제공하는 주요 이점은 다음과 같습니다.

#1. 데이터 보안

캡슐화는 무단 접근으로부터 데이터를 보호하고 개인 정보 보호를 강화하는 데 도움이 됩니다. 현재 데이터 보호가 얼마나 중요한지를 고려할 때, 이는 데이터 도난, 공격 등의 온라인 위협으로부터 우리를 보호해 줄 수 있습니다. 또한 복잡한 과정 없이 특정 수준의 사용자에게만 접근 권한을 부여할 수 있습니다.

#2. 신뢰성 있는 데이터

캡슐화는 핵심 데이터의 무결성을 보장하여 외부 코드로 인해 변경될 가능성을 최소화합니다. 또한 핵심 정보가 외부 객체에 노출되는지 여부도 결정합니다. 데이터 캡슐화가 없다면 데이터의 작은 변화조차도 네트워크에 손상을 일으킬 수 있습니다.

#3. 추가 기능

캡슐화 과정에서 데이터는 여러 계층에 걸쳐 추가적인 정보와 함께 전송됩니다. 이는 네트워크를 통한 데이터 전송에 더 많은 기능을 추가해 발신자와 수신자 간의 원활한 정보 교환을 지원합니다. 이러한 기능은 데이터 흐름 제어, 라우팅, 오류 감지, 데이터 순서화 등을 포함할 수 있습니다. 또한 데이터를 올바르고 효과적으로 전송하는 데 도움이 됩니다.

#4. 효과적인 의사소통

캡슐화 및 캡슐 해제는 네트워크에서 동시에 실행됩니다. 캡슐화는 발신자 측에서 실행되고, 캡슐 해제는 수신자 측에서 수행됩니다. 이러한 동시적인 실행은 수신자와 발신자 간의 효과적인 의사소통을 가능하게 합니다.

#5. 간편한 유지 보수

오류는 예기치 않은 상황에서 언제든지 발생할 수 있으며, 이는 발신자와 수신자 간의 데이터 전송을 중단시킬 수 있습니다. 하지만 데이터에 캡슐화를 적용하면 연결을 보호하고 데이터 변조를 방지하는 데 도움이 됩니다. 따라서 핵심 정보가 안전하게 유지되어 오류 발생 가능성이 줄어들고, 유지 관리가 더욱 용이해집니다.

결론

데이터 캡슐화와 캡슐 해제는 네트워킹에서 필수적인 요소입니다. 이러한 기술들은 더 나은 데이터 보안, 개인 정보 보호, 신뢰성 및 효과적인 통신을 제공함으로써 네트워크 내에서 데이터가 원활하게 흐르도록 보장합니다.