Aslında Bilgisayar Ağları öğreniyorum ve bu sırada bir web sunucusunun birden çok bağlantıyı nasıl koruduğuna kafam karıştı ?
Basitçe söylemek gerekirse, bazı googling ile öğrendim, yuvalar her bir istemci isteğini ele alıyor.
Diyelim ki bir web sunucusu var ve diyelim ki IP'li 2 istemci
Client A: 5.5.5.5
Client B: 10.10.10.10
Her ikisi de 80 numaralı bağlantı noktasından sunucuya bağlanmaya çalışır .
Şimdi, sahip olduğum googling gelen sunucu , gelen istekleri 80 numaralı bağlantı noktasında dinler . Sonra A istemcisinin sunucuya bağlanmaya çalıştığını varsayalım (TCP / IP bağlantısı kurun). Bu ikisi arasında bir soket oluşturulur. Ardından, sunucunun söz konusu bağlantı noktasındaki diğer istemci isteklerini yeniden dinlemesini sağlamak için daha fazla iletişimi için ayrı bir iş parçacığı olarak yürütülür. Ve Müşteri B aynı şekilde bağlar.
Şimdi ilk sorum:
1. How does server communicate with these two clients simultaneously
after the connection has been established?
Şimdi pratik olarak sadece 2 istemci değil, binlerce ve milyonlarca kullanıcı bir sunucuya bağlanabilir.
O zaman bir sonraki sorum:
2. Now, how do those thousands of clients get connected to a single server?
If we assume every client is connected to the server through wire, it is not
practically possible to maintain that many sockets on a hardware for
connection. How those thousands connections are made and handled?
Son olarak, 3. sorum:
3. Above I said (actually heard) how **client A** connected to the the server
and similarly the client B.
But I didn't get the part stating "after a TCP/IP connection is made they
continue separately in a separate socket and making server to listen for
other client requests." What does that mean? If one client is communicating
to the server, how come other can communicate at the same time to same server.
Isn't it like while a student is asking question to a teacher, other can't
ask at the same time since that particular student is busy or occupying the
teacher at the moment so others should wait, which we compare than client B
should wait when client A is communicating.
Bunlar benim elde edemediğim temel sorularım. Her şeyi yanlış anlıyorsam lütfen beni düzeltin. Cevapların ayrıntılı olması veya kısmen belirli bir bölüme odaklanmaması durumunda bana bazı kitapları / PDF'leri okumasını önerebilirsiniz. Teşekkürler