首页 > 其他分享 >1分钟了解Socket

1分钟了解Socket

时间:2024-04-01 09:59:04浏览次数:24  
标签:Socket 门牌号 端口 程序 应用程序 分钟 了解 接字

先来看一下百度百科对于Socket的介绍:套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用程序进行通信。网络套接字是IP地址与端口的组合。

我们将一个小区比作一台计算机,一台计算机里面跑了很多程序,怎么区分程序呢,用的是端口,就好像小区用门牌号区分每一户人家一样。手机送到小明家了,怎么进去呢?从大门进啊,怎么找到大门呢?门牌号呀。不就相当于从互联网来的数据找到接收端计算机后再根据端口判断应该给哪一个程序一样吗。小明家的入口就可以用小区地址+门牌号进行唯一表示,那么同样的道理,程序也可以用IP+端口号进行唯一标识,那么这个程序的入口就被称作Socket。

现在再来说说什么是Socket编程,我们将TCP协议简化一下,就只有三个核心功能:建立连接、发送数据以及接收数据。所以可以把Socket编程理解为对TCP协议的具体实现。

标签:Socket,门牌号,端口,程序,应用程序,分钟,了解,接字
From: https://blog.csdn.net/qq_42217104/article/details/137221683

相关文章

  • socket 接收数据时粘包处理
    socket在接收数据时,经常会因为网络延迟、缓存区数据处理不及时等原因造成收到的数据是多个包黏在一起的情况。如下图所示 图中红色框部分是通讯的心跳包图中黄色框部分和未框选部分是两包 数据包所以可见此时缓存区里面同时存在了一个心跳包,两个数据包 如何分包(此处仅......
  • 使用React 18和WebSocket构建实时通信功能
    1.引言WebSocket是一种在Web应用中实现双向通信的协议。它允许服务器主动向客户端推送数据,而不需要客户端发起请求。在现代的实时应用中,WebSocket经常用于实时数据传输、聊天功能、实时通知和多人协作等场景。在本篇博客中,我们将探索如何在React18应用中使用WebSocket来......
  • 【蓝桥杯】小明要做一个跑步训练。初始时,小明充满体力,体力值计为10000。如果小明跑步,
    【问题描述】小明要做一个跑步训练。初始时,小明充满体力,体力值计为10000。如果小明跑步,每分钟损耗600的体力。如果小明休息,每分钟增加300的体力。体力的损耗和增加都是均匀变化的。小明打算跑一分钟、休息一分钟、再跑一分钟、再休息一分钟……如此循环。如果某个时刻......
  • 【c++】类和对象(六)深入了解隐式类型转换
    ......
  • 你真的了解回调函数吗?(文章最后放置源码)
    一、什么是回调函数简单来说就是通过函数指针调用的函数。复杂一些呢就是说将函数的指针(地址)作为参数传递给另外一个函数使用,当这个指针被用来调用其指向的函数的时候被调用的函数就是回调函数。二、回调函数怎么使用1、在学习回调函数之前我们是如何进行运算的我们来看下......
  • 简单了解组策略
    实验介绍:组策略在部分意义上是控制用户可以或不能在计算机上做什么,例如:施行密码复杂性策略避免用户选择过于简单的密码。一:基于本地的组策略在dns1上win+r打开运行对话框,输入命令gpedit.msc这样就能打开本地组策略编辑器这里可以看到计算机设置和用户设置这里的配置只对本......
  • 8分钟搞懂Java中的各种锁
    转载请注明出处❤️作者:测试蔡坨坨原文链接:caituotuo.top/f9fc66cb.html前言你好,我是测试蔡坨坨。在前几篇Redis相关文章中都说到了锁,同时我们在参加设计评审或者codeReview时也会接触到关于加锁的问题。因此,作为测试人员,还是很有必要搞懂相关的锁机制。你是否背了很多关于锁......
  • 通过三个代码实例,教你快速了解js(上)
    实例1、index.html代码<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"c......
  • MogDB学习笔记之 -- 了解pagewriter线程
    MogDB学习笔记之--了解pagewriter线程本文出处:https://www.modb.pro/db/183172在前面的MogDB学习系列中,我们了解了核心的bgwriter进程,今天继续来学习另外一个主要的线程,即pagewriter;首先来看下数据库相关的参数设置:postgres=#selectname,setting,category,context......
  • windows下socket客户端编程示例
    #include<iostream>#include<winsock2.h>#include<ws2tcpip.h>#include<windows.h>#pragmacomment(lib,"Ws2_32.lib")intsocket_client_demo(char*addr,intport){ charrecvbuf[1024]={0}; intretVal=-1;#......