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
linux网络编程
QT开发之IP协议
IP协议就不讲了,以前在
Linux网络编程
这一块讲的非常清楚了,这篇文章只是一个演示怎么在QT中去使用库函数来运用IP相关的操作.新建QtGui应用项目,名称为myIP,其他类保持默认,在工程文件中添加
HeroKern
·
2020-08-20 06:06
QT
linux网络编程
中阻塞和非阻塞socket的区别
原文:http://blog.sina.com.cn/s/blog_4b029ef30100nxcb.html阻塞socket和非阻塞socket读操作对于阻塞的socket,当socket的接收缓冲区中没有数据时,read调用会一直阻塞住,直到有数据到来才返回。当socket缓冲区中的数据量小于期望读取的数据量时,返回实际读取的字节数。当sockt的接收缓冲区中的数据大于期望读取的字节数时,读取
liuhuahan
·
2020-08-20 06:10
C语言
Linux应用
嵌入式软件开发培训笔记——
Linux网络编程
及I/O模型
一、基础知识1、网络体系结构(协议模型)协议模型的特点OSI和TCP/IP协议模型2、TCP/IP协议模型分层介绍以及各层提供的主要功能每一层的典型协议3、TCP/IP的通信模型数据的打包和解包数据在网络节点之间的流动4、TCP和UDP协议TCPUDP(可靠性的概念)二、基于TCP/IP的编程1、发送端:数据打包2、接收端:数据解包3、TCP/IP协议通信模型4、TCP/IP结构5、IP地址分类6
csdn85391440
·
2020-08-19 23:09
linux网络编程
linux网络编程
中协议簇AF_和PF_的区别
在socket.h文件中有对协议簇的宏定义,如下:/*Protocolfamilies,sameasaddressfamilies.*/#definePF_UNSPECAF_UNSPEC#definePF_UNIXAF_UNIX#definePF_LOCALAF_LOCAL#definePF_INETAF_INET#definePF_AX25AF_AX25#definePF_IPXAF_IPX
The_perfect_world
·
2020-08-19 23:48
UNIX环境高级编程
linux
[物联网]NB-IOT(RDA8909) udp收发数据
熟悉
linux网络编程
的应该对这个很熟悉了,直接上代码ing:#include"..."
slimmm
·
2020-08-19 07:28
NB-IOT
《Linux高性能服务器编程》学习笔记——第五章
Linux网络编程
基础API(2)
现在学习
Linux网络编程
基础API第二个部分,socket编程的基础操作API。二、socket基础API1、创建socketlinux中一切皆文件,socket是可读可写可控制可关闭的文件描述符。
爱很遥远
·
2020-08-18 23:26
互联网-网络编程
Linux网络编程
基础API【socket】
文章目录创建socket命名socket监听socket接受连接发起连接关闭连接代码示例创建socketlinux的思想是一切东西皆为文件,socket也不例外,他就是个可读可写可控制可关闭的文件描述符。接下来我们看看如何创建一个socket。#include#includeintsockfd=socket(intdomain,inttype,intprotocol);//创建套接字assert(
♚ Lebron James ♚
·
2020-08-18 23:04
网络编程
linux
Linux网络编程
IPv4和IPv6的inet_addr、inet_aton、inet_pton等函数小结
知识背景:210.25.132.181属于IP地址的ASCII表示法,也就是字符串形式。英语叫做IPv4numbers-and-dotsnotation。如果把210.25.132.181转换为整数形式,是3524887733,这个就是整数形式的IP地址。英语叫做binarydata。(其实binary是二进制的意思)详细介绍,请参考:网络字节序与主机字节序的转换问题所在:如何在字符串形式的IP和
阳光岛主
·
2020-08-18 22:36
NetWork
Linux/Shell
linux网络编程
1 最简单的socket编程
下面是socket编程的服务器端先看一个图,1复制代码1#include2#include3#include4#include//针对系统调用的封装fork,pipe各种i/o原语readwrite等56#include7#include//互联网地址族定义数据结构sockaddr_in8#include//提供IP地址转换函数910#include//一批C语言字符分类函数用于测试字符是否属于特
0x6g1k8T
·
2020-08-18 22:16
Linux网络编程
基础API--socket地址API
1.主机字节序和网络字节序1.1大小端原理 网络通信使得数据从一个主机传递到另一个主机。然而在不同的的处理器在管理内存单元上的数据时,对需要存放在多个内存单元地址的某一数据的处理方式不尽相同,因此对数据的解析结果也不同。目前处理器数据处理类型有大端和小端两种方式。小端(Little-endian)模式:操作数的存放方式为高地址存放高字节。大端(Big-endian)模式:操作数的存放方式为高地址
mybright_
·
2020-08-18 21:30
Linux系统/网络编程
Linux编程
Linux网络编程
--struct hostent结构体
使用这个东西,首先要包含2个头文件:#include#includestructhostent*gethostbyname(constchar*name);这个函数的传入值是域名或者主机名,例如"www.google.com.tw","wpc"等等。传出值,是一个hostent的结构(如下)。如果函数调用失败,将返回NULL。structhostent{char*h_name;char**h_al
iteye_12675
·
2020-08-18 20:39
操作系统
Linux网络编程
基础API--TCP的数据读写API
《Linux高性能服务器编程》阅读笔记:1.TCP通信的读写(收发)接口 因为”Linux系统上”一切皆是文件”,那么自然读写文件用的APIread()/write()同样适用于socket。不过Linux还提供了几个专门用于socket数据读写的系统调用。#include#includessize_trecv(intsockfd,void*buf,size_tlen,intflags);ssi
mybright_
·
2020-08-18 19:24
Linux系统/网络编程
Linux编程
Linux网络编程
基础API--socket文件描述符API
《Linux高性能服务器编程》阅读笔记:1.创建socket Linux系统上”一切皆是文件“,socket也不例外,它是可读/可写/可控制/可关闭的文件描述符。要实现socket通信,双方都需要建立各自的socket对象。#include/*SeeNOTES*/#includeintsocket(intdomain,inttype,intprotocol); (1)domain参数告诉系统使
mybright_
·
2020-08-18 19:52
Linux系统/网络编程
Linux编程
linux网络编程
之inet_addr和inet_ntoa使用总结
1、介绍inet_addr函数inet_addr函数转换网络主机地址(如192.168.1.10)为网络字节序二进制值,如果参数char*cp无效,函数返回-1(INADDR_NONE),这个函数在处理地址为255.255.255.255时也返回-1,255.255.255.255是一个有效的地址,不过inet_addr无法处理in_addr_tinet_addr(constchar*cp)2、介
chen.yu
·
2020-08-17 15:39
Linux
网络编程
Linux网络编程
---I/O复用模型之epoll
Linux网络编程
—I/O复用模型之epoll1.epoll模型简介epoll是Linux多路服用IO接口select/poll的加强版,e对应的英文单词就是enhancement,中文翻译为增强,加强
men_wen
·
2020-08-16 19:54
Linux
环境编程
面试相关资料整理 --- 1. 最近看的面试资料
上)—From:大牛陈皓排序相关算法总结2.1数据结构与算法系列目录2.2九种排序算法分析与实现2.3数据结构常见的八大排序算法(详细整理)—有各个算法时间/空间复杂度是对比图并发编程(IO多路复用)
Linux
胡云层呀
·
2020-08-16 17:52
2020秋招面试
Nginx 源码分析:学习网络编程
本场Chat您将学习到以下内容:
Linux网络编程
相关的知
蔚1
·
2020-08-16 15:07
linux网络编程
/tcp_server中server bind失败原因的调研
问题模型:server1为服务端,在本地的9999端口监听,server2相对server1是客户端,server2启动后首先向server1发起连接,然后再8888端口监听。程序代码不在列出。先后启动server1、server2,然后查看当前连接,如图1所示。图1.建立连接,正常之后强制结束server1(ctrl+c),再次查看当前连接状态,如图2所示。图2.server1主动关闭后的状态我
gilr
·
2020-08-16 08:49
linux
网络编程
server
linux
socket函数htons()
概述编辑在Windows和
Linux网络编程
时需要用到的,用来将主机字节顺序转化为网络字节顺序,以Windows下的代码为例:#includeu_shorthtons(u_shorthostshort)
越来越认真
·
2020-08-16 06:07
linux
【
LINUX网络编程
】Socket网络编程实战
网络套接字函数最简单的socket的程序sever#include#include#include#include#include#include#include#include#defineMAXLINE80#definePORT6666intmain(void){structsockaddr_inservaddr,cliaddr;socklen_tcliaddr_len;intlistenfd
与光同程
·
2020-08-16 04:30
LINUX网络编程
Linux网络编程
--非阻塞编程
非阻塞方式程序设计介绍非阻塞方式的操作与阻塞方式的操作最大的不同点是函数的调用立刻返回,不管数据是否成功读取或者成功写入。使用fcntl()将套接字文件描述符按照如下的代码进行设置后,可以进行非阻塞的编程:fcntl(s,F_SETFL,O_NONBLOCK);其中的s是套接字文件描述符,使用F_SETFL命令将套接字s设置为非阻塞方式后,再进行读写操作就可以马上返回了。非阻塞程序设计的例子函数a
奔跑吧,行者
·
2020-08-16 01:03
Linux网络编程
《9.
linux网络编程
实践》
转自https://edu.csdn.net/lecturer/505朱老师物联网大讲堂《9.
linux网络编程
实践》第一部分、章节目录3.9.1.
linux网络编程
框架3.9.2.TCP协议的学习13.9.3
Gti-杠猪
·
2020-08-16 00:14
Linux编程
Linux网络编程
——I/O复用之select详解
一、I/O复用概述I/O复用概念:解决进程或线程阻塞到某个I/O系统调用而出现的技术,使进程不阻塞于某个特定的I/O系统调I/O复用使用的场合:1.当客户处理多个描述符(通常是交互式输入、网络套接字)时,必须使用I/O复用。2.tcp服务器既要处理监听套接字,又要处理已连接套接字,一般要使用I/O复用。3.如果一个服务器既要处理tcp又要处理udp,一般要使用I/O复用。4.如果一个服务器要处理多
lianghe_work
·
2020-08-15 23:15
Linux_高级网络编程
《
Linux网络编程
》综合案例web服务器shttpd
由于之前没认真学习过http协议及服务端的相关实现,近日有空看到同事有本《
Linux网络编程
(第2版)》,遂拾来翻阅,见其中包含一个web服务器的综合案例,于是想认真对照着学习下http的相关开发实现。
kapuchang
·
2020-08-15 23:36
http
Linux网络编程
-基础与实例
(1)socket套接字是一个编程接口是一种特殊的文件描述符(起源于Unix,“everythinginUnixisafile”,都可以用“打开open–>读写write/read–>关闭close”模式来操作)是应用层与TCP/IP协议族通信的中间软件抽象层在设计模式中,Socket其实就是一个门面模式(系统对外界提供单一的接口,外部不需要了解内部的实现)并不仅限于TCP/IP协议面向连接(Tr
shuaixio
·
2020-08-15 22:02
网络编程
Linux网络编程
实现非阻塞I/O的三种方法
套接字的默认行为为:“一直到阻塞到请求动作完成为止”。比如recv函数或者accept函数在收到数据之前会默认一直处于阻塞,含有阻塞函数的进程会在阻塞期间被操作系统挂起。有三种方法实现非阻塞套接字、异步I/O和超时。非阻塞套接字实现非阻塞套接字的方法就是更改套接字的行为,使得所有的调用都是非阻塞的。用fcntl函数就能更改套接字行为intfcntl(intsocket,intcommand,...
SprintfWater
·
2020-08-15 22:20
linux网络编程
16.
Linux网络编程
一、TCP/IP理论基础(1)协议栈Linux的优点之一就是在于它丰富而稳定的网络协议栈,其范围是从协议无关层(如通用的socket层接口和设备层)到各种网络协议的实现(2)协议介绍对于网络理论介绍一般采用OSI模型,但是Linux中网络栈的介绍一般分为四层的Internet模型(3)网络模型(4)TCP/IP协议TCP/IP实际上一个协同工作的通信家族,为网络数据通信提供通路。为讨论方便可TCP
Ayiln
·
2020-08-15 21:00
【
Linux网络编程
】高并发服务器编程 -- Reactor模式与Proactor模式
【
Linux网络编程
】高并发服务器编程--Reactor模式与Proactor模式【0】传统阻塞I/O服务模型特点1.采用阻塞式I/O模型获取输入数据;2.每个连接都需要独立的线程完成数据输入,业务处理
奋斗企鹅copper
·
2020-08-15 21:10
网络编程
linux网络编程
惊群现象模拟
对于linux服务器的惊群现象早有耳闻,只是不知道他的具体场景,如今在学
linux网络编程
多进程模型下,正好遇到这个问题。
Shonm
·
2020-08-14 22:20
linux网络编程
网络编程
mudu库学习篇-mutex类封装学习
muduo库是高并发的
linux网络编程
库,那么就一定有mutex对mutex类的封装,在多线程的编程中,线程间经常会操作一些全局变量,因此我们就需要一些同步的机制,我的上一篇博客condtion算是一种
Coldestmonth
·
2020-08-14 17:44
C++知识点
muduo库
Linux网络编程
经典书籍推荐
首先要说讲述TCP/IP的书很多,其中有3泰书很全。分别是《TCP/IP详解》三卷本,《用TCP/IP进行网际互连》三卷本,《TCP/IP指南》+《IPv6》四卷本其中TCP/IP详解的作者还写了另外2本经典著作,《Unix环境高级编程》,《Unix网络编程》作者W.RichardStevens个人网站http://www.kohala.com/大师作品部部经典,可惜1999年去另一个世界维护Un
我是榜样
·
2020-08-14 14:25
linux
linux
编程
网络
unix
linux内核
linux网络编程
,进程间的通信之互斥锁与条件变量
互斥锁mutex1#include2#include3#include4/*互斥锁函数5*pthread_mutex_t*6*pthread_mutex_init()*7*pthread_mutex_destory()*8*pthread_mutex_lock()*//阻塞,直到解锁为止才停止阻塞9*pthread_mutex_unlock()*//解锁10*pthread_mutex_try_l
csdn_wanziooo
·
2020-08-14 13:43
Linux网络编程
基础_3_数据链路层(下)
数据链路层(下)五、介质访问控制1、信道划分介质访问控制频分多路复用FDM、时分多路复用TDM、波分多路复用WDM、码分多路复用CDM。多路复用技术就是把许多个单个信号在一个信道上同时传输的技术。频分多路复用FDM和时分多路复用TDM是两种最常用的多路复用技术。但是,时分复用可能会造成线路资源的浪费。2、随机访问介质访问控制1)ALOHA协议【现在很少使用】纯ALOHA基本思想:是用户有帧即可发送
weixin_34217773
·
2020-08-14 05:24
Linux网络编程
基础_3_数据链路层(上)
数据链路层(上)一、数据链路层的功能链路层的主要功能包括链路管理、帧同步、流量控制、差错控制、数据和控制信息分开、透明传输和寻址。数据链路层传输的是数据帧。MTU:数据链路层的数据帧长;SOH:帧开始字符;EOT:帧结尾字符;二、如何解决传输过程中的“透明传输”?1、零比特填充基本原理:将需要传输的数据块看作比特序列,在数据块前和后各加入一个特殊的比特序列(前文位模式和后文位模式,01111110
George_Fal
·
2020-08-14 05:12
Linux网络编程
--字节序
1.谈到字节序,那么会有朋友问什么是字节序很简单:【例如一个16位的整数,由2个字节组成,8位为一字节,有的系统会将高字节放在内存低的地址上,有的则将低字节放在内存高的地址上,所以存在字节序的问题。】2.那么什么是高字节、低字节?也相当简单:【一个16进制整数有两个字节组成,例如:0xA9。高字节就是指16进制数的前8位(权重高的8位),如上例中的A。低字节就是指16进制数的后8位(权重低的8位)
奔跑吧,行者
·
2020-08-14 05:36
Linux网络编程
udp传输大文件的一个例子
FileName:server.c>Author:ljh************************************************************************//*
Linux
蜗牛哦
·
2020-08-14 05:17
linux应用
Linux网络编程
(高并发服务器)
文章目录三次握手与四次挥手TCP状态转换滑动窗口mss和MTU网络编程函数封装粘包高并发服务器思路分析多进程服务器代码实现多线程版本的服务器开发流程思路分析多线程版本的服务器开发代码实现三次握手与四次挥手三次握手:建立连接需要三次握手过程四次挥手:断开连接需要四次挥手过程.TCP状态转换滑动窗口主要作用:滑动窗口主要是进行流量控制的.如果发送端发送的速度较快,接收端接收到数据后处理的速度较慢,而接
Mr.魏(魏先生)
·
2020-08-13 22:04
Linux
Linux网络编程
(网络编程基础)
文章目录协议OSI7层模型TCP四层模型数据通信过程网络应用程序常见的两种设计模式字节序问题服务端开发流程客户端的开发流程协议协议是双方共同指定的一组规则,在网络通信中表示通信双方传递数据和解释数据的一组规则.IP协议:在网络层TCP协议:面向连接的,安全的,可靠的数据流传输协议.UDP协议:面向无连接的,不安全的,不可靠的数据报传输.OSI7层模型物数网传会表应应用层:主要就是应用程序,ftps
Mr.魏(魏先生)
·
2020-08-13 22:03
Linux
Linux 网络编程 全解(七)--------epoll的ET和LT触发模式以及epoll反应堆
Linux网络编程
全解(一)--------网络基础协议
Linux网络编程
全解(二)--------套接字socket
Linux网络编程
全解(三)--------TCP三次握手、数据传输、四次挥手、滑动窗口
KiranWang
·
2020-08-13 21:17
Linux网络编程
Linux网络编程
--epoll模型之LT触发模式和ET触发模式
epoll对文件描述符有两种操作模式--LT(leveltrigger电平模式)和ET(edgetrigger边缘模式)简单来讲,LT是epoll的默认操作模式,当epoll_wait函数检测到有事件发生并将通知应用程序,而应用程序不一定必须立即进行处理,这样epoll_wait函数再次检测到此事件的时候还会通知应用程序,直到事件被处理。而ET模式,只要epoll_wait函数检测到事件发生,通知
奔跑吧,行者
·
2020-08-13 19:48
Linux网络编程
(三)—— TCP三次握手、四次挥手详解(图)
三次握手建立连接TCP发送数据之前要先建立连接(三次握手)所谓三次握手(Three-wayHandshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号并交换TCP窗口大小信息.在socket编程中,客户端执行connect()时。将触发三次握手。两台主机,服务器(server)和客户机(clie
Thanos Yan
·
2020-08-13 18:36
网络通信
linux网络编程
Linux网络编程
之多进程模型编程与一个使用进程池实现的CGI服务器
NO.1一:什么是多进程模型多进程模型是服务器在接收到大量高并发客户端访问时,通过创建多个子进程来与客户端进行通信。单进程阻塞在read()系统调用的时候,会导致服务器无法响应到其他的连接请求。这时可以通过fork()函数创建出多个子进程来处理业务,而主进程继续循环accept()其他客户连接,子进程实施具体的通信细节。二:fork函数详解NAMEfork-createachildprocessS
FreeeLinux
·
2020-08-13 11:19
网络
服务器
并发
fork函数
子进程创建
linux网络编程
alin的学习之路(
Linux网络编程
:五)(epoll ET\LT模式、epoll反应堆模型)
alin的学习之路(
Linux网络编程
:五)(epollET\LT模式、epoll反应堆模型)1.epollET/LT模式ET:边沿触发LT(默认):水平触发(持续触发)1.ET模式边沿触发。
alin_server
·
2020-08-13 10:12
epoll
epoll反应堆
epoll
socket
linux
alin的学习之路(
Linux网络编程
:七)(UDP广播、UDP组播、本地套接字)
alin的学习之路(
Linux网络编程
:七)(UDP广播、UDP组播、本地套接字)1.UDP广播通过UDP广播可以将数据发送给同一网段下的所有指定端口号的进程。
alin_server
·
2020-08-13 10:12
本地套接字
广播
组播
alin的学习之路(
Linux网络编程
:六)(线程池、UDP的C/S模型)
alin的学习之路(
Linux网络编程
:六)(线程池、UDP的C\S模型)1.线程池解析1.原理图2.结构体typedefstruct{void*(*function)(void*);/*函数指针,回调函数
alin_server
·
2020-08-13 10:12
线程池
linux
udp
alin的学习之路(
Linux网络编程
:四)(多路IO转接:select、poll、epoll)
alin的学习之路(
Linux网络编程
:四)(多路IO转接:select、poll、epoll)1.select1.select优化思路当select转接的文件描述符跨度过大时,每次都遍历文件描述符表显然会降低效率
alin_server
·
2020-08-13 10:11
Linux
epoll
select
epoll
linux
alin的学习之路(
Linux网络编程
:一)(网络模型、帧格式、socket套接字、服务器端实现)
alin的学习之路(
Linux网络编程
:一)(网络模型、帧格式、socket套接字、服务器端实现)1.协议协议是一组规则,规定了如何发送数据。
alin_server
·
2020-08-13 10:11
Linux
socket
alin的学习之路(
Linux网络编程
:三)(高并发服务器-多线程、TCP通信时序状态、多路IO转接select概述)
alin的学习之路(
Linux网络编程
:三)(高并发服务器-多线程、TCP通信时序状态、多路IO转接select概述)0.一些小的注意事项1.SIGCHLDSIGCHLD只要子进程状态发生变化就会产生,
alin_server
·
2020-08-13 10:11
Linux
socket
多路IO转接select
alin的学习之路(
Linux网络编程
:二)(三次握手四次挥手、read函数返回值、错误函数封装、多进程高并发服务器)
alin的学习之路(
Linux网络编程
:二)(三次握手四次挥手、read函数返回值、错误函数封装、多进程高并发服务器)1.服务器获取客户端地址和端口号accept函数会返回客户端的sockaddr,通过使用
alin_server
·
2020-08-13 10:11
Linux
socket
alin的学习之路(
Linux网络编程
:九)(HTML,http协议)
alin的学习之路(
Linux网络编程
:九)(HTML,http协议)1.HTML简述1.基本html网页结构网页标题678网页身体1网页身体2网页身体32.常用标签标题共1~6级。数越小,字越大。
alin_server
·
2020-08-13 09:34
Linux
上一页
8
9
10
11
12
13
14
15
下一页
按字母分类:
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
其他