Про эмуляцию компьютерных сетей

Получил от преподавателя задание по «Научно-педагогической практике», которое сформулировано следующим образом: «Провести имитационный эксперимент по реализации алгоритмов маршрутизации в корпоративной информационной сети». Каким местом это относится к педагогической практике — без понятия. Тут стоит отметить, опять же, видение наших ВУЗов на образование. На кафедре, на вопрос, что из себя должна представлять научно-педагогическая практика, ответили, что мы (студенты-магистранты) должны вести занятия у других студентов, набираясь, тем самым, опыта в педагогике. Однако, кафедре не интересно такими вещами заниматься, поэтому они поставили практику на январь, когда и преподавать-то не у кого, ведь все же сдают сессию, а потом еще две недели каникул. В итоге, имеем совсем не относящееся к практике задание. Ну да ладно…

По заданию, необходимо провести имитационный эксперимент, оно же, если другими словами — моделирование. Вчера потратил много времени, что бы найти программы моделирования сетей, однако, в конце, труд был вознагражден.

Программы моделирования (эмуляции) компьютерных сетей:

  • Boson Network Designer
  • Boson NetSim for CCNP
  • Cisco Packet Tracer
  • Cisco CCNA Network Simulator
  • Cisco RouterSim CCNA Network Visualizer
  • Dynamips
  • NetCracker
  • Friendly Pinger
  • GNS3

Для себя я выбрал Cisco Packet Tracer, благо, по ней есть много теоретического материала, по которому можно разобраться в том, как в этой программе создавать сети и проводить настройку маршрутизации.

Материалы по теме: ссылка.

Про системы виртуализации

Что может виртуализация:

  • Запуск множества операционных систем одновременно.
  • Гарантированная изоляция ОС друг от друга.
  • Возможность гибкого разделения ресурсов между машинами.

Преимущества виртуализации:

  • Повышение изоляции.
  • Ограничение одной или группы тесно связанных служб собственной виртуальной машиной.
  • Снижение вероятности сбоев от взаимного влияния программ.
  • Безопасность.
  • Распределение задач администрирования — возможность ограничить права каждого администратора только самыми необходимыми.
  • Снижение потенциальных вредных последствий взлома какой-либо из служб.
  • Распределение ресурсов — каждая машина получает столько ресурсов, сколько ей необходимо, но не более того.
  • Приоритезация задач.
  • Выделение память по требованию.
  • Гибкое распределение сетевого трафика между машинами.
  • Распределение дисковых ресурсов.
  • Постоянная доступность.
  • Есть возможность live-миграции машин.
  • Плавный апгрейд критических серверов.
  • Повышение качества администрирования.
  • Возможность выполнения регрессионных тестов.
  • Возможность экспериментирования и исследования.

Принципы и виды виртуализации:

  • Интерпретация и динамическая рекомпиляция — при использовании динамической рекомпиляции программа-эмулятор преобразует фрагменты исполняемой программы в код, который может быть выполнен на другом компьютере, непосредственно во время ее работы. Рекомпилятор имеет меньшую совместимость, чем интерпретатор, но он быстрее.

 

Примеры: Bochs, PearPC, QEMU, Microsoft VirtualPC for MAC.

  • Паравиртуализация и портирование — модификация ядра гостевой ОС выполняется таким образом, что в нее включается новый набор API, через который она может напрямую работать с аппаратурой, не конфликтуя с другими виртуальными машинами. При этом нет необходимости задействовать полноценную ОС в качестве хостового ПО, функции которого в данном случае исполняет специальная система, получившая название гипервизора (hypervisor).
    • Достоинства: отсутствии потребности в хостовой ОС. Виртуальная машина устанавливаются фактически на “голое железо”, а аппаратные ресурсы используются эффективно.
    • Недостатки: сложность реализации подхода и необходимость создания специализированной ОС-гипервизора.

 

Примеры: Xen, UML, lguest, Microsoft Hyper-V, KVM, VMware ESX Server.

  • Виртуализация на уровне ОС — при таком подходе используется одно ядро хостовой ОС для создания независимых параллельно работающих операционных сред. Ядро обеспечивает полную изолированность контейнеров, поэтому программы из разных контейнеров не могут воздействовать друг на друга.
    • Достоинства: высокая эффективность использования аппаратных ресурсов, низкие накладные технические расходы, отличная управляемость, минимизация расходов на приобретение лицензий.
    • Недостатки: реализация только однородных вычислительных сред.

 

Примеры: FreeVPS, iCore Virtual Accounts, Linux-VServer, OpenVZ, Parallels Virtuozzo Containers, Zones, FreeBSD, Jail, sysjail, WPARs, Solaris Containers.

  • Полная виртуализация — при таком подходе используются немодифицированные экземпляры гостевых операционных систем, а для поддержки работы этих ОС служит общий слой эмуляции их исполнения поверх хостовой ОС, в роли которой выступает обычная операционная система.
    • Достоинства: относительная простота реализации, универсальность и надежность решения; все функции управления берет на себя хост-ОС.
    • Недостатки: высокие дополнительные накладные расходы на используемые аппаратные ресурсы, отсутствие учета особенностей гостевых ОС, меньшая, чем нужно, гибкость в использовании аппаратных средств.

 

Примеры: VMware Workstation, VMware Server, Parallels Desktop, Parallels Server, Microsoft VirtualPC, Microsoft Virtual Server, Microsoft Hyper-V, QEMU с модулем kqemu, KVM, Virtual Iron.

  • Слой совместимости

 

Примеры: Cygwin, Wine.

Материалы по теме: ссылка.

Jabber на своем домене через Google Apps

Вчера я писал о том, как можно поднять Jabber сервер на своем сервере, чтобы можно использовать джаббер следующего вида: имя@домен.ру. Сегодня я решил поэкспериментировать. Сделал соответствующие записи в SRV, установил и настроил ejabberd, проверил работоспособность Jabber’а через Pidgin — все прекрасно! Затем вычитал, что можно прикрутить Jabber, используя Google Apps. Хорошо, удалил с сервера ejabberd, опять вбил необходимые SRV записи:

_xmpp-server._tcp.domen.ru. IN SRV 5 0 5269 xmpp-server.l.google.com.
_xmpp-server._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server1.l.google.com.
_xmpp-server._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server2.l.google.com.
_xmpp-server._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server3.l.google.com.
_xmpp-server._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server4.l.google.com.
_jabber._tcp.domen.ru. IN SRV 5 0 5269 xmpp-server.l.google.com.
_jabber._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server1.l.google.com.
_jabber._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server2.l.google.com.
_jabber._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server3.l.google.com.
_jabber._tcp.domen.ru. IN SRV 20 0 5269 xmpp-server4.l.google.com.

+ еще дополнительные, для клиенсткой части:

_xmpp-client._tcp.domen.ru. IN SRV 5 0 5222 xmpp-server.l.google.com.
_xmpp-client._tcp.domen.ru. IN SRV 20 0 5222 xmpp-server1.l.google.com.
_xmpp-client._tcp.domen.ru. IN SRV 20 0 5222 xmpp-server2.l.google.com.
_xmpp-client._tcp.domen.ru. IN SRV 20 0 5222 xmpp-server3.l.google.com.
_xmpp-client._tcp.domen.ru. IN SRV 20 0 5222 xmpp-server4.l.google.com.

На этом, по-идеи, все заканчивается, и можно приступать к пробному подключению. И тут небольшой ступор: а что вписывать в настройках Pidgin? Он требует ввести имя — пожалуйста! Вписываю имя своей почты, которая создана в Google Apps (т.н. почта для домена), потом надо вписать имя домена — по-идеи, надо вписывать имя моего собственного домена, вписываю. Затем ввожу пароль от почты и жму подключиться — и ни черта не происходит! Странно в общем, буду гуглить. Как найду решение, отпишу…

UPD: все заработало. Как я и предполагал, надо было всего лишь немного подождать. Время лечит ))

Настройка Jabber в клиенте Pidgin

Про Microsoft Mathematics

Совершенно случайно наткнулся на программу Microsoft Mathematics, которая является мини-аналогом таких математических пакетов, как, к примеру, Mathematica. Без сомнения, эта программа может стать хорошей подмогой для школьников и студентов младших курсов при решении небольших задач по алгебре, геометрии, анализу, статистике, физике и другим дисциплинам, требующим математические расчеты.

Инсталяционный пакет весит всего 18 МБ (на данный момент доступна 4 версия программы), быстро устанавливается и готов к работе сразу же после установки. Кстати, после завершения установки, выскачело окно с просьбой обновить DirectX. Его я, и правда, не обновлял очень давно. Я так понимаю, последний DirectX нужен для того, что бы программа могла корректно строить графики функций и т.п.

Интерфейс (русского языка нет) схож с Office 2007/2010, правда, с меньшим числом вкладок и кнопок. В программе есть встроенный конвертер  величин, набор формул по алгебре, геометрии, тригонометрии и др., которые можно вставить в документ или построить графики. При решении уравнений программа может выдавать пошаговое описание решения, что будет очень полезным для решения домашних заданий =)

В общем, Microsoft Mathematics мне очень  понравилась, очень жаль, что о ней я узнал только сейчас, раньше она бы мне очень пригодилась. По-крайней мере, здесь все интуитивно понятно, чем в MatLab’е, с которым мне пришлось работать более 3-х лет. Хотя, MatLab — это совсем другая история.

Microsoft Mathematics 4.0
Microsoft Mathematics 4.0
Microsoft Mathematics 4.0

Про формат файлов *.ps

Искал научный материал для написания своей диссертации на англоязычных сайтах. Наткнулся на интересный сайт, где скачал много документов. Т.к. сидел в Ubuntu, то проблем с открытием документов не обнаружил (файлы были с расширением *.ps.tgz , т.е. лежали в архиве). При открытии этих файлов, они автоматически распаковывались и открывалась стандартная программулина для просмотра документов в Ubuntu.

Затем, мне надо было переключиться на Windows 7, и тут возникла проблема: чем открыть-то файл в формате *.ps? (с распаковкой проблем нет, архивы tar свободно понимает WinRAR). Ни одна программа не хотела у меня открывать *.ps. Пришлось гуглить, в итоге что оказалось-то? Формат *.ps — это PostScript, который является языком описания страниц, и используется в основном в издательских системах (для т.н. допечатной подготовки страниц). По своей сути, PostScript является языком управления принтером. Этот язык, разработанный в 1982 году Adobe Systems, очень сильно повлиял в дальнейшем на появление известного всеми формата PDF.

Пришлось искать программы, которые смогут открыть PostScript. Некоторые предлагают использовать для этого Adobe Acrobat Distiller, которая поставляется вместе с Acrobat. Но устанавливать Acrobat, ради того, чтобы прочитать пару документов, я не хотел.

Далее в поисках, набрел на интересный сайт, где была размещена крохотная программа-читалка файлов *.ps (GSview) и движок PostScript (Ghostscript). Сам GSview (последняя версия датируется 2007 годом, но программа прекрасно работает под Windows 7) не будет просто так открывать документы, он всего лишь оповестит, что надо в добавок установить Ghostscript. Когда все необходимое установлено, документы стали открываться на ура!

Программа GSview для просмотра файлов формата PostScript

Про бета-тестирование StarCraft II

Позавчера на мой e-mail пришло письмо, от которого я был очень рад. Обычно если что и приходит на ящик, так это спам вида: «юридические консультации в Москве», «новые ювелирные украшения ждут вас» и т.п. Письмо пришло от компании Blizzard, и было посвящено бета-тестированию игры StarCraft II: Wings of Liberty. В нем сообщалось, что моя кандидатура прошла отбор для участия как раз в том самом бета-тестировании. Еще в том году я подал заявку на участие в тестировании, скачав на компьютер, как для этого и положено, программулину от Blizzard, которая усердно просканировала и собрала все необходимые сведения о моем железе и отправила обратно в Blizzard. Железная составляющая моего ПК не особо-то и впечатляет, ибо покупал я его в далеком 2005 году. Поэтому рассчитывать на то, что я стану тестером, особо не приходилось. У меня в голове мелькала мысль того, что бета-тестеров будут брать людей с более-менее достойными характеристика компьютера. Чего уж там про меня говорить, у которого памяти в ПК всего-то 1 ГБ.

Вчерашнее письмо опровергло все мои прошлые мысли и показало, что даже человек со слабой конфигурацией компьютера может стать счастливым бета-тестером СтарКрафта. Скачал клиент, который потом загрузил 1,9 ГБ файлов для игры, установил ее, запустил. Затем, как обычно (вспомним WoW), ланчер стал загружать много-много обновлений для игры, которые судя по всему, тоже не мало весили, и вот наконец-то чудо! Загорается кнопка «Играть» по которой я без всяких сомнений жму! Ура, запустилась, попросив ввести логин с паролем для доступа в ее недра. Ввожу, жму кнопку «Отправить», игра начинает думать и… вылетает в ошибкой. О горе мне, горе! Пробуем еще раз, второй, третий. Все равно, вылетает с ошибкой.

Вот так, то, что я так давно ждал, оказалось так близко, и в тоже время, так далеко от меня.

Пробуем Windows Live Writer

Сегодня решил загрузить появившиеся обновления для Windows Vista. Вместе с “критическими” обновлениями было предложено установить и службы Windows Live, куда включались программулины Messanger, Киностудия, Фотоальбом, Writer и еще что-то, но это не важно.

Messanger я устанавливать не стал, т.к. старую версию еще давным-давно удалил с компа. Это за рубежом более-менее распространен аналог ICQ, у нас же он как-то явно не прижился. Зато поставил Writer, т.к. он позволяет легко обращаться с блогами. Программа похожа на Semagic, но с более интересным интерфейсом, смахивающим на а-ля Офис 2007, и способна не только работать с популярным ЖЖ, но и с другими распространенными сервисами ведения блогов, в том числе и от Майкрософт.

Пишу эту запись как раз из Windows Live Writer, пока что все нравится. Советую, как минимум попробовать в действии, испытать функционал. Ну, а как в максимуме, использовать как удобное средство для отправки своих записей в блог.

ЗА и ПРОТИВ лицензионной продукции

Решил найти ответы на два вопроса, которые изложены ниже. Некоторые ответы окажутся надуманными, однако и они уместны в данном контексте.
Если спросите меня, как я отношусь к пиратской продукции, то отвечу одним словом — негативно.

Всегда ставьте себя на чужое место: вы программист, который полгода парился над над своей программой, которая, по его убеждению, должна принести пользу людям. Но за свои труды, вы, естественно (если не альтруист, конечно), решили брать деньги, скажем, 20$ за одну копию программы. Все бы ничего, но в один прекрасный день вы видите, что на каком-то варезном сайте лежит ваша программа, а вместе с ней и кряк. А рядом еще подписано — скачено 4785 раз. Это скольки денег вы лишились? Пусть даже из 4785 заплатят вам 10%, но и этого будет достаточно. Вы чувствуете себя разбитым и обдуренным. Вас просто использовали. Зато кто-то уже пользуется вашей программой, и даже не задумается над тем, каким трудом и потом она была сделана.

В общем, моя позиция такая: за простые программы (вроде, пивной бокал для iPhone) разработчики денег брать не должны, за сложные программы — естественно, выложи энную сумму.

Итак…

Почему я покупаю лицензионные игровые диски?

1) Это легально;
2) Хочу заплатить за труд разработчика и издателя;
3) Качество игры (стабильная работа, нет вылетов и т.п.);
4) Локализация с достойным переводом;
5) Есть Возможность без проблем устанавливать официальные патчи;
6) Есть Возможность играть в онлайн;
7) Всегда можно рассчитывать на техническую поддержку;
8) Можно принять участие в различных акциях, конкурсах;
9) Различные бонусы на дисках и в упаковке;
10) Красивое оформление, упаковка;
11) Мне противно покупать пиратскую продукцию;
12) Я не ребенок, чтобы брать всю эту пиратскую хрень;
13) Пиратская продукция губит ПК-рынок;
14) Покупать легальную продукцию просто приятно.

Почему я покупаю пиратские игровые диски?

1) Меня мучает цена вопроса;
2) Не уважаю наших издателей;
3) Пиратские диски можно взять на прокат;
4) Мне все равно, кому отдавать свои деньги;
5) Не хочу переплачивать лишние деньги;
6) Качество продукции такое же; либо если даже хуже, то меня вполне устраивает;
7) Некоторые лицензионные диски требуют активации через интернет, который есть не у всех;
8) Поздний выход игр на ПК по сравнению с релизом для консолей;
9) Покупаю игры как демо-версию — купил за 100 руб., поиграл, посмотрел, если говно, то выбросил.