728x90
반응형
1. 인터넷의 기본 개념
인터넷이란?
- 정의
- 인터넷은 "네트워크의 네트워크"로, 여러 개의 작은 네트워크(예: 가정, 기업, 모바일 네트워크)가 서로 연결되어 있는 구조
- 구성 요소
- 네트워크 엣지(Edge)
- 호스트(host, end systems): 사용자(클라이언트)와 서버가 여기에 속함
- 액세스 네트워크: 가정용 케이블, DSL, WiFi, 4G/5G 등 다양한 접속 기술을 사용
- 네트워크 코어(Core):
- 라우터(router) 및 스위치(switch): 패킷(데이터 조각)을 서로 전달하며, 여러 네트워크를 연결
- 패킷 스위칭: 데이터가 패킷 단위로 전송되어 각 경로를 통해 전달되는 방식
- 네트워크 엣지(Edge)
- 주요 포인트
- 인터넷의 분산성: 수많은 액세스 네트워크와 ISP들이 연결되어 있으며, 중앙집중식 구조가 아님
- 경제적 및 정책적 요인: 네트워크 연결은 단순 기술뿐만 아니라 경제적/정책적 요인에 의해 설계
2. 네트워크 프로토콜이란?
- 정의 및 역할
- 프로토콜: 네트워크 상에서 메시지를 전송하는 규칙을 정함 (예: 메시지의 포맷, 전송 순서, 수신 시 동작)
- 사람 간의 대화처럼, “시간 좀 알려줘?”와 같이 정해진 규칙에 따라 정보를 주고받음
- 예시
- HTTP, TCP/IP, Ethernet, WiFi 등이 있으며 각각 웹, 데이터 신뢰 전송, 물리적 연결 등 다양한 역할을 담당
- 중요 포인트:
- 일관성: 모든 통신이 프로토콜에 의존하여 일관된 방식으로 정보가 전송
- 자동화: 컴퓨터 간 통신에서는 인간의 직접 개입 없이 프로토콜이 모든 작업을 자동으로 처리
3. 네트워크 구성 요소
호스트 및 액세스 네트워크
- 호스트
- 응용 프로그램을 실행하는 단말(컴퓨터, 스마트폰 등)
- = clients and servers
- 액세스 네트워크
- 클라이언트가 가장 먼저 연결하는 대상(= Access Point)
- 케이블, DSL, 무선 등 다양한 연결 방식을 통해 호스트를 ISP에 연결
액세스 네트워크 연결 방식
Access Network는 여러명이 나눠씀
- cable-based access
FDM
(frequency division multiplexing): 하나의 공유 케이블에서 진동수(주파수) 기준으로 채널 분리- ex) 주파수 채널에 따라 다른 라디오 방송
HFC
(hybrid fiber coas): 다운스트림을 업스트림보다 더 빠르게 비대칭적으로 설계
DSL
(digital subscriber line): 전화선 사용
- Wireless access networks
- 공유된 무선 access network는 access point(AP)를 통해 라우터를 end system과 연결
- wireless local area networks(WLANs) → WIFI
- wide-area cellular access networks → 4G/5G cellular networks
호스트
- 패킷(
Packet
): 메시지를 각 L 비트의 청크로 자른 단위 - 호스트는 패킷을 특정 전송률(transmission rate, R)로 access network에 전송함
- link transmission rate = link capacity = link bandwith (연결 대역폭)
패킷 지연율 (= L비트 패킷을 전송하는데 걸리는 시간) = L (bits) / R (bits / sec)
링크: physical media
- guided media: 신호가 solid media를 통해 전파됨
- Twisted pair(TP): 2개의 격리된 구리선
- 카테고리 5, 카테고리 6 등 카테고리에 따라 성능 다름
- Coaxial cable
- Fiber optic cable(광 케이블) → high speed & lower error rate, 근데 비쌈
- Twisted pair(TP): 2개의 격리된 구리선
- unguided media: 신호가 공기 중으로 전파됨
- wireless radio
4. 네트워크 코어 – 라우팅과 패킷 스위칭, 인터넷 구조
- 상호 연결된 수많은 라우터들
- = mesh of interconnected routers
- ⇒ 사실상 ‘인터넷’을 의미
네트워크 코어의 2가지 핵심 기능
- 포워딩(Forwarding)
- = 스위칭(switching)
- forwarding table을 사용
- 하나의 라우터 내부에서 input link로 들어온 패킷을 ‘적절한 output link’로 이동시키는 작업
- = local action
- 라우팅(Routing)
- 라우터는 패킷의 출발지에서 목적지까지의 최적 경로를 결정
- = global action
- 라우팅 알고리즘 사용
패킷 스위칭
- Store-and-Forward: 패킷이 쪼개져서 여러 번 들어오니까 패킷 전송 지연을 고려하여 최적화하기 위해, 다 들어올 때까지 기다렸다가(store, 유사 buffer) 이후 forward하는 방식
- L 비트 패킷, 전송률 R일 때 ⇒ 패킷 전송 지연
L/R
발생 - 장점
- 효율적 자원 사용: 트래픽이 갑자기 몰리지 않는 한, 여러 사용자들이 같은 링크를 통계적 다중화(statistical multiplexing) 방식으로 공유할 수 있습니다.
- 버스티(bursty)한 트래픽에 유리: 사용자들이 필요할 때만 데이터를 보내므로, 데이터 전송이 불규칙해도 네트워크 리소스를 효율적으로 사용할 수 있습니다.
- 단점: 큐잉(Queueing)
- 전송을 기다리는 패킷들이 큐(버퍼)에 저장(store)
- ⇒ 나가는 R(transmission rate)보다 들어오는 R(arrival rate)이 더 큰 경우, 큐에서 대기 발생(bottleneck)
- 과부하 시 손실: 버퍼가 가득 차면 패킷 손실이 발생 가능(= 혼잡 상황)
- ⇒ 경쟁 상황이 발생하게 된다는 패킷 스위칭 방식의 문제
- 프로토콜 보완
- 이러한 지연 및 손실 문제를 해결하기 위해 TCP와 같은 상위 계층의 프로토콜은 신뢰성 있는 전송을 위해 재전송, 흐름 제어, 혼잡 제어 등의 메커니즘을 도입
- L 비트 패킷, 전송률 R일 때 ⇒ 패킷 전송 지연
- 대안 – 회선 교환(Circuit Switching)
- 데이터 전송 전에 엔드-투-엔드(end-to-end) 회선을 "예약"하는 방식
- 한 번 회선이 설정되면, 해당 회선은 두 지점 사이에서 전용으로 사용
- 주로 2가지 방식으로 분할해서 사용
FDM
(Frequency Division Multiplexing)- 하나의 물리적 매체(예: 동축케이블, 광섬유)를 여러 개의 서로 다른 주파수 대역으로 나누어 동시에 여러 신호나 채널을 전송
- 하나의 물리적 매체(예: 동축케이블, 광섬유)를 여러 개의 서로 다른 주파수 대역으로 나누어 동시에 여러 신호나 채널을 전송
- 회선 교환 방식에서는 통화나 데이터 전송 전에 각 사용자에게 특정 주파수 대역이 예약되므로, 고정된 대역폭을 보장
TDM
(Time Division Multiplexing)- 하나의 물리적 매체를 시간 슬롯으로 나누어 여러 사용자 또는 통화가 일정한 주기마다 번갈아 사용
- 각 사용자(또는 통화)는 자신의 전용 슬롯 동안에만 데이터를 전송할 수 있으며, 슬롯 내에서는 최대 전송 속도를 보장
- ⇒ 여러 통신이 동시에 같은 매체를 공유하되 충분한 대역폭 보장과 동시성이 제한되는 방식
- 장점: 예약된 시간 동안은 일정한 성능이 보장되지만
- 단점: 사용하지 않을 때는 낭비
- 데이터 전송 전에 엔드-투-엔드(end-to-end) 회선을 "예약"하는 방식
- 중요 포인트
- 패킷 스위칭은 효율적이며 “버스티”한(간헐적) 데이터 전송에 유리하지만, 과도한 혼잡 시 지연과 손실이 발생할 수 있다
인터넷 구조
- 호스트들은 액세스 ISP들을 통해 인터넷에 연결됨
- 하나의 중앙 집중형 네트워크가 아니라, 수많은 소규모 네트워크(예: 가정, 기업, 모바일 네트워크)가 계층적, 분산적으로 연결
- 인터넷 구조의 주요 구성 요소 및 계층
- 네트워크 엣지(Edge)
- 호스트: 개인 컴퓨터, 스마트폰, 서버 등 데이터와 응용 프로그램을 실행하는 단말
- 액세스 네트워크: 호스트가 인터넷에 접속할 수 있도록 연결해 주는 네트워크
- 예시: 케이블 모뎀, DSL, WiFi, 4G/5G 등.
- 네트워크 코어(Core)
- 라우터 및 스위치: 패킷이 네트워크 내에서 라우팅되고 전송될 수 있도록 연결해 주는 장비
- 패킷 스위칭 네트워크: 다수의 패킷이 다양한 경로를 통해 최종 목적지까지 전달되는 방식을 사용
- ISP (Internet Service Provider)
- 액세스 ISP와 글로벌 ISP: 개인이나 소규모 네트워크를 상위 네트워크와 연결해 주는 역할을 하며, 인터넷 서비스의 경쟁 및 상호 연결 구조가 존재
- 인터넷 익스체인지 포인트(IXP)
- 다수의 ISP 간 상호 연결: 여러 ISP가 하나의 물리적 장소에서 서로 연결되어 트래픽을 교환하는 지점
- IXP를 통하지 않고 피어링 링크(peering link)를 통해 연결될 수도 있음
- 컨텐츠 제공자 네트워크
- 서비스 최적화: 대형 컨텐츠 제공업체(예: 구글, 페이스북)는 자체 네트워크를 운영하여 사용자에게 더 빠르고 안정적인 서비스를 제공
- 네트워크 엣지(Edge)
5. 데이터 전송 성능: 지연, 손실, 처리량
전송 지연과 관련 요소
d_nodal = d_proc + d_queue + d_trans + d_prop
- 처리 및 큐잉 지연
- 처리 지연(
d_proc
): 패킷의 오류 검사와 라우터 처리 시간(보통 짧음) - 큐잉 지연(
d_queue
): 네트워크 혼잡 시 패킷이 대기하는 시간
- 처리 지연(
- 전송 지연(
d_trans
)d_trans = L / R
- 예시: 10 Kbit 패킷이 100 Mbps 링크에서 전송되는 데 걸리는 시간.
- 전파 지연(
d_prop
)- 물리적 거리에 의해 결정되며, 신호가 매체를 따라 이동하는 데 걸리는 시간
d_prop = d / s
d
: 물리적 거리s
: 전파 속도
- 패킷 큐잉 지연
a: 평균 패킷 arrival rate
L * a
: 들어오는 양R
: 나가는 양- ⇒
La/R
이 1에 가까울 수록 혼잡
Traceroute
를 통한 경로 및 지연 측정- Traceroute 프로그램은 패킷에 일정한 TTL(Time-To-Live) 값을 설정해 여러 중간 라우터를 거치는 경로를 추적
- 각 라우터에 도달할 때마다 TTL 값이 1씩 감소하다가 0이 되면, 해당 라우터가 ICMP "Time Exceeded" 메시지를 송신
- 송신 측에서는 이 반환된 메시지의 도착 시간을 통해 해당 홉(중간 라우터)까지의 왕복 지연시간(
RTT
, Round Trip Time)을 측정 - ⇒ 실제 지연 및 경로 정보(Real Internet delays and routes)를 통해, 네트워크의 혼잡 정도, 라우팅 경로의 효율성, 그리고 특정 구간의 물리적 특성 등을 이해 가능
처리량(Throughput)
- 단위 시간당 목적지에 도달하는 데이터의 양(보통 bps, 즉 비트/초 단위)
- 즉각 vs. 평균 처리량:
- 즉각 처리량(instantaneous throughput): 특정 순간에 측정되는 처리 속도
- 평균 처리량(average throughput): 일정 기간 동안 측정된 데이터를 시간으로 나눈 값으로, 전체적인 네트워크 성능을 나타냄
- Throughput에 영향을 미치는 요소
- 각 링크는 고유의 전송 속도(R)를 가지며, 이 속도는 물리적 매체의 특성(예: 케이블, 무선 등)에 따라 결정
- 네트워크 경로상에서 가장 낮은 전송 속도를 가진 링크를 병목 링크(bottleneck link)라고 하며, 전체 경로의 처리량은 이 링크에 의해 제한됨
- Throughput 측정과 예시
- 단일 연결 예시
- 전송 경로에 병목 링크가 존재한다면, 데이터를 완전히 수신하는 데 걸리는 시간은 병목 링크의 전송 속도에 의해 결정
- ex) 서버에서 파일을 전송하는 데 사용되는 링크가 100 Mbps이고, 이 링크가 경로상의 병목이면 전체 처리량은 약 100 Mbps
- 여러 연결 및 공유 환경
- 네트워크 상에 여러 연결이 동시에 존재하면, 각 연결은 공유된 자원(예: 백본 링크)을 경쟁하게 되어, 각 연결의 처리량은
min(R_C, R_S, R/연결수)
로 결정되는 경우가 많음R/연결수
: 코어망(backbone) 링크에서의 처리량
- 보통 코어망에서는 보틀넥이 발생하지 않고
R_C
나R_S
에 의해 발생하는 경우가 많음
- 네트워크 상에 여러 연결이 동시에 존재하면, 각 연결은 공유된 자원(예: 백본 링크)을 경쟁하게 되어, 각 연결의 처리량은
- 단일 연결 예시
6. 네트워크 보안
- 문제점:
- 원래 디자인: 인터넷은 처음부터 보안을 크게 고려하지 않았음
- 보안 위협
- 패킷 스니핑: 패킷을 몰래 읽어 민감 정보를 탈취
- IP 스푸핑: 위조된 IP 주소를 사용해 공격(패킷의 목적지에 가짜 주소 주입)
- 서비스 거부(DoS) 공격: 정상 사용자의 접근을 막기 위해 대량의 트래픽을 전송
- 대응 방법:
- 인증, 암호화, 무결성 검사, 접근 제어, 방화벽 등 다양한 보안 기법이 적용
7. 계층 구조와 캡슐화
계층화의 목적 및 장점
- 목적
- 복잡한 시스템의 구조화: 각 계층이 독자적인 기능을 담당하여 전체 시스템의 이해와 유지보수를 용이하게 만듦
- 계층 예시 (인터넷 프로토콜 스택)
- 응용 계층(
application
)- 네트워크 애플리케이션 지원
- HTTP, SMTP, DNS 등
- 전송 계층(
transport
)- 프로그램과 프로그램 간의 연결 지원
- TCP, UDP (프로세스 간 신뢰성 있는 데이터 전송).
- 네트워크 계층(
network
)- 머신과 머신 사이의 datagram 라우팅을 지원(= 패킷의 목적지까지의 경로 결정)
- IP, 라우팅 프로토콜
- 링크 계층(
link
)- 인접 네트워크 간 데이터 전송 지원
- Ethernet, WiFi 등
- 물리 계층(
physical
)- 실제 비트가 전송되는 물리적 매체
- 응용 계층(
캡슐화(Encapsulation)
- 각 계층이 자신의 헤더 정보를 덧씌워 데이터를 감싸고, 하위 계층으로 전달
- 각 계층의 독립성(모듈성)이 보장되어, 아래 계층의 변화가 위 계층에 미치는 영향을 최소화
- 종류
- 응용 계층(application layer) - 메시지(message)
- 전송 계층(transport layer) - 세그먼트(segment)
- 네트워크 계층(network layer) - 패킷(Packet, Datagram)
- 링크 계층(link layer) - 프레임(Frame)
- 물리 계층(physical layer) - X
728x90
반응형
'Network' 카테고리의 다른 글
[컴퓨터 네트워크 수업] Chapter 3. Transport Layer 요약 (0) | 2025.04.20 |
---|---|
[컴퓨터 네트워크 수업] Chapter 2. Application Layer 요약 (0) | 2025.04.20 |
[Network] 무선 네트워크 (Wi-Fi) (1) | 2024.11.29 |
[Network] SSL/TLS, 그리고 HTTPS (3) | 2024.11.28 |
[Network] PN과 VPN (1) | 2024.11.27 |