ethernet 封包格式:
Preamble (8bytes)|Destination(6bytes)|Source(6bytes)|Message Type(2bytes)|Data(46~1500bytes)|Frame Check Sequence/Cyclic Redundancy Check (CRC)(4bytes)
Ethernet(IEEE 802.3) frame format :
IEEE 802.2/802.3(RFC 1042)和以太网的封装格式(RFC 894)
由上图可以看出,以太网的封装格式主要分ARP、RARP、IP,。另外在IP数据 报下,又可分裂出:ICMP, UDP, TCP等。
ARP frame formats as used when mapping IPv4 addresses to 48-bit MAC(Ethernet) addresses
IPv4 封裝的表頭資料繪製如下:
4 bits | 4 bits | 8 bits | 3 bits | 13 bits |
Version | IHL | Type of Service | Total Length | |
Identification | Flags | Fragmentation Offset | ||
Time To Live | Protocol | Header Checksum | ||
Source Address | ||||
Destination Address | ||||
Options | Padding | |||
Data |
ICMP信息 封装在IPv4中
ICMP(Internet control message) 信息表头
UDP信息封装在IPv4中:
UDP表头格式和payload area:
TCP信息封装在IPv4中:
tcp表头格式:
综述:
网络数据帧无非是串数据,为了物理信号传输的可靠性、应用的方便等加入了表头,可以去表头逐层解剖开来,而真正要传送的数据也可以制定类似的格式,:
总概的模式如下图,摘自netman的TCP/IP 層級資料流:
参考:
1. http://www.study-area.org/network/networkfr1.htm
2. http://linux.vbird.org/linux_server/0110network_basic.php#tcpip_link_mac
3. TCP/IP Illustrated, Volume1, the Protocols SECOND EDITION, Kevin R.Rall , W.Richard Stevens
备注:
1. 20160223,wiwa草稿