HCIA 第三天笔记

传输层的TCP和UDP协议

两者区别

1、TCP是面向链接的协议,而UDP是无连接的协议;

2、TCP协议的传输是可靠的,而UDP协议的传输 “尽力而为”;

3、TCP协议可以实现流控,而UDP不行;

4、TCP可以分段,而UDP不行;

5、TCP消耗资源较大,传输效率低。UDP消耗资源较小,速度快;

TCP和UDP的使用场景

TCP协议更适应于对可靠性要求较高,但是对传输效率和资源占用要求较低的场景。UDP更适应于对传输效率要求可靠较高,可靠性要求较低的场景(即时类通信);

区别一

什么是面向连接?

在正式传输之前,先使用预先的协议,建立点到点的链接。

TCP建立的连接实际建立了一个双向的会话连接,即通讯双方都可以向对方发送数据。

什么是无连接?

相当于没有建立连接,直接传输数据。

封装和解封装

TCP的头部

序号:是数据包的序号,是随机生成的。

确认序号:是对方收到,并且请求下个包。

首部长度:TCP的头部除了数据部分的长度

每一串字母代表一位二进制,6个标记为,只有两种状态,激活和没激活(即1和0)

URG:表示紧急指针(urgent pointer)是否有效。激活说明紧急指针激活。

ACK:表示确认号是否有效。激活说明确认序号激活,代表本数据是一个确认包。我们称携带ACK标识的TCP报文段为确认报文段。

PSH:提示接收端应用程序应该立即从TCP接收缓冲区中读走数据,为接收后续数据腾出空间(如果应用程序不将接收到的数据读走,它们就会一直停留在TCP接收缓冲区中)。

RST:表示要求对方重新建立连接。我们称携带RST标志的TCP报文段为复位报文段。

SYN:表示请求建立一个连接。我们称携带SYN标志的TCP报文段为同步报文段。

FIN:表示通知对方本端要关闭连接了。我们称携带FIN标志的TCP报文段为结束报文段。

校验和:(使用反码相加法)由发送端填充,接收端对TCP报文段执行CRC算法以检验TCP报文段在传输过程中是否损坏。注意,这个校验不仅包括TCP头部,也包括数据部分(伪头部校验)。这也是TCP可靠传输的一个重要保障。

紧急指针:激活状态下,把数据放在最前面优先处理数据。是一个正的偏移量。它和序号字段的值相加表示最后一个紧急数据的下一字节的序号。因此,确切地说,这个字段是紧急指针相对当前序号的偏移,不妨称之为紧急偏移。TCP的紧急指针是发送端向接收端发送紧急数据的方法。

TCP头部长度最短20字节

UDP的头部

UDP长度:头部 + 数据的长度。

UDP校验和:确保数据完整性。

UDP头部长度最短8字节

TCP的三次握手

第一次

第一次握手:建立连接时,客户端发送syn包(seq=x,x为随机值)到服务器,等待服务器确认。

第二次

第二次握手:服务器收到syn包,必须确认客户端的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y,y为随机值),即SYN+ACK包。(x与y不一样,两个不同的随机值)

第三次

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入TCP连接成功状态,完成三次握手。

完成三次握手,客户端与服务器开始传送数据。

TCP的四次挥手

对于一个已经建立的连接,TCP使用改进的四次挥手来释放连接(使用一个带有FIN附加标记的报文段)。

第一步,当主机A的应用程序通知TCP数据已经发送完毕时,TCP向主机B发送一个带有FIN附加标记的报文段。

第二步,主机B收到这个FIN报文段之后,并不立即用FIN报文段回复主机A,而是先向主机A发送一个确认序号ACK,同时通知自己相应的应用程序:对方要求关闭连接(先发送ACK的目的是为了防止在这段时间内,对方重传FIN报文段)。

第三步,主机B的应用程序告诉TCP:我要彻底的关闭连接,TCP向主机A送一个FIN报文段。

第四步,主机A收到这个FIN报文段后,向主机B发送一个ACK表示连接彻底释放。

为什么是四次而不是三次:主机A自己数据发完了,要求断开。但此时主机B不一定发完数据,所以ACK和FIN不一起发送。主机B要等到自己数据发完了才能去要求断开FIN。开始的三次握手是应为没有传输数据,跟数据无关。

为什么主机A断开还可以对主机B发送ACK:断开了只是说明没有数据传输了,并不代表主机A与主机B不能发生ACK,ACK是功能性的回复。

区别二

TCP协议的传输是可靠的,而UDP协议的传输 “尽力而为”;

可靠性:确认机制、重传机制(没有收到对方的确定,一直传输这个数据)、排序机制(保证数据按顺序传输)、流控机制

区别三

TCP协议可以实现流控,而UDP不行;

发送端可以一次发送多个数据包,接收端可以只发送一个ACK。

区别四

TCP可以分段,而UDP不行;

TCP数据有序号,可以分开发送。然后把数据拼起来。

区别五

TCP消耗资源较大,传输效率低。UDP消耗资源较小,速度快;

IP协议

首部长度:IP头部除了数据部分的长度

总长度:头部 + 数据长度

用于将分片的数据组合在一起。

16位标识:分片的数据这个是完全相同的,用于区分分片的同一个数据

3位标识:

第一位是保留位,没有用。

第二位表明是否分片。

第三位可以判断这个是不是最后一片。

13位片偏移:意思是这百个数据包是从源数据包哪个位置开始的。

所以问1300个字节的数据会被分成以下三个包:

A数据包:包含40个字节的IP报文头,答0-460字节的数据,偏移版量为0;

B数据包:包含40个字节的IP报文头,460-920字节的数据,偏移量为权460;

C数据包:包含40个字节的IP报文头,920-1300字节的数据,偏移量为920。

生存时间(TTL):数据包每经过一个路由器的转发,其数值减1,当一个数据包的TTL值为0是,路由器将不再转发而直接丢弃

8为协议:上层所适用的协议类型 --- TCP --- 6,UDP --- 17

16位首部校验和:只校验首部。

IP的分片和TCP的分段

将大的数据包拆成小的发送。

如果传输层用的TCP协议,它直接一步到位,数据到网络层不用再分了。

MTU(最大传输单元):默认值1500字节 MSS (最大段长度):理论值1460字节,这个值需要进行协商,这个参数在TCP的SYN包携带,如果双方不一致,则将按照小的执行。

eNSP软件的使用

GE --- 代表接口支持千兆的转发速率Ethernet --- 代表接口支持百兆的转发速率VRP --- 通用路由平台

<Huawei> --- 用户视图 ---- < > ---- 只能作查看类型的操作,不能配置

<Huawei>display ip interface brief --- 查看接口IP地址的摘要信息

<Huawei>system-view --- 进入系统视图的命令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

帮助系统

TAB --- 可以补全命令? --- 可以展示以定义字母开头的所有命令。或者在命令完成后执行,可以将后面跟的参数进行展示

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值