nl::Inet::TCPEndPoint

#include <src/inet/TCPEndPoint.h>

Objek di class ini merepresentasikan endpoint transport TCP.

Ringkasan

Nest Inet Layer mengenkapsulasi metode untuk berinteraksi dengan endpoint transpor TCP (soket SOCK_STREAM pada sistem turunan BSD dan Linux) atau blok kontrol protokol TCP LwIP, sesuai konfigurasi sistem.

Inheritance

Mewarisi dari: nl::Inet::EndPointBasis

Jenis publik

@10{
  kState_Ready = kBasisState_Closed,
  kState_Bound = 1,
  kState_Listening = 2,
  kState_Connecting = 3,
  kState_Connected = 4,
  kState_SendShutdown = 5,
  kState_ReceiveShutdown = 6,
  kState_Closing = 7,
  kState_Closed = 8
}
enum
Status dinamis dasar endpoint yang mendasarinya.
OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan peristiwa error penerimaan koneksi.
OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan peristiwa pembentukan koneksi.
OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis fungsi penanganan peristiwa pembentukan koneksi.
OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort) typedef
void(*
Jenis koneksi menerima fungsi penanganan peristiwa.
OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data) typedef
void(*
Jenis fungsi penanganan peristiwa penerimaan data.
OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len) typedef
void(*
Jenis fungsi penanganan peristiwa transmisi data.
OnPeerCloseFunct)(TCPEndPoint *endPoint) typedef
void(*
Jenis fungsi penanganan peristiwa penerimaan setengah tertutup.
OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle) typedef
void(*
Jenis fungsi penanganan sinyal TCP SendIdle berubah.

Atribut publik

OnAcceptError
Delegasi fungsi penanganan peristiwa penerimaan koneksi endpoint.
OnConnectComplete
Delegasi fungsi penanganan peristiwa pembuatan koneksi endpoint.
OnConnectionClosed
Delegasi fungsi penanganan peristiwa close endpoint.
OnConnectionReceived
Koneksi endpoint menerima delegasi fungsi penanganan peristiwa.
OnDataReceived
Delegasi fungsi penanganan peristiwa penerimaan pesan teks endpoint.
OnDataSent
Delegasi fungsi penanganan peristiwa transmisi pesan teks endpoint.
OnPeerClose
Delegasi fungsi penanganan peristiwa penerimaan setengah close dari endpoint.
OnTCPSendIdleChanged
Delegasi fungsi penanganan peristiwa dari pemberian sinyal endpoint saat status tidak ada aktivitas koneksi TCP pada saluran pengiriman berubah.
ReceiveEnabled
bool
Tombol kontrol yang menunjukkan apakah aplikasi menerima data.
State
enum nl::Inet::TCPEndPoint::@10
Status dinamis dasar endpoint yang mendasarinya.

Fungsi publik

Abort(void)
void
Tutup endpoint secara aborsi, dengan kata lain, kirim paket RST.
AckReceive(uint16_t len)
Mengakui penerimaan teks pesan.
Bind(IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr)
Ikat endpoint ke alamat IP antarmuka.
Close(void)
Memulai TCP {i>full close<i}, dengan kata lain, selesai dengan baik mengirim dan menerima.
Connect(IPAddress addr, uint16_t port, InterfaceId intf)
Memulai koneksi TCP.
DisableKeepAlive(void)
Menonaktifkan "keep-alive" TCP sebelumnya.
DisableReceive(void)
void
Menonaktifkan penerimaan sinyal.
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
Mengaktifkan "keep-alive" TCP sebelumnya.
EnableNoDelay(void)
EnableNoPenundaan.
EnableReceive(void)
void
Aktifkan penerimaan sinyal.
Free(void)
void
Memulai (atau melanjutkan) TCP {i>full close<i}, mengabaikan kesalahan.
GetLocalInfo(IPAddress *retAddr, uint16_t *retPort)
Ekstrak alamat IP dan port TCP titik akhir lokal.
GetPeerInfo(IPAddress *retAddr, uint16_t *retPort) const
Ekstrak alamat IP dan port TCP dari endpoint jarak jauh.
IsConnected(void) const
bool
Ekstrak apakah koneksi TCP tersambung.
Listen(uint16_t backlog)
Siapkan endpoint untuk menerima pesan TCP.
LogId(void)
uint16_t
Dapatkan ID untuk endpoint.
MarkActive(void)
void
Catat aktivitas, dengan kata lain, mereset timer tidak ada aktivitas.
PendingReceiveLength(void)
uint32_t
Ekstrak panjang data penerimaan yang tidak dikonfirmasi.
PendingSendLength(void)
uint32_t
Ekstrak panjang data yang menunggu pengiriman pertama.
PutBackReceivedData(Weave::System::PacketBuffer *data)
Mengirim teks pesan kembali ke kepala antrean penerima.
Send(Weave::System::PacketBuffer *data, bool push)
Mengirim teks pesan melalui koneksi TCP.
SetConnectTimeout(const uint32_t connTimeoutMsecs)
void
Setel waktu tunggu agar Connect berhasil atau menampilkan error.
SetUserTimeout(uint32_t userTimeoutMillis)
Setel opsi soket TCP_USER_TIMEOUT.
Shutdown(void)
Memulai TCP setengah dekat, dengan kata lain, selesai dengan pengiriman.

Jenis publik

@10

 @10

Status dinamis dasar endpoint yang mendasarinya.

Objek diinisialisasi dalam status "siap" status selanjutnya, lanjutkan ke status selanjutnya sesuai dengan penyederhanaan status mesin status transpor TCP.

Catatan: Enumerasi status kBasisState_Closed dipetakan ke kState_Ready untuk alasan kompatibilitas biner historis. kState_Closed yang ada dibuat untuk mengidentifikasi secara terpisah perbedaan antara "belum dibuka" dan "sebelumnya dibuka sekarang ditutup" yang sudah ada sebelumnya di status kState_Ready dan kState_Closed.

Properti
kState_Bound

Endpoint terikat, tetapi tidak memproses.

kState_Closed

Endpoint ditutup, siap untuk dirilis.

kState_Closing

Endpoint menutup secara dua arah.

kState_Connected

Endpoint terhubung, siap untuk tx/rx.

kState_Connecting

Endpoint mencoba terhubung.

kState_Listening

Endpoint yang menerima koneksi.

kState_Ready

Endpoint diinisialisasi, tetapi tidak terikat.

kState_ReceiveShutdown

Endpoint merespons dengan setengah tertutup.

kState_SendShutdown

Endpoint memulai setengahnya.

OnAcceptErrorFunct

void(* OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err)

Jenis fungsi penanganan peristiwa error penerimaan koneksi.

Berikan fungsi jenis ini kepada anggota delegasi OnAcceptError untuk memproses peristiwa error penerimaan koneksi di endPoint. Argumen err memberikan detail spesifik tentang jenis error.

Detail
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan peristiwa.
[in] err
Alasan error.

OnConnectCompleteFunct

void(* OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err)

Jenis fungsi penanganan peristiwa pembentukan koneksi.

Berikan fungsi jenis ini kepada anggota delegasi OnConnectComplete untuk memproses peristiwa pembuatan koneksi di endPoint. Argumen err membedakan koneksi yang berhasil dengan koneksi yang gagal.

Detail
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan peristiwa.
[in] err
INET_NO_ERROR jika berhasil, jika tidak, kode lain.

OnConnectionClosedFunct

void(* OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err)

Jenis fungsi penanganan peristiwa pembentukan koneksi.

Berikan fungsi jenis ini kepada anggota delegasi OnConnectionClosed untuk memproses peristiwa penghentian koneksi di endPoint. Argumen err membedakan penghentian yang berhasil dengan kegagalan.

Detail
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan peristiwa.
[in] err
INET_NO_ERROR jika berhasil, jika tidak, kode lain.

OnConnectionReceivedFunct

void(* OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort)

Jenis koneksi menerima fungsi penanganan peristiwa.

Berikan fungsi jenis ini kepada anggota delegasi OnConnectionReceived untuk memproses peristiwa penerimaan koneksi di listeningEndPoint. Endpoint conEndPoint yang baru diterima terletak di alamat IP peerAddr dan port TCP peerPort.

Detail
Parameter
[in] listeningEndPoint
Endpoint TCP yang mendengarkan.
[in] conEndPoint
Endpoint TCP yang baru diterima.
[in] peerAddr
Alamat IP peer jarak jauh.
[in] peerPort
Porta TCP dari peer jarak jauh.

OnDataReceivedFunct

void(* OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data)

Jenis fungsi penanganan peristiwa penerimaan data.

Berikan fungsi jenis ini kepada anggota delegasi OnDataReceived untuk memproses peristiwa penerimaan data di endPoint dengan data adalah teks pesan yang diterima.

Detail
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan peristiwa.
[in] data
Data yang diterima.

Pengendali peristiwa penerimaan data harus mengonfirmasi data yang diproses menggunakan metode AckReceive. Metode Free pada buffer data juga harus dipanggil kecuali jika PutBackReceivedData digunakan sebagai gantinya.

OnDataSentFunct

void(* OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len)

Jenis fungsi penanganan peristiwa transmisi data.

Berikan fungsi jenis ini kepada anggota delegasi OnDataSent untuk memproses peristiwa transmisi data di endPoint dengan len adalah panjang teks pesan yang ditambahkan ke jendela transmisi TCP, yang memenuhi syarat untuk dikirim oleh stack jaringan pokok.

Detail
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan peristiwa.
[in] len
Jumlah byte yang ditambahkan ke jendela transmisi.

OnPeerCloseFunct

void(* OnPeerCloseFunct)(TCPEndPoint *endPoint)

Jenis fungsi penanganan peristiwa penerimaan setengah tertutup.

Berikan fungsi jenis ini kepada anggota delegasi OnPeerClose untuk memproses peristiwa penghentian koneksi di endPoint.

Detail
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan peristiwa.

OnTCPSendIdleChangedFunct

void(* OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle)

Jenis fungsi penanganan sinyal TCP SendIdle berubah.

Berikan fungsi jenis ini kepada anggota delegasi OnTCPSendIdleChanged untuk memproses peristiwa saluran pengiriman TCPEndPoint yang mengubah status antara tidak ada aktivitas dan tidak ada aktivitas.

Detail
Parameter
[in] endPoint
Titik akhir TCP yang terkait dengan peristiwa.
[in] isIdle
True jika saluran pengiriman endpoint TCP adalah Idle, jika tidak, salah (false).

Atribut publik

OnAcceptError

OnAcceptErrorFunct OnAcceptError

Delegasi fungsi penanganan peristiwa penerimaan koneksi endpoint.

OnConnectComplete

OnConnectCompleteFunct OnConnectComplete

Delegasi fungsi penanganan peristiwa pembuatan koneksi endpoint.

OnConnectionClosed

OnConnectionClosedFunct OnConnectionClosed

Delegasi fungsi penanganan peristiwa close endpoint.

OnConnectionReceived

OnConnectionReceivedFunct OnConnectionReceived

Koneksi endpoint menerima delegasi fungsi penanganan peristiwa.

OnDataReceived

OnDataReceivedFunct OnDataReceived

Delegasi fungsi penanganan peristiwa penerimaan pesan teks endpoint.

OnDataSent

OnDataSentFunct OnDataSent

Delegasi fungsi penanganan peristiwa transmisi pesan teks endpoint.

OnPeerClose

OnPeerCloseFunct OnPeerClose

Delegasi fungsi penanganan peristiwa penerimaan setengah close dari endpoint.

OnTCPSendIdleChanged

OnTCPSendIdleChangedFunct OnTCPSendIdleChanged

Delegasi fungsi penanganan peristiwa dari pemberian sinyal endpoint saat status tidak ada aktivitas koneksi TCP pada saluran pengiriman berubah.

Hal ini digunakan oleh lapisan atas untuk mengambil tindakan yang sesuai berdasarkan apakah data yang dikirim telah dikirimkan secara andal ke peer.

ReceiveEnabled

bool ReceiveEnabled

Tombol kontrol yang menunjukkan apakah aplikasi menerima data.

Negara Bagian

enum nl::Inet::TCPEndPoint::@10 State

Status dinamis dasar endpoint yang mendasarinya.

Objek diinisialisasi dalam status "siap" status selanjutnya, lanjutkan ke status selanjutnya sesuai dengan penyederhanaan status mesin status transpor TCP.

Catatan: Enumerasi status kBasisState_Closed dipetakan ke kState_Ready untuk alasan kompatibilitas biner historis. kState_Closed yang ada dibuat untuk mengidentifikasi secara terpisah perbedaan antara "belum dibuka" dan "sebelumnya dibuka sekarang ditutup" yang sudah ada sebelumnya di status kState_Ready dan kState_Closed.

Fungsi publik

Batalkan

void Abort(
  void
)

Tutup endpoint secara aborsi, dengan kata lain, kirim paket RST.

AckReceive

INET_ERROR AckReceive(
  uint16_t len
)

Mengakui penerimaan teks pesan.

Gunakan metode ini untuk mengonfirmasi penerimaan semua atau sebagian data yang diterima. Semantik operasional tidak ditentukan jika len lebih besar dari total data yang belum dikonfirmasi dan belum dikonfirmasi.

Detail
Parameter
[in] len
jumlah byte yang harus diakui.
Nilai yang Ditampilkan
INET_NO_ERROR
keberhasilan: penerimaan diakui.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

Ikat

INET_ERROR Bind(
  IPAddressType addrType,
  IPAddress addr,
  uint16_t port,
  bool reuseAddr
)

Ikat endpoint ke alamat IP antarmuka.

Mengikat endpoint ke alamat IP antarmuka jaringan yang ditentukan.

Detail
Parameter
[in] addrType
versi protokol alamat IP
[in] addr
alamat IP (harus berupa alamat antarmuka)
[in] port
porta TCP
[in] reuseAddr
opsi untuk berbagi binding dengan endpoint lain
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: titik akhir terikat ke alamat
INET_ERROR_INCORRECT_STATE
endpoint telah diikat sebelumnya
INET_NO_MEMORY
memori endpoint tidak cukup
INET_ERROR_WRONG_PROTOCOL_TYPE
addrType tidak cocok dengan IPVer.
INET_ERROR_WRONG_ADDRESS_TYPE
addrType adalah kIPAddressType_Any, atau jenis addr tidak sama dengan addrType.
other
error sistem atau platform lain

Di LwIP, metode ini tidak boleh dipanggil dengan kunci stack LwIP yang sudah diperoleh.

Tutup

INET_ERROR Close(
  void
)

Memulai TCP {i>full close<i}, dengan kata lain, selesai dengan baik mengirim dan menerima.

Detail
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.
other
error sistem atau platform lain

Connect

INET_ERROR Connect(
  IPAddress addr,
  uint16_t port,
  InterfaceId intf
)

Memulai koneksi TCP.

 If possible, then this method initiates a TCP connection to the
 destination \c addr (with \c intf used as the scope
 identifier for IPv6 link-local destinations) and \c port.

Detail
Parameter
[in] addr
alamat IP tujuan
[in] port
porta TCP tujuan
[in] intf
indikator antarmuka jaringan opsional
Nilai yang Ditampilkan
INET_NO_ERROR
berhasil: msg diantrekan untuk pengiriman.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
INET_ERROR_WRONG_ADDRESS_TYPE
alamat tujuan dan alamat antarmuka terikat tidak memiliki versi protokol atau jenis alamat yang cocok, atau alamat tujuannya adalah alamat lokal tautan IPv6 dan intf tidak ditentukan.
other
error sistem atau platform lain

DisableKeepAlive

INET_ERROR DisableKeepAlive(
  void
)

Menonaktifkan "keep-alive" TCP sebelumnya.

TCPEndPoint::DisableKeepAlive.

Menonaktifkan pemeriksaan keepalive TCP pada koneksi TCP terkait.

Detail
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
other
error sistem atau platform lain

Catatan: Metode ini hanya dapat dipanggil jika endpoint dalam salah satu status terhubung. Metode ini tidak melakukan apa pun jika keepalive belum diaktifkan di endpoint.

DisableReceive

void DisableReceive(
  void
)

Menonaktifkan penerimaan sinyal.

Menonaktifkan semua pengendali peristiwa. Data yang dikirim ke endpoint yang menonaktifkan penerimaan akan dikonfirmasi hingga periode penerimaan habis.

EnableKeepAlive

INET_ERROR EnableKeepAlive(
  uint16_t interval,
  uint16_t timeoutCount
)

Mengaktifkan "keep-alive" TCP sebelumnya.

TCPEndPoint::EnableKeepAlive.

Memulai transmisi TCP "keep-alive" secara otomatis satelit setiap interval detik. Koneksi akan dibatalkan secara otomatis setelah menerima respons negatif, atau setelah mengirim segmen pemeriksaan timeoutCount tanpa menerima respons positif.

Detail
Parameter
[in] interval
waktu dalam detik antar permintaan pemeriksaan.
[in] timeoutCount
jumlah pemeriksaan yang akan dikirim sebelum waktu habis.
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
other
error sistem atau platform lain

Lihat RFC 1122, bagian 4.2.3.6 untuk detail spesifikasi.

Mengaktifkan pemeriksaan keepalive TCP pada koneksi TCP terkait.

Catatan: Metode ini hanya dapat dipanggil jika endpoint dalam salah satu status terhubung. Metode ini dapat dipanggil beberapa kali untuk menyesuaikan interval keepalive atau jumlah waktu tunggu.

Detail
Parameter
interval
Interval (dalam detik) antara pemeriksaan keepalive. Nilai ini juga mengontrol waktu antara paket data terakhir yang dikirim dan transmisi pemeriksaan keepalive pertama.
timeoutCount
Jumlah maksimum pemeriksaan yang tidak diakui sebelum koneksi akan dianggap gagal.

EnableNoDelay

INET_ERROR EnableNoDelay(
  void
)

EnableNoPenundaan.

TCPEndPoint::EnableNoDelay.

Nonaktifkan algoritma buffering nagle di TCP dengan menyetel opsi soket TCP_NOMIME.

EnableReceive

void EnableReceive(
  void
)

Aktifkan penerimaan sinyal.

Aktifkan semua pengendali peristiwa. Data yang dikirim ke endpoint yang menonaktifkan penerimaan akan dikonfirmasi hingga periode penerimaan habis.

Gratis

void Free(
  void
)

Memulai (atau melanjutkan) TCP {i>full close<i}, mengabaikan kesalahan.

Objek dikembalikan ke kumpulan gratis, dan semua referensi pengguna yang tersisa menjadi tidak valid.

GetLocalInfo

INET_ERROR GetLocalInfo(
  IPAddress *retAddr,
  uint16_t *retPort
)

Ekstrak alamat IP dan port TCP titik akhir lokal.

Jangan gunakan nilai pointer NULL untuk kedua argumen.

Detail
Parameter
[out] retAddr
Alamat IP endpoint lokal.
[out] retPort
porta TCP titik akhir lokal.
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

GetPeerInfo

INET_ERROR GetPeerInfo(
  IPAddress *retAddr,
  uint16_t *retPort
) const 

Ekstrak alamat IP dan port TCP dari endpoint jarak jauh.

Jangan gunakan nilai pointer NULL untuk kedua argumen.

Detail
Parameter
[out] retAddr
Alamat IP endpoint jarak jauh.
[out] retPort
Porta TCP titik akhir jarak jauh.
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.
INET_ERROR_CONNECTION_ABORTED
Koneksi TCP tidak lagi terbuka.

IsConnected

bool IsConnected(
  void
) const 

Ekstrak apakah koneksi TCP tersambung.

Dengarkan

INET_ERROR Listen(
  uint16_t backlog
)

Siapkan endpoint untuk menerima pesan TCP.

Jika State sudah kState_Listening, tidak ada operasi yang dilakukan. Jika tidak, State akan disetel ke kState_Listening dan endpoint akan disiapkan untuk menerima pesan TCP, sesuai dengan semantik platform.

Detail
Parameter
[in] backlog
kedalaman maksimum antrean penerimaan koneksi
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: endpoint siap untuk menerima pesan.
INET_ERROR_INCORRECT_STATE
endpoint sudah memproses.

Di beberapa platform, argumen backlog tidak digunakan (kedalaman antrean bersifat tetap; hanya satu koneksi yang dapat diterima dalam satu waktu).

Pada sistem LwIP, metode ini tidak boleh dipanggil dengan kunci stack LwIP yang sudah diperoleh

LogId

uint16_t LogId(
  void
)

Dapatkan ID untuk endpoint.

Detail
Hasil
Menampilkan ID unik buram untuk log penggunaan.

MarkActive

void MarkActive(
  void
)

Catat aktivitas, dengan kata lain, mereset timer tidak ada aktivitas.

Reset timer tidak ada aktivitas ke nol.

PendingReceiveLength

uint32_t PendingReceiveLength(
  void
)

Ekstrak panjang data penerimaan yang tidak dikonfirmasi.

Detail
Hasil
Jumlah byte dalam antrean penerimaan yang belum dikonfirmasi dengan AckReceive(uint16_t len).

PendingSendLength

uint32_t PendingSendLength(
  void
)

Ekstrak panjang data yang menunggu pengiriman pertama.

Detail
Hasil
Jumlah byte yang tidak ditransmisikan dalam antrean transmisi.

PutBackReceivedData

INET_ERROR PutBackReceivedData(
  Weave::System::PacketBuffer *data
)

Mengirim teks pesan kembali ke kepala antrean penerima.

Metode ini hanya dapat dipanggil oleh pengendali peristiwa penerimaan data untuk menempatkan kembali bagian data yang tidak dikonfirmasi kembali ke antrean penerimaan. Semantik operasional tidak ditentukan jika pemanggil berada di luar cakupan pengendali peristiwa penerimaan data, data bukan Weave::System::PacketBuffer yang diberikan kepada pengendali, atau data tidak berisi bagian yang tidak dikonfirmasi yang tersisa setelah byte dikonfirmasi oleh panggilan sebelumnya ke metode AckReceive(uint16_t len).

Detail
Parameter
[out] data
Teks pesan untuk dikirim.
Nilai yang Ditampilkan
INET_NO_ERROR
keberhasilan: penerimaan diakui.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.

Kirim

INET_ERROR Send(
  Weave::System::PacketBuffer *data,
  bool push
)

Mengirim teks pesan melalui koneksi TCP.

Metode Weave::System::PacketBuffer::Free dipanggil di argumen data terlepas dari apakah transmisi berhasil atau gagal.

Detail
Parameter
[out] data
Teks pesan yang akan dikirim.
[out] push
Jika true, segera kirim, atau masukkan ke antrean.
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.

SetConnectTimeout

void SetConnectTimeout(
  const uint32_t connTimeoutMsecs
)

Setel waktu tunggu agar Connect berhasil atau menampilkan error.

Detail
Parameter
[in] connTimeoutMsecs

SetUserTimeout

INET_ERROR SetUserTimeout(
  uint32_t userTimeoutMillis
)

Setel opsi soket TCP_USER_TIMEOUT.

TCPEndPoint::SetUserTimeout.

Jika nilainya lebih besar dari 0, ini menentukan jumlah waktu maksimum dalam milidetik saat data yang dikirim mungkin tetap tidak dikonfirmasi sebelum TCP akan menutup koneksi yang sesuai secara paksa. Jika nilai opsi ditentukan sebagai 0, TCP akan menggunakan default sistem. Lihat RFC 5482, untuk detail lebih lanjut.

Detail
Parameter
[in] userTimeoutMillis
Nilai waktu tunggu pengguna TCP dalam milidetik.
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_NOT_IMPLEMENTED
implementasi sistem belum selesai.
other
error sistem atau platform lain

Menyetel opsi soket waktu tunggu pengguna TCP.

Jika nilainya lebih besar dari 0, ini menentukan jumlah waktu maksimum dalam milidetik saat data yang dikirim mungkin tetap tidak dikonfirmasi sebelum TCP akan menutup koneksi yang sesuai secara paksa. Jika nilai opsi ditentukan sebagai 0, TCP akan menggunakan default sistem. Lihat RFC 5482, untuk detail lebih lanjut.

Catatan: Metode ini hanya dapat dipanggil jika endpoint dalam salah satu status terhubung. Metode ini dapat dipanggil beberapa kali untuk menyesuaikan interval keepalive atau jumlah waktu tunggu.

Nonaktif

INET_ERROR Shutdown(
  void
)

Memulai TCP setengah dekat, dengan kata lain, selesai dengan pengiriman.

Detail
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: alamat dan porta diekstraksi.
INET_ERROR_INCORRECT_STATE
Koneksi TCP tidak tersambung.
other
error sistem atau platform lain