![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络编程
文章平均质量分 65
网络编程
zuodaoyong
这个作者很懒,什么都没留下…
展开
-
TCP原理
一、tcp通信时序 1、半关闭 在close过程中当步骤8完成时,客户端和服务端处于半关闭状态,即客户端的写缓存区关闭,只能收数据。服务端可以继续发数据和收数据。 注:既然8完成了,客户端不能发数据,但是可以发服务端请求关闭的回应。 二、滑动窗口 三、tcp数据包格式 四、tcp时序和程序对应关系 服务端的read函数读取到数据返回0标识客户端请求关闭。 ...翻译 2021-09-19 20:43:58 · 101 阅读 · 0 评论 -
socket数据结构
strcut socketaddr 很多网络编程函数诞生于IPv4协议,那个时候用的是socketaddr结构体。为了向前兼容现在socketaddr变成(void *) 传递一个地址函数,至于这个函数是socketaddr_in还是socketaddr_in6,是由地址族确定。 ip数据结构(在linux上使用man 7 ip查看) struct sockaddr_in { sa_family_t sin_family; /* 地址族: AF_INET */ u.翻译 2021-08-28 17:39:26 · 329 阅读 · 0 评论 -
Linux套接字socket
Socket在linux环境下,用于表示进程间网络通信的特殊文件类型。 既然是文件,那么可以使用文件描述符引用套接字,与管道类似,linux系统将其封装成文件的目的是为了统一接口,使的读写套接字和读写文件的操作一致。 管道主要应用在本地进程间通信,而套接字多用于网络进程间数据传递。 在tcp/ip协议中,“ip地址+tcp/udp端口号“可以唯一标识网络通讯中的一个进程。ip+端口号 对应着一个socket。两个socket组成的socket pair唯一标识一个连接。 ...翻译 2021-08-12 08:21:47 · 163 阅读 · 0 评论