Платформа проверки Java поддерживает sctp, в противном случае используйте tcp

Так как netty использует другую инициализацию канала для SCTP и TCP, поэтому я хотел бы проверить, поддерживает ли платформа SCTP, если это так, использует SCTP, в противном случае использует TCP. Тем не менее, я не мог найти какой-либо метод, чтобы проверить это как в JDK8, так и в netty4.

1 ответ

Решение

Должна быть возможность позвонить com.sun.nio.sctp.SctpServerChannel без исключения, если sctp доступен, но я не могу подтвердить это, потому что я поддерживаю sctp на всех моих устройствах.

Руководство по Openjdk SCTP

Чтобы убедиться, что у вас правильно настроенный компьютер и JDK, попробуйте скомпилировать и запустить следующее приложение:

public class TestSCTP
{
    public static void main(String[] args) throws Exception {
        com.sun.nio.sctp.SctpChannel sc = com.sun.nio.sctp.SctpChannel.open();
    }
}

$ jdk1.7.0/bin/javac TestSCTP.java
$ jdk1.7.0/bin/java TestSCTP

Если он компилируется и запускается без ошибок, то поздравляю вас с правильно настроенным компьютером и JDK. Теперь вы можете начать писать приложения, которые используют SCTP API.

Другие вопросы по тегам