当前位置: 首页 > news >正文

socket简介

套接字(Socket)实质上就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,为应用层进程利网络协议交换数据提供了相应机制。套接字出于承上启下的作用,向上连接应用进程,向下则连接网络协议栈,不仅是应用程序通过网络协议进行通信的接口,也是应用程序与网络协议栈进行交互的接口。

一、套接字类型(socket类型)⭐⭐⭐

1.1 流式套接字(SOCK_STREAM) TCP

针对于TCP协议。
提供了一个面向连接、可靠的数据传输服务,数据无差错、无重复的发送且按发送顺序接收。内设置流量控制,避免数据流淹没慢的接收方。数据被看作是字节流,无长度限制

1.2 数据报套接字(SOCK_DGRAM) UDP

针对于UDP协议。
提供无连接服务。数据包以独立数据包的形式被发送,不提供无差错保证,数据可能丢失或重复,顺序发送,可能乱序接收。

1.3 原始套接字(SOCK_RAW)

可以对较低层次协议如IP、ICMP直接访问。

二、Socket的位置

image.png

三、端口号

3.1 概念

  • 为了区分一台主机接收到的数据包应该转交给哪个进程来进行处理,使用端口号来区分
  • TCP端口号与UDP端口号独立
  • 端口号一般由IANA (Internet Assigned Numbers Authority) 管理
  • 端口用两个字节来表示 2byte

3.2 划分

  1. 众所周知端口:1 ~ 1023(1 ~ 255之间为众所周知端口,256~1023端口通常由UNIX系统占用)
  2. 已登记端口:1024~49151
  3. 动态或私有端口:49152~65535

拓展:套接字表示方法

套接字的表示方法是点分十进制的IP地址后加上端口号,两者之间用冒号或逗号分隔开,即:
套接字(Socket):(IP地址:端口号)
例如:IP地址为192.168.112.20,端口号为23,则可得到套接字为(192.168.112.20:23)

http://www.lryc.cn/news/184542.html

相关文章:

  • 【AI视野·今日Robot 机器人论文速览 第四十九期】Fri, 6 Oct 2023
  • 七、互联网技术——SQL查询
  • 1.6 计算机网络的性能
  • 小程序中如何核销订单和优惠券
  • 211 毕业就入职 30 人的小公司是什么体验
  • aardio 读取 Excel文件,显示在 listview 中
  • Web:前端常用的几种Http请求GET和POST样例
  • clickonce 发布的winform 如何CA认证?
  • #力扣:13. 罗马数字转整数@FDDLC
  • React18入门(第一篇)——JSX、TSX语法详解
  • 【计算机基础知识】字符的编码表示
  • 【面试题精讲】Java字符型常量和字符串常量的区别?
  • 【Vue面试题六】为什么Vue中的 v-if 和 v-for 不建议一起用?
  • leetCode 674. 最长连续递增序列 动态规划 / 贪心策略
  • 数据中台实战(11)-数据中台的数据安全解决方案
  • 林沛满-TCP之在途字节数
  • HTTPS 加密工作过程
  • 校招秋招,性格和职业有关系吗?
  • 网络和系统操作命令
  • 刷穿力扣(1~30)
  • 栈和队列的基本操作
  • 变压器绕组断股往往导致直流电阻不平衡率超标
  • stack和queque
  • 信息学 学习/复习 抽签器(附源码)
  • 基于LADRC自抗扰控制的VSG三相逆变器预同步并网控制策略(Simulink仿真实现)
  • [0xGame 2023] week1
  • Matlab矩阵——矩阵行列互换
  • OpenMesh 网格面片随机赋色
  • SpringSecurity源码学习一:过滤器执行原理
  • 8.2 JUC - 4.Semaphore