精华内容
下载资源
问答
  • 数据包封装解封装过程

    千次阅读 多人点赞 2020-02-13 17:14:17
    数据包封装解封装过程

    5 网络基础知识储备

    5.1 OSI七层模式

    OSI七层模式

    5.2 TCP/IP协议栈

    TCP/IP协议栈

    5.3 描述TCP协议状态机及三次握手四次挥手过程

    TCP协议状态机及三次握手四次挥手过程

    5.4 loopback网卡功能

    loopback网卡功能

    5.5 描述数据包封装解封装过程

    5.5.1 封装

    是将对象运行所需的资源封装在程序对象中——基本上,是方法和数据。

    • 封装过程
      • 应用层:原始数据被转换成二进制数据
      • 传输层:二进制数据被分割成小的数据段,并封装TCP头部 (数据段)
        (TCP头部的关键信息–端口号)
      • 网络层:传输层传来的数据被封装上IP头部 (数据包)
        (IP头部的关键信息–IP地址)
      • 数据链路层:网络层传来的数据被封装上MAC头部 (数据帧)
        (MAC头部的关键信息–MAC地址)
      • 物理层:二进制数据组成的比特流转化为电信号在网络中传输 (比特流)

    封装过程

    5.5.2 解封装

    接收数据的时候,会一层一层的把包头去掉

    • 解封过程
      • 物理层:将电信号转化为二进制数据,并将其送至数据链路层
      • 数据链路层:查看MAC地址,地址是自己,就拆掉MAC头部,继续传输
        地址不是自己,就丢弃数据
      • 网络层:查看IP地址,地址是自己,就拆掉IP头部,继续传输
        地址不是自己,就丢弃数据
      • 传输层:查看TCP头部,判断应该传到哪里,然后重组数据,传输到应用层
      • 应用层:二进制转化为原始数据
    小结
    • TCP通信的数据封装解封过程

    TCP

    5.6 端口号的作用及常用的协议端口号有哪些

    端口号的作用及常用的协议端口号

    5.7 IP模块

    IP模块

    5.8 基础路由和交换技术

    基础路由和交换技术

    展开全文
  • 详解数据包封装解封装过程

    千次阅读 2020-06-14 12:48:27
    此时数据封装: 源MAC:5489-9811-4145 目的MAC:00e0-fc2b-4913 源IP地址:2.2.2.1 目的IP地址:1.1.1.1 6、当数据到达AR1时,AR1对数据包进行解封装,发现目的MAC是自己接口的地址,此时会转发该数据包(不是自己...

    基本概念

    IP地址:指互联网协议地址,用于在整个互联网中标识设备的存在位置(私有地址除外)。

    MAC地址:为局域网地址,用于在一个局域网内确定主机的位置,这也说明了MAC只能在局部传递。

    一:当互访者在同一个局域网内,即IP地址在同网段

    实验拓扑:

    1、当PC3访问PC4时,由于PC3PC4处于相同网段,所以PC3会发送ARP广播报文,当LSW1收到广播报文时,会进行泛洪操作,ARP广播报文会从G0/0/2接口发出,PC4收到ARP广播报文时,发现34.1.1.4地址是我自己,此时PC4会回复一个ARP单播报文给PC3,里面携带自己的MAC地址。

    2、此时PC3封装的数据报文为:

    源MAC:5489-98C0-2E61      目的MAC:5489-984F-45CD

    源IP地址:34.1.1.3                  目的IP地址:34.1.1.4

    3、这样当数据发送到LSW1时,会根据源/目地址将数据发送给PC4

    4、当PC4PC3回包时会将PC3的MAC地址封装为目的MAC地址,当数据到达LSW1时,交换机根据目的MAC将数据发送给PC3,此时的数据封装为:

    源MAC:5489-984F-45CD     目的MAC:5489-98C0-2E61

    源IP地址:34.1.1.4                 目的IP地址:34.1.1.3

     

     

     





    二:当互访者在不同局域网内,即IP地址在不同网段

    实验拓扑:

     

     

    1、当PC1发现一个数据包的目的IP地址和自己不在同一个网段时,此时PC1会将数据交给网关来处理,所以PC1要首先知道网关的MAC地址(IP地址PC1已经知道),将数据发往网关设备,此时PC1会发送ARP请求,用于获取网关的MAC地址。

    2、此时PC1已经有了源/目地址,可以进行封装数据

    源MAC:5489-981D-0ADC       目的MAC:00e0-fc2b-4912

    源IP地址:1.1.1.1                      目的IP地址:2.2.2.1

    3、当数据到AR1时,会对数据进行解封装,发现目的MAC是自己接口的地址,此时会转发该数据包(不是自己接口的MAC会将该数据丢弃),首先会查看目的IP地址,发现目的地址和自己的G0/0/1接口处于同网段,所以会在G0/0/0接口发送ARP广播报文,用于获取2.2.2.2对应的MAC地址。

    4、此时,AR1会重新将报文进行封装,源MAC为自己出接口的MAC地址,目的MAC地址为PC2,源/目IP地址不会改变。

    源MAC:00e0-fc2b-4913       目的MAC:5489-9811-4145

    源IP地址:1.1.1.1                   目的IP地址:2.2.2.1

    5、当PC2PC1回包时,封装过程和以上过程类似,此时PC2已经知道网关的MAC地址(AR1PC2发送数据的源MAC就是网关的MAC地址),当回数据时,由于PC1和自己不在同一网络内,此时会将数据交给网关处理,目的MAC封装网关的MAC地址(即接口G0/0/1MAC地址),目的IP地址为PC1地址。

    此时数据封装:

    源MAC:5489-9811-4145        目的MAC:00e0-fc2b-4913

    源IP地址:2.2.2.1                     目的IP地址:1.1.1.1

    6、当数据到达AR1时,AR1对数据包进行解封装,发现目的MAC是自己接口的地址,此时会转发该数据包(不是自己接口的MAC会将该数据丢弃),首先会查看目的IP地址为1.1.1.1,目的地址和G0/0/0接口在同个网段,由刚才发送数据,此时AR1已经知道1.1.1.1MAC地址(发送给AR1的数据中源MAC就是1.1.1.1对应的MAC地址),这时候AR1会从新对数据进行封装,源MAC地址为能到达1.1.1.接口的MAC地址(即G0/0/0接口MAC地址)。

    此时数据封装:

    源MAC:00e0-fc2b-4912,目的MAC:5489-981D-0ADC

    源IP地址:2.2.2.1,目的IP地址:1.1.1.1

     


     

    总结:

    1. 当数据在单向传递时,源/目IP地址都不会发生改变,其实这也表明了IP地址(公网IP地址)的作用,用于在整个网络中标识设备的存在位置。
    2. 如果不同网段进行访问,每经过一个网络源/MAC地址会发生改变。

    由此可推算出,当经过多个路由设备时,源/MAC地址在和源/目IP地址的变化。

    注释:用字母代替每个接口的NAC地址,讨论PC1PC2的单向访问。

    1、在PC1上的数据封装为

    MAC地址:x         目的MAC地址:a

    IP地址:1.1.1.1     目的IP地址:2.2.2.1

    2、在AR1上的数据封装:

    MAC地址:b        目的MAC地址:c

    IP地址:1.1.1.1    目的IP地址:2.2.2.1

    3、在AR2上的数据封装:

    MAC地址:d         目的MAC地址:e

    IP地址:1.1.1.1     目的IP地址:2.2.2.1

    4、在AR3上的数据封装:

    MAC地址:f         目的MAC地址:g

    IP地址:1.1.1.1     目的IP地址:2.2.2.1

    5、在AR4上的数据封装:

    MAC地址:h        目的MAC地址:y

    IP地址:1.1.1.1    目的IP地址:2.2.2.1

    此时,数据发到了PC2上,当PC2会数据时,封装过程为该

     

    展开全文
  • 网络数据包封装解封装基本过程

    千次阅读 2020-07-29 15:27:57
        数据包   应用层     TCP头:源端口+目的端口 数据包 ... IP头:源IP地址+目的IP地址 ... 数据包 ...1、telnet应用封装telnet程序请求信息,作为数据包传送给下...

          数据包   应用层
        TCP头:源端口+目的端口 数据包   传输层
      IP头:源IP地址+目的IP地址 TCP头:源端口+目的端口 数据包   网络层
    Ethernet头:源MAC+目的MAC IP头:源IP地址+目的IP地址 TCP头:源端口+目的端口 数据包   链路层

    本机:192.168.144.223;执行命令:telnet 192.168.145.77 23

    【封装】1telnet应用封装telnet程序请求信息,作为数据包传送给下一层;
    【封装】2、传输层收到telnet数据包,在其前面封装一个TCP头部:本机随机启动一个端口作为源端口,23端口作为目的端口;然后将TCP报文传送给下一层;
    【封装】3、网络层在TCP报文前面封装一个IP头:本地IP地址作为源IP地址,192.168.145.77作为目的IP地址;(多网卡存在不同网段IP,会根据本机路由选择;)根据本地路由表项,查找下一跳地址,如果不在同一个网段,一般会使用default gateway作为下一跳;通过ARP协议查找gateway对应的MAC地址,ARP缓存表没有,则广播查找 who is 192.168.144.1
    【封装】4、数据链路层将IP报文,封装一层数据链路头:将下一跳MAC作为目的MAC192.168.144.223网卡的MAC作为源MAC
    5、把网络报文以二进制格式,通过网线发送给下一跳(基本上是路由器或者三层交换的入口);中间如果有二层交换机,根据MAC地址表,将数据报文转发到某一接口。
    【解封装】6、以太网帧发送到三层交换或者路由器,数据包将被解封装到IP报文,根据目的IP查找路由表,路由转发;
    【封装】7、在三层交换或路由器上,路由表项Inface接口MAC被封装成源MAC,对端接口MAC封装为目的MAC,发送到下一跳。
    8、重复6、7步进行路由转发,一直发送到目的IP。
    【解封装】9、在目的主机上,会进行解封装,然后根据目的Port发送到对应的进程,由该进程处理payload。
    10、回包重复1-9步过程。

    路由表项

    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         192.168.120.1    0.0.0.0         UG    0      0        0 br-ext
    192.168.120.0   0.0.0.0          255.255.254.0   U     0      0        0 br-ext
    

    ARP表项

    Address                  HWtype  HWaddress           Flags Mask            Iface
    10.42.2.0                ether   82:fd:67:52:6e:4a   CM                    flannel.1
    _gateway                 ether   48:7a:da:fa:aa:01   C                     ens192
    192.168.34.151           ether   54:bf:64:59:16:f0   C                     ens192
    10.42.0.12               ether   c2:50:c1:89:69:ab   C                     cni0
    

    MAC地址表

    MAC ADDR             VLAN ID       STATE          PORT INDEX              AGING TIME(s)
    0026-b935-e865       120          Learned    GigabitEthernet1/0/24         AGING
    展开全文
  • 当我们在七层协议最上层,主机A想和其它主机通信, 比如telnet到主机B,各层都为数据打包后再封装上自己能识别的数据标签,现在我们只说四层以下的通信过程。 1、当一个高层的数据包到达传输层,由于telnet使用TCP...

    当我们在七层协议最上层,主机A想和其它主机通信, 比如telnet到主机B,各层都为数据打包后再封装上自己能识别的数据标签,现在我们只说四层以下的通信过程。

    1、当一个高层的数据包到达传输层,由于telnet使用TCP协议,传输层将上层传过来的数据不变再封装TCP的包头以便目标主机可以正确解包,继续向下层(网络层)传递。
    
    2、网络层同样不会改变之前的数据包,当然也包括之前封装的任何包头,
    首先主机A要对目标主机作判断,他会用自己的IP地址和自己的子网掩码进行与运算结果是172.16.12.0
    然后在拿自己的掩码和主机B的IP地址作与运算,假若结果是172.16.12.0,这个时候他知道他们在同一网段内,这时他会封装自己的IP及目标的IP地址,同上层传下来的数据一下向下传。
    假若是61.152.251.0,发现不在同一个网段,注意:这时也是用自己IP和目标IP进行封装,然后向下层传递。 在数据链路层这时就不会封装目的的MAC地址,他也不知道MAC地址是什么,这时他会封装网关的MAC地址,而让网关将数据转发出去。
    同时在网关收到数据时候,他会查看目标IP地址,当然不是他自己的IP地址了,所以他知道这个数据包是要由他路由出去的,然后路由器查找自己的路由表,若存在到该网络的路由便按路由表从对应接口发出去,
    若路由表中没有到该网络的路由则检查是否存在默认路由,如果没有则丢弃数据包,并向源主机发送网络不可达icmp消息。
    若一切正常,路由器会把数据包发给了他的邻居或网络运营商的路由器上去,重复以上动作,在TTL值为0之前将数据传递给某X官方网站,数据传递成功!
    3、数据链路层其实包括两个子层,一是LLC子层另一个是MAC子层。我们知道在以太网中通信是物理寻址的,在这层中会封装自己的MAC地址及对方的MAC地址。
    当然用户是没有通知他MAC地址是多少的,这时主机会查自己的缓存表,看有没有主机B的MAC地址,
    如果有就封装,否则他会发一个ARP的地址解析广播包,该包虽然可以向所有处在同一广播域中的主机发送,
    但只会传递到不同网络的主机的数据链路层,更确切的说传递到了不同一网络的主机的数据链路层的高层后就被丢弃了。
    4、接着该数据会从我们的网线等传输介质传出去,主机B当收到数据的时候进行相同的工作但是作相反的操作

     

    转载于:https://www.cnblogs.com/dadonggg/p/8580987.html

    展开全文
  • 当我们在七层协议最上层,主机A想和其它主机通信, 比如telnet到主机B,各层都为数据打包后再封装上自己能识别的数据标签,现在我们只说四层以下的通信过程。1、当一个高层的数据包到达传输层,由于telnet使用TCP协议...
  • 互联数据包封装/解封装过程(OSI) 一言不合来张图: 注意:1.mac地址只在本地有效,通过路由器传输过程中,mac地址会发生改变2.路由器根据路由表识别目标IP地址网段信息,确认是否可以进行转发,或是进行数据包的丢弃...
  • 简述数据的解封装过程 解答: 1)数据帧是数据链路层的PDU 2)网络层的PDU是数据包 3)简述数据的封装过程 在应用层,数据被“翻译”为网络世界使用的语言——二进制编码数据。 在传输层,上层数据被分割成小的数据...
  • 如图,Host A 向Host B 发送数据,路由器会对数据包封装如下。1.Host A 在网络层将上层的数据封装成IP数据包,其首部包含了源地址和目的地址。源地址本机的IP 192.168.1.2,目的地址为192.168.2.2。在数据链路层将...
  • sk buff封装和解封装网络数据包过程详解
  • 路由的工作原理、路由转发数据包封装过程、基础配置命令一、路由器的工作原理1.1 路由概况1.2 路由器的工作原理二、路由表的形成 一、路由器的工作原理 1.1 路由概况 路由:就是从源主机到目的主机的转发过程 ...
  • GRE封装解封装过程

    千次阅读 2015-07-30 16:34:43
    GRE(Generic Routing Encapsulation,通用路由封装)协议是对某些网络层协议(IPX, AppleTalk, IP,etc.)的数据报文进行封装,使这些被封装的数据报文能够在另一个网络层协议(如IP)中传输。  GRE采用了Tunnel...
  • sk_buff封装和解封装网络数据包过程详解

    万次阅读 多人点赞 2015-02-08 15:00:08
    可以说sk_buff结构体是Linux网络协议栈的核心中的核心,几乎所有... sk_buff就是网络数据包本身以及针对它的操作元数据。 想要理解sk_buff,最简单的方式就是凭着自己对网络协议栈的理解封装一个直到以太层的数据帧并
  • WireShark数据包分析数据封装

    千次阅读 2015-03-11 15:05:08
    WireShark数据包分析数据封装
  • 文章目录前言一、OSI 七层参考模型二、数据的封装与解封装过程1.数据的封装过程2.数据的解封装过程3.PDU 协议数据单元 前言 在网络环境中常用的分层模型有两种:OSI 参考模型与 TCP/IP 参考模型。下面将分别 介绍...
  • 数据传输封装与解封装过程

    千次阅读 2019-12-02 20:07:16
    数据传输封装与解封装过程** 数据封装过程:客户端 ①:产生通讯数据信息 – 数据信息:PDU(协议数据单元) ②:传输层封装过程 – 传输层头部信息+数据信息 ③:网络层封装过程 – 网络头部信息+传输层头部信息+数据信息 ...
  • 在网络层中对这些数据段头部添加一些网络层协议控制信息就组成了数据包,这就是包的封装过程数据包的头部包含源节点 和目标节点的网络层地址,在接收方, 数据从底层到达网络层时,要去掉在数据链路层加上的...
  • OSI七层模型 国际标准化组织(International Standard Organization,ISO)于1984年...发送方完成封装过程,接收方完成解封装过程 数据解封装过程 和封装过程相反            
  • 路由器封装数据包

    2011-06-28 20:19:00
    目的:把最基本的数据包被路由器解封装、转发、再封装的过程用动画显示出来。 拓扑:两个主机经一个路由器相连。 步骤:1)H1 ping H2, 得先封装三个报头(link network, protocol) 后才发送。 2) 路由器收到...
  • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)加上MAC头,加完后再加上一个FCS校验组成数据帧,就封装完成了,然后在物理层通过Bit来...
  • 一、封装过程: 应用层 数据,DATE 传输层 TCP/UDP+DATE 数据段 网络层 IP+TCP/UDP+DATE 包 网络借口层 MAC+ P+TCP/UDP+DATE+CRC(校验) 比特流 二、解封的过程 网络借口层 MAC+ IP+TCP/UDP+DATE+CRC(校验) ...
  • 分层结构及解封装过程1.OSI模型的分层结构2.TCP/IP协议栈的分层结构及协议3.数据传输中的封装和解封装的过程 1.OSI模型的分层结构 国际标准化组织(ISO),1984年颁布了开放系统互联(OSI)参考模型,一个开放式体系...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,184
精华内容 6,073
关键字:

数据包封装解封装过程