socket是网络协议栈的抽象 socket api在tcp中的体现 ? TCP三次握手后有个accept队列,进到这个队列才能从Listen变成accept,默认backlog 值是50。...code /* tcpechosvr.c */ #include #include #include #include socket.h...define SRVIP "127.0.0.1" #define SRVPORT 10005 #define MAX_NUM 1024 int main() { int serverSock = socket...(AF_INET,SOCK_STREAM,IPPROTO_TCP); if(serverSock < 0) { printf("socket creation failed...\n"); exit(-1); } printf("socket create successfully.
今天来学习一下vpp底层基础库--socket相关api及结构体,往期相关的文章请翻看文末链接。...结构体说明 socket.h文件就下面一个结构体clib_socket_t,保存socket一些基本属性。...api函数 主要说明一下初始化和accept函数。其他api相对简单一些。...:[86769] socksvr /run/vpp/api.sock 32 0 34 1...结构体及一些api接口,对于上层如何使用未深入介绍(如下面unix_cli_listen_read_ready中四个全局变量之间的关联关系),后续有机会需要深入介绍 static clib_error_t
网络软件商为 Windows 开发一套标准的、通用的 TCP/ IP 编程接口 ,并使之类似于 UNIX下的 sockets ,这就是 Windows sockets ;Windows socket 的实现一般都由两部分组成...它定义并记录了如何使用 API 与 Internet 协议族(IPs、通常我们指的是 TCP/ IP) 连接 ,尤其要指出的是所有的 Windows sockets 实现都支持流套接字和数据报套接字。...它们之间的关系如图 1 所示 : 2 套接字的两种主要形式 在 Windows 套接字中 ,它主要有两种形式 :数据报套接字 (Datagram socket) 和流式套接字(Stream socket...3. 1 在 VC 下开发套接字程序的基本步骤 在 VC + + 6. 0 中 ,我们可以用 Windows sockets API 来编写网络程序 ,其特点是十分灵活 ,可以充分利用众多的 Windows...//主函数开始 { //Windows Sockets API WSADATA data数据 //Windows Sockets Asynchronous WSA Windows异步套接字数据
在本篇文章中,先介绍一下Socket编程的一些API,然后利用这些API实现一个客户端-服务器模型的一个简单通信例程。该例子中,服务器接收到客户端的信息后,将信息重新发送给客户端。...socket()函数 socket()函数用于创建一个套接字。这就好像购买了一个电话。不过该电话还没有分配号码。...#include #include socket.h> int socket(int domain, int type, int protocol...关于具体细节,可以man socket进行查阅。...当一个套接字通过socket()被创建,它并没有绑定到具体的地址上,bind()来完成这个步骤。
UNIX 环境高级编程对Socket通信的描述是套接字网络IPC(进程间通信),可以用于计算机间通信也可用于计算机内通信,管道、消息队列、信号量以及共享内存等都是属于计算机内通信的情况。 ?...一、 套接字Api详细介绍 1. 套接字描述符 首先会先到的是文件描述符,对Linux一切皆文件的哲学又多懂了一点儿点儿。 套接字是通信端点的抽象。...#include socket.h> int socket (int domain, int type, int protocal); 返回值:成功返回文件(套接字)描述符,出错返回-1...调用socket与调用open类型,均可获得用于输入、输出的文件描述符。不用的时候记得close关闭。 2. 寻址 如何确定一个目标通信进程?...注意:linux的man命令可以查看api的详细说明,而且还有例子,也挺不错的。 4.
众所周知,Windows会自带一个自签证书,这个证书是不被认可的,以至于我们每次连接RDP时都会有这个提示 对于我这种强迫症,看着肯定不爽 为了解决我看着不爽的问题让他更安全,我觉定为他添加ssl证书...第一步,申请ssl 推荐这几个懒人平台:腾什么讯、51SSL、freeSSL 也推荐这几个:letsencrypt、certbot、acme.sh 申请是个人都会吧(?)
一、socket接口使用 1.1 socket抽象层 Linux内核net/socket.c定义了一套socket的操作api。图1展示了socket层所处与TCP/IP协议栈之上和应用层之下。...image.png 1.2 一些需要预先知道的内核操作api socket层大量使用了这些内核操作api,完成协议栈的调用入口。在深度探究socket层实现之前,先来了解下这些内核api。...so_xxx: 内核相关socket操作接口。socket object操作协议栈的api入口。 in_pcballoc()。...1.3 socket函数api 1.3.1 socket函数 功能:在内核创建一个socket对象,并返回引用的操作fd。...状态,分配空间,拷贝消息到内核 注意:发送函数有4个api:sendto,sendmsg,write,writev。
using System; using System.Collections.Generic; using System.Text; using Syst...
背景 笔者使用的轻量应用服务器安装的Windows系统(集成环境没有更新证书功能),SSL证书是acme.sh生成的多域名证书,有效期90天。...既然官方提供了上传证书的Api(UploadCertificate),服务器是php环境,就想用php撸个小工具,实现自动上传SSL证书到腾讯云。...接口请求域名 */ public function SetApi($api){ $this->endpoint = $api; $ex = explode...', $api); $this->service = $ex[0]; //print_r($ex); } /** * $api 服务名称..., $SecretKey); //公共参数 $api = 'ssl.tencentcloudapi.com'; $ver = '2019-12-05'; $pbk = $opt['
这篇文章先来讲讲如何利用Socket来实现Windows Mobile设备之间的IM(其实Windows Mobile设备与PC同步以后,可以通过Socket与PC实现通信,具体可以参考Fox的Blog...:Windows Mobile的简单IM程序(Socket via C# ))。 ...新建项目的时候,在Advanced Features选项中,选中Windows sockets,以添加对Socket的支持。如下图1所示: ?...图4: 设备测试截图 注:Server端和Client端均采用异步Socket方式通信。 最后,放上源代码,从这里下载:TCPTest.rar,希望对大家有用。 参考链接: 1....《利用WiFi在Windows Mobile上建立Ad-hoc网络》 2. 《Windows Mobile的简单IM程序(Socket via C# )》 3. 《EVC高级编程及其应用开发》
SSL 一直没有真正研究过SSL,不知道下面的理解是否正确。 SSL是Secure Sockets Layer的缩写,它用来保护服务器和客户端之前的通信。它是基于信任+加密的概念。...在介绍SSL的原理之前,首先介绍一下加密(Encryption)的概念。 在很多的应用/API里,最常见的一种加密的方式是对称加密(Symmetric Encryption)。...而对于SSL来说,它还可以使用第二种加密方式:非对称加密(Asymetric Encryption)。...SSL使用这两种加密方式。 当客户端和(Web)服务器使用SSL进行通信前会有一个SSL握手的操作,用户是不会察觉这个动作的,它发生在真正调用API之前。 ?...在ASP.NET Core中启用HTTPS HTTPS (也叫做 HTTP over TLS, HTTP over SSL, and HTTP Secure),它的传输协议使用TLS(SSL)加密。
关于窗口操作的一些API介绍。 1.
说了网络通信,大家肯定都不会陌生,比如各种分布式系统、大数据框架等等都要涉及到网络通信,由于大多数通信都是基于TCP协议来的,因此本文就以TCP为例,结合socket api来分析Linux下的网络通信流程...socket api 常用的网络通信socket api有socket、bind、listen、accept和connect等。...为了进行网络通信,进程需要首先调用socket函数获取一个socket fd,可以指定通信协议类型: // family指定协议族,type指定套接字类型,protocol指定某个协议类型常值,或者设为...int socket(int family, int type, int protocol); bind函数把一个本地协议地址赋予一个套接字,至于协议地址的含义则取决于协议本身,对于TCP,调用bind...socket创建一个套接字时,它被假设为一个主动套接字,也就是说,它是一个将调用connect发起连接的一个客户套接字。
文章目录 I Socket API 简介 II ServerSocket API 简介 III Socket 数据交互 IV Socket 客户端操作流程 V Socket 服务器端操作流程 VI...Socket 与 进程 I Socket API 简介 ---- 1....Socket 构造方法 : 调用 Socket() , 创建 Socket 套接字对象 ; 创建之后 , 设置都是默认值 , 可以调用各种设置方法设置 Socket 对象的参数 ; 3....连接服务器 : connect() , 连接服务器端 ; II ServerSocket API 简介 ---- 1. ServerSocket 是服务器端套接字类 ; 2....读取数据 : 先获取 Socket 输入流 , 调用 read() 相关方法 , 将数据读取到 Socket 输入流中 ; IV Socket 客户端操作流程 ---- 1.
#LoadModule ssl_module modules/mod_ssl.so (去掉前面的#号) #Include conf/extra/httpd-ssl.conf (去掉前面的#号) #LoadModule...#号) #LoadModule proxy_http_module modules/mod_proxy_http.so (去掉前面的#号) 去掉之后开始第二步,找到 extra目录,打开 httpd-ssl.conf...\Apache24\tjyunshiHTTPS\xxxxxxchain.crt" 将以上变量,添加文件,添加进之后注意,是否有其它一样的变量,如果有,就注释掉,注释(#) 这一步需要注意,httpd-ssl.conf
下载 OpenSSL 环境 Windows、Linux, 证书我是在Windows上生成的自签证书。...C:\Windows\System32\drivers\etc 192.168.56.101 codingce.com.cn B 机器 Nginx 版本:nginx-1.25.4 Nginx 配置...\\codingce.com.cn.key"; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!...; server_name codingce.com.cn; ssl_certificate /path/to/codingce.com.cn.crt; ssl_certificate_key.../path/to/codingce.com.cn.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!
当在windows上使用curl工具时 , 需要配置CA证书 如果您在 Windows 中使用 curl 命令行工具,curl 将在以下目录中按如下顺序搜索名为 curl-ca-bundle.crt 的...C:\Windows\System32 4. C:\Windows 5.
SOCKET server = socket(AF_INET, SOCK_DGRAM, 0);//make a socket if (server == INVALID_SOCKET) {...printf("create socket failed!...to address if (retVal == SOCKET_ERROR) { printf("bind failed!...SOCKET client = socket(AF_INET, SOCK_DGRAM, 0);//make a socket if (client == INVALID_SOCKET) {...printf("create socket failed!
1)头文件 windows下winsock.h/winsock2.h linux下sys/socket.h 错误处理:errno.h 2)初始化 windows下需要用WSAStartup...( ); linux下不需要 3)关闭socket windows下closesocket(...) ...linux下close(...) 4)socket类型 windows下SOCKET linux下int 5)获取错误码 windows下WSAGetLastError() linux下... windows下一般设置为0 linux下必须是后几个参数用到的socket中,值最大的数(整型)加1 (另一种说法是设置为MSG_NOSIGNAL) 8)毫秒级时间获取 windows下GetTickCount...10)Socket操作错误返回值 都为SOCKET_ERROR,他的值是-1 11)异常处理 windows下没有对send()的异常处理,最后一个参数无效,写0就可以了。
在《利用WiFi在Windows Mobile上建立Ad-hoc网络》一文中,讲述了利用WiFi在Windows Mobile上建立Ad-hoc网络的方法。...在《IM over Socket Between Windows Mobile Devices》一文中,讲述了建立点对点的WiFi无线链接后,Windows Mobile设备之间利用Socket来实现消息的实时发送与接收...这篇文章将介绍后续内容,即建立点对点的WiFi无线链接后,Windows Mobile设备之间利用Socket来实现文件传输。 1....新建项目的时候,在Advanced Features选项中,选中Windows sockets,以添加对Socket的支持(在《IM over Socket Between Windows Mobile...利用WiFi在Windows Mobile上建立Ad-hoc网络 2. IM over Socket Between Windows Mobile Devices 3.