OSI分层协议

TCP/IP

各层协议概述

tcp/ip 数据流配置

各层协议标识
- IP地址:只有一个在网络一级得到承认的网络
- 通过它找到某个子网
- 在链层一级,只有一个主机被识别。 它在子网中发现了一个主机。
- 仅在传输层承认一个应用程序,通过该传输层发现对主机的申请。
- URI:在应用层面,只承认某种资源,只有该资源在应用中找到。
通过TCP/IP协议书传输数据

ARP地址解析协议
1.协议报文头格式
2.协议的作用
3.ARP高速缓存
ARP报文头格式

DST:目的地MAC地址,固定的 0xff
填入您的家庭卡的MAC地址 作为SRC。
对于ARP的要求或答复,长度或类型定为0x0806。
硬件类型:物理链接硬件地址类型、泰网地址1
协议类型: 0x0800800 IPV4 协议地址映射
硬件大小:代表硬件地址的字节数。
协议类型:具体说明协议地址的字节
执行部分第3段:指出该请求或答复是即时请求或答复,也是即时请求或答复。
arp协议
- Arp提供从网络到硬件层地址的动态绘图。
- 这是完全自动化的,结果实时更新
- 寻求联线广播供审讯
- 解决办法在联系层面。
- 快速快递缓存安全由速递协议使用。
arp高速缓存

3 IP逐跳协议
- IP协议报文头
- IP协议的作用
- IP协议的问题

版本: IP 版本号, 最大值为 4 比特 。
国际人道主义法:一等公使,单位4字节,第一类最多60字节。
总长度:IP第一和IP数据部分的整个长度,至多65535个字符。
确定用于片段重组的数据集
旗帜: 是否分隔符号, 是否是包件的最后一个部件 。
零散部分抵销:其中一部分在原始提交书中,用于报告的重组。
TTL: 生命周期分裂
(例如,TCP/UDP/ICMP)
校验和: 初始 IP 累积校验和 。
网络字节序列的 HIP 地址 。
IP: 网络字节序列的目标 IP 地址 。
字节序

整数的内存布局

IP地址划分
IP 地址分类为网络号、子网号和主机号。第一个 IP 地址网络定期指定给主机号 。

基于子网掩码的划分
子网遮罩指定网络号在 IP 地址中的位置为 1,主机识别码的位置为 0 。

IP路由配置
在发送数据包时,第一步是在 IP 软件包中定位 IP 地址 。此外,路线控制表还有与地址相同的网址网址的日志。将包发送到与记录相关的路由器 。如果在路线控制表中有大量同一网络URL的记录,则将有一个以上的互联网地址。贪婪的方法用来寻找最好的配对。如果没有匹配项,无法删除文件夹“{0}”。例如,目标目标目标目标
172.20/16 172.100/24 路线表记录
在此,选择172. 20. 对应的100/24路由器
路由控制表

IP协议的问题
- IP数据包将由IP指定的每一个路由器发送,任何路由器问题都会有问题。
- 没有连接:即使接收方不存在,知识产权在交付之前也无需连接。
- IPs将把数据包分包给路径的 MTU 分部分, 并改变目的地IP, 从而增加出现困难的可能性 。
4 ICMP协议
- ICMP 的《议定书》标题格式
- ICMP协议的作用
- ICMP协议的使用
ICMP报文头

类型:用于指定报告的目的,例如0个答复类型
代码:进一步区分电文的使用。
校验总和:包括头部和数据组成部分的累积校验总和。
取决于类型和代码内容:不同代码和字段类型的组合不同,与用户数据相关。
ICMP协议作用
- 端对端协议归类为遗漏信息和查询信息。
错误信息与IP一起使用,以弥补IP协议和诊断信息的不可靠性。
查询信件与 IP 结合使用,以设置 IP 层 。
- IP层、TCP层、甚至应用层通常都启动IPCMP。
- IPCMP并不确保IP层的可靠性;相反,它就某些问题和设置提供反馈,而高级议定书TCP处理具体的可靠性保障。
IPCMP-ping的使用

Ping让主机进入网络级别 。
- ICMP发件人组重复请求,身份识别字段填写了进程编号,序列号字段从0开始,以时间号递增方式转发请求报告,并在选项数据中保留发送时间。
- 接收方根据客户报告小组的ICCMP对提交书作出反应,并以原始形式将其退还给客户。
- 发送者一旦接受答复,即按进程代号、序列号、抵达不规则、多次下降、按当前时间和记录交付时间差对ttl进行评估,并通过打印输出过程来进行身份识别。
使用 ICCMP 跟踪路径图
Traceroute 可以观察源与目的地主机之间的所有路径 。
Traceroote 创建 dup 数据包, 使用 dup 模块 。现在输入不可能的端口号作为目的地端口号。IP 数据头的 ttl 字段由 1 升至 1 。根据收到国际海事委员会的答复表明港口无法使用或请求耗时,追踪路由决定是否终止。
4 UDP协议
- 协议报文头格式
- 协议的问题
报文头格式

当对方没有反应时, 16位数网络字节序列的应用程序端口号无需填入 。
16位数网络字节序列的函数是应用必须填充的端口号。
最大长度包括头部和数据的总长度。 65535
UDP 头、 UDP 数据、 UDP 假头累积核对表
udp协议的问题
- 无连接:即使对方不存在数据包,也直接发送数据包,所有连接都共用同一个缓冲区。
- 没有流量控制: 发送时和收到用户数据时完全一样, 否则接收者将不堪重负 。
- 没有交通拥堵控制:即使出现网络堵塞,数据包也会传送,造成网络瘫痪。
- 不可靠: 被丢弃的软件包不会重新发行, 无法随机管理数据包到达 。
“重新思考:如何利用一个不值得信赖的乌普协议来建立一个值得信赖和稳定的传输控制系统?”
提示:
- 丢包
- 数据包乱序到达
- 流量控制
- 拥塞控制
- 接收方是否正常
TCP 第五号议定书第5号议定书标题

资料来源端口:16位数网络字节序列发送端口号。
目的地端口: 16位数网络字节序列的接收端口号 。
序号:从发送到接收终端数据流的字节偏差,代表含有偏移值的信息字段的第一个字节。
确认号:确认号发件人预期收到下列序号。
32个最大值为60字节的32个位点的 tcp 头条长度
窗口的大小:窗口的宽度,从收件人的识别号开始,以及 tcp 接受缓冲区的宽度。
在核对表中包含 tcp 头、 数据、 和假盖盖头 。
当乌干达共和国出现时,紧急指示器是代表紧急数据结束的抵消值。
紧急数据=紧急指针+序号
备选办法:提供某些控制和尖端能力,例如利用管理支助系统避免实施伙伴的分数,等等。
标志位
- syn: 记录第一个链接同步的序列号, 这是每次连接形成时第一次请求时需要的 。
- Finn: 来文是由给文章打上标记的发件人发给对立方的。
- rst, 重置链接符号, 通常由于链接的奇异性 。
- 发送信号, 接受签名请求, tcp 应立即将数据推到应用程序中, 当发送者清除缓冲区时, 将数据放入程序 。
- Jack: Mark 已经验证了这个指标, 信头中的灰色字段仅有效, 这个字段通常为每个用户的数据设置 。
- urg:紧急标志
- e: ECN回响,告知网络拥堵的发送者;必须能够采用避免拥堵的方法。
- Cascaade 窗口取消标记, 通知收件人移动 ece

三次握手

- 选择 ISN : ISN 每8分钟增长1次, 并创建64,00个新链接, 以保证丢失的分组不会干扰典型的 tcp 对话 。
- 接收方ISN:追踪通过ISN传送的每个字节,是tcp协议的特点和可靠性的基础。
- 关于MSS(最大次会量大小)的磋商,即最高 tcp 最长长度,通常定在 MTU- tcp 头长 -- ip 头长,以防止ip 影响数据包子节的性能。
四次挥手

SO_REUSEADDR
执行主动关闭的一方将等待时间为MSL的两倍,等待时间为时间- WAIT状态的MSL。停止最后的ACK 失败。它可以让失去的团体在那段时间里 有机地消失这对这种结合所产生的新联系没有影响。尽管如此,这也意味着在此期间无法利用该链接的当地港口。
此选项允许使用本地端口, 等待状态为 2MSL 。
- tcp是一种双工作连接,每个连接都有其自己的分布缓冲区和在底部的接待缓冲区,独立于彼此的传输和接收数据。
- 关闭功能支持半封闭链接功能;当一方运行关闭功能时,书面结尾关闭,但仍接受另一方提供的数据。
- 近距离函数直接删除内核 tcb 结构( tcp 控制区块) 数据, 并将 rst 返回到关闭的链接呼叫器 ** 。
半开链接
- 如果来文机制的任何一方都失败,就会出现半链接。
- 除非部分打开书写程序,否则无法检测半链接 。
- 有几个半链接没有链接。
- 心脏速率检测到半个连接。
tcp的类型
- 交互数据流
- 成块数据流
tcp确认报文
- 收到请求立即确认
反应时间被推迟,这有利于高时延误申请。
对连接使用的影响,可能导致网络拥堵
- 要确认, 等有用户数据后再确认 。
无法关闭临时文件夹:%s。
高需求申请造成延误
- Tcp利用过期时间确认是否逾期或等待用户数据。
Nagle
tcp 默认启用 Nagle 算法 。
- tcp 连接只能带有未经核实的、不完整的小组(数据长度低于 MMS),在确认该组之前不得再传送其他组。
- 在分组确认到来时收集后续客户数据,并在分组确认到来时将数据分一个分组发送
- 晚间检查和确认 tcp 有效减少了连接中的小群体,提高了其利用率。

TCP_NODELAY
启动 nagle 算法会影响用户的认知, 并使用此选项关闭 tcp 连接到 ssh 和 Telnet 等互动式数据流的 nagle 算法 。

流量控制
可以将TCP视为双向管道,由交通管理负责相互管理对方的发送速度。
tcp 使用信头中的窗口大小字段传送不超过当前确认信件中确认号的电文,作为基本地址,以窗口大小作为信件长度的序列号,超过此范围的任何序列号将由 RST 响应。
记住发件人只能发送幻灯片窗口范围内的数据,而接收者只能获取幻灯片窗口范围以外的数据,以便在 RST 报告中作出反应。
滑动窗口

- 窗口:当数据传输时,窗口向左滑翔和向后缩。
- 当接收器吞食缓冲区内的数据并发出回复信息时,发送者将看到窗口向右移动并增长。
- 窗口收缩:当快速发送器发现接收器速度慢时,当窗口低于海安会时,通知窗口缩短0,而区域合作框架没有提出这一点。
- 窗口零:在通知窗口到达窗口右边缘而通知窗口为0之前,发送者无法发送数据。
窗口扩张通告
当收件人告知窗口开放时间为0时,发件人停止发送数据,直到收件人告知窗口关闭,通知收件人告知窗口关闭,通知收件人告知窗口开放时间为0时,发件人停止发送数据,直到收件人通知窗口关闭。

窗口扩张通告丢失?
- 由于 tcp 是基于不可信的 IP 协议, 任何 tcp 报告, 包括窗口扩展, 可能会丢失 。
- 发件人没有收到扩大窗口通知,一直在等待通知。
- 在窗口扩展通知时,接收器验证了收到的所有数据。
- 收件人不知道在发件人之后是否有任何数据可供交付。
- 目前,双方可能处于停顿状态,无法进行联系。
坚持定时器
发送者的数据经接收者验证。即使窗口太小(通知窗口小于 MMS),它也能够发送完整信息。发送者返回到计时器的索引 。定时器过期,并提供了窗口搜索报告。窗口搜索报告将被无限期地重新发送 。当收件人的窗口打开或关闭时,链接被激活。这个计时器被称为定时器 。

拥塞窗口
- 对流窗口用于调整发件人的发送频率。
压缩窗口显示从收到确认书到下次确认书到达之间的页数。
- 一旦确认该电文在[1, 圆窗口]的范围之内,压缩窗口就会更改。
消化减少压缩窗口、减少发送频率和不断增加压缩窗口,因为经确认的信息得到确认,直到达到通知窗口或下一次压缩时为止。
慢启动
- 当发件人同时发送许多部件时,可能因为路由器缓冲不够充分而将其删除,导致发件人重复并丢弃,严重减少使用率,甚至造成网络瘫痪,发件人同时发送许多部件,可能因为路由器缓冲不够充分而将其删除,导致发件人重复并丢弃,严重减少利用率,甚至造成网络瘫痪。
- 最初将压缩窗口设为 1, 在收到确认信息后, 压缩窗口会以指数速度增长, 直到它等于通知窗口或达到阈值 。

tcp吞吐量

带宽时延乘积
- 压缩窗口和通知窗口控制着 Tcp 输送量 。
- 冷凝的窗口受实际硬件配置(不可更换)的制约。
- 通知窗口取决于接受方是否批准缓冲区(可变)的面积。
- 增加获得缓冲地带以刺激吞吐量的受援者人数。
- 带宽:可在有形网络单位范围内传送的数据数量。
- 时差:提交数据的时间与收到确认的时间间隔。
- 接收缓冲区的最大值是带宽时间乘数。
糊涂窗口综合症
如果满足下列条件,以幻灯片窗口为基础的流动控制软件将导致窗口综合症被分解,链接使用率急剧下降:
- 发报机速度很快,但收信人速度缓慢。
- 发送者发送的数据数量不多(低于管理信息系统报告线)。
- 接收器告知一个小窗口( 小于 MMS 窗口)
解决方案
- 目前窗口的大小不如接收方通知那么令人满意。
- 在发送数据时,发送者必须满足要求。
- 能够传输整个信件( MSS 大小)
- 您可以发送一个与收件人通知窗口大小为一半的信件。
- 当当前连接不含未经证实的数据时,请发送任何数据( Nagle) 。
- 当使用当前连接时, nagle 算法已被禁用 。

超时重传
- Tcp 发件人根据时间差计算rtt测量值。
- 设置 rto 取决于 rtt 读数 。
- 在发送电文时,记录序列号并设定计时器。
- 当您收到带有信件序列号的回复时, 取消计时器 。
- 计时器过期后,未收到序列号确认,重新发送电文,修改压缩窗口,并提出rto的后退系数。
我想知道是否为发送的每条信息都设定了这个超时。

快速重传
- 接收方按顺序接收信息,当收到异常报告时,必须生成一份不延误的重复确认书。
- 当发送者收到多次确认书时,无法确定重复确认书是否是由于其以不正常或遗失的形式抵达,因此必须等待少量重复确认书的到来。
- 当发件人收到连续三次或三次以上确认时,电文被认为丢失,在不等待转盘发件人超时的情况下感到怨恨。
- 发件人在开始发送发回电文之前不必等待重新发送电文的确认。

网络拥塞
- 过期的 rto 计时器必须尽量减少输入网络的数据量 。
- 由于集体损害,硬件保证只是略微受损。
- 中间路线受到限制,如果大量数据进入中间路线,造成缓存丢失,则删除中间路线,不向发源地交付任何国际CMP。
- 连续三次确认后,必须稳步运送货包。
- 当一个故障小组出现时,不应拖延核查是否要求及时答复重复确认。
- 重复确认表明,一个数据包已到达目标主机。
避免了Rto的超时拥挤。
- cwnd = 1, ssthresh = 65535 开始时的 cwnd = 1, ssthresh = 65535
- 超时: ssthresh = ( cwnd 和 Rwnd 采用最低值/2),但不少于 2MSS, cwnd = 1 。
- 重发: cwnd 指数递增到 cwnd=sshresh
- cwnd = ssthresh: 在确认后, cwnd 产生的值。
重复确认的拥塞避免
- cwnd = 1, ssthresh = 65535 开始时的 cwnd = 1, ssthresh = 65535
- * 海安会
- 收到重复确认后: cwnd + = MSS
- cwnd = 收到新确认时的sthresh
TCP常见异常
- 应用崩溃
- 机器崩溃
- 机器崩溃后重启
- 网络断开
- 大量半开链接
- 大量半关链接
应用崩溃
应用崩溃时,系统会关闭打开的文件描述符( 线索也是文件描述符), 从而导致内核 tcp 模块发送 fin 信息并删除连接 tcb 。
EOF 文件结束符号将返回到线的对面, 结束状态变化将会为人所知 。
另一方面,写作将会被一个 rst 消息回响, 在重写时触发吸气管信号( 默认动作是杀死进程, 即使抓获异常点, 写作也会出一个吸气管错误), 最终状态将会改变 。
在对面,您可以阅读或写作,也可以接受异常。
机器崩溃
当机器失灵时, tcp 核心模块无法响应, 而终端没有收到通知或数据 。
在连接的另一端,您将被断开或收到 EAGAIN 错误 。
另一方面,开关将继续重新传送,直到 tcp 终止再传送为止。
如果另一方不写,它将永远无法识别异常。
机器崩溃并重启
当系统重新启动时, 当内核没有再生成链接的 tcb 数据时, 链接就会丢失链接, 因此当收到链接的数据包时, 内核会响应 rst 消息 。
在连接的另一端,您将被断开或收到 EAGAIN 错误 。。
另一方面,写作将会被一个 rst 消息回响, 在重写时触发吸气管信号( 默认动作是杀死进程, 即使抓获异常点, 写作也会出一个吸气管错误), 最终状态将会改变 。
如果另一方不写,它将永远无法识别异常。
网络断开
当网络断开时, 数据无法发送到对方, 导致链接关闭的常规数据互动和报告会被隐藏 。
在连接的另一端,您将被断开或收到 EAGAIN 错误 。
另一方面,开关将继续重新传送,直到 tcp 终止再传送为止。
如果你不自己写,你无法辨别两端的异常点
大量半开链接
半连接是指不会导致链接正常关闭的行动,通信的段落将内核删除为该链接所保存的tcb模块。
当严重时,对系统和过程的半链接文件说明导致没有说明。
系统崩溃,然后恢复, 网络分裂成半链接 可以通过心跳算法管理。
大量半关链接
中间环节是 tcp 终止序列的关闭端 。另一方面,停产状态没有实施。部分关闭将标为FIN_WAIT_2。反面将停留在时空状态。半关链接大量积累,它还导致一个系统或程序缺乏文件说明。
当一端使用关闭来阻止结束时,另一端不执行关闭以结束结束,导致半途连接,在收到发送到另一端的FIN电文后必须及时终止。
Tcp协议总结

Tcp的可靠性是基于对所提供的数据进行字节排序。这些数据是首次在缓冲区内传输的,并且不断被发送到缓冲区。除非另一方提供类似的确认书,否则不会将其删除。如果所要求的确认没有在规定时限内达到,这是我国历史上第一次重新出现这种情况,公众正在等待这种情况再次发生。除非达到最大复读次数,否则不会发生这种情况。因此, tcp的可靠性并不意味着数据总是送到预定目的地。这意味着数据要么传送到另一方,要么发送到另一方。或者,没有收到发送者数据的准确指示。
如果 tcp 等待对每份提交书的确认,在一次时间里只交换一份报告,造成网络利用不足;因此,滑动窗口办法是为了提高业绩。

为每个 tcp 连接创建一个接收缓冲带, 只要消息号码在窗口内, 以无序顺序发送的后续信息会暂时保存, 空洞中信件的序列号会再次确认, 缺失的信件会发送到应用程序 。
当每条链接在一个弯曲内传输一个与滑动窗口匹配的信息时,在某些慢速连接中产生网络拥塞非常简单,因为中间路由器开始丢弃该信息,发送端定时器耗尽,信息再传输使情况恶化,甚至造成网络瘫痪。
因此,压缩窗口被用来管理其发送频率、延迟启动频率、防止拥堵和迅速恢复算法,以减少网络堵塞率和促进网络使用。