Portál AbcLinuxu, 25. dubna 2024 07:34


Dotaz: unixovy socket vs. tcp

10.11.2003 18:30 erge
unixovy socket vs. tcp
Přečteno: 273×
Odpovědět | Admin
rozbehal jsem spamassassin, nechavam ho poslouchat na unixovem socketu, po par experimentech se mi zda, ze proces overeni emailove zpravy je takhle rychlejsi, nez pres tcp. jen si myslim, ze kdyz najednou k spamassassinu budou pristupovat dva klienti, tak on bude vzdycky obsluhovat jen jednoho, coz by mohlo vest k tomu, ze se mi bude kontrolovat napr. kazda druha zprava. je to tak, jak si myslim?
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Balu avatar 11.11.2003 08:30 Balu | skóre: 25 | blog: Ja a Linux | Praha
Rozbalit Rozbalit vše unixovy socket vs. tcp
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nie je. Pre vyssiu vrstvu OSI modelu je to uplne to iste. Rozdiel je iba priamo v strukture socketu, Unixovy socket je subor typu socket umiestneny vo filesysteme, TCP socket je definovany adresou a cislom portu. Klienti budu zaradeni do fronty, a je otazka, ci spamassasin (neskusal som ho, takze neviem posudit) je iterativny alebo konkurentny server. Iterativny spracuvava poziadavky po jednom, ako prichadzaju, konkurentny pre kazde spojenie vytvori samostatny proces, ktory urobi co ma, a server sa tym nezdrzuje. Myslim, ze spamassasin bude asi konkurentny.
Počítač bez Windows je ako kakao bez kečupu.
11.11.2003 15:52 erge
Rozbalit Rozbalit vše unixovy socket vs. tcp
pravdepodobne je konkurentny :-)
uvedomil jsem si, ze i mysql muze fungovat bez tcp jen pres unixovy socket, takze s tim (vice klientu) asi problem nebude. jen by me zajimalo, jaky mechanismus dovoluje serveru rozlisovat klienty, kdyz si se vsemi povida pres jednu zasuvku ...
11.11.2003 16:27 astar
Rozbalit Rozbalit vše unixovy socket vs. tcp
kdyz bezi pres tcp tak taky posloucha jen na jednom portu a obsluhuje vice klientu. jestli to jede pres tcp nebo unix socket je jen implementacni detail, principialne je to uplne stejne.
12.11.2003 10:57 erge
Rozbalit Rozbalit vše unixovy socket vs. tcp
v tcp jsou porty, server odpovida klientum, kteri jsou fyzicky na
1) stejnych strojich - server posila odpovedi jine porty
2) jinych strojich - server posila odpovedi na jine ip

- tam to osefuje snadno. zajimalo me, jaky mechanizmus se pouziva u socketu. jestli vsichni klienti cekaji na odpoved ze stejne roury, jak se potom ubranit necemu jako 'sniffovani' (dokazu si predstavit, ze treba server pri pozadavku noveho klienta mu da 'cislo', a odpoved pak spoji s tim cislem, ale co tohle?)? nechci nejake detaily, jen princip ... ;-)
12.11.2003 11:00 erge
Rozbalit Rozbalit vše unixovy socket vs. tcp
jde mi o tu odpoved serveru. to, ze pozadavky klienti sypou do jednoho socketu je ok. jak server odpovida?
Balu avatar 12.11.2003 11:15 Balu | skóre: 25 | blog: Ja a Linux | Praha
Rozbalit Rozbalit vše unixovy socket vs. tcp
server vyberie poziadavku zo socketu, vykona fork (rozdvoji sa), novy serverovsky proces pokracuje v spracovavani poziadavky, a povodny dalej obsluhuje socket - berie poziadavky, forkuje, a toto dookola.
Počítač bez Windows je ako kakao bez kečupu.
12.11.2003 11:27 astar
Rozbalit Rozbalit vše unixovy socket vs. tcp
bez podrobnosti nelze rict nic vic nez je to stejne jako v pripade toho tcp. podrobnosti viz man 7 unix, man 2 socket, man 2 accept, man 2 connect.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.