홉
홉(hop)은 컴퓨터 네트워크에서 출발지와 목적지 사이에 위치한 경로의 한 부분이다. 데이터 패킷은 브리지, 라우터, 게이트웨이를 거치면서 출발지에서 목적지로 경유한다. 패킷이 다음 네트워크 장비로 이동할 때마다 홉이 하나 발생한다. 홉 카운트(hop count)는 데이터가 출발지와 목적지 사이에서 통과해야 하는 중간 장치들의 개수를 가리킨다.
저장 전달과 기타 레이턴시가 각 홉을 통하여 발생되므로 출발지와 목적지 사이에서 홉의 수가 많아지면 실시간 성능이 저하될 수 있다.
목차
개요[편집]
홉(Hop)은 컴퓨터 네트워크에서 데이터 패킷이 출발지에서 목적지로 가는 동안 중간에 거치는 네트워크 장비 하나하나의 이동 단위를 말한다. 주로 라우터(router)나 게이트웨이(gateway) 같은 3계층 장비 간 이동을 기준으로 하며, 패킷이 한 라우터를 지나 다른 라우터로 전달될 때마다 1홉(Hop) 으로 계산된다.
이 개념은 라우팅 경로 추적, 네트워크 성능 분석, 보안 설정, TTL(Time To Live) 등 다양한 네트워크 기술에서 핵심적인 역할을 한다.
- 일반 정의
- 홉(Hop): 데이터가 네트워크를 통해 전송될 때, 하나의 라우터 또는 게이트웨이를 통과하는 이동 단위.
- 예: A → Router1 → Router2 → B
- → 총 2홉
- (Router1, Router2를 각각 1홉으로 계산)
- 물리적 의미
- 홉은 물리적 거리를 의미하지 않음.
- 가까운 거리라도 중간 라우터가 많으면 홉 수가 많음.
- 논리적 의미
- 홉은 라우팅 경로 상의 논리적 단계 수를 나타내며, IP 계층에서 데이터를 전달하는 논리적 단계를 기준으로 함.
작동 원리[편집]
- 패킷 전송과 홉
- 송신 호스트에서 패킷 생성
- 패킷은 라우팅 테이블을 기준으로 다음 홉(next hop) 라우터로 전달
- 목적지에 도달할 때까지 중간 라우터들을 연속적으로 거침
- 각 라우터는 홉 카운트를 1씩 증가시킴
- TTL(Time To Live)과 홉
- IP 헤더의 TTL 필드는 홉 수를 제한하기 위해 존재함
- 각 홉(라우터)을 지날 때마다 TTL 값이 1 감소
- TTL이 0이 되면 패킷은 폐기되어 무한 루프를 방지
홉의 종류[편집]
- (1) 라우터 홉 (Router Hop)
- 서로 다른 IP 네트워크 간 패킷 전달 (예: 인터넷에서의 라우팅)
- 예: 집 네트워크 → ISP 라우터 → 백본 네트워크 → 목적지 서버
- (2) 레이어 2 홉 (Switch Hop)
- 동일한 네트워크 내에서 스위치 간 패킷 이동 (MAC 주소 기반)
- 예: 회사 LAN 내에서 스위치를 거쳐 다른 컴퓨터로 전송
- (3) 가상 홉 (Virtual Hop)
- VPN, SDN(소프트웨어 정의 네트워크) 등에서 논리적으로 구성된 경로
주요 용도[편집]
- 라우팅 경로 추적 : 트레이스라우트(traceroute) 명령어로 각 홉의 IP와 응답 시간 확인 가능
- TTL 설정 : 패킷의 생존 시간 및 홉 제한 설정
- 네트워크 성능 분석 : 홉 수가 많을수록 지연(latency)이 커질 수 있음
- 보안 정책 설정 : 특정 홉 수 이상에서 차단하거나 허용 가능
- 라우팅 알고리즘 평가 : 거리 벡터 알고리즘에서 홉 수를 기준으로 최단 경로 탐색
홉과 네트워크 성능[편집]
- (1) 홉 수 증가 시 영향
- 지연 시간(Latency) : 각 홉에서의 처리 시간 누적 → 패킷 도착 지연
- 신뢰성(Reliability) : 장애 가능성 증가 (특히 WAN에서)
- 대역폭(Bandwidth) : 병목 현상 발생 가능성 증가
- (2) 최적화 방법
- 라우팅 프로토콜 튜닝: OSPF, EIGRP 등에서 최단 경로 선택
- 컨텐츠 전송 네트워크(CDN): 홉 수 줄이기 위해 캐시 서버 분산 배치
- Anycast 라우팅: 지리적으로 가까운 서버로 연결
홉 수 계산 예시[편집]
- 예시 1
- 3개의 라우터 경유
- 호스트 A → R1 → R2 → R3 → 호스트 B
- 총 3개의 홉 (R1, R2, R3)
- 예시 2
- 로컬 네트워크
- 호스트 A → 호스트 B (같은 서브넷)
- 홉 수: 0 (라우터를 거치지 않음)
관련 프로토콜[편집]
- Traceroute
- 목적지까지 가는 경로 상의 각 라우터(홉)의 IP와 지연 시간 확인
- ICMP Echo Request 또는 UDP/TCP 사용
- TTL 값을 점진적으로 증가시키며 홉 단위 추적
- ICMP (Internet Control Message Protocol)
- TTL 초과 시 오류 메시지 반환 (Time Exceeded)
- 이를 기반으로 트레이스라우트 기능 구현
- Distance Vector Routing Protocols
- RIP(Routing Information Protocol) 등은 홉 수를 비용(metric)으로 사용
- 최대 허용 홉 수: 15 (16은 무한대로 간주)
홉의 특성[편집]
- 홉 수는 물리적 거리와 무관
- 짧은 거리라도 홉 수가 많을 수 있음
- 지리적으로 먼 경로도 홉 수는 적을 수 있음
- 홉은 지연을 의미하지 않음
- 홉 수가 많아도 라우터 성능에 따라 지연이 적을 수 있음
- 홉 수는 논리적 단계이고, 실제 지연 시간은 다른 변수(대역폭, 큐 대기 등)에 의해 결정됨
- 홉은 경로 선택의 척도가 될 수 있음
- 라우팅 프로토콜은 홉 수를 경로 선택 기준으로 삼기도 함
- 하지만 현대 라우팅은 대역폭, 혼잡도 등 다른 metric도 사용
홉 수 제한과 보안[편집]
- TTL 기반 제한
- 보안 장비에서 TTL 값이 일정 이하인 패킷을 거부 가능
- DDoS 공격 차단용
- IP 스푸핑 방지
- 외부에서 들어오는 패킷의 TTL 값을 기준으로 내부 IP 위조 여부 판단 가능
- 라우터 경유 경로 제한
- 방화벽이나 ACL에서 중간 홉 수 제한으로 특정 경로 차단
홉 수와 라우팅 알고리즘[편집]
라우팅 알고리즘 홉 사용 여부 설명 RIP (Distance Vector) 사용함 홉 수가 경로 비용으로 직접 사용됨 OSPF (Link State) 부분 사용 링크 비용(metric)에 기반, 홉 수만으로 판단 X BGP (Path Vector) 사용 안 함 자율 시스템 경로 기반 (AS-path) 사용
실제 활용 예[편집]
- Traceroute 명령 결과
traceroute www.google.com 1 192.168.1.1 (라우터) 2 10.10.10.1 3 203.0.113.254 4 ...
- 각 줄은 하나의 홉을 나타냄
- 지연 시간(ms)도 함께 확인 가능
- 네트워크 성능 개선
- 홉 수가 많은 경로 → 대역폭 낭비, 지연 증가
- CDN(Content Delivery Network)은 홉 수를 줄여 사용자와 가까운 서버로 라우팅
현대 네트워크에서의 홉[편집]
- SDN(Software Defined Network): 경로 설정이 동적으로 제어됨. 홉 수는 관리자가 직접 통제 가능
- 클라우드/하이브리드 네트워크: 홉 수를 줄이기 위한 라우팅 최적화 서비스 사용 (예: AWS Global Accelerator)
- VPN과 홉: VPN 사용 시 홉 수가 증가할 수 있음 → 성능 저하 요인 고려 필요
관련 용어[편집]
- Next Hop: 패킷이 다음으로 이동할 바로 다음 노드
- Hop Limit: IPv6에서 TTL과 동일한 개념
- Hop-by-Hop Routing: 각 노드가 독립적으로 다음 홉 결정
같이 보기[편집]