Артифакт на води

У потпису ове слике стоји "Овде је био Човек".

 

 


 

 

 

Пут пакета - силни фрејм хедери

Свака технологија и протокол имају свој хедер. Па како их онда све спакујемо и колики је њихов пут?

 

 

Диајграм 1-1 Репрезентација OSI модела
(слика је у друштвеној својини)
 
И на српском: 

Ниво Подаци-Датаграм
Апликација Подаци
Презентација Подаци
Сесија Подаци
Транспорт Сегмент (TCP, UDP)
Мрежа Пакет (IP)
Веза Фрејм (ethernet, framerelay)
Физички ниво Бит
                                 Табела 1 

Када се подаци "енкапсулирају" у нивоу транспорта, тај датаграм постаје "сегмент". Када сегменту додамо IP хедер, он постаје пакет. Пакету се додају различити хедери за одговарајући линк: Етернет, Серијски (PPP), Frame Relay, Token Ring... 

 

 

 

Дијаграм 2-1

 

Следећи дијаграм резимира процес промене хедера у функцији линка.

 

 


 

Дијаграм 2-2 

 

Хедер нивoа 2 (линк) могу да мењају само рутери, то јест уређаји нивоа 3 (мрежа). Дакле хедер фрејма је увек нови при сваком скоку (прелазу из једне ИП мреже у другу, преко рутера) - за потсетник о функцији рутера прочитајте мој чланак овде.

Шта се то мења?

Из једног boradcast домена у други (промена ИП мреже) увек се мењају MAC адресе у новонасталом фрејму и ако је то потребно, наравно сама форма фрејма (на пр. из Етернета у серијски фрејм за PPP).

У дијграму 2-2, кораци преласка фрејма су следећи:

 

Корак Акција MAC Изв. MAC Дест.
1) Хуб само копира Извор Роутер1
2) Свич шаље даље Извор Роутер1
3) Промена фрејма Рутер1 Рутер2
4) Промена фрејма Рутер2 Дестинација

 

Ово је логично, али треба подвући да ниједан уређај не дира ИП адресе у хедеру пакета.

Dia - векторски дијаграми под Линуксом (и више)

Како наслов каже, овај програм служи превасходно за векторске дијаграме. Клон Мајкрософтовог Visio, Dia је, по мени, један од малих бисера слободног софтвера без кога је у процесу концепције пројекта све много теже.

 

Поред ординарног "цртања" шема, вредност овог програма такође је значајна за оне програмере који користе UML  у олакшавању креације процеса, актора, класа...

 

Дуги низ година сам се питао како то да нико не направи "порт" одличних Cisco стенцила (векторски нацртани симболи) за овај програм. Исти су ме служили за црање мрежних дијаграма, али сам за то био приморан да користим MS Visio.

 

Тај порт је могуће урађен сад већ давно, али сам ја тек данас имао по први пут прилику да то откријем и тестирам у креирању пар дијаграма за моје текстове.

 

Обрадовала ме је чињеница да је велика већина симбола које сам користио у Visiu присутна и у Dia, а и само прављење шема је врло лако (у оба програма).

 

За моје потребе, не могу више тражити. Срце ми је пуно и дајем једно одличан 5.

Субјективно? Да.

Прецењено? Можда, али ствар завршава посао.

Оцените сами. 

 

Врсте рутирања и протоколи

У почетку, рутери су се ослањали искључиво на статичку конфигурацију администратора. Свака мрежа се уносила ручно и било која промена у тополошкој структури мреже изискивала је накнадне операције од стране администратора. Данас један BGP рутер може имати и преко 100 000 Интернет мрежа (путања) у својој бази.


Више него очигледна потреба да се аутоматизује процес конфигурације рутера уродила је ставарањем немалог броја протокола за динамичко рутирање. Како би исти били јаснији, погледајмо у пар речи статичко рутирање.


Статичко рутирање


Заиста, са данашњим мрежама се не може без динамичких протокола, притом никако не треба потценити статичко рутирање које је још увек присутно и користи се у многе сврхе. Један од примера употребе јесте конфигурација везе која излази из домена наше одговорности. Често је то линија која везује мрежу једне фирме са Интернет провајдером.


На дијаграму 1-1, интерни рутер има три познате мреже статички исконфигурисане, као и руту (рутер) по дифолту за све дестинације (мреже) којима су пакети упућени, а за које он не зна.

 

 

 

Дијаграм 1-1


Дакле, у овом примеру, рутер RTR D би имао у својој табели:

  1. Локалну мрежу 1,

  2. Локалну мрежу 2,

  3. Мрежу преко које је везан за ивични рутер, и

  4. Путању по дифолту, чиме ивични рутер RTR GW постаје default gateway предузећа.


Динамичко рутирање


Оног момента када се рутер исконфигурише, протол рутирања аутоматски контролише све информације везане за стање мреже и околне рутере.


Заправо, исти протокол рутурања омогућава скупу рутера да дели међу собом информације о мрежи и да нај тај начин, за администратора транспаренто, сви одржавју стање табеле за рутирање увек у току.


Врсте протокола за рутирање


Постоје две велике врсте протокола за рутирање: Интерни и Екстерни.


Оно што их разликује, јесте поље њихове употребе. Једни се користе унутар “Аутономних Система”, а други између “Аутономних Система”.


Аутономни систем је скуп мрежа под надлежношћу једног административног тела. На пример скуп мрежа једног Интернет сервис провајдера сачињавају један аутономни систем. Велика предузећа, организације или оператори (фиксне и мобилне телефоније) такође имају своје аутономне системе.


На дијаграму 2-1, представљен је један аутономни систем. Један облачић представља скуп мрежних уређаја у чије детаље не улазимо (и не показујемо). 


 


 

Дијаграм 2-1 Пример једног аутономног система


На дијаграму 2-2, представљена су поља акције “интерних” IGP (Interior Gateway Protol) и “екстерних” EGP (Exterior Gateway Protocol) протокола рутирања.

 

 

Дијаграм 2-2 

 


IGP – Interior Gateway Protocol


Из последње схеме је јасно је да интерни протоколи заузимају место мањих мрежа. Ови протоколи су такође подељени у подврсте у функцији њихових алгоритама.


  • RIP и Cisco IGRP су протоколи вектора дистанце (vector distance)

  • OSPF и IS-IS су протоколи стања везе (link state)

  • Cisco EIGRP je хибридни протокол (вектор дистанце + стање везе)


EGP – Exterior Gateway Protocol


  • BGPv4 je протокол Интернета. Све велике организације које су везане са више линкова за Интернет имају на “ивицама” BGP рутере.

 

Толико о подели пороткола. Свако питање је добро питање. Уколико их имате, без устручавања молим. Osmeh

Основи рутирања

У овом тексту, говорим у најкраћим цртама о рутерима и рутирању. Неколико речи и дијаграма о уређају рутер.


Стуб (чвор) носилац Интернета, елемент који спаја IP мреже ( 3. нивоа у OSI моделу), има две основне функције:

  • Пронаћи оптималну путању за дати IP пакет

  • Комутирати пакет с једног интерфејса на други и отпремити га ка његовој дестинацији


У дијаграму 1-1, приказана је фиктивна мрежа која нам служи као пример. Овде видимо само два крајња уређаја, рачунара који шаљу и примају пакете с информацијама корисника (ниво апликације).

 

 

Дијаграм 1-1

 

Пакет емитован са уређаја X, упућен је уређају Y. Зауставимо се на рутеру R.

 

 

Дијаграм 1-2


IP Пакет у свом зачељу (header) носи адресу пошиљаоца и адресу дестинације, у овом примеру 15.0.0.1 и 160.22.0.1, респективно. Сваки прелаз од мреже до мреже је скок (hop) преко рутера.

Рутер мора пронаћи у својој табели  мрежу дестинације и интерфејс (мрежну карту) на који ће проследити примљени пакет. На табели 2-1 је пример упрошћене табеле за рутирање.

  
Мрежа Интерфејс
150.60.40.0 Serial S0
180.40.20.0 Serial S1
152.33.0.0 Serial S2
16.0.0.0 Serial S2
15.0.0.0 Serial S2
160.22.0.0 Serial S3
160.44.0.0 Serial S3
                Табела 2-1 
 
Мрежа којој дестинација припада је 160.22.0.0. У табели за рутирање ова мрежа је асоцирана са интерфејсом Serial S3. Први корак рутирања је завршен!
 
У другом кораку рутер прави нови "кадар" (data link frame) са новом  MAC адреса дестинације (MAC мрежне карте рутера М са заједничког сегмента). Овако упакован пакет је потом послат физички на линију (преко интерфејса Serial S3). То је други и последњи корак рутирања пакета.
 
У следећем чланку, више о типовима рутирања и о протоколима рутирања. 

Пингвин у земљи великих мрежа

Када се помену озбиљне мреже, мисли се на Cisco Systems, Juniper, Nortel...

Наведене фирме имају велики број својих уређаја уско специјализованих за мреже. Сваки од уређаја има свој оперативни систем, попут Cisco IOS-a или JUNOS-a. 

Истина је да поменути лидери нису без разлога најбољи у ономе што производе и Cisco с правом каже да нема пакета који путује по Интернету, а да није прошао кроз Cisco уређај. Велики број стандарда и протокола у светској мрежи долази управо из креативног рада инжењера ове куће.

Нажалост, све софтверске имплементације наведених фирми је у затвореној, неслободној форми.

Што се рутирања тиче, слободан софтвер, на срећу, има свог тркача! Ради се о пакету демона (процес сервера) који су уједињени под именом quagga-0.98.6 и трчe на БСД и Линукс платформама.  

Oвај пројекат је незванични наставак познатког zebra пакета, који је стао у еволуцији пре пар година. Главни програмер, тј. шеф пројекта је Куниширо Ишигуро.

Уједињени су сви најбитнији протоколи за динамичко рутирање, отвореног стандарда:

 

  • RIP (верзије 1 и 2)
  • OSPF (вер. 3)
  • IS-IS
  • BGP (вер.4)

 

Сви протоколи подржавају IPv6, или имају верзију која има ту подршку (RIPng).

Кроз следеће текстове поделићу са вама моје утиске и оцене из коришћења и поређења слободног софтвера са решењнима "Великих".

На свакој реци по неки град

Ова сличица је ту као освежење, јер је и мој блог заслужио викенд.

 

 

 

 

 

dhclient: недовршена посла, или о нелогичним инструкцијама у скрипти

Ако имате Линукс на лаптопу, или било којој машини која мења место, овај текст може бити од користи.


Прецизније, уколико користите вашу Линукс машину бар у два различита мрежна окружења, где су IP адресе додељене на два различита начина, динамички и статички, шансе су да ћете се суочити са описаним проблемом.


Претпоставимо да у мрежи А немате DHCP сервер. Стога сте статички исконфигурисали вашу мрежну карту. Један од услова да изађете на Интернет јесте да у конфигурацији имате и адресу рутера (default gateway) који вас везује за Интернет.


У мрежи Б желите да преузмете IP адресу динамички и у ту сврху највероватније користите dhclient, замену dhcpcd-а.


Сјајно, ради се о елегантној еволуцији старијег програма. Нови клијент, dhclient, је лепо осмишљен јер је програмски део подељен у два дела: сам бинарни фајл dhclient (садржи константи део протокола) и скрипте dhclient-script. То значи добра портабилност.


Одлично. Само што у наведеном контексту, без додавања или одузимања линија, ствар не ради.


Наиме, динамичка конфигурација се лепо распита за IP адресу ваше мрежне карте, узме и адресу(е) DNS сервера, али заборави на адресу рутера.


Ех да, уколико постоји статичка конфигурација рутера (сценарио А), скрипта преузме све податке од DHCP сервера осим те једне адресе преко које шаљете све ваше пакете у свет.


Зашто баш та адреса GATEWAY=N.N.N.N, статички подешена једнако као и друге информације, представља проблем скрипти да динамички преузме нову адресу рутера?


Као прво краткорочно решење, користите команду: route add default gateway n.n.n.n

n.n.n.n стоји за IP адресу рутера (пример: 10.0.0.254).


Друго решење, поставите DHCP сервер.


За информацију, старији клијент dhcpcd је функционисао коректно: када се узима динамичка конфигурација, СВЕ информације из статичке конфигурације картице (ниво мреже) се игноришу.

Коју Линукс дистрибуцију изабрати?

Fire in the hole !


Ако сте већ негде наишли на дискусију о питању са наслова, на неком од Интернет форума, онда сте вероватно упознати и са изразом „рат религија”.


За многе је избор дистрибуције много више од ординарног питања укуса. Дистрибуција је све чешће једно важно опредељење, знак препознавања, карта у одвојено друштво, па чак и одраз личног поимања етике и морала.


За оне који нису из света Линукса, можда је изјава наизглед смела и претерана, написаћу пар редова о овом феномену. Почео бих са истицањем једне карактеристике дотичног система, а то је флексибилност. Та битна врлина је један од услова за разноликост избора коју данас Линукс ужива.

 

Други пут више о осталим детаљима који чине Линукс.

 

Елем, захваљујући флексибилности ГНУ/Линукса, од почетка је било могуће развијати било који од његових аспеката; то дозвољава сама структура, портаблисност, могућност коришћења постојећег, додавање новог... Као резултат, поред тога што је најподржанији систем што се хардвера тиче (од ручног сата до кластера сервера) ГНУ/Линукс се примењује у најразличитијим доменима: у сврхе медицине, финансија, едукације, одбране...


У ужем смислу, разлике у дистрибуцијама се могу наћи у њиховој примени: за сервере, за искључиву примену у мрежном окружењу, за сигурност, као алат за анализу компромитованог система, или једноставно мултимедијално окружење где је акценат на апликацијама за третирање слике, звука, итд.


Дистрибуције се такође разликују по начину инсталације програма: од тоталне корак-по-корак компилације сваке библиотеке, алата и језгра, преко скупова датотека органитованих у пакете, који постоје у неколико формата и инсталирају се са ЦД-а или преко Интернета.


Такође, различите су политике у погледу избора верзије програма (степен стабилности, истестираности).


Пуно је ставова, и то у свим бојама, што се тиче неслободног, затвореног софтверу у дистрибуцији. Углавном се ради о компромису који диктира скалу између система који подржава сав хардвер и система који је потпуно слободан (у смислу ГПЛ лиценце) али мање plug 'n play. Најфлагрантнији пример (и проблем) јесу затворени драјвери конструктора.

Неке дистрибуције искључују сваки нелегалан/полулегалан софтвер (кодеци за читање ДВДа или додаци за читање МП3 фајлова).


Добро, то смо разумели, Линукс систем се пакује на разне начине за свакога! Па, има ли одговора на питање из наслова? Заиста, ако се вратимо наслову „коју дистрибуцију изабрати?”, питање које сам овде начео мотивисан захтевом будућег линуксовца, мислим да је јасно да кратког и прецизног одговора нема.


Ако желите да откријете много више о дистрибуцијама како би направили ваљани избор, можете посетити сајт http://distrowatch.com/. Следећи корак је тестирање оних дистрибуција које вам се чине одговарајућим. Ту науке нема, свака дистрибуција има нешто своје и мора се одвојити време за пробу.

 

Значи ништа од савета?

 

Обзиром да сам и сâм пристрасан, не усуђујем се да навијам за „моје” дистрибуције. Бар не у овом контексту. ;) Уместо тога, навешћу две врло популарне дистрибуције за широку употребу. Уосталом, зашто не пробати нешто што одговара великом броју корисника?


Две дистрибуције које долазе из различитих светова, врло у моди, су Федора и Убунту.

 

Укратко, Убунту је десктоп за крајњег корисника и потомак је Debian-a. Уколико сте почетник и желите да све функционише из прве инсталације, обавезно пробајте ову дистрибуцију. Будите без бриге ако долазите из света Мајкросфот - прелаз нећете осетити. (Хм, а можда баш желите  нови осећај?)

 

Осетљиви сте на проблематику слободног софтвера, вољни сте да учите и прогресивно уђете у свет Линукса, пробајте Федору. Осећај у коришћењу и администрацији је приближан ономе како се то некад радило. RedHat је његов тата. Сад би један другар додао редхет је тата. :)


Уколико се не слажете са мојим текстом или желите да додате нешто, не будите шкрти на коментарима. :) Причајмо о дистрибуцијама!

 

 

Нова категорија : Wallpapers

Гордон Фрименов коментар ми је дао идеју да направим нову категорију и тако поделим са вама две занимљиве десктоп позадине.

 


 

 

64k демо убио DOSEMU (FREEDOS image)

С пуно оптимизма, пустио сам демo (чистокрван асемблер, више о томе овде) да трчи на DOSEMU, емулатору најоптимизованијег оперативног система који је MS икада написао ;-> (хумор - без буђавог парадајза молим).

 Ево резултата:


 

Евиденто је да се од оваквог типа програма, који је уско оптимизован за један систем, не може много шта очекивати под систем емулатором. Дакле да би то полетело мора се прибећи емулатору хардверског окружења (виртуелна машина).

Питам се да ли је неко из Демо Сцене икада пробао nasm или неки други асемеблер за Линукс? Апропо асемблера, погледајте овај линк  http://webster.cs.ucr.edu/AsmTools/WhichAsm.html за доста детаљан преглед (најбољег избора) асемблера за различите оперативне системе.

ПС. Похвале екипи FREEDOS-а и свим програмерима слободног софтвера.

Дневни десктоп са машине за свакодневни рад