Udostępnij za pośrednictwem


Windows Sockets: Gniazda strumienia

W tym artykule opisano gniazda strumienia, jeden z dwóch dostępnych typów Windows Socket.(Jest innego typu gniazdo datagramu.)

Gniazda strumienia przewidują przepływu danych bez granic rekordów: strumień bajtów, które mogą być dwukierunkowy (aplikacja jest pełny dupleks: mogą zarówno transmitować i odbierać za pośrednictwem gniazda).Strumienie można zarzutu dostarczenie danych sukcesywnych, unduplicated.("Sequenced Packet" oznacza że pakiety są dostarczane w kolejności wysłane. "Unduplicated"oznacza określonego pakietu uzyskać tylko raz.) Potwierdzenia strumienia wiadomości jest gwarantowane i strumienie dobrze nadają się do obsługi dużych ilości danych.

Warstwa transportu sieciowego może podzielić lub grupowania danych na pakiety rozsądny rozmiar.CSocket Klasy będą obsługiwać pakowania i rozpakowywania dla Ciebie.

Strumienie są oparte na wyraźne połączeń: gniazdo a żądania połączenia gniazda B; Gniazdo b akceptuje lub odrzuca żądanie połączenia.

Rozmowy telefonicznej zapewnia dobrą strumienia.W normalnych okolicznościach Strona otrzymująca słyszy powiedzieć w kolejności powiedzieć, bez powielania lub straty.Gniazda strumienia są właściwe, na przykład dla implementacji takich jak protokół FTP (File Transfer), która ułatwia przekazującej ASCII lub binarne pliki dowolnego rozmiaru.

Gniazda strumienia są lepiej datagram sockets danych musi być zagwarantowana dotrzeć a rozmiar danych jest duży.Aby uzyskać więcej informacji na temat gniazda strumienia zobacz specyfikację Windows Sockets.Specyfikacja ta jest dostępna w Windows SDK.

Za pomocą strumienia sockets mogą być nadrzędne w stosunku do aplikacje zaprojektowane do użytku nadawanie do wszystkich sockets otrzymującego w sieci, ponieważ gniazdo datagramu

  • Model emisji podlega problemy sieciowe powódź (lub "Burza").

  • Późniejsze modelu klient serwer jest bardziej efektywne.

  • Model strumień dostaw niezawodny transfer danych, gdy model datagramu nie.

  • Końcowe modelu wykorzystuje możliwość komunikowania się między Unicode i ANSI gniazda aplikacje tej klasy, które CArchive przyczyni się do klasy CSocket.

    [!UWAGA]

    Jeśli za pomocą klasy CSocket, należy użyć strumienia.Aplikacja MFC nie powiedzie się, jeśli określony typ gniazda jako SOCK_DGRAM.

Zobacz też

Koncepcje

Windows Sockets w MFC

Windows Sockets: tło