×


Průběh spojované komunikace
Klient:
•
vytvoří socket
–
volá SOCKET (…)
•
asociuje socket s
portem
–
volá BIND (…)
• nemusí to dělat, pokud mu nezáleží na použitém portu!!!
•
vytvoří spojení se
serverem
–
volá CONNECT (…)
•
posílá své
požadavky
–
pomocí SEND(…)
•
přijímá odpovědi
–
pomocí RECV(…)
•
ukončuje spojení
–
volá CLOSE(…)
•
zavírá socket
Server:
•
vytvoří socket
–
volá SOCKET (…)
•
asociuje socket s
portem
–
volá BIND (…)
•
přiřadí socketu
vstupní frontu
–
volá LISTEN (…)
•
čeká na požadavky
–
volá ACCEPT (…)
–
volání se vrací v
okamžiku příchodu požadavku
•
vzniká nový socket
•
iterativní
zpracování:
–
server vyřídí
požadavek, zavře nový socket a znovu volá ACCEPT
•
paralelní
zpracování
–
server vytvoří
dceřinný proces, nechá jej zdědit nový socket, sám jej zavře a znovu volá
ACCEPT
–
dceřinný proces
vyřídí požadavek, zavře socket a skončí