跳至主要內容
JeacsonBlog

JeacsonBlog

一个简单的博客

关于我

关于我

你好!我是Jeacson, 一个依然在求知路上的大学生。



Jeacson She...小于 1 分钟
可靠数据的传输原理(RDT/GBN/SR)

这篇博客我们将系统介绍有关在传输层中实现可靠数据传输 (Reliable Data Transfer) 的原理, 包括 rdt 的各个系列协议,在 rdt3.0 协议的基础上讨论停等协议与流水线协议的区别,并介绍两种流水线协议:GBN 协议与SR协议。

从传输层开始

传输层的主要功能是提供端到端的数据传输服务,例如 TCP 协议提供了可靠的、面向连接的数据传输服务。TCP使用序列号、确认应答、重传等机制来确保数据的可靠传输。因此,从抽象角度来看,我们可以将传输层之间的特定通讯视为提供了一种相对可靠的通信机制。


Jeacson She...大约 23 分钟ComputerNetworkbasic
如何计算UDP校验和

如何构造校验和checksum?

checksum 的构造方法比较简单,但是计算比较麻烦:将需要发送的 16-bit 二进制源数据两两相加,取从右往左数共十六位数,如果有多的位数就把该位数移到最低位再相加。如此反复将所有需要发送的数据相加完毕后对它作反码,即将这十六位数的1置0,0置1。

具体需要的数据以下列的表格作为例子:

发送端IP地址
接收端IP地址
UDP协议对应数(17) UDP网段总长度
UDP源端口号 UDP目的端口号
UDP网段总长度 校验和数值(在这里设为0)
数据 数据 数据 数据
数据 数据 数据 数据
数据 数据 数据 数据
数据 数据 数据 数据
......
数据 数据 数据 (后置位补零,有需要就加,否则不加)

Jeacson She...大约 3 分钟ComputerNetworkbasic
TCP与UDP与他们之间的关系

UDP

UDP 是一种简洁、轻量级的传输协议,只提供最基本的通讯服务。UDP 定义于 [RFC 768],其功能与传输协议差不多。除了多路复用/解复用功能和一些轻微的错误检查功能外,它没有为 IP 增加任何功能。也就是说,如果一个应用程序开发人员选择 UDP 而不是 TCP 作为传输协议的话,那么该应用程序几乎可以被认为是在直接与 IP 对话而没有任何其他的包装。

UDP 是无连接的,因此在两个进程开始通信之前不需要提前握手。因此,当应用程序通过 UDP 而不是 TCP 运行时,专用于这些特定应用程序的服务器通常可以支持更多的在线客户端。

UDP 提供的是一种不可靠的数据传输服务,也就是说:


Jeacson She...大约 3 分钟ComputerNetworkbasic
什么是SMTP

介绍

SMTP(Simple Mail Transfer Protocol, 简单邮件传输协议) 是一种提供可靠且有效的电子邮件传输的协议,主要用于系统之间的邮件信息传递,并提供有关来信的通知。

基本操作

为了说明 SMTP 的基本操作,让我们来假设一个常见的场景。假设 Alice 想要给 Bob 发送一条简单的 ASCII 消息:

  1. Alice 调用其电子邮件用户代理,编写邮件,在提供 Bob 的电子邮件地址 (例如[email protected]) 后指示该用户代理发送邮件;
  2. Alice 的用户代理将信息发送到她的邮件服务器,该信息会被放入邮件服务器的信息队列中;
  3. 在 Alice 的邮件服务器上运行的 SMTP 客户端会发现被提交到该信息队列中的信息。于是这个 SMTP 客户端在找到收件人 Bob 的邮件地址后,尝试与运行在收件人 Bob 邮件服务器上的 SMTP 服务器建立 TCP 连接;
  4. 经过一些初始 SMTP 握手后,SMTP 客户端通过 TCP 连接将 Alice 的邮件发送到 Bob 的邮件服务器上;
  5. Bob 的 SMTP 服务器端接收到该信息后,邮件服务器会将信息放入 Bob 的邮箱;
  6. 最后当 Bob 调用他的用户代理时,他便可以在任意时间阅读邮件了。

Jeacson She...大约 5 分钟ComputerNetworkbasic
自动控制原理相关

这里存放了一些自动控制原理相关的知识。

S-Z变换表 (Table of s- and z-transforms)

f(t)f(t) F(s)F(s) f(kT)f(kT) or f(k)f(k) F(z)F(z) name
1 δ(t)\delta (t) 11 δ(k)\delta(k) 1 单位冲激 (unit impulse)
2 δ(ttd)\delta (t-t_d) etdse^{-t_ds} δ(kn)\delta (k-n) znz^{-n} 时延单位冲激(delayed unit impluse)
3 u(t)=1u(t) = 1 1s1 \over s u(k)=1u(k) = 1 zz1{z} \over {z-1} 单位阶跃(unit step)
4 tt 1s21 \over {s^2} kTkT zT(z1)2{zT} \over {(z-1)^2} 斜坡函数(ramp)
5 t2t^2 2s32\over{s^3} (kT)2(kT)^2 z(z+1)T2(z1)3{z(z+1)T^2} \over {(z-1)^3} 抛物线函数(parabola)
6 aka^k zzaz \over {z-a} 几何序列(geometric sequence)
7 eate^{-at} 1s+a{1} \over {s+a} eakTe^{-akT} zzeaT{z} \over {z-e^{-aT}} 自然指数(natural exponential)
8 1eat1-e^{-at} 1s(s+a){1} \over {s(s+a)} 1eakT1-e^{-akT} (1eaT)z(z1)(zeaT){(1-e^{-aT})z} \over {(z-1)(z-e^{-aT})} 单位阶跃指数(unit step exponential)
9 teatte^{-at} 1(s+a)2{1} \over {(s+a)^2} kTeakTkTe^{-akT} TzeaT(zeaT)2{Tze^{-aT}} \over {(z-e^{-aT})^2}
10 kak1ka^{k-1} z(za)2{z} \over {(z-a)^2}
11 akbka^k-b^k (ab)z(za)(zb){(a-b)z} \over {(z-a)(z-b)}
12 sinωtsin \omega t ωs2+ω2{\omega} \over {s^2+\omega^2} sinωkTsin \omega kT zsinωTz22zcosωT+1{z sin \omega T}\over{ z^2 - 2zcos\omega T + 1} sine
13 cosωtcos \omega t ss2+ω2{s} \over {s^2+\omega^2} cosωkTcos \omega kT z(zcosωT)z22zcosωT+1{z(z - cos \omega T)}\over{ z^2 - 2zcos\omega T + 1} cosine
14 eatsinωte^{-at}sin \omega t s(s+a)2+ω2{s} \over {(s+a)^2+\omega^2} eakTsinωkTe^{-akT}sin \omega kT zeaTsinωTz22zeaTcosωT+e2aT{ze^{-aT} sin \omega T}\over{ z^2 - 2ze^{-aT}cos\omega T + e^{-2aT}} 自然欠阻尼(natural underdamped)
15 dfdt{df}\over{dt} sF(s)f(0)sF(s) - f(0) (空置) (空置) 一阶导(1st1^{st} derivative)
16 d2fdt2{d^2f}\over{dt^2} s2F(s)sf(0)df(0)dts^2F(s) - sf(0) - \frac{df(0)}{dt} (空置) (空置) 二阶导(2nd2^{nd} derivative)
17 f(kn)f(k-n) znF(z)z^{-n}F(z) 左移n时位(backward shift of n)
18 f(ttd)f(t-t_d) etdsF(s)e^{t_ds}F(s) 时延(time delay)
19 (空置) (空置) f(k+1)f(k+1) zF(s)f(0)zF(s) - f(0) 右移1时位(forward shift of one)
20 (空置) (空置) f(k+2)f(k+2) sF(s)f(0)sF(s) - f(0) 右移2时位(forward shift of two)
21 f(0)f(0) limssF(s)\lim\limits_{s\rightarrow\infin}sF(s) f(0)f(0) limzF(z)\lim\limits_{z\rightarrow\infin}F(z) 初值(initial value)
22 f()f(\infin) lims0sF(s)\lim\limits_{s\rightarrow 0}sF(s) f()f(\infin) limz1(z1)F(z)\lim\limits_{z\rightarrow 1}(z-1)F(z) 终值(final value)

Jeacson She...大约 3 分钟自动控制原理相关
markdown-it渲染器

简述

一些在markdown-it踩坑后的总结向文章。

一、在 vuepress 中引入 markdown-it 的插件

背景:在书写自动化控制原理相关表格时希望将表格进行合并,但是普通的Markdown并没有针对复杂表格的处理能力。

如何处理


Jeacson She...小于 1 分钟
计算与仿真

简述

在这个文章当中都是有关计算与仿真相关笔记。如有错误还请帮忙指正!

机器数(Machine Number)

请参考这里

在该章节中包含了有关IEEE-754单、双精度十进制与机器数相互转换机器精度(machine epsilon)真误差(true error)/真实相对误差(true relative error)舍入规则(Rounding Rule) 等问题的相关计算。


Jeacson She...大约 8 分钟Computerbasic
什么是Symbol

定义——一个不会重复的原始数据类型

Symbol是ES6引入的一种新的原始数据类型,表示独一无二的值。它是JavaScript语言的第七种数据类型。

相关信息

前六种是:undefined、null、布尔值(Boolean)、字符串(String)、数值(Number)、对象(Object)。

基本数据类型不适用以new关键字新增, 因此它的创建方式如下:


Jeacson She...大约 2 分钟JavaScriptWebJavaScriptadvanced
2
3
4