TCP的三次握手
  • 客户端(Client) 主动发起连接。
  • 服务端(Server) 等待连接并响应。

1️⃣ 第一次握手:SYN(Client → Server)

  • Client 发送 SYN = 1(同步标志位),并随机生成一个 初始序列号(ISN = x),记作:
    SYN=1, seq=x
  • 状态变化
    • Client 进入 SYN_SENT(等待服务器确认)。
    • Server 仍处于 LISTEN 状态。

2️⃣ 第二次握手:SYN+ACK(Server → Client)

  • Server 收到 SYN 后,确认 Client 的请求,并发送:
    SYN=1(表示自己也希望同步)
    ACK=1(确认收到 Client 的 SYN
    ack=x+1(表示期望收到 x+1 数据)
    seq=y(Server 也生成一个随机初始序列号 y
    完整记为:
    SYN=1, ACK=1, ack=x+1, seq=y
  • 状态变化
    • Server 进入 SYN_RCVD(等待 Client 确认)。

3️⃣ 第三次握手:ACK(Client → Server)

  • Client 收到 SYN+ACK 后,检查 ack 是否等于 x+1(验证合法性),然后发送:
    ACK=1(确认收到 Server 的 SYN
    ack=y+1(期望 Server 发送 y+1 数据)
    seq=x+1(确认之前发送的数据已被接收)
    完整记为:
    ACK=1, ack=y+1, seq=x+1
  • 状态变化
    • Client 进入 ESTABLISHED(连接建立成功)。
    • Server 收到 ACK 后也进入 ESTABLISHED
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇