![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux高性能服务器编程——笔记
文章平均质量分 78
hytrao
这个作者很懒,什么都没留下…
展开
-
高级I/O函数
Linux提供了很多高级的I/O函数。它们并不像Linux基础I/O函数(比如open和read)那么常用,但在特定的条件下却表现出优秀的性能。网络编程相关的函数大致分为三类: 用于创建文件描述符的函数,包括pipe、dup/dup2函数。 用于读写数据的函数,包括readv/writev、sendfile、mmap/munmap、splice和tee函数。 用于控制I/O行为和属性的函数,包括fcntl函数。...原创 2021-09-16 20:32:03 · 154 阅读 · 0 评论 -
Linux网络编程基础API
1、socket函数 unix/linux的一个哲学是:所有东西都是文件。socket也不例外,它就是可读、可写、可控制、可关闭的文件描述符。socket函数结构如下。 int socket(int dimain, int type, int protocol); socket函数对应于普通文件的打开操作。普通文件的打开操作返回一个文件描述字,而socket()用于创建一个socket描述符,它唯一标识一个socket。这个socket描述字跟文件描述字...原创 2021-09-14 14:01:30 · 146 阅读 · 0 评论 -
TCP协议详解
1、TCP服务特点 TCP服务通信是一对一的,通信双方必须先建立连接,通信双方必须为该连接分配必要的内核资源,以管理连接的状态和连接上数据的传输。TCP是全双工的,即双方的数据读写可通过一个连接进行。完成数据交换之后,通信双方都必须断开连接以释放系统资源。 TCP协议使用字节流(UDP使用数据报),实际编程中字节流和数据报的主要区别体现在通信双方是否必须执行相同次数的读、写操作(只是表现形式),发送端应用程序连续执行多次写操作时,TCP模块先将这些数据放入TCP发送缓冲区中...原创 2021-09-09 20:39:21 · 607 阅读 · 0 评论 -
IP协议详解
IP协议是TCP/IP协议族的核心协议,也是socket网络编程的基础之一。IP协议是TCP/IP协议族的动力,它为上层协议提供无状态、无连接、不可靠的服务。1、IPv4头部结构 IPv4的头部结构,其长度通常为20字节,除非含有可变长的选项部分。 4位版本号(version)指定IP协议的版本。对于IPv4来说,其值是4。 4位头部长度标识该IP头部有多少个32bit字节。因为4位最大能表示15,所以IP头部最长是60字节。...原创 2021-09-09 09:54:41 · 342 阅读 · 0 评论 -
TCP/IP协议族
1、TCP/IP协议族体系结构以及主要协议 TCP/IP协议族是一个四层协议系统,自底而上分别是数据链路层、网络层、传输层和应用层。每一层完成不同的功能,且通过若干协议来实现,上层协议使用下层协议提供的服务。如下图所示。1.1、数据链路层 数据链路层实现了网卡接口的网络驱动程序,以处理数据在物理媒介上的传输。 数据链路层两个常用协议是ARP协议(Address Resolve Protocol,地址解析协议)和RARP协议(Reverse Ad...原创 2021-09-07 21:06:31 · 2394 阅读 · 0 评论