LINUX-BG   Адрес : http://www.linux-bg.org
Компилация на Linux-ядрото, част IV: Networking options
От: Цветомир Стоянов
Публикувана на: 30-05-2002
Адрес на статията: http://www.linux-bg.org/cgi-bin/y/index.pl?page=article&id=advices&key=340913877

Networking options

Тази секция от конфигурацията на кернела е една от най-големите. Оттук се настройват мрежовите възможности на вашата система. Ако сте начинаещ потребител, най-добре е да оставите настройките по подразбиране - те са определени така, че да нямате проблеми с използването на най-масовите мрежови протоколи. Ако сте напреднал потребител, тогава сигурно много от нещата описани тук са ви известни и добре познати. Това описание е предназначено за не-толкова-напредналите и любопитни потребители, които искат да се запознаят с мрежовите възможности на линукс кернела. Ако искате да използвате реално някои от тези възможности, добре е да потърсите допълнителна информация и софтуер в Мрежата.

          Packet socket

Оттук може да разрешите на някои програми да комуникират директно с мрежовите ви устройства, без да използват мрежови протоколи.Това е полезно ако използвате "снифери" - програми, които следят мрежовия трафик на най-ниско ниво.

            Packet socket:mmapped IO

Тази опция ускорява директната комуникация с мрежовите устройства

          Netlink device emulation

Създава устройства в директорията /dev за комуникация с мрежовия слой на кернела. Опцията скоро ще бъде премахната, новите кернели използват netlink сокети за тази комуникация.

          Network packet filtering

Тази опция разрешава филтрирането на пакети. Ще ви трябва, ако искате да използвате системата си за firewall, proxy, gatеway т.е. ако ще работи като рутер. Не ви е необходима за обикновен настолен компютър, освен ако не сте параноичен или просто искате да разучите как работи. В някои ситуации малко допълнителна сигурност не е излишна :). Ако я разрешите, трябва допълнително да конфигурирате начина на филтриране в под-секцията "IP: Netfilter Configuration"

          Network packet filtering debugging

Разрешава изкарването на допълителни съобщения, следящи работата на пакетния филтър. Не ви е необходима, освен ако не сте програмист и искате да разберете как работи този филтър.

          Socket filtering

Позволява филтрирането на отделни сокети. Ако опцията е разрешена, в кернела се добавят две нови ioctl системни извиквания, чрез които на даден сокет може да се закачи/откачи допълнителен код, който да следи и контролира данните, преминаващи през сокета. За съжаление засега не се поддържат TCP сокети.

          Unix domain sockets

Едни от най-използваните сокети в линукс. Ще ви трябват, дори и да нямате мрежа. Използват се масово за комуникация между процеси, вървящи на една машина.

          TCP/IP networking

Това е Интернет! И не само - използва се от много програми, дори и да нямате мрежа. Това е задължителна опция. Ще увеличи кернела с 144К, но си струва :)

            IP: milticasting

Позволява на кернела да работи с IP multicast пакети. Това са пакети, които имат специални IP адреси, чрез които може да се адресират едновременно група от компютри. Полезна опция, но за съжаление все още малко рутери могат да рутират multicast трафик. Ако вашият компютър е в локална мрежа можете да я разрешите - ще увеличи кернела с около 2К, но има някои програми за видео и TV разпръскване, които използват multicast. Ако използвате системата за рутер, също ще ви трябва - много протколи за динамично рутиране използват multicast пакети за обмен на рутираща информация.

            IP: advanced routrer

Ако ще използвате системата си за рутер е добре да разреште тази опция - тя ще ви даде достъп до опциите за настройка на професионалните рутиращи възможности на линукс.

              IP: policy routing

Обикновенно рутерите вземат решения за рутиране на пакети на база адреса на получателя на пакета. Чрез тази опция може да се разреши използването и на други критерии при рутирането - адрес на изпращача, полето TOS в IP хедъра и др.

                IP: use netfilter MARK value as routing key

Тази опция ви позволява да използвате специална MARK стойност при рутиране. Такава стойност може да се присвои на някои пакети чрез използване на iptables филтри

                IP: fast network address translation

Позволява на кернела да променя адреса на получателя и изпращача на пакетите, които рутира. Правилата, по които става това могат да се зададат чрез iptables.

                IP: equal cost multipath

Тази опция разрешава в рутиращата таблица към един запис да се присвоят няколко пътя. Така ако пакет трябва да се рутира на базата на този запис, кернела избира по случаен начин един от тези пътища.

              IP: use TOS value as routing key

Позволява при рутиране да се използва стойността на полето TOS в IP хедъра на пакета. Това поле определя "типа на услугата" на пакета - така данни с по-голям приоритет могат да се рутират през по-бързи пътища.

              IP: verbose routing monitoring

Разрешава изкарването на допълнителна информация за рутиращия процес. Полезна опция ако сте параноичен и искате да имате информация за необичайните пакети, преминали през рутера ви :)

              IP: large routing tables

Ако във вашата рутираща таблица ще има повече от 64 записа, добре е да разрешите тази опция. Това ще ускори работата с големи рутиращи таблици.

            IP: kernel level autoconfiguration

Позволява на кернела да използва специални протоколи за автоматично конфигуриране на IP адреса. Тази опция е полезна предимно за бездискови машини, които се конфигурират през мрежа. Друго полезно приложение е за динамично разпределяне на наличните IP адреси в мрежата.

              IP: DHCP support

Широко използван протокол за автоматично конфигуриране на IP адреси. Позволява обмен и на допълнителна конфигурационна информация, както и присвояване на IP адрес за определено време

              IP: BOOTP support

Подобен на DHCP протокол, позволява обмен на допълнтелна конфигурационна информация. Тези два протокла работят на Layer 3 - използват broadcast UDP пакети.

              IP: RARP support

Протокол за автоматично конфигуриране на IP адреси, работещ на Layer 2.

            IP: tunneling

Позволява капсулирането на IP в IP пакети. На пръв поглед - безмислено :). Полезна опция ако искате дадена машина да се мести от мрежа в мрежа, без да си сменя IP адреса, като "виртуално" остава свързана към една мрежа. Намира приложение при свързването на мобилните компютри към интернет.

            IP:GRE tunnels over IP

Позволява капсулирането на произволен протокол в IP. Намира практическо приложение при капсулацията на IPv6 в IPv4 пакети - така може да се изгради IPv6 мрежа, използвайки съществуваща IPv4 мрежа. Предимството на този вид капсулация е че позволява разпространението на multicast пакети през тунела.

              IP: broadcast GRE over IP

Позволява разпространеието на broadcast пакети през тунела. Така с GRE тунели може да се изгради виртуална WAN мрежа, която да се държи като ethernet, но физически да е разпокъсана и да използва интернет за преносна среда.

            IP: multicast routing

Позволява рутирането на multicast пакети. Това са пакети, които имат специалени IP адреси, чрез които могат да се адресират едновременно група от компютри.

              IP: PIM-SM version 1 support

Разрешава поддръжката на версия 1 на PIM. Това е един от най-използваните протокли за динамично multicast рутиране. За да използвате този протокол, се нуждаете и от допълнителен софтуер извън кернела.

              IP: PIM-SM version 2 support

Разрешава поддръжката на версия 2 на PIM протокола.

            IP: ARP daemon support

Разрешава използването на допълнителен, външен ARP демон, който да се грижи за ипзращането/получаването на ARP заявки за адреси, лидпсващи в ARP кеша на кернела. Ако тази опция е включена, в ARP кеша ще се съхраняват до 256 адреса. Препоръчително е тази опцията да не се използва.

            IP: TCP explicit congestion notification support

Позволява на рутера да съобщава на клиентите за претоварвания по мрежата, като вдига ECN флага в някои от пакетите си. Има рутери, които не работят добре с този флаг, затова по добре не го разрешавайте.

            IP: TCP syncookie support

Осигурява някаква защита по време на "SYN flood" атака. Когато машината е под такава атака, TCP стека може да използва специален "SYN cookie" протокол за легитимиране на потрбителите, които могат да осъществяват връзка. Ако разрешите опцията, тази функционалност остава забранена по подразбиране - трябва да я разрешите чрез /proc :

echo 1 > /proc/sys/net/ipv4/tcp_syncookies

след стартирането на машината.

            The IPv6 protocol support

Включва поддръжка за версия 6 на IP протокола. За да използвате реално IPv6, трябва да се снабдите и с последните версии на всички мрежови програми.

            Kernel httpd acceleration

Разрешава вградения в кернела HTTP сървер. Това е ограничен web сървер, който може да изпълнява http заявки, но не може да работи с cgi скриптове. Полезна опция, ако използвате машината за web сървер и искате да експериментирате - това значително ще подобри производителността на сървера. Работата на вградения сървер може да се синхронизира с външен сървер, към които да се пренасочват заявките, които не могат да се обслужат.

          Asynchronous Transfer Mode (ATM)

Разрешава поддръжката за ATM мрежи. За да използвате линукс в такива мрежи, ви трябват допълнителни програми, и разбира се ATM устройства.

            Classical IP over ATM

Позволява капсулация на IP в ATM пакети и поддръжка на ARP протокола за ATM мрежи.

              Do NOT send ICMP if no neighbor

Указва на кернела да не изпраща ICMP пакети за събитието "host unreachable", когато адреса на получателя не е намерен в ATMARP таблицата.

            LAN emulation support (LANE)

Включва код за емулация на еthernet LAN мрежа през ATM мрежа.

              Multi-Protocol over ATM support (MPOA)

Позволява изграждането на виртуални връзки между ATM гранични устройства. Тази опция намира практическо приложение при свързването на два (или повече) рутери през ATM мрежа, като рутирания трафик минава през виртуалната връзка - така се избягва рутирането през ATM рутери.

          802.1 Q VLAN support

Включва поддръжката за този вид виртуални Layer2 ethernet мрежи. Чрез специални тагове преди ethernet хедъра, една физическа ethernet мрежа можа да се раздели на няколко логически мрежи.

          The IPX protocol

Включва поддръжка за IPX протолкола на Novell. Това е протокол, който изпълнява аналогични функции на IP. Използва се и в някои windows мрежи.

            IPX: Full internal IPX network

Позволява кернела да емулира "вътрешна" IPX мрежа. Така ако машината ви е свързана към повече от една IPX мрежа, за другите машини вашия линукс ще представлява отделна мрежа. Полезна опция, ако компютъра ви е някакъв сървер и искате да се вижда по един и същи начин от другите мрежи.

          Appletalk protokol support

Включва поддръжката за фамилията мрежови протоколи на Apple. Това са протоколи, използвани предимно при Macintosh машините. Поддържат се EtherTalk и LocalTalk протоколите, но за да ги използвате се нуждаете от допълнителен софтуер.

          DECnet support

Включва поддръжка за мрежовия протокол на Digital. Не е широко разпространен.

            DECnet: SIOCGIFCONF support

Променя SIOCGIFCONF системното извикване, като добавя поддръжка за DECnet мрежи - това може да наруши работата на някои програми, използващи това системно извикване, така че внимавайте.

            DECnet: router support

Позволява на машината ви да работи като DECnet рутер.

            DECnet: use FWMARK value as routing key

Разрешава използването на FWMARK при рутирането. Такава стойност може да се присвои на някои пакети чрез iptables

          802.1d Ethernet Bridging

Добавя поддръжка за ethernet bridge : прехвърляне на layer 2 пакети между различни мрежови сегменти. Това ви позволява да изградите голяма ethernet мрежа, състояща се от няколко физически отделни сегмента.

          CCITT X.25 packet layer

Подръжка за X25 мрежи. Тази опция включва имплементацията на PLP (Packet Layer Protocol), протокол от високо ниво използван в тези мрежи.

          LAPB Data link driver

Включва поддръжка за LAPB, протокол от ниско ниво използван в X25 мрежите. Повечето X25 карти имат вградена хардуерна поддръжка за този протокол, затова тази опция ви е необходима само ако вашата X25 карта няма такава.

          802.2 LLC

Този протокол позволява да изградите X25 мрежа, използвайки ethernet или token ring за преносна среда.

          Frame diverter

Позволява ви да контролирате целия трафик по мрежата на ниско ниво - дори и пакетите, които не са предназначени за вашата машина. Полезна опция, ако искате да направите transperant proxy (има и други начини за това), ограничение на трафика, и др. - могат да се намерят много полезни приложения :)

          Acorn Econet/AUN protocols

Малко използван, стар и бавен протокол. Може да работи със специални Econet карти, или през Еthernet . Използван е при Acorn компютрите за достъп до файлови и печатни сървери.

            AUN over UDP

Позволява използването на AUN протокола през ethernet, чрез капсулиране в UDP/IP пакети.

            Native Econet

Позволява използването на AUN протокола през оригинални econet мрежови карти.

          WAN router

Дава възможност да направите WAN рутер. Ако имате WAN мрежа, изградена чрез X.25, frame relay или друга подобна преносна среда и не искате да купувате някой скъп WAN рутер, може да си свършите работата с една линукс машина и с тази опция .

          Fast switching

Позволява директен трансфер на данни между мрежовите карти, като се заобикаля голяма част от мрежовия слой на кернела - това води до значително увеличаване на скороста, но за сметка на някои екстри като Packet filtering , които няма да може да използвате.

          Forwarding between high speed interfaces

Позволява директен трансфер между мрежовите карти по време на големи мрежови натоварвания. Това позволява рутера ви да остане работещ, дори когато мрежовия трафик е особенно голям и не може да се обработи от машината ви. Тази опция зависи от хардуера - трябава да се поддържа от мрежовите ви карти.

          IP:Netfilter Configuration

В тази подескция се настройват параметрите на пакетния филтър за IPv4 пакети. За да имате достъп до нея, трябва да сте разрешили опцията "Network packet filtering " в секция "Networking Options".

          Connection tracking

Позволява на кернела да следи зависимостите между пакетите, които преминават през рутера - така могат да се филтрират вички пакети, които принадлежат на дадена връзка. Това е задължителна опция, ако ще използвате някаква форма на NAT(Network Address Translation) - тук влиза и Masquerading, той също е вид NAT. Друго полезно приложение е филтриране на база състояние на връзката - например могат да се отрежат всички tcp пакети, за които няма ESTABLISHED връзка.

            FTP protocol support

Проследяването на FTP връзки е малко по-особенно, затова се нуждае от допълнителен код. Ако ще използвате NAT и искате да имате FTP - разрешете тази опция

            IRC protocol support

Включва поддръжка за DCC протокола на IRC, за клиенти които се намират зад NAT рутер. Това е протокол, който се използва за директна комуникация между два IRC клиента, без трафика да преминава през IRC сървер. Ако ще използвате NAT и IRC - включете опцията.

          Userspace queueing via NETLINK

Позволява на кернела да пренасочва пакети към външни програми

          IP tables support

Това е интерфейс към пакетния филтър, използван в кернелите от серия 2.4. Щом сте стигнали до тук, този интерфейс ще ви трябва - позволява ви да конфигурирате динамично работата на филтъра. Не ви е необходим ако искате за съвместимост да използвате някои от старите интерфейси (ipchains или ipfwadm).

            limit match support

Позволява ви да контролирате скоростта, с която се прилага даден филтър. Полезна опция за защита от DoS (Denial of Service) атаки - например може да ограничите по време пакетите от непознати IP адреси. Друго полезно приложение е за ограничаване на логовете - ако не искате да логвате целия трафик, може да укажете да се логват само определен брой пакети в минута.

            MAC address match support

Позволява ви да филтрирате пакети на базата на техния ethernet адрес.

            netfilter MARK match support

Позволява филтриране на базата на специална MARK стойност, която може да се присвои на някои пакети.

            Multiple port match support

Позволява филтрирането на TCP и UDP пакети на базата на група портове. Ако опцията не е включена, ще можете да филтрирате само за един порт.

            TOS match support

Позволява филтриране на базата на полето TOS (Type of Service ) в IP хедъра на пакета.

            AH/ESP match support

Позволява филтриране на база SPI (Security Parameter Index) - това се специални полета, които осигуряват криптиране и защита на данните, пренасяни с IPSec пакети. IPSec (IP Security protocol) е допълнителен хедър, прикачен към IP хедъра, който може да съдържа AH (Authentication Header) и/или ESP (Encapsulating Security Payload), които се грижат за защитата и криптирането на пакетите. Този механизъм за защита се използва при изгражадането на VPN мрежи, затова ако през вашия рутер ще минава такъв трафик, и искате да го филтрирате - разрешете опцията.

            LENGTH match support

Позволява филтриране на база дължината на пакета.

            TTL match support

Позволява филтриране на база полето TTL (Time To Live) в IP хедъра.

            tcpmss match support

Позволява филтриране на базата на стойноста MSS (Maximum Segment Size) - това е стойност, която се договаря при откриването на една TCP връзка и определя максималната големина на пакетите за тази връзка.

            Connection state match support

Позволява филтриране на пакети на база състояние на връзката - например могат да се филтрират всички TCP пакети с данни, за които няма установена връзка.

            Unclean match support

Позволява откриването на "странни" пакети - за критерии се използват определени полета в хедърите на IP, TCP, UDP и ICMP пакетите.

            Owner match support

Позволява филтрирането на локално генерирани пакети на базата на потребителя, групата, процеса или сесията на източника на пакета

            Packet filtering

Включва в кернела FILTER таблицата, където се съхраняват всички филтри, които могат само да филтрират пакети - нямат право да ги променят. Тази таблица работи с LOCAL_INPUT, LOCAL_OUTPUT и FORWARD веригите.

              REJECT target support

Позволява на даден филтър да укаже изпращането на ICMP съобщение при отхвърлянето на филтриран пакет.

              MIRROR target support

Позволява на даден филтър да укаже филтрираните пакети да се връщат обратно на изпращача.

            Full NAT

Включва в кернела NAT (Network Address Translation) таблицата, където се съхраняват филтрите които могат да променят адресите на изпращача или получателя на пакетите. Таблицата работи с PRE_ROUTING, POST_ROUTING и LOCAL_OUTPUT веригите.

              MASQUERADE target support

Това е вид source NAT - позволява на даден филтър да укаже промяна на адреса на изпращача на филтрираните пакети. Използва се предимно при dialup връзки - когато новия адрес на пакета зависи от текущата dilaup сесия. При прекъсване на връзката, работата на филтъра се спира.

              REDIRECT target support

Това е вид destination NAT - позволява на даден филтър на укаже промяна на адреса на получатля на филтрираните пакети. Новият адрес е един от локалните адреси на рутера - така пакетите се насочват към рутера, вместо да се рутират навън. Тази опция е полезна ако искате да направите transparent proxy.

              Basic SNMP-ALG support

Включва поддръжка за ALG (Application Layer Gateway) за SNMP пакети на устройства, намиращи се зад NAT рутер. Това позволява на рутера да променя както IP адресите на изпращача/получателя, така и IP адресите в самия SNMP пакет. Така една SNMP станция може да работи с устройства, скрити зад NAT рутер, които имат еднакви IP адреси.

            Packet mangling

Включва в кернела MANGLE таблицата. В нея се съхраняват филтрите, които могат да променят самите пакети. Таблицата работи с PRE_ROUTING и LOCAL_OUTPUT веригите.

              TOS target support

Позволява на даден филтър да променя TOS стойноста в IP хедъра на филтрираните пакети.

              MARK target support

Позволява на даден филтър да присвоява специална MARK стойност към филтрираните пакети. Тази стойност може да се използва при рутирането на пакета.

            LOG target support

Позволява да се правят филтри, които записват хедъра на филтрираните пакети в системния лог.

            ULOG target support

Позволява да се правят филтри, които копират филтрираните пакети към външна програма посредством netlink сокети.

            TCPMSS target support

Позволява да се правят филтри, които променят MSS (Maximum Segment Size ) стойноста за TCP връзка.

          ipchains (2.2 - style) support

Вклчва в кернела ipchains интерфеса към пакетния филтър, използван в кернелите от серия 2.2

          ipfwadm (2.0 - style) support

Вклчва в кернела ipfwadm интерфеса към пакетния филтър, използван в кернелите от серия 2.0. Тези две опции ви трябват само за съвместимост - ако имате програми, писани за старите версии на кернела, и искате да ги използвате.

          IPv6: Netfilter Configuration

В тази подсекция се настройват параматрите на пакетния филтър за IPv6 пакети. Те имат същото значение, както и при IPv4 пакетите, затова за повече подробности погледнете подсекцията "IP:Netfilter Configuration".

          QoS and/or fair queueing

В тази подсекция се настройват параметрите на така наречения "scheduler", или разпределител. Когато пакетите вече са рутирани от рутера, т.е. - определен е техния изходен интерфейс и мрежовия адрес на следващия рутер, те се нареждат в една опашка и чакат да бъдат изпратени. Всеки интерфейс си има такава опашка. Ако интерфейса е към бърза мрежа и трафика през него не е голям, пакетите почти не се задържат в опашката - веднага се изпращат. Ако обаче трафика е голям и мрежата е бавна, в опашката могат да се съберат доста пакети. Работата на този разпределител е да реши кои пакети от опашката ще бъдат изпратени първи. Оттук се настройват критериите, по които работи разпределителя.

          QoS and/or fair queueing

Ако забраните тази опция, разпределителя ще използва стандартната логика при работата си: първия пакет, дошъл в опашката ще се изпрати първи към мрежата - FIFO (First In First Out). Ако разрешите опцията, ще може да изберете алтернативни алгоритми на работа. Полезна опция, ако искате да контролирате трафика през даден интерфейс, или да използвате QoS (Quality of Service) - пакети с по-висок приоритет да се обсужват с предимство. Обърнете внимание, че може да използвате комбинации от тези алгоритми, което прави настройката на разпределителя изключително гъвкава.

            CBQ packet scheduler

Разрешава използването на алгоритъма CBQ (Class-Based Queueing). Този алгоритъм разпределя чакащите пакети в дървовидна йерархия, спрямо определени класове. Позволява използването на други алгоритми за управление на различните клонове от дървото. Той е един от най-използваните и гъвкави алгоритми.

            CSZ packet scheduler

Разрешава използването на алгоритъма CSZ (Clark-Shenker-Zhang). Не е толкова гъвкав като CBQ, но е единствения алгоритъм който може да гарантира обсужването на важен трафик в реално време. Той заделя предварително части от пропускателната лента на мрежата за видовете трафик, които трябва да гарантира. Останалата част се разпределя между по-маловажния трафик.

            ATM pseudo-scheduler

Позволява използването на пакетния разпределител за пакети, които преминават през ATM мрежа чрез виртуални връзки.

            The simplest PRIO pseudo-scheduler

Позволява работата на PRIO алгоритъма. Той е подобен на стандартния FIFO алгоритъм, разликата е че дава възможност трафика да се раздели в няколко вътрешни опашки. Разделянето става посредством потребителски филтри. Полезен алгоритъм, ако искате да приоритизирате трафика чрез ваши критерии, независими от полето TOS на IP хедъра.

            RED queue

Позволява използването на RED (Random Early Detection, понякога наричан и Random Early Drop) алгоритъм. Той се грижи опашката никога да не достигне абсолютния си максимум, т.е. да не се напълни. Алгоритъма предсказва кога може да се стигне до препълване и отхърля по случаен начин част от пакетите, за да го предотврати.

            SFQ queue

Позволява използването на SFQ (Stochastic Fairness Queueing) алгоритъм. Този алгоритъм разаделя трафика на отделни потоци, като в повечето случаи един поток се асоциира с една UDP или TCP сесия. SFQ изпраща равномерно пакети от всеки един поток - така се избягва заемането на целия трафик от една TCP сесия. Има най-малко изисквания към системните ресурси.

            TEQL queue

Позволява използването на TEQL (True Link Equalizer) алгоритъм. Чрез него може да направите "load balancing" на трафика си. Той ви позволява да обедините няколко физически интерфейса в един логически, като се грижи за рапределянето на трафика между физическите интерфейси.

            TBF queue

Позволява използването на TBF (Token Bucket Filter) алгоритъм. Чрез него може да направите изкуствено ограничение да трафика в опашката. Може да зададете максимална лимит на трафика, като алгоритъма ще отхвърля всички пакети, когато този лимит се достигне. TBF може да обслужва и кратковременни пикове които надвишават лимита, ако преди тях е имало моменти с малък трафик.

            GRED queue

Позволява използването на GRED (Generic Random Early Detection) алгоритъм. Подобен е на RED алгоритъма, разликата е че предварително разделя трафика в няколко вътрешни опашки на база полето DiffServ от IP хедъра (това поле заема мястото на полето TOS).

            Diffserv field marker

Позволява изплзването на полето DiffServ от IP хедъра при определяне приоритета на пакетите. Това поле заема мястото на полето TOS.

            Ingress Qdisc

Позволява контролирането на влизащия в опашката трфик - може да зададете лимит, над който пакетите няма да се приемат в опашката, а ще бъдат отхвърляни.

            QoS support

Тази опция позволява използването на RSVP (Resource Reservation Protocol) и други подобни протоколи, чрез които може да се резервира част от пропускателната лента на мрежата за определен трафик.

              Rate estimator

Позволява на керенла да определя какъв е моментния трафик на мрежовите устройства. Тази информация се използва от QoS алгоритмите.

            Packet classifier API

Позволява ви да изберете критериите спрямо които може да разделяте пакетите в опашката на различни класове. Това разделяне на класове се използва от CBQ алгоритъма при построяването на дървовидната йерархия.

              TC index classifier

Класифицира пакетите спрямо DiffServ полето в IP хедъра. Когато пакета пристигне в рутера, кернела създава една вътрешна структура, sk_buff. В едно от нейните полета - tc_index, се копира стойноста на DiffServ от IP хедъра. При обработката на пакета, кернела може да промени стойноста на tc_index - т.е. този класификатор работи на база променената стойност, а не оригиналния DiffServ на пакета.

              Routing table based classifier

Пакетите се класифицират спрямо записа в рутиращата таблица, който е бил използван при рутирането им.

              Firewall based classifier

Класифицира пакетите спрямо специална MARK стойност, присвоена от пакетния филтър.

              U32 classifier

Класифицира пакетите спрямо адреса на получателя на пакета.

              Special RSVP classifier

Класифицира IPv4 пакети спрямо ресурса, заделен за тях чрез RSVP (Resource Reservation Protokol) протокола. Чрез този протокол може да се заделят минимална и максимална част от пропускателната лента на мрежата за пакети от определена връзка.

              Special RSVP classifier for IPv6

Класифицира IPv6 пакети спрямо ресурса, заделен за тях чрез RSVP протокола.

              Trafic policing

Позволява ви да ограничавате трафика в дадени клонове от CBQ дървото.

16


<< Компилация на Linux-ядрото, част V: Network device support | Компилация на Linux-ядрото, част III: Parallel port, IDE... >>

Авторите на сайта, както и техните сътрудници запазват авторските права върху собствените си материали публикувани тук, но те са copyleft т.е. могат свободно да бъдат копирани и разпространявани с изискването изрично да се упоменава името на автора, както и да се публикува на видно място, че те са взети от оригиналния им URL-адрес на този сървър (http://www.linux-bg.org). Авторските права на преводните материали принадлежат на техните автори. Ако с публикуването тук на някакъв материал неволно са нарушени нечии права - след констатирането на този факт материалът ще бъде свален.

All trademarks, logos and copyrights mentioned on this site are the property of their respective owners.
Linux is copyright by Linus Torvalds.
© Линукс за българи ЕООД 2007
© Slavei Karadjov 1999 - 2006

All rights reserved.

Изпълнението отне: 0 wallclock secs ( 0.18 usr + 0.00 sys = 0.18 CPU)