HCIP笔记

第一部分 计算机网络的基础
应用层:自然语言(抽象语言)---编码(指代的是一种提前规定好的对应关系)
会话层:编码---二进制字符串
数据链路层:二进制---电信号
物理层:处理电信号
OSI参考模型
开放式系统互联模型;OSI/RMISO这个组织提出。核心点---分层
每一个子层,相互之间独立且互相依赖。
应用层
表示层---数据格式化
会话层---建立、维护、管理一个会话连接,服务到服务的连接
传输层---TCP/UDP,建立、维护、管理一个端到端的连接
网络层---IP寻址;路由选择
数据链路层---控制网络层和物理层之间的通信
物理层---传输比特流
ARP协议
  • 正向ARP
通过已知的IP地址,来获取目的的MAC地址
本机如果获取到对端的回复信息,那么则会将数据报文中的源IP地址和源MAC地址记录在本地
ARP缓存表中。每一项表单的老化时间(180S
  • 反向ARP
通过已知的MAC地址,来获取目标的IP地址
  • 免费ARP
自我介绍,冲突检测
TCP/IP模型
一种即使通信线路被破坏了,也能够通过其他线路进行通信的技术。--->分组网络
PDU---协议数据单元
数据报文
数据段
数据包
数据帧
比特流
将数据从上而下,从应用层到物理层的整个加工过程称为---封装
而反过来,从物理层到应用层的加工过程被称为----解封装
应用层---Data,不同的应用,需要封装的内容是不同的。
传输层---主要是使用端口号来标定应用。真正进行工作的是TCPUDP两个协议。
网络层---主要进行封装IP地址,来进行逻辑寻址。真正工作的是IP协议。
数据链路层---封装MAC地址,进行物理寻址。真正工作的一般是以太网协议。
物理层
以太网类型字段:
0x0800--->网络层使用的是IP协议
0x0806--->网络层使用的是ARP协议
协议字段:
6----TCP协议
17---UDP协议
跨层封装
物理层---传输数据比特流,而不是具体的传输媒体
      任务:确定传输媒体的接口的标准
三大特性:
  • 机械特性---规定连接时采用的接口形状和数据。
  • 电气特性---规定传输的二进制的位数,电压的范围。
  • 功能特性---指明某一个电平标识何种意义。
数据是什么?信号是什么?码元是什么?
  • 数据---指传输信息的实体;数据的传输方式分为串行传输并行传输
  1. 串行传输----1bit1bit的按照时间顺序的传输。网线。
  2. 并行传输----若干bit通过多条通信信道同时传输。网卡与芯片之间的信息传输。
  • 信号---是数据的电气或电磁表现形式,是数据在传输过程中的存在形式
  1. 模拟信号---连续变化的信号
  2. 数字信号---取值仅允许有限的几个数值的信号
  • 码元----是指一个固定时长的信号波形表示的一位K进制数字,是数字信号的计量单位。
  • 速率---数据率,数据传输的速率。表示单位时间内传输的数据量。
  1. 一般数据率使用码元传输速率信息传输速率表示。
  • 码元传输速率----波特率(Baud
  • 信息传输速率----比特率(b/s
    (两者之间的关系
    若一个码元携带n bit的信息量,则M Baud的码元传输速率所对应的信息传输速率为M*n b/s)
  • 带宽---最高的数据率
    一般使用比特率来描述

    通信交换技术

    电路交换
           在进行数据传输前,两个节点之间,必须先建立一条专用(双方独占)的物理通信路径

优点
1、传输时延小,因为是专用通道
2、有序传输--->没有乱序行为
3、没有冲突
4、使用范围广--->模拟信号和数字信号都可以传输
5、实用性强
缺点
1、线路独占,信道使用率低
2、灵活性差
3、没有数据存储能力
报文交换
数据交换的单位是报文,报文携带有目的地址,源地址等信息。存储-转发方式
特点:存储接收到的报文,判断其目的地址以选择路径,最后,在下一跳转发设备空闲时,将数据
转发给下一跳设备。
优点:
1、无需建立连接
2、动态的分配线路:交换设备先存储报文,然后选择一条合适的空闲线路,将报文转发出去。
3、线路的可靠性高
4、线路利用率高--->可以为多个目标提供服务
缺点:
1、数据报文进入交换节点后,需要经历,存储--转发,其本质是在交换设备内部进行数据检测。时延较大
2、只适用于数字信号
分组交换
通信双方以分组为单位,使用存储-转发机制实现数据交互的通信方式---包交换
包交换:将用户通信的数据划分成多个更小的等长数据段,在每个数据段的前面都加上必要的控制
信息,每个携带有控制信息的数据段就构成了一个分组。
  • 数据报分组交换
  • 虚电路分组交换
    优点:
    1、线路利用率高
    2、简化数据存储过程
    3、加速传输:逐个报文单独选择链路进行发送,同步进行。
    4、减小了数据出错的几率
    缺点:
    1、需要传输额外的信息---每个小的分组都需要添加上控制信息(源目IP、源目MAC
    2、因为分组是同步传输的,所以可能出现失序、丢失或重复的分组。

数据链路层

       数据链路--->指网络中两个节点之间的逻辑通道。用于实现控制数据传输的硬件和软件加载到物理链路上,从而形成一种数据链路。
       封装成帧--->数据链路层将上层数据的分组信息,以数据帧的格式进行传输。
       数据帧长度=数据长度+首部长度+尾部长度
       帧定界--->帧首部和尾部包含的控制信息,其中有一部分信息代表的含义是数据帧的开始和结束。
        最大传输单元(MTU):为了提高数据帧的传输效率,使得数据帧中的数据部分大小尽可能的大于
        首部和尾部的长度,但该数值不可以过大1500字节(在以太网环境下)
        数据帧的编码---->零比特填充的首位标志法。违规编码法。曼彻斯特编码。
介质访问控制
  • MAC子层----介质访问控制---负责控制和连接物理层的硬件
  • 共享介质
  • 多个设备共享一个通信介质的网络模式
  • 半双工模式
  • 访问控制:通过一种机制来控制哪个设备可以使用通信介质。
  • 争用方式--->载波侦听多路访问(CSMA
  • 网络中的每个站点,采用先到先得的方式占用信道。
  • 以太网中使用的是CSMA/CD机制
  • 令牌传递方式
  • 应用在一个叫做物理星型拓扑或逻辑环形拓扑中,通过令牌的方式来传输数据。
  • 令牌:一个特殊的数据帧。
  • 非共享介质
  • 每个站点直连交换机,由交换机负责转发数据帧的模式。
  • 以太网组网方式,使用全双工通信。
  • LLC子层------逻辑链路控制---负责为逻辑链路提供服务的
网络层
逻辑寻址--->尽最大的努力交付数据服务。
路由器--->网络互联和路由选择
路由选择----确定路径
按照复杂的路由算法完成。
分组转发----对分组所采取的动作
路由器根据转发信息表,将用户的数据从合适的端口发送出去。转发信息表:FIB表单--->是通过路由表RIB递归出来的

DHCP协议

动态主机配置协议,是典型的C/S架构协议。客户端/服务端,谁先发送数据,谁就是客户端
  • Discover报文---广播
传输层使用UDP封装。源端口68;目端口67
网络层使用IP协议封装。源IP0.0.0.0 IP255.255.255.255
数据链路层使用以太网协议封装。源MACPC发送本数据的网卡的MAC地址 MAC:全F
  • Offer报文---单播

服务器收到discover报文后,首先解封装,然后判断本地是否还有待分配的IP地址,如果存
在,则回复Offer报文,如果不存在,则不回复信息。
应用层:携带了待分配的IP地址(68.85.2.101),掩码、网关等相关信息
源端口:67;目端口:68
IP68.85.2.1;目IP68.85.2.101
MAC:路由器;目MACPC
  • Request报文----广播
会携带要申请的IP地址(68.85.2.101)
源端口:68;目端口:67
IP0.0.0.0;目IP255.255.255.255
MACPC;目MAC:全F
  • ACK报文----单播

源端口:67;目端口:68

源IP:68.85.2.1;目IP68.85.2.101

MAC:路由器;目MACPC
       PC在获取到IP地址后,会连续发送三次免费ARP报文,用来探测网络中是否存在IP地址冲突。如果收到ARP回复,则认为网络中存在该IP地址的使用者。此时,PCDHCP服务器发送DHCP错误报告,告知服务器,出现错误。服务器发送ICMP报文来ping这个IP地址,如果能够通讯,则服务器将该IP地址从 本地地址池中删除。
交换机的转发原理
      交换机收到电信号后,将电信号转换成二进制。之后,截取数据帧。先看数据帧中的源MAC地址, 之后将该地址与数据进入接口的对应关系记录在本地的MAC地址表中。MAC地址表中的每一个表项,老化时间300S。之后,查看目的MAC地址,将该地址与本地MAC地址表进行对比,如果存在对应表项,则按照表项 指示,进行单播数据转发。如果没有对应表项,则进行洪泛操作
洪泛--->交换机会将数据从除了进入的接口以外的所有接口发送一遍
交换机数据帧的传输方式
  • 直通转发
交换设备只读取数据帧最前方的14个字节。就可以把数据发送出去。
  • 碎片隔离
会读取数据帧的前64个字节。
  • 存储转发
设备读取数据帧的所有内容在转发
正常的浏览器搜索,是在地址栏中输入URL信息。域名。
URL--->资源定位符
URL=协议+主机+端口+文件名+路径
域名=主机名
www.baidu.com
http://www.baidu.com:80/news/index.html
DNS协议
       为了减少用户的访问复杂度,将IP地址对应转换为一个个域名信息。而DNS协议是在网络上通过域名解析出对应的IP地址的一个协议。
  • DNS服务使用的是UDP/TCP53号端口传输数据
  • 在终端请求解析IP地址的过程中,使用的是UDP协议进行数据传输。
  • DNS服务在进行区域传输时,使用TCP协议进行,一般是属于服务器与服务器之间交互时。
DNS服务的查询方式
  • 递归查询---每一次的请求发起者在发生变化。
  • 迭代查询---每一次的请求发起者都是自身,但是每一次会从对端得到部分信息。
PC192.168.1.1 IP192.168.2.1
跨广播域通讯--->依靠路由器转发
通广播域通讯--->依靠交换机转发
路由器的转发原理
       路由器是基于数据包中的目的IP地址,查询本地路由表。若表中存在记录项,则无条件按照记录转发。若没有记录,则直接丢弃该数据报文。
       前提是,该报文的目的MAC地址是路由器本身。
获取未知路由信息
  • 直连路由:路由器默认生成可用接口直连网段的路由条目
  • 接口双UP
  • 物理层
  • 协议层
  • 接口必须配置IP地址
  • 静态路由:网络管理员手工配置的
  • 动态路由:通过运行某种算法计算得出的

第二章,TCP协议

TCP---传输控制协议
       是一种面向连接的可靠传输协议
       面向连接:指的是数据传输之前,收发双方需要先建立一条逻辑通路。
       无面向连接:指的是数据可以自由传输,无需建立逻辑通路。
        TCP是在不可靠的IP层之上,实现可靠的数据传输能力。数据有序、无丢失、不重复
  • TCP提供全双工通信
  • 发送缓存
  • 存放发送应用程序传输给发送方TCP准备发送的数据。
  • 存放TCP已发送但是尚未收到确认的数据。
  • 接收缓存
  • 不按序到达的数据
  • 按序到达,但未被应用程序接收的数据
  • TCP是面向字节流的

四元组:源IP、源端口、目IP、目端口。四元组是用来建立一个完整的TCP连接
套接字:IP+端口

TCP报文段

tcp既可以运载数据,又可以用来建立连接、释放连接和应答
TCP首部信息,最短20字节
序列号:可以理解为字节流的编号。每发送一个字节的数据,序列号+1
确认序列号:是收到的报文的序列号+收到的数据部分字节大小
确认机制:没收到一个发送方发出的数据,都需要回复一个确认报文。
1、表明接收方期望收到发送方发送的下一个字节的序号。
2、代表接收方已经收到了确认序列号之前的所有字节数据。
累计确认
数据偏移:TCP报文段的数据起始处距离TCP报文段的起始处的距离。其本质是在描述TCP首部大小。
紧急指针:与控制位中的URG字段共同使用,当URG=1时,紧急指针有效。
       紧急数据会被TCP放置在数据部分的最前方,即从第0个字节开始,而紧急指针是为了表明紧急数据的结束位置。
        例如:紧急指针为70,则紧急数据位置为0字节到69字节。
选项字段:最大报文段长度MSS;窗口扩大银子;时间戳;选择确认机制。安全摘要选项。
标志位:
  • 紧急位URG:报文段中包含紧急数据,是高优先级的数据,应尽快传输,不再缓存队列中排队。
  • 确认位ACK:当确认位置位1,则确认序列号有意义。在连接连接以后所有传输的报文段都必须把ACK置位1
  • 推送位PSH:接收方应尽快将数据交付给应用程序,不再等待缓存填满再向上提交。
  • 复位RST:表明TCP连接中出现错误,必须释放连接,然后重新建立连接
  • 同部位SYN:表明这是一个连接请求报文
  • 终止位FIN:表明发送方数据已完全发送,要求释放连接。

TCP可靠性

        确认、重传、排序、流控。
排序机制
        最大字节数由MSS控制。该参数是需要在TCP连接握手的过程中,通过前两次SYN报文段来进行参数协商。
        如果双方的MSS数值不同,则选择数值较小的作为传输标准。
         MSS受到MTU的限制。
MTU:最大传输单元,指的是数据链路层在封装成帧时所允许携带的最大数据量,在以太网当中,MTU数值为1500字节。
MSS:数据段中携带的数据字节数。
MSS===MTU-IP首部-TCP首部
分片:这个操作是由网络层的IP协议来执行。
分段:这个操作是由传输层的TCP协议来执行。
PMTU---路径MTU
       在IP报头中,有一个DF字段,该字段表明了IP报文是否允许被分片,PMTU功能开启后,该字段为1,标识不能分片。
       此时当需要进行分片是,发现该报文无法分片,设备会丢弃该报文,并向发送源回复一个ICMP报文(数据不可达),同时携带上当前设备的MTU
       发送方接收该ICMP报文后,因为TCP重传机制,会重新发送一次数据,但是会根据最新的MTU来生成新的分段报文。
通过序列号字段,保证分段的有序性。将根据序列号的大小,将乱序的报文段进行重组
确认机制
       是TCP保障可靠性的核心点
       TCP协议保证对方能够收到本端发送的数据段的方式,就是让对方回复一个确认报文段。这是确认机制的做法
       确认报文是唯一一种不需要被确认的数据段信息

重传机制

RTT/RTO
超时重传----当超过一定时间未收到确认报文,则触发重传机制。
超时重传的判断时间依据RTT(往返时间)参数来判断。RTO被称为超时重传时间
RTT---指的是发送端将数据发出后,到他接收到对端反馈的确认报文之间的这段时间。
RTO取值应该略大于RTT,但是也不能太大RTT并非是固定数值,他是动态变化的数值。
超时间隔加倍机制。当连续多次未收到确认报文,设备会认为是网络拥塞过大,将重传时间加倍,
因为如果按照原本的重传时间发送报文,很可能造成网络拥塞的加剧。
快速重传机制
TCP中,发送方可以通过接收方的反馈,在超时时间到达前,意识到数据包丢失的现象,并进行
重传。这种情况一般出现在接收端收到一个失序报文的情况下。
快速重传机制不是因为RTO时间到达而触发,这种重传机制是以数据包为驱动的一种重传机制
当接收方意识到自己所期望的报文段丢失,服务器不能调取失序报文,并且不能确认这些报文信
因为TCP协议无法直接发送一个否认确认报文(没有办法直接发送一个数据报文段,告诉对端自己
哪个报文没有收到),所以,TCP将采用冗余ACK的方式来完成缺失报文通告
SACK机制---选择确认机制
TCP在可选项字段中,添加了一个变量。该变量中携带的就是自己已经收到的数据信息
TCP的确认是累积确认机制,正确接收失序的报文段是不会被接收方逐个确认的。因此,发送方在
重传的时候,需要将冗余ACK报文及之后的报文段都重新发送一遍。----导致资源浪费。
选择确认机制,不是所有运行TCP协议的设备都支持的。该机制会在TCP三次握手的前两次SYN报文中进行协商。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值