E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Unix网络编程
网络编程知识汇总
最近在看《
UNIX网络编程
卷1》和《FREEBSD操作系统设计与实现》这两本书,我重点关注了TCP协议相关的内容,结合自己后台开发的经验,写下这篇文章,一方面是为了帮助有需要的人,更重要的是方便自己整理思路
腩啵兔子
·
2021-04-25 15:48
浅聊Linux的五种IO模型
看了很多文章,总是云里雾里的感觉,直到读了《
UNIX网络编程
卷1:套接字联网API》中的介绍后,才豁然开朗。这里就给大家分享一下,如有
码农StayUp
·
2021-04-25 08:01
Netty
java
socket
netty
网络
IO模型
Kitura的IO
背景知识关于同步/异步,阻塞/非阻塞的解释除了参见《
Unix网络编程
》之外,知乎中,“愚蠢”和“大姚”分别进行了通俗和详尽的解释。
小凿子
·
2021-04-23 10:14
Netty权威指南2-读书笔记
Netty权威指南2-读书笔记
UNIX网络编程
5种I/O模型I/O复用模型(最大的优势是多路复用)Linux提供select/poll,进程通过将一个或多个fd传递给select或poll系统调用,阻塞在
landon30
·
2021-04-15 10:15
Unix网络编程
-传输控制协议TCP
TCP的服务TCP提供一种面向连接的、可靠的字节流服务。1)面向连接意味着两个使用TCP的应用程序(通常一个客户端和一个服务端)在传输数据以前必须先建立连接。2)可靠、TCP通过下列方式提供可靠性。a)应用数据被分割成TCP认为最合适的发送数据块。b)TCP发出一个段后。他启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重发这个报文段。c)TCP收到来自另一端的数据后,他
大毛的笔记
·
2021-04-13 20:05
京东数科面试真题:常见的 IO 模型有哪些?Java 中的 BIO、NIO、AIO 有啥区别?
为了写这篇文章,还翻看了一下《
UNIX网络编程
》这本书,太难了,我滴乖乖!心痛~个人能力有限。如果文章有任何需要补充/完善/修改的地
·
2021-03-16 06:16
面试javaio
京东数科面试真题:常见的 IO 模型有哪些?Java 中的 BIO、NIO、AIO 有啥区别?
为了写这篇文章,还翻看了一下《
UNIX网络编程
》这本书,太难了,我滴乖乖!心痛~个人能力有限。如果文章有任何需要补充/完善/修改的地
·
2021-03-16 00:17
面试javaio
python网页正则表达式_python提取网页的特定内容(正则表达式实现)
关于正则表达式参考正则表达式python可以很方便地抓取网页并过滤网页的内容,那么,如何从如下的网页中提取csdn文章的标题“《
unix网络编程
(卷1)源代码的使用方法》”。
art Scien
·
2021-02-04 11:26
python网页正则表达式
Linux网络编程的5种IO模型一阻塞IO与非阻塞IO(内含现实生活举例说明)通俗易懂【建议新手收藏】
一、概述在《
Unix网络编程
》一书中提到了五种IO模型,分别是:阻塞IO、非阻塞IO、多路复用IO、信号驱动IO以及异步IO。我们在这里就介绍并实现这5种模型。
深度Linux
·
2021-01-26 17:16
多线程
编程语言
epoll
linux
IO
Unix网络编程
-基本TCP套接字编程(1)
本文讲解编写一个完整的TCP客户/服务器程序所需要的基本套接字函数。socket函数为了执行网络I/O,一个进程必须做的第一件事情就是调用socket函数,指定期望的通信协议类型(TCP、UDP、Unix域等)#includeintsocket(intfamily,inttype,intprotocol);返回:若成功则为非负描述符,若出错则为-1参数family指明协议族,他的取值如下图所示:参
大毛的笔记
·
2020-12-07 08:36
tcp详解 netstat理解
为了深入理解TCP协议,我们需要了解TCP客户端/服务端的状态转移和正确性保持.建议阅读
Unix网络编程
卷1第二章和第三章,原书笔记TCP各种情况下的状态转换图网络学习笔记:TCP状态转换图若LAST_ACK
不存在的里皮
·
2020-09-22 13:49
5种IO模型、阻塞IO和非阻塞IO、同步IO和异步IO
本文是在《
UNIX网络编程
卷1:套接字联网API》6.2节"I/O模型"的基础上,即UNIX/LINUX环境下的网络IO环境下的理解,它里面给出的例子是读取(接收)网络UDP数据。
spring_root
·
2020-09-17 15:44
面试
基础知识
异步
java
listen函数
我们来看
unix网络编程
这本书是怎样对它的解释:listen函数把一个未连接的套接字转换成一个被动套接字,指示内核应该接受指向该套接字的链接请求。
pan.ma
·
2020-09-17 00:01
tcp/ip网络编程
C错误检测宏
看的是《高级UNIX编程》和《
UNIX网络编程
》这两本书。其实我最开始是想看《
UNIX网络编程
》来学习网络编程的,可是看着看着发现没有UNIX系统编程的知识真的不行。
麻辣丝瓜
·
2020-09-16 21:16
linux
c
unix
编程
function
file
socket
muduo 源码分析(一)服务端工作流程
TcpServerAcceptorTcpConnectionEventLoopThreadPoolEventLoopThreadEventLoopPollerChannel2.启动3.新连接到来4.数据收发收数据发数据5.关闭连接主动关闭被动关闭参考文献0.简介最近才拜读了《
Unix
Julien_Lion
·
2020-09-16 20:10
muduo
listen()函数中backlog参数分析
背景知识
Unix网络编程
描述如下:总结0.accept()函数不参与三次握手,而只负责从已建立连接队列中取出一个连接和sockfd进行绑定;1.backlog参数决定了未完成队列和已完成队列中连接数目之和的最大值
ordeder
·
2020-09-16 12:55
Linux-net
Linux中listen()系统调用的backlog参数分析
这篇文章是对上一篇博客网络编程常用接口的内核实现----sys_listen()的补充,上篇文章中我说listen()系统调用的backlog参数既是连接队列的长度,也指定了半连接队列的长度(不能说等于),而不是《
Unix
Justlinux2010
·
2020-09-16 12:43
Linux内核
Node.js的异步I/O
其实操作系统在很早就引入了异步I/O的概念,如下图(摘自
Unix网络编程
中的图片):我对上图的理解有几点:从IO设备读取数据到用户内存的整个过程都是由系统内核来完成;数据总是先被拷贝到内核缓冲区,再由内核缓冲区拷贝到用户内存
gp_leo
·
2020-09-16 11:49
Node.js
TCP协议疑难杂症全景解析
因为本文不会解析TCP头里面的每一个字段或者3次握手的细节,也不会解释慢启动和快速重传的定义4).除了《TCP/IP详解》(卷一,卷二)以及《
Unix网络编程
》以及Linux源代码之外,学习网络更好的资
real李邦柱
·
2020-09-16 11:33
linux
网络通信技术
UNIX网络编程
卷1源代码编译
下载gitclonehttps://github.com/unpbook/unpv13e.git编译./configure#trytofigureoutallimplementationdifferencescdlib#buildthebasiclibrarythatallprogramsneedmake#use"gmake"everywhereonBSD/OSsystemscd../libfre
朝溪
·
2020-09-16 03:37
network
网络
unix
c语言
对于listen函数第二个参数的理解
之前一直没有彻底搞清楚listen这个第二个参数指定之后到底有什么作用,今天看
UNIX网络编程
总算是搞明白了。
昨夜的秋天
·
2020-09-16 02:48
网络编程
mq_open permission denied问题
在
UNIX网络编程
:卷2-进程间通信中的一个例子如下:#include#include#include#include#include#include#defineFILE_MODE(S_IRUSR|S_IWUSR
huanzai2
·
2020-09-15 07:22
c
linux
转自计算机学院一个offer大神的面经:潜心修炼,厚积薄发
1.先看书,后实践首先感谢一年前的自己所下的正确的决定:阅读《算法导论》《UNIX环境高级编程》《
UNIX网络编程
(卷一)》,那时还没想的这么远,只是觉得算法很重要,而我的基础又太薄弱,亟需重整。
sweetyspring
·
2020-09-15 01:05
mmap函数用法及示例程序
UNIX网络编程
第二卷进程间通信对mmap函数进行了说明。
nancygreen
·
2020-09-14 10:37
【转载】《
Unix网络编程
》思维导图
参考这篇文章,很不错:http://www.cnblogs.com/qiaoconglovelife/p/5734768.html
weixin_33937913
·
2020-09-13 13:59
计算机网络常见面试题
网络方面有空可以看看TCP/IP详解卷一和
UNIX网络编程
。以下总结了一些面试中常问的问题:1、TCP为什么需要3次握手,4次断开?
陈伟chenwei
·
2020-09-13 10:37
计算机网络
计算机网络
TCP/IT
面试
sscanf()总结
在看
unix网络编程
时,突然发现用到sscanf()函数,就顺便从网上搜集资料整理一下。
lyz_cs
·
2020-09-13 08:33
c++基础
《
Unix网络编程
》卷1 初级
《
Unix网络编程
》卷1第1章简介第2章传输层TCP-UDP-SCTP第3章套接字编程简介套接字的地址结构值结果参数字节排序函数字节操纵函数inet_pton和inet_ntop函数scok_ntop和相关函数
zhaostu4
·
2020-09-13 07:12
UNIX
网络编程
UNIX网络编程
卷2进程间通信读书笔记—Posix信号量
一、Posix信号量1.Posix信号量分为两种:1.有名信号量:使用PosixIPC名字标识(有名信号量总是既可用于线程间的同步,又可以用于进程间的同步)2.内存信号量:存放在共享内存区中(基于内存的信号量则必须在创建时指定成是否在进程间共享,且在所有进程的共享内存区,具有随进程的持续性)Posix信号量不必在内核中维护(SystemV信号量由内核维护),由可能为路径名的名字来标识。(Posix
准备找工作的Ocean
·
2020-09-13 07:36
Unix网络编程(卷二)
Linux下获取本地IP地址--------getaddrinfo
这个接口在《
Unix网络编程
》第一卷的11.2节有讲解,但是当时看书的时候没有深入的研究这个接口(当时可能感觉获取本地ip地址很容易),这个接口及其相关的
Justlinux2010
·
2020-09-13 05:23
C语言
Linux内核
网络编程
java与网络io模型总结
根据《
unix网络编程
·卷一》所载,目前操作系统的网络io模型分为5中,分别为blockingio:阻塞型io,再熟悉不过,处理accept、read、write都会阻塞用户进程,对应java中的biononblockingio
@云师兄
·
2020-09-13 05:50
网络编程
《
unix网络编程
》(7)socket概述
socket什么是socketsocket可以看成是用户进程与内核网络协议栈的接口(编程接口,如下图所示),其不仅可以用于本机进程间通信,可以用于网络上不同主机的进程间通信,甚至还可以用于异构系统之间的通信。IPv4套接字地址结构IPv4套接口地址结构通常也称为“网际套接字地址结构”,它以“sockaddr_in”命名,定义在头文件中。TPv4地址和TCP或UDP端口号在套接字地址结构中总是以网络
Sunshine_top
·
2020-09-13 04:27
UNIX网络编程
Ubuntu下实现的网络编程
积累的一些
UNIX网络编程
的知识
积累的一些
UNIX网络编程
的知识2011年04月20日网络编程常见问题总结(一)在网络程序中遇到的一些问题进行了总结,这里主要针对的是我们常用的TCPsocket相关的总结,可能会存在错误,有任何问题欢迎大家提出
iteye_627
·
2020-09-13 01:09
后端
网络
UNIX网络编程
——并发服务器(TCP)
在迭代服务器中,服务器只能处理一个客户端的请求,如何同时服务多个客户端呢?在未讲到select/poll/epoll等高级IO之前,比较老土的办法是使用fork来实现。网络服务器通常用fork来同时服务多个客户端,父进程专门负责监听端口,每次accept一个新的客户端连接就fork出一个子进程专门服务这个客户端。但是子进程退出时会产生僵尸进程,父进程要注意处理SIGCHLD信号和调用wait清理僵
weixin_33961829
·
2020-09-12 20:45
网络
运维
epoll
UNIX网络编程
——使用线程的TCP回射服务器程序
同一进程内的所有线程除了共享全局变量外还共享:(1)进程指令;(2)大多数数据;(3)打开的文件(即描述符);(4)信号处理函数和信号处置;(5)当前工作目录;(6)用户ID和组ID。不过每个线程有各自的:(1)线程ID;(2)寄存器集合,包括程序计数器和栈指针;(3)栈(用于存放局部变量和返回地址);(4)errno;(5)信号掩码;(6)优先级。转载于:https://www.cnblogs.
Linux????? Mr.Liyz
·
2020-09-12 20:42
UNIX网络编程
——并发服务器(多线程)
并发服务器:(1)多进程并发服务器:http://blog.csdn.net/songshimvp1/article/details/51819765示例:http://blog.csdn.net/songshimvp1/article/details/51833781(2)I/O复用并发服务器:http://blog.csdn.net/songshimvp1/article/details/51
松狮MVP
·
2020-09-12 20:27
Linux
socket编程——服务器并发
前言,本文引用了《
Unix网络编程
》,向作者致以崇高的敬意。在前面的文章《socket编程——TCPserver编程框架分析》中,我们分析了一个典型的tcpserver案例。
猪哥-嵌入式
·
2020-09-12 18:43
TCP/IP
端口复用 -- socket编程:SO_REUSEADDR例解
其实这个问题在RichardStevens的《
Unix网络编程
指南》卷一里有很详细的解答(中文版P166-168页)。这里我只是写几个基本的例子来验证这个问题。
sky0942
·
2020-09-12 01:40
Unix环境高级编程
TCP连接的建立和关闭详解
1.TCP建立连接(三次握手)下面两个图是从协议和接口两个角度来解释TCP的三次握手过程(分别摘自计算机网络-谢希仁和
UNIX网络编程
卷1):1.1.tcpdump三次握手下面通过tcpdump来查看tcp
walker沃克
·
2020-09-11 14:07
Linux
Programming
C语言中的union
最近在看到
UNIX网络编程
中,对主机字节序判断的一个小程序时,对union的运用让我有点疑惑,如下代码:union{shorts;charc[sizeof(short)];}un;un.s=0x0102
NSDCODER
·
2020-09-11 13:22
C/C++
UNIX网络编程
——利用recv和readn函数实现readline函数
在前面的文章中,我们为了避免粘包问题,实现了一个readn函数读取固定字节的数据。如果应用层协议的各字段长度固定,用readn来读是非常方便的。例如设计一种客户端上传文件的协议,规定前12字节表示文件名,超过12字节的文件名截断,不足12字节的文件名用'\0'补齐,从第13字节开始是文件内容,上传完所有文件内容后关闭连接,服务器可以先调用readn读12个字节,根据文件名创建文件,然后在一个循环中
weixin_33847182
·
2020-09-11 04:52
IPv6
先随便写一点,大多参考
UNIX网络编程
,以后在更新这个。
ysu108
·
2020-09-10 21:44
TCP与服务器
UNIX网络编程
笔记
TCPIP是内核协议栈的一部分sockaddr_in:网际套接口地址结构structsockaddr:通用套接口地址结构从TCP套接口度数据时,总是把read放在某个循环中,当read返回0(远程端关闭连接)或负值(错误发生时)终止循环计算机网络各层对等实体间交换的单位信息称为协议数据单元(PDU)应用层:TCP(数据data)UDP(记录record)TCP:分节segmentUDP:数据报da
steven_liao
·
2020-09-10 17:57
《
unix网络编程
》生产者消费者问题
首先是多个生产者单个消费者问题:/*includemain*/#include#include#include#include#include#defineNBUFF10#defineMAXNTHREADS100intnitems,nproducers;/*read-onlybyproducerandconsumer*/struct{/*datasharedbyproducersandconsum
mikon_lee
·
2020-09-10 15:39
UNIX
网络编程之五种IO模型
在《
Unix网络编程
》一书中提到了五种IO模型,分别是:阻塞IO、非阻塞IO、多路复用IO、信号驱动IO以及异步IO。下面就分别来介绍一下这5种IO模型的异同。
曾经有人跟我说
·
2020-08-26 23:59
系统架构
Linux内核
计算机网络
windowns 安装VMware虚拟机常见问题,屏幕不能跟随窗口变化而变化
很多文章讲了安装vMware的方法,以及安装liunx系统的方法,最后是安装vmwaretools;只有在安装好以上三步之后才能开始你的UNiX高级编程或者Linux的内核开发,驱动开发,
UNIX网络编程
jinbaippdpdpdpdpd
·
2020-08-26 13:08
linux环境搭建
I/O模型
5种IO模型,及其比较,摘自《
UNIX网络编程
卷1:套接字联网API(第3版)》;中译本以及英文原版,插图不清晰,将图以svg格式重绘。图像可以任意放大。
令狐-少侠
·
2020-08-26 07:37
nio
UNIX网络编程
学习
unix网络编程
学习最近抽时间学习
UNIX网络编程
,通过网络和书中的知识将以前落下的内容尽量补上来,因为以前基本上做windows相关开发,用到的网络方便的技术比较少,也没有进行深入研究,linux和网络编程这块是个短板
xinghuiwei
·
2020-08-24 18:01
socket总结
socket学习总结《
UNIX网络编程
卷1:套接字联网API》第4章基本TCP套接字编程1.socket函数用于获得套接字描述符。
轻舟001
·
2020-08-24 16:48
UNIX网络编程
UNP1/2安装问题
本文,《
UNIX网络编程
·套接字编程》卷1源码编译及运行源码编译及运行运行书本第一例子:测试:.
Hosea14
·
2020-08-24 13:48
Linux
C/C++
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他