目前日期文章:201006 (4)

瀏覽方式: 標題列表 簡短摘要
three-way handshake,中文翻譯為『三向交握』或『三段式交握』。一個用戶端向另一個伺服端建立 TCP 連線時,所使用的程序。

SYN (client→server)

  1. soure port: 3262
  2. target port: 80
  3. sequence: 0x5ced5d04
  4. acknowledge: 0
  5. data offset: 0x70
  6. flags: 0x02(SYN)
  7. window: 65535
  8. checksum: 0x7ef2
  9. urgent point: 0
  10. options: 0x02(Maximum Segment Size, MSS)
  11. length: 4
  12. mss: 1460
  13. padding: 0x0101
  14. SACK: 0x0402
0c,be,00,50,5c,ed,5d,04,00,00,00,00,70,02,ff,ff,7e,f2,00,00,02,04,05,b4,01,01,04,02

SYN,ACK (server→client)

  1. soure port: 80
  2. target port: 3262
  3. sequence: 0xf28774e5
  4. acknowledge: 0x5ced5d05
  5. data offset: 0x70
  6. flags: 0x12(SYN, ACK)
  7. window: 16384
  8. checksum: 0xd773
  9. urgent point: 0
  10. options: 0x02(Maximum Segment Size, MSS)
  11. length: 4
  12. mss: 1460
  13. padding: 0x0101
  14. SACK: 0x0402
00,50,0c,be,f2,87,74,e5,5c,ed,5d,05,70,12,40,00,d7,73,00,00,02,04,05,b4,01,01,04,02

ACK (client→server)

  1. soure port: 3262
  2. target port: 80
  3. sequence: 0x5ced5d05
  4. acknowledge: 0xf28774e6
  5. data offset: 0x50
  6. flags: 0x10(ACK)
  7. window: 65535
  8. checksum: 0x1e08
  9. urgent point: 0
0c,be,1f,90,5c,ed,5d,05,f2,87,74,e6,50,10,ff,ff,1e,08,00,00

以上三個通訊就完成三向交握,下面就開始 http 的資料傳送。

PSH, ACK (client→server)

向 server 要求讀取某一個 html 檔。

台南小新 發表在 痞客邦 PIXNET 留言(0) 人氣()

TCP header format


4 bits 6 bits 6 bits 8 bits 8 bits
Source Port Destination Port
Sequence Number
Acknowledge Number
Data

台南小新 發表在 痞客邦 PIXNET 留言(0) 人氣()

MAC header format


8 bits 8 bits 8 bits 8 bits
destination mac address[0~3]
destination mac address[4~5] source mac address[0~1]
source mac address[2~5]
message type N/A

台南小新 發表在 痞客邦 PIXNET 留言(0) 人氣()

最近在摸 IC+ IP210S 的晶片,是一個內建 PHY 的 8052 cpu,由於原廠把一堆東西都做成 library,所以只好一切從頭自己來建立囉。

計算方式

計算方式請參考 RFC 1071,主要算法就是以 16bits 為一單位,全部相加起來所得出的值,如果超出 0xffff 也就是有進位,就要把 32bits 拆成二個 16bits 再相加,最後取 not 值就是 checksum。

台南小新 發表在 痞客邦 PIXNET 留言(0) 人氣()