socket_create
Bir soket oluşturur (iletişim için bir uç)
&reftitle.description;
Socketfalsesocket_create
intaile
inttür
intprotokol
Bir Socket örneği döndürmenin yanında iletişim için
uçlardan birini belirler. Normal bir ağ bağlantısı iki soketle yapılır.
Biri istemci olurken diğeri sunucu olur.
&reftitle.parameters;
aile
Soket tarafından kullanılacak protokol ailesi.
Olası adres/protokol aileleri
Aile
Açıklama
AF_INET
IPv4 protokolleri. TCP ve UDP bu ailenin en bilinen üyeleridir.
AF_INET6
IPv6 protokolleri. TCP ve UDP bu ailenin en bilinen üyeleridir.
AF_UNIX
Yerel iletişim protokolleri ailesi. Süreçler arası iletişimde
yüksek verimlilik ve düşük maliyet sağlar.
tür
Soket tarafından kullanılacak iletişim türü.
Olası soket türleri
Tür
Açıklama
SOCK_STREAM
Sıralı, güvenilir, iki yönlü bağlantıya dayalı bayt akımları.
Band dışı veri aktarım mekanizması da desteklenebilir. TCP
protokolü bu soket türüne dayanır.
SOCK_DGRAM
Veri katarlarını destekler (bağlantısız, güvensiz, sabit uzunlukta
iletiler). UDP protokolü bu soket türüne dayanır.
SOCK_SEQPACKET
Sabit uzunluklu veri katarları için sıralı, güvenilir, iki yönlü
bağlantıya dayanan veri aktarımı; her okuma çağrısında paketin
tamamını okuyacak bir istemci gerekir.
SOCK_RAW
Ham ağ protokolü erişimi sağlar. Bu özel soket türü elle bir
protokol oluşturmak için kullanılabilir. Bu soketin bilinen bir
kullanım da ICMP istekleridir (ping gibi).
SOCK_RDM
Sıralama garantisi olmayan güvenilir verikatarı katmanı sağlar.
Çoğunlukla işletim sistemleri tarafından gerçeklenmez.
protokol
Soketten dönen iletişimi kullanacak aileye özgü protokol. Bu değer
protol ismi belirtilerek getprotobyname ile
alınabilir. İstenen protokol bir TCP veya UDP protokolü ise
SOL_TCP veya SOL_UDP sabiti
değer olarak kullanılabilir.
Bilinen protokoller
İsim
Açıklama
icmp
Genel Ağ Denetim İletisi Protokolü esas olarak konaklar ve ağ
geçitleri tarafından hataları verikatarı iletişimi ile raporlamak
için kullanılır. ICMP uygulamalarının başlıcalarından biri de
"ping" komutudur (günümüz işletim sistemlerinin hemen hepsinde
vardır).
udp
Kullanıcı Verikatarı Protokolü bir bağlantısız, güvenilmez sabit
uzuluklu kayıtların iletişiminde kullanılan bir protokoldür. Bu
özelliklerinden dolayı UDP çok düşük bir protokol maliyetine
sahiptir.
tcp
Aktarım Denetim Protokolü, güvenilir, bağlantılı, akım yönelimli,
çift yönlü bir protokoldür. TCP tüm veri paketlerinin
gönderildikleri sıra ile alınacağını garanti eder. Eğer yolda
herhangi bir paket kaybolursa TCP, hedef tarafından alınıncaya
kadar bu paketi tekrar tekrar yollar. Güvenilirlik ve başarım için
TCP gerçeklenimi, ilgili verikatarı iletişim katmanının kaç
sekizlikten oluşacağına kendi karar verir. Bu bakımdan, TCP
uygulamaları kısmi kayıt aktarımı olasılığını dikkate almalıdır.
&reftitle.returnvalues;
Başarısızlık durumunda &false;, aksi takdirde bir
Socket örneği döndürür.
Hata kodu socket_last_error işlevi ile
alınabilir. Bu hata kodunu socket_strerror işlevine
aktararak hatayı açıklayan dizgeyi alabilirsiniz.
&reftitle.errors;
Geçersiz bir aile veya tür
belirtilmişse, socket_create bunlar için öntanımlı
olarak AF_INET ve SOCK_STREAM
değerleri belirtildiğini varsayar ve bu durumu bir
E_WARNING iletisiyle bildirir.
&reftitle.changelog;
&Version;
&Description;
8.0.0
Başarı durumunda artık bir Socket nesnesi
dönüyor; evvelce resource türünde bir değer dönerdi.
&reftitle.seealso;
socket_accept
socket_bind
socket_connect
socket_listen
socket_last_error
socket_strerror