网络工程师学习笔记——网络互连与互联网(三)

news2024/11/16 3:24:28
TCP三次握手

建立TCP连接是通过三次握手实现的,采用三报文握手主要是为了防止已失效的连接请求报文突然又传送到了,因而产生错误

主动发起TCP连接建立的称为客户端

被动等待的为TCP服务器,二者之间需要交换三个TCP报文段

  • 首先是客户端主动发起TCP连接,发送一个TCP报文段,其中的SYN被置为1,一个seq=x序列号,此时客户端进入SYN_SEND状态

  • 然后服务端收到tcp报文,如果同意建立连接,则回复一个tcp报文,其中SYN和ACK标志位都为1,序列号seq=y,确认字段ack=x+1,这是对tcp客户进程所选择的序列号seq的确认,此时服务端进入SYN_RECV

  • 客户端收到服务端tcp的确认报文后,还要向服务端发送一个普通的tcp,用于确认报文段并已进入建立状态,报文中的ACK为1序列号seq=x+1确认号ack=y+1,服务端收到报文后双方都进入 ESTABLISHED状态

注意:

<1>第一个报文不携带数据,因为规定SYN为1的报文不可以携带数据,但是要消耗一个序列号

<2>最后一个报文可以携带数据,不携带数据不消耗序列号,下一个序列号任然为x+1

被动建立的一方是LISTEN状态

TCP四次挥手

在断开连接前,双方都处于ESTABLISHED,双方都可以主动的断开连接

由于TCP连接是全双工的,因此每个方向都需要单独的断开

  • 客户端打算断开连接,想服务端发送一个报文段,其中FIN为1,且发送一个序列号seq=u,之后客户端进入FIN_WAIT_1状态,等待服务端确认

  • 服务端收到断开连接报文后,想客户端发送一个应答报文ACK为1,确认号ack=u+1,序列号seq=y,然后服务端进入CLOSE_WAIT状态,进入等待关闭状态,处于半关闭状态(可以接数据或者发送数据,表明还有一种可以再正常工作)

  • 服务器也打算断开连接,会向客户端发送断开连接报文,其中FIN为1,ACK为1,序列号seq=x,确认号ack=u+1,此时服务器进入LAST_ACK 状态

  • 客户端收到来自服务端的断开连接报文后,向服务端发送ACK应答报文段以及断开连接报文段的确认号ack=x+1,之后客户端进入TIME_WAIT 状态,服务器收到ACK应答报文后,服务器进入CLOSE状态,此时客户端还处于TIME_WAIT状态,此时的tcp连接还未释放,等待2ms后,客户端才进入CLOSE状态

二者之间的存在,保证了数据的可靠传输

拥塞控制和流量控制

拥塞控制(在AB节点之间的所有网络节点之间进行控制)

TCP滑动窗口机制

win=3代表某一方可以发送的数据

窗口大小决定了在收到确认前可以发送的数据量

流量控制(在A、B两个节点之间进行控制)

流量控制:是为了防止发送速度过快,接收方处理不过来,造成丢包现象,导致网络资源浪费

UDP(用户数据报协议)

特点:

  • 不可靠传输

  • 面向无连接

  • 尽力而为的传输

应用:DNS,视频应用

相比于TCP,UDP的报文开销减少很多,只是有简单的端口寻址功能

端口号:应用程序之间进行通信时的

源端口:随机分配的,一般 >1024 目的端口:具体到常用的端口号(如telnet 23 、DNS 53等)

常见的端口及协议分布层

  • 物理层和数据链路层

    • 802.3 以太网

    • 802 局域网

    • 802.11 WIFI

  • 网络层

    • ICMP 控制报文协议 端口号:1

    • IGMP Internet组管理协议 2

    • ESP 安全封装协议 50

    • AH 认证头协议 51

    • EIGRP 增强IGRP路由协议 88

    • OSPF 开放式最短路径优先 89

    • ISIS 中间系统到中间系统 124

    • VRRP 虚拟路由冗余协议

  • 传输层(TCP,UDP)

  • 应用层(分为TCP层面,UDP层面)

TCP层面的协议(常用的)

UDP层面的协议(常用的)
邮件三剑客:
  • SMTP 25

  • POP3 110

  • IMAP 143

汇总:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2165494.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

jQuery——对象的使用

1、理解&#xff1a;即执行 jQuery 核心函数返回的对象 2、jQuery 对象内部包含的是 dom 元素对象的伪数组&#xff08;可能只有一个元素&#xff09; 3、jQuery 对象是一个包含所有匹配的任意多个 dom 元素的伪数组对象 4、基本行为&#xff1a; ① size&#xff08;&#xf…

Java_Se 数组与数据的存储

数组是相同类型数据的有序集合。其中&#xff0c;每一个数据称作一个元素&#xff0c;每个元素可以通过一个索引&#xff08;下标&#xff09;来访问它们。 数组的四个基本特点&#xff1a; 1.长度是确定的。数组一旦被创建&#xff0c;它的大小就是不可以改变的。 2.其元素…

【Java 问题】基础——面相对象

面向对象 15. 面向对象和面向过程的区别&#xff1f;16. 面向对象的基本特征17.重载&#xff08;overload&#xff09;和重写&#xff08;override&#xff09;的区别&#xff1f;18.访问修饰符public、private、protected、以及不写&#xff08;默认&#xff09;时的区别&…

2024低代码大赛火热进行,豪礼抢先看~

2024 网易低代码大赛正火热进行中&#xff0c;其中“网易云信低代码”专区吸引了众多开发者参与。 通过低代码高效、灵活的应用构建方式&#xff0c;结合云信的即时通讯和音视频能力&#xff0c;开发者既可以大幅缩短开发周期&#xff0c;还能提升应用的互动性和用户体验。 为…

AGV小车全双工通信应用-低延迟、8路并发全双工通信

随着智能制造和物流行业的不断发展&#xff0c;AGV小车&#xff08;自动导引车&#xff09;在工厂、仓库、物流中心的应用日益广泛。AGV小车凭借其自动化、高效、灵活的特点&#xff0c;逐渐成为物料搬运中的关键设备。在这种复杂多变的环境中&#xff0c;数据传输的可靠性、实…

支持云边协同的「物联网平台+边缘计算底座」

2024年9月20日&#xff0c;工信部发布《工业重点行业领域设备更新和技术改造指南》&#xff0c;旨在指导工业领域设备更新和技术改造工作。该指南设定目标&#xff0c;到2027年完成约200万套工业软件和80万台工业操作系统的更新换代任务。此外&#xff0c;计划实现80%规模以上制…

Python3自带HTTP服务:轻松开启与后台管理

Python3自带有http服务&#xff0c;可以在服务器&#xff0c;也可以在本地启动&#xff0c;并运行一些常用的网页程序。比如&#xff1a;我们可以把streamlit框架编写的网页放到服务器上&#xff0c;开启http服务&#xff0c;就可以通过网页来调用这个pythont程序了&#xff0c…

14、线程池ForkJoinPool实战及其工作原理分析

1. 由一道算法题引发的思考 算法题&#xff1a;如何充分利用多核CPU的性能&#xff0c;快速对一个2千万大小的数组进行排序&#xff1f; 1&#xff09;首先这是一道排序的算法题&#xff0c;而且是需要使用高效的排序算法对2千万大小的数组进行排序&#xff0c;可以考虑使用快…

重头开始嵌入式第四十二天(硬件 ARM体系架构)

目录 一&#xff0c;ARM是什么&#xff1f; 1.公司名称 ARM的主流架构&#xff1a; 2.处理器架构 二&#xff0c;什么是处理器架构&#xff1f;什么是处理器&#xff1f; 一、处理器 二、处理器架构 三&#xff0c;一个计算机由什么构成呢&#xff1f; 一、硬件系统 二…

SDK3(note上)

搞了举个窗口设置还有鼠标处理的信息 注释写在代码中了 #include <windows.h> #include<tchar.h> #include <stdio.h> #include <strsafe.h>/*鼠标消息 * 键盘消息 快捷键消息 菜单消息 控件消息 自定义消息 窗口消息 客户区域的概念(Client Aera) 非…

什么是 SIP 及 IMS 中的 Forking

目录 1. SIP 网络中 Forking 的定义 2. SIP Forking 的分类 2.1 Oaraller Forking 的分类 2.2 Sequential Forking 的分类 博主wx:yuanlai45_csdn 博主qq:2777137742 后期会创建粉丝群,为同学们提供分享交流平台以及提供官方发送的福利奖品~ 1. SIP 网络中 Forking 的定…

828华为云征文|华为云Flexus云服务器X实例部署immich相片管理系统

828华为云征文&#xff5c;华为云Flexus云服务器X实例部署immich相片管理系统 前言一、Flexus云服务器X实例介绍1.1 Flexus云服务器X实例简介1.2 Flexus云服务器X实例特点1.3 Flexus云服务器X实例使用场景 二、immich介绍2.1 immich简介2.2 immich注意事项2.3 主要特点2.4 使用…

AI预测体彩排3采取888=3策略+和值012路或胆码测试9月25日升级新模型预测第91弹

经过90多期的测试&#xff0c;当然有很多彩友也一直在观察我每天发的预测结果&#xff0c;得到了一个非常有价值的信息&#xff0c;那就是9码定位的命中率非常高&#xff0c;已到达90%的命中率&#xff0c;这给喜欢打私菜的朋友提供了极高价值的预测结果~当然了&#xff0c;大部…

【Python】利用Python+thinker实现旋转转盘

需求/目的&#xff1a;用Pythonthinker实现转盘&#xff0c;并且能够随机旋转任意角度。 转盘形式&#xff1a; 主界面&#xff1a; from tkinter import *winTk() win.title("大转盘") win.geometry("300x400")win.mainloop() 转盘绘制&#xff1a; 这…

YOLO系列训练生成的exp进行处理找出mAP值

YOLOv8或者YOLOv10训练生成的exp文件进行遍历,找出results.csv文件中metrics/mAP50(B)、metrics/mAP50-95(B)值和args.yaml中的mode文件,将他们保存到一个excel文件中。 YOLO训练train.py代码如下: 模型训练好后生成exp文件如下: 生成excel文件完整代码如下: import o…

ad14转cadence17.4

一、原理图转换 将原理图文件拖入到新建工程中

专业之选!行业专家力荐的十大文件摆渡系统,你选对了吗?

在信息化时代&#xff0c;数据的流通与共享已经成为企业运营中不可或缺的一部分。为了应对日益增长的数据传输需求&#xff0c;各大厂商纷纷推出了各类文件摆渡系统&#xff0c;以确保数据传输的安全性、高效性和便捷性。以下是行业专家力荐的十大文件摆渡系统&#xff0c;供您…

朗国电子(嵌入式)

1.[问答题]已知单片机内置10位精度的ADC&#xff0c;单片机工作电压1.8V&#xff0c;ADC基准电压1.8V&#xff0c;请计算ADC采样的电压最小分辨率是多少?请写出计算过程和结果;如果单片机ADC输入口电压为0.9V&#xff0c;则采样得到的值是多少?请写出计算过程和结果。 2.[问答…

2024 年最新 Protobuf 结构化数据序列化和反序列化详细教程

Protobuf 序列化概述 Protobuf&#xff08;Protocol Buffers&#xff09;是由Google开发的一种语言中立、平台中立、可扩展的序列化结构数据的方法。它用于在不同系统之间高效地交换数据。Protobuf使用定义文件&#xff08;.proto&#xff09;来描述数据结构&#xff0c;并通过…

excel导出图片---HSSFWorkbook--SXSSFWorkbook

1 概述 平时在工作中&#xff0c;excel导出图片经常会用到&#xff0c;但奈何HSSFWorkbook导出数据数量有限制问题&#xff0c;所以企业里大多都用SXSSFWorkbook格式&#xff0c;很少用HSSFWorkbook。所以今天以这两种格式分别记录下&#xff0c;图片的导出过程。 2 HSSFWork…