TCP和UDP的理解

1.什么是TCP连接?
当网络通信采用TCP协议的时候,在真正的读写操作之前,Server与Client之间必须建立一个连接。当读写操作完毕之后,双方不再需要这个连接时,就断开这个连接。连接时是三次握手,断开时则需要四次分手。所以说每个连接都是比较消耗资源的。
三次握手:
客户端从close状态开启之后(SYN_SEND),发送一个消息(SYN)给服务端,此时服务端时listen状态。服务端接收这个数据后(SYN_RECIVED),发送一个应答(ACK)给客户端。客户端接收这个应答之后,给服务端发送一个应答(estab-listen)。
四次挥手:
客户端发送一个消息告诉服务端,我没有数据发送给你了(FIN_Wait1),服务端应答说哦,你先等一下,我还有一些数据要给你)。然后服务端(close_wait)发送数据给客户端(FIN_Wait2),客户端收到之后(Time_wait),发送一个应答说。我收到数据了,你关闭吧。服务端接收数据之后,关闭。客户端等待2秒,如果没有应答的话,也关闭。
2.什么是TCP长连接?
长连接就是发送接收一个数据之后,这个连接不断开,仍然可以传递接收数据,当不需要传递数据的时候断开就是长连接。短连接就是发送接收一个数据之后,连接断开就是短连接。http1.0之前缺省短连接。http1.0之后缺省长连接(keepalive)
3.TCP和UDP的区别?
TCP传输控制协议,提供面向连接的,可靠的字节流服务,当客户端和服务端彼此交换数据的之前,必须双方建立一个连接之后才能传输数据。TCP提供超时重发,丢弃重复数据。检验数据,流量控制等功能,保证数据从一端传递到另一端。
UDP数据传输协议,是一个数据包传输协议。传输数据不可靠。因为它不管数据是被另一端收到。都按照顺序传输。也不管接收方的cpu,磁盘状态是否良好。所有它的传输效率很高。

一次http请求:
查缓存-》DNS解析——》获取IP->建立连接——>传输数据——》接收报文数据并响应-》关闭连接。

正向代理:客户端请求-》代理服务器-》服务器
反向代理:客户端请求-》ngnix转发请求->服务器

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值