
网络相关
文章平均质量分 84
自学内容,只做参考,不做任何用途
KvNie
这个作者很懒,什么都没留下…
展开
-
讨论一下如何用UDP来实现可靠传输
这个问题其实回答起来都能想到在应用层层面来对UDP进行一定程度的设计与约束,从而达到可靠传输的效果。但在回答这个问题之前得弄清楚,为什么不用TCP这个现成的玩意儿而要用UDP,TCP的痛点在哪?原创 2023-09-25 11:37:26 · 408 阅读 · 1 评论 -
关于ET阻塞和非阻塞的一点小小理解
就好比一共90k数据,一次读20k,最后剩10k,这10k没有问题,阻塞和非阻塞模式下都能读取。在进行下一次的时候,阻塞套接字就会阻塞在那了,就没办法执行后边的操作了。非阻塞套接字就会返回个错误,然后该干嘛干嘛去了。在其他大佬看到的博客上写的是,ET模式下要使用while循环来不停的read数据,阻塞模式下read函数在最后一次会阻塞,笔者纠结的点在于,数据不都读完了吗,怎么还会阻塞呢?对于LT,他就read一次,你阻塞套接字read一次也把数据拿出来了,后边也不会进循环来read然后阻塞。原创 2023-09-24 18:26:24 · 133 阅读 · 1 评论 -
关于select、poll和epoll
常规的TCP-socket通信的流程一般如下;1.服务端创建监听套接字(socket),初始化网卡(SOCKADDR_IN),监听套接字绑定网卡(bind),调用(listen)函数开始监听;2.客户端创建套接字1(socket),根据服务端的IP地址还有端口初始化网卡(SOCKADDR_IN),调用(connect)函数与服务端连接。3.服务端accept函数,取出连接,获得一个套接字2,之后双方的通信在套接字1和套接字2之间进行。有个问题?原创 2023-09-24 16:18:15 · 115 阅读 · 1 评论