Skip to content

Commit

Permalink
2024-02-07
Browse files Browse the repository at this point in the history
  • Loading branch information
Lim committed Feb 7, 2024
1 parent 576180f commit 46c12c7
Showing 1 changed file with 66 additions and 0 deletions.
66 changes: 66 additions & 0 deletions docs/sk-lim19f/2024-02-07.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
### 3.4.3 UDP

- TCP와 달리 UDP는 4계층 프로토콜이 가져야 할 특징이 거의 없음
- UDP는 데이터 전송을 보장하지 않는 프로토콜이므로 제한된 용도로만 사용
- 데이터를 전송하는데 신뢰성보다 일부 데이터가 유실되더라고 시간에 맞추어 계속 전송하는 것이 중요한 화상회의 시스템과 같은 서비스인 경우, UDP를 사용
- UDP는 중간에 데이터가 일부 유실되더라고 그냥 유실된 상태로 데이터를 처리
- UDP는 TCP와 달리 통신 시작 전, 3방향 핸드셰이크와 같이 사전에 연결을 확립하는 절차가 없음
- 그 대신 UDP에서 첫 데이터는 리소스 확보를 위해 인터럽트(Interrupt)를 거는 용도로 사용되고 유실

## 3.5 ARP

- 상대방의 MAC 주소를 알아내기 위해 사용되는 프로토콜

### 3.5.1 ARP란?

- IP주소 체계는 물리적 MAC 주소와 전혀 연관성이 없으므로 두 개의 주소를 연계시켜 주기 위한 매커니즘이 필요 → ARP

### 3.5.3 GARP

- ARP 프로토콜 필드를 그대로 사용하지만 내용을 변경해 원래 ARP 프로토콜의 목적과 다른 용도로 사용하는 GARP, RARP와 같은 프로토콜
- ARP가 상대방의 MAC 주소를 알아내기 위해 사용되는 반면, GARP는 자신의 IP와 MAC 주소를 알릴 목적으로 사용
- GARP를 사용해 동일 네트워크에 자신의 IP 주소와 MAC 주소를 알려주는 이유
- IP 주소 충돌 감지
- 상대방(동일 서브넷 상의 다른)의 ARP 테이블 갱신
- HA(고가용성) 용도의 클러스터링, VRRP, HSRP

#### 3.5.3.1 IP 주소 충돌 감지

- IP 주소는 유일하게 할당되어야 하는 값이지만 여러 가지 이유로 내가 할당 받은 IP를 다른 사람이 사용하고 있을 수 있음
- IP 충돌 때문에 통신이 안 되는것을 예방하기 위해 자신에게 할당된 IP가 네트워크에서 이미 사용되고 있는지 GARP를 통해 확인

3.5.3.2 상대방(동일 서브넷에 있는)의 ARP 테이블 갱신

- 동일 네트워크상 단말들의 ARP 테이블 갱신

3.5.3.3 클러스터링, FHRP(VRRP, HSRP)

- 데이터베이스 고가용성 솔루션에서 GARP 사용이 단말의 ARP 테이블을 갱신하는 것이 목적이었던 반면, 클러스터링이나 FHRP의 GARP 사용은 네트워크에 있는 스위치 장비의 MAC 테이블 갱신이 목적

### 3.5.4 RARP

- RARP는 Reverse ARP의 줄임말
- 반대로 동작하는 ARP
- RARP는 IP 주소가 정해져 있지 않은 단말이 IP 할당을 요청할 때 사용
- 나 자신의 MAC 주소는 알지만 IP가 아직 할당되지 않아 IP를 할당해주는 서버에 어떤 IP 주소를 써야 하는지 물어볼 때 사용

## 3.6 서브넷과 게이트웨이

- 원격지 네트워크와의 통신에 사용하는 장비를 게이트웨이라고 부르고 3계층 장비(라우터와 L3 스위치)가 이 역할을 수행

### 3.6.1. 서브넷과 게이트웨이 용도

- 로컬 네트워크에서는 ARP 브로드캐스트를 이용해 도착지 MAC 주소를 학습하고 있고 이 MAC 주소를 이용해 직접 통신할 수 있지만 원격 네트워크 통신은 네트워크를 넘어 전달되지 못하는 브로드캐스트의 성질 때문에 네트워크 장비의 도움이 필요
- 이 장비를 '게이트웨이'라고 하고 게이트웨이에 대한 정보를 PC나 네트워크 장비에 설정하는 항목이 '기본 게이트웨이'
- 서브넷 마스크: 동일 네트워크 간의 통신과 서로 다른 네트워크 간의 통신을 구분하기 위해 사용되는 것

### 3.6.2 2계층 통신 vs 3계층 통신

- 단말 간을 연결해주는 네트워크 장비에서 2계층까지만 정보를 확인해 통신하고 ARP 요청을 보낼 때 직접 브로드캐스트를 이용하므로 이를 L2 통신이라고 부름
- 원격지 네트워크와 통신해야 할 경우(출발지와 목적지가 다른 네트워크에 존재할 경우), 라우터와 같은 3계층 장비의 도움이 없으면 통신할 수 없음
- 해당 패킷을 전송하는 네트워크 장비에서 3계층 정보까지 확인해야 하며 이것을 L3 통신이라고 함
- 같은 네트워크에 있는 단말 간 통신은 직접적으로 이루어짐
- 상대방의 MAC 주소를 알아내기 위해 ARP 브로드캐스트를 이용하고 상대방의 MAC 주소를 알아내자마자 패킷이 캡슐화되어 통신이 시작
- 외부 네트워크와 통신이 필요할 때는 단말이 자신이 직접 보낼 수 없는 위치에 목적지가 있다고 판단하고 ARP 요청을 기본 게이트웨이의 IP 주소로 요청
- 로컬 통신(L2 통신)은 도착지 MAC 주소와 도착지 IP 주소가 같은 반면, 원격지 통신은 도착지 MAC 주소와 IP주소가 다름
- 도착지 IP 주소는 통신의 실제 도착지이고 도착지 MAC 주소는 디폴트 게이트웨이의 MAC 주소가 사용

0 comments on commit 46c12c7

Please sign in to comment.