SCTP membutuhkan lebih banyak desain dalam aplikasi untuk mendapatkan penggunaan terbaik dari itu. Ada lebih banyak pilihan daripada TCP, API seperti Soket datang kemudian, dan masih muda. Namun saya pikir sebagian besar orang yang meluangkan waktu untuk memahaminya (dan yang tahu kekurangan TCP) menghargainya - ini adalah protokol yang dirancang dengan baik yang dibangun berdasarkan ~ 30 tahun pengetahuan kita tentang TCP dan UDP.
Salah satu aspek yang perlu dipikirkan adalah aliran. Streaming menyediakan (biasanya, saya pikir Anda dapat mematikannya) jaminan pesanan di dalamnya (seperti koneksi TCP) tetapi mungkin ada beberapa stream per koneksi SCTP. Jika data aplikasi Anda dapat dikirim melalui beberapa aliran, maka Anda menghindari pemblokiran head-of-line di mana penerima kelaparan karena satu paket salah bayar. Percakapan yang berbeda secara efektif dapat dilakukan melalui koneksi yang sama tanpa saling memengaruhi.
Tambahan lain yang bermanfaat adalah dukungan multi-homing - satu koneksi dapat melintasi beberapa antarmuka di kedua ujungnya dan mengatasi kegagalan. Anda dapat meniru ini dalam TCP, tetapi pada lapisan aplikasi.
Detak jantung tautan yang tepat, yang merupakan hal pertama yang digunakan aplikasi apa pun menggunakan TCP untuk koneksi non-transien, tersedia gratis.
Ringkasan pribadi saya tentang SCTP adalah bahwa ia tidak melakukan apa pun yang tidak dapat Anda lakukan dengan cara lain (dalam TCP atau UDP) dengan dukungan aplikasi substansial. Hal yang disediakannya adalah kemampuan untuk tidak harus mengimplementasikan kode itu (buruk) sendiri.
FYI, SCTP diamanatkan sebagai didukung untuk Diameter (cf RADIUS gen berikutnya). lihat RFC 3588
Diameter klien HARUS mendukung TCP atau SCTP, sementara agen dan
server HARUS mendukung keduanya. Versi mendatang dari spesifikasi ini MUNGKIN
mengamanatkan bahwa klien mendukung SCTP.