面试经验4-27

一、解释一下为什么发生tcp的粘包现象,以及怎么解决?

tcp为了节约资源采用的是流式传输。接收端一下接收了多个包,粘在了一起。多个包首尾相接,无法区分是哪个包。

原因:发送方等发送缓冲区满才发送,接收缓冲区等满了才接受,多个包合成一个发送。

解决方法:不允许发送缓冲区满才发,提高优先级读区接收缓冲区,固定包长度或者里面加上一个包头。

二、数字证书的了解

全球有权威的证书签发机构,称之为CA。他首先用RSA生成一对公钥和私钥,然后用私钥网站进行签名,生成所谓的数字证书。具体过程是先生成一个文件包括公钥,签发者ID,证书签发给谁,有效期等等。然后用hash算法进行hash计算,生成H。用私钥对H进行加密,生成签名信息S。也就是对明文的hash值进行加密。如果要验证某CA是否给subject发了证书,用CA公钥解S,比较两个hash值就可以。

问题:如果黑客冒充CA,给自己签发一个证书,验证者如何验证呢?主要是因为全球权威的CA就那么几个。他们被设置成了可信任的根证书。

三、TCP与UDP的对比。

a. tcp面向连接,udp不需要连接。

b. tcp仅仅支持单播,udp支持单播,多播,广播。

c. udp面向报文,tcp是面向字节流。

d.udp首部开销小:8字节。tcp最小20字节,最大60字节。

posted @ 2023-04-29 14:49  John_Ran  阅读(19)  评论(0编辑  收藏  举报