МТС и «долг» в тысячу рублей 7

Posted by Андрей on Декабрь 20, 2008

Эта история грустная, но со счастливым концом. И для начала хочется сказать спасибо компании МТС, что ситуация разрешилась в лучшую сторону. Итак, всё по порядку…

Обычным письмом приходит извещение от компании МТС, что на лицевом счету XXXXYYYY имеется непогашенная задолженность, что компания МТС скоро подаст в суд а данные мои передаст в бюро кредитных историй в качестве злостного неплательщика. Я удивился, пошел в Интернет-помощника, выяснил какой телефонный номер привязан к этому лицевому счету, на нем нет задолженности (судя по балансу), да и не было – регулярные платежи каждый месяц или иногда даже чаще.

Звонок в службу поддержки, переводят меня на «финансовый департамент», там милая девушка объясняет, что у каждого абонента имеется два баланса: один, который видит он, и, второй, «бухгалтерский», который он не видит. Так вот, данные балансы разошлись, и, как легко догадаться, на внутреннем балансе числится долг в 1000 рублей, а на внешнем что-то типа +100 рублей (т.е. разница больше чем 1000 рублей). Она сообщила, что такое «бывает», они будут разбираться и через неделю сообщат результаты.

Прошла неделя… Баланс счета (тот, который вижу я) стал -1000 рублей — надо думать, разобрались! Звоню, девушка думает и сообщает, что три года назад в 2005 году что-то не было засчитано правильно и с тех пор (sic!) за мной висит долг в 1000 рублей. Я спросил девушку, а как я могу это проверить или увидеть, потому что мне вобщем-то тяжело понять, как такое могло быть? Мне кажется, что она хотела сделать так, чтобы я больше не приставал с вопросами, и сказала, что я могу это увидеть в счетах, которые мне выставлялись за тот период (2005 год). Самым замечательным оказалось то, что как раз в то время я стал пользоваться Gmail, и одно из первых писем, сохраненных в моем ящике – это ежемесячные счета от МТС. Как раз в тот период на этом лицевом счете случился какой-то глюк биллинга МТС, который они исправляли около недели, разделяли счета, и т.п., и я даже был готов легко поверить, что именно тогда и могла образоваться такая задолженность. Я взглянул на счета за три месяца того периода, в них всё сходилось – баланс счета, платежи, расходы. Я снова позвонил в финансовую службу и спросил, как мне передать им эти счета, чтобы они мне показали, где же именно я оказался должен? Девушка мне предложила отправить письмо на адрес info@mts.ru, что я и сделал:

Continue reading…

D. J. Bernstein

Posted by Андрей on Декабрь 19, 2008

Кто такой D. J. Bernstein или просто djb? С моей точки зрения, в первую очередь, – это интереснейший человек. Людям из мира web он больше всего известен как автор интересных, безопасных и быстрых программ: qmail и djbdns. Эти программы обладают архитектурой, непохожей на все привычные серверные решения: Apache, BIND, postfix и т.п. Они пропитаны духом и философией UNIX, не демоны, пожирающие мегабайты памяти и решающие тысячи задач, а простые, маленькие программы, простые форматы файлов, четко определенные цели и взаимодействия, всё написано одновременно просто и в тоже время надежно.

А кто в курсе, что D. J. Bernstein еще и математик? Что он является профессором и преподает в University of Illinois at Chicago, опубликовал большое количество статей, каждая из которых производит впечатление выверенной, педантичной, качественной работы, какой и должна быть математическая статья. В основном статьи так или иначе посвящены теме криптографии, и, особенно, вопросам «быстрой» криптографии, когда криптографический алгоритм может быть использован на маломощных устройствах или для обработки больших потоков данных.

DJB не является профессиональным юристом, однако он «засудил» правительство США (дело Bernstein v. United States) по поводу экспортных ограничений на системы безопасности (и, в частности, криптографии). Bernstein выступает против патентов на алгоритмы и идеи, пытаясь доказать несостоятельность существующих патентов (например, по причине того, что до подачи патентной заявки идеи были опубликованы). DJB и против попыток издательств получить экслюзивные права на научные публикации, чтобы потом по сути органичить доступ к ним, сделав его платным.

DJB дотошен, я бы сказал, что он «зануда». Он может потратить не один день на рассказ о том, как распределяются и крадутся деньги грантов в его университете UIC (ничего не напоминает?). При этом он пытается бороться с этой системой. Вряд ли его «любят», потому что он говорит многие вещи прямо. Он может свободно осуждать Paul Vixie, ISC, Nominum и других за реализацию BIND, по сути говоря о том, что они не могут написать хорошее программное обеспечение, «трясут» деньги за поддержку. При этом в BIND постоянно обнаруживаются проблемы безопасности, а его авторы предлагают заплатить деньги, чтобы узнать о них и получть патч, сознательно задерживая выход исправленной версии. DJB расскажет историю своей поездки на конференцию в Санкт-Петербург в стиле «и по улице у них бродят медведи». Он раскритикует IPv6 и планы его внедрения (с моей точки зрения, совершенно справедливо). DJB расскажет и о том, как надо и как не надо писать статьи.

Иногда хочется спросить, как он всё это успевает? Как удается человеку оставаться таким принципиальным? Как в нём одновременно уживается талант математика, профессора, программиста. Как одновременно он зануден в проведении очередного математического доказательства, в оптимизации на уровне еще одного такта ассемблерного кода для разных арихитектур, в выработке концепции безопасности программного обеспечения. Не знаю как, но, с моей точки зрения, он – выдающийся человек, у которого можно и нужно учиться.

CDN своими руками или раздача видеоконтента

Posted by Андрей on Декабрь 03, 2008

В продолжение темы про доставку видеоконтента: мы обеспечили хранение и обработку контента, как теперь отдать контент таким образом, чтобы он оказался как можно «ближе» к потребителю. Большая часть статьи будет посвящена обобщенному подходу географически распределенной раздачи контента, а в конце в качестве примера он будет применен к доставке видеофайлов и вещаний конечным пользователям.

Необходимость географической распределенности

Кроме самого факта, что контент был доставлен пользователю, мы должны обеспечить качество доставки контента. Для FLV-файла видео это означает, что скорость, с которой он доставляется пользователю, должна быть выше либо равна битрейта потока, иначе видео у пользователя при просмотре будет «затыкаться».

Кроме того, имеет смысл «приблизить» контент к пользователю географически. Это связано с пропускной способностью каналов (отсутствием иногда хороших магистральных каналов), а также с разницей в стоимости локального и внешнего трафика для конечного пользователя (например, в регионах РФ).

Такой шаг необходимо сделать при желании выйти на международный рынок, а также при региональном развитии внутри РФ. Сегодня в регионах очень часто самыми популярными сайтами являются региональные порталы, которые предоставляют различные сервисы, в том числе и сервис видеохостинга, а их популярность обусловлена как стоимостью трафика, так и скоростью доступа/временем отклика. Можно представить, что пользователь готов подождать открытия страницы, загрузки плеера, но тяжело предположить, что пользователь согласится смотреть видео, которые прерывается из-за постоянной буферизации, или смотреть вещание, которое доходит до пользователя в виде слайдшоу (после пропуска пакетов остались только опорные кадры видео).

Таким образом, осознав необходимость географической распределенности для контента, мы покупаем/арендуем сервера в непосредственной близости от потребителя: в Европе, США, Украине, Екатеринбурге и т.д. Что же делать дальше?

Continue reading…

Доставка видеоконтента пользователям 4

Posted by Андрей on Декабрь 02, 2008

Что такое «контент» для видеохостинга? Во-первых, контент видеохостинга – это просто видео, которое представляет собой набор файлов в различных форматах, в частности, в формате FLV для просмотра пользователем через Flash Player. Эти файлы статичны, видеохостинг при загрузке пользователем видеоролика осуществляет конвертацию во все требуемые форматы с необходимым битрейтом. Хранение такого контента — это хранение обычных файлов, только довольно большого размера. Отдача контента — это, по сути, организация скачивания файлов. Во-вторых, контент видеохостинга — это «живые» потоки или вещания. Вещания не записываются на диск, не происходит их конвертация, потоки раздаются клиентам с учетом пропускной способности каналов (происходит пропуск пакетов, если канал клиента недостаточен для получения потока вещания в полном качестве). Отдача контента в данной ситуации — это раздача потока на большое количество подключенных пользователей (тысячи смотрящих).

Кроме как таковой задачи отдачи контента (корректность, работа под нагрузкой и т.п.) актуальной является проблема «приближения» контента к пользователю. Необходимо организовать доставку контента так, чтобы пользователь получал видео или вещание с сервера, который расположен близко к нему с точки зрения пропускной способности сетевых каналов, а также с точки зрения стоимости трафика для пользователя.

Данная статья, написанная по материалам доклада на конференции «РИТ: Высокие нагрузки»-2008, расскажет об одном из возможных подходов к решению поставленных задач. Рассказ будет основан на нашем опыте проектирования, разработки и поддержки видеохостинга Smotri.Сom, который является сегодня самым крупным видеохостингом Рунета. Описываемые подходы могут быть применимы в областях с похожими характеристиками контента: достаточно большой объем файлов, много файлов, различные виды вещаний и т.п.

Статья будет состоять из двух частей: в первой части речь пойдет об организации файлового хранилища для видеофайлов и об общих аспектах организации вещания. Во второй части будет представлен способ организации CDN (Content Delivery Network), то есть способ «приближения» контента к конечному потребителю, а также применение этого подхода к доставке статических файлов (файлов видео) и к потоковой трансляции (вещания).

Continue reading…