计算机网络--03 网络分(物理层 数据链路层 网络层)

本文详细介绍了计算机网络中的网络分层,包括物理层、数据链路层和网络层的主要功能和协议。物理层负责比特流的透明传输,数据链路层解决封装成帧、差错校验和透明传输问题,而网络层则涉及IP数据包的格式和路由。
摘要由CSDN通过智能技术生成

1. 为什么要有网络分层
  • 为了网络数据更好的传输和工作
2. 有哪些网络分层模型

在这里插入图片描述

3. 客户端请求向服务器请求数据的过程

在这里插入图片描述

4. 分层对应的协议

在这里插入图片描述

5 物理层
  • 5.1 物理层的工作内容
  • 物理层利用传输介质为通信的两端建立、管理和释放物理链接,实现比特流的透明传输,保证比特流正确的传输到对端。 物理层定义了接口标准、线缆标准、传输速率、传输方式等 物理层中承载的是比特流单位是比特(bit)

比如你在和朋友聊天,说话内容需要由大脑编排好,然后将你要讲的内容送达到嘴巴,嘴巴通过发出声音让对方听到你说话的内容。并且你在讲话时也无需考虑声波会如何传送到对方的耳朵中的,并且你也看不到声波是如何传达到对方的耳朵中的。这里声波就可以理解为是‘比特流’,你的嘴巴就是提供了‘物理层’的服务。

嘴巴负责开始谈话(建立链接)、判断谈话的开始和结束(管理链接)、结束谈话(释放链接)。并且嘴巴也无需考虑声波是如何传达到对方的耳朵中,所以声波对于嘴巴是透明的。在网络中‘透明’=管理成本低

5.2 物理层的数据传输类型
  • 在物理层的传输介质中传输的信号共分为两种,模拟信号、数字信号 。
    家里的电话、有线电视就是用的模拟信号,电脑上网就用的是数字信号。
  • 模拟信号:连续的信号 适合长距离传输 但是抗干扰能力差 受到干扰时波形变化很难纠正
  • 数字信号 不适合长距离传呼 抗干扰能力强 受到干扰时波形失真可以修复

在这里插入图片描述

5.3 数据通信模型

5.4 信道

6 数据链路层
6.1 什么是链路
  • 链路:从1个节点到相邻节点的一段物理线路(有线或无线),中间没有其他交换节点
    在这里插入图片描述
6.2 链路层3个基本问题
6.2.1 封装成帧
  • 数据链路层会将网络层传下来的数据包 封装成帧
    在这里插入图片描述
  • 每一种数据链路层协议都规定了所能够传送的帧的数据长度上限 以太网的MTU不能超过1500字节
6.2.2 差错校验

发送前 根据数据部分 + 首部计算得出的值填充到FCS中,网卡接受到后再进行一次计算 如果和FCS值不一致 则丢弃
在这里插入图片描述

6.2.3 透明传输
  • 如果数据和帧开始符和帧结束符一致,那么就会填充ESC字符 接收端接收到字符号会去掉ESC字符, 也就是说,“ESC”字符的加加减减只在数据链路层中实现,其它层之后就好似都无发生过,像没加过一样,所以叫透明传输。
    字节填充/字符填充
    使用SOH(Start Of Header)作为帧开始符
    使用EOT(End Of Transmission)作为帧结束符
    数据部分一旦出现了SOH、EOT,就需要进行转义

在这里插入图片描述

6.3 链路层协议
6.3.1 协议分类
  • 在一条链路上传输数据时,需要有对应的通信协议来控制数据的传输不同类型的数据链路,所用的通信协议可能是不同
    • 广播信道:CSMA/CD协议(比如同轴电缆、集线器等组成的网络)
    • 点对点信道:PPP协议(比如2个路由器之间的信道)
  • CSMA/CD(Carrier Sense Multiple Access with Collision Detectio):载波侦听多路访问/冲突检测

CSMA节点在每一次发送之前先监听信道是否是空闲的,如果信道不是空闲的话,那么就不发送数据,等待一会再进行尝试。只有确保是
空闲的情况下,才可以发送数据,从而避免打断其他节点正在进行的传输过程。

6.3.2 以太网帧
  • 用交换机组建的网络,已经支持全双工通信,不需要再使用CSMA/CD,但它传输的帧依然是以太网帧 所以,用交换机组建的网络,依然可以叫做以太网。
    使用了CSMA/CD的网络可以称为是以太网(Ethernet,它传输的是以太网帧以太网帧的格式有:Ethernet V2标准、IEEE的802.3标准
    使用最多的是:Ethernet V2标准

  • 以太网帧的格式:

  • 以太网帧:首部 + 数据 + FCS

  • 首部:目标MAC +源MAC + 网络类型(IPV4 IPV6)

在这里插入图片描述

7 网络层
7.1.1 网络层数据包格式

网络层数据包(IP数据包,Packet)由首部+数据
数据:很多时候是由传输层传递下来的数据段(Segment)
在这里插入图片描述

7.1.2 格式详解
  • 版本:占4位

IPv4 :0b0100
IPv6:0b0110

  • 首部长度:占4位 二进制乘以4才是最终长度

0b0100:20(最小值)
0b1111:60(最大值)

  • 区分服务:占8位

全是0 表示不区分服务 非0表示不同的服务 服务不同发送的包通过的优先级会不同,所以可以用于提高网络的服务质量。

  • 总长度(16位)

首部+数据的长度之和 最大值65535字节 但是帧的长度又不能超过1500字节 所以过大的IP数据包需要分片(fragments)传输给数据链路层。每一片都有自己的网络层首部(IP首部)

  • 标识(Identification)

占16位
用来标识是否属于同一个数据包。当数据包过大进行分片时,同一个数据包的所有片的标识都是一样的 有一个计数器专门管理数据包的ID,每发出一个数据包,ID就加1

  • 标志

占3位
第1位(Reserved Bit):保留
第2位(Don’t Fragment):1代表不允许分片,0代表允许分片
第3位(More Fragments):1代表不是最后一片,0代表是最后一片

  • 片偏移(Fragment Offset) 占13位 通过标识位+片偏移 可将多个Fragments按照正确的顺序拼接为一个完整的数据包。

片偏移乘以8:字节偏移
每一片的长度一定是8的整数倍

在这里插入图片描述

假如一个4000字节的数据包 那么多个片中的标识位和偏移值如下
在这里插入图片描述

  • 生存时间(Time To Live,TTL) 占8位

每个路由器在转发之前会将TTL减1,一旦发现TTL减为0,路由器会返回错误报告
观察使用ping命令后的TTL,能够推测出对方的操作系统、中间经过了多少个路由器
在这里插入图片描述

  • 首部校验和 占16位

检验数据报的首部收否错误
既然有了帧校验为什么还需要有首部校验呢?
首部校验是每个路由器拿到数据报都会进行校验 并不会校验帧,因为路由器工作在网络层。而且帧只有网卡才会去校验。

  • 网卡接收到一个帧,首先会进行差错校验,如果校验通过则接收,否则丢弃
    Wireshark抓到的帧没有FCS ,因为它抓到的是差错校验通过的帧(帧尾的FCS会被硬件去掉)
    在这里插入图片描述
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值