Увод
Са развојем рачунарских мрежа и популаризацијом персоналних рачунара, људи могу лако да пливају на Интернету, да обављају мрежне комуникације или да добијају информације које су им потребне. Поред тога, људи се све више ослањају на мрежно рачунарство. Већина компанија је успоставила напредне мреже за повезивање запослених са њиховим рачунарима и радним станицама. Понекад се важне информације у нашем раду могу добити само путем интернета. Ове информације могу бити на приватној мрежи компаније или на Интернету.
Интернет је јавна мрежа која повезује универзитете, компаније, непрофитне организације, појединце и владине агенције широм света. Са садашњим развојем широкопојасног приступа, нове интернет апликације као што су учење на даљину, видео конференције и онлајн игре постале су све популарније и понекад неопходне. Ове апликације укључују комуникацију од тачке до тачке или од више тачака до више тачака, што се веома разликује од традиционалног једноструког или емитовања.
Године 1988. Диринг је предложио концепт ИП мултицаст. Од тада је ИП мултицаст технологија добила широку пажњу. Мултицаст је између уницаст комуникације и броадцаст комуникације. Може да шаље пакете података које пошиљалац шаље групи прималаца раштрканих у различитим подмрежама.
Основни концепт мултицаст је „група“. Мултицаст група је група прималаца који желе да приме одређени ток података. Ова група нема физичке или географске границе: домаћини у групи могу се налазити било где на Интернету или приватној мрежи. Сваки чвор у групи за вишеструко емитовање назива се члан вишеструке групе.
У многим апликацијама вишеструког преноса може се постићи уникаст, али са повећањем пријемника, број пакета података који треба да се пошаљу линеарно расте. За један пријемник треба послати исти пакет података. На тај начин ће се саобраћај експоненцијално повећати, што ће такође заузети велики пропусни опсег мреже и понекад узроковати загушење мреже. Али мултицаст комуникациони ИП пакет података се шаље само једном. Рутер ће аутоматски проследити сваком пријемнику који се налази на другом сегменту мреже, што може бити најмањи број копија порука које се преносе у мрежи. Дакле, мултицаст је веома потребан.
Кључна карактеристика мултицаст комуникационог модела је да обезбеди индиректно идентификовану мултицаст групу, у којој ни пошиљалац ни прималац не морају да знају специфичну ситуацију друге стране. Пошиљалац треба само да пошаље пакете на вишеструку адресу, а прималац само треба да каже мрежи да жели да прими пакете послате на ову адресу.
За слање корисничких података са једног терминала на други, најпре се мора одредити рута преноса. Различите методе комуникације имају различите начине за одређивање руте. Данас у мрежи постоје углавном следеће методе комуникације:
Уницаст (уницаст: поинттопоинт), метода комуникације од тачке до тачке;
-
Мултицаст (мултицаст: поинттОмултипоинт), метода комуникације од тачке до више тачака;
Цонцаст (конкаст: мултипоинттопоинт), метода комуникације од тачке до тачке;
МултипоинттОмултипоинт, метода комуникације од више тачака до више тачака, промоција вишеструког емитовања;
Емитовање (емитовање: поинттоаллпоинт), начин комуникације на све чворове.
Генерално, услуге које захтевају услуге вишеструког преноса имају велике захтеве за пропусним опсегом и у реалном времену, укључују више корисника и заузимају више ресурса. Због тога је неопходно оптимизовати мултицаст рутирање. Алгоритам вишеструког рутирања је проналажење оптималног мултицаст стабла. Идеалан и ефикасан алгоритам рутирања ће дизајнирати стабло које покрива само чланове групе за вишеструко емитовање и одражава следеће карактеристике: стабло се динамички ажурира са променама чланова групе; минимални чвор треба да се сачува Количина информација о стању; избегава концентрацију саобраћаја на линковима и чворовима; оптимизује рутирање према функцији трошкова.
Мрежни мултицаст
ИП мултицаст (такође позната као мултицаст или мултицаст) технологија је технологија која омогућава једном или више хостова (вишеструких извора) да пошаљу једну ТЦП/ИП мрежну технологију података која се пакује на више хостова (једном, у исто време). Мултицаст, као комуникација од тачке до више тачака, један је од ефикасних начина за уштеду мрежног пропусног опсега. У примени мрежног аудио/видео емитовања, када сигнал једног чвора треба да се пренесе на више чворова, било да се ради о поновљеној комуникацији од тачке до тачке или емитовању, то ће озбиљно изгубити пропусни опсег мреже. Само мултицаст је најбољи избор. Мултицаст омогућава једном или више мултицаст извора да само шаљу пакете података одређеној групи за вишеструко емитовање, а само домаћини који се придруже групи за вишеструко емитовање могу да примају пакете података. Тренутно, ИП мултицаст технологија се широко користи у мрежном аудио/видео емитовању, АОД/ВОД, мрежним видео конференцијама, мултимедијалном образовању на даљину, "пусх" технологији (као што су котације акција, итд.) и играма виртуелне стварности.
Неке апликације имају такав захтев: неки дистрибуирани процеси морају да раде заједно у групи, а процеси у групи обично шаљу поруке свим осталим члановима. Односно, постоји такав метод који може слати поруке неким јасно дефинисаним групама. Иако је број чланова ових група велики, он је мали у поређењу са величином целе мреже. Слање поруке таквој групи назива се мултицаст, или скраћено мултицаст.
1. ИП вишеструка адреса и вишеструка група
ИП мултицаст комуникација мора зависити од ИП мултицаст адресе. У ИПв4, то је ИП адреса класе Д у распону од 224.0.0.0 до 239.255.255.255 и подељена је на три типа: локална веза мултикаст адреса, резервисана мултицаст адреса и мултицаст адреса ауторитета управљања. Међу њима, опсег вишеструких адреса локалне везе је 224.0.0.0~224.0.0.255, који је резервисан за протоколе рутирања и друге сврхе. Рутер не прослеђује ИП пакете који припадају овом опсегу; резервисана мултицаст адреса је 224.0.1.0~ 238.255.255.255, која се може користити на глобалном нивоу (као што је Интернет) или мрежним протоколима; мултицаст адреса органа управљања је 239.0.0.0~239.255.255.255, која се може користити унутар организације. Слично је приватној ИП адреси и не може се користити на Интернету. Може бити рестриктивније. Домет емитовања.
Сви домаћини који користе исту ИП мултицаст адресу за примање вишеструких пакета формирају групу домаћина, такође познату као група за вишеструко слање. Чланство у групи за вишеструко емитовање се мења у било ком тренутку. Домаћин се може придружити или напустити групу за вишеструко емитовање у било ком тренутку. Број чланова мултицаст групе и географска локација такође нису ограничени. Домаћин такође може припадати неколико вишеструких група. . Поред тога, домаћини који не припадају одређеној групи за вишеструко слање такође могу да шаљу пакете података у групу за вишеструко емитовање.
2. Хардверска подршка за ИП мултицаст технологију
Да би се реализовала ИП мултицаст комуникација, рутери, чворишта, свичеви и хостови између мултицаст извора и пријемника морају сви подржавати ИП мултицаст. Тренутно, ИП мултицаст технологија је широко подржана од стране произвођача хардвера и софтвера.
(1) Домаћин
Платформе које подржавају ИП мултицаст комуникацију укључују ВиндовсЦЕ2.1, Виндовс95, Виндовс98, ВиндовсНТ4 и Виндовс2000, итд. Домаћини који користе ове оперативне системе могу да обављају ИП комуникацију вишеструког емитовања. Поред тога, скоро све новопроизведене мрежне картице такође пружају подршку за ИП мултицаст.
(2) Чворишта и прекидачи
Тренутно, већина чворишта и прекидача једноставно третирају вишеструке податке као емитовање за слање и примање, али неки средњи и врхунски свичеви пружају више ИП адреса. Подршка за емитовање. На пример, 802.1п или ИГМП мултицаст функција филтрирања може бити омогућена на 3ЦОМСуперСтацк3Свитх3300 прекидачу за прослеђивање мултицаст пакета само за портове који су детектовали ИГМП пакете.
(3) Рутер
Мултицаст комуникација захтева да сви рутери између вишеструког изворног чвора и одредишног чвора морају да обезбеде подршку за протокол за управљање Интернет групама (ИГМП), мултицаст протокол за рутирање (као што је ПИМ, ДВМРП, итд.).
Када домаћин жели да се придружи мултицаст групи, он ће послати ИГМП поруку „Извештај о чланству домаћина“ да обавести рутер за вишеструко слање. Када мултицаст рутер прими податке послате тој мултицаст групи, проследиће их свим мултицаст хостовима. Мултицаст рутер ће такође периодично слати ИГМП поруку „упит за члана домаћина“ да би из подмреже упитао вишеструки хост. Ако установи да група за вишеструко емитовање нема чланова, престаће да прослеђује податке вишеструке групе. Поред тога, када хост који подржава ИГМПв2 (као што је Виндовс 98/2000 рачунар) изађе из групе за вишеструко слање, он ће такође послати ИГМП поруку „напусти групу“ рутеру како би обавестио рутер да престане да прослеђује податке вишекаст групе. Али тек када сви хостови у подмрежи напусте групу за вишеструко емитовање, рутер ће престати да прослеђује податке вишекастне групе у подмрежу.
Користећи мултицаст протокол рутирања, рутер може успоставити табелу мултицаст рутирања од вишеструког изворног чвора до свих одредишних чворова, тако да реализује прослеђивање мултицаст пакета података између подмрежа. На пример, ПИМ (Протоцол Индепендент Мултицаст) је мултицаст протокол за рутирање, који има два типа: ретки режим и густи режим. Узимајући Цисцо2621 рутер као пример, основна подешавања за омогућавање функције ИП мултицаст прослеђивања су следећа:
ц2621(цонфиг)#ипмултицаст-роутинг омогућава ИП мултицаст како би рутер постао мултицаст рутер
ц2621(цонфиг)#интф0/0Конфигуришите Фаст Етхернет порт 0
ц2621(цонфиг-иф)#иппимденсе-моде (или спарсе-моде) покреће ПИМ и истовремено активира ИГМП протокол
ц2621(цонфиг-иф)#интф0/1 Конфигуришите Фаст Етхернет порт 1
ц2621(цонфиг-иф)#иппимденсе-моде (или ретки-режим)
Метод програмирања
У практичним применама, програмери обично морају сами да компајлирају мрежне апликације ниског нивоа да би реализовали комуникацију ниског нивоа на Интернету, као што је специфична реализација функције ИП мултицаст комуникације. Програмирање мрежних апликација ниског нивоа обично захтева помоћ програмских интерфејса за комуникацију мреже података, а интерфејси за мрежно програмирање који се пружају у различитим оперативним системима су различити. На пример, интерфејс за мрежно програмирање у окружењу Мицрософт Виндовс је Виндовс Соцкет (ВиндовсСоцкет). , скраћено Винсоцк).
Винсоцк обезбеђује интерфејсе за програмирање под различитим комуникационим протоколима укључујући ТЦП/ИП и ИПКС. Различите верзије Виндовс-а подржавају различите верзије Винсоцк-а. Раније верзије као што је Виндовс 95 подржавају само програмирање под Винсоцк 1.1 (16-битни) (можете инсталирати повезане софтверске пакете за подршку Винсоцк 2.0), док Виндовс 98 и Виндовс НТ 4.0, Виндовс2000 директно подржава Винсоцк2.0 (32-бит). Винсоцк 2.0 је проширење Винсоцк 1.1. Поред тога што је компатибилан са Винсоцк 1.1 АПИ-јем, он такође дефинише скуп АПИ-ја независних од протокола који могу да подрже ИП мултицаст.
Општи кораци коришћења Винсоцк2.0 за реализацију ИП мултицаст су следећи:
1. Иницијализујте Винсоцк ресурсе
Пре употребе Винсоцк-а, морате позвати функцију ВСАСтартуп() да бисте иницијализовали ВиндовсСоцкетсДЛЛ. Омогућава апликацији или ДЛЛ-у да наведе верзију коју захтева ВиндовсСоцкетсАПИ.
2. Направите утичницу
Позовите функцију ВСАСоцкет() да бисте креирали утичницу користећи УДП протокол, који је почетни сокет за придруживање групи за вишеструко емитовање, а каснији подаци се шаљу и примају у овој утичници на вези. За ИП мултицаст комуникацију, параметар двФлагс се може подесити на збир битова ВСА_ФЛАГ_МУЛТИПОИНТ_Ц_ЛЕАФ, ВСА_ФЛАГ_МУЛТИПОИНТ_Д_ЛЕАФ и ВСА_ФЛАГ_ОВЕРЛАППЕД, што указује да је ИП мултицаст комуникација „без корена“ на контролном нивоу и нивоу података, и да се могу додати само листови чворови било коме од њих. Група за вишеструко емитовање, а подаци послати из лисног чвора биће пренети сваком лисном чвору (укључујући њега самог); креирана утичница има својства преклапања.
3. Подесите опције утичнице
Позовите функцију сетсоцкопт() да бисте подесили опцију СО_РЕУСЕАДДР за сокет како бисте омогућили да сокет буде везан за адресу која је већ у употреби.
4. Вежите утичницу
Позовите функцију бинд() да повежете сокет, тако да повежете креирану утичницу са локалном адресом и локалним портом. За мултицаст комуникацију, исти порт се обично користи за слање и пријем података.
5. Подесите режим мултицаст утичнице
Командни код СИО_МУЛТИЦАСТ_ЛООП функције ВСАИоцтл() се користи да дозволи или забрани да ли се комуникациони саобраћај послат током вишеструке комуникације такође може примити на истој утичници (односно, вишеструки повратак). Вреди напоменути да је у Виндовс95/98/НТ4 подразумевано дозвољавање вишеструког враћања, али не можете поставити забрану, иначе ће доћи до грешке; само у Виндовс 2000 и новијим, можете подесити дозволи/забрани вишеструки повратак.
Командни код СИО_МУЛТИЦАСТ_СЦОПЕ функције ВСАИоцтл() се користи за подешавање опсега мултицаст пропагације, односно времена живота, ТТЛ. Кад год мултицаст рутер проследи вишеструки пакет података, ТТЛ вредност у пакету података ће се смањити за 1. Ако се ТТЛ пакета података смањи на 0, рутер ће одбацити пакет података. Која је вредност ТТЛ-а, кроз колико мултицаст рутера највише могу проћи мултицаст подаци. На пример, ако је ТТЛ вредност 0, мултицаст се може ширити само између више утичница локалног хоста, али не може да се шири до „мрежног кабла“; ако је ТТЛ вредност 1 (подразумевана вредност), мултицаст подаци наиђу на први А рутер ће бити "немилосрдно" одбачен од стране њега и неће му бити дозвољено да се преноси ван локалне мреже, то јест, само чланови вишеструке групе у иста мрежа може да прима вишеструке податке.
У Ц#, општа инстанца проксија (који се односи на прокси може да позове само један метод) је подразумевано постављен на објекат класе Делегате, тако да се кључна реч делегате обично користи за дефинисање проксија, а оператор нев се користи за креирање проксија инстанце , А затим користите методе и својства класе Делегат за управљање инстанцом проксија. Класа МултицастДелегате се користи за подршку више агената, а листа позива може имати агенте са више метода.
Више агената се односи на групу агената који чине скуп. Објекат класе МутицастДелегате управља скупом агената и користи овај скуп агената за извршавање више метода. Ова функција се зове мултицаст.