tceic.com
简单学习网 让学习变简单
当前位置:首页 >> 其它课程 >>

CH5-5ed 运输层(2)


计算机网络(第 5 版)
第 5 章 运输层

课件制作人:谢希仁

5.3 传输控制协议 TCP 概述
5.3.1 TCP 最主要的特点
?

?

? ? ?

TCP 是面向连接的运输层协议。 每一条 TCP 连接只能有两个端点 (endpoi

nt),每一条 TCP 连接只能是点 对点的(一对一)。 TCP 提供可靠交付的服务。 TCP 提供全双工通信。 面向字节流。
课件制作人:谢希仁

TCP 面向流的概念
发送方

?

接收方
H 表示 TCP 报文段的首部 x 表示序号为 x 的数据字节 从接收缓存 读取字节 加上 TCP 首部 构成 TCP 报文段 TCP 5 4

应用进程

?

应用进程

21 字节流 20 把字节写入 19 发送缓存
TCP 1817161514

0 字节流 1 2 3

131211 H

10 9 H TCP 连接

发送 TCP 报文段 8 7 6H

课件制作人:谢希仁

TCP其它要点
?

?

?

?

TCP 连接是一条虚连接而不是一条真正的物理连 接。 TCP 对应用进程一次把多长的报文发送到TCP 的 缓存中是不关心的。 TCP 根据对方给出的窗口值和当前网络拥塞的程 度来决定一个报文段应包含多少个字节(UDP 发 送的报文长度是应用进程给出的)。 TCP 可把太长的数据块划分短一些再传送。TCP 也可等待积累有足够多的字节后再构成报文段发 送出去。
课件制作人:谢希仁

5.3.2 TCP 的连接
?

?
?

?

TCP 把连接作为最基本的抽象。 每一条 TCP 连接有两个端点。 TCP 连接的端点不是主机,不是主机的 IP 地址,不是应用进程,也不是运输层 的协议端口。TCP 连接的端点叫做套接 字(socket)或插口。 端口号拼接到(contatenated with) IP 地 址即构成了套接字。
课件制作人:谢希仁

套接字 (socket)
套接字 socket = (IP地址: 端口号)
?

(5-1)

每一条 TCP 连接唯一地被通信两端的两个 端点(即两个套接字)所确定。即:

TCP 连接 ::= {socket1, socket2} = {(IP1: port1), (IP2: port2)}

(5-2)

课件制作人:谢希仁

同一个名词 socket 有多种不同的意思
?

? ? ?

?

应 用 编 程 接 口 API 称 为 socket API, 简 称 为 socket。 socket API 中使用的一个函数名也叫作 socket。 调用 socket 函数的端点称为 socket。 调用 socket 函数时其返回值称为 socket 描述符, 可简称为 socket。 在操作系统内核中连网协议的 Berkeley 实现,称 为 socket 实现。
课件制作人:谢希仁

?

?
?

讨论: Internet中计算机通信基础单元是_____ A.端口 B.IP地址 C.套接字 D.分组

课件制作人:谢希仁

5.4 可靠传输的工作原理
5.4.1 停止等待协议
发送 M1

A

B
确认 M1

发送 M1

A

B
丢弃有差错 的报文

?
超时重传 M1

发送 M2 确认 M2 发送 M3 确认 M3 t t

确认 M1 发送 M2

t

t

(a) 无差错情况

(b) 超时重传

请注意
?

? ?

在发送完一个分组后,必须暂时保留已 发送的分组的副本。 分组和确认分组都必须进行编号。 超时计时器的重传时间应当比数据在分 组传输的平均往返时间更长一些。

课件制作人:谢希仁

确认丢失和确认迟到
发送 M1

A

B
确认 M1 丢弃 重复的 M1 重传确认 M1

发送 M1

A

B
确认 M1 丢弃 重复的 M1 重传确认M1

?
超时 重传 M1

?
超时 重传 M1

发送 M2

发送 M2
收下迟到 的确认 但什么也不做 t

t

t

t

(a) 确认丢失

课件制作人:谢希仁 (b) 确认迟到

可靠通信的实现
?

?

?

使用上述的确认和重传机制,我们就可 以在不可靠的传输网络上实现可靠的通 信。 这种可靠传输协议常称为自动重传请求 ARQ (Automatic Repeat reQuest)。 ARQ 表明重传的请求是自动进行的。接 收方不需要请求发送方重传某个出错的 分组 。
课件制作人:谢希仁

信道利用率
?

停止等待协议的优点是简单,但缺点是 信道利用率太低。
t

B

A

t TD
RTT TD + RTT + TA

课件制作人:谢希仁

信道的利用率 U
TD U? TD ? RTT ? TA

(5-3)

课件制作人:谢希仁

流水线传输
? ?

发送方可连续发送多个分组,不必每发完一个分 组就停顿下来等待对方的确认。 由于信道上一直有数据不间断地传送,这种传输 方式可获得很高的信道利用率。
t

B

A
课件制作人:谢希仁

t

?

?
? ? ? ?

讨论: 可靠传输协议中的“可靠 ”指的是() A.使用面向连接的会话。 B.使用“尽力而为”的传输。 C.使用滑动窗口来维持可靠性。 D.使用确认机制来保持数据不丢失。

课件制作人:谢希仁

5.4.2 连续 ARQ 协议
发送窗口

1

2

3

4

5

6

7

8

9

10 11 12

(a) 发送方维持发送窗口(发送窗口是 5) 发送窗口 向前

1

2

3

4

5

6

7

8

9

10 11 12

(b) 收到一个确认后发送窗口向前滑动
课件制作人:谢希仁

累积确认
?

?

接收方一般采用累积确认的方式。即不 必对收到的分组逐个发送确认,而是对 按序到达的最后一个分组发送确认,这 样就表示:到这个分组为止的所有分组 都已正确收到了。 累积确认的优点是:容易实现,即使确 认丢失也不必重传。缺点是:不能向发 送方反映出接收方已经正确收到的所有 分组的信息。
课件制作人:谢希仁

Go-back-N(回退 N)
?

?

?

如果发送方发送了前 5 个分组,而中间 的第 3 个分组丢失了。这时接收方只能 对前两个分组发出确认。发送方无法知 道后面三个分组的下落,而只好把后面 的三个分组都再重传一次。 这就叫做 Go-back-N(回退 N),表示 需要再退回来重传已发送过的 N 个分组。 可见当通信线路质量不好时,连续 ARQ 协议会带来负面的影响。
课件制作人:谢希仁

5.5 TCP 报文段的首部格式
32 位
位 0 8 源 端 口 序 号 TCP 首部 确 认 号 窗 口 紧 急 指 针 (长 度 可 变) 填 充 20 字节的 固定首部 16 24 目 的 端 口 31

数据 偏移

保 留 检 验 和 选 项

U A P R S F R C S S Y I G K H T N N

TCP 报文段

TCP 首部

TCP 数据部分

发送在前
IP 首部 IP 数据部分

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





源端口和目的端口字段——各占 2 字节。端口是运输 层与应用层的服务接口。运输层的复用和分用功能都 要通过端口才能实现。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





序号字段——占 4 字节。TCP 连接中传送的数据流 中的每一个字节都编上一个序号。序号字段的值则指 的是本报文段所发送的数据的第一个字节的序号。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





确认号字段——占 4 字节,是期望收到对方的下一个 报文段的数据的第一个字节的序号。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





数据偏移(即首部长度)——占 4 位,它指出 TCP 报文 段的数据起始处距离 TCP 报文段的起始处有多远。“数 据偏移”的单位是 32 位字(以 4 字节为计算单位)。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





保留字段——占 6 位,保留为今后使用,但目前 应置为 0。

位0

8 源 端 口

16

24 目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





紧急 URG —— 当 URG ? 1 时,表明紧急指针字 段有效。它告诉系统此报文段中有紧急数据,应尽 快传送(相当于高优先级的数据)。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





确认 ACK —— 只有当 ACK ? 1 时确认号字段才 有效。当 ACK ? 0 时,确认号无效。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





推送 PSH (PuSH) —— 接收 TCP 收到 PSH = 1 的报 文段,就尽快地交付接收应用进程,而不再等到整个 缓存都填满了后再向上交付。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





复位 RST (ReSeT) —— 当 RST ? 1 时,表明 TCP 连 接中出现严重差错(如由于主机崩溃或其他原因),必 须释放连接,然后再重新建立运输连接。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





同步 SYN —— 同步 SYN = 1 表示这是一个连接请 求或连接接受报文。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





终止 FIN (FINis) —— 用来释放一个连接。FIN ? 1 表明此报文段的发送端的数据已发送完毕,并要求释 放运输连接。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





窗口字段 —— 占 2 字节,用来让对方设置发送窗口的 依据,单位为字节。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





检验和 —— 占 2 字节。检验和字段检验的范围包括 首部和数据这两部分。在计算检验和时,要在 TCP 报文段的前面加上 12 字节的伪首部。

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





紧急指针字段 —— 占 16 位,指出在本报文段中紧 急数据共有多少个字节(紧急数据放在本报文段数 据的最前面)。

比特 0

8
源 端 口

16

24
目 的 端 口

31

TCP 首部

MSS (Maximum Segment Size) 序 号 是 TCP 报文段中的数据字段的最大长度。 20 字节 数据字段加上 TCP 首部 确 认 号 固定 首部 才等于整个的 TCP 报文段。 U A P R S F 数据
偏移 保 留
R C S S Y I G K H T N N

窗 口

检 验 和

紧 急 指 针





(长 度 可 变)





选项字段 —— 长度可变。TCP 最初只规定了一种选 项,即最大报文段长度 MSS。MSS 告诉对方 TCP: “我的缓存所能接收的报文段的数据字段的最大长 度是 MSS 个字节。”

其他选项
?

?

?

窗口扩大选项 ——占 3 字节,其中有一个字 节表示移位值 S。新的窗口值等于TCP 首部中 的窗口位数增大到(16 + S),相当于把窗口值 向左移动 S 位后获得实际的窗口大小。 时间戳选项——占10 字节,其中最主要的字 段时间戳值字段(4 字节)和时间戳回送回答 字段(4 字节)。 选择确认选项——在后面的 5.6.3 节介绍。

课件制作人:谢希仁

位0

8
源 端 口

16

24
目 的 端 口

31

序 号 TCP 首部 确 数据 偏移 保 留 认 号 窗 口 紧 急 指 针

U A P R S F R C S S Y I G K H T N N

20 字节 固定 首部

检 验 和





(长 度 可 变)





填充字段 —— 这是为了使整个首部长度是 4 字节的 整数倍。

5.6 TCP 可靠传输的实现
?

?

TCP 连接的每一端都必须设有两个窗 口——一个发送窗口和一个接收窗口。 TCP 的可靠传输机制用字节的序号进行 控制。TCP 所有的确认都是基于序号而 不是基于报文段。

课件制作人:谢希仁

5.6.1 以字节为单位的滑动窗口
根据 B 给出的窗口值 A 构造出自己的发送窗口
后沿
前移 收缩

前沿
前移

A 的发送窗口 = 20
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

已发送并 收到确认

允许发送的序号

不允许发送

B 期望 收到的序号

TCP 标准强烈不赞成 发送窗口前沿向后收缩
课件制作人:谢希仁

A 发送了 11 个字节的数据
A 的发送窗口位置不变 可用窗口

26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

已发送并 收到确认

已发送但未收到确认

允许发送但尚未发送

不允许发送

P1

P2
B 的接收窗口

P3

26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

已发送确认 并交付主机 未按序收到

允许接收

不允许接收

P3 – P1 = A 的发送窗口(又称为通知窗口) P2 – P1 = 已发送但尚未收到确认的字节数 P3 – P2 = 允许发送但尚未发送的字节数(又称为可用窗口)

A 收到新的确认号,发送窗口向前滑动
A 的发送窗口向前滑动
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

已发送并收到确认 P1

已发送 但未收到确认

允许发送但尚未发送 P2

不允许 发送 P3

B 的接收窗口向前滑动
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

已发送确认 并交付主机 未按序收到

允许接收

不允许 接收

先存下,等待缺少的 数据的到达

A 的发送窗口内的序号都已用完, 但还没有再收到确认,必须停止发送。
A 的发送窗口已满,有效窗口为零
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

已发送并收到确认 P1

已发送但未收到确认

不允许 发送 P2 P3

发送缓存
发送应用程序 TCP

发送缓存 发送窗口

已发送
最后被确认 的字节 最后发送 的字节 序号增大
课件制作人:谢希仁

接收缓存
接收应用程序 TCP 下一个读取 的字节 接收缓存 接收窗口

已收到
下一个期望收到的 字节(确认号) 序号增大
课件制作人:谢希仁

发送缓存与接收缓存的作用
?

发送缓存用来暂时存放:
?

?

发送应用程序传送给发送方 TCP 准备发送 的数据; TCP 已发送出但尚未收到确认的数据。
按序到达的、但尚未被接收应用程序读取 的数据; 不按序到达的数据。
课件制作人:谢希仁

?

接收缓存用来暂时存放:
?

?

需要强调三点
?

?

?

A 的发送窗口并不总是和 B 的接收窗口一样大 (因为有一定的时间滞后)。 TCP 标准没有规定对不按序到达的数据应如何 处理。通常是先临时存放在接收窗口中,等到 字节流中所缺少的字节收到后,再按序交付上 层的应用进程。 TCP 要求接收方必须有累积确认的功能,这样 可以减小传输开销。

课件制作人:谢希仁

?

?

? ? ? ?

讨论 TCP为了提高效率,引入滑动窗口协议 来解决() A.端到端的流量控制 B.整个网络的拥塞控制 C.端到端的流量控制和拥塞控制 D.整个网络的差错控制
课件制作人:谢希仁

?

?

? ? ? ?

讨论 TCP滑动窗口协议中规定重传分组的数 量最多可以() A.是任意的 B.1个 C.大于滑动窗口大小 D.等于滑动窗口大小
课件制作人:谢希仁

5.6.2 超时重传时间的选择
?

?

重传机制是 TCP 中最重要和最复杂的问 题之一。 TCP 每发送一个报文段,就对这个报文 段设置一次计时器。只要计时器设置的 重传时间到但还没有收到确认,就要重 传这一报文段。

课件制作人:谢希仁

加权平均往返时间
? ?

TCP 保留了 RTT 的一个加权平均往返时间 RTTS(这 又称为平滑的往返时间)。 第一次测量到 RTT 样本时,RTTS 值就取为所测量到 的 RTT 样本值。以后每测量到一个新的 RTT 样本, 就按下式重新计算一次 RTTS: (5-4)

新的 RTTS ? (1 ? ?) ? (旧的 RTTS) ? ? ? (新的 RTT 样本)
?

?

式中,0 ? ? ? 1。若 ? 很接近于零,表示 RTT 值更新 较慢。若选择 ? 接近于 1,则表示 RTT 值更新较快。 RFC 2988 推荐的 ? 值为 1/8,即 0.125。
课件制作人:谢希仁

超时重传时间 RTO
(RetransmissionTime-Out)
? ? ? ?

RTO 应略大于上面得出的加权平均往返时间 RTTS。 RFC 2988 建议使用下式计算 RTO: RTO ? RTTS + 4 ? RTTD RTTD 是 RTT 的偏差的加权平均值。 (5-5)

?

RFC 2988 建议这样计算 RTTD。第一次测量时, RTTD 值取为测量到的 RTT 样本值的一半。在以后的 测量中,则使用下式计算加权平均的 RTTD:
+ ? ? ?RTTS ? 新的 RTT 样本? (5-6)

新的 RTTD = (1 ? ?) ? (旧的RTTD)
? 是个小于 1 的系数,其推荐值是 1/4,即 0.25。
课件制作人:谢希仁

?

往返时间的测量相当复杂
?

?

TCP 报文段 1 没有收到确认。重传(即报文 段 2)后,收到了确认报文段 ACK。 如何判定此确认报文段是对原来的报文段 1 的 确认,还是对重传的报文段 2 的确认?
超时重传 TCP 报文段
2 往返时间 RTT? 往返时间 RTT?
课件制作人:谢希仁

发送一个 TCP 报文段
1

是对哪一个报文段 的确认? 收到 ACK 时间

Karn 算法
?

?

在计算平均往返时间 RTT 时,只要报文 段重传了,就不采用其往返时间样本。 这样得出的加权平均平均往返时间 RTTS 和超时重传时间 RTO 就较准确。

课件制作人:谢希仁

修正的 Karn 算法
?

报文段每重传一次,就把 RTO 增大一些: 新的 RTO ? ? ? (旧的 RTO)

? ?

系数 ? 的典型值是 2 。 当不再发生报文段的重传时,才根据报文段的往返 时延更新平均往返时延 RTT 和超时重传时间 RTO 的数值。

?

实践证明,这种策略较为合理。
课件制作人:谢希仁

5.6.3 选择确认 SACK
(Selective ACK)
?

?

接收方收到了和前面的字节流不连续的 两个字节块。 如果这些字节的序号都在接收窗口之内, 那么接收方就先收下这些数据,但要把 这些信息准确地告诉发送方,使发送方 不要再重复发送这些已收到的数据。

课件制作人:谢希仁

接收到的字节流序号不连续
连续的字节流 1



1000



第一个字节块
1501 L1 = 1501



3000



第二个字节块 3501



4500 R1 = 4501

确认号 = 1001

R1 = 3001 L2 = 3501

? 和前后字节不连续的每一个字节块都有两个边界: 左边界和右边界。图中用四个指针标记这些边界。 ? 第一个字节块的左边界 L1 = 1501,但右边界 R1 = 3001。 ? 左边界指出字节块的第一个字节的序号,但右边界减 1 才是 字节块中的最后一个序号。 ? 第二个字节块的左边界 L2 = 3501,而右边界 R2 = 4501。
课件制作人:谢希仁

RFC 2018 的规定
?

?

?

如果要使用选择确认,那么在建立 TCP 连接时,就要 在 TCP 首部的选项中加上“允许 SACK”的选项,而 双方必须都事先商定好。 如果使用选择确认,那么原来首部中的“确认号字段” 的用法仍然不变。只是以后在 TCP 报文段的首部中都 增加了 SACK 选项,以便报告收到的不连续的字节块 的边界。 由于首部选项的长度最多只有 40 字节。需要一个字节 指明是SACK选项,另一个字节指明占多少字节。而指 明一个边界就要用掉 4 字节,因此在选项中最多只能 指明 4 个字节块的边界信息。
课件制作人:谢希仁


推荐相关:

习题答案_CH5-5ed_运输层

习题答案_CH5-5ed_运输层。第五章 传输层 本科作业:5-01、5-03、5-04、...(即只能按序接收分组) , n 当仅在发送窗口不超过 2 -1 时,连接 ARQ 协议...


管理会计quiz 2--ch 4 5 8

管理会计quiz 2--ch 4 5 8_经济学_高等教育_教育专区。管理会计 ...b. Raw materials requisitioned for use in production, Rmb158,000. (...


Advanced Accounting 5th ed ch5 solutions

Advanced Accounting 5th ed ch5 solutions_管理学_高等教育_教育专区。CHAPTER ...000 To eliminate intercompany dividends Exercise 5-11 (continued) (2) ...


Fundamentals of Corporate Finance 3rd ed Jonathan Berk Ch5

Fundamentals of Corporate Finance 3rd ed Jonathan Berk Ch5_经济学_高等教育_...0 1 2 3 360 800,000 C C C 5.25 12 C Execute: 5 1 % APR (...


Dyned business english unit 5~6

Business English Unit 5 Decision Making Sonia Scott Sonia Scott is in ch ...Dynamic Business English Unit 6 This airplane the X-2 is being developed ...


2.自由基聚合

聚合物 自由基聚合 理由 CH2=C(C6H5)2 否 二聚...5.引发剂 (1) 偶氮二异丁腈 (AIBN) 、(2) ...用 kd=Aexp(-Ed/RT) lnkd~1/T 作图,斜率为 ...


孙训方材料力学(I)第五版课后习题答案完整版

A=11.5 cm2 () () 2-5 图示拉杆承受轴...CH ? 0 , N1 ? N 2? 0.5F ? 0.5 ? 20...解:由中性层的曲率公式 及横截面上最大弯曲正应力...


cadence生成网络表时出现如下错误解决办法

Exiting... "D:\Cadence\SPB_16.2\tools\capture...ch aracters in Package XC3S1400A-4FG676-C_0FF...Disp/U17/3 Nets: '3V3' and '485_RE/DE'. ...


天然药物化学试题及答案

CH2 OH O 5. N Me COOMe OOCC6H5 六、用化学...( ) n-BuOH 萃取 水层 正丁醇层( ) 九、结构...5.Labat 反应 A (+) B (-) C (-); Edmeson...

网站首页 | 网站地图
All rights reserved Powered by 简单学习网 www.tceic.com
copyright ©right 2010-2021。
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@126.com