<commit_before># **高级SCTP套接字编程**
***


## **1. 关联剥离**
    1) 一到多式接口相比更为传统的一道一式接口存在的优势：
        * 只需维护单个描述符；
        * 允许编写简单的迭代服务器程序；
        * 允许应用进程在思路握手的第三个和第四个分组发送数据，只需使用
          sendmsg或sctp_sendmsg隐式建立关联就行；
        * 无需跟踪传输状态；
    2) 一到多存在的一个主要缺陷：造成难以编写并发服务器程序；<commit_msg>add information about use SCTP exchange TCP<commit_after># **高级SCTP套接字编程**
***


## **1. 关联剥离**
    1) 一到多式接口相比更为传统的一道一式接口存在的优势：
        * 只需维护单个描述符；
        * 允许编写简单的迭代服务器程序；
        * 允许应用进程在思路握手的第三个和第四个分组发送数据，只需使用
          sendmsg或sctp_sendmsg隐式建立关联就行；
        * 无需跟踪传输状态；
    2) 一到多存在的一个主要缺陷：造成难以编写并发服务器程序；


## **2. 何时改用SCTP代替TCP**
    1) SCTP的益处：
        * SCTP直接支持多宿；
        * 可以消除头端阻塞；
        * 保持应用层消息边界；
        * 提供无序消息服务；
        * 有些SCTP实现提供部分可靠服务；
        * SCTP以一到一式接口提供了从TCP到SCTP的简易移植手段；
        * SCTP提供TCP的许多特性；
        * SCTP提供许多供应用进程配置和调整传输服务；
    2) SCTP不提供TCP的特性:
        * 半关闭状态；
        * 紧急数据；
{'fraction_non_alphanumeric': 0.10532150776053215, 'fraction_numerical': 0.009977827050997782, 'mean_word_length': 2.3820224719101124, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4480031', 'n_tokens_mistral': 629, 'n_tokens_neox': 733, 'n_words': 47}