⽹络基础面试题整理

tcp和udp的区别?
    1.tcp向上层提供面向连接的可靠服务,udp向上层提供无连接不可靠服务;2.udp的传送速度比tcp快;3.tcp是一对一连接,udp是一对多或多对多连接;4.tcp是面向字节流,实际上tcp把数据看成一连串无结构的字符流,udp是面向报文;
详细叙述tcp3次握⼿,3次握⼿的具体实现逻辑,tcp和http的区别?
    1.客户端发送syn连接请求(syn=1,seq=k);2.服务端响应ack(syn=1,ack=1,seq=f,ack=k+1);3.客户端响应ack(ack=1,seq=k+1,ack=f+1);4.http协议:超文本传输协议,对应于应用层,是基于tcp协议实现的,主要解决数据包装问题,tcp协议,对应传输层,主要解决数据在网络上中传输的问题,socket,是对tcp/ip协议的封装,本身并不是协议,而是一个api,类似http的httpclient,通过socket、httpclient,我们才能使用tcp、http;5.socket是长链接,http是短链接;
第三次握手的作用是什么?第三次握⼿如果失败会怎样?
    1.服务端需要确定客户端的应答能力正常;2.防止无效的连接占用资源(服务端及时释放无效连接);3.防止无效的数据包发送到服务端引起错误;4.服务端重试5次,若还是没有收到确认包,则服务端直接结束本次连接,在此期间若收到了数据包,也结束本次连接;
建议把tcp关闭时的4次挥⼿也看看?
    1.客户端发送终止命令fin(fin=1,seq=k);2.客户端响应ack(ack=1,seq=f,ack=k+1);3.服务端发送fin(fin=1,ack=1,seq=ff,ack=k+1);4.客户端响应ack(ack=1,seq=k+1,ack=ff+1);5.关闭连接时,可能服务端还有数据未发送完毕,所以只能先回复一个ack,告诉客户端你的请求我收到了,等服务端的所有数据都发送完毕,我才能发送fin,因此不能一起发送;
https相对http都实现了什么加密⽅式,是对称加密还是⾮对称加密?https的传输过程?
    1.https在http中加入ssl层;2.https在内容传输的加密上使用的是对称加密,验证证书阶段使用的是非对称加密;3.客户端发送https请求,服务端返回证书和公钥(ca),客户端对证书进行验证,验证通过后本地生成随机数作为通信对称秘钥发送给服务器,服务端通过私钥(ca)解密获取通信对称秘钥;
⽤linux命令怎么做分组求和,怎么把字符串根据分隔符变成数组?
    todo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值