Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- error
- 리눅스
- Linux
- 오블완
- codeium
- pandas
- IntelliJ
- 쉘스크립트
- github
- DBMS
- cursorai
- Javascript
- zset
- git
- Python
- 자바
- mssql
- 티스토리챌린지
- Kibana
- java
- PostgreSQL
- MariaDB
- mysql
- docker
- spring
- 네트워크
- oracle
- iBatis
- SQL
- 명령어
Archives
- Today
- Total
hanker
[Network] 네트워크의 각 계층별 데이터 캡슐화(encapsulation) 본문
반응형
네트워크의 각 계층별로 상위 계층의 데이터를 캡술화하여 하위 계층으로 전달하게 되는데, 캡슐화가 무엇인지, 왜 캡슐화를 하는지 알아보자.
1. 캡슐화란?
캡슐화(Encapsulation)는 네트워크 통신에서 상위 계층의 데이터에 각 계층별 제어 정보(헤더)를 추가하여 하위 계층으로 전달하는 과정을 의미한다.
- 데이터 포장 과정: 원본 데이터(페이로드)에 각 계층을 지날 때마다 해당 계층의 헤더 정보를 앞에 추가하는 방식으로 진행
- 계층별 처리:
- 응용 계층에서 생성된 데이터는 전송 계층으로 전달
- 전송 계층은 이 데이터에 TCP/UDP 헤더를 추가
- 네트워크 계층은 IP 헤더를 추가
- 데이터 링크 계층은 MAC 헤더와 트레일러(FCS)를 추가
- 최종적으로 물리 계층을 통해 비트 단위로 전송
- 단위 변환: 각 계층별로 데이터 단위의 이름이 달라집니다.
- 응용 계층: 데이터(Data)
- 전송 계층: 세그먼트(TCP) / 데이터그램(UDP)
- 네트워크 계층: 패킷(Packet)
- 데이터 링크 계층: 프레임(Frame)
- 물리 계층: 비트(Bit)
예를 들어, 웹 브라우저에서 웹 페이지를 요청할 때
- 응용 계층: HTTP 요청 메시지 생성
- 전송 계층: HTTP 메시지에 TCP 헤더 추가 (포트 정보, 시퀀스 번호 등)
- 네트워크 계층: TCP 세그먼트에 IP 헤더 추가 (출발지/목적지 IP 주소 등)
- 데이터 링크 계층: IP 패킷에 MAC 헤더와 트레일러 추가 (출발지/목적지 MAC 주소 등)
- 물리 계층: 프레임을 비트 단위로 변환하여 전송 매체(케이블 등)로 전송
수신 측에서는 역캡슐화라는 반대 과정이 일어난다.
- 물리 계층: 비트를 프레임으로 변환
- 데이터 링크 계층: MAC 헤더와 트레일러 제거
- 네트워크 계층: IP 헤더 제거
- 전송 계층: TCP/UDP 헤더 제거
- 응용 계층: 원본 데이터(HTTP 메시지 등) 처리
반응형
2. 캡슐화 이유
2-1. 계층 간 독립성 유지
- 모듈화
각 계층이 자신만의 역할(헤더 추가·제거, 오류 제어, 주소 지정 등)에 집중할 수 있도록 분리 - 유지·보수 용이
한 계층의 프로토콜을 수정해도 다른 계층에 영향을 최소화
2-2. 주소 지정 및 라우팅 정보 첨부
- MAC/IP 주소 부여
데이터 링크 계층에서 물리적(혹은 논리적) 주소를, 네트워크 계층에서 네트워크 주소(IP)를 헤더에 추가 - 경로 결정
송수신 간 통신 경로를 올바르게 설정·관리
2-3. 오류 검출 및 제어
- 무결성 검증
프레임 단위로 CRC 등의 체크섬을 삽입하여 전송 중 손상 여부 확인 - 재전송·흐름 제어
손실·손상된 세그먼트에 한해 재전송하거나, 수신 버퍼 여유에 맞춰 송신 속도 조절
2-4. 다중화(Multiplexing)
- 포트 번호 활용
하나의 호스트에서 여러 애플리케이션이 동시에 통신할 때, 포트 정보로 데이터 흐름 구분 - 서비스 공용화
TCP/UDP 헤더에 담긴 포트로 HTTP·FTP·DNS 등 다양한 서비스 동시 제공
2-5. 프로토콜 확장성 확보
- 옵션 필드 제공
새로운 기능(예: IPv6 확장 헤더, TCP 옵션)을 추가하기 위한 유연한 구조 - 하위 호환성 유지
옛 버전 장비와 신기능 장비가 공존 가능하도록 점진적 확장
2-6. 보안 및 암호화
- 암호화 계층 삽입
표현 계층(혹은 전송 계층)에서 SSL/TLS 헤더와 암호화된 페이로드 생성 - 인증·무결성 보장헤더에 서명·토큰 등을 담아 출처 확인과 데이터 변경 방지
반응형
'Network' 카테고리의 다른 글
[Network] 네트워크 계층별로 전송되는 데이터 단위 (PDU) (0) | 2025.05.10 |
---|---|
[Network] 웰노운 포트란 (Well-Known Port) (0) | 2025.05.05 |
Network - 데이터 링크 계층의 작동 원리 (0) | 2024.12.25 |
Network - 네트워크 보안 기초 : 방화벽과 VPN (1) | 2024.12.24 |
Network - DNS와 DHCP의 작동 원리 (0) | 2024.12.23 |