网络编程2

本章主要讲解传输层协议

1.TCP传输控制协议:
特点:面向连接,可靠,字节流,全双工
三次握手建立连接,四次挥手释放连接
状态转换(简化):
CLOSED -> SYN_SENT -> ESTABLISHED -> FIN_WAIT_1 -> FIN_WAIT_2 -> TIME_WAIT -> CLOSED
服务端:LISTEN -> SYN_RCVD -> ESTABLISHED -> CLOSE_WAIT -> LAST_ACK -> CLOSED

  1. UDP用户数据报协议
    特点:无连接、不可靠、数据报、无拥塞控制
    适用场景:DNS 查询、NFS、RTP(实时音视频)
    不保证顺序、不保证送达、无流量控制

  2. SCTP流控制传输协议
    特点:面向连接、可靠、消息(非字节流)、多宿、多流
    比 TCP 优势:多宿(multi-homing)、多流(multi-streaming)、消息边界
    主要用于:SIGTRAN(信令)、WebRTC 等

  3. 协议选择
    TCP:需要可靠传输的应用(HTTP、FTP、SMTP)
    UDP:能容忍丢失、低延迟优先(DNS、游戏、流媒体)
    SCTP:需要多流、多宿特性的应用

  4. 套接字类型与协议对应
    SOCK_STREAM + IPPROTO_TCP -> TCP
    SOCK_DGRAM + IPPROTO_UDP -> UDP
    SOCK_SEQPACKET + IPPROTO_SCTP -> SCTP
    通常用 0 作为 protocol,系统自动选择(如 SOCK_STREAM 默认 TCP)

posted on 2026-03-02 10:05  cyusouyiku  阅读(1)  评论(0)    收藏  举报