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网络编程vol1
Linux/
UNIX网络编程
笔记(三) TCP套接字编程
TCP套接字编程1、TCP套接字编程socket()函数:产生TCP套接字,作为TCP通信的传输端点。#includeintsocket(intfamily,inttype,intprotocol);返回一个小的非负的整数,与文件描述符类似,即套接字描述符。family:socket协议类型,AF_INET(IPV4),AF_INET6(IPV6),AF_ROUTE(路由套接口)type:套接字类
准备找工作的Ocean
·
2020-08-05 15:04
Linux/UNIX网络编程
Linux/
Unix网络编程
之UDP的connect函数
对于linux网络编程,我们都知道UDP是发送数据报,不是面向连接的协议,也就是它只是把数据报发送到链路层,至于能不能到达目的IP和端口,他都无能为力了。而且,我们只要在sendto函数中指定你要发送的端口和IP地址就可以了,我们不用绑定端口和IP。但是,如果对UDP进行connect函数的调用,会发生什么现象呢?那么,connect函数是连接外部的IP和端口,一般我们是连接服务器的公共的端口和I
zhengzhoudaxue2
·
2020-08-05 15:17
unix网络编程读书笔记
TCP/IP协议读书笔记
【LINUX/
UNIX网络编程
】之使用消息队列,信号量和命名管道实现的多进程服务器(多人群聊系统)...
本学期Linux、
unix网络编程
的第三个作业。
weixin_33788244
·
2020-08-05 14:36
c++ Linux下 socket tcp&udp编程简单范例
关于linux下的socket编程,其实理解了也不是特别的难,先看一张原理图(摘自
unix网络编程
)server端#include#include#include#include#include#includeintmain
黄浦港
·
2020-08-05 13:00
Linux/
Unix网络编程
指南(Socket 编程)
转至:Jin_Haiqing的博客。http://hi.baidu.com/jin_haiqing介绍Hey!Socket编程让你沮丧吗?从manpages中很难得到有用的信息吗?你想跟上时代去做一做Internet程序,但是为你在调用connect()前的bind()的结构而愁眉不展?…好了,我现在已经来了,我将和所有人共享我的知识了。如果你了解C语言并想穿过网络编程的沼泽,那么你来对地方了。读
TuTu
·
2020-08-05 12:51
【Linux/
unix网络编程
】之使用socket进行TCP编程
实验一TCP数据发送与接收【实验目的】1、熟练掌握套接字函数的使用方法。2、应用套接字函数完成基本TCP通讯,实现服务器与客户端的信息交互。【实验学时】4学时【实验内容】实现一个服务器与一个客户之间通讯。具体功能如下:(1)服务器端:服务器端等待客户的连接,一旦连接成功,则显示客户的IP地址、端口号;循环接收客户发来的信息并在终端上显示,同时在信息前加入序号并返回给客户端;当从客户接收到bye后不
weixin_34239592
·
2020-08-05 12:27
book list
9787540245030C++Primer中文版(第4版)9787115145543[美]StanleyB.Lippman等著李师贤等译C++Primer习题解答(第4版)9787115155108蒋爱军,梅晓勇,李师贤著
UNIX
贺二公子
·
2020-08-05 10:33
[参考资料]
【
UNIX网络编程
卷1】 第3章 套接字编程简介
3.2套接字地址结构大多数套接字函数都需要一个指向套接字地址结构的指针作为参数。每个协议族都定义自己的套接字地址结构,名字均以sockaddr_开头,并以对应每个协议族的唯一后缀结尾。3.2.1IPv4套接字地址结构以sockaddr_in命名,定义在头文件中。定义如下:structin_addr{in_addr_ts_addr;/*32-bitIPv4address*/};structsocka
无夜之凛冬
·
2020-08-04 16:48
UNIX网络编程卷1
BIO NIO AIO
在《
Unix网络编程
》中归纳了5种I/O模型:Unix下可用的I/O模型为5种blockingI/O(BIO):阻塞IOnon
代码还是烂到家
·
2020-08-04 01:59
java
linux select/epoll
一、Unix/Linux网络IO模型在经典的
Unix网络编程
中,总结出了5种不同的网络IO模型,分别是阻塞式IO,非阻塞IO,IO多路复用,信号驱动IO,以及异步IO模型。
雪飞_海
·
2020-08-04 00:38
Linux
Unix网络编程
学习笔记(一)初步认识socket编程
客户端编程步骤设置网络连接各项参数设置套接字的地址族、目的端口号、目的ip地址进行网络连接向服务器端发送信息或接受信息断开连接CLIENT()sockfdasasocketdescriptorservaddrasasocketARRAYisaarray//AF_INET表示IPv4,SOCK_STREAM表示字节流套接字sockfd=socket(AF_INET,SOCK_STREAM,0)ser
隐藏在画中的落叶
·
2020-08-03 09:08
Unix网络编程学习笔记
UNIX网络编程
--原始套接字(二十八)
UNIX网络编程
---原始套接字(二十八)一、概述1)有了原始套接字,进程可以读写ICMPv4、IGMPv4和ICMPv6等分组。
鱼思故渊
·
2020-08-03 09:30
linux网络编程
《
UNIX网络编程
》笔记——套接字选项
一、操纵套接字选项的方法1、getsockopt和setsockopt函数这两个函数仅用于套接字#includeintgetsockopt(intsock,intlevel,intoptname,void*optval,socklen_t*optlen);intsetsockopt(intsock,intlevel,intoptname,constvoid*optval,socklen_toptl
第2梦
·
2020-08-03 09:16
Linux/Unix
Linux/Unix
网络编程
《
UNIX网络编程
卷1》 笔记: 原始套接字—ping程序
原始套接字可以提供普通的TCP和UDP套接字不支持的三个能力:1.进程可以读写ICMPv4、IGMPv4、ICMPv6分组。2.进程可以读写内核不处理其协议字段的IPv4数据报。3.进程可以使用IP_HDRINCL套接字选项自行构造IPV4首部。本节我们使用原始套接字来实现一个常用的程序:ping。为了同时支持ICMPv4和ICMPv6(这里不贴出ICMPv6相关的代码,读者可以在书中查阅),我们
alenliu0621
·
2020-08-03 08:02
UNIX网络编程
卷1
UNIX网络编程
——套接字选项
http://www.educity.cn/linux/1241288.html有时候我们需要控制套接字的行为(如修改缓冲区的大小),这个时候我们就要学习套接字选项。intgetsockopt(intsockfd,intlevel,intoptname,void*optval,socklen_t*optlen)intsetsockopt(intsockfd,intlevel,intoptname,
weixin_34419326
·
2020-08-03 07:15
UNIX网络编程
——套接字选项(SOL_SOCKET级别)
#includeintsetsockopt(intsocket,intlevel,intoption_name,constvoid*option_value,size_toption_len);第一个参数socket是套接字描述符。第二个参数level是被设置的选项的级别,如果想要在套接字级别上设置选项,就必须把level设置为SOL_SOCKET。第三个参数option_name指定准备设置的选
weixin_34346099
·
2020-08-03 07:27
UNIX网络编程
——套接字选项(SO_RCVBUF和SO_SNDBUF)
有时候我们需要控制套接字的行为(如修改缓冲区的大小),这个时候我们就要学习套接字选项。intgetsockopt(intsockfd,intlevel,intoptname,void*optval,socklen_t*optlen)intsetsockopt(intsockfd,intlevel,intoptname,constvoid*optval,socklen_t*optlen)level指
oldbalck
·
2020-08-03 07:53
UNIX网络编程
——套接字选项(心跳检测、绑定地址复用)
/*设置套接字选项周期性消息检测连通性心跳包、心博。主要用于长连接。*参数:套接字,1或0开启,首次间隔时间,两次间隔时间,断开次数*/voidsetKeepAlive(intiSockfd,intiSockAttrOn,socklen_tiIdleTime,socklen_tiInterval,socklen_tiCount){setsockopt(iSockfd,SOL_SOCKET,SO_K
weixin_34224941
·
2020-08-03 07:25
网络
UNIX网络编程
——套接字选项(SO_REUSEADDR)
1、一般来说,一个端口释放后会等待两分钟之后才能再被使用,SO_REUSEADDR是让端口释放后立即就可以被再次使用。SO_REUSEADDR用于对TCP套接字处于TIME_WAIT状态下的socket,才可以重复绑定使用。server程序总是应该在调用bind()之前设置SO_REUSEADDR套接字选项。TCP,先调用close()的一方会进入TIME_WAIT状态2、SO_REUSEADDR
weixin_34206899
·
2020-08-03 07:19
UNIX网络编程
——经常使用的套接字选项
1.设置/获取套接字选项intsetsockopt(intsocket,intlevel,intoption_name,constvoid*option_value,socklen_toption_len);intgetsockopt(intsocket,intlevel,intoption_name,void*restrictoption_value,socklen_t*restrictopti
weixin_34194379
·
2020-08-03 07:15
UNIX网络编程
——通用套接字选项
1.SO_BROADCAST套接字选项本选项开启或禁止进程发送广播消息的能力。只有数据报套接字支持广播,并且还必须是在支持广播消息的网络上(例如以太网,令牌环网等)。我们不可能在点对点链路上进行广播,也不可能在基于连接的传输协议(例如TCP和SCTP)之上进行广播。2.SO_DEBUG套接字选项本选项仅由TCP支持。当给一个TCP套接字开启本选项时,内核将为TCP在该套接字发送和接受的所有分组保留
weixin_33691598
·
2020-08-03 06:31
unix网络编程
值setsockopt函数
http://topic.csdn.net/t/20041126/20/3592436.html写出我在网络编程中的一点心得体会,希望对他(^_^也对大家)有帮助:1.如果在已经处于ESTABLISHED状态下的socket(一般由端口号和标志符区分)调用closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOLbReuseaddr=TRUE;se
wintree
·
2020-08-03 06:59
unix
环境高级编程
C/C++学习
unix/linux学习篇
UNIX网络编程
——基本SCTP套接字编程
1、一到一形式:(与TCP的典型用法几乎一样)一到一形式套接字是一个类型为SOCK_STREAM,协议为IPPROTO_SCTP的网际套接字。2、一到多形式:服务器程序无需管理大量的套接字描述符,单个套接字描述符将代表多个关联。在一到多形式的套接字上,用“关联标识”来标识单个连接。一到多形式套接字是一个类型为SOCK_SEQPACKET,协议为IPPROTO_SCTP的网际套接字。3、SCTP一到
松狮MVP
·
2020-08-03 04:41
Linux
UNIX网络编程
——套接字I/O操作上的超时设置
1、调用alarm(SIGALRM信号处理)调用alarm,它在指定超时期满时产生SIGALRM信号。(1)使用SIGALRM为connect设置超时:因为在多线程程序中处理信号非常困难,因此建议只是在未线程化程序或单线程化程序中使用该技术。/*includeconnect_timeo*/#include"unp.h"staticvoidconnect_alarm(int);intconnect_
松狮MVP
·
2020-08-03 04:41
Linux
unix网络编程
附录A IPv4、IPv6、ICMPv4、ICMPv6
IPv4首部4位版本(version)字段值为4首部长度(headerlength)字段是包括任何选项在内的整个IP首部的32为字长度这个4位字段的最大值是15,因而IP首部的最大长度是60个字节;扣除首部所占的20个字节外,它最多允许40个字节的选项历史性的8位服务(Type-OF-Service,TOS)已被分为两个字段6位区分服务码点(DifferentiatedServicesCodePo
MonkryThree
·
2020-08-03 00:17
Unix网络编程
Network Stack Specialization for Performance
,纪录在此备忘Ps:文中关键词的概念:segment:对应于tcp的PDU(协议传输单元),这里应该指tcp层的包,如果一个包太大tcp负责将它拆分成多个segment(这个概念对理解后文有帮助)根据
unix
geekops
·
2020-08-03 00:28
getsockopt和setsockopt函数
在
Unix网络编程
中通常用到getsockopt和setsockopt两个函数来获取和设置套接口的选项。
dbcdnof726781
·
2020-08-02 23:37
UNIX网络编程
——套接字选项(setsockopt)
setsockopt的一些用法:closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOLbReuseaddr=TRUE;setsockopt(s,SOL_SOCKET,SO_REUSEADDR,(constchar*)&bReuseaddr,sizeof(BOOL));如果要已经处于连接状态的soket在调用closesocket后强制关闭,不经
weixin_34366546
·
2020-08-02 21:54
Unix网络编程
学习笔记--
UNIX网络编程
--卷1:套接字联网API第一天
本书面向对象:编写的程序能使用称为套接字(socket)的API进行彼此通信的人每一张操作系统提供了大量的网络应用程序:网页浏览器、电子邮件客户端、文件共享服务器。按照常规的划分方法把这些应用程序分为客户程序和服务器程序。通过本书,我能够理解很多相应的例子。常见的例子:web服务器是一个长时间运行的程序daemon,他只响应来自网络请求时才发送网络消息。协议的另一端是Web客户程序,如浏览器。第一
Thomas_YiSaYa
·
2020-08-02 20:36
套接字联网API之一 TCP套接字
最近学习了
Unix网络编程
,套接字联网API,书中的内容狠经典,很所部分的细节较少较多,主要部分的内容自己经常容易忽略。
Mjt_csdn
·
2020-08-01 10:37
套接字联网API
使用fuser找出正在使用挂载设备的进程
当使用umount卸载挂载设备时,经常会出现下面的错误提示:umount:/
vol1
:deviceisbusy挂载设备
vol1
目前有程序在使用,无法umount,这种情况下可使用fuser找出相应的进程
hejisan
·
2020-07-31 18:25
网络IO之阻塞、非阻塞、同步、异步总结
unix网络编程
第一卷第六章专门讨论五种不同的IO模型,Stevens讲的非常详细,我记得去年看第一遍时候,似懂非懂,没有深入理解。
aosica321
·
2020-07-31 15:06
nio
java
基因数据处理1之mapping_to_cram
AWorkedExampleObtainsomepublicdataWewillusethefirst100,000read-pairsfromayeastdataset.curlftp://ftp.sra.ebi.ac.uk/
vol1
KeepLearningBigData
·
2020-07-30 18:52
基因数据处理
unix网络编程
学习(1)
头文件定义了structin_addr{in_addr_ts_addr;//网络ip地址,网络字节序;}常用套接口地址结构structsockaddr_in{uint8_tsin_len;sa_family_tsin_family;in_portsin_port;structin_addrsin_addr;charsin_zero[8];}长度成员可以不用管它,只有涉及到路由套接口时才用。通用套接
炽热恒星
·
2020-07-29 19:50
linux使用及系统编程
UNIX网络编程
卷一 学习笔记 第六章 I/O复用:select和poll函数(部分)
终止网络连接的通常方法是调用close函数,但它有两个限制:1.close函数把描述符的引用计数-1,仅在计数变为0时才关闭套接字,shutdown函数不管引用计数就激发TCP的正常连接终止序列。2.close函数终止读和写两个方向上的数据传送,shutdown函数可关闭一个方向上的数据传送。TCP是全双工的,有时需要告知对端我们已完成了数据发送,即使对端仍有数据要发送给我们。howto参数的值:
tus00000
·
2020-07-29 11:00
UNIX环境高级编程(第三版)
NIO同步非阻塞与AIO异步非阻塞IO
在
unix网络编程
的定义里异步和非异步概念的区别就是实际的IO操作是否阻塞。如果不阻塞就是异步,如果阻塞就是同步。而阻塞和非阻塞的区别在于发起IO请求的时候是否会阻塞,如果会就是阻塞,不会就是非阻塞。
weixin_30374009
·
2020-07-29 06:05
(转)一篇文章读懂阻塞,非阻塞,同步,异步
Unix网络编程
中的五种IO模型BlockingIO-阻塞IONoneBlockingIO-非阻塞IOIO
飘飘历险记
·
2020-07-29 04:47
嵌入式
LINUX
操作系统
unix网络编程
时关于字节序的问题
在《
unix网络编程
》中,当写到套接字地址结构中关于IP和网络端口字节序转换的问题,所谓字节序是指计算机在存储多字节类型数据时,将这个类型中的低位数据存储在内存地址结构中的高位地址还是地位地址,比如一个整形数字
悟空fighting
·
2020-07-28 23:49
unp
apue
unp
网络编程
字节序
UNIX网络编程
总结
作为一名现代开发人员,在日常的开发中不可避免的会接触到网络编程。网络编程已经成为现代开发人员不可或缺的基本素养,网络编程本身又绕不开socket与tcp。虽然各个语言都提供了丰富的网络库,开发人员直接使用socketapi的机会很少,但是对于socketapi的行为与tcp协议栈的交互过程也应该有所了解。这样对于日常的开发设计与故障诊断都有所帮助。本文将以图示的方式讨论了socket函数的行为与t
wllenyj
·
2020-07-28 23:56
笔记
网络
ORB_SLAM2源码阅读(一)概要
代码一行行看,博客知乎一篇篇刷,书本一本本买,从最最开始的《C++primer》和《21天精通Python》(黑历史)到后面的《概率机器人》《机器学习》《视觉slam十四讲》,以及《Unix环境高级编程》《
UNIX
若愚和小巧
·
2020-07-28 21:17
SLAM算法阅读
TCP协议-建立连接、断开连接、状态转换图
来源:《
UNIX网络编程
卷1:套接字联网API(第3版)》第2章传输层:TCP、UDP和SCTP2.6TCP连接的建立和终止为帮助大家理解connect、accept和close这3个函数并使用netstat
wangwh485
·
2020-07-28 15:09
网络
iocp和select区别 (学习)
把TCP/IP协议卷1-3+
UNIX网络编程
看通,然后在486PentiumMMX,双核心,4核心的CPU平台下使用10M100M1000M分别做测试,会得出超出你想象的结果!
so_so_Boy
·
2020-07-28 11:02
c++
学习笔记
c++
学习笔记
http服务器
Netty理论一:Java IO与NIO
1、LinuxIO模型《
Unix网络编程
》把I/O模型分成五类阻塞式I/O模型:整个过程都是阻塞的——BIO(javasocket)image.pngimage.png非阻塞式I/O模型:只有从内核空间复制数据时才是阻塞的
张凯_9908
·
2020-07-28 08:13
一个简单的时间获取客户端/服务器程序(疑难解决)
刚开始学习
UNIX网络编程
,碰到很多小问题,写下来方便以后遇到类似问题快速解决。
Lqsaber
·
2020-07-28 05:18
Unix网络编程
技术书籍整理
《重构:改善既有代码的设计》《修改代码的艺术》《程序员的自我修养-链接、装载与库》俞《
UNIX网络编程
.卷2.进程间通信》内核《深入理解Linux内核》《Linux内核设计与实现》原书第三版.RobertLove
執著我們的執著
·
2020-07-27 12:10
Unix网络编程
学习笔记——close与shutdown
在linux网络程序中有两个函数都可以发起终端TCP连接的请求,close与shutdown,那么这两个函数到底有什么区别呢?intclose(intsockfd);close函数的缺省功能是将套接口做上”已关闭“标记,并立即返回到进程,这个套接字本身不能被该进程使用:它不能被用作read和write的参数,但TCP将试着发送以排队待发的任何数据,然后按照正常的TCP终止序列进行操作。close的
lonelywinter340
·
2020-07-16 02:52
网络编程
Unix网络编程
学习笔记——Select函数的返回条件
intselect(intmaxfdp,fd_set*readfds,fd_set*writefds,fd_set*errorfds,structtimeval*timeout);在select函数的定义中,中间三个参数用于指定我们需要内核帮助测试是否可读、可写和异常条件的描述字。那么描述字在哪些情况下才会被认为准备好呢?下面四个条件任何一个满足的时候套件字准备好读:1.套接口接受缓冲区的数据字节
lonelywinter340
·
2020-07-16 02:52
网络编程
检测TCP非正常断开连接 SO_KEEPALIVE 使用缺陷分析
有一个很详细的英文HowTO,在下面的网页中大家可以看到详细的内容http://www.icewalkers.com/Linux/Howto/TCP-Keepalive-HOWTO/index.html在《
UNIX
jeven2005
·
2020-07-16 01:09
资料
网络IO(NIO)之阻塞、非阻塞、同步、异步总结
unix网络编程
第一卷第六章专门讨论五种不同的IO模型,Stevens讲的非常详细,我记得去年看第一遍时候,似懂非懂,没有深入理解。
Albert陈凯
·
2020-07-15 23:01
Unix网络编程
之poll函数实现服务器反射客户端-server.c
1.poll函数:intpoll(structpollfd*fds,nfds_tnfds,inttimeout);其中第一个参数表示structpollfd结构体的数组,structpollfd的结构体如下:structpollfd{intfd;shortevents;shortrevents;}第二个参数表示最大描述符的个数加一。第三个参数表示超时限制规定的时间。代码:#include"unp.
Cbee
·
2020-07-15 21:47
Unix网络编程
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
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
其他