W tej serii artykułów chcemy omówić kwestie, które pojawiają się u ludzi podczas pracy z dostawcami hostingu i serwerami dedykowanymi w szczególności. Większość dyskusji prowadziliśmy na anglojęzycznych forach, starając się przede wszystkim pomagać użytkownikom radą, a nie autopromocją, udzielając maksymalnie szczegółowych i obiektywnych odpowiedzi, ponieważ nasze doświadczenie w tej dziedzinie trwa już ponad 14 lat, setki udanych realizacji i tysiące zadowolonych klientów. Niemniej jednak nasze odpowiedzi nie powinny być traktowane jako jedyne słuszne odpowiedzi pierwszej instancji, mogą zawierać nieścisłości i nawet błędy, nikt nie jest idealny. Będziemy wdzięczni, jeśli uzupełnicie lub poprawicie je w komentarzach.

Dlaczego koszt serwera z limitem ruchu 100 TB i kanałem 1 Gb/s jest znacznie mniejszy niż koszt serwera z kanałem 1 Gb/s bez limitu ruchu? Przecież wynajmując 2-3 serwery z kanałem 1 Gb/s i limitem 100 TB, można zużyć dokładnie tyle, ile zużyłby serwer z 1 Gbps Unmetered, a nawet więcej w szczycie, przy tym dostawca oferuje w zasadzie więcej sprzętu, więcej połączeń i niższą cenę?
Chodzi o to, że dostawcy, oferując serwery z dość dużym limitem ruchu lub nawet "bez limitu" za niewielkie pieniądze, biorą pod uwagę średnie profile zużycia swoich klientów. Okazało się, że większość klientów, którzy kupują takie kanały, nie wykorzystuje w pełni oferowanej im łączności. Dzięki temu możliwe jest stworzenie takiej oferty.
100 TB transferu to dość duży limit. To więcej niż 100 Mbps Unmetered. Posiadając łącze 100 Mbit/s, bez ograniczeń można przesłać maksymalnie 100 (prędkość w megabitach) * 86400 (liczba sekund w ciągu doby) * 30 (dni) / 8 (bitów w bajcie) / 1000 (megabajtów w gigabajcie, przy założeniu 1000, a nie 1024, 1024 to bit w kibibicie) = 32 400 GB miesięcznie w każdym kierunku przy ciągłej maksymalnej wykorzystaniu łącza. Jednak jak wiadomo, serwery nie zużywają transferu stale, a krzywe zużycia danych w ciągu dnia mogą wyglądać tak:

U niektórych użytkowników szczyty mogą osiągać maksymalne przepustowości i wymagać uczciwego 1 Gbit/s w tych momentach. Przy tym całkowity limit transferu w miesiącu może praktycznie nie być przekroczony:

Tacy klienci, oczywiście, nie są zbyt korzystni dla dostawców, dlatego dostawca stara się przenieść ich na Unmetered, ponieważ jeśli świadczy usługi klientom z jednego regionu, istnieje duże prawdopodobieństwo, że szczyty obciążenia będą się pokrywać, a ten «uczciwy» gigabit dostawca będzie mógł sprzedać tylko 1,2 klienta. Jeśli natomiast dostawca ma klientów z różnych regionów, to jest prawdopodobne, że kanał może być sprzedany dwóm lub więcej abonentom jednocześnie, ponieważ szczyty obciążenia poszczególnych grup będą miały miejsce w różnych czasach. W rzeczywistości jednak nie każdy klient zużywa swój limit 100 TB, dlatego dostarczanie serwerów z limitem 100 TB transferu jest bardzo opłacalne.
Co więcej, podłączając do szaf kanały 10 gigabitów, możliwe jest bardzo efektywne podzielenie transferu pomiędzy wszystkie. Udało nam się podzielić kanał 10 Gbit/s średnio na 5 szaf, wypełnionych serwerami z limitem 100 TB. To około 150 serwerów. Jedna szafa o wysokości 47 jednostek może pomieścić albo 41 serwerów jednostkowych, albo 21 serwerów dwujednostkowych.
W rezultacie całkowite zużycie kanału wynosi:

Jeśli jednak odmówimy obsługi klientom, którzy generują dużo transferu (główny wkład w obciążenie kanału stanowi mniej niż 10 serwerów z 150 obecnych na tym porcie), można zwiększyć liczbę serwerów do 300 i więcej. Wszyscy będą zadowoleni, a transferu dla każdego wystarczy.
Jednak są też inne sposoby na oszczędności i zadowolenie abonentów — podłączyć tańszy tranzytowy uplink lub wysłać transfer do punktu wymiany lub peeringu za darmo, jeśli jesteście dużym generatorem ruchu.
To właśnie to wszystko pozwala utrzymywać niskie ceny, nie odmawiać abonentom obsługi, płacąc dostawcom tranzytowym 1500-6000 euro za każde 10G w zależności od tego, jak dobry jest dostawca tranzytowy, a sprzedając łączność poniżej kosztów z określonym wskaźnikiem oversellingu, gdy każdy z abonentów ma swój zamówiony uczciwy kanał, przy czym nie przeszkadza sobie nawzajem.
Od razu widać, dlaczego cena za 1Gbps Unmetered jest znacznie wyższa, ponieważ w przypadku serwerów 100 terabajtowych, niewielu korzysta z pełnego limitu, podczas gdy klient, który zamawia 1Gbps Unmetered, zdecydowanie skonsumuje dużą część kanału. Choć widzieliśmy powyższy wyjątek i przykład tego, jak można wygenerować prawie 1 Gbps podczas szczytów, a jednocześnie pozostać w granicach limitu 100 terabajtów, jest to wyjątek, a nie typowy wzorzec.
Mój administrator zainstalował program vnstatd na serwerze, a ruch jest monitorowany z interfejsu co 5 minut. On też wszystko zlicza? Zatem pokazuje mi, że wykorzystano 87 TB, podczas gdy dostawca mówi, że wykorzystano 96 TB i ruch prawie się skończył. Jestem pewna swojego administratora - to doskonały specjalista. Jeśli mówi, że dostawca zawyża zużycie – to prawda. Zwłaszcza, że zaczęli się bawić danymi, podając różne wartości ruchu w dyskusji na ten sam okres. Na pytanie „jak to możliwe?” nadal czekamy na odpowiedź.
Sprawa jest taka, że niektóre programy do monitorowania ruchu zliczają w TiB, a nie TB. W tebibajtach, a nie terabajtach. To znaczy, że zliczanie odbywa się w systemie binarnym, a nie dziesiętnym, w oparciu o to, że w kilobajcie, a dokładniej w kibibajcie – 1024 bajty, a nie 1000.
Warto zauważyć, że aby to zróżnicowanie nie było wykorzystywane w celach marketingowych, ISO (Międzynarodowa Organizacja Normalizacyjna) już dawno wprowadziła przedrostki „bi” dla bajtów binarnych, czyli kibibajty, mebibajty, gibibajty, tebibajty. Tylko, że marketing mimo wszystko odbył się, a jeśli producenci nośników dzięki dziesiętnym bajtom są w stanie podawać mniejsze pojemności, to przy pomiarze i zliczaniu ruchu sytuacja jest odwrotna. Dostawca hostingu, oferując 100 TB ruchu, tak naprawdę zapewnia go mniej niż można by oczekiwać, jeśli uwzględnić to w systemie binarnym.
Wydawałoby się, że różnica nie jest duża, zaledwie 24 bajty na 1000, a błędność wynosi tylko 2,4%, ale dlaczego powstaje taka duża różnica, na poziomie 10%? Czy naprawdę nie uwzględniono jakiegoś ruchu?
Chodzi o to, że nie można zapominać, iż „błąd” się kumuluje, a dokładnie:
1024 bajty w kibibajcie (jeśli odnosić się do standardów ISO), w mebibajcie już 1024*1024 = 1 048 576 bajtów, w gibibajcie — 1024*1024*1024 = 1 073 741 824, a w tebibajcie — 1024*1024*1024*1024 = 1 099 511 627 776.
Niespodziewany zwrot? Tak?
Przy pomiarze ruchu w terabajtach różnica między jednostkami miary wynosi właśnie 10%!

Co więcej, różnice w danych pobieranych z portu przełącznika i z portu serwera mogą być spowodowane atakiem DDoS, który nie dociera do klienta i może zostać wyeliminowany na poziomie „routera”, przy tym i tak następuje zużycie ruchu.
Nie można też zapominać, że czasami program zlicza ruch nie przez wszystkie porty i jakiś ruch może „umknąć” monitorowaniu.
Należy również pamiętać, że kiedy zapewniany jest limitowany ruch, często uwzględnia się sumaryczny ruch przychodzący + wychodzący, i jeśli macie Państwo, powiedzmy, usługę VPN, proporcja będzie 1 do 1, a Wasi klienci będą mogli przesłać łącznie nie więcej niż 50 TB ruchu przy limicie wynoszącym 100.
Ciąg dalszy nastąpi…
Trochę reklamy 🙂
Dziękujemy, że jesteś z nami. Podobają Ci się nasze artykuły? Chcesz zobaczyć więcej interesujących materiałów? Wspieraj nas składając zamówienie lub polecając nas znajomym, , unikatowy odpowiednik serwerów entry-level, który został stworzony przez nas dla Ciebie: (dostępne opcje z RAID1 i RAID10, do 24 rdzeni i do 40GB DDR4).
Dell R730xd dwa razy tańszy w centrum danych Equinix Tier IV w Amsterdamie? Tylko u nas w Holandii! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — od 99 dolarów! Czytaj o tym
Źródło: habr.com
