计算机网络

本文详细介绍了计算机网络的基础知识,包括TCP/IP协议的三次握手和四次挥手,UDP与TCP的区别,HTTP的工作原理,以及网络的七层协议。重点讨论了TCP的可靠传输、流量控制和拥塞控制机制。此外,还涵盖了HTTP的请求方法、状态码和头部信息,以及网络安全和常见的网络攻击处理策略。
摘要由CSDN通过智能技术生成

/@TOC

1. 长连接优缺点

优点:省去较多的TCP建立和关闭的操作,较少浪费,节约时间,对于频繁请求的客户端比较适用。例如数据库的连接,网络游戏
缺点:维护链接浪费资源,在大量长连接连接的情况下,服务器负载过大

2. UDP比TCP快的原因

无需建立和维护连接,没有流量控制和拥塞控制,没有超时重传机制,不需要回应
UDP多用于:视频聊天,广播,直播
TCP:面向连接,提供可靠交付,有流量控制,拥塞控制,面向字节流,提供全双工通信,每一条连接是一对一;
UDP:无连接的,面向报文,支持一对一,一对多,多对多通信

3. 网络的7层协议(5层)

①物理层,考虑的是怎样在传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的作用是尽可能屏蔽传输媒体和通信手段的差异,使数据链路层感觉不到这些差异
②链路层,网络层针对的还是主机之间的数据传输服务,而主机之间可以有很多链路,链路层协议就是为同一链路的主机提供数据传输服务。数据链路层把网络层传下来的分组封装成帧
③网络层,为主机提供数据传输服务。而传输层协议是为主机中的进程提供数据传输服务。网络层把传输层传递下来的报文段或者用户数据报封装成分组
④传输层,为进程提供通用数据传输服务。由于应用层协议很多,定义通用的传输层协议就可以支持不断增多的应用层协议。运输层包括两种协议:传输控制协议 TCP,提供面向连接、可靠的数据传输服务,数据单位为报文段;用户数据报协议 UDP,提供无连接、尽最大努力的数据传输服务,数据单位为用户数据报。TCP 主要提供完整性服务,UDP 主要提供及时性服务
⑤应用层,为特定应用程序提供数据传输服务,例如 HTTP、DNS 等。数据单位为报文

4. 三次握手(建立连接)

原因:为了防止失效的连接请求到达服务器,让服务器错误打开连接
客户端发送的连接请求如果在网络中滞留,那么就会隔很长一段时间才能收到服务器端发回的连接确认。客户端等待一个超时重传时间之后,就会重新请求连接。但是这个滞留的连接请求最后还是会到达服务器,如果不进行三次握手,那么服务器就会打开两个连接。有了第三次握手,客户端会忽略掉超时的那个连接
在这里插入图片描述
过程:
①首先客户端发送连接请求syn,携带随机数x
②服务端返回请求ack,x + 1,说明服务端对x进行了回复
③客户端返回请求ack,y,说明接受到了信息并且开始传输数据,起始数据为y

5. 四次挥手(断开连接)

过程:

在这里插入图片描述
①客户端请求断开连接,发送fin请求
②服务端返回ack,进入close_wait状态,继续处理需要处理的数据,tcp变为半关闭
③服务端返回fin,将处理完的数据发到客户端,表明自己已经关闭
④客户端进入TIME_WAIT状态,客户端发最后一个ack到服务端,如果服务端已关闭则无反应,客户端经过2MSL(报文最大存活时间)后释放连接,确认服务端断开
⑤服务端接收确认后释放连接

TIME_WAIT作用:
①服务端需要可靠地终止连接,如果最后一次客户端发给服务端的ack报文丢失,则服务端会再发一次fin,此时客户端不应该关闭
②保证迟来的tcp报文有时间被丢弃,因为2MSL里超时抵达的报文都会被丢弃,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值