클라우드 플랫폼에서 네트워크 가격 책정은 정확히 어떻게 이루어지나요? 그리고 전용 가격 책정 공격을 어떻게 방지해야 합니까?

클라우드 플랫폼에서 네트워크 가격 책정은 정확히 어떻게 이루어지나요? 그리고 전용 가격 책정 공격을 어떻게 방지해야 합니까?

저는 클라우드 플랫폼 인프라를 처음 접했습니다. 논의를 단순화하기 위해 제가 논의하고 있는 플랫폼은 AWS와 Google Cloud뿐입니다.

이제 온라인 게임용 공개 API를 통해 주로 HTTP 응답을 처리하는 HTTP 서버가 있다고 가정해 보겠습니다. 평균 응답 크기가 10KB이고 하루에 약 백만 개의 응답이 전송된다고 가정해 보겠습니다.

제가 이해한 바에 따르면 월별 가격은 GB 단위로 전송된 데이터 양에 따라 달라집니다. 이제 내 문제는 누군가 내 서버에서 계속 응답을 받는 스크립트를 작성하면 가격이 하늘 높이 올라갈 것이라는 것입니다.

좋은 서버라면 이 문제를 피할 수 있다고 확신하지만 정확히 어떻게 이 문제를 피할 수 있는지는 잘 모르겠습니다. 내 관찰에 따르면, 실제 대규모 온라인 게임 API 서버 중 상당수는 응답 크기가 몇 KB에 불과할 때 최적화하지 않습니다. 어떤 종류의 "가 있어야합니다.고정 월별 결제 또는 초당 전송되는 데이터 양에 따른 결제" 전송된 데이터의 양에 의존하지 않는 일이 발생합니다.

그러나 플랫폼 웹사이트에서 그러한 옵션에 대한 참조를 찾을 수 없었습니다.

어떤 도움이라도 주시면 감사하겠습니다.

답변1

클라우드 서비스는 이를 사용하기 위해 특별히 구축된 프로젝트에 놀라운 이점을 제공합니다. 애플리케이션/웹 호스팅에 관해 이야기하는 경우 클라우드 가격 모델은 해당 애플리케이션/웹 사이트를 사용하는 사용자로부터 주요 수입을 얻는 기업에 적합합니다.

그것이 귀하의 주요 수입원이 아닌 이상(이 경우 원시 웹 트래픽과 이익 사이를 쉽게 전환해야 함) 클라우드 호스팅은 귀하에게 전혀 적합하지 않을 수 있습니다.

애플리케이션이 클라우드 인프라(예: 해당 게임 서버)용으로 구축되지 않은 경우 데브옵스 작업에 어느 정도 시간을 소비하지 않는 한 단일 인스턴스 VPS/전용 호스팅에 비해 어떤 이점도 얻을 수 없다는 점을 명심하세요. 설명하신 대역폭에 대한 공격을 효과적으로 방지하려면 동일한 데브옵스 작업이 필요합니다.

이러한 종류의 공격에는 이미 이름이 있으므로 '를 검색하여 실행 가능한 조언을 찾을 수 있습니다.지갑 거부"

답변2

두 클라우드 공급업체 모두 고정 가격으로 XX 대역폭을 제공하지 않습니다. 가격은 소비량을 기준으로 책정됩니다.

귀하는 리소스에 대한 클라이언트 액세스를 제어할 책임이 있습니다.

이는 인증, 제한 또는 기타 기술을 배포하지만 방법과 제품을 선택하는 것을 의미합니다.

클라우드 서비스는 집을 짓는 것과 매우 유사합니다. Home Depot에서는 못과 목재를 무제한으로 제공하지 않습니다. 집을 짓는 데 필요한 것을 구입합니다. 그런 다음 집을 난방하기 위해 연료를 구입합니다.

저는 처음부터 클라우드에서 작업해 왔습니다. 그 전에는 개인 데이터 센터가 있었습니다. 귀하의 우려는 가능하지만 현실 세계에서는 우리 대부분이 클라우드에 배포하는 것을 막을 만큼 충분히 발생하지 않습니다. 귀하의 대역폭을 소비하려면 사용 가능한 네트워크 대역폭을 소비해야 합니다. 해커가 당신을 쓰러뜨리고 싶다면 훨씬 더 저렴하고 그들이 누구/어디에 있는지 추적하기 어려운 더 고통스러운 방법을 배포할 수 있습니다.

답변3

서버 측에서 이를 방지하는 방법은 다음과 같습니다.

  • 요청에 대한 인증이 필요합니다. IOW, 추적할 수 있게 만들어줘WHO그러한 공격을 하고 있으며 그러한 공격을 금지 가능한 범죄로 만듭니다. 그런 다음 차단된 후 새 자격 증명을 얻는 것이 쉽지 않도록 계정 생성을 적절하게 잠급니다.
  • 속도 제한을 구현합니다. 일반적으로 이는 여러 단계로 수행되며 인증된 계정(모든 사용자에게 속도 제한이 있음), API 엔드포인트(자주 호출되지 않는 계산 비용이 많이 드는 엔드포인트는 DoS 공격에 쉽게 남용될 수 없음)별로 속도를 제한하는 경우가 많습니다. ), IP별로 전체적일 수도 있습니다. 다른 이유로 이 작업을 수행해야 합니다(특히 스마트 DoS 공격으로부터 보호하고 게임 로직에 대한 타이밍 기반 공격 가능성).
  • 프로토콜에서 좋은 압축을 활용하십시오. 명시된 응답 크기에 대해 Brotli는 살펴볼 가치가 있을 것입니다(또는 빠른 속도 또는 LZ4일 수도 있음). 이는 성능 요구 사항을 충족할 만큼 충분히 빠르지만 여전히 응답 크기에서 몇 kB를 줄여야 하며 수백만을 처리하는 시점에서는 월별 요청 건수로, 이는 적지 않은 양의 데이터가 저장되는 것입니다.

다른 곳에서 이를 완화하는 한, 그렇게 하기가 쉽지 않습니다. 귀하가 말하는 것과 같은 전체 클라우드 제공업체는 개발자가 큰 비용을 들이지 않고 쉽게 실험할 수 있도록 최소한의 '무료 계층'을 제공하는 경우가 많습니다. 예를 들어 AWS의 경우 월 5GB의 아웃바운드(인바운드 데이터에 대한 비용은 전혀 청구되지 않음)라고 생각합니다. 대부분의 사용자가정확한'청크'로 구매하는 것과 반대로 사용량이 비례 배분됩니다.

그래도 정말로 큰 덩어리를 원한다면 AWS Lightsail을 살펴보십시오. 여기에서 고정된 수의 CPU, 고정된 양의 RAM 및 통합 스토리지, 지정된 네트워크 사용량 한도가 포함된 가상 노드의 패키지 거래를 구매합니다. 청구 주기에서 해당 한도 미만의 네트워크 사용량은 비용이 들지 않지만, 그 이상은 전체 클라우드 설정과 마찬가지로 비례 배분됩니다. GCP에 이에 상응하는 서비스가 있는지는 모르겠지만 대부분의 VPS 제공업체(예: Vultr, Linode 또는 Digital Ocean)는 기본 서비스에 대해 동일한 방식으로 작동하므로 이 경로로 가면 실제로 해당 서비스를 찾아보는 것이 좋습니다. 이들의 네트워크 한도는 일반적으로 수 테라바이트 범위에 있으며, 사용량이 더 높은 방향만 회계를 위해 추적되는 것이 일반적입니다.

관련 정보