以太网帧,PPPOE,IP,TCP,UDP,FTP,DNS协议分析.doc

以太网帧,PPPOE,IP,TCP,UDP,FTP,DNS协议分析

以太网帧格式 来自线路的二进制数据包称作一个帧。从物理线路上看到的帧,除其他信息外,还有前导码和帧开始符。任何物理硬件都会需要这些信息。 下面的表格显示了在以1500个八位元组为MTU传输(有些吉比特以太网甚至更高速以太网支持更大的帧,称作巨型帧)时的完整帧格式。一个八位元组是八个位组成的数据(也就是现代计算机的一个字节)。 表1:802.3 以太网帧结构 802.3 以太网帧结构前导码 帧开始符 MAC 目标地址 MAC 源地址 802.1Q 标签 (可选) 以太类型或长度 负载 冗余校验 帧间距 7个octet1个octet 6 octets 6 octets (4 octets) 2 octets 46–1500 octets 4 octets 12 octets 64–1522 octets 72–1530 octets 84–1542 octets PPPOE格式 PPPOE,全称Point-to-Point Protocol Over Ethernet,它工作在OSI的数据链路层,PPPOE协议提供了在广播式的网络(如以太网)中多台主机连接到远端的访问集中器(我们对目前能完成上述功能的设备为宽带接入服务器)上的一种标准。 PPPOE协议共包括两个阶段,即PPPOE的发现阶段(PPPOE Discovery Stage)和PPPOE的会话阶段(PPPOE Session Stage)。而两者的主要区别在于只是在PPP的数据报文前封装了PPPOE的报文头。 PPPOE的数据报文是被封装在以太网帧的数据域内的。简单来说我们可能把PPPOE报文分成两大块,,一大块是PPPOE的数据报头,另一块则是PPPOE的净载荷(数据域),对于PPPOE报文数据域中的内容会随着会话过程的进行而不断改变。下表为PPPOE的报文的格式: 表2:PPPOE报文的格式 + Bits 0–3 4–7 8–15 16–31 0 版本 类型 代码 会话ID 32 长度 数据 以下是对上表中PPPOE各个字段的描述: 表1:PPPOE各个字段的描述 版本 这个域的内容填充0x1。 类型 这个域的内容填充0x1 代码 对于PPPOE 的不同阶段这个部分的内容也是不一样的 会话ID 当访问集中器还未分配唯一的会话ID给用户主机的话,则该域内的内容必须填充为0x0000,一旦主机获取了会话ID后,那么在后续的所有报文中该域必须填充那个唯一的会话ID值。 长度 数据部分的长度 数据 在PPPOE的不同阶段该域内的数据内容会有很大的不同。在PPPOE的发现阶段时,该域内会填充一些Tag(标记);而在PPPOE的会话阶段,该域则携带的是PPP的报文。 IP数据报格式 TCP/IP协议定义了一个在因特网上传输的包,称为IP数据报 (IP Datagram)。这是一个与硬件无关的虚拟包,由首部和数据两部分组成。首部的前一部分是固定长度,共 20 字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。首都中的源地址和目的地址都是 IP 协议地址。IP数据报头格式见下图: :表3:IP数据报格式 + Bits 0–3 4–7 8–15 16–18 19–31 0 版本 首部长度 服务类型 总长度 32 标识(Identification) 标志(Flag) 片偏移 64 生存时间 协议 首部检验和 96 源地址 128 目的地址 160 选用 160/192+ 数据 IP数据报各个字段的描述: 版本 指IP协议的版本。通信双方使用的IP协议版本必须一致。日前广泛使用的 IP协议版本号为 4 。 首部长度 该字段用来描述32位字的个数,最大为15(即60字节),当 IP 分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。 服务 只有在使用区分服务时,这个字段才起作用。 总长度 总长度指首都及数据之和的长度,单位为字节。 标识 该字段并不表示序号,当数据报由于长度超过网络的 MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。 标志 目前只有2位有意义。最低位记为 MF (More Fragment),MF=1即表示后面“还有分片”的数据报,标志字段中间的一位记为 DF(Dont Fragment),意思是“不能分片”。只有当 DF=0时才允许分片。 片偏移 较长的分组在分片后,某片在原分组中的相对位置。片偏移以 8个字节为偏移单位。 生存时间 TTL (Time To Live),其表明数据报在网络中的寿命。 协议 指出此数据报携带的数据是使用何种协议。 首部检验和 这个字段只检验数据报

文档评论(0)

1亿VIP精品文档

相关文档