TCP协议学习记录

news/2024/9/24 2:50:04/

TCP协议学习记录

简述

对TCP有诸多疑惑的地方:
1、TCP和socket的关系
2、TCP客户端和服务端如何区分
3、TCP连接的两端,端口号需要一致吗

什么是socket

一种编程抽象
编写程序时,利用socket可以使用TCP;假设现在已经将TCP协议的规范用代码编写好了,只需要去使用它,就可以通过socket去使用;

TCP和socket的关系

socket为应用程序提供了一种使用TCP和其他网络协议进行通信的方式

TCP的客户端和服务端是基于什么来决定

tcp的连接需要由一方来发起,发起方需要知道对方的IP地址和端口号。
同时,对端也需要能够接受,这是一个等待的过程(监听)。
发起方为客户端,等待方为服务端。

假如有两个设备,建立了TCP连接,可以两个同时都是客户端和服务端吗

TCP协议的通信需要预先建立一个通信连接。
三次握手建立连接,四次挥手断开连接。
三次握手:
1、客户端→服务端:SYN
2、服务端→客户端:SYN/ACK
3、客户端→服务端:ACK 然后就建立好连接。
四次挥手:
1、A端→B端:FIN
2、B端→A端:ACK
3、B端→A端:FIN/ACK
4、A端→B端:ACK
断开连接的发起方既可以是客户端,也可以是服务端。

连接的建立,双方都确认了对方的端口号和IP地址。端口号是设备用来区分不同通信进程的。
一个设备的通信进程建立时,只能是客户端或者服务端。
于是
只需要建立两个通信进程,一个是以客户端身份建立,一个是以服务端身份建立即可。
当然,客户端和服务端的概念其实只在建立时有,建立好以后双方并无差别。所以我这是什么傻问题。

TCP连接的两端,端口号需要一致吗

不需要
端口号是设备用来区分本地通信进程的,也就是收到一个TCP报文,通过查看它的目的端口号,来得知它属于哪一个通信进程。

但还是有疑惑的地方,就是关于程序进程、通信进程、socket、TCP,这些所有之间的联系和区分,这应该要等我深入学习以后才能理解


http://www.ppmy.cn/news/1429140.html

相关文章

密码学 | 数字证书:应用

🥑原文:数字签名和数字证书的原理解读 - 知乎 🥑前文:密码学 | 数字签名 数字证书 - CSDN 🥑提示:把客户端想成 Alice,服务器端想成 Bob 即可。客户端实际上指的是客户端浏览器。 下面&#…

Navicat Premium 16最新版激活 mac/win

Navicat Premium 16 for Mac是一款专业的多连接数据库管理工具。它支持连接多种类型的数据库,包括MySQL、MongoDB、Oracle、SQLite、SQL Server、PostgreSQL等,可以同时连接多种数据库,帮助用户轻松地管理和迁移数据。 Navicat Premium 16 fo…

【Linux】学习记录_14_线程

14 线程 14.1 线程和进程 进程是资源管理的最小单位,每个进程都有数据段、代码段和堆栈段,进程切换时都有复杂的上下文切换等动作。进程切换上下文时, 需要重新映射虚拟地址空间、进出OS内核、寄存器切换,还会干扰处理器的缓存机…

ZooKeeper监听器原理

ZooKeeper监听器原理 ZooKeeper 监听器(Watcher)是 ZooKeeper 提供的一种机制,用于实现分布式系统中的事件通知。 1.流程 注册监听器: 客户端在与 ZooKeeper 服务器建立连接后,可以通过某些操作(例如获…

lua整合redis

文章目录 lua基础只适合lua连接操作redis1.下载lua依赖2.导包,连接3.常用的命令1.set,get,push命令 2.自增管道命令命令集合4.使用redis操作lua1.实现秒杀功能synchronized关键字 分布式锁 lua 基础只适合 1.编译 -- 编译 luac a.lua -- 运行 lua a.lua2.命名规范 -- 多行注…

数据结构--双向链表

在讲双向链表之前,我们先了解一下链表的分类: 链表的结构⾮常多样,主要分为带头与不带头、单向与双向、循环与不循环。三个种类可以任意搭配,所以总共可以形成八种链表,但是最常用的是单向不带头不循环链表和双向带头循…

设计模式- 代理模式(Proxy Pattern)结构|原理|优缺点|场景|示例

目录 设计模式(分类) 设计模式(六大原则) 创建型 工厂方法 抽象工厂模式 单例模式 建造者模式 原型模式 结构型 适配器模式 装饰器模式 代理模式 代理模式(Prox…

常用渗透测试checklist

该渗透测试checklist包含以下几个模块: 测试大类、测试项、威胁等级、漏洞描述、修复方案 一、认证与授权类 1.密码明文传输 威胁等级:低危 漏洞描述:密码明文传输一般存在于web网站登录页面,用户名或者密码采用了明文传输&am…