연결 가능성 측정

이 페이지에서는 연결 테스트에서 연결 가능성을 측정하는 방법을 설명합니다. 또한 구성 분석과 실시간 데이터 영역 분석의 작동 방식을 설명합니다.

연결 가능성 정의

방화벽 및 경로와 같은 네트워크 구성에 따라 서로 간의 트래픽 전송이 허용되는 경우 다른 엔드포인트에서 리소스에 연결될 수 있습니다. 예를 들어 네트워크 구성에 따라 VM1이 VM2로 패킷을 전송할 수 있으면 VM2가 VM1에서 연결될 수 있다라고 말합니다.

연결 테스트에서 연결 가능성을 측정하는 방법은 다음과 같습니다.

  • 연결 테스트는 특정 소스에서 특정 대상으로 연결할 수 있는지를 측정합니다. VM1이 VM2에 연결할 수 있다고 해서 VM3도 VM2에 연결할 수 있다고는 말할 수 없습니다.
  • 연결 테스트는 단방향성 연결 가능성을 측정합니다. VM1이 VM2에 연결할 수 있다고 해서 VM2도 VM1에 연결할 수 있지는 않습니다. 방화벽 규칙이 한 방향의 트래픽을 허용하고 다른 방향은 허용하지 않을 수 있습니다.
  • 연결 테스트는 특정 프로토콜 및 대상 포트에 대한 연결 가능성을 측정합니다. VM1이 tcp:443에서 VM2에 연결할 수 있다고 해서 tcp:80에서도 연결이 가능한 것은 아닙니다.
  • 연결 테스트는 소스에서 대상으로의 패킷 전달에 영향을 줄 수 있는 Google Cloud VPC 네트워크 구성만 테스트합니다. 대상에서 실행되는 서버가 적합한지, 운영체제 방화벽 규칙이 트래픽을 차단하는지, 바이러스 페이로드가 포함된 패킷을 보안 소프트웨어가 차단하는지 등은 확인되지 않습니다.

연결 가능성이라는 개념은 그래프 이론에서 시작되었습니다. 개념적으로 네트워크의 전체 연결 가능성 그래프에는 노드로서의 모든 엔드포인트 및 소스 노드에서 대상 노드로의 연결 가능성을 나타내는 방향성 에지가 포함됩니다.

연결 가능성 분석은 네트워크 연결 가능성을 결정하기 위해 수행할 수 있는 분석 본문을 설명하는 보다 일반적인 용어입니다. 연결 가능성 분석의 사용 사례 중 하나가 연결 테스트입니다. 이 경우 연결은 네트워크 연결 상태를 나타냅니다.

네트워크 전달 경로의 모든 단계에서 연결 가능성 분석은 기본 네트워크 구성에 대한 결과를 테스트하고 제공합니다. 예를 들어 연결 테스트는 Google Cloud 방화벽 규칙과 시뮬레이션된 테스트 패킷에 적용되는 경로를 분석합니다.

연결 테스트 작동 방식

연결 테스트에는 구성 분석과 실시간 데이터 영역 분석이라는 두 가지 주요 구성요소가 있습니다. 이 섹션에서는 이 두 가지 유형의 분석 작동 방식에 대해 설명합니다.

구성 분석 작동 방식

이 섹션에서는 연결 테스트 및 구성요소의 작동 방식을 설명합니다.

연결 테스트에서는 이상적인 구성 모델과 비교하여 테스트 경로의 Google Cloud 리소스를 평가하는 연결 가능성 분석을 수행합니다. 패킷을 보내 데이터 영역 상태를 확인하고 지원되는 구성에 대한 기준 정보를 제공하는 실시간 데이터 영역 분석 기능으로 강화됩니다. 동적 확인 작동 방식에 대한 자세한 내용은 실시간 데이터 영역 분석 작동 방식을 참조하세요.

네트워크 관리자는 분석 결과에 영향을 줄 수 있는 여러 가지 구성을 제어할 수 있지만 일부 예외가 적용됩니다. 예를 들어 Cloud SQL 인스턴스와 같은 Google 관리형 서비스를 호스팅하는 VPC 네트워크는 제어할 수 없습니다. 또한 권한 제한으로 인해 네트워크에 영향을 주는 계층식 방화벽 정책 규칙을 제어할 권한이 없을 수 있습니다.

연결 테스트를 실행할 때 특정 매개변수 집합을 입력하면 네트워크 trace 또는 쿼리 형식으로 형식이 지정된 결과가 수신됩니다. 테스트 네트워크에 여러 가능한 경로가 있는 경우 연결 테스트는 trace를 두 개 이상 생성합니다. 예를 들어 대상 엔드포인트가 백엔드가 여러 개 있는 Google Cloud 부하 분산기인 경우입니다.

  • 일치는 연결 테스트에서 시뮬레이션된 패킷이 테스트 경로까지 계속 이동할 수 있도록 허용하는 Google Cloud 구성을 찾았음을 의미합니다.
  • 일치하는 구성 없음은 연결 테스트에서 일치하는 구성을 찾을 수 없음을 의미합니다. 따라서 구성이 존재하지 않습니다.
  • 거부된 일치는 연결 테스트에서 시뮬레이션된 테스트 패킷을 삭제해야 하는 Google Cloud 구성을 찾았음을 의미합니다.

연결 테스트 구성요소

연결 테스트는 구성 분석에 필요한 다른 모든 테스트 하위 구성요소가 포함된 최상위 구성요소입니다. 이러한 구성요소는 다음과 같습니다.

  • 소스 및 대상 엔드포인트
  • 구성 분석에서 결정하는 전반적인 연결 가능성 결과를 포함하여 테스트 및 trace의 연결 가능성 세부정보
  • 각각 1개 이상의 단계를 포함하는 1개 이상의 trace
  • 각 단계의 상태

각 테스트의 이름은 고유해야 하고 각 단계에는 상태 및 관련된 Info 메타데이터가 있습니다. 예를 들어 단계가 경로를 확인하면 RouteInfo 메타데이터가 해당 단계에 포함됩니다.

다음 다이어그램은 두 Compute Engine VM 인스턴스 간의 테스트를 보여줍니다. 테스트 구성요소에 대한 설명은 다음 섹션을 참조하세요.

VM 간 trace의 상태 머신
VM 간 trace의 상태 머신

소스 및 대상 엔드포인트

연결 테스트 구성 분석은 소스 포트가 없는 5튜플 패킷 헤더를 지원합니다. 이는 소스 포트가 Google Cloud 네트워크 구성의 리소스 검증에 사용되지 않기 때문입니다. 따라서 테스트를 실행할 때 이를 제공할 필요가 없습니다.

패킷 헤더에는 다음 구성요소가 포함됩니다.

  • 네트워크 프로토콜
  • 다음 중 하나로 구성된 소스 엔드포인트:
    • VM 인스턴스 이름
    • 소스 IP 주소
    • 소스 App Engine 서비스
    • Cloud Run 함수(1세대) 환경
    • Cloud Run 서비스
    • Cloud SQL 인스턴스 이름
    • GKE 제어 영역의 클러스터 이름
  • 다음 중 하나와 포트 번호로 구성된 대상 엔드포인트:
    • VM 인스턴스 이름
    • 대상 IP 주소
    • Cloud SQL 인스턴스 이름
    • GKE 제어 영역의 클러스터 이름
    • Private Service Connect 엔드포인트

네트워크 위치를 고유하게 식별하기 위해 Google Cloud 또는 Google Cloud 이외의 네트워크 유형, 또는 네트워크 유형과 IP 주소 또는 VM 인스턴스 이름의 조합을 지정할 수도 있습니다.

VM, IP 주소, Google 관리형 서비스에는 다음과 같은 네트워킹 프로토콜이 지원됩니다.

  • TCP
  • UDP
  • ICMP
  • ESP
  • AH
  • SCTP
  • IPIP

서버리스 VPC 액세스 커넥터는 다음과 같은 네트워킹 프로토콜을 지원합니다.

  • TCP
  • UDP

TCP 또는 UDP 프로토콜의 대상 포트가 지원됩니다. 포트를 지정하지 않으면 기본 설정은 포트 80입니다.

trace, 단계, 상태

구성 분석에는 trace가 하나 이상 포함됩니다. 각 trace는 테스트에서 하나의 고유한 시뮬레이션된 패킷 전달 경로를 나타냅니다.

  • 각 trace에는 여러 단계가 순서대로 포함되어 있습니다.
  • 각 단계에는 연결 테스트에서 해당 단계를 확인하는 Google Cloud 구성과 관련된 상태가 포함됩니다.
  • 상태는 최종이 아닌 상태와 최종 상태로 분류됩니다.
최종이 아닌 상태

최종이 아닌 상태는 VM 인스턴스, 엔드포인트, 방화벽 규칙, 경로, Google Cloud 부하 분산기와 같은 테스트 경로의 각 Google Cloud 리소스에 대한 구성 확인을 나타냅니다.

다음과 같은 4가지의 최종이 아닌 상태가 있습니다.

  • 초기
  • 구성 확인
  • 전달
  • 전환

자세한 내용은 구성 분석 상태를 참조하세요.

최종 상태

각 trace는 trace의 마지막 단계인 최종 상태로 끝나야 합니다.

다음과 같은 4가지의 최종 상태가 있습니다.

  • Drop
  • Abort
  • Forward
  • Deliver

각 상태에는 관련된 이유가 있습니다. 자세한 내용은 각 최종 상태의 세부정보를 참조하세요.

전체적인 연결 가능성 결과

또한 구성 분석은 Reachable, Unreachable, Ambiguous 또는 Undetermined 값 중 하나를 취할 수 있는 전체 연결 가능성 결과를 제공합니다.

전체 연결 가능성 결과를 아는 것이 모니터링 또는 자동화 설정에 도움이 될 수 있습니다.

자세한 내용은 전체 연결 가능성 결과를 참조하세요.

스푸핑 검사

연결 테스트는 VM 인스턴스를 오가는 시뮬레이션된 패킷이 이 인스턴스가 소유하지 않은 IP 주소를 사용하는 경우 스푸핑 검사를 수행합니다. VM이 소유한 IP 주소에는 모든 VM 내부 IP 주소와 보조 IP 주소가 포함됩니다.

주소가 외부 주소라고도 하는 외부 트래픽에서 시작하는 주소이면 IP 주소에서 스푸핑 검사가 실패합니다.

메타데이터

각 상태에는 Info 필드 형식으로 연결된 메타데이터가 있을 수 있습니다. 예를 들어 InstanceInfo에는 이름 및 IP 주소를 포함하여 VM 인스턴스에 대한 세부정보가 포함됩니다.

구성 분석은 테스트 자체의 메타데이터와 테스트 각 단계의 메타데이터를 제공합니다.

실시간 데이터 영역 분석 작동 방식

실시간 데이터 영역 분석에 사용되는 프로브 메커니즘은 게스트 OS를 포함하지 않으며 사용자에게 완전 투명하게 처리됩니다. 프로브는 소스 엔드포인트를 대신하여 네트워크에 삽입되고 대상 엔드포인트로 전송되기 직전에 삭제됩니다. 프로브는 일반 네트워크 결제, 원격 분석 측정항목, 흐름 로그에서 제외됩니다.

다음 단계