Почему SCTP не, много использовало/знало

В мире ОО эти два понятия обычно означают одно и то же

С чисто математической и CS-точки зрения функция всегда будет возвращать один и тот же результат при вызове с одинаковыми аргументами (f (x, y) = (x + y)). С другой стороны, метод, как правило, связан с экземпляром класса. Тем не менее, большинство современных ОО-языков больше не используют термин «функция» по большей части. Многие статические методы могут быть очень похожи на функции, так как они обычно не имеют состояния (не всегда true).

183
задан Steven Lu 2 January 2018 в 12:50
поделиться

5 ответов

Действительно, SCTP используется в основном в телекоммуникационной сфере. Традиционно телекоммуникационные коммутаторы используют SS7 ( Система сигнализации № 7 ) для соединения различных объектов в телекоммуникационной сети. Например, база данных абонентов (HLR) поставщика услуг связи, с коммутатором (MSC), абонент тоже подключен (MSC).

Область телекоммуникаций переходит на более высокие скорости и более доступную среду. Одним из этих изменений является замена протокола SS7 более элегантным, быстрым и гибким протоколом на базе IP.

Сфера телекоммуникаций очень консервативна. Сеть SS7 используется здесь десятилетиями. Это очень надежная и закрытая сеть. Это означает, что обычный пользователь не имеет к ней доступа.

IP-сеть, напротив, открыта и ненадежна, и телекоммуникационные компании не перейдут на нее, если выиграют » t справиться хотя бы с той нагрузкой, которую выдерживает SS7. Вот почему был разработан SCTP. Он пытается:

  • имитировать все преимущества сети SS7, накопленные за десятилетия.
  • создать протокол, ориентированный на соединение, лучше TCP по скорости, безопасности и избыточности

В последних версиях Linux уже есть SCTP поддержка.

91
ответ дан 23 November 2019 в 06:01
поделиться

Читая страницу SCTP в Википедии , я бы сказал, что основная причина в том, что SCTP - это очень молодой протокол (предложенный в 2000 году), который в настоящее время не поддерживается основными ОС ( Windows , OS X , Linux ).

Если «очень молодой» кажется вам неуместным, подумайте о IPV6 : «В декабре 2008 года, несмотря на то, что ему исполнилось 10 лет в качестве протокола Standards Track, IPv6 был только в зачаточном состоянии с точки зрения глобального развертывания»

.
6
ответ дан 23 November 2019 в 06:01
поделиться

Это может быть малоизвестно, но не используется. Совсем недавно на IETF был опубликован черновик , посвященный использованию SCTP в качестве протокола транспортного уровня для HTTP .

2
ответ дан 23 November 2019 в 06:01
поделиться

Sctp создается слишком поздно, и для многих ситуаций достаточно TCP.

Кроме того, насколько я знаю, большая часть его использования находится в области телекоммуникаций.

-1
ответ дан 23 November 2019 в 06:01
поделиться

SCTP требует более детального проектирования в приложении, чтобы использовать его наилучшим образом. Есть больше вариантов, чем TCP, API-интерфейс, похожий на сокеты, появился позже, и он молодой. Однако я думаю, что большинство людей, которые нашли время, чтобы понять это (и которые знают о недостатках TCP), ценят это - это хорошо разработанный протокол, основанный на наших ~ 30-летних знаниях TCP и UDP.

Один из аспекты, которые требуют некоторого размышления, - это аспекты потоков. Потоки обеспечивают (обычно, я думаю, вы можете отключить его) гарантию порядка внутри них (так же, как TCP-соединение), но на одно SCTP-соединение может быть несколько потоков. Если данные вашего приложения могут быть отправлены по нескольким потокам, вы избегаете блокировки заголовка линии, когда получатель голодает из-за одного потерянного пакета. По одному и тому же соединению можно эффективно вести разные разговоры, не влияя друг на друга.

Еще одним полезным дополнением является поддержка множественной адресации - одно соединение может проходить через несколько интерфейсов на обоих концах, и оно справляется с отказами. Вы можете эмулировать это в TCP, но на прикладном уровне.

Правильная тактовая частота канала - первое, что реализует любое приложение, использующее TCP для непереходных соединений, - предоставляется бесплатно.

Мое личное резюме о SCTP состоит в том, что он не делает того, что нельзя было бы сделать другим способом (в TCP или UDP) с существенной поддержкой приложений. Вещь, которую он предоставляет, - это возможность не реализовывать этот код (плохо) самостоятельно.

К вашему сведению, SCTP утвержден как поддерживаемый для Diameter (см. RADIUS следующего поколения). см. RFC 3588

   Diameter clients MUST support either TCP or SCTP, while agents and
   servers MUST support both.  Future versions of this specification MAY
   mandate that clients support SCTP.
55
ответ дан 23 November 2019 в 06:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: