» »

Izracun/nastavitev multicast naslova

Izracun/nastavitev multicast naslova

KernelPanic ::

Spostovani!

Nekaj casa nisem delal z mrezami in sem sledeco stvari pozabil. V LAN-u imamo naprimer 20 tablic z klientnim programom ter en PC z serverskim programom. Iz katerekoli tablice posljem v mrezo udp paket, ki ga serverska aplikacija na PCju zazna in aplikaciji na tablici vrne dolocene informacije preko socket-a. Vprasanje:
1) Ali je za te namene uporaben multicast in ce je, kako se izracuna ta adresa iz lokalnega ip naslova, ki ga aplikacija na tablici pridobi programsko?

S spostovanjem,
Marko

reverse0xx0 ::

Živjo,




V tvojem primeru nevem točno zakaj multicast. Amapak očitno uporabljaš UDP tako, da JA(tcp gre lahko samo prek unicasta).

Koncept multicasta:

Imaš 30 različnih streamov podatkov. Seveda ni dobro vseh 30 streamov pošiljati napravam v tvojem primeru tablicam. Zato se naredi več multicast skupin. Stem se tudi optimizira omrežni del. Naprava se joina samo v določeno skupino in dobiva samo podatke, ki so odvisni v kateri grupi je trenutno in ne vsega prometa.V primeru, da želi(tablica) druge podatke bo trenutno groupo zapustila in se bo pridružila drugi skupini(druge informacije). Primer vsakdanje rabe multicasta je iptv.


Ip addresing je po standardu definiran classa D
multicasta grupa zaseda zadnjih 28bitov zato lahko rečemo, da je začetek 224.0.0.0 in konec 239.255.255.255 (naslovni prostor).multicasta ne mores zracunat na podlagi lokalnega ipja. Lahko pa zracunas broadcast naslov,(najvišji ip v subnetu).


LP.

KernelPanic ::

reverse0xx0 je izjavil:

Živjo,




V tvojem primeru nevem točno zakaj multicast. Amapak očitno uporabljaš UDP tako, da JA(tcp gre lahko samo prek unicasta).

Koncept multicasta:

Imaš 30 različnih streamov podatkov. Seveda ni dobro vseh 30 streamov pošiljati napravam v tvojem primeru tablicam. Zato se naredi več multicast skupin. Stem se tudi optimizira omrežni del. Naprava se joina samo v določeno skupino in dobiva samo podatke, ki so odvisni v kateri grupi je trenutno in ne vsega prometa.V primeru, da želi(tablica) druge podatke bo trenutno groupo zapustila in se bo pridružila drugi skupini(druge informacije). Primer vsakdanje rabe multicasta je iptv.


Ip addresing je po standardu definiran classa D
multicasta grupa zaseda zadnjih 28bitov zato lahko rečemo, da je začetek 224.0.0.0 in konec 239.255.255.255 (naslovni prostor).multicasta ne mores zracunat na podlagi lokalnega ipja. Lahko pa zracunas broadcast naslov,(najvišji ip v subnetu).


LP.

Ok, hvala, vendar par stvari se ne razumem:
1) Torej, recimo da imamo v mrezi (192.168.0.1-192.168.0.255) 10 tablic z kliento aplikacijo ter nek racunalnik (naprimer Raspberry Pi), na katerem tece moja serverska komunikacijska aplikacija. Tablice imajo staticne naslove (192.168.0.1 - 192.168.0.10), prav tako ima raspberry pi staticni naslov (192.168.0.100). Ko naprimer vzamem v roko tablico z staticnim IP naslovom 192.168.0.3 (primer), pozenem svoj klientni program, ki pa lokalno (v sqlite bazi) ne prebere nastavitev (ali jih sploh ni, ali so napacne, sedaj ni pomemnbno, pomembno je, da ta tablica ne dobi pravih informacij o infrastrukturi softwerskega sistema) in zato poslje multicast datagram na LAN omrezje 192.168.0.x. Serverski program, ki tece na raspberry Pi, zazna mojo komando in nazaj tablici poslje paket naprimer z login informacijami na mysql server. Kako z Qt izracunam multicast adreso?

Invictus ::

A ni lažje imeti na serverju IPje vseh tablic in potem do vsake tablice odpreti svojo TCP povezavo?

Saj se aplikacija najbrž prijavi na server da je živa ?!?!
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

KernelPanic ::

Invictus je izjavil:

A ni lažje imeti na serverju IPje vseh tablic in potem do vsake tablice odpreti svojo TCP povezavo?

Saj se aplikacija najbrž prijavi na server da je živa ?!?!

Da, res je :D. Ampak tole odkrivanje bi reeees rad implementiral, da ima stranka z klientnim programom cim manj dela z konfiguracijo!

Invictus ::

V vsakem primeru moraš klienta nastaviti na kateri server naj pošilja.

UDP paketki so kje blokirani v omrežju ...

Da ne govorimo o problemu, če ima stranka več subnetov ...
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

KernelPanic ::

Invictus je izjavil:

V vsakem primeru moraš klienta nastaviti na kateri server naj pošilja.

UDP paketki so kje blokirani v omrežju ...

Da ne govorimo o problemu, če ima stranka več subnetov ...

To da, recimo da bo hardkodiran samo port, naprimer, 20000. Kako to mislis, vec subnetov, saj sistem laufa na svojem, neodvisnem LANu!

Invictus ::

Vsaka, malo večja firma, ima omrežje razdeljeno na več subnetov ...

Multicast ti v tem primeru ne bo delal ...
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

MrStein ::

Pravilno nastavljen™ multicast bi.
Je pa multikast žrtev mačehovkega odnosa, to je tudi res.

Za odkrivanje sicer obstajajo že narejeni protokoli ala bonjour ipd.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Zgodovina sprememb…

  • spremenil: MrStein ()

KernelPanic ::

MrStein je izjavil:

Pravilno nastavljen™ multicast bi.
Je pa multikast žrtev mačehovkega odnosa, to je tudi res.

Za odkrivanje sicer obstajajo že narejeni protokoli ala bonjour ipd.
Torej, kaj potem, broadcast ali multicast?

Invictus ::

Najprej si tole preberi, pa še kaj zraven.

IP multicast @ Wikipedia

Multicast ni najbolj simpl zadeva, pa še podprta mora biti na routerju.
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

reverse0xx0 ::

Živjo,

Če sem te pravilno razumel, uporabi tftp protokol. Podpira multicast.

Multicast naslova ne nastavljas na interface od naprimer rasberya(srvrja). Ti se joinas v multicast skupino na določenem interfaceu prav tako kot klienti.

V tvojem primeru multicast ip
224.0.0.1 - vsi hosti v tvojem subnetu

Kot že vzgoraj zapisano, če delaš kaj večjega v interni mreži, pričakuj subnetanje(omejitev broadcasta in ostalih paketkov)


Lp

KernelPanic ::

reverse0xx0 je izjavil:

Živjo,

Če sem te pravilno razumel, uporabi tftp protokol. Podpira multicast.

Multicast naslova ne nastavljas na interface od naprimer rasberya(srvrja). Ti se joinas v multicast skupino na določenem interfaceu prav tako kot klienti.

V tvojem primeru multicast ip
224.0.0.1 - vsi hosti v tvojem subnetu

Kot že vzgoraj zapisano, če delaš kaj večjega v interni mreži, pričakuj subnetanje(omejitev broadcasta in ostalih paketkov)


Lp

Ok, sam kako si prisel do naslova 224.0.0.1?

Invictus ::

Multicast address @ Wikipedia

Multicast ni tako preprost kot se tebi zdi ...
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

KernelPanic ::

Invictus je izjavil:

Multicast address @ Wikipedia

Multicast ni tako preprost kot se tebi zdi ...


Ok, bomo ze nastudirali, kaksne so pasti?

Mavrik ::

Em, ti verjetno hočeš uporabljati samo broadcast (ker gre v eno smer in nima komplikacij multicasta) na istem omrežju. Oz. še bolj verjetno je, da bo za tebe primeren kateri od Zeroconf protokolov ki je glih namenjen temu da se naprave najdejo na omrežju in se pogovarjajo med sabo. Primeri zeroconf protokolov, ki jih uporabljaš vsak dan so recimo iTunes odkrivanje glasbe na omrežju (Applov Bonjour), odkrivanje routerjev in UPnP naprav na omrežju, iskanje DLNA naprav za streamanje na TVje, tudi iskanje računalnikov na omrežju za deljenje datotek je podoben protokol.

Multicast je sicer nekoliko boljši v kompleksnih situacijah (da se ga usmerjati med omrežji in paketov ne vidijo vse naprave v skupini), ima pa precej režijskih stroškov povezanih z njim in v večini primerov ni smiseln. Preveri kaj rabijo tvoje stranke.
The truth is rarely pure and never simple.

Zgodovina sprememb…

  • spremenil: Mavrik ()

Invictus ::

KernelPanic je izjavil:

Invictus je izjavil:

Multicast address @ Wikipedia

Multicast ni tako preprost kot se tebi zdi ...


Ok, bomo ze nastudirali, kaksne so pasti?

Za multicast mora biti router pravilno skonfiguriran.

A ti iz wikipedie ni jasno?

Ni to "default on" protokol.

Stranka bo najbrž ful vesela, ko bo moral še nekdo pri njih nastaviti routerje da bo tvoja aplikacija sploh delovala ...

Malo si se zaklal, ker bi rad optimiziral promet po mreži, pa ti je kao multicast padel na oči ;). Tvoja aplikacija pokuri drekec-pekec prometa na mreži, ker danes ne živimo več v času 14,4k modemov ;).
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

SiOL TV na PC - Windows 7 (strani: 1 2 )

Oddelek: Omrežja in internet
5224996 (9155) slitkx
»

ubuntu + network sharing

Oddelek: Pomoč in nasveti
221264 (1128) NeMeTko
»

Kvazi Članek: "Hekanje" Amino 103 (strani: 1 2 3 4 )

Oddelek: Omrežja in internet
15643061 (20000) cevlj
»

VLC Stream preko interneta (in skozi routerjev NAT)

Oddelek: Zvok in slika
113065 (2819) Paramedic
»

ebtables+linux+brctl+siol-tv

Oddelek: Omrežja in internet
122370 (2222) korenje_ver2

Več podobnih tem