码农知识堂 - 1000bd
Python
PHP
JS/TS
JAVA
C/C++
C#
GO
Kotlin
Swift
计算机网络-传输层
1、传输层的功能
通信功能的最高层,用户功能的最底层
进程通信,端到端,主机间的逻辑通信
复用分用,不同进程都可用,网络层的复用是不同传输层协议都可以封装成数据报
差错检测,同时检测数据部分和首部,网络层之间测首部
端口
端口号16bit,可以表示65536个端口
不同主机间的端口号没关系
分为两类:服务端,客户端
服务端分为 熟知(0-1023)登记(1024-49151)
12. 客户端口49152-65535,临时端口,动态选择
套接字:IP:端口号
面向链接与无链接
TCP面向链接、可靠、全双工,逻辑,无广播组播
UDP无链接、不可靠、无确认、仅在IP上加多路复用-投递到对应端口,和
错误检测
,TFTP、DNS、
SNMP、RTP
IP数据报对应UDP数据报,虚电路对应TCP,
TCP是否可以使用IP数据报
TCP和IP数据报的首部长度都是20
提供确认,就可以认为是可靠协议
UDP
1、概述
功能
优点:无链接、首部小、多对多
面向报文
3、首部格式
UDP校验
伪首部
伪首部的格式
校验和的计算方法
例子
反码求和是什么
TCP
特点
暂存数据类型
关于TCP长度问题
TCP报文段
首部
格式
格式详解
原端口和目的端口:各2B
序号:4B,按照字节传送,每个字节都编号,序号字段表示
发送数据的第一个字节的编号
确认号:4B,期待收到下一个报文段的序列号
数据偏移,也是首部长度:4bit,单位是4字节,最大15*4B = 60B
保留位:6位,目前是0
紧急位URG:=1时有效,表示紧急数据,配合紧急指针,表示从第一个到紧急指针都是紧急数据
确认位ACK:ACK = 1确认号才有效,建立连接后,ACK置1
推送位PSH:PSH = 1尽快交付,否则填满缓存后交付
复位位RST:RST = 1严重差错,释放链接,重新建立
同步位SYN:SYN = 1表示链接请求,链接接受豹报文 ,SYN = 1 ACK = 0 请求报文,SYN = 1 ACK = 1 接受报文
窗口:2B,发送方设置发送缓存的依据
校验和:2B,把UDP的伪首部17改成4
紧急指针:2B
选项:TCP规定了一个选项,最大报文长度,MSS数据字段的最大长度
填充:使首部长度是4B的整数倍
TCP链接管理
客户服务器模式
TCP链接端口是套接字
建立连接三个阶段
相关阅读:
C++文件服务器项目—Nginx—3
[kubernetes]-k8s开启swap
flex布局属性简约速记
烟草专卖生产企业许可证
实战一次完整的博彩渗透测试
记录一次项目依赖升级
一段木棍剪成三段,能够组成三角形的概率是多少
Java实现停车场收费系统 JAVA+Vue+SpringBoot+MySQL
提高软件测试覆盖率的5个重点
Flask博客实战 - 实现个人中心及权限管理
原文地址:https://blog.csdn.net/weixin_43124546/article/details/126527540
最新文章
攻防演习之三天拿下官网站群
数据安全治理学习——前期安全规划和安全管理体系建设
企业安全 | 企业内一次钓鱼演练准备过程
内网渗透测试 | Kerberos协议及其部分攻击手法
0day的产生 | 不懂代码的"代码审计"
安装scrcpy-client模块av模块异常,环境问题解决方案
leetcode hot100【LeetCode 279. 完全平方数】java实现
OpenWrt下安装Mosquitto
AnatoMask论文汇总
【AI日记】24.11.01 LangChain、openai api和github copilot
热门文章
十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
奉劝各位学弟学妹们,该打造你的技术影响力了!
五年了,我在 CSDN 的两个一百万。
Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
面试官都震惊,你这网络基础可以啊!
你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
心情不好的时候,用 Python 画棵樱花树送给自己吧
通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
13 万字 C 语言从入门到精通保姆级教程2021 年版
10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系
2656653265@qq.com
京ICP备2022015340号-1
正则表达式工具
cron表达式工具
密码生成工具
京公网安备 11010502049817号