linux tcp 创建,Linux下tcp服务器创建的步骤
创建一个socket,使用函数socket()
socket(套接字)实质上提供了进程通信的端点,进程通信之前,双方首先必须建立各自的一个端点,否则没有办法通信。通过socket将IP地址和端口绑定之后,客户端就可以和服务器通信了
#include
int socket(int domain , int type ,int protocol)
返回值:成功返回套接字文件描述符,失败返回-1
struct sockaddr_in (或者 struct sock_addr)用于记录网络地址
struct sockaddr_in
{
short int sin_family;/*协议族*/
unsigned short int sin_port;/*端口号*/
stunt in_addr sin_addr; /*协议特定地址*/
unsigned char sin_zoero[8]; /*填0*/
}
IP地址转换
int inet_aton(const char *cp,struct in_addr *inp)//将a.b.c.d形式的IP转换为32位的IP。存储在inp指针里
char *inet_ntoa(struct in_addr in)//将32位IP转换位a.b.c.d的格式
字节序转换
绑定IP地址和端口信息到socket,使用函数bind()
让用户发现用以连接的服务器的地址
返回值:成功返回0,失败返回-1
#include
int bind ( int sockfd , const struct sockaddr *addr , socklen_t len );
设置允许的最大连接数,使用函数listen()
服务器调用listen函数来宣告可以接受连接请求
#include
int listen(int sockfd , int backiog );
返回值:成功返回0,失败返回-1
参数backiog:用于表示服务器能接受的请求数量
等待来自客户端的连接请求,使用函数accept( )
#include
int accept( int sockfd ,struct sockaddr *restrict addr , socklen_t * restrict len );
收发数据,用函数recv()、send()/ sendto()或者 read()、write()
关闭网络连接,close
内容来源于网络如有侵权请私信删除
linux tcp 创建,Linux下tcp服务器创建的步骤相关推荐
- linux新建图片,Fedora 下的图像创建程序 | Linux 中国
原标题:Fedora 下的图像创建程序 | Linux 中国 Fedora 有很多程序可以帮助你的创造力.从数字绘图.矢量到像素艺术,每个人都可以在这个周末发挥创意. -- Ryan Lerch 致谢 ...
- Windows下SVN服务器的搭建步骤
1.下载svn服务端和客户端 服务端VISUALSVN SERVER:https://www.visualsvn.com/ 客户端TortoiseSVN:https://tortoisesvn.net ...
- linux tcp前景,linux – 为什么在Xen下TCP接受()性能如此糟糕?
在Xen下,我的服务器可以接受()新的传入TCP连接的速度非常糟糕.裸机硬件上的相同测试显示3-5倍的加速. >在Xen下怎么会这么糟糕? >您是否可以调整Xen以提高新TCP连接的性能? ...
- mc服务器word文件夹,我的世界服务器创建:MC个人服务器创建流程
:缺防盗等等乏的级高能功合:适友之间朋联机bkkuti务器服优点功:齐能全,插件样缺点多配置非常:复杂mi,encarft级升时的候能不步同新更适合:专服业务器第步.三硬配置件的世我服界器务建创首要具 ...
- Linux(ubuntu16.04)FTP服务器搭建详细步骤
学习linux时遇到了文件传输问题,发现ftp服务器是常用的一种,所以搜集整理了ftp服务器的搭建. 首先介绍一下FTP服务器: FTP 是File Transfer Protocol(文件传输协议) ...
- Linux下TCP网络编程-创建服务器与客户端
一.前言 互联网概念诞生于20世纪60年代末,从9几年中国接入互联网开始到现在,生活的每个角落都能看到网络的使用.现在物联网时代.共享经济的到来,生活中不仅仅电脑.手机可以接入网络,身边的各个设备也能 ...
- 1 linux下tcp并发服务器的几种设计的模式套路,Linux下几种并发服务器的实现模式(详解)...
1>单线程或者单进程 相当于短链接,当accept之后,就开始数据的接收和数据的发送,不接受新的连接,即一个server,一个client 不存在并发. 2>循环服务器和并发服务器 1.循 ...
- Linux下TCP最大连接数受限问题
一. 文件数限制修改 1.用户级别 查看Linux系统用户最大打开文件限制: # ulimit -n 1024 (1) vi /etc/security/limits.conf mysql soft ...
- linux下TCP通信简单实例
linux下TCP通信简单实例 基于TCP(面向连接)的socket编程,分为服务器端和客户端 服务器端的流程如下: (1)创建套接字(socket) (2)将套接字绑定到一个本地地址和端口上(bin ...
- 一台服务器最多能创建多少个 TCP 连接?
目录 1.TCP连接的创建 2.端口号的限制 3.文件描述符的限制 4.线程数量的限制 5.内存的限制 6.CPU的限制 7.总结 8.后记 原文链接:https://mp.weixin.qq.com ...
最新文章
- Vue父组件网络请求回数据后再给子组件传值demo示例
- 前端页面适配的rem换算
- 查看mysql是否内存中读取数据_MySQL中的内存临时表
- Jar 包依赖冲突排查思路和解决方法
- 云消防大数据_消防云大数据app
- 将视图转为image_OpenShift 4.3 之 直接将Web应用当成Serverless运行
- diffrences between ARP table and MAC address table
- smash:一个类unix内核
- 设计模式(6)——命令模式
- 机器人编程java面试题,7届国赛java试题 4: 机器人塔
- Python遗传算法初学者教程
- syslog工具_INAV:一款专用的日志审查导航工具
- Allegro 铜皮分割 详解
- 分析微信发送消息接口(基于网页版分析)
- 电脑编程和计算机编程有什么区别,机器人编程与电脑编程有何区别?官方专家为你详细解说!...
- 计算机网络谢希仁(1)
- Elasticsearch之中文分词器插件es-ik的自定义热更新词库
- 三、python爬虫学习--动态下载网站漫画
- jpg格式图片打不开怎么办
- 虚拟主机的服务器配置在哪,配置Apache服务器下的虚拟主机设置有什么要求?景安...
热门文章
- linux c之wait和waitpid函数的用法和总结
- linux之cut命令使用和总结
- batchsize和数据量设置比例_Keras - GPU ID 和显存占用设定步骤
- 删除含有关键词的文件_AweEraser——macOS Catalina最佳的文件粉碎机
- python数字从大到小排列_Python练习题 005:三个数字由大到小排序输出
- 据说很多女生都想知道男生是如何上厕所的?
- 盘点这些年被黑的最惨的语言
- 我背着女朋友,用 Python 偷偷抓取了她的行踪
- mysql utf8 bin设置_[mysql]修改collation为utf8_bin
- 面试常见问题_软件实施工程师面试中的常见问题都有哪些呢?