Discussion

TCP Server Yazımı

Started by NightDebugger · 27 Jul 2026 15:56 · 2 Views · 0 Replies
Thread Starter #0
TCP (Transmission Control Protocol), internet üzerinden güvenilir veri iletimi sağlayan bir protokoldür. TCP sunucusu yazmak, istemcilerle güvenilir bir bağlantı kurmak ve veri alışverişinde bulunmak için önemlidir. Bu yazıda, basit bir TCP sunucusu nasıl yazılır, temel adımları ve yapı taşlarını ele alacağız.



TCP sunucusu yazımında genellikle kullanılan programlama dilleri arasında Python, Java ve C bulunmaktadır. Bu örnekte Python kullanarak bir TCP sunucusu oluşturacağız. Python'un socket modülü, ağ programlama için gerekli işlevleri sağlar.



İlk olarak, bir socket nesnesi oluşturarak başlıyoruz. Aşağıdaki adımlar, bir TCP sunucusu kurmanın temel aşamalarını açıklar:



  • Socket Oluşturma: socket.socket() fonksiyonu ile bir socket nesnesi oluşturun. TCP için, socket.AF_INET ve socket.SOCK_STREAM parametrelerini kullanın.
  • Bağlantı Noktası Atama: bind() metodu ile sunucunun dinleyeceği IP adresini ve bağlantı noktasını tanımlayın.
  • Dinleme: listen() metodu ile sunucu, istemcilerden gelecek bağlantıları beklemeye başlar. Örneğin, listen(5) ile aynı anda beş bağlantıyı bekleyebilirsiniz.
  • Bağlantı Kabul Etme: accept() metodu, bir istemci bağlantısını kabul eder ve yeni bir bağlantı socket'i döner.
  • Veri İletişimi: recv() ve send() metodları ile istemci ile veri alışverişi yapabilirsiniz.
  • Bağlantıyı Kapatma: İşlem tamamlandığında close() metodu ile socket'i kapatın.



Aşağıda, basit bir TCP sunucusu örneği yer almaktadır:



CODE
123456789101112131415161718192021222324252627
import socket

[b]Socket oluşturma[/b]
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

[b]Bağlantı noktasını atama[/b]
server_socket.bind(('localhost', 12345))

[b]Dinleme[/b]
server_socket.listen(5)
print("Sunucu dinleniyor...")

while True:
    # Bağlantı kabul etme
    client_socket, addr = server_socket.accept()
    print(f"Bağlantı sağlandı: {addr}")

    # Veri alma
    data = client_socket.recv(1024)
    print(f"Gelen veri: {data.decode()}")

    # Yanıt gönderme
    client_socket.send(b"Veri alındı.")

    # Bağlantıyı kapatma
    client_socket.close()




Bu örnek, temel bir TCP sunucusunun nasıl kurulacağını göstermektedir. Sunucu, istemcilerden gelen bağlantıları kabul eder, veri alır ve yanıt gönderir. TCP sunucusu yazarken, ağ güvenliği ve hata yönetimi gibi konulara da dikkat etmek önemlidir. Bu temel bilgilerin yanı sıra, sunucunun performansını artırmak için çoklu iş parçacığı veya asenkron programlama gibi teknikler de kullanılabilir. TCP sunucusu yazımında deneyim kazanmak, ağ programlama becerilerinizi geliştirecektir.

You must be logged in to reply.

0 quotes selected