TCP和UDP:
区别:1、TCP是面向链接的协议,而UDP是无连接的协议;
2、TCP协议的传输是可靠的,而UDP协议的传输“尽力而为”;
TCP的可靠性 --- 确认,重传,排序,流控。
3、TCP协议可以实现流控(流量控制),而UDP不行;
4、TCP可以分段(将大数据包分为几个小的部分,分别发送),而UDP不行;
5、TCP消耗资源较大,传输效率较低;UDP耗费资源较少,速度快;
TCP和UDP的使用场景:
TCP协议更适用于对可靠性要求较高,但对传输效率和资源占用率要求较低的场景;UDP更适用于对传输效率要求高,可靠性要求较低的场景(即时类通讯)。
什么是面向链接?
在正式传输数据之前,先适用预先的协议,建立点到点的链接。
TCP建立的连接实际建立了一个双向的会话连接,即通讯双方都可以向对方发送数据。
TCP的头部 16位二进制
状态码:SYN表示建立连接,FIN表示关闭连接,ACK表示响应,PSH表示有 DATA数据传输,RST表示连接重置。
校验和-----确保数据完整性-----伪头部校验-----除了校验传输层头部和数据内容外,还会讲网络层头部中的一部分内容一起校验。
TCP头部最少20字节(无选项时最少)-----32/8=4-----4+4+4+4+4=20
TCP的三次挥手-----TCP建立联系的过程
加入序号和确认序号
TCP的四次挥手-----TCP会话的断开
为什么ACK和FIN分开发送?(为什么建立连接是三次,断开是四次)
因为FIN代表会话结束,而B的数据包不一定发完,B需要在数据包全部发送完成后断开连接。(建立连接时不涉及到数据传输故可以将数据包和响应状态码一起传输。)
为什么断开连接时A还可以回复ACK=1?
ACK为功能性状态码,可以自动回复。
IP协议头部(IPV4)
TTL --- 生存时间 --- 数据包每经过一个路由器的转发,其数值减1,当一个数据包的TTL值为0是,路由器将不再转发而直接丢弃。 --- 初始值与操作系统有关
8位协议号 --- 上层所适用的协议类型 --- TCP --- 6,UDP --- 17
首部校验和 --- 只校验头部及选项
IP的分片和TCP的分段
MTU --- 最大传输单元(传递给数据链路层) --- 默认值1500字节
MSS --- 最大段长度(数据) --- 理论值1460字节(1500减去网络层、传输层头部最少字节数20),这个值需要进行协商,这个参数在TCP的SYN包携带,如果双方不一致,则将按照小的执行。
UDP的头部
UDP --- 8个字节
ENSP
GE --- 代表接口支持千兆的转发速率
Ethernet --- 代表接口支持百兆的转发速率
VRP --- 通用路由平台
Enter system view, return user view with Ctrl+Z.
[Huawei] --- 系统视图的标志 --- [ ] --- 可以进行配置,但是只能进行一些全局类的配置
[Huawei]sysname aa --- 更改设备名称
[aa]
[aa]interface GigabitEthernet 0/0/0 --- 进入接口视图
[aa-GigabitEthernet0/0/0]
[aa-GigabitEthernet0/0/0]ip address 192.168.1.1 24 --- 接口配置IP地址
[aa-GigabitEthernet0/0/0]quit --- 退回到上一个视图中
[aa]
[aa-GigabitEthernet0/0/1]undo ip address 192.168.2.1 255.255.255.0 --- 华为设备所有的删除操作都是在原命令前面加undo
[R1-GigabitEthernet0/0/0]display this --- 查看当前视图的配置操作
[R1]display current-configuration --- 查看缓存中的数据
帮助系统
TAB --- 可以补全命令
? --- 可以展示以定义字母开头的所有命令。或者在命令完成后执行,可以将后面跟的参数进行展示
封装和解封装图