UDP | 您所在的位置:网站首页 › UDP报文分析 › UDP |
UDP数据解析 UDP Client发送 udp client(192.168.137.1:10001) udp server(192.168.137.128:10001) client发送数据0x01; 使用wireshark得到IP数据包内容: 00 0c 29 55 dc c7 00 50 56 c0 00 08 08 00 45 00 00 1d e0 40 00 00 40 11 06 bd c0 a8 89 01 c0 a8 89 80 27 11 27 11 00 09 1c e7 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
以太网协议(Ethernet II): 00 0c 29 55 dc c7 :目标MAC地址(硬件唯一) 00 50 56 c0 00 08 :来源MAC地址(硬件唯一) 08 00 :协议类型(IP协议数据) IP数据协议: 45 :01000101—>(4表示IPV4; 5表示IP数据报文头一共5x4=20Byte) :20byte数据为:45 00 00 1d e0 40 00 00 40 11 06 bd c0 a8 : 89 01 c0 a8 89 80 : 00 1d :表示整个IP数据报文(包括头)一共29Byte E0 40 :identification标识符;唯一的标识主机发送的每一份数据,当IP :报文分片时,每个分片的identification是一样的; 00 00 :flags标记位与片位移,标记位共3位,第一位保留置0 :第二位don not fragments:1不分片,0分片 :第三位more fragments:1更多分片,0最后一片 :后面13位:片移位:本分片在原始数据报文中相对首位的偏移位(需要乘以8) 40 :Time to live(TTL),设置数据报文可经过的路由器数量上限 11 :17对应UDP协议号(TCP对应的是6) 06 bd :header checksum值;相加取反(45-80) C0 a8 89 01 :来源地址192.168.137.1 C0 a8 89 80 :目标地址192.168.137.128 UDP(用户数据报协议)协议: 27 11 :来源地址端口10001 27 11 :目标地址端口10001 00 09 :UDP数据包的长度是9Byte 1c e7 :udp数据包的checksum值;伪首部+UDP首部+数据; :伪首部+UDP协议号+UDP数据长度+UDP首部+UDP数据 : c0a8+8901+c0a8+8980+0011+0009+2711+2711+0009+0100 01 :传输的数据内容0x01 00 00 …… :padding,数据不足64Byte时,填充无用数据如0x00,因为 :标准以太网帧长度下限为64Byete,上限为1518Byte UDP Server 回包 udp server(192.168.137.128:10001) udp client(192.168.137.1:10001) server回复数据0x01; 使用wireshark得到IP数据包内容: 00 50 56 c0 00 08 00 0c 29 55 dc c7 08 00 45 00 00 1d e4 a2 40 00 40 11 c2 5a c0 a8 89 80 c0 a8 89 01 27 11 27 11 00 09 93 ed 01 以太网协议(Ethernet II): 00 50 56 c0 00 08 :目标MAC地址(硬件唯一) 00 0c 29 55 dc c7 :来源MAC地址(硬件唯一) 08 00 :协议类型(IP协议数据) IP数据协议: 45 :01000101—>(4表示IPV4; 5表示IP数据报文头一共5x4=20Byte) 00 :前3字节“优先权”选择 :第4字节“时延” :第5字节“吞吐量” :第6字节“可靠性” :第7字节“开销” :第8字节“保留位”,恒设置0 00 1d :表示整个IP数据报文(包括头)一共29Byte E4 a2 :identification标识符;唯一的标识主机发送的每一份数据,当IP :报文分片时,每个分片的identification是一样的; 40 00 :flags标记位与片位移,标记位共3位,第一位保留置0 :第二位don not fragments:1不分片,0分片 :第三位more fragments:1更多分片,0最后一片 :后面13位:片移位:本分片在原始数据报文中相对首位的偏移位(需要乘以8) 40 :Time to live(TTL),设置数据报文可经过的路由器数量上限 11 :17对应UDP协议号(TCP对应的是6) C2 5a :header checksum值;相加取反(45-01) C0 a8 89 80 :来源地址192.168.137.128 C0 a8 89 01 :目标地址192.168.137.1 UDP(用户数据报协议)协议: 27 11 :来源地址端口10001 27 11 :目标地址端口10001 00 09 :UDP数据包的长度是9Byte 93 ed :udp数据包的checksum值;伪首部+UDP首部+数据; :伪首部+UDP协议号+UDP数据长度+UDP首部+UDP数据 : ???? 01 :传输的数据内容0x01 UDP传输机制 使用UDP协议进行传输时,要具备以下信息: 数据报文的目标IP地址;数据报文的目标地址端口;UDP数据长度UDP传输的数据内容UDP数据包的checksumTCP数据解析 三次握手(建立连接) 第一次握手 tcp client(192.168.137.1:10001) tcp server(192.168.137.128:10001) 使用wireshark得到IP数据包内容: 00 0c 29 55 dc c7 00 50 56 c0 00 08 08 00 45 00 00 34 c8 04 40 00 40 06 de ec c0 a8 89 01 c0 a8 89 80 27 11 27 11 e1 d2 a4 ef 00 00 00 00 80 02 Fa f0 0b 68 00 00 02 04 05 b4 01 03 03 08 01 01 04 02 TCP(传输控制协议)协议: Xx xx 27 11 27 11 e1 d2 a4 ef 00 00 00 00 80 02 Fa f0 0b 68 00 00 02 04 05 b4 01 03 03 08 01 01 04 02 27 11 :源端口号 27 11 :目标端口号 e1 d2 a4 ef :Sequence Number序列号;该字段用来标识TCP源端设备向目的端设备发送的字节流, :它表示在这个报文段中的第几个数据字节。 00 00 00 00 :Acknowledge Number确认号;该字段只在ACK标志被设置时有效; :确认号是上次已经成功收到的数据字节序号+1 :也即期望收到的下一个段的第一个字节 80 02 :第0至3bit代表数据长度,length=8x4=32Byte :第4至6bit Reserved :第7bit :Nonce ??? :第8bit :Congestion window Reduced(CWR) ??? :第9bit :ECN-Echo :第10bit :Urgent:紧急标志位,说明紧急指针有效 :第11bit :Acknowledgment,确认标志位 :第12bit :Push,推标志位,置位时表示接收方应立即请求将报文交给应用层 :第13bit :Reset,复位标志位 :第14bit :Syn,同步标志,该标志仅在3次握手建立TCP连接时有效 :第15bit :Fin,接收标志位 Fa f0 :window size;TCP流量控制有连接的每个窗口大小来提供。??? 0b 68 :TCP CheckSum 00 00 :Urgent Pointer紧急指针??? 02 04 05 b4 01 03 03 08 01 01 04 02 :Options,12Bytes :包含最长报文大小、窗口扩大选项、时间戳选项选择性确认??? 第二次握手 tcp server(192.168.137.128:10001) tcp client(192.168.137.1:10001) 使用wireshark得到IP数据包内容: 00 50 56 c0 00 08 00 0c 29 55 dc c7 08 00 45 00 00 34 00 00 40 00 40 06 a6 f1 c0 a8 89 80 c0 a8 89 01 27 11 27 11 08 f8 2c 26 e1 d2 a4 f0 80 12 Fa f0 93 f9 00 00 02 04 05 b4 01 01 04 02 01 03 03 07 TCP(传输控制协议)协议: Xx xx 27 11 27 11 08 f8 2c 26 e1 d2 a4 f0 80 12 Fa f0 93 f9 00 00 02 04 05 b4 01 01 04 02 01 03 03 07 第三次握手 tcp client(192.168.137.1:10001) tcp server(192.168.137.128:10001) 使用wireshark得到IP数据包内容: 00 0c 29 55 dc c7 00 50 56 c0 00 08 08 00 45 00 00 28 c8 05 40 00 40 06 de f7 c0 a8 89 01 c0 a8 89 80 27 11 27 11 e1 d2 a4 f0 08 f8 2c 27 50 10 10 0a 01 f3 00 00 00 00 00 00 00 00 TCP(传输控制协议)协议: Xx xx 27 11 27 11 e1 d2 a4 f0 08 f8 2c 27 50 10 10 0a 01 f3 00 00 00 00 00 00 00 00 三次握手机制 tcp client向tcp serve发送消息(第一次握手)SEQ=0、SYN=1 tcp server向tcp client发送消息(第二次握手)SEQ=0、SYN=1、ACK=1 tcp client向tcp server发送消息(第三次握手)SEQ=1、ACK=1 注:如收到SEQ=A;则回复ACK=A+1; 数据传输 第一帧: tcp client向tcp serve发送数据0x01PSH=1、SEQ=1、ACK=1、Len=1 tcp server向tcp client反馈SEQ=1、ACK=2、Len=0 第二帧: tcp server向tcp client发送数据0x01PSH=1、SEQ=1、ACK=2、Len=1 tcp client向tcp server反馈SEQ=2、ACK=2、Len=0 四次挥手(断开连接) tcp client向tcp serve发送消息(第一次挥手)SEQ=0、FIN=1 tcp server向tcp client发送消息(第二次挥手)SEQ=0、ACK=1 tcp server向tcp client发送消息(第三次挥手)SEQ=1、FIN=1、ACK=1 tcp client向tcp server发送消息(第四次挥手)SEQ=1、ACK=2 |
CopyRight 2018-2019 实验室设备网 版权所有 |