首页
学习
活动
专区
工具
TVP
发布
您找到你想要的搜索结果了吗?
是的
没有找到

linuxsocket编程

Socket soket接口是TCP/IP网络的API。网络的socket数据传输是一种特别的I/O,socket也是一种文档描述符。...常用的socket类型有:流式socket(SOCK_STREAM)、数据报socket(SOCK_DGRAM)....其中流式socket是采用面向连接的TCP服务,而数据报socket则是无连接的UDP服务 Socket建立     调用: int socket(int domain, int type, int...prococol)来创建socket     domain:指明所使用的协议族,常用PF_INET, 表示互联网协议族(TCP/IP) 说明: 在绑定本地地址或连接远程地址时需要初始化sockaddr_in...收到连接请求时,socket执行体将建立一个新的socket,执行体将这个新socket和请求连接进程的地址联系起来,收到服务请求的初始socket仍能够继续在以前的 socket上监听,同时能够在新的

3.9K70

Linux Socket 收发Json

如果对你有帮助,麻烦点个在看或点个赞,感谢~ 不管是Qt开发还是linux 嵌入式应用开发,一个人的核心竞争力还是不断思考,也就是不断琢磨。...下面的程序主要是Linux C Socket 读取JSON文件并传输,然后再写入文件,其中使用了cJSON库,关于cJSON库不过多介绍,主要介绍整体的思路。 1....Server 端 使用的是socket 阻塞式,没有使用select、poll、epoll等 接收端按照JSON格式解析数据,并提取感兴趣Key所对应的Value 程序功能挺快就可以做好,做完之后进行拆解...,将socket通信独立出来,JSON解析、写文件、响应客户端JSON数据等分别写成函数。...小结 编译JSON时需要链接linux的数学库 自己琢磨如何拆解函数功能 应用程序也主要是调用别人的api,那么你的核心竞争力是什么呢 ? 如需程序工程可在公众号后台留言。

4.6K20

Linux系统下socket编程socket接口介绍(二)

前言 在上一篇文章里面我们介绍了TCP的三次握手和四次挥手过程的介绍以及网络编程里面的一些api接口函数的介绍——Linux系统下socket编程之socket接口介绍(一)。...函数介绍 - 发送和接收 - (1)send和write: 首先说明的一点,之前介绍的socket这个函数,非常类似我们之前介绍的open函数,他们都会返回一下文件描述符;所以这里的send函数和write...函数作用类似,我们用man手册来查看它的具体形式和用法: #include #include ssize_t send(int...(这个转换完后不能用于网络传输,还需要调用htons或htonl函数才能将主机字节顺序转化为网络字节顺序,这两个函数先不讲,实战遇到的话,再进行解析),具体可以看下面Linux的源文: inet_aton...(2)struct sockaddr,这个结构体是linux的网络编程接口中用来表示IP地址的 标准结构体,bind、connect等函数中都需要这个结构体,这个结构体是兼容IPV4和IPV6的。

3.3K20

linux udp编程_linuxsocket编程

在前面的文件中,我们介绍了linux网络编程中与IP相关的知识和常用的函数总结,本文针对具体的UDP通信,来详细的介绍UDP通信的使用,包括UDP通信中的点对点通信,多播,广播等。...当然,在我们服务端创建socket后,主动往外发送一个数据,这样即使我们不进行绑定,我们依然可以收到数据,这只是系统通过我们的发送,自动的绑定了一个端口,这个并不是我们想要的,实际的使用中,也并不推荐这种方式...socket后,配置一下套接字,允许进行发送广播消息,上代码 int set_broadcast = 1; setsockopt(socket, SOL_SOCKET, SO_BROADCAST, &set_broadcast...(int)); if (ret < 0) { perror("socket set SO_REUSEADDR failed"); } 2、服务端程序,在创建socket后,有一个bind的操作...socket来实现。

10.8K10

LinuxSOCKET编程详解

LinuxSOCKET编程详解 1. 网络中进程之间如何通信 进 程通信的概念最初来源于单机系统。...Socket是什么 1、 socket套接字: socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –>...应用程序创建套接字后在该套接字可以使用之前,必须调用其他的过程来填充这些字段。 3、文件描述符和文件指针的区别: 文件描述符:在linux系统中打开文件就会获得文件描述符,它是个很小的正整数。...创建socket的时候,也可以指定不同的参数创建不同的socket描述符,socket函数的三个参数分别为: protofamily:即协议域,又称为协议族(family)。...socket()函数创建了,唯一标识一个socket

7.8K10

Linux C Socket Api详解

套接字描述符 首先会先到的是文件描述符,对Linux一切皆文件的哲学又多懂了一点儿点儿。 套接字是通信端点的抽象。与应用程序使用文件描述符一样,访问套接字需要使用套接字描述符。...Linux系统是小端字节序。 2.2 地址格式 地址确定了特定通信域中的套接字端点,地址格式与特定的通信域相关。...Linux中,sockaddr_in定义如下: struct sockaddr_in { sa_family_t sin_family; in_port_t sin_port; struct...注意:linux的man命令可以查看api的详细说明,而且还有例子,也挺不错的。 4....Linux Socket Server 与 Client 例子 个人觉得这只是套接字的入门,如果一个服务器要连接多个客户端呢?以后有机会和大家一起分享下select的套接字用法。

5.4K10

网络编程 - Linux Socket编程

Linux Socket编程 ---- 目录 前言 Socket的功能 Socket基础 Socket类型 基本结构 基本转换函数 基本Socket使用 TCP Socket实例 UDP Socket实例...本篇不涉及太底层的网络原理,仅说明socket的基本使用方法。主要参考《Linux网络编程》。本篇源码获取方式见文底小字。...基本Socket使用   Linux同时支持面向连接和不连接类型的套接字。在面向连接的通讯中服务器和客户机在交换数据之前先要建立一个连接;在不连接通讯中数据被作为信息的一部分被交换。  ...socket主要使用到如下函数: socket()函数 —— 创建套接字。 bind()函数 —— 绑定socket地址信息。...dstAddr.sin_addr.s_addr = inet_addr(ipAddr.c_str()); dstAddr.sin_port = htons(atoi(port.c_str())); // Linux

9.5K50

LinuxSOCKET编程详解

Socket是什么 1、 socket套接字: socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –>...应用程序创建套接字后在该套接字可以使用之前,必须调用其他的过程来填充这些字段。 3、文件描述符和文件指针的区别: 文件描述符:在linux系统中打开文件就会获得文件描述符,它是个很小的正整数。...具体如何实现,可以看看linux的内核 4.1、socket()函数 int socket(int protofamily, int type, int protocol);//返回sockfd...创建socket的时候,也可以指定不同的参数创建不同的socket描述符,socket函数的三个参数分别为: protofamily:即协议域,又称为协议族(family)。...socket()函数创建了,唯一标识一个socket

2.2K10

提高 Linuxsocket 性能

本文内容包括对于 Sockets API 的使用、两个可以提高性能的 socket 选项以及 GNU/Linux 优化。 为了能够开发性能卓越的应用程序,请遵循以下技巧: 最小化报文传输的延时。...动态优化 GNU/Linux TCP/IP 栈。 技巧 1....提示:Linux 内核还包括了自动对这些 socket 缓冲区进行优化的能力(请参阅下面 表 1 中的 tcp_rmem 和 tcp_wmem),不过这些选项会对整个栈造成影响。...解决方案 GNU/Linux 提供了很多可调节的内核参数,您可以使用这些参数为您自己的用途对操作系统进行动态配置。下面我们来了解一下影响 socket 性能的一些更重要的选项。...两部分的系列文章 “Linux Socket 编程”(developerWorks,2003 年 10 月和 2004 年 1 月)可以帮助您编写 socket 应用程序。

3.9K30

Linux系统下socket编程之socket接口介绍(一)

: 在讲解这个之前,你得必须要明白在Linux系统下,一切皆是文件,(举个简单的例子,一般我们在Windows系统下,你是可以清楚的看到硬盘盘符,并标有大小的,可以直接用鼠标拖拉文件到里面去;而在Linux...说明: int domain(这里domain的中文意思是领域,域名):它是创建套接字所使用的协议栈,通常为AF_INET(也就是IPv4网络协议),下面试各种协议栈的汇总: DESCRIPTION...Since Linux 2.6.27, the type argument serves a second purpose: in addition to specifying a socket type...下面我们来看一下在Linux系统下它的原型: BIND(2) Linux Programmer's Manual...四、总结: socket编程中接收连接请求的套接字创建过程如下: 第一步:调用socket函数来创建套接字。 第二步:调用bind函数分配IP地址和端口号。

2.8K10

【Java 网络编程】客户端 Socket 创建

文章目录 I TCP 无代理或无参构造函数 II 创建 Socket 时指定代理 III 创建 Socket 时直接指定服务器地址和端口号 IV 创建 Socket 时直接指定服务器地址和端口号...并绑定本地IP地址和端口号 V 创建无参 Socket 绑定地址 I TCP 无代理或无参构造函数 ---- Socket socket = new Socket(Proxy.NO_PROXY); 创建...II 创建 Socket 时指定代理 ---- 1....自动连接服务器 : 该 Socket 对象创建成功后 , 会自动连接 , 如果连接失败 , 会抛出异常 , 该 Socket 创建也会失败 ; Socket socket = new Socket("192.168.1.100...连接使用的都是默认参数 ; V 创建无参 Socket 绑定地址 ---- 创建 Socket 对象时 , 推荐使用无参构造函数创建对象 , 并进行各种参数设置 , 在 Socket 创建之后 ,

1.5K30
领券