标签 接字 下的文章

  • 📂Nginx 实现 10w+ 并发之 Linux 内核优化教程

    由于默认的Linux内核参数考虑的是最通用场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改Linux内核参数,是的Nginx可以拥有更高的性能;在优化内核时,可以做的事情很多,不过,我们通常会根据业务特点来进行调整,当Nginx作为静态web内容服务器、反向代理或者提供压缩服务器的服务器时,期内核参数的调整都是不同的,这里针对最通用的、使Nginx支持更多并发请求的TC...

  • 📂C++ Linux 网络编程学习笔记(2)TCP深入教程

    socket系统调用背后:Linux内核做了什么?listen 与 accept内核在我们调用listen方法后,就已经为这个监听端口建立了SYN队列和ACCEPT队列,当客户端使用connect方法向服务器发起TCP连接,客户端的SYN包到达服务器后,内核会将这一信息放到SYN队列,同时回一个SYN+ACK包给客户端,客户端再次发来了ACK包后,内核会把连接从SYN队列中取出,再把这个连接...

  • 📂图解linux netlink教程

    原文:https://www.dazhuanlan.com/2019/10/18/5da897a5b6ff1/概述netlink协议簇netlink初始化socket系统调用bind系统调用sendmsg系统调用recvmsg系统调用通用netlink协议初始化收发消息netlink用户空间程序netlink套接字库libnlnetlink消息报头和数据结构通用netlink报头和数据结构总...

  • 📂多线程间通信和多进程之间通信的方式教程

    一、进程间通信1. 进程间通信的概念每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,InterProcess Communication) 2. 进程间通信的7种方式第一类:传统的Uni...

  • 📂Socket套接字的速率控制(linux)教程

    发送端系统:ubuntu18.04 接收端系统:ubuntu18.04 最近要做一些socket的实验,我对socket也不大了解,不过socket还算是比较好学的,算是在应用层和传输层中间,给你提供了调用了传输协议的api,还是很友好的哦! 哦吼!我要对socket发送文件的速率进行限制,想要把文件传输速率限制到想要设置的速率。大概原理如下:一、主要原理比如说,我要把文件的传输...

  • 📂Linux本地套接字(IPC)教程

    文章目录本地套接字代码serverclient本地套接字 socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIX Domain Socket。虽然网络socket也可用于同一台主机的进程间通讯(通过loopback地址127.0.0.1),但是UNIX Domain Socket用于IPC更有效率:不需要经过网络协议栈,不需要打包拆包、...

  • 📂Windows Sockets网络编程读书笔记(及简单C/S实现)教程

    文章目录简单介绍Socket1 WindowsSockets 简介2 套接字的两种主要形式3 在 VC 下开发套接字程序3. 1 在 VC 下开发套接字程序的基本步骤3. 2 回调函数的使用3. 3 利用多线程技术来开发网络通信3. 4 使用多线程进行套接字编程时应注意同步问题代码实现客户端服务端简单介绍Socket1 WindowsSockets 简介Windows sockets(简称 ...

  • 📂Windows套接字CAsyncSocket类的使用教程

    TCP编程的服务器端一般步骤是:1、创建一个CAsyncSocket或CSocket类或其子类对象A,用于监听客户端连接,然后通过Create函数设定端口号和协议类型为 SOCK\_STREAM。 2、开启监听,用函数Listen(); 3、接收客户端上来的连接,用函数Accept(&B);并且把连接连接的对象存到B中,以便通信使用。 4、当客户端发送来消息时,会触发OnRe...

  • 📂Windows 网络通信套接字技术教程

    文章目录一、TCP/IP介绍1、TCP/IP体系结构2、TCP/IP特点3、TCP/IP协议与WinSock网络编程接口的关系二、套接字原理1、客户机/服务器模式服务器端:客户端:2、基本套接字3、典型过程图三、Windows Socket 程序设计1、Windows Socket网络程序设计核心2、WinSock编程基本流程WinSock API提供了几个函数:下面是一个最简单的创建服务器...

  • 📂Windows套接字——读取和写入配置文件教程

    写入配置文件 CString IP, Port; UpdateData(TRUE); // 将应用程序控件上面的IP和端口 更新至对应的成员变量 IP = m_IpAddress.GetString(); // 读取成员变量控件上面的IP地址将赋给strIP变量 Port.Format(L"%d", m_iPort); ...

  • 📂Linux socket编程 套接字选项教程

    套接字选项概述===============================有很多方法来获取和设置套接字的选项, 以影响套接字行为:getsockopt和setsocketopt;fcntl;ioctl;-getsockopt和setsockopt=============================================2个函数仅用于套接字, 分别用于获取和设置套接字选项#i...

  • 📂nginx优化 tbc教程

    参数优化 =========================主要为两大类配置减少nginx进程处理事务的上下文切换,提高服务响应速度增加nginx进程的优先级,减少系统其他无关任务对nginx进程的影响进程绑定核心开启nginx的CPU零拷贝提高nginx进程的时间切片(提高nginx进程优先级)服务模块功能剥离,减少使用阻塞nginx主进程的功能系统内核优化修改/etc/sysctl.c...

  • 📂Linux网络编程:原始套接字简介教程

    Linux网络编程:原始套接字编程一、原始套接字用途通常情况下程序员接所接触到的套接字(Socket)为两类:流式套接字(SOCK\_STREAM):一种面向连接的Socket,针对于面向连接的TCP 服务应用;数据报式套接字(SOCK\_DGRAM):一种无连接的Socket,对应于无连接的UDP 服务应用。从用户的角度来看,SOCK\_STREAM、SOCK\_DGRAM 这两类套接字似...

  • 📂Nginx源码分析 - HTTP模块篇 - TCP连接建立过程(21)教程

    目录一、监听套接字初始化函数ngx\_http\_optimize\_servers二、Nginx整个连接的过程上一章,我们讲解了HTTP模块是如何初始化的。这一章节,主要讲解监听套接字初始化函数ngx\_http\_optimize\_servers和Nginx整个连接的过程一、监听套接字初始化函数ngx\_http\_optimize\_servers ngx\_http\_opti...

  • 📂Linux系统的进程间通信的方式教程

    Linux系统的进程间通信的方式一、进程间通信的目的数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几M字节之间共享数据:多个进程要操作共享数据,一个进程对共享数据信息传递:一个进程需要向另一个进程发送消息,通知它发生了某种事件。资源共享:多个进程之间共享同样的数据。为了做到这一点,需要内核提供锁和同步机制。进程控制:有些进程希望完全控制另一个进程的执行,此时控制进...

  • 📂Linux系统编程—网络编程—socket编程步骤教程

    TCP/UDP对比TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前 不需 要建立连接TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的 UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(...

  • 📂操作系统哲学原理(06)进程原理-进程通信教程

    说明:该系类文章主要是从哲学视角看 操作系统 这门学科。同时也是 博主阅读《操作系统之哲学原理》的笔记总结。因为博主 这些年主要是以研究安卓系统和 嵌入式Linux为主,因此这个系类文章也是这两个领域不可或缺的基石之一,尤其是对操作系统感兴趣的伙伴可特别关注。-6 进程通信6.1 进程为什么要通信通信是人的需求,对于人发明的进程,自然脱离不了人的习性;而且,如果进程间不能通信,那么所能完成的...

  • 📂linux网络编程之本地套接字通信教程

    本地套接字伪文件即可采用TCP通信又可采用UDP通信采用TCP通信流程如下服务器端创建套接字int lfd=socket(AF\_UNIX,SOCK\_STREAM,0)绑定一个套接字文件 struct sockaddr\_un serv; serv.sun\_family=AF\_UNIX; strcpy(serv.sun\_path,“server.socket”);------现...

  • 📂Linux原始套接字抓取底层报文教程

    1.原始套接字使用场景我们平常所用到的网络编程都是在应用层收发数据,每个程序只能收到发给自己的数据,即每个程序只能收到来自该程序绑定的端口的数据。收到的数据往往只包括应用层数据,原有的头部信息在传递过程中被隐藏了。某些情况下我们需要执行更底层的操作,比如监听所有本机收发的数据、修改报头等,而像SOCK\_STREAM、SOCK\_DGRAMZ则通常用于应用层,并不能满足该需求。通过原始套接字...

  • 📂Linux基础命令之SS教程

    写在前面,公众号的留言功能开通有一段时间了,如果需要交流请尽量选择留言的方式,因为平时我也要working,而且最近打算通过视频加文字的方式来学习,尽情期待。ss是Socket Statistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效...

  • 📂Linux socket下read函数详解教程

    在socket中服务器与客户端进行通信,当其中一方调用close(即这一方会发送一个fin)关闭套接字之后,另一方read()会返回一个0。 服务器开两个进程,一个用于接收客户端发送的数据,另一个进程用于向客户端发送数据。客户端开两个进程也是一个用于发送数据一个用于接收数据。由于创建了两个进程,那么套接字的引用计数都为2,只有当客户端关闭两次套接字,在服务器的read()才会返回0。 ...

  • 📂nginx父子进程间通信教程

    父子进程间通信1 内部流程 — socketpair 基础主要是通过socketpair()函数实现的,下面捋一下内部流程: 1. 话说要从ngx_start_worker_processes函数讲起: static void ngx_start_worker_processes(ngx_cycle_t *cycle, ngx_int_t n, ngx_int_t type) { n...

  • 📂linux c socket编程学习(1)教程

    1、相关理论:大部分资料来自TCP/IP sockets编程(C语言实现),额外做了补充。概念:IP: 每台主机的IP地址都是不同的。主机的IP地址有公网IP和内网IP。在局域网中,每台主机的IP都取自192.168.1.1-192.168.1.255(C类)之间,不存在两台主机的IP重复,此IP是局域网的内网IP,由用户自行分配。公网IP是访问互联网的IP,每次联机到互联网时会随机分配...

  • 📂简单实现一个linux下的socket server 和 client教程

    目录1、linux文件描述符2、在Linux下创建 socket3、bind()函数和connect()函数3.1、bind()函数3.2、connect()函数4、listen()函数和accept()函数4.1、listen()函数4.2、accept()函数5、write()和read()5.1、write()函数5.2、read()函数6、一个service和client的简单实现-...

  • 📂Windows Socket 套接字编程原理(转载)教程

    Windows Socket 套接字编程原理(转载) 原文地址:http://blog.sina.com.cn/s/blog\_7c35df9b0100x64v.html一、客户机/服务器模式 在TCP/IP网络中两个进程间的相互作用的主机模式是客户机/服务器模式(Client/Server model)。该模式的建立基于以下两点:1、非对等作用;2、通信完全是异步的。客户机/服务器模式...

  • 📂Linux-5.10源代码之网络系统简介:教程

    6lowpan : 6LoWPAN是一种基于IPv6的低速无线个域网标准,即IPv6 over IEEE 802.15.4。802 : IEEE 802系列标准是IEEE 802 LAN/MAN 标准委员会制定的局域网、城域网技术标准。其中最广泛使用的有以太网、令牌环、无线局域网等。8021q : IEEE 802.1q以及VLAN Tagging属于互联网下IEEE 802.1的标准规范,...

  • 📂【Linux】网络编程套接字(二)—— TCP编程教程

    文章目录1. TCP协议通信流程1.1 初始化1.2 建立连接 —— 三次握手1.3 数据传输1.4 关闭连接 —— 四次挥手2. 简单的TCP网络程序2.1 TCP的socket API详解2.1.1 监听2.1.2 获取连接2.1.3 建立连接2.1.4 发送数据2.1.5 接收数据2.2 客户端程序2.3 服务端程序2.4 测试多个连接的情况3. TCP多进程版本4. TCP多线程版本...

  • 📂nginx 优化内核参数教程

    nginx 优化内核参数修改/etc/sysctl.conf fs.file-max = 1000000 \#表示单个进程较大可以打开的句柄数net.ipv4.tcp\_tw\_reuse = 1 #参数设置为 1 ,表示允许将TIME\_WAIT状态的socket重新用于新的TCP链接,这对于服务器来说意义重大,因为总有大量TIME\_WAIT状态的链接存在net.ipv4.tcp\...

  • 📂34丨关于Linux网络,你必须知道这些(下)教程

    上一节,学习了 Linux 网络的基础原理。简单回顾一下,Linux 网络根据 TCP/IP 模型,构建其网络协议栈。TCP/IP 模型由应用层、传输层、网络层、网络接口层等四层组成,这也是 Linux 网络栈最核心的构成部分。 应用程序通过套接字接口发送数据包时,先要在网络协议栈中从上到下逐层处理,然后才最终送到网卡发送出去;而接收数据包时,也要先经过网络栈从下到上的逐层处理,最后送到应用...

  • 📂进程间通信IPC (InterProcess Communication)教程

    一、进程间通信的概念每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,InterProcess Communication)进程间通信模型 #### 二、进程间通信的7种方式第一类:传统的Un...