라우팅이란 무엇인가요?
라우팅은 네트워크에서 경로를 선택하는 프로세스입니다. 컴퓨터 네트워크는 노드라고 하는 여러 시스템과 이러한 노드를 연결하는 경로 또는 링크로 구성됩니다. 상호 연결된 네트워크에서 두 노드 간의 통신은 여러 경로를 통해 이루어질 수 있습니다. 라우팅은 미리 정해진 규칙을 사용하여 최상의 경로를 선택하는 프로세스입니다.
라우팅이 중요한 이유는 무엇인가요?
라우팅은 네트워크 통신의 효율성을 높입니다. 네트워크 통신 장애가 발생하면 웹 사이트 페이지가 로드될 때까지 사용자가 기다리는 시간이 길어집니다. 또한 웹 사이트 서버에서 많은 수의 사용자를 처리하지 못해 서버의 작동이 중단될 수 있습니다. 라우팅은 네트워크가 정체 없이 최대한 많은 용량을 사용할 수 있도록 데이터 트래픽을 관리함으로써, 네트워크 장애를 최소화해 줍니다.
라우터란 무엇인가요?
라우터는 컴퓨팅 디바이스와 네트워크를 다른 네트워크에 연결하는 네트워킹 디바이스입니다. 라우터는 주로 3가지 기본 기능을 수행합니다.
경로 결정
라우터는 소스에서 대상으로 이동하는 데이터의 경로를 결정합니다. 지연, 용량 및 속도와 같은 네트워크 지표를 분석하여 최상의 경로를 찾으려고 시도합니다.
데이터 전달
라우터는 선택한 경로의 다음 디바이스로 데이터를 전달하여 최종적으로 대상에 도달하도록 합니다. 디바이스와 라우터는 동일한 네트워크에 있거나 서로 다른 네트워크에 있을 수 있습니다.
로드 밸런싱
경우에 따라 라우터가 여러 경로를 사용하여 동일한 데이터 패킷의 여러 사본을 전송할 수도 있습니다. 이 방법을 통해 데이터 손실로 인한 오류를 줄이고 이중화를 구현하고 트래픽 볼륨을 관리합니다.
라우팅은 어떻게 작동하나요?
데이터는 데이터 패킷의 형태로 네트워크를 통해 이동합니다. 각 데이터 패킷에는 패킷의 의도된 대상에 대한 정보가 포함된 헤더가 있습니다. 패킷이 대상으로 이동하는 동안 여러 라우터가 패킷을 여러 번 라우팅할 수 있습니다. 라우터는 수백만 개의 패킷에 대해 초당 수백만 번 이 프로세스를 수행합니다.
데이터 패킷이 도착하면 라우터는 먼저 라우팅 테이블에서 그 주소를 찾습니다. 이는 목적지까지 가는 데 가장 적합한 버스 노선을 찾기 위해 버스 시간표를 참조하는 승객에 비유할 수 있습니다. 그런 다음 라우터는 패킷을 네트워크의 다음 지점으로 전달하거나 이동합니다.
예를 들어 사무실 네트워크의 컴퓨터에서 웹 사이트를 방문하면, 데이터 패킷이 먼저 사무실 네트워크 라우터로 이동합니다. 라우터가 헤더 패킷을 조회하고 패킷 대상을 결정합니다. 그런 다음 내부 테이블을 조회하고, 네트워크 자체 내에서 패킷을 다음 라우터로 전달하거나 프린터와 같은 다른 디바이스로 전달합니다.
라우팅 유형에는 어떤 것들이 있나요?
라우터가 라우팅 테이블을 만드는 방식에 따라 라우팅은 2가지 유형으로 구분됩니다.
정적 라우팅
정적 라우팅에서는 네트워크 관리자가 정적 테이블을 사용하여 네트워크 경로를 수동으로 구성하고 선택합니다. 정적 라우팅은 네트워크 설계나 파라미터가 일정하게 유지될 것으로 예상되는 경우에 유용합니다.
이 라우팅 기법에서는 정적 특성으로 인해 네트워크 정체와 같은 단점이 나타날 수 있습니다. 링크에서 장애가 발생할 경우에 대비해 관리자가 대체 경로를 구성할 수도 있지만, 일반적으로 정적 라우팅은 네트워크의 적응성과 유연성을 저하시켜 네트워크 성능을 제한합니다.
동적 라우팅
동적 라우팅에서 라우터는 실제 네트워크 조건에 따라 런타임에 라우팅 테이블을 만들고 업데이트합니다. 동적 라우팅 테이블을 만들고 유지 관리하고 업데이트하는 규칙 집합인 동적 라우팅 프로토콜을 사용하여 소스에서 대상까지 가장 빠른 경로를 찾으려고 시도합니다.
동적 라우팅의 가장 큰 장점은 트래픽 볼륨, 대역폭, 네트워크 장애 등 변화하는 네트워크 조건에 대응한다는 것입니다.
주요 라우팅 프로토콜은 어떤 것들이 있나요?
라우팅 프로토콜은 라우터가 패킷을 식별하고 네트워크 경로를 따라 전달하는 방법을 지정하는 규칙 세트입니다. 라우팅 프로토콜은 내부 게이트웨이 프로토콜과 외부 게이트웨이 프로토콜이라는 2가지 범주로 분류됩니다.
내부 게이트웨이 프로토콜은 단일 조직에서 관리자가 제어하는 네트워크인 자율 시스템에서 가장 효괴적으로 작동합니다. 외부 게이트웨이 프로토콜은 두 자율 시스템 간의 정보 전송을 관리하는 데 보다 적합합니다.
내부 게이트웨이 프로토콜
이 프로토콜은 자율 시스템을 평가하고 다음과 같은 다양한 지표를 기준으로 라우팅과 관련한 결정을 내립니다.
- 홉 수 또는 소스와 대상 간의 라우터 수
- 지연 또는 소스에서 대상으로 데이터를 전송하는 데 걸린 시간
- 대역폭 또는 소스와 대상 간의 링크 용량
다음은 내부 게이트웨이 프로토콜의 몇 가지 예입니다.
Routing Information Protocol
Routing Information Protocol(RIP)은 홉 수를 기준으로 네트워크 간의 최단 경로를 결정합니다. RIP는 대규모 네트워크를 구현하는 데 적합하지 않기 때문에 현재는 사용되지 않는 레거시 프로토콜입니다.
Open Shortest Path First 프로토콜
Open Shortest Path First(OSPF) 프로토콜은 자율 시스템의 다른 모든 라우터에서 정보를 수집하여 데이터 패킷의 대상까지 가장 짧고 빠른 경로를 식별합니다. 다양한 라우팅 알고리즘 또는 컴퓨터 프로세스를 사용하여 OSPF를 구현할 수 있습니다.
외부 게이트웨이 프로토콜
Border Gateway Protocol(BGP)은 유일한 외부 게이트웨이 프로토콜입니다.
Border Gateway Protocol
BGP는 인터넷을 통한 통신을 정의합니다. 인터넷은 서로 모두 연결되어 있는 대규모 자율 시스템의 모음입니다. 모든 자율 시스템에는 Internet Assigned Numbers Authority에 등록하여 할당받는 Autonomous System Number(ASN)가 있습니다.
BGP는 가장 가까운 ASN을 추적하고 대상 주소를 해당 ASN에 매핑하는 방식으로 작동합니다.
라우팅 알고리즘에는 어떤 것들이 있나요?
라우팅 알고리즘은 다양한 라우팅 프로토콜을 구현하는 소프트웨어 프로그램입니다. 각 링크에 비용 수치를 할당하는 방식으로 작동합니다. 비용 수치는 다양한 네트워크 지표를 사용하여 계산됩니다. 모든 라우터는 데이터 패킷을 최저 비용으로 차선의 링크에 전달하려고 시도합니다.
다음은 몇 가지 알고리즘의 예입니다.
거리 벡터 라우팅
거리 벡터 라우팅 알고리즘에서는 모든 라우터가 각각 찾은 최상의 경로 정보를 주기적으로 서로 업데이트해 주어야 합니다. 각 라우터는 총 비용의 현재 평가 결과에 대한 정보를 알려진 모든 대상으로 보냅니다.
결국 네트워크의 모든 라우터는 가능한 모든 대상에 대한 최상의 경로에 대한 정보를 찾게 됩니다.
링크 상태 라우팅
링크 상태 라우팅에서는 모든 라우터가 네트워크의 다른 모든 라우터를 검색합니다. 라우터는 이 정보를 사용하여 전체 네트워크의 맵을 만든 다음 데이터 패킷의 최단 경로를 계산합니다.
라우팅은 어떻게 발전해왔나요?
라우팅은 발전하는 네트워크 기술의 요구 사항에 따라 함께 발전해왔습니다. 라우팅은 더 이상 단순히 자율 시스템과 인터넷 간에 데이터 패킷을 전환하는 것만을 의미하지 않습니다.
이제 서드 파티 클라우드 제공업체가 호스팅하는 컴퓨팅 리소스와 하드웨어를 갖춘 클라우드 인프라가 등장하게 되었습니다. 이러한 클라우드 리소스는 가상으로 연결되어, 기업이 애플리케이션을 호스팅하고 실행하는 데 사용할 수 있는 리소스의 가상 네트워크를 구축합니다. 현재 많은 조직에서는 내부 하드웨어가 설치된 온프레미스 네트워크와 클라우드 네트워크로 구성된 하이브리드 네트워크를 사용합니다. 라우터는 이러한 내부 네트워크, 인터넷 및 클라우드 간에 트래픽을 라우팅해야 합니다.
클라우드 라우팅이란 무엇인가요?
클라우드 라우팅은 Border Gateway Protocol(BGP)을 사용하여 두 가상 클라우드 네트워크 간 또는 클라우드 네트워크와 온프레미스 네트워크 간의 연결을 동적으로 관리합니다. 클라우드 라우팅은 클라우드의 변화하는 네트워크 상태에 자동으로 대응합니다. 라우터의 기능을 가상화하는 소프트웨어인 클라우드 라우터는 클라우드 라우팅을 지원합니다.
DNS 라우팅이란 무엇인가요?
도메인 이름 시스템(DNS)은 사람이 읽을 수 있는 도메인 이름(예: www.amazon.com)을 시스템이 읽을 수 있는 IP 주소(예: 192.0.2.44)로 변환합니다. 이 이름 정보를 시스템 정보에 매핑하는 데이터는 DNS 서버에 별도로 저장됩니다. 웹 사이트로 데이터를 전송하기 전에, 라우터는 DNS 서버와 통신하여 데이터 패킷을 전송할 정확한 시스템 주소를 식별해야 합니다.
특히 많은 사용자가 동시에 웹 사이트를 방문하려 하는 경우, DNS 서버 통신은 병목 지점이 될 수 있습니다. DNS 라우팅은 DNS 서버와의 통신을 관리하는 다양한 라우팅 전략 및 알고리즘을 의미합니다. 지연 시간 기반 라우팅 및 지리적 위치 기반 라우팅과 같은 다양한 전략을 통해 DNS 서버 통신 로드를 관리할 수 있습니다.
AWS는 라우팅을 어떻게 지원하나요?
AWS Transit Gateway는 클라우드 라우터 역할을 하며, 중앙 허브를 통해 VPC와 온프레미스 네트워크를 연결합니다. 네트워크 확장 시 증가하는 연결 관리로 인한 복잡성이 발생하지 않습니다. 글로벌 애플리케이션을 구축하는 경우 리전 간 피어링을 사용하여 여러 AWS Transit Gateway를 연결할 수 있습니다.
Amazon Route 53는 가용성과 확장성이 뛰어난 클라우드 DNS 웹 서비스입니다. 기업과 개발자가 최종 사용자를 인터넷 애플리케이션으로 라우팅할 수 있는 신뢰성과 비용 효율성이 높은 방법을 제공합니다. Amazon Route 53 Traffic Flow를 사용하면 다양한 라우팅 유형을 통해 전역적으로 트래픽을 손쉽게 관리하면서 지연 시간이 짧고 내결함성이 있는 아키텍처를 만들 수 있습니다.
Amazon Virtual Private Cloud(VPC)는 AWS 리소스에 대한 논리적으로 격리된 가상 네트워크를 제공합니다. Amazon VPC 라우팅 테이블을 사용하여, VPC를 실행하는 리소스가 다른 VPC, 온프레미스 또는 인터넷에서 실행 중인 리소스에 액세스하거나 해당 리소스와 통신하는 방법을 정의할 수 있습니다. VPC 라우팅 테이블을 보안 그룹 및 AWS Identity and Access Management(IAM) 정책과 함께 사용하여, VPC가 환경의 다른 리소스에 연결하는 방법을 세부적으로 제어할 수 있습니다.
지금 AWS 계정을 만들어 클라우드 라우팅을 시작하세요.