Network
Network
Network Fundamentals
OSI(Open Systems Interconnection) model
- 네트워크 통신 기능을 7개 계층으로 나누는 개념적 프레임워크
- 컴퓨터 네트워킹을 위한 범용 언어 제공
TCP/IP model
- 네트워크 프로토콜, 안전한 데이터 전송
- TCP/IP 4계층 → Application, Transport , Internet, Network Interface
- TCP/IP 5계층 → Application, Transport , Network , Data Link, Physical
OSI model vs TCP/IP model
- TCP/IP가 실질적인 통신을 위해 사용되는 것과 달리, OSI는 이론을 기반으로 설계되어 실제 통신에는 사용되지 않음
| TCP/IP Model | OSI Model | 기능 | PDU | 프로토콜 |
|---|---|---|---|---|
| Application Layer | Application Layer | 사용자의 데이터와 직접 상호 작용 (인터페이스 제공) | message | HTTP, SMTP 등 |
| Application Layer | Presentation Layer | 데이터의 변환, 암호화, 압축 등 담당 | message | JPG, PAP 등 |
| Application Layer | Session Layer | 세션 형성, 유지, 종료 + 데이터 전송 동기화 담당 | message | NFS, SMB 등 |
| Transport Layer | Transport Layer | 패킷 보존 + 데이터 흐름/오류 제어 | segment | TCP, UDP 등 |
| Internet Layer(Network) | Network Layer | 서로 다른 네트워크 간 데이터를 전송 + 라우팅, 패킷 전달 및 주소 지정 | paket | IP, ICMP, ARP 등 |
| Network Interface(Data Link) | Data Link Layer | 동일한 네트워크에 있는 장치 간 데이터 전송 + 데이터의 흐름/오류 제어 | freme | Ethernet 등 |
| Network Interface(Physical) | Physical Layer | 물리적 통신 매체(케이블 등)를 통해 비트 스트림(신호) 전송 | bit | RS-232 등 |
데이터 송수신

- 송신 측에서는 응용 계층부터 물리 계층까지 데이터를 송신. 캡슐화를 통해 헤더/트레일러를 덧붙여 전송

- 수신 측에서는 물리 계층부터 응용 계층까지 데이터가 전송되어 수신. 역캡슐화를 통해 헤더를 제거하여 데이터를 수신
Network devices
- 라우터(네트워크 계층) → LAN/WAN간 IP주소를 사용하여 데이터 패킷 전달, 네트워크간 데이터 전송을 위한 최적 경로 설정.
- 스위치 → 네트워크 단위를 연결하는 통신 장비.
- L2 : MAC 주소를 기반으로 스위칭 (가장 기본적 스위치)
- L3 : IP주소 기반으로 스위칭 + 라우팅 기능
- L4 : IP주소와 Port 기반으로 스위칭, 로드 밸런싱 가능
- L7 : 보안에 더욱 유리한 로드 밸런싱 가능
- 모뎀 → ISP의 신호를 연결된 모든 장치에서 해석 가능한 디지털 신호로 변환하여 인터넷 연결 구축
라우터 vs 스위치
- 라우터는 서로 다른 네트워크 간 전달 vs 스위치는 동일한 네트워크 간 데이터 전달
라우터 vs 모뎀
- 라우터는 네트워크 형성, 해당 데이터 흐름 관리 vs 모뎀은 네트워크를 인터넷에 연결
e.g. Wi-Fi 공유기
- 모뎀 - 인터넷 연결
- 모뎀과 라우터 연결
- 라우터에서 내보낸 와이파이 무선 신호를 노트북이나 핸드폰에 연결
IP Addressing
IPv4 vs IPv6
- IP(Interent Protocol) → 장치 고유의 식별자
- IPv4 → 점으로 구분된 네 개의 숫자(32비트)로 구성
- IPv6 → 하나 또는 두개의 콜론으로 구분되는 숫자와 문자(128비트)로 구성
- IPv6는 IPv4의 고유 IP주소의 부족 문제와 개인 정보 보호 측면에서 개선된 버전
Subnetting basics
- 서브넷팅 → IP주소 낭비 방지를 위해 네트워크를 분할하여 효율적으로 사용
서브넷팅의 필요성 (IPv4 기준)
- IP주소는 네트워크 영역/호스트 영역 두 가지로 나뉨
→ 클래스에 따라 데이터가 알맞은 장치를 찾는데에 시간이 소요되기 때문에, 서브넷을 사용하여 IP주소를 장치 범위 내에서 찾도록 범위를 좁혀줌.
▼ 클래스 구분

서브넷 마스크
- IP주소에서 네트워크 주소(1)와 호스트 주소(0)를 구분하기 위해 사용됨.
→ 연속된 1과 0으로 이루어짐
→ 서브넷 마스크와 IP를 AND연산을 한 결과가, 해당 IP의 네트워크 주소. 네트워크 주소를 제외한 나머지가 호스트 주소
Address Assignment
정적(static) IP vs 동적 IP(DHCP, Dynamic Host Configuration Protocol)
- 인터넷에 연결된 대부분의 장치는 임시 IP주소가 할당됨. → 동적 IP 주소
- 사용자마다 정적 IP주소를 할당하는 것보다 비용 효과적임
Static IP를 사용하는 이유?
- 특정 IP로만 접속되는 웹 서버, 원격 데스크탑, DB 서버 운용하기 위한 용도
Network Protocols
HTTP, HTTPS, FTP, SFTP, SMTP, etc
TCP/IP의 응용 계층 프로토콜
- HTTP(Hypertext Transfer Protocol) → WWW 기반, 웹에서 데이터 통신에 사용
- HTTPS(Hypertext Transfer Protocol Secure) → HTTP 보안 강화, 데이터를 암호화해서 전달
- FTP(File Transfer Protocol) → 파일 교환에 사용
- SFTP(Secure File Transfer Protocol) → FTP 보안 강화
- SMTP(Simple Mail Transfer Protocol) → 전자우편을 송수신하는데 사용
TCP & UDP
TCP(Transmission Control Protocol)
- 데이터 손실 없이 성공적으로 수신되기 위한 프로토콜 (데이터 무결성 보장)
TCP 통신 순서
- 송신 컴퓨터가 수신 컴퓨터에게 SYN 메세지를 보내 연결을 요청
- 수신 컴퓨터가 요청에 대한 승인으로 SYN-ACK 메세지를 전달
- 송신 컴퓨터가 승인 메세지를 확인
→ 데이터 전송 시작
UDP(User Datagram Protocol)
- 보안/신뢰성 보다 전송 속도와 효율을 더 중요시 하는 프로토콜

TCP vs UDP
- 연결 지향 프로토콜 vs 비연결 지향 프로토콜
- 패킷 수신 여부 확인 vs 확인X
- 패킷에 문제가 생기면 재전송 vs 재전송X
- 1:1 통신 vs 1:1, 1:N, N:M 통신
- 데이터의 도착 순서 보장 vs 순서 바뀜
활용 분야
→ 데이터의 순서와 신뢰가 중요한 금융 거래 시스템, DB 관리 시스템에는 TCP가 적합
→ 실시간 비디오 스트리밍이나 온라인 게임처럼 지연 시간 최소화해야 하는 경우 UDP가 적합
DNS(Domain Name System)
- 웹사이트의 도메인 주소 → IP주소 변환
DNS의 다른 역할
- 별칭 도메인 → IP주소 또는 정식 도메인을 여러 별칭 도메인과 연결, 여러 도메인으로 같은 IP주소에 접속 가능
- 로드 밸런싱 → 클라우드 서비스와 분산 인터넷 서비스를 이용할 때 로드 밸런싱 역할을 함.
DNS 구조
- 클라이언트-서버 모델을 이용하는 분산 계층형 DB 시스템
Network Architectures
LAN, WAN, PAN, MAN, BAN
- WAN(Wide Area Network) → 국가, 대륙 등 넓은 영역에 걸쳐 구축하는 통신망
- MAN(Metropolitan Area Network) → 대도시 중심으로 WAN과 LAN 연결
- LAN(Local Area Network) → 근거리 통신망
- PAN(Personal Area Network) → 사람 활동 범위 통신망 (NFC, 블루투스 등)
- BAN(Body Area Network) → 사람 신체 범위 통신망 (웨어러블)
참고 자료
- https://aws.amazon.com/ko/what-is/osi-model/
- https://www.cloudflare.com/ko-kr/learning/ddos/glossary/open-systems-interconnection-model-osi/
- http://www.jidum.com/jidums/view.do?jidumId=415
- https://docs.tosspayments.com/resources/glossary/http-protocol
- https://www.checkpoint.com/kr/cyber-hub/network-security/what-is-the-osi-model-understanding-the-7-layers/osi-model-vs-tcp-ip-model/
- https://www.juniper.net/kr/ko/research-topics/what-is-a-router.html
- https://www.cloudflare.com/ko-kr/learning/network-layer/what-is-a-router/
- https://www.cloudflare.com/ko-kr/learning/dns/glossary/what-is-my-ip-address/
- https://docs.tosspayments.com/resources/glossary/dns
- https://ko.wikipedia.org/wiki/SSH_파일_전송_프로토콜
- https://www.geeksforgeeks.org/what-is-transmission-control-protocol-tcp/
- https://massive.io/ko/file-transfer/what-is-transmission-control-protocol-tcp/
- https://developer.mozilla.org/ko/docs/Glossary/UDP
- https://f-lab.kr/insight/tcp-udp-difference-and-use-cases
- https://itwiki.kr/w/네트워크
댓글남기기