인터넷 계층
장치로부터 받은 네트워크 패킷을 IP 주소로 지정된 목적지로 전송하기 위해 사용되는 계층.
이 계층에서 사용하는 프로토콜은 IP, ARP, ICMP 등이 있고 데이터가 올바르게 전송되었는지 보장하지 않는 비연결형적 특징이 있다.
링크 계층
물리적인 전송매체(전선, 광섬유 무선 등)를 통해 실질적으로 데이터를 전송하고 장치 간 신호를 주고받는 규칙을 정하기 위해 사용되는 계층.
OSI 7계층에서는 물리 계층과 데이터 링크 계층으로 나눠지며, 물리 계층은 데이터를 보내는 계층, 데이터 링크 계층은 이더넷 프레임을 통해 에러 확인, 흐름 제어, 접근 제어를 담당하는 계층을 의미한다.
링크 계층에 사용 되는 물리적인 전송 매체
- 유선 LAN(IEEE802.3)
- 통신 방식 - 전이중화 통신 사용
- 전이중화 통신(Full Duplex): 양쪽 장치가 동시에 송수신할 수 있는 방식. 송신로와 수신로로 나누어 데이터를 주고 받는 방식으로 현대의 고속 이더넷은 이 방식을 기반으로 통신한다.
- 유선 LAN에서 전이중화 통신을 사용하기 전에는 반이중화 통신 방식 중 하나인 CSMA/CD(Carrier Sense Multiple Access with Collision Detection)를 사용했다. 수신로와 송신로가 구분되어있지 않아 데이터를 보낼 때 충돌에 대비해야 했고, 이에 대한 해결책으로 충돌 발생 시 일정 시간 이후 재전송 하는 방식을 채택했다.
- 유선 LAN에 사용되는 케이블
- 트위스티드 페어 케이블(Twisted pair cable): 랜케이블로도 불리며, 여덟 개의 구리선을 두개씩 꼬아 묶은 케이블이다.
- 광섬유 케이블: 광섬유로 만든 케이블로 레이저를 이용해 통신, 구리선과는 비교불가능한 정도의 장거리 및 고속 통신이 가능하다.
- 통신 방식 - 전이중화 통신 사용
- 무선 LAN(IEEE802.11)
- 통신 방식 - 무선LAN은 수신과 송신에 같은 채널을 사용하기 때문에 반이중화 통신(Half Duplex)을 사용한다.
- CSMA/CA: 반이중화 통신 중 하나로 장치에서 데이터를 보내기 전 캐리어 감지 등으로 사전에 가능한 한 충돌을 방지한다. CSMA/CD와 동작방식은 같으나 데이터를 전송하기 이전과 이후에 충돌방지 로직을 실행시킨다는 점에서 차이가 있다.
- Wi-fi: 전자기기 들이 무선 LAN신호에 연결할 수 있게 하는 기술, 이를 사용하기 위해 무선 접속 장치(AP:Access Point=공유기 등)가 있어야 한다.
- BSS(Basic Service Set): WLAN의 가장 기초적인 구성요소이며, BSS내에 있는 AP(공유기)와 장치(station, 단말)들이 서로 통신이 가능한 구조이다. 하나의 AP만을 기반으로 구축되어 있다.
- ESS(Extended Service Set): 하나의 DS에 여러 BSS가 연결된 네트워크를 명칭하는 말이다.
- cf) DS(Distributed System): AP와 연결된 유선 네트워크를 의미한다. 무선에서의 유선 구간이라고 생각하면 편리하다.
- 통신 방식 - 무선LAN은 수신과 송신에 같은 채널을 사용하기 때문에 반이중화 통신(Half Duplex)을 사용한다.

이더넷 프레임
이더넷은 프레임은 데이터의 신뢰성과 효율성을 보장하기 위해 여러 필드로 구성되어 있다.
cf) 데이터 링크 계층은 이더넷 프레임을 통해 전달받은 데이터의 에러를 검출하고 캡슐화한다.

Preamble: 이더넷 프레임의 시작을 나타내는 역할. 프레임 수신측이 동기화를 위해 사용한다.
SFD(Start Frame Delimiter): Preamble과 실제 프레임의 구분을 위해 사용한다.
DMAC(Destination MAC), SMAC(Source MAC): 목적지, 송신지의 MAC주소를 나타낸다.
EtherType: 데이터 프레임에 포함된 프로토콜 유형을 나타낸다.
Payload: 전달받은 데이터
CRC(Cyclic Redundancy Check): 에러 확인 비트
TCP계층 간 데이터 송수신 과정

HTTP를 통해 웹 서버에 있는 데이터를 요청한다면?
애플리케이션 계층에서 보내는 요청(Request)값들은 캡슐화 과정을 거쳐 링크 계층으로 전달된다. 그리고 링크 계층을 통해 웹 서버와 통신한다.
웹 서버는 요청을 받고 비캡슐화 과정을 거쳐 서버의 애플리케이션 계층으로 데이터를 전송한다.
캡슐화
상위 계층에서 하위 계층으로 데이터를 전송할 때 각 계층에서 헤더와 트레일러 정보를 추가하여 데이터를 패킷 형식으로 감싸는 과정이다.

아래 이미지도 캡슐화를 거쳐 데이터를 전송하는 일련의 과정이다.

캡슐화 과정
- 애플리케이션 계층에서는 HTTP요청 메시지와 같은 데이터를 생성, 전송 계층으로 데이터를 전달한다.
- 전송 계층에서는 전달 받은 데이터를 세그먼트로 캡슐화한 뒤 인터넷 계층으로 데이터를 전달한다. TCP프로토콜을 예로 들면 송신지와 목적지의 포트 번호 등의 정보가 헤더에 추가된다.
- 인터넷 계층은 전달 받은 데이터를 패킷으로 캡슐화하며, 이를 위해 목적지와 송신지의 IP주소 등을 헤더에 추가한다.
- 링크 계층은 전달 받은 데이터를 프레임 형태로 캡슐화하고, 목적지와 송신지의 MAC주소 등을 헤더에 추가한다. 그리고 네트워크를 통해 캡슐화된 데이터를 전송한다.
비캡슐화
캡슐화의 반대 과정으로 하위 계층에서 상위 계층으로 데이터를 전송할 때 각 계층에서 헤더와 트레일러 정보를 제거하여 전달하는 과정이다.

캡슐화와 비캡슐화는 계층화된 프로토콜 스택에서 데이터의 안정적인 전송과 수신을 가능케하며, 네트워크에서 데이터를 효율적으로 처리할 수 있도록 도와준다.
예상 면접 질문
브라우저에서 서버로 요청을 보낼 때의 과정을 네트워크 계층 관점에서 설명하세요.
-> 계층 간 데이터 송수신 과정을 캡슐화와 비캡슐화 개념과 함께 설명한다.