TCP IP
OSI/RM--开放式互联参考模型
HTTP协议(获取网页信息--属于互联网体系)
Web应用(网页或取)--浏览器
互联网根据分层创造出了一套体系:TCP/IP模型
TCP/IP协议簇:TCP/IP标准模型:四层 1.应用层 2.传输层 3.网络层 4.网络接口层
TCP/IP对等模型:五层 1.应用层 2.传输层 3.网络层 4.数据链路层 5.物理层
一.封装 解封装
封装:往原始数据中每一层在加工时都会往原始数据中添加必要信息,使其达到最终目的
解封装:收取数据包后,需要提取原始数据,使收取数据的一方获得原始数据,将反过来将封装的数据进行解封
1. 每一层的封装情况
应用层 --- 应用层存在封装,只不过,应用层的封装内容取决于不同的应用协议。 | 不同的协议封装内容不同 |
传输层 --- 端口号 --- TCP/UDP | 应用层与应用层之间的传输(实现端到端的传输) |
网络层 --- IP地址 --- IP协议(互联网协议) | 基于IP地址实现物理寻址;从逻辑的角度上寻找主机,将主机A信息传值主机B,也就是将SIP、DIP从网络层添加至原始数据中。 |
数据链路层 --- MAC --- 以太网 --- 早期局域网的解决方案,依靠交换机组建的二层网络 | 该层的主要功能在于控制物理层(通过 电信号<=>二进制) 对于封装来说:添加MAC地址,物理寻址(通过以太网) |
物理层--无封装,主要处理电信号 |
2.一种数据链路层的封装方式
以太网Ⅱ型帧(最常见的数据封装方式):
Preamble:前导符 | 作用:标记数据帧(通过标志表示数据帧的开始与结束) |
Destination/Source Address:目标地址/源地址 | DMAC SMAC |
Type:类型 | 解封装的一个重要参数,解封之后判断IP类型(v4/v6)然后将Data(数据)推送至网络层进行处理 表示上一层所使用的协议类型(用编号对应IP协议) |
Data:数据 | |
FCS:帧校验序列--帧尾--借助CRC(循环冗余算法)二层 | 确保数据完整性的参数(数据完整性:波形差错,元件损坏造成的差错,数据内容被篡改) |
3.FCS和CRC
CRC:在二层---循环冗余算法
在四层---反码相加法
(虽然方法不相同,但效果和目的相同)
CRC(循环冗余算法):对尾部以前的数据内容进行运算,运算后的数据放入FCS数据栏中,然后发送至对端,对端再次将尾部以前的数据进行测算,测算完成后比对两次结果。结果:若两次信息一致,则接受,并进行下一步操作。若两次内容不一致,则接受方请求重发,若信息依旧不匹配,则丢弃。物理破坏可检测;人为篡改破坏很大,若篡改严密,几乎检测不出来。
FCS(是一种检验和/校验数据):是指特别的检测码字符被添加在一个通信协议中的帧中进行检错和纠错。源节点发送数据帧时,由帧的帧头和数据部分计算得出FCS。
数据在传输过程中必须要保证的:1,数据的完整性 2.~可用性 3.~保密性
二.传输层封装的两个重要协议:TCP和UDP协议
1.区别:
1,TCP是面向链接的协议,而UDP是无连接的协议; 2,TCP协议的传输是可靠的,而UDP协议的传输“尽力而为”; 3,TCP协议可以实现流控,而UDP不行; 4,TCP可以分段,而UDP不行; 5,TCP消耗资源较大,传输效率较低;UDP耗费资源较小,速度快。 | 1.面向连接:在正式传输数据之前,先使用预先的协议,建立点到点的连接。TCP建立的连接实际建立了一个双向的会话连接,即通讯双方都可以向对方发送数据。 TCP的三次握手和四次挥手 2.TCP的可靠性 --- 确认,重传,排序,流控 3.滑动窗口,依靠滑动窗口实现流控 4.分段:有序号 5.TCP占用字节数多,且有确认、重传等机制 UDP字节少,且无交流机制 |
2.TCP和UDP的使用场景:
TCP协议更适用于对可靠性要求较高,但是对传输效率和资源占用要求较低的场景;UDP更 适用于对传输效率要求较高,可靠性要求较低的场景(即时类通讯)
3.TCP头部
TCP检验和强度较高:伪头部校验 --- 除了校验传输层头部和数据内容外,还会将网络层头部中的一部分内容一起进 行校验。 --- 确保数据完整性
六个标记位:置1 激活,置0 未激活
URG紧急标记位 | 1.当URG置1时,紧急指针会被激活 2.紧急指针:若数据段中有优先/紧急处理的数据,则会将其放至数据的最前端进行优先处理 |
ACK确认标记位 | 当ACK置1,确认序号将被激活 |
PSH推 | 通知接收主机应立即将数据推送到接收应用程序 (立即推送数据---当规定数据传送完毕时) 在数据包到达接收端以后,立即传送给应用程序。而不是在缓冲区排队 |
RST复位标志 | 1.若置1,则会话会被强制断开。 2.这个标志标识连接复位请求。 3.用来复位那些产生错误的连接,也被用来拒绝错误和非法的数据包 4.可以作为控制管理(例:上网行为监管) |
SYN同步标志 | 1.建立连接时使用 2.请求建立连接的标记位,该标志仅在三次握手建立TCP连接时有效。在三次握手期间,随着文件的交换和新连接的创建,可以看到更多SYN标志被发送和接收 |
FIN断开标志 | 断开连接时使用,带有该标志置位的数据包用来结束一个TCP会话,但对应端口仍处于开放状态,准备接收后续数据 |
4,TCP的三次握手和四次挥手----面向链接
问:
1.为什么握手是三次,挥手是四次?
2.挥手时ACK和FIN为什么不能同时发?
三.网络层封装:IP协议:
IP头部(可边长头部)
8位协议:上层协议:协议号:上层所使用的协议号TCP 6, UDP 17
IP的分片和TCP的分段:
MTU--最大传输单元--默认值1500字节(可修改)
分片和分段是因为MTU的限制
若传输层起作用的是TCP,则分片一步到位;若传输层起作用的是UDP,则需要传入下一层网络层进行分片处理--前提:数据量超过1500个字节
MSS(最大段长度);Data数据的最大长度(网络层最小20个字节,传输层最小20个字节---->即数据的最大长度为1500-20-20=1460)
这三个参数的目的:还原所分的片
16位标识:分片包中片的身份标识一定相同(Don`t fragment 此标记位表明是否分片:置1则未分
More fragments置0:则1.无分片 2.最后一个分片包)
ensp
路由器的型号越大,占用的内存也越大
网络产品分为盒式设备和框式设备
设备连线和设备扩展:
设备连线:1.Auto自动连线(按照接口顺序连接 2.copper 双绞线
GE:接口支持千兆的转发速率
Ethernet:代表接口支持百兆的转发速率
区分交换机和路由器:一般看接口数量,多的是路由器
达到最高传输效率:千兆尽量连千兆口(有条件时)
若路由器接口不够:直接添加接口(在设置中移入接口)
扩展接口:2FE:2个百兆口 1GEC:一个千兆口
扩展接口时:接口的标号按照放入的槽位数命名(若有连个百兆口,且槽位数为4,则第一个百兆口为E~4/0/0,第二个为4/0/1)
设备启动:可使用工具栏,也可点击进入单个设备进行启动
电脑配置:IP地址 子网掩码 网关
命令:ping ipconfig
路由器配置:1.CIL(命令行界面):command Line Interface(界面接口)
2.视图:根据权限不同,视图也不同。
<>用户视图:只能作查看类型操作,不能配置 | <>display ip interface brief 查看接口摘要信息,unassigned带配置 <>save 保存:将配置保存至路由器闪存中 <>display saved-configuration 查看闪存中的数据,查看所有保存后的操作 <>sysname ~ 改名 <>system-view进入系统视图 |
【】系统视图:可以进行配置,但只能进行全局类配置 | 【】display current-configuration |
【口】接口视图:可在此接口进行配置 | 【】ip address ~(IP) ~(掩码) 给接口配IP地址 【】quit 退回上一个视图中 【】undo 华为设备所有的删除操作都是在原命令前加undo 【】display this 展示此接口视图的所有配置操作(1.在不同接口下使用该命令,将直接显示相应接口下的配置 2.在不同协议视图下使用该命令,将显示相应协议视图的配置) |
路由器:缓存:(相当于电脑的运行内存)靠电力维持,即掉电后无记录不保存
闪存:(相当于电脑中的硬盘)可以永久保存
Sever:需配置ip、网关、等必要信息 。可以充当DNS(域名解析服务)/Ftp(文件传输服务)/Http(超文本传输服务)
Client:需配置ip、网关、等必要信息 。可以充当Http/Ftp的客户端,即可以获取sever所提供的网页信息。
DNS服务器:给对应的IP地址所对应的设备添加域名信息。
配置DNS服务器:1.使用sever配必要的IP,网关信息,并在服务器信息中设置DNS服务器的主机域名。2.使用client,填写域名服务器的IP
通过域名访问的实质是通过IP地址访问
访问服务器的方法:
1.直接通过IP地址访问
2.通过域名访问(本质还是IP访问)
3.通过应用程序访问(设计者写入程序是就将IP地址写入,所以实质也是通过IP访问)