목표
링크계층과 이더넷을 소개한다.
라우터 (네트워크 계층)
- Router : 네트워크 장치로, IP 패킷을 수신하여 적절한 목적지로 전송하는 역할
- 무선 공유기는 Nat Router의 역할을 한다.
- Nat: 공인 ip 주소와 사설 ip 주소 간에 변환 역할을 한다.
네트워크 다이어그램

- 링크 계층과 네트워크 계층의 프로토콜 흐름과 구성 요소를 설명
- ip계층에서 어느 link를 써야하는지 정해지면, 그 link 헤더를 붙여서 보내주는 간단한 역할임
- 단순한 계층인데, 왜 중요하냐? : 전체적인 망의 효율성을 담보해줄 수 있음 !
- 원래 와이파이가 1mbps였음. 요즘엔 기가까지 보내. 네트워크가 10년새 1000배가 빨라진거임
- 이더넷도 마찬가지 5,10mbps 였던 것이 1000배가 됨. 속도가 !
=> 이 속도는 링크 계층과 물리계층 덕에 빨라진 것임 !
결론: 링크계층은 1개의 링크를 연결하는 역할을 한다 ~
데이터 링크 계층의 서비스
01. Error Detection(오류 검출)
- CRC (Cyclic Redundancy Check)
- TCP Checksum을 사용하여 입력 데이터 T를 검증
예: 𝑇(100𝐵)→𝑇′(150𝐵)
- 심각하게 error detection을 함.
02. Error Correction(오류 수정)
- 터보 코드 (Turbo Code), LDPC (Low-Density Parity-Check) 코드 등 사용

- 그냥 역함수를 해주는건데, 작은 noise에서 복원이 잘된건지, 큰 NOISE가 섞이면서 복원이 잘 안된건지 자체는 알 수 없다.
요약)
- 데이터 통신에서는 오류 검출을 통해 전송 중 문제를 발견하고, 오류 수정을 통해 복원 가능한 데이터를 재구성합니다.
- 함수 𝑓와 𝑓−1는 데이터 변환과 복원에 중요한 역할을 하며, 노이즈의 강도가 복원 가능성을 결정짓는 중요한 요소로 작용합니다.
Checksum vs CRC 오류 검출 정리
01. Checksum
특징)
- 소프트웨어(SW) 방식으로 구현
- 데이터의 Word 단위로 덧셈(+)연산을 수행하여 오류를 검출
장단점)
- 간단한 방식으로 구현이 가능
- 하지만 검출 성능(detection performance)이 낮음
02. CRC (Cyclic Reducdancy Check)
특징)
- 하드웨어 방식으로 구현
- 데이터의 비트 단위로 연산하여 더 정밀한 오류 검출 가능
장단점)
- 높은 성능(perforamance)을 제공
- 하지만 하드웨어의 의존성이 큼
링크 계층(Link Layer)와 TCP/IP에서의 오류 검출 방식
- 링크 계층(Link Layer)
- 오류 검출 방식: CRC (Cyclic Redundancy Check)를 주로 사용
- 이유: 링크 계층의 대부분은 하드웨어 기반 장치에서 구현되므로, 하드웨어적으로 처리할 수 있는 CRC가 적합. CRC는 비트 단위의 정밀한 오류 검출을 지원하므로, 데이터의 무결성을 보장하는 데 효율적.
- TCP/IP
- 오류 검출 방식: Checksum (체크섬)을 사용
- 이유: TCP/IP는 소프트웨어(SW)에서 실행되는 프로토콜 스택의 일부로, 하드웨어보다는 소프트웨어 기반의 간단한 방식인 Checksum이 적합. Checksum은 Word 단위 연산으로 구현이 간단하며, 이미 하드웨어 기반 링크 계층에서 CRC를 통해 1차적인 오류 검출이 이루어졌기 때문에, 추가적인 간단한 검증을 목적으로 사용.
Error correction
1. CRC와 연산 속도
- CRC (Cyclic Redundancy Check) 는 오류 검출을 위한 기법이며, 연산 속도가 빨라야 하므로 하드웨어에서 처리하는 경우가 많다.
- Error Correction 또한 CRC를 사용하여 수행되는 경우가 있다.
2. Physical Layer와 Link Layer의 차이
- Link Layer (데이터 링크 계층)
- 데이터를 0과 1로 처리한다. (디지털 관점)
- Physical Layer (물리 계층)
- 데이터를 아날로그 신호로 본다.
- 무선의 경우 전파를 이용하여 데이터를 전송한다.
- 유선망(이더넷 등)은 데이터를 전압(볼트)으로 변환하여 전송한다.
3. Physical Layer의 전압 표현 방식
- 이더넷과 유선망: 데이터를 전압으로 변환하여 전송
- 단순한 0V, 5V의 두 단계만 사용하면 높은 속도를 지원하기 어려움.
- 따라서 여러 개의 전압 레벨을 사용하여 데이터를 전송한다.
(ex: 이더넷에서는 5개의 전압 단계 활용)
4. SSD와 오류 정정
- SSD의 저장 용량 증가에 따라 Physical Layer에서의 데이터 표현 방식 변화
- 한 비트를 직접 저장하는 것이 아니라, 여러 개의 비트를 한 셀에 저장하여 신뢰성을 높임.
- 이를 통해 에러 발생을 줄이고 저장 효율성을 높이는 방식을 사용함.
5. Physical Layer에서의 오류 판단
- Link Layer 관점
- 데이터가 0과 1로 구분됨.
- 원래 1이었던 값이 0이 되면 오류로 판단.
- Physical Layer 관점
- 데이터는 아날로그 전압 신호로 표현됨.
- 신호가 크거나 작으면 명확하게 0 또는 1로 인식.
- 하지만 애매한 중간값에 위치하면 오류 발생 확률이 높아짐.
- 즉, 경계에 가까운 값일수록 오류 확률이 높아지므로 오류 정정 코드(ECC)가 개입함.
6. 최근 오류 정정 방식의 변화
- 최신 오류 정정 기법에서는 0과 1 사이의 애매한 값을 에러일 확률이 높다고 판단하여 자동으로 보정하는 경향이 강함.
- 즉, 에러 발생 가능성이 높은 신호 값을 감지하여 오류 정정을 수행함.

데이터 링크 계층의 서비스
- Error detection, correction
- 채널 공유 프로토콜
- 채널: 동시에 한명만 사용할 수 있는 미디어의 단위

FDMA (주파수 분할)
Frequency Division Multiple Access - 주파수 분할 방식
분할 기준: 주파수를 나눠서 사용
방식: 각 사용자가 고유한 주파수 대역 할당받음
특징: 연속적인 전송 가능, 간섭 적음
TDMA (시간 분할)
Time Division Multiple Access - 시분할 다중 접속
분할 기준: 시간을 나눠서 사용
방식: 동일한 주파수를 시간 단위로 나누어 사용
특징: 시간 동기화 필요
대표적인 예: 2G GSM, 일부 3G 네트워크
CDMA (코드 분할)
Code Divistion Multiple Access - 코드 분할 다중 접속
분할 기준:코드를 나눠서 사용
방식: 동일한 주파수를 코드로 구별
특징: 여러 사용자가 동시에 같은 주파수 사용 가능
대표적인 예: 3G 이동통신 (W-CDMA, CDMA2000)