| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- IntelliJ
- exception
- Flux
- postgis
- Mono
- AOP
- 보안
- 인증
- 본인인증
- docker
- webflux
- API
- deepseek vs chatgpt
- netty
- PostgreSQL
- 허깅 페이스
- 본인확인
- 컨퍼런스
- Kotlin
- 로그인
- ktlin
- NGINX
- spring security
- db
- Spring
- 딥시크
- Spring Boot
- 공동인증서
- AWS
- 코틀린
- Today
- Total
[수미수의 개발 브로구]
[INTERVIEW] Back-end 기술이론 정리 - 네트워크 편 본문
들어가기 전
오늘은 Back-end 면접 기술이론 관련해서 네트워크 부분에 대해서 스터디 했던 내용을 공유 하고자 합니다.
1. IPv4 Private IP 설명
IPv4 사설망의 종류는 10.0.0.0 ~ 10.255.255.255인 A클래스와, 172.16.0.0 ~ 172.31.255.255 인 B 클래스 그리고, 192.168.0.0 ~ 192.168.255.255 인 C클래스로 구분됩니다.
2. TCP handshake 과정
- TCP Handshake 과정은 먼저 SYN을 전송하고, SYN + ACK를 전송 한 뒤 다시 ACK를 전송하여 연결을 맺습니다.
- TCP 연결을 종료 할 시에는 FIN을 먼저 전송하고, ACK 를 수신자가 전송합니다. 그리고 수신자가 다시 FIN을 전송하고, 송신자가 ACK를 전송하면 TCP 연결을 종료 하게 됩니다.
3. DNS 관련된 것, 레코드
4. TCP/UDP 차이점
- TCP와 UDP의 차이점은 먼저, TCP의 경우 연결을 맺은 후 통신이 가능하지만, UDP는 연결없이 통신이 가능합니다. 둘째, TCP는 신뢰성 있는 데이터 전송을 위해 데이터 재전송 기법을 사용하지만, UDP는 데이터를 재전송하지 않아 신뢰를 보장 하지 않습니다. 그리고, TCP 는 1:1 통신에 사용되고, UDP는 1:1, 1:N, N:N 통신에 사용됩니다.
5. ICMP 동작 원리 (Ping, Traceroute, TTL)
PC에서 ping을 사용하면, 목적지 IP 주소로, ICMP 메시지를 전송한다. 이때, ICMP 메시지를 수신한 서버는 응답으로 ICMP 응답 메시지를 전송지에 전송한다.
6. L3, L4, L7 로드 발란서 차이점
- 클라이언트가 적은 경우, 로드 발란서가 필요하지 않다.
- 클라언트가 많을 경우, 로드 발란서가 필요하다. (서버는 모든 사람들에게 응답해주려고 하지만, 메모리 아웃등 동작을 멈추게 된다.)
로드 발란서는 여러대의 서버에게 균등하게 트래픽을 분산 시켜 주는 역할을 한다. 트래픽이 많을 경우, 여러대의 서버가 분산처리하여, 서버의 로드율, 부하량, 속도 처리를 고려하여 분산처리하여 해결해주는 서비스
- L3 로드발란서는 IP 주소를 바탕으로 로드 발란싱하며, L4 로드 발란서는 IP와 포트 주소를 바탕으로 로드 발란싱합니다. 그리고, L7 로드 발란서는 어플리케이션 레벨에서 로드 발란싱하며, 예를들어 URL 주소를 바탕으로 로드 발란싱합니다.
7. CDN
CDN은 컨텐츠 전송 네트워크로 컨텐츠를효율적으로 전달하기 위해 여러 노드를 가진 네트워크에 데이터를 저장하여 제공하는 시스템을 말한다.
- CDN은 사용자가 인터넷상에서 가장 가까운 곳의 서버로 컨텐츠를 전송받아 트래픽이 특정 서버에 집중되지 않고 각 서버로 분산되로록 하는 기술
- 실제 서버로 부하가 몰리지 않고, CDN 서버를 통해서 로드 발란싱 할 수 있다
8. ARP, RARP
ARP 프로토콜은 목적지 시스템에 해당하는 MAC 주소를 알아오는 프로콜이며, RARP 는 MAC 주소를 바탕으로 IP 주소를 받아올 때 프로토콜
9. 같은 네트워크내에서 패킷 전송
ARP를 통해서, MAC 주소를 알아 온뒤, MAC 주소를 2계층 목적지에 캡슈로하 하여 패킷 전송
10. 다른 네트워크인 경우
해당 네트워크의 게이트웨이 장비로 MaC 주소를 지정하여 게이트웨이에게 패킷 전송
11. Reverse Proxy
클라이언트가 프록시로 요청하고, 프록시가 배후(Reverse) 의 서버로부터 데이터를 가져오는 방식입니다. (예를 들어, http://abc.com 으로 요청하고, 해당 프록시가, 실제 어플리케이션 서버에 요청하여 데이터를 가져오는 형태입니다.)
12. Forward Proxy
클라이언트가 타깃 서버의 요청할 때, 프록시로 타겟 서버의 주소를 전달해 프록시가 데이터를 가져오는 방식입니다.
'Interview' 카테고리의 다른 글
| [INTERVIEW] Back-end 기술이론 정리 - DB 편 (0) | 2023.08.09 |
|---|---|
| [INTERVIEW] Back-end 기술 면접 (1) | 2023.08.08 |