TCP iletişim kuralı ağ uygulamalarına bağlantı yönelimli-güvenilir, tamamıyla çift yönlü byte akımı dağıtımı sağlar. Yani byte'lar
sıralamaları korunurken aynı zamanda kaybolmadan ve bozulmadan bir uygulamadan diğerine güvenilir bir şekilde iletilmektedir.
İstemci bir uygulama iletişim kurabilmek için öncelikle sunucu uygulama ile temasa geçmelidir. Bu sebeple, önce sunucu uygulama çalışıyor
durumda olmalıdır ve uygulama istemcinin temasını karşılamak üzere bir sunucu soketi yani ServerSocket yaratmış olmalıdır. İstemci bir
Socket elemanı oluşturarak ve sunucunun adresini ve sunucu uygulamasının kullandığı kapı numarasını belirterek sunucu ile temasa geçer.
Böylelikle istemci ve sunucu arasında bağlantı kurmuş olur. İstemci ile temas sağlandığında sunucu uygulaması bunun için yeni bir soket
yaratır ve iletişim bu soketler üzerinden gerçekleştirilir. Bu sunucunun aynı anda birden fazla istemciye hizmet vermesine olanak tanır.
Bir ağ uygulaması bir soketten ve bağlantının diğer tarafındaki uygulamadan ileti almak ve bunlara ileti gönderebilmek için akımları kullanır.
Bağlantı bittiğinde sistem kaynaklarının boşa çıkarılabilmesi için soketler kapatılmalıdır.