Глоссарий

DC

Data center — Telegram дата-орталығы

Прокси клиент трафигін жіберетін Telegram серверлері.

Сызбадағы рөлі

Telegram серверлері бірнеше дата-орталыққа бөлінген. Прокси клиент пен олардың арасында тұрады: клиент проксиге қосылады, ал прокси керекті дата-орталыққа қосылып, трафикті әрі қарай жібереді. Мазмұн бұл кезде клиент пен сервердің кілтімен шифрланған күйінде қалады.

Клиент дата-орталықты қалай таңдайды

Мекенжайлар тізімін клиент help.getConfig сұрауымен алады: жауапта әр қолжетімділік нүктесінің идентификаторы, IP-мекенжайы және порты бар dc_options өрісі болады. Мекенжайлар мен порттар өзгеруі мүмкін, ал әр дата-орталықта әдетте кемінде бір IPv4 және бір IPv6 мекенжайы болады. Негізгі сұраулар үшін клиент ең жақын нүктені таңдайды, ал аккаунтқа кірмей тұрып кездейсоқ мекенжайға қосылады.

Аккаунттың «үй» дата-орталығы бар; клиент басқа жаққа қосылса, сервер PHONE_MIGRATE_X немесе USER_MIGRATE_X түріндегі қатемен жауап береді, клиент қайта қосылады. Файлдар сақталған дата-орталықтан жүктеледі, ал файл жіберу үшін бөлек media-only нүктелері бар.

Прокси хаттамасындағы дата-орталық

Бүркемеленген қосылымда дата-орталық идентификаторы бастапқы пакетте беріледі: бұл 60-ығысудағы таңбалы 2 байттық сан, ал медиа дата-орталықтар үшін ол теріс. Прокси ағынды қайда бағыттау керегін осылай біледі. Бастапқы пакет туралы толығырақ — obfuscated2 терминінде.

Прокси иесі үшін мұның мәні

Проксиге дата-орталықтардың бәріне қолжетімділік керек, бір бөлігіне ғана емес: аккаунт «үй» дата-орталығына байланған, егер оның мекенжайы серверден қолжетімсіз болса, пайдаланушы кіре алмайды немесе файл жүктей алмайды. Серверден Telegram жаққа шығатын қосылымдарды жабуға болмайды.

Дата-орталықтың нөмірі қалай жазылады

Бүркемеленген қосылымның бастапқы пакетінде нөмір таңбалы 2 байттық сан ретінде сақталады. Сынақ серверлері үшін оған 10000 қосылады, ал media дата-орталықтар үшін ол теріс болады: құжатта мысал ретінде media дата-орталық 4 үшін 0xfcff мәні берілген. Прокси осы санды оқиды да, қайда қосылу керегін таңдайды.

Олар қанша және қайда

Telegram құжаттамасында тек «әлемнің әртүрлі бөліктеріндегі бірнеше дата-орталық» делінген: сан да, қалалар да көрсетілмеген, ал мекенжайлар тізімін клиент конфигурациядан алады. Сондықтан прокси үшін «Telegram серверлері қайда тұр» емес, сіздің серверден олардың барлық мекенжайына байланыс бар екені маңызды: аккаунт «үй» дата-орталығына байланған, соған қолжетімділігі жоқ прокси көмектеспейді.

Дереккөздер

  1. Telegram: дата-орталықтар
  2. Telegram: MTProto transports
  3. telemt: FAQ