你真的了解数据的封装与解封装的过程吗?

一、本实例以ping包为例进行展开说明如图:

数据封装格式:

SMAC

DMAC

SIP

DIP

ICMP

Data

首先在了解数据封装与解封装之前,需要熟悉ISO七层模型的功能及报文格式,其中报文格式包括:以太帧、ip报文格式、icmp报文格式;

ISO七层模型:

层次

功能

应用层

提供各种应用程序、协议(http、dns、dhcp等等)

表示层

对数据的压缩和解压缩、加解密

会话层

指定通信方式、创建和注销会话

传输层

提供可靠或不可靠的端到端的传输(tcp/udp)-数据段/报

网络层

逻辑寻址、路由选择(ip)--数据包/分组

数据链路层

提供节点到节点的传输、差错控制--数据帧

物理层

提供机械与电器规约---比特流

以太网报文格式:

DMAC

SMAC

Type

Data

CRC

详解:

字段

长度

含义

DMAC

6字节

目的MAC地址,该字段确定帧的接收者。

SMAC

6字节

源MAC地址,该字段标识发送帧的工作站。

Type

2字节

协议类型。

Data

变长

数据字段的最小长度必须为46字节以保证帧长至少为64字节如果不够必须填充至64字节,数据字段的最大长度为1500字节。

CRC

4字节

用于帧内后续字节差错的循环冗余检验;

IP报文格式:

Version

IHL

Type of Service

Total Length

Identification

Flags

Fragment Offset

Time to Live

Protocol

Header Checksum

Source Address

Destination Address

Options

Padding

详解:(由于报文类型较多,在此我就介绍这次数据包封装常见的报文类型)

字段

长度

含义

Protocol

8比特

协议:下一层协议。指出此数据包携带的数据使用何种协议,以便目的主机的IP层将数据部分上交给哪个进程处理。

常见值:

1: ICMP, Internet Control Message [RFC792]

S Address

32比特

源ip地址

D Address

32比特

目的ip地址

ICMP Echo Request/Reply消息格式 :

Type

Code

Checksum

Identifier

Sequence Number

Data

详解:

字段

长度

含义

Type

1字节

消息类型:

0:回显应答报文

8:请求回显报文

Code

1字节

消息代码,此处值为0。

二、下面就详细介绍数据的封装与解封装的过程;

数据封装:

1.PC1(192.168.1.1)ping PC2(192.168.1.2)

(1)ping包发送后pc1通过广播方式发送arp请求报文;

注:在arp 请求报文中目的mac地址应该为全零,由于模拟器的原因所有为全F

(2)通过PC2的回报文中可以看到PC的MAC地址,pc1将其加入到自己的arp表中;

 

2.数据从上而下(应用层--物理层)封装:

SMAC

DMAC

SIP

DIP

ICMP

Data

1C:AA

01:9D

1.1

1.2

Type:8

Code:0

Data

 

3.交换机收到PC发送的ICMP报文之后进行解封装,数据从下而上(物理层--应用层)拆到数据链路层,看到DMAC之后查看自己的mac地址表,发现有01:9d对应的表项则继续封装上对应字段,进行转发;

SMAC

DMAC

SIP

DIP

ICMP

Data

1C:AA

01:9D

1.1

1.2

Type:8

Code:0

Data

4.pc2收到交换机发送的数据包之后进行解封装,一直拆到来看ICMP协议,发现其中字段Type:8 Code:0 为pc1的request请求,PC2从新封装数据包发送给pc1;

SMAC

DMAC

SIP

DIP

ICMP

Data

01:9D

1C:AA

1.2

1.1

Type:0

Code:0

Data

5、交换机转发过程请看步骤3

  • 11
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值