【Linux】初识套接字
2021/11/27 7:10:19
本文主要是介绍【Linux】初识套接字,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 前言
- (一)套接字
- (1)认识套接字
- (2)套接字的属性
- 1. 套接字的域
- 2. 套接字类型
- 3. 套接字协议
前言
套接字接口 : 类似于管道的用法
套接字用途:
- 同一台计算机的进程通信
- 支持分布在网络中的客户端/服务器之间通信
(一)套接字
(1)认识套接字
- 一种通信机制
- 可以实现本机/跨网络通信
- 套接字的创建和使用不同于管道
- 套接字支持多个客户端连接同一个服务器
(2)套接字的属性
1. 套接字的域
域指定套接字的使用的网络介质常用的是AF_INET,指的就是Internet(网际协议(IP地址)来确定网络中的计算机)
2. 套接字类型
流套接字(stream)
- 有序、可靠的、双向字节流连接
- 确保不丢失、不重复、不乱序
- 大消息会经过分片、传输、再重组
- 流套接字的行为是可以预见
- 流套接字由
SOCK_STREAM
指定,它们是在AF_INET域通过TCP/IP(传输控制协议)连接实现的
数据报套接字(datagram)
- 无连接的,无序不可靠的服务
- 数据包的长度会有限制,作为一个单独的网络消息被传输,有可能丢失、重复、乱序
- 数据报套接字由
SOCK_DGRAM
指定,是在AF_INET域中通过UDP/IP(用户数据报协议)连接实现的
- 资源开销比较小,无需维持网络连接,速度快
3. 套接字协议
- protocol(套接字协议)
底层的套接字协议不止一种,也可以选择特定的协议,下面主要学习UNIX网络套接字和文件系统套接字
这篇关于【Linux】初识套接字的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南