Böyük Çin Təhlükəsizlik divarını necə sındırdıq (3-cü hissə)

Привет!
Bütün yaxşı hekayələr sona çatır. Çin Firewall sürətli keçid həllini necə tapdığımızla bağlı hekayəmiz də istisna deyil. Buna görə də ən son məlumatları sizinlə bölüşməyə tələsirəm, son hissə bu mövzuda.

Əvvəlki hissədə biz icad etdiyimiz çoxsaylı sınaq skamyalarından və onların hansı nəticələr verdiyindən danışdıq. Və əlavə etmək üçün nəyin yaxşı olacağına qərar verdik CDN! sxemimizdə özlülük üçün.

Mən sizə Alibaba Cloud CDN, Tencent Cloud CDN və Akamai-ni necə sınaqdan keçirdiyimizi və harada sona çatdığımızı söyləyəcəyəm. Və əlbəttə ki, ümumiləşdirək.

Böyük Çin Təhlükəsizlik divarını necə sındırdıq (3-cü hissə)

Alibaba Cloud CDN

Biz Alibaba Cloud-da yerləşmişik, onlardan IPSEC və CEN istifadə edirik. Əvvəlcə onların həllərini sınamaq məntiqli olardı.

Alibaba Cloud bizə uyğun gələn iki növ məhsula malikdir: CDN и DCDN. Birinci seçim müəyyən bir domen (alt domen) üçün klassik CDN-dir. İkinci seçim kimi deşifrə edilir CDN üçün dinamik marşrut (Mən buna dinamik CDN deyirəm), Tam sayt rejimində işə salına bilər (joker xarakterli domenlər üçün), o, həm də statikanı yaddaşda saxlayır və dinamik məzmunu öz üzərində sürətləndirir, yəni səhifə dinamikası da provayderin sürətli şəbəkələri vasitəsilə yüklənəcək. Bu bizim üçün vacibdir, çünki saytımız əsasən dinamikdir, bir çox subdomenlərdən istifadə edir və “ulduz” üçün bir dəfə CDN qurmaq daha rahatdır - *.semrushchina.cn.

Biz artıq bu məhsulu Çin layihəmizin əvvəlki mərhələlərində görmüşük, lakin sonra o, hələ işləmədi və tərtibatçılar söz verdilər ki, məhsul bütün müştərilər üçün əlçatan olacaq. Və o oldu.

DCDN-də siz:

  • sertifikatınızla SSL ləğvini konfiqurasiya edin,
  • dinamik məzmun sürətləndirilməsini aktivləşdirin,
  • statik faylların keşləşdirilməsini çevik şəkildə konfiqurasiya etmək,
  • önbelleği təmizləmək,
  • irəli veb yuvaları,
  • sıxılma və hətta HTML Beautifier'ı aktivləşdirin.

Ümumiyyətlə, hər şey böyüklər və böyük CDN provayderlərində olduğu kimidir.

Origin (CDN kənar serverlərinin gedəcəyi yer) müəyyən edildikdən sonra ulduz işarəsi üçün CNAME yaratmaq qalır. all.semrushchina.cn.w.kunluncan.com (bu CNAME Alibaba Bulud konsolunda qəbul edilib) və CDN işləyəcək.

Test nəticələrinə görə, bu CDN bizə çox kömək etdi. Statistikalar aşağıda göstərilir.

qərar
Uptime
Median
75 faiz
95 faiz

Cloudflare
86.6
18s
30s
60s

IPsec
99.79
18s
21s
30s

CEN
99.75
16s
21s
27s

CEN/IPsec+GLB
99.79
13s
16s
25s

Əli CDN + CEN/IPsec + GLB
99.75
10s
12.8s
17.3s

Bu, çox yaxşı nəticələrdir, xüsusən onları ilkin rəqəmlərlə müqayisə etsək. Amma biz bilirdik ki, www.semrush.com saytımızın ABŞ versiyasının brauzer sınağı ABŞ-dan orta hesabla 8.3 saniyəyə işləyir (çox təxmini dəyər). Çalışılası bir şey var. Üstəlik, sınaqdan keçirmək üçün maraqlı olan CDN provayderləri də var idi.

Beləliklə, biz asanlıqla Çin bazarında başqa bir nəhəngə keçirik - Tencent.

Tencent Buludu

Tencent yalnız buludunu inkişaf etdirir - bunu az sayda məhsulda görmək olar. Onu istifadə edərkən biz təkcə onların CDN-ni deyil, bütün şəbəkə infrastrukturunu sınaqdan keçirmək istədik:

  • onlarda CEN-ə bənzər bir şey varmı?
  • IPSEC onlar üçün necə işləyir? Sürətlidir, işləmə müddəti nədir?
  • onlarda Anycast var?

Böyük Çin Təhlükəsizlik divarını necə sındırdıq (3-cü hissə)

Bu sualları ayrıca araşdıraq.

CEN analoqu

Tencentin bir məhsulu var Cloud Connect Network (CCN), Çin daxilində və xaricdəki bölgələr də daxil olmaqla müxtəlif bölgələrdən VPC-ləri birləşdirməyə imkan verir. Məhsul hazırda daxili beta-dadır və ona qoşulmaq üçün sorğu ilə bilet yaratmalısınız. Dəstəkdən öyrəndik ki, qlobal hesablar (söhbət Çin vətəndaşları və ya hüquqi şəxslərdən getmir) beta test proqramında iştirak edə bilməz və ümumilikdə Çin daxilindəki bölgəni xaricdəki bölgə ilə birləşdirə bilər. 1-0 Əli Buludun xeyrinə

IPsec

Tencentin ən cənub bölgəsidir Quançjou. Biz tunel yığdıq və onu GCP-də Honq Konq bölgəsinə bağladıq (o zaman bu bölgə artıq mövcud idi). Şençjendən Honq Konqa gedən Ali Buludda ikinci tunel də eyni vaxtda qaldırılıb. Məlum oldu ki, Tencent şəbəkəsi vasitəsilə Honq-Konqa gecikmə ümumiyyətlə Şenzendən Honq-Konqdan Əliyə (10 ms - nə?) nisbətən daha yaxşıdır (120 ms). Ancaq bu, Tencent və bu tunel vasitəsilə işləməyə yönəlmiş saytın işini heç bir şəkildə sürətləndirmədi, bu da özlüyündə heyrətamiz bir fakt idi və bir daha aşağıdakıları sübut etdi: Çin üçün gecikmə həqiqətən diqqət yetirməli olduğunuz bir göstərici deyil. Çin təhlükəsizlik duvarından keçmək üçün bir həll hazırlayarkən.

Anycast İnternet Sürətləndirilməsi

İstənilən IP vasitəsilə işləməyə imkan verən başqa bir məhsul - ASA. Ancaq qlobal hesablar üçün də mövcud deyil, ona görə də bu barədə danışmayacağam, lakin belə bir məhsulun mövcud olduğunu bilmək faydalı ola bilər.

Lakin CDN testi olduqca maraqlı nəticələr göstərdi. Tencent-in CDN-i tam saytda, yalnız müəyyən domenlərdə aktivləşdirilə bilməz. Domenlər qurduq və onlara trafik göndərdik:

Böyük Çin Təhlükəsizlik divarını necə sındırdıq (3-cü hissə)

Məlum oldu ki, bu CDN aşağıdakı funksiyaya malikdir: Sərhədlərarası Trafik Optimizasiyası. Trafik Çin təhlükəsizlik duvarından keçdikdə bu xüsusiyyət xərcləri azaltmalıdır. kimi Mənşə Google GLB (GLB anycast) IP ünvanı göstərildi. Beləliklə, layihənin arxitekturasını sadələşdirmək istədik.

Nəticələr çox yaxşı idi - Ali Cloud CDN səviyyəsində, bəzi yerlərdə isə daha yaxşı idi. Bu təəccüblüdür, çünki sınaqlar uğurlu olarsa, infrastrukturun əhəmiyyətli bir hissəsindən, tunellərdən, CEN-dən, virtual maşınlardan və s. imtina edə bilərsiniz.

Biz uzun müddət sevinmədik, çünki problem aşkarlandı: Catchpoint-də sınaqlar China Mobile İnternet provayderi üçün uğursuz oldu. Tencent-in CDN-si vasitəsilə istənilən yerdən fasilə aldıq. Texniki dəstək ilə yazışmalar heç nəyə gətirib çıxarmadı. Təxminən bir gün ərzində bu problemi həll etməyə çalışdıq, amma heç nə alınmadı.

Mən o vaxt Çində idim, lakin mən özüm görmək üçün həmin provayderin şəbəkəsində ictimai Wi-Fi tapa bilmədim. Əks halda, hər şey sürətli və yaxşı görünürdü.
Bununla belə, China Mobile-ın üç ən böyük operatordan biri olması səbəbindən biz trafiki Ali CDN-ə qaytarmaq məcburiyyətində qaldıq.
Ancaq ümumiyyətlə, bu problemin daha çox sınaqdan keçirilməsinə və aradan qaldırılmasına layiq olan olduqca maraqlı bir həll idi.

Akamai

Test etdiyimiz son CDN provayderidir Akamai. Bu, Çində öz şəbəkəsi olan nəhəng bir provayderdir. Təbii ki, biz bundan ötrü keçə bilmədik.

Böyük Çin Təhlükəsizlik divarını necə sındırdıq (3-cü hissə)

Əvvəldən biz Akamai ilə sınaq müddətində razılaşdıq ki, domeni dəyişdirə bilək və onların şəbəkəsində necə işləyəcəyik. Bütün testlərin nəticəsini “Nəyi bəyəndim” və “Bəyənmədim” şəklində təsvir edəcəyəm və test nəticələrini də verəcəyəm.

Nəyi bəyəndik:

  • Akamaidən olan uşaqlar bütün məsələlərdə çox kömək etdilər və sınaqların bütün mərhələlərində bizi müşayiət etdilər. Daim öz tərəfində nəyisə yaxşılaşdırmağa çalışır. Yaxşı texniki məsləhətlər verdilər.
  • Akamai Ali Cloud CDN vasitəsilə həllimizdən təxminən 10-15% yavaşdır. Təəccüblüdür ki, Akamai üçün Origin-də biz GLB IP ünvanını göstərdik, yəni trafik bizim həllimizdən keçmədi (infrastrukturun bir hissəsini potensial olaraq tərk etmək mümkündür). Ancaq yenə də test nəticələri göstərdi ki, bu həll mövcud versiyamızdan daha pisdir (aşağıdakı müqayisəli nəticələr).
  • Həm Origin GLB, həm də Çində Origin tərəfindən sınaqdan keçirilmişdir. Hər iki variant təxminən eynidir.
  • Yoxdur Əmin marşrut (avtomatik marşrutun optimallaşdırılması). Siz Origin-də test obyekti yerləşdirə bilərsiniz və Akamai-nin Edge serverləri onu götürməyə çalışacaqlar (normal GET). Bu istəklər üçün sürət və digər ölçülər ölçülür, bunun əsasında Akamai şəbəkəsi marşrutları optimallaşdırır ki, trafik saytımız üçün daha sürətli gedir və aydın oldu ki, bu xüsusiyyətin daxil edilməsi həqiqətən də saytın sürətinə böyük təsir göstərib. .
  • Veb interfeysində konfiqurasiyanın versiyaya salınması əladır. Versiyalar üçün müqayisə etmək, fərqə baxmaq mümkündür. Əvvəlki versiyalara baxın.
  • Yeni versiyanı əvvəlcə yalnız Akamai Staging şəbəkəsində yaymaq olar - istehsalla eyni şəbəkə, yalnız bu şəkildə real istifadəçilərə təsir etməyəcək. Bu test üçün yerli maşındakı DNS qeydlərini saxtalaşdırmalısınız.
  • Böyük statik şəbəkələri və görünür, hər hansı digər faylları vasitəsilə çox sürətli yükləmə sürəti. "Soyuq" keşdən bir fayl "soyuq" Ali CDN keşindən eyni fayldan dəfələrlə daha sürətli alınır. "Qaynar" keşdən sürət artı və ya mənfi eynidir.

Əli CDN testi:

root@shenzhen1:~# curl -o /dev/null -w@curl_time https://en.semrushchina.cn/my_reports/build/scripts/simpleInit.js?v=1551879212
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 5757k    0 5757k    0     0   513k      0 --:--:--  0:00:11 --:--:--  526k
time_namelookup:  0.004286
time_connect:  0.030107
time_appconnect:  0.117525
time_pretransfer:  0.117606
time_redirect:  0.000000
time_starttransfer:  0.840348
----------
time_total:  11.208119
----------
size_download:  5895467 Bytes
speed_download:  525999.000B/s

Akamai testi:

root@shenzhen1:~# curl -o /dev/null -w@curl_time https://www.semrushchina.cn/my_reports/build/scripts/simpleInit.js?v=1551879212
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 5757k    0 5757k    0     0  1824k      0 --:--:--  0:00:03 --:--:-- 1825k
time_namelookup:  0.509005
time_connect:  0.528261
time_appconnect:  0.577235
time_pretransfer:  0.577324
time_redirect:  0.000000
time_starttransfer:  1.327013
----------
time_total:  3.154850
----------
size_download:  5895467 Bytes
speed_download:  1868699.000B/s

Yuxarıdakı nümunədən vəziyyətin müxtəlif amillərdən asılı olduğunu gördük. Bu yazı yazarkən mən yenidən sınaqdan keçdim. Hər iki platformanın nəticələri təxminən eyni idi. Bu, Çindəki İnternetin, hətta böyük operatorlar və bulud provayderləri üçün də zaman zaman fərqli davrandığını göstərir.

Əvvəlki nöqtəyə Akamai-nin böyük artısını əlavə edəcəyəm: əgər Əli oxşar yüksək performanslı və çox aşağı flaşlar göstərirsə (bu, Ali CDN, Ali CEN və Ali IPSEC-ə aiddir), onda Akamai hər dəfə, onların şəbəkəsini necə sınamağımdan asılı olmayaraq , hər şey stabil işləyir.
Akamai Çində böyük əhatə dairəsinə malikdir və bir çox provayder vasitəsilə işləyir.

Bəyənmədiyi şey:

  • Veb interfeysini və iş sxemini bəyənmirəm - onlar sıfırdır. Amma prinsipcə öyrəşirsən (yəqin ki).
  • Test nəticələri saytımızdan daha pisdir.
  • Testlər zamanı saytımızdakından daha çox səhv var (aşağıda iş vaxtı).
  • Çində DNS serverləri yoxdur. Beləliklə, DNS həlli vaxt aşımı səbəbindən testlərdə çoxlu səhvlər olur.
  • IP diapazonlarını təmin etmirlər -> düzgün olanları qeyd etmək üçün bir yol yoxdur real_ip_set serverlərimizdə.

Metriklər (~3626 qaçış; iş vaxtı istisna olmaqla, bütün göstəricilər ms ilə; bir müddət üçün statistika):

CDN Təchizatçısı
Median
75%
95%
Cavab
Veb səhifə cavabı
Uptime
DNS
Birləşdirmək
Gözləmək
Yük
SSL

Əli CDN
9195
10749
17489
1,715
10,745
99.531
57
17
927
479
200

Akamai
9783
11887
19888
2,352
11,550
98.980
424
91
1408
381
50

Faizlə paylanma (ms ilə):

Faiz
Akamai
Əli CDN

10
7,092
6,942

20
7,775
7,583

30
8,446
8,092

40
9,146
8,596

50
9,783
9,195

60
10,497
9,770

70
11,371
10,383

80
12,670
11,255

90
15,882
13,165

100
91,592
91,596

Nəticə belədir: Akamai seçimi etibarlıdır, lakin Ali CDN ilə birlikdə öz həllimizlə eyni sabitlik və sürət göstəricilərini təmin etmir.

Kiçik Qeydlər

Bəzi məqamlar hekayəyə daxil edilməyib, amma onlar haqqında da yazmaq istərdim.

Pekin + Tokio və Honq Konq

Yuxarıda dediyim kimi, biz Honq-Konqa (HK) IPSEC tunelini sınaqdan keçirdik. Ancaq biz CEN-i HK-ya da sınaqdan keçirdik. Bir az daha ucuzdur və ~100km məsafədə olan şəhərlər arasında necə işləyəcəyi maraqlı idi. Maraqlı oldu ki, bu şəhərlər arasındakı gecikmə bizim orijinal versiyamızdan (Tayvana) 100 ms yüksəkdir. Sürət, sabitlik də Tayvan üçün daha yaxşı idi. Nəticədə biz HK-ni ehtiyat IPSEC bölgəsi olaraq tərk etdik.

Bundan əlavə, belə bir quraşdırma qaldırmağa çalışdıq:

  • Pekində müştərilərin bağlanması,
  • IPSEC və CEN Tokioya,
  • Ali CDN-də, Pekindəki server mənşəli olaraq göstərildi.

Bu sxem o qədər də sabit deyildi, baxmayaraq ki, ümumiyyətlə sürət baxımından bizim həllimizdən geri qalmırdı. Tunelə gəldikdə, sabit olmalı olan CEN üçün də fasilələrlə azalma gördüm. Ona görə də biz köhnə sxemə qayıtdıq və bu səhnələşdirməni sökdük.

Aşağıda müxtəlif kanallar vasitəsilə müxtəlif bölgələr arasında gecikmə ilə bağlı statistik məlumatlar verilmişdir. Bəlkə kimsə bununla maraqlanacaq.

IPsec
Ali cn-beijing <—> GCP asia-şimal-şərq1 - 193ms
Əli cn-shenzhen <—> GCP asia-east2 - 91ms
Əli cn-shenzhen <—> GCP us-east4 - 200ms

CEN
Ali cn-beijing <—> Əli ap-şimal-şərq-1 - 54ms (!)
Ali cn-shenzhen <—> Ali cn-hongkong - 6ms (!)
Əli cn-shenzhen <—> Əli us-şərq1 - 216ms

Çində İnternet haqqında ümumi məlumat

Məqalənin birinci hissəsində təsvir olunan İnternet problemlərinə əlavə olaraq.

  • Çində internet daxildə olduqca sürətlidir.
    • Nəticə şəbəkə məlumatlarının çoxlu sayda insan tərəfindən istifadə edildiyi müxtəlif yerlərdə ictimai Wi-Fi şəbəkələrinin sınaqdan keçirilməsi əsasında hazırlanıb.
    • Çin daxilindəki serverlərə yükləmə və yükləmə sürəti müvafiq olaraq 20 Mbit/s və 5-10 Mbit/s idi.
    • Çindən kənarda serverlərin sürəti sadəcə acınacaqlıdır, 1 Mbps-dən azdır.
  • Çində internet o qədər də sabit deyil.
    • Bəzən saytlar konfiqurasiya dəyişməmək şərti ilə tez, bəzən də yavaş-yavaş (müxtəlif günlərdə günün eyni saatında) aça bilər. Biz bunu semrushchina.cn timsalında müşahidə etdik. Bunu Ali CDN-ə aid etmək olar, o da günün vaxtından, ulduzların mövqeyindən və s. asılı olaraq bu və ya digər şəkildə işləyir.
  • Mobil İnternet demək olar ki, hər yerdə 4G və ya 4G+. Metroda, liftlərdə - bir sözlə, hər yerdə tuturlar.
  • Çinli istifadəçilərin yalnız .cn zonasındakı domenlərə etibar etməsi mifdir. Bunu birbaşa istifadəçilərdən öyrəndik.
    • Necə olduğunu görə bilərsiniz http://baidu.cn www.baidu.com saytına yönləndirir (həmçinin materik Çində).
  • Bir çox resurs həqiqətən bloklanıb. Primitiv: google.com, Facebook, Twitter. Ancaq bir çox Google resursları işləyir (əlbəttə ki, bütün Wi-Fi və VPN eyni vaxtda istifadə edilmir (routerin tərəfində də bu, şübhəsiz).
  • Bloklanmış korporasiyaların bir çox "texniki" domenləri də işləyir. Bu o deməkdir ki, siz həmişə ehtiyatsızlıqla bütün Google və digər bloklanmış resursları kəsməməlisiniz. Siz qadağan olunmuş domenlərin bəzi siyahısını axtarmaq lazımdır.
  • Onların yalnız üç əsas İnternet operatoru var: China Unicom, China Telecom, China Mobile. Daha kiçikləri var, lakin onların bazar payı əhəmiyyətsizdir

Bonus: son həll sxemi

Böyük Çin Təhlükəsizlik divarını necə sındırdıq (3-cü hissə)

Ümumi

Layihənin başlanmasından bir il keçdi. Saytımızın ümumiyyətlə Çindən normal işləməkdən imtina etməsi ilə başladıq, lakin sadəcə GET curl 5.5 saniyə çəkdi.

Sonra, birinci həlldəki bu cür göstəricilərdən (Cloudflare):

qərar
Uptime
Median
75 faiz
95 faiz

Cloudflare
86.6
18s
30s
60s

Aşağıdakı nəticələrlə yekunlaşdıq (son ayın statistikası):

qərar
Uptime
Median
75 faiz
95 faiz

Əli CDN + CEN/IPsec + GLB
99.86
8.8s
9.5s
13.7s

Gördüyünüz kimi 100% iş vaxtı hələ əldə olunmayıb, amma biz nəsə fikirləşəcəyik, sonra isə nəticələr haqqında sizə yeni məqalədə məlumat verəcəyik :)

Hər üç hissəni sona qədər oxuyanlara - hörmət. Ümid edirəm ki, siz də mən bunu edərkən mənim kimi zövq aldınız.

PS Əvvəlki hissələr

Часть 1
Часть 2

Mənbə: www.habr.com

Добавить комментарий