Microsoft PowerPoint - 第三章v6.ppt [兼容模式]

Size: px
Start display at page:

Download "Microsoft PowerPoint - 第三章v6.ppt [兼容模式]"

Transcription

1 第三章传输层 注 : 本 PPT 来源于下面的资料, 并有所修改 All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Transport Layer 3-1

2 第三章传输层 教学目的和要求 : 理解传输层原理 : 多路复用 可靠数据传输 流控制 拥塞控制 掌握因特网传输层协议 : UDP: 无连接的不可靠传输协议 TCP: 面向连接的可靠传输协议 TCP 拥塞控制机制 Transport Layer 3-2

3 基本内容 3.1 传输层服务概念 3.2 多路复用 3.3 UDP 协议 3.4 可靠传输原理 3.5 TCP 协议 segment 结构 可靠传输 流控制 连接管理 3.6 拥塞控制原理 3.7 TCP 拥塞控制机制 Transport Layer 3-3

4 3.1 传输层服务和协议 provide logical communication between app processes running on different hosts transport protocols run in end systems ( 端到端协议 ) send side: breaks app messages into segments, passes to network layer rcv side: reassembles segments into messages, passes to app layer more than one transport protocol available to apps Internet: TCP and UDP application transport network data link physical application transport network data link physical Transport Layer 3-4

5 传输层与网络层的区别 network layer: logical communication between hosts transport layer: logical communication between processes relies on, enhances, network layer services 12 kids in Ann s house sending letters to 12 kids in Bill s house: hosts = houses processes = kids app messages = letters in household analogy: envelopes transport protocol = Ann and Bill who demux to inhouse siblings network-layer protocol = postal service Transport Layer 3-5

6 因特网传输层协议 reliable, in-order delivery (TCP) congestion control flow control connection setup unreliable, unordered delivery: UDP no-frills extension of best-effort IP services not available: delay guarantees bandwidth guarantees application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical Transport Layer 3-6

7 3.2 多路复用 / 分解技术 multiplexing at sender: handle data from multiple sockets, add transport header (later used for demultiplexing) demultiplexing at receiver: use header info to deliver received segments to correct socket application application P3 transport network link P1 P2 transport network link physical application P4 transport network link socket process physical physical 复用 : 从套接字中收集到数据并封装成传输层的 SEGMENT 分解 : 将传输层 SEGMENT 定向到适当的套接字 Transport Layer 3-7

8 如何多路分解 host receives IP datagrams each datagram has source IP address, destination IP address each datagram carries one transport-layer segment each segment has source, destination port number host uses IP addresses & port numbers to direct segment to appropriate socket 32 bits source port # dest port # other header fields application data (payload) TCP/UDP segment format Transport Layer 3-8

9 无连接多路分解 : UDP 使用目的主机和端口号二元组定向的套接字 recall: created socket has host-local port #: DatagramSocket mysocket1 = new DatagramSocket(12534); recall: when creating datagram to send into UDP socket, must specify destination IP address destination port # when host receives UDP segment: checks destination port # in segment directs UDP segment to socket with that port # IP datagrams with same dest. port #, but different source IP addresses and/or source port numbers will be directed to same socket at dest Transport Layer 3-9

10 UDP 举例 (java) DatagramSocket mysocket2 = new DatagramSocket (9157); application P3 transport network link physical DatagramSocket serversocket = new DatagramSocket (6428); application P1 transport network link physical DatagramSocket mysocket1 = new DatagramSocket (5775); application P4 transport network link physical source port: 6428 dest port: 9157 source port:? dest port:? source port: 9157 dest port: 6428 source port:? dest port:? Transport Layer 3-10

11 面向连接的多路分解 :TCP 采用源目 IP 地址和端口号四元组定向套接字 TCP socket identified by 4-tuple: source IP address source port number dest IP address dest port number demux: receiver uses all four values to direct segment to appropriate socket server host may support many simultaneous TCP sockets: each socket identified by its own 4-tuple web servers have different sockets for each connecting client non-persistent HTTP will have different socket for each request Transport Layer 3-11

12 TCP 举例 : application application P3 transport network link physical P4 P5 transport network link physical P6 server: IP address B application P2 P3 transport network link physical host: IP address A source IP,port: B,80 dest IP,port: A,9157 source IP,port: C,5775 dest IP,port: B,80 host: IP address C source IP,port: A,9157 dest IP, port: B,80 three segments, all destined to IP address: B, dest port: 80 are demultiplexed to different sockets source IP,port: C,9157 dest IP,port: B,80 Transport Layer 3-12

13 TCP 举例 线程服务器 : 一个进程对应多个套接字减少建立进程的开销 threaded server application application P3 transport network link physical P4 transport network link physical server: IP address B application P2 P3 transport network link physical host: IP address A source IP,port: B,80 dest IP,port: A,9157 source IP,port: C,5775 dest IP,port: B,80 host: IP address C source IP,port: A,9157 dest IP, port: B,80 source IP,port: C,9157 dest IP,port: B,80 Transport Layer 3-13

14 3.3 UDP: User Datagram Protocol no frills, bare bones Internet transport protocol best effort service, UDP segments may be: lost delivered out-of-order to app connectionless: no handshaking 握手 between UDP sender, receiver each UDP segment handled independently of others UDP use: streaming multimedia( 流媒体 )apps (loss tolerant, rate sensitive) DNS SNMP reliable transfer over UDP: add reliability at application layer application-specific error recovery! Transport Layer 3-14

15 UDP: segment 格式 32 bits source port # dest port # length application data (payload) checksum UDP segment format length, in bytes of UDP segment, including header why is there a UDP? no connection establishment (which can add delay) simple: no connection state at sender, receiver small header size no congestion control: UDP can blast away as fast as desired Transport Layer 3-15

16 UDP checksum Goal: detect errors (e.g., flipped bits) in transmitted segment sender: treat segment contents, including header fields, as sequence of 16-bit integers checksum: addition (one s complement sum) of segment contents sender puts checksum value into UDP checksum field receiver: compute checksum of received segment check if computed checksum equals checksum field value: NO - error detected YES - no error detected. But maybe errors nonetheless? More later. Transport Layer 3-16

17 校验和举例 :( 模 2 补码 ) example: add two 16-bit integers wraparound sum checksum Note: when adding numbers, a carryout from the most significant bit needs to be added to the result Transport Layer 3-17

18 3.4 可靠传输原理 important in application, transport, link layers top-10 list of important networking topics! characteristics of unreliable channel will determine complexity of reliable data transfer protocol (rdt) Transport Layer 3-18

19 可靠传输原理 important in application, transport, link layers top-10 list of important networking topics! characteristics of unreliable channel will determine complexity of reliable data transfer protocol (rdt) Transport Layer 3-19

20 可靠传输原理 important in application, transport, link layers top-10 list of important networking topics! characteristics of unreliable channel will determine complexity of reliable data transfer protocol (rdt) Transport Layer 3-20

21 3.4.1 可靠传输协议和算法 rdt_send(): called from above, (e.g., by app.). Passed data to deliver to receiver upper layer deliver_data(): called by rdt to deliver data to upper send side receive side udt_send(): called by rdt, to transfer packet over unreliable channel to receiver rdt_rcv(): called when packet arrives on rcv-side of channel Transport Layer 3-21

22 we ll: incrementally develop sender, receiver sides of reliable data transfer protocol (rdt) consider only unidirectional data transfer but control info will flow on both directions!( 半双工 ) use finite state machines (FSM) to specify sender, receiver state: when in this state next state uniquely determined by next event state 1 event causing state transition actions taken on state transition event actions state 2 Transport Layer 3-22

23 rdt1.0: 可靠信道上的传输协议 假设信道完全可靠 无位错 不丢包 有序 发送方和接收方分别用一个 FSM 状态描述 : 发送方向信道发送分组 ( 上层调用 ) 接收方从信道读取分组 ( 下层调用 ) Wait for call from above rdt_send(data) packet = make_pkt(data) udt_send(packet) Wait for call from below rdt_rcv(packet) extract (packet,data) deliver_data(data) sender receiver Transport Layer 3-23

24 Sender: While ( true ) do { Wait_Event( ); GetMsgFromApp(data); packet=make_pkt(data); udt_send (packet); Receiver: While ( true ) do { Wait_event( ); GetpktFromNet( packet); data=extract (packet); deliver_data(data); } }

25 rdt2.0: 只有位错误的可靠传输协议 假设 : 分组可能出现位错 ( 其余条件和 1.0 一致 ) 问题 : 1 如何发现错误? 校验和 检错 2 如何从错误中恢复? 人在对话时候出现的情况? 回答 : OK 或者 说什么? 请重复一遍 前者 : 确认 ; 后者否定且要求重复

26 rdt2.0: 只有位错误的可靠传输协议 假设 : 分组可能出现位错 ( 其余条件和 1.0 一致 ) 分组中采用校验和检测位错 问题 : 如何从错误中恢复? 肯定应答 (ACKs): 接收方明确告诉发送方正确收到分组 否定应答 (NAKs): 接收方明确告诉发送方收到的分组有错误 发送方收到 NAK, 重传分组 ARQ 实现方法 : 错误检测 接收方反馈控制消息 (ACK,NAK) rcvr->sender ARQ( 自动重传请求机制 ): 包括检错 接收方反馈 (ACK,NAK) 和重传等级机制 Transport Layer 3-26

27 rdt2.0: FSM 状态转换图 rdt_send(data) sndpkt = make_pkt(data, checksum) udt_send(sndpkt) Wait for call from above rdt_rcv(rcvpkt) && isack(rcvpkt) Λ sender Wait for ACK or NAK 发送方 2 个状态, 接收方 1 个状态. rdt_rcv(rcvpkt) && isnak(rcvpkt) udt_send(sndpkt) receiver rdt_rcv(rcvpkt) && corrupt(rcvpkt) udt_send(nak) Wait for call from below rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) extract(rcvpkt,data) deliver_data(data) udt_send(ack) Transport Layer 3-27

28 rdt2.0 操作示意图 rdt_send(data) snkpkt = make_pkt(data, checksum) udt_send(sndpkt) Wait for call from above rdt_rcv(rcvpkt) && isack(rcvpkt) Λ Wait for ACK or NAK rdt_rcv(rcvpkt) && isnak(rcvpkt) udt_send(sndpkt) rdt_rcv(rcvpkt) && corrupt(rcvpkt) udt_send(nak) Wait for call from below rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) extract(rcvpkt,data) deliver_data(data) udt_send(ack) Transport Layer 3-28

29 rdt2.0: 位出错场景 rdt_send(data) snkpkt = make_pkt(data, checksum) udt_send(sndpkt) Wait for call from above rdt_rcv(rcvpkt) && isack(rcvpkt) Λ Wait for ACK or NAK rdt_rcv(rcvpkt) && isnak(rcvpkt) udt_send(sndpkt) rdt_rcv(rcvpkt) && corrupt(rcvpkt) udt_send(nak) Wait for call from below 注意 : 出错时候的重发的分组是原来的分组! rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) extract(rcvpkt,data) deliver_data(data) udt_send(ack) Transport Layer 3-29

30 RDT 2.0 举例 SENDER PKT0 RECEIVER ACK PKT1 PKT1 X NAK ACK

31 Rdt2.0 伪代码 Sender: While ( true ) do { Wait_event(); case rdt_send(): { GetMsgFromApp(data); sndpkt=make_pkt(data,checksum); udt_send (sndpkt); } case rcv_pkt(): { if (NAK) udt_send (sndpkt);} } Receiver: While ( true ) do { Wait_event(); if (NO_ERROR) { GetpktFromNet( sndpkt); data=extract (sndpkt); deliver_data(data); udt_send (ACK); } else udt_send (NAK); }

32 RDT 2.0 存在的问题 SENDER PKT0 RECEIVER ACK PKT1 X NAK PKT1 x ACK??? 只能处理分组出现错误的情况, 不能处理应答消息出现错误!

33 rdt2.0 存在的问题 若 ACK/NAK 出错, 会出现什么情况? 发送方不清楚接收方是否正确接收分组 单重发分组可能导致接收方有重复的分组 处理重复分组 : 如果 ACK/NAK 出错, 发送方重传分组每个分组编制序号接收方依据接收分组序号识别重复分组, 不提交重复的分组给上层 stop and wait 发送方发送一个分组, 然后等待接收方应答 停等协议和流水线协议区别! Transport Layer 3-33

34 rdt2.1: 处理数据和控制消息出错的协议 sender: 给分组编制序号 (sequence number) 停等协议只需 1 位序号 receiver: 需要检测分组是否重复 ( 检测序号 ) 所在状态表示下一个期待接收的序号, 因此需要 2 个转态 需要检测 ACK/NAK 是否出错 ( 校验码 ) 四个转态 对应发送和等待两种转态, 需要区别序号 0 和 1, 组合数为 4 注意 : 接收者并不知道上次发送的 ACK/NAK, 在发送方是否正确接收 Transport Layer 3-34

35 rdt2.1: Sender rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt) Λ rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) isnak(rcvpkt) ) udt_send(sndpkt) rdt_send(data) sndpkt = make_pkt(0, data, checksum) udt_send(sndpkt) Wait for call 0 from above Wait for ACK or NAK rdt_send(data) Wait for ACK or NAK 0 Wait for call 1 from above rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) isnak(rcvpkt) ) udt_send(sndpkt) rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt) sndpkt = make_pkt(1, data, checksum) udt_send(sndpkt) Λ 分组出错或者收到 NAK 重传 C F 正确收到 ACK 状态转移 发送序号为 1 的分组 Transport Layer 3-35

36 rdt2.1: Receiver rdt_rcv(rcvpkt) && (corrupt(rcvpkt) sndpkt = make_pkt(nak, chksum) udt_send(sndpkt) rdt_rcv(rcvpkt) && not corrupt(rcvpkt) && has_seq1(rcvpkt) sndpkt = make_pkt(ack, chksum) udt_send(sndpkt) rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq0(rcvpkt) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(ack, chksum) udt_send(sndpkt) Wait for 0 from below 0 1 Wait for 1 from below rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq1(rcvpkt) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(ack, chksum) udt_send(sndpkt) 正确接收序号为 0 的分组, 递交上层,, 送 ACK, 转到状态 1 接收的分组出错, 送 NAK rdt_rcv(rcvpkt) && (corrupt(rcvpkt) sndpkt = make_pkt(nak, chksum) udt_send(sndpkt) rdt_rcv(rcvpkt) && not corrupt(rcvpkt) && has_seq0(rcvpkt) sndpkt = make_pkt(ack, chksum) udt_send(sndpkt) 接收的是重复分组, 发送 ACK Transport Layer 3-36

37 RDT 2.1 举例 SENDER 00 态, 发送 PKT0 后, 转 01 态 01 态收到不能辨识的 ACK, 重发 PKT 0, 仍在 01 态 01 态收到 ACK, 转 10 态. 发送 PKT1, 转 11 态... PKT0 PKT0 PKT1 ACK X ACK x NAK RECEIVER 0 态, 接收 PKT0, 并递交上层, 送 ACK, 转 1 态 1 态收到重复的 PKT0, 不提交上层, 送 ACK, 仍然在 1 态 1 态收到出错的 PKT1, 送 NAK, 仍然在 1 态 结合转态图, 设计场景, 构造 FSM 所有可能的转态转换

38 rdt2.2 不采用 NAK 的协议 same functionality as rdt2.1, using ACKs only instead of NAK, receiver sends ACK for last pkt received OK receiver must explicitly include seq # of pkt being ACKed ( ACK 编制序号 ) duplicate ACK at sender results in same action as NAK: retransmit current pkt 课后作业 Transport Layer 3-38

39 rdt2.2: sender, receiver fragments rdt_rcv(rcvpkt) && (corrupt(rcvpkt) has_seq1(rcvpkt)) udt_send(sndpkt) rdt_send(data) sndpkt = make_pkt(0, data, checksum) udt_send(sndpkt) Wait for call 0 from above Wait for 0 from below sender FSM fragment receiver FSM fragment Wait for ACK 0 rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,1) ) udt_send(sndpkt) rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,0) Λ rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq1(rcvpkt) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(ack1, chksum) udt_send(sndpkt) Transport Layer 3-39

40 rdt3.0: 处理信道有错和丢包的协议 假设 : 信道有错 丢包, 无序 校验和检错,ACK 应答决定重发, 序号判定是否重复分组 问题 : 1 如何检测丢包? 2 何时重发丢失分组? 方法 : 发送分组后等待时间 T 发送方若 T 时间内没有收到 ACK(timeout: 超时 ), 重发分组 发送方如果 T 时间后又收到超时对应的分组 ACK, 说明接收方存在重复分组, 可通过序号判定是否重复 接收方必须说明应答 (ACK n) 对应的分组序号 需要定时器记录分组发送后的时间 Transport Layer 3-40

41 rdt3.0 sender 上层调用发送 出错或序号不对? rdt_rcv(rcvpkt) Λ Wait for call 0from above rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,1) stop_timer timeout udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,0) ) Λ Wait for ACK1 rdt_send(data) sndpkt = make_pkt(0, data, checksum) udt_send(sndpkt) start_timer Wait for ACK0 Wait for call 1 from above rdt_send(data) sndpkt = make_pkt(1, data, checksum) udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,1) ) Λ timeout udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,0) stop_timer rdt_rcv(rcvpkt) Λ 超时重传 Transport Layer 3-41

42 rdt3.0 receiver 参考 rdt 2.2, 课后作业.

43 rdt3.0 举例 sender receiver sender receiver send pkt0 rcv ack0 send pkt1 rcv ack1 send pkt0 pkt0 ack0 pkt1 ack1 pkt0 ack0 (a) no loss rcv pkt0 send ack0 rcv pkt1 send ack1 rcv pkt0 send ack0 send pkt0 rcv ack0 send pkt1 timeout resend pkt1 rcv ack1 send pkt0 pkt0 ack0 pkt1 X loss pkt1 ack1 pkt0 ack0 rcv pkt0 send ack0 rcv pkt1 send ack1 rcv pkt0 send ack0 (b) packet loss Transport Layer 3-43

44 rdt3.0 举例 sender send pkt0 rcv ack0 send pkt1 timeout resend pkt1 rcv ack1 send pkt0 pkt0 ack0 pkt1 ack1 X loss pkt1 ack1 pkt0 ack0 receiver rcv pkt0 send ack0 rcv pkt1 send ack1 rcv pkt1 (detect duplicate) send ack1 rcv pkt0 send ack0 sender send pkt0 rcv ack0 send pkt1 timeout resend pkt1 rcv ack1 send pkt0 rcv ack1 send pkt0 pkt0 ack0 pkt1 ack1 pkt1 pkt0 ack1 ack0 pkt0 ack0 receiver rcv pkt0 send ack0 rcv pkt1 send ack1 rcv pkt1 (detect duplicate) send ack1 rcv pkt0 send ack0 rcv pkt0 (detect duplicate) send ack0 (c) ACK loss (d) premature timeout/ delayed ACK Transport Layer 3-44

45 rdt3.0 举例 sender receiver 为什么发送方在等待上层调用状态 (00 或者 10), 收到接收方应答消息后, 什么动作都不做? 00 态 :send pkt0, 转 01 态 01 态 :rcv ack0, 停止计时, 转 10 态, 送 pkt1. 计时, 转 11 态 11 态超时, 重发 pkt1 timeout 11 态接收 ack1, 转 00 态 pkt0 ack0 pkt1 ack1 pkt1 ack1 rcv pkt0 send ack0 rcv pkt1 send ack1 rcv pkt1 (detect duplicate) 所在转态不同接收消息后的动作可能不同! 需要结合状态分析转移动作 00 态, 接收 ack1, 什么也不做 Transport Layer 3-45

46 rdt3.0 ( 停等协议 ) 的性能 rdt3.0 is correct, but performance stinks e.g.: 1 Gbps link, 15 ms prop. delay, 8000 bits packet: D trans = L R 8000 bits = 10 9 = 8 microsecs bits/sec U sender : 利用率 发送方用于分组传输的时间比例 U sender = L / R RTT + L / R = = if RTT=30 msec, 1KB pkt every 30 msec: 33kB/sec thruput over 1 Gbps link 停等协议限制了物理资源的使用! Transport Layer 3-46

47 停等协议的性能 first packet bit transmitted, t = 0 last packet bit transmitted, t = L / R sender receiver RTT first packet bit arrives last packet bit arrives, send ACK ACK arrives, send next packet, t = RTT + L / R U sender = L / R RTT + L / R = = Transport Layer 3-47

48 3.4.2 流水线 (pipeline) 协议 pipelining: 允许发送方不等待应答, 连续发送 N 个分组 需要扩大分组序号范围 在发送方和接收方需要缓存分组 两种流水线协议 : go-back-n, selective repeat Transport Layer 3-48

49 流水线协议提高性能 first packet bit transmitted, t = 0 last bit transmitted, t = L / R sender receiver RTT ACK arrives, send next packet, t = RTT + L / R first packet bit arrives last packet bit arrives, send ACK last bit of 2 nd packet arrives, send ACK last bit of 3 rd packet arrives, send ACK 3-packet pipelining increases utilization by a factor of 3! U sender = 3L / R RTT + L / R = = Transport Layer 3-49

50 流水线协议 : 概述 Go-back-N: 发送方可以连续发送 N 个未被应答的分组 Selective Repeat: 发送方可以连续发送 N 个未被应答的分组 接收方只发送累计 ACK (cumulative ack) 接收方对每一个分组发送独立的 ACK 不缓存和递交失序分组 缓存失序的分组, 但不递交 发送方对未被应答的最早分组计时 ( 定时 ) 发送方对每一个未被应答的分组计时 ( 定时 ) 定时器溢出时, 需要重传所有未被应答的分组 定时器超时, 只重传对应的一个分组 Transport Layer 3-50

51 3.4.3 Go-Back-N: 滑动窗口协议 发送方采用流水线方式, 接收方只接受有序的分组 举例 : 可以发送多个缆车, 但只接收有序的缆车 发送方需 N 个缓存, 缓存 N 个已发送但未被应答的分组, 也就是发送窗的大小 若超时, 发送方重传所有未被应答分组 接收方只接收正确和有序的分组, 不需提供接收缓存 接收方收到分组 ( 无论错误与否 ), 只应答已经接收分组中的最高序号 ACK 优点 : 接收方处理简单 缺点 : 一个分组出错或者丢掉, 必须重传多个分组

52 Go-Back-N: 发送方滑动窗口协议 分组头中设置 K 位序号 发送窗 允许多达 N 个序号连续的可发送的分组 ACK(n): 累计 ACK, 应答包括序号 n 在内的所有未被应答的分组 发送方可能接收到重复的 ACK 对最早发送的分组定时 timeout(n): 定时器超时, 重传序号 n 在内的所有未被应答的分组 Base: 窗口中最早发送且未被应答的分组 Nextsequence: 窗口中未发送分组的最小序号 Transport Layer 3-52

53 Go-Back-N: 发送方处理事件 初始化 : 基序号 base 和下一个待发送的序号 nextseqnum 发送分组 : 若窗口已满, 拒绝发送 ; 如果序号为基序号, 需要定时 收到的应答出错 : 忽略, 不做事情 收到正确的应答 : 获取应答序号 X, 表示序号小于等于 X 的分组都已正确接收, 将这些分组移出窗口,BASE=X+1 如果窗口非空, 启动新的定时器 超时 : 重传所有未被应答的分组

54 Go-Back-N: 接收方处理事件 初始化 : 期待接收分组的序号 (expectedseqnum) 接收序号正确的分组 : 递交, 发送 ACK(expectedseqnum), expectedseqnum++ 接收到失序或者错误的分组 : 废弃 ( 不保存 ), 发送 ACK(expectedseqnum), 表示期望收到分组的序号是 expectedseqnum+1 不保存失序的分组, 保持 expectedseqnum 变量

55 GBN: 发送方扩展 FSM rdt_send(data) Λ base=0 nextseqnum=0 rdt_rcv(rcvpkt) && corrupt(rcvpkt) 收到的 ACK 出错 if (nextseqnum < base+n) { sndpkt[nextseqnum] = make_pkt(nextseqnum,data,chksum) udt_send(sndpkt[nextseqnum]) if (base == nextseqnum) start_timer 是否属于基序号 nextseqnum++ } else refuse_data(data) Wait rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) base = getacknum(rcvpkt)+1 If (base == nextseqnum) stop_timer else start_timer timeout start_timer udt_send(sndpkt[base]) udt_send(sndpkt[base+1]) udt_send(sndpkt[nextseqnum-1]) 重传所有未应答的分组 获取累计应答序号 窗口中没有未被应答的分组 Transport Layer 3-55

56 GBN: 接收方扩展 FSM 接收的其他情况处理 Λ default udt_send(sndpkt) Wait expectedseqnum=0 sndpkt = make_pkt(expectedseqnum,ack,chksum) 接收序号正确分组 rdt_rcv(rcvpkt) && notcurrupt(rcvpkt) && hasseqnum(rcvpkt,expectedseqnum) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(expectedseqnum,ack,chksum) udt_send(sndpkt) expectedseqnum++ ACK-only: 对于接收的分组 ( 无论出错与否 ) 都是发送目前正确收到分组中的最高序号 ACK 因此在发送方可能出现重复的 ACK 接收方只需要记住 expectedseqnum 对于收到的失序分组处理 : 废弃 ( 不缓存 ): 没有接收缓存区! 发送目前正确收到分组中的最高序号 ACK Transport Layer 3-56

57 GBN 举例 sender window (N=4) sender send pkt0 send pkt1 send pkt2 send pkt3 (wait) rcv ack0, send pkt4 rcv ack1, send pkt5 ignore duplicate ACK pkt 2 timeout send pkt2 send pkt3 send pkt4 send pkt5 Xloss receiver receive pkt0, send ack0 receive pkt1, send ack1 receive pkt3, discard, (re)send ack1 receive pkt4, discard, (re)send ack1 receive pkt5, discard, (re)send ack1 rcv pkt2, deliver, send ack2 rcv pkt3, deliver, send ack3 rcv pkt4, deliver, send ack4 rcv pkt5, deliver, send ack5 Transport Layer 3-57

58 3.4.4 选择重传 ( Selective repeat ) 接收方对失序分组缓存, 不提交 发送方按需重传丢失和出错的分组 接收方对接收的无错分组 ( 无论是否有序 ) 分别发送 ACK 缓存失序分组, 当失序分组都达到之后, 再有序提交 发送方只需重传没有 ACK 应答的分组 需要对每一个发送的分组定时 发送窗口 : N 个连续序号的分组 限制发送和未应答的分组 Transport Layer 3-58

59 选择重传 : 发送和接收窗口 rcv_base: 指向 X+1, 其中 X 是目前正确有序接收的序号 Transport Layer 3-59

60 选择重传算法 上层有消息发送 : 如果下一个要发送的分组序号属于窗口内, 发送该分组 timeout(n): 重传序号为 n 的分组, 重新启动定时器 ACK(n): 若序号对应的分组属于 [sendbase,sendbase+n]: 标记分组 n 为已接收如果分组 n 是最小序号的未应答分组, 移动基序号到下一个最小未应答分组位置 sender 无误接收分组 pkt n 属于 [rcvbase, rcvbase+n-1] receiver 发送 ACK(n) 是失序分组 : 缓存 是当前期待接受的有序分组 : 提交包括缓存区在内所有有序分组, 移动基序号到下一个失序的分组 无误接收分组 pkt n 属于 [rcvbase-n,rcvbase-1] ACK(n) Q?? 其他事件 ( 分组出错 ): 忽略 ( 不做动作 ) Transport Layer 3-60

61 选择重传举例 sender window (N=4) 收到 ACK2 sender send pkt0 send pkt1 send pkt2 send pkt3 (wait) rcv ack0, send pkt4 rcv ack1, send pkt5 record ack3 arrived pkt 2 timeout send pkt2 record ack4 arrived record ack5 arrived Xloss Q1: what happens when ack2 arrives? A1: 移动基序号指向 6 号分组 Q2: what happens if ack2 lost? A2: 会出现接收方重复收到 PKT2 情况, 接收方必须再次回送 ACK2, 使得发送窗口移动! receiver receive pkt0, send ack0 receive pkt1, send ack1 receive pkt3, buffer, send ack3 receive pkt4, buffer, send ack4 receive pkt5, buffer, send ack5 rcv pkt2; deliver pkt2, pkt3, pkt4, pkt5; send ack2 rcv_base 接收窗口 Transport Layer 3-61

62 思考 : 1 接收方至少要有多少 BUFFER? 2 接收方收到分组的序号可能在一个什么范围? 3 序号大小 ( 循环使用 ) 和窗口大小存在什么关系?

63 选择重传 : 序号和窗口大小关系 ( 序号可能需要重复使用 ) example: 序号为 0,1,2,3 窗口大小为 3 右边两种情况下接收方认为没有区别! (b) 图中, 接收方将重复分组识别为新的分组 Q: 怎样才能避免出现 (b) 中的错误? A: N<=(maxseq+1)/2 sender window (after receipt) pkt0 pkt1 pkt2 X X timeout retransmit pkt0 X pkt0 (b) oops! pkt0 pkt1 pkt pkt3 (a) no problem pkt0 X receiver window (after receipt) will accept packet with seq number 0 receiver can t see sender side. receiver behavior identical in both cases! something s (very) wrong! will accept packet with seq number 0 Transport Layer 3-63

64 3.5 TCP 协议 概述 point-to-point: one sender, one receiver reliable, in-order byte steam: no message boundaries pipelined: TCP congestion and flow control set window size full duplex data: bi-directional data flow in same connection MSS: maximum segment size connection-oriented: handshaking (exchange of control msgs) inits sender, receiver state before data exchange flow controlled: sender will not overwhelm receiver Transport Layer 3-64

65 3.5.2 TCP segment structure URG: urgent data (generally not used) ACK: ACK # valid PSH: push data now (generally not used) RST, SYN, FIN: connection estab (setup, teardown commands) Internet checksum (as in UDP) 32 bits source port # dest port # head len sequence number acknowledgement number not used UAP R S F checksum receive window application data (variable length) Urg data pointer options (variable length) counting by bytes of data (not segments!) # bytes rcvr willing to accept 流控制 Transport Layer 3-65

66 TCP 分组序号和应答序号 sequence numbers: byte stream number of first byte in segment s data acknowledgements: seq # of next byte expected from other side cumulative ACK Q: how receiver handles out-of-order segments A: TCP spec doesn t say, outgoing segment from sender source port # dest port # sequence number acknowledgement number rwnd checksum urg pointer sent ACKed window size N sender sequence number space sent, notyet ACKed ( inflight ) usable but not yet sent incoming segment to sender - up to implementor source port # dest port # sequence number not usable acknowledgement number A rwnd checksum urg pointer Transport Layer 3-66

67 TCP 分组序号和应答序号 Host A Host B User types C host ACKs receipt of echoed C Seq=42, ACK=79, data = C Seq=79, ACK=43, data = C Seq=43, ACK=80 host ACKs receipt of C, echoes back C simple telnet scenario Transport Layer 3-67

68 3.5.3 TCP 超时区间 Q: how to set TCP timeout value? longer than RTT but RTT varies too short: premature timeout, unnecessary retransmissions too long: slow reaction to segment loss Q: how to estimate RTT? SampleRTT: measured time from segment transmission until ACK receipt ignore retransmissions SampleRTT will vary, want estimated RTT smoother average several recent measurements, not just current SampleRTT Transport Layer 3-68

69 TCP RTT 评估 EstimatedRTT = (1- α)*estimatedrtt + α*samplertt exponential weighted moving average influence of past sample decreases exponentially fast typical value: α = RTT: gaia.cs.umass.edu to fantasia.eurecom.fr 350 RTT: gaia.cs.umass.edu to fantasia.eurecom.fr RTT (milliseconds) RTT (milliseconds) samplertt EstimatedRTT time (seconnds) time (seconds) SampleRTT Estimated RTT Transport Layer 3-69

70 timeout interval: EstimatedRTT plus safety margin large variation in EstimatedRTT -> larger safety margin TCP RTT 评估 estimate SampleRTT deviation from EstimatedRTT: DevRTT = (1-β)*DevRTT + β* SampleRTT-EstimatedRTT (typically, β = 0.25) TimeoutInterval = EstimatedRTT + 4*DevRTT estimated RTT safety margin Transport Layer 3-70

71 3.5.4 TCP 可靠传输 TCP creates rdt service on top of IP s unreliable service pipelined segments cumulative acks single retransmission timer retransmissions triggered by: timeout events duplicate acks let s initially consider simplified TCP sender: ignore duplicate acks ignore flow control, congestion control Transport Layer 3-71

72 TCP sender events: E1 : 收到来自应用层的数据 封装成 SEGEMEN, 加上序号等头信息 序号等于 SEGEMENT 中第一个字节的顺序数 启动定时器 可以认为定时器对应的是最小序号未应答的 SEGMENT 超时区间 : TimeOutInterval E2:timeout: 重传引起超时的 SEGMENT 重新计时 E3: 收到 ACK 如果是应答未被应答 SEGMENT 的 ACK: 更新操作 如果还有未被应答的 SEGMENT, 重新定时 Transport Layer 3-72

73 TCP 发送方 ( 简化 ) Λ NextSeqNum = InitialSeqNum SendBase = InitialSeqNum wait for event ACK received, with ACK field value y data received from application above create segment, seq. #: NextSeqNum pass segment to IP (i.e., send ) NextSeqNum = NextSeqNum + length(data) if (timer currently not running) start timer timeout retransmit not-yet-acked segment with smallest seq. # start timer if (y > SendBase) { SendBase = y /* SendBase 1: last cumulatively ACKed byte */ if (there are currently not-yet-acked segments) start timer else stop timer } Transport Layer 3-73

74 TCP: 重传例 1 和例 2 Host A Host B Host A Host B Seq=92, 8 bytes of data SendBase=92 Seq=92, 8 bytes of data timeout X ACK=100 timeout Seq=100, 20 bytes of data ACK=100 ACK=120 Seq=92, 8 bytes of data ACK=100 lost ACK scenario SendBase=100 SendBase=120 SendBase=120 Seq=92, 8 bytes of data ACK=120 premature timeout Transport Layer 3-74

75 TCP: 例 3 Host A Host B Seq=92, 8 bytes of data Seq=100, 20 bytes of data timeout X ACK=100 ACK=120 Seq=120, 15 bytes of data cumulative ACK Transport Layer 3-75

76 TCP 接收方 [RFC 1122, RFC 2581] event at receiver arrival of in-order segment with expected seq #. All data up to expected seq # already ACKed arrival of in-order segment with expected seq #. One other segment has ACK pending arrival of out-of-order segment higher-than-expect seq. #. Gap detected arrival of segment that partially or completely fills gap TCP receiver action delayed ACK. Wait up to 500ms for next segment. If no next segment, send ACK immediately send single cumulative ACK, ACKing both in-order segments ( 见前例 3) immediately send duplicate ACK, indicating seq. # of next expected byte immediate send ACK, provided that segment starts at lower end of gap Transport Layer 3-76

77 TCP 快速重传 time-out period often relatively long: long delay before resending lost packet detect lost segments via duplicate ACKs. sender often sends many segments backto-back if segment is lost, there will likely be many duplicate ACKs. TCP fast retransmit if sender receives 3 ACKs for same data resend unacked segment with smallest seq # likely that unacked segment lost, so don t wait for timeout Transport Layer 3-77

78 TCP 快速重传举例 Host A Host B Seq=92, 8 bytes of data Seq=100, 20 bytes of data X timeout ACK=100 ACK=100 ACK=100 ACK=100 Seq=100, 20 bytes of data fast retransmit after sender receipt of triple duplicate ACK Transport Layer 3-78

79 TCP 流控制 application may remove data from TCP socket buffers. slower than TCP receiver is delivering (sender is sending) application process TCP socket receiver buffers TCP code application OS flow control 接收方通过发送消息给发送方控制其速度 避免发送速度太快导致其接收缓冲区溢出 from sender IP code receiver protocol stack Transport Layer 3-79

80 TCP 流控制 receiver advertises free buffer space by including rwnd value in TCP header of receiver-to-sender segments RcvBuffer size set via socket options (typical default is 4096 bytes) many operating systems autoadjust RcvBuffer sender limits amount of unacked ( in-flight ) data to receiver s rwnd value guarantees receive buffer will not overflow RcvBuffer rwnd to application process buffered data free buffer space TCP segment payloads receiver-side buffering Q: 如果 B 告知 Arwnd=0 后,B 又清空了缓冲区, 如何让 A 及时知晓? Transport Layer 3-80

81 TCP 连接管理 before exchanging data, sender/receiver handshake : agree to establish connection (each knowing the other willing to establish connection) agree on connection parameters application connection state: ESTAB connection variables: seq # client-to-server server-to-client rcvbuffer size at server,client network application connection state: ESTAB connection Variables: seq # client-to-server server-to-client rcvbuffer size at server,client network Socket clientsocket = newsocket("hostname","port number"); Socket connectionsocket = welcomesocket.accept(); Transport Layer 3-81

82 TCP 连接建立 2-way handshake: Let s talk ESTAB OK choose x req_conn(x) ESTAB acc_conn(x) ESTAB ESTAB Q: will 2-way handshake always work in network? variable delays retransmitted messages (e.g. req_conn(x)) due to message loss message reordering can t see other side 思考 : 为什么要进行三次而不是二次握手? Transport Layer 3-82

83 建立连接 2-way handshake failure scenarios: choose x retransmit req_conn(x) req_conn(x) acc_conn(x) ESTAB choose x retransmit req_conn(x) req_conn(x) acc_conn(x) ESTAB ESTAB client terminates req_conn(x) connection x completes server forgets x ESTAB retransmit data(x+1) client terminates data(x+1) connection x completes req_conn(x) accept data(x+1) server forgets x ESTAB half open connection! (no client!) data(x+1) ESTAB accept data(x+1) Transport Layer 3-83

84 TCP 三次握手 client state LISTEN SYNSENT ESTAB choose init seq num, x send TCP SYN msg received SYNACK(x) indicates server is live; send ACK for SYNACK; this segment may contain client-to-server data SYNbit=1, Seq=x SYNbit=1, Seq=y ACKbit=1; ACKnum=x+1 ACKbit=1, ACKnum=y+1 choose init seq num, y send TCP SYNACK msg, acking SYN received ACK(y) indicates client is live server state LISTEN SYN RCVD ESTAB Transport Layer 3-84

85 TCP 三次握手 FSM closed Socket connectionsocket = welcomesocket.accept(); SYN(x) SYNACK(seq=y,ACKnum=x+1) create new socket for communication back to client Λ listen Socket clientsocket = newsocket("hostname","port number"); SYN(seq=x) SYN rcvd SYN sent ACK(ACKnum=y+1) Λ ESTAB SYNACK(seq=y,ACKnum=x+1) ACK(ACKnum=y+1) Transport Layer 3-85

86 TCP: 关闭连接 client, server each close their side of connection send TCP segment with FIN bit = 1 respond to received FIN with ACK on receiving FIN, ACK can be combined with own FIN simultaneous FIN exchanges can be handled Transport Layer 3-86

87 TCP: 关闭连接举例 client state server state ESTAB ESTAB clientsocket.close() FIN_WAIT_1 FIN_WAIT_2 can no longer send but can receive data wait for server close FINbit=1, seq=x ACKbit=1; ACKnum=x+1 can still send data CLOSE_WAIT TIMED_WAIT timed wait for 2*max segment lifetime FINbit=1, seq=y ACKbit=1; ACKnum=y+1 can no longer send data LAST_ACK CLOSED CLOSED Transport Layer 3-87

88 3.6 拥塞控制原理 congestion: informally: too many sources sending too much data too fast for network to handle different from flow control! manifestations: lost packets (buffer overflow at routers) long delays (queueing in router buffers) a top-10 problem! Transport Layer 3-88

89 拥塞控制原因和代价 : 场景 1 two senders, two receivers one router, infinite buffers output link capacity: R no retransmission original data: λ in Host A unlimited shared output link buffers throughput: λ out Host B R/2 λ out delay λ in R/2 λ in R/2 maximum per-connection throughput: R/2 large delays as arrival rate, λ in, approaches capacity Transport Layer 3-89

90 拥塞控制原因和代价 : 场景 2 one router, finite buffers sender retransmission of timed-out packet application-layer input = application-layer output: λ in = λ out transport-layer input includes retransmissions : λ in λ in λ in : original data λ' in : original data, plus retransmitted data λ out Host A Host B finite shared output link buffers Transport Layer 3-90

91 拥塞控制原因和代价 : 场景 2 idealization: perfect knowledge sender sends only when router buffers available R/2 λ out λ in R/2 copy λ in : original data λ' in : original data, plus retransmitted data λ out A free buffer space! Host B finite shared output link buffers Transport Layer 3-91

92 Idealization: known loss packets can be lost, dropped at router 拥塞控制原因和代价 : 场景 2 due to full buffers sender only resends if packet known to be lost copy λ in : original data λ' in : original data, plus retransmitted data λ out A no buffer space! Host B Transport Layer 3-92

93 拥塞控制原因和代价 : 场景 2 Idealization: known loss packets can be lost, dropped at router due to full buffers sender only resends if packet known to be lost R/2 λ out λ in R/2 when sending at R/2, some packets are retransmissions but asymptotic goodput is still R/2 (why?) λ in : original data λ' in : original data, plus retransmitted data λ out A free buffer space! Host B Transport Layer 3-93

94 拥塞控制原因和代价 : 场景 2 Realistic: duplicates packets can be lost, dropped at router due to full buffers sender times out prematurely, sending two copies, both of which are delivered R/2 λ out λ in R/2 when sending at R/2, some packets are retransmissions including duplicated that are delivered! copy timeout λ in λ' in λ out A free buffer space! Host B Transport Layer 3-94

95 拥塞控制原因和代价 : 场景 2 Realistic: duplicates packets can be lost, dropped at router due to full buffers sender times out prematurely, sending two copies, both of which are delivered λ out R/2 λ in R/2 when sending at R/2, some packets are retransmissions including duplicated that are delivered! costs of congestion: more work (retrans) for given goodput unneeded retransmissions: link carries multiple copies of pkt decreasing goodput Transport Layer 3-95

96 拥塞控制原因和代价 : 场景 3 four senders multihop paths timeout/retransmit Q: what happens as λ in and λ in increase? A: as red λ in increases, all arriving blue pkts at upper queue are dropped, blue throughput 0 Host A λ out Host B λ in : original data λ' in : original data, plus retransmitted data finite shared output link buffers Host D Host C Transport Layer 3-96

97 拥塞控制原因和代价 : 场景 3 C/2 λ out λ in C/2 another cost of congestion: when packet dropped, any upstream transmission capacity used for that packet was wasted! Transport Layer 3-97

98 3.6.2 拥塞控制发方法 two broad approaches towards congestion control: end-end Congestion control: no explicit feedback from network congestion inferred from end-system observed loss, delay approach taken by TCP network-assisted congestion control: routers provide feedback to end systems single bit indicating congestion (SNA, DECbit, TCP/IP ECN, ATM) explicit rate for sender to send at Transport Layer 3-98

99 3.6.3 ATM ABR congestion control ( 略 ) ABR: available bit rate: elastic service if sender s path underloaded : sender should use available bandwidth if sender s path congested: sender throttled to minimum guaranteed rate RM (resource management) cells: sent by sender, interspersed with data cells bits in RM cell set by switches ( network-assisted ) NI bit: no increase in rate (mild congestion) CI bit: congestion indication RM cells returned to sender by receiver, with bits intact Transport Layer 3-99

100 Case study: ATM ABR congestion control RM cell data cell two-byte ER (explicit rate) field in RM cell congested switch may lower ER value in cell senders send rate thus max supportable rate on path EFCI bit in data cells: set to 1 in congested switch if data cell preceding RM cell has EFCI set, receiver sets CI bit in returned RM cell Transport Layer 3-100

101 3.7 TCP 拥塞控制 :AIMD( 加法增, 乘法减 ) approach: sender increases transmission rate (window size), probing for usable bandwidth, until loss occurs, then decreases the window size additive increase: increase cwnd by 1 MSS every RTT until loss detected multiplicative decrease: cut cwnd in half after loss AIMD saw tooth behavior: probing for bandwidth cwnd : 拥塞窗口 cwnd: TCP sender congestion window size additively increase window size. until loss occurs (then cut window in half) time Transport Layer 3-101

102 TCP 拥塞控制 sender sequence number space cwnd last byte ACKed last byte sent sender limits transmission: TCP sending rate: roughly: send cwnd bytes, wait RTT for ACKS, then send more bytes rate ~ cwnd RTT bytes/sec sent, notyet ACKed ( inflight ) LastByteSent- LastByteAcked < Min(cwnd,rwnd) cwnd is dynamic, function of perceived network congestion Transport Layer 3-102

103 TCP Slow Start when connection begins, increase rate exponentially until first loss event: initially cwnd = 1 MSS double cwnd every RTT done by incrementing cwnd for every ACK received summary: 初始速率低, 但以指数增长快 Host A RTT Host B time Transport Layer 3-103

104 TCP 对丢包的反应和措施 超时引起的事件 : cwnd set to 1 MSS; window then grows exponentially (as in slow start) to threshold, then grows linearly 三个重复 ACK 引发的事件 (TCP RENO) dup ACKs indicate network capable of delivering some segments cwnd is cut in half window then grows linearly TCP Tahoe always sets cwnd to 1 (timeout or 3 duplicate acks) Transport Layer 3-104

105 TCP: 冲突避免 Q: when should the exponential increase switch to linear? A: when cwnd gets to 1/2 of its value before timeout. Implementation: variable ssthresh on loss event, ssthresh is set to 1/2 of cwnd just before loss event Q: 第 0 个回合,CWND=? Transport Layer 3-105

106 Summary: TCP Congestion Control Λ cwnd = 1 MSS ssthresh = 64 KB dupackcount = 0 timeout ssthresh = cwnd/2 cwnd = 1 MSS dupackcount = 0 retransmit missing segment dupackcount == 3 ssthresh= cwnd/2 cwnd = ssthresh + 3 retransmit missing segment duplicate ACK dupackcount++ slow start New ACK! new ACK cwnd = cwnd+mss dupackcount = 0 transmit new segment(s), as allowed cwnd > ssthresh Λ timeout ssthresh = cwnd/2 cwnd = 1 MSS dupackcount = 0 retransmit missing segment timeout ssthresh = cwnd/2 cwnd = 1 dupackcount = 0 retransmit missing segment fast recovery new ACK cwnd = cwnd + MSS (MSS/cwnd) dupackcount = 0 transmit new segment(s), as allowed cwnd = ssthresh dupackcount = 0 congestion avoidance New ACK! New ACK duplicate ACK cwnd = cwnd + MSS transmit new segment(s), as allowed. New ACK! duplicate ACK dupackcount++ dupackcount == 3 ssthresh= cwnd/2 cwnd = ssthresh + 3 retransmit missing segment Transport Layer 3-106

107 TCP 吞吐量 avg. TCP thruput as function of window size, RTT? ignore slow start, assume always data to send W: window size (measured in bytes) where loss occurs avg. window size (# in-flight bytes) is ¾ W avg. thruput is 3/4W per RTT avg TCP thruput = 3 4 W RTT bytes/sec W 平均为 0.75 W/2 Transport Layer 3-107

108 TCP 未来 example: 1500 byte segments, 100ms RTT, want 10 Gbps throughput requires W = 83,333 in-flight segments throughput in terms of segment loss probability, L [Mathis 1997]: TCP throughput = MSS RTT L to achieve 10 Gbps throughput, need a loss rate of L = a very small loss rate! new versions of TCP for high-speed Transport Layer 3-108

109 TCP 公平性 fairness goal: if K TCP sessions share same bottleneck link of bandwidth R, each should have average rate of R/K TCP connection 1 TCP connection 2 bottleneck router capacity R Transport Layer 3-109

110 two competing sessions: TCP 的公平性问题 additive increase gives slope of 1, as throughout increases multiplicative decrease decreases throughput proportionally R equal bandwidth share loss: decrease window by factor of 2 congestion avoidance: additive increase loss: decrease window by factor of 2 congestion avoidance: additive increase Connection 1 throughput R Transport Layer 3-110

111 TCP 的公平性问题 Fairness and UDP multimedia apps often do not use TCP do not want rate throttled by congestion control instead use UDP: send audio/video at constant rate, tolerate packet loss Fairness, parallel TCP connections application can open multiple parallel connections between two hosts web browsers do this e.g., link of rate R with 9 existing connections: new app asks for 1 TCP, gets rate R/10 new app asks for 11 TCPs, gets R/2 Transport Layer 3-111

112 本章小结 principles behind transport layer services: multiplexing, demultiplexing reliable data transfer flow control congestion control instantiation, implementation in the Internet UDP TCP next: leaving the network edge (application, transport layers) into the network core Transport Layer 3-112

穨control.PDF

穨control.PDF TCP congestion control yhmiu Outline Congestion control algorithms Purpose of RFC2581 Purpose of RFC2582 TCP SS-DR 1998 TCP Extensions RFC1072 1988 SACK RFC2018 1996 FACK 1996 Rate-Halving 1997 OldTahoe

More information

Chapter #

Chapter # 第三章 TCP/IP 协议栈 本章目标 通过本章的学习, 您应该掌握以下内容 : 掌握 TCP/IP 分层模型 掌握 IP 协议原理 理解 OSI 和 TCP/IP 模型的区别和联系 TCP/IP 介绍 主机 主机 Internet TCP/IP 早期的协议族 全球范围 TCP/IP 协议栈 7 6 5 4 3 应用层表示层会话层传输层网络层 应用层 主机到主机层 Internet 层 2 1 数据链路层

More information

Microsoft Word final

Microsoft Word final 只寫答案而沒有解釋說明, 扣一半分數. 針對 63.07.72. 這個 IP address,( 以十進位表示, 要寫完整過程 ) (7%) a. 這一個 IP 屬於那個 Class 的網路? 以二進位說明 (%) 其所屬的 IP 網路表示法為何?(2%) 可用 IP 範圍?(2%) 共有幾個 IP 可用?(%) mask 的值為何?(%) b. 將此 IP 網路分成 7 subnets,subnet

More information

UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC

UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC 8 TCP/IP TCP/IP TCP OSI 8.1 OSI 4 end to end A B FTP OSI Connection Management handshake Flow Control Error Detection IP Response to User s Request TCP/IP TCP 181 UDP 8.2 TCP/IP OSI OSI 3 OSI 3 8.1 TCP/IP

More information

Microsoft PowerPoint - 数据通信-ch1.ppt

Microsoft PowerPoint - 数据通信-ch1.ppt 主 要 内 容 与 基 本 要 求 主 要 内 容 数 据 通 信 与 计 算 机 网 络 计 算 机 网 络 的 发 展 过 程 分 类 以 及 主 要 性 能 指 标 ; 分 组 交 换 的 基 本 原 理 及 其 与 电 路 交 换 报 文 交 换 的 联 系 与 区 别 ; 计 算 机 网 络 的 协 议 与 体 系 结 构 第 1 章 概 述 基 本 要 求 掌 握 分 组 交 换 电 路

More information

TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP

TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP TCP/IP : TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP 1. ASCII EBCDIC Extended Binary-Coded Decimal Interchange Code 2. / (1) (2) Single System Image SSI) (3) I/O (4) 3.OSI OSI Open System Interconnection

More information

Microsoft PowerPoint - Ch03.ppt

Microsoft PowerPoint - Ch03.ppt 電腦網路 Computer Networks http://www.cyut.edu.tw/~hcchu Chapter 3: Transport Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007. http://www.cyut.edu.tw/~hcchu

More information

...1 What?...2 Why?...3 How? ( ) IEEE / 23

...1 What?...2 Why?...3 How? ( ) IEEE / 23 .... IEEE 1588 2010 7 8 ( ) IEEE 1588 2010 7 8 1 / 23 ...1 What?...2 Why?...3 How? ( ) IEEE 1588 2010 7 8 2 / 23 ...1 What?...2 Why?...3 How? ( ) IEEE 1588 2010 7 8 3 / 23 IEEE 1588 ( ) IEEE 1588 2010

More information

C3_ppt.PDF

C3_ppt.PDF C03-101 1 , 2 (Packet-filtering Firewall) (stateful Inspection Firewall) (Proxy) (Circuit Level gateway) (application-level gateway) (Hybrid Firewall) 2 IP TCP 10.0.0.x TCP Any High Any 80 80 10.0.0.x

More information

Microsoft PowerPoint - Performance Analysis of Video Streaming over LTE using.pptx

Microsoft PowerPoint - Performance Analysis of Video Streaming over LTE using.pptx ENSC 427 Communication Networks Spring 2016 Group #2 Project URL: http://www.sfu.ca/~rkieu/ensc427_project.html Amer, Zargham 301149920 Kieu, Ritchie 301149668 Xiao, Lei 301133381 1 Roadmap Introduction

More information

BC04 Module_antenna__ doc

BC04 Module_antenna__ doc http://www.infobluetooth.com TEL:+86-23-68798999 Fax: +86-23-68889515 Page 1 of 10 http://www.infobluetooth.com TEL:+86-23-68798999 Fax: +86-23-68889515 Page 2 of 10 http://www.infobluetooth.com TEL:+86-23-68798999

More information

Simulator By SunLingxi 2003

Simulator By SunLingxi 2003 Simulator By SunLingxi [email protected] 2003 windows 2000 Tornado ping ping 1. Tornado Full Simulator...3 2....3 3. ping...6 4. Tornado Simulator BSP...6 5. VxWorks simpc...7 6. simulator...7 7. simulator

More information

Microsoft PowerPoint - Aqua-Sim.pptx

Microsoft PowerPoint - Aqua-Sim.pptx Peng Xie, Zhong Zhou, Zheng Peng, Hai Yan, Tiansi Hu, Jun-Hong Cui, Zhijie Shi, Yunsi Fei, Shengli Zhou Underwater Sensor Network Lab 1 Outline Motivations System Overview Aqua-Sim Components Experimental

More information

Important Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provided by SUNPLUS TECHNOLO

Important Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provided by SUNPLUS TECHNOLO Car DVD New GUI IR Flow User Manual V0.1 Jan 25, 2008 19, Innovation First Road Science Park Hsin-Chu Taiwan 300 R.O.C. Tel: 886-3-578-6005 Fax: 886-3-578-4418 Web: www.sunplus.com Important Notice SUNPLUS

More information

IP Access Lists IP Access Lists IP Access Lists

IP Access Lists IP Access Lists IP Access Lists Chapter 10 Access Lists IP Access Lists IP Access Lists IP Access Lists Security) IP Access Lists Access Lists (Network router For example, RouterA can use an access list to deny access from Network 4

More information

Microsoft Word - TIP006SCH Uni-edit Writing Tip - Presentperfecttenseandpasttenseinyourintroduction readytopublish

Microsoft Word - TIP006SCH Uni-edit Writing Tip - Presentperfecttenseandpasttenseinyourintroduction readytopublish 我 难 度 : 高 级 对 们 现 不 在 知 仍 道 有 听 影 过 响 多 少 那 次 么 : 研 英 究 过 文 论 去 写 文 时 作 的 表 技 引 示 巧 言 事 : 部 情 引 分 发 言 该 生 使 在 中 用 过 去, 而 现 在 完 成 时 仅 表 示 事 情 发 生 在 过 去, 并 的 哪 现 种 在 时 完 态 成 呢 时? 和 难 过 道 去 不 时 相 关? 是 所 有

More information

TX-NR3030_BAS_Cs_ indd

TX-NR3030_BAS_Cs_ indd TX-NR3030 http://www.onkyo.com/manual/txnr3030/adv/cs.html Cs 1 2 3 Speaker Cable 2 HDMI OUT HDMI IN HDMI OUT HDMI OUT HDMI OUT HDMI OUT 1 DIGITAL OPTICAL OUT AUDIO OUT TV 3 1 5 4 6 1 2 3 3 2 2 4 3 2 5

More information

IP505SM_manual_cn.doc

IP505SM_manual_cn.doc IP505SM 1 Introduction 1...4...4...4...5 LAN...5...5...6...6...7 LED...7...7 2...9...9...9 3...11...11...12...12...12...14...18 LAN...19 DHCP...20...21 4 PC...22...22 Windows...22 TCP/IP -...22 TCP/IP

More information

Microsoft PowerPoint - STU_EC_Ch08.ppt

Microsoft PowerPoint - STU_EC_Ch08.ppt 樹德科技大學資訊工程系 Chapter 8: Counters Shi-Huang Chen Fall 2010 1 Outline Asynchronous Counter Operation Synchronous Counter Operation Up/Down Synchronous Counters Design of Synchronous Counters Cascaded Counters

More information

第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特 网 的 标 准 化 工 作 1.2.4 计 算 机 网 络 在

第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特 网 的 标 准 化 工 作 1.2.4 计 算 机 网 络 在 计 算 机 网 络 ( 第 4 版 ) 课 件 第 1 章 计 算 机 网 络 概 述 郭 庆 北 [email protected] 2009-02-25 第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特

More information

计算机网络

计算机网络 [email protected] Internet 3 James F.Kurose Keith W.Ross 4 Andrew S.Tanenbaum 3 Larry L.Peterson, Bruce S.Davie 3 1. ISO OSI/RM( ) TCP/IP ( TELNET, FTP, SMTP ) (TCP UDP) IP 2. Internet : Internet 5 (1)

More information

Windows XP

Windows XP Windows XP What is Windows XP Windows is an Operating System An Operating System is the program that controls the hardware of your computer, and gives you an interface that allows you and other programs

More information

C6_ppt.PDF

C6_ppt.PDF C01-202 1 2 - (Masquerade) (Replay) (Message Modification) (Denial of Service) - ( ) (Eavesdropping) (Traffic Analysis) 8 1 2 7 3 6 5 4 3 - TCP SYN (SYN flood) Smurf Ping of Death LAND Attack Teardrop

More information

RAQMON Context Setting MG PDA Applications RTP / FTP/ HTTP TCP/UDP S ignaling control plane (e.g. RS VP, NS IS) Streaming Media, Transaction, Bulk dat

RAQMON Context Setting MG PDA Applications RTP / FTP/ HTTP TCP/UDP S ignaling control plane (e.g. RS VP, NS IS) Streaming Media, Transaction, Bulk dat Realtime Application QOS Monitoring (RAQMON) Dan Romascanu [email protected] 1 RAQMON Context Setting MG PDA Applications RTP / FTP/ HTTP TCP/UDP S ignaling control plane (e.g. RS VP, NS IS) Streaming

More information

Microsoft Word - template.doc

Microsoft Word - template.doc HGC efax Service User Guide I. Getting Started Page 1 II. Fax Forward Page 2 4 III. Web Viewing Page 5 7 IV. General Management Page 8 12 V. Help Desk Page 13 VI. Logout Page 13 Page 0 I. Getting Started

More information

Improved Preimage Attacks on AES-like Hash Functions: Applications to Whirlpool and Grøstl

Improved Preimage Attacks on AES-like Hash Functions: Applications to Whirlpool and Grøstl SKLOIS (Pseudo) Preimage Attack on Reduced-Round Grøstl Hash Function and Others Shuang Wu, Dengguo Feng, Wenling Wu, Jian Guo, Le Dong, Jian Zou March 20, 2012 Institute. of Software, Chinese Academy

More information

工程师培训

工程师培训 .1 TCP/IP TCP/IP 1 .2.2.1 Host 1960 S 1970 S Host Low Speed Lines 1970 S 1980 S pc Server Local Interneting 1980 S 1990 S Branch. pc Branch. WAN Branch. pc pc IBM SNA IBM X.25 2 .2.2 OSI OSI Application

More information

1505.indd

1505.indd 上 海 市 孙 中 山 宋 庆 龄 文 物 管 理 委 员 会 上 海 宋 庆 龄 研 究 会 主 办 2015.05 总 第 148 期 图 片 新 闻 2015 年 9 月 22 日, 由 上 海 孙 中 山 故 居 纪 念 馆 台 湾 辅 仁 大 学 和 台 湾 图 书 馆 联 合 举 办 的 世 纪 姻 缘 纪 念 孙 中 山 先 生 逝 世 九 十 周 年 及 其 革 命 历 程 特 展

More information

PowerPoint Presentation

PowerPoint Presentation Decision analysis 量化決策分析方法專論 2011/5/26 1 Problem formulation- states of nature In the decision analysis, decision alternatives are referred to as chance events. The possible outcomes for a chance event

More information

財金資訊-80期.indd

財金資訊-80期.indd IPv6 / LINE YouTube TCP/IP TCP (Transmission Control Protocol) IP (Internet Protocol) (node) (address) IPv4 168.95.1.1 IPv4 1981 RFC 791 --IP IPv4 32 2 32 42 IP (Internet Service Provider ISP) IP IP IPv4

More information

(baking powder) 1 ( ) ( ) 1 10g g (two level design, D-optimal) 32 1/2 fraction Two Level Fractional Factorial Design D-Optimal D

(baking powder) 1 ( ) ( ) 1 10g g (two level design, D-optimal) 32 1/2 fraction Two Level Fractional Factorial Design D-Optimal D ( ) 4 1 1 1 145 1 110 1 (baking powder) 1 ( ) ( ) 1 10g 1 1 2.5g 1 1 1 1 60 10 (two level design, D-optimal) 32 1/2 fraction Two Level Fractional Factorial Design D-Optimal Design 1. 60 120 2. 3. 40 10

More information

國立中山大學學位論文典藏

國立中山大學學位論文典藏 I II III IV The theories of leadership seldom explain the difference of male leaders and female leaders. Instead of the assumption that the leaders leading traits and leading styles of two sexes are the

More information

<4D6963726F736F667420506F776572506F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA4544350A1A24950D0ADD2E9BACD4950B5D8D6B72E707074>

<4D6963726F736F667420506F776572506F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA4544350A1A24950D0ADD2E9BACD4950B5D8D6B72E707074> 项 目 一 : 初 识 计 算 机 网 络 任 务 三 熟 悉 TCP/IP 协 议 和 IP 地 址 一. 学 习 要 求 : 学 习 要 求 及 难 点 1. 了 解 IP 协 议 TCP 协 议 和 UDP 协 议 2. 熟 悉 IP 地 址 的 划 分 和 分 类 3. 了 解 IPV6 的 地 址 结 构 二. 难 点 : 1. IP 地 址 三. 学 时 : 1. 理 论 教 学 :6

More information

2009.05

2009.05 2009 05 2009.05 2009.05 璆 2009.05 1 亿 平 方 米 6 万 套 10 名 20 亿 元 5 个 月 30 万 亿 60 万 平 方 米 Data 围 观 CCDI 公 司 内 刊 企 业 版 P08 围 观 CCDI 管 理 学 上 有 句 名 言 : 做 正 确 的 事, 比 正 确 地 做 事 更 重 要 方 向 的 对 错 于 大 局 的 意 义 而 言,

More information

第3章 计算机网络体系结构

第3章  计算机网络体系结构 第 3 章 计 算 机 网 络 体 系 结 构 本 章 内 容 计 算 机 的 网 络 体 系 结 构 网 络 参 考 模 型 五 层 网 络 参 考 模 型 1 3.1 计 算 机 网 络 体 系 结 构 发 展 历 程 分 层 原 理 基 本 概 念 2 发 展 历 程 网 络 体 系 结 构 提 出 的 背 景 计 算 机 网 络 的 复 杂 性 异 质 性 不 同 的 通 信 介 质 有 线

More information

ebook140-8

ebook140-8 8 Microsoft VPN Windows NT 4 V P N Windows 98 Client 7 Vintage Air V P N 7 Wi n d o w s NT V P N 7 VPN ( ) 7 Novell NetWare VPN 8.1 PPTP NT4 VPN Q 154091 M i c r o s o f t Windows NT RAS [ ] Windows NT4

More information

9 Internet 10 Internet

9 Internet 10 Internet 1 2 3 4 5 6 Internet 7 8 9 Internet 10 Internet 11 12 1 1.1 1.2 1.3 1.4 1.5 1.6 1.1 1.1.1 20 50 20 60 ARPANET ARPANET Internet 20 70 ISO International Organization for Standardization TCP/IP 20 90 Internet

More information

热设计网

热设计网 例 例 Agenda Popular Simulation software in PC industry * CFD software -- Flotherm * Advantage of Flotherm Flotherm apply to Cooler design * How to build up the model * Optimal parameter in cooler design

More information

untitled

untitled Co-integration and VECM Yi-Nung Yang CYCU, Taiwan May, 2012 不 列 1 Learning objectives Integrated variables Co-integration Vector Error correction model (VECM) Engle-Granger 2-step co-integration test Johansen

More information

<4D6963726F736F667420576F7264202D2032303130C4EAC0EDB9A4C0E04142BCB6D4C4B6C1C5D0B6CFC0FDCCE2BEABD1A15F325F2E646F63>

<4D6963726F736F667420576F7264202D2032303130C4EAC0EDB9A4C0E04142BCB6D4C4B6C1C5D0B6CFC0FDCCE2BEABD1A15F325F2E646F63> 2010 年 理 工 类 AB 级 阅 读 判 断 例 题 精 选 (2) Computer mouse How does the mouse work? We have to start at the bottom, so think upside down for now. It all starts with mouse ball. As the mouse ball in the bottom

More information

Introduction to Hamilton-Jacobi Equations and Periodic Homogenization

Introduction to Hamilton-Jacobi Equations  and Periodic Homogenization Introduction to Hamilton-Jacobi Equations and Periodic Yu-Yu Liu NCKU Math August 22, 2012 Yu-Yu Liu (NCKU Math) H-J equation and August 22, 2012 1 / 15 H-J equations H-J equations A Hamilton-Jacobi equation

More information

AL-M200 Series

AL-M200 Series NPD4754-00 TC ( ) Windows 7 1. [Start ( )] [Control Panel ()] [Network and Internet ( )] 2. [Network and Sharing Center ( )] 3. [Change adapter settings ( )] 4. 3 Windows XP 1. [Start ( )] [Control Panel

More information

Microsoft Word - CX VMCO 3 easy step v1.doc

Microsoft Word - CX VMCO 3 easy step v1.doc Abacus Fully Automated Process of VMCO on CX, KA, CPH & KAH 16 Nov 2009 To streamline the VMCO handling on CX, KA, CPH & KAH, Abacus is pleased to inform you that manual submission of VMCO to CX/KA/CPH/KAH

More information

國立中山大學學位論文典藏.PDF

國立中山大學學位論文典藏.PDF 國 立 中 山 大 學 企 業 管 理 學 系 碩 士 論 文 以 系 統 動 力 學 建 構 美 食 餐 廳 異 國 麵 坊 之 管 理 飛 行 模 擬 器 研 究 生 : 簡 蓮 因 撰 指 導 教 授 : 楊 碩 英 博 士 中 華 民 國 九 十 七 年 七 月 致 謝 詞 寫 作 論 文 的 過 程 是 一 段 充 滿 艱 辛 與 淚 水 感 動 與 窩 心 的 歷 程, 感 謝 這 一

More information

计算机网络

计算机网络 (delay latency) = + + LEC. A B A 0 0 0 B .6. = 0ms, 0Mb/s, 0x0 - x0x0 =x0 bit RTT RTT (Round-Trip Time) .7 OSI/RM OSI/RM OSI/RM TCP/IP (application layer) (transport layer) (network layer)

More information

<4D6963726F736F667420576F7264202D205F4230365FB942A5CEA668B443C5E9BB73A740B5D8A4E5B8C9A552B1D0A7F75FA6BFB1A4ACFC2E646F63>

<4D6963726F736F667420576F7264202D205F4230365FB942A5CEA668B443C5E9BB73A740B5D8A4E5B8C9A552B1D0A7F75FA6BFB1A4ACFC2E646F63> 運 用 多 媒 體 製 作 華 文 補 充 教 材 江 惜 美 銘 傳 大 學 應 用 中 文 系 [email protected] 摘 要 : 本 文 旨 在 探 究 如 何 運 用 多 媒 體, 結 合 文 字 聲 音 圖 畫, 製 作 華 文 補 充 教 材 當 我 們 在 進 行 華 文 教 學 時, 往 往 必 須 透 過 教 案 設 計, 並 製 作 補 充 教 材, 方 能 使 教 學

More information

ebook140-9

ebook140-9 9 VPN VPN Novell BorderManager Windows NT PPTP V P N L A V P N V N P I n t e r n e t V P N 9.1 V P N Windows 98 Windows PPTP VPN Novell BorderManager T M I P s e c Wi n d o w s I n t e r n e t I S P I

More information

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南 Symantec Sygate Enterprise Protection 防 护 代 理 安 装 使 用 指 南 5.1 版 版 权 信 息 Copyright 2005 Symantec Corporation. 2005 年 Symantec Corporation 版 权 所 有 All rights reserved. 保 留 所 有 权 利 Symantec Symantec 徽 标 Sygate

More information

<4D6963726F736F667420506F776572506F696E74202D20C8EDBCFEBCDCB9B9CAA6D1D0D0DEBDB2D7F92E707074>

<4D6963726F736F667420506F776572506F696E74202D20C8EDBCFEBCDCB9B9CAA6D1D0D0DEBDB2D7F92E707074> 软 件 架 构 师 研 修 讲 座 胡 协 刚 软 件 架 构 师 UML/RUP 专 家 [email protected] 中 国 软 件 架 构 师 网 东 软 培 训 中 心 小 故 事 : 七 人 分 粥 当 前 软 件 团 队 的 开 发 现 状 和 面 临 的 问 题 软 件 项 目 的 特 点 解 决 之 道 : 从 瀑 布 模 型 到 迭 代 模 型 解 决 项

More information

Microsoft PowerPoint _代工實例-1

Microsoft PowerPoint _代工實例-1 4302 動態光散射儀 (Dynamic Light Scattering) 代工實例與結果解析 生醫暨非破壞性分析團隊 2016.10 updated Which Size to Measure? Diameter Many techniques make the useful and convenient assumption that every particle is a sphere. The

More information

AN INTRODUCTION TO PHYSICAL COMPUTING USING ARDUINO, GRASSHOPPER, AND FIREFLY (CHINESE EDITION ) INTERACTIVE PROTOTYPING

AN INTRODUCTION TO PHYSICAL COMPUTING USING ARDUINO, GRASSHOPPER, AND FIREFLY (CHINESE EDITION ) INTERACTIVE PROTOTYPING AN INTRODUCTION TO PHYSICAL COMPUTING USING ARDUINO, GRASSHOPPER, AND FIREFLY (CHINESE EDITION ) INTERACTIVE PROTOTYPING 前言 - Andrew Payne 目录 1 2 Firefly Basics 3 COMPONENT TOOLBOX 目录 4 RESOURCES 致谢

More information

untitled

untitled Lwip Swedish Institute of Computer Science February 20, 2001 Adam Dunkels [email protected] (QQ: 10205001) (QQ: 329147) (QQ:3232253) (QQ:3232253) QQ ARM TCPIP LCD10988210 LWIP TCP/IP LWIP LWIP lwip API lwip

More information

Logitech Wireless Combo MK45 English

Logitech Wireless Combo MK45 English Logitech Wireless Combo MK45 Setup Guide Logitech Wireless Combo MK45 English................................................................................... 7..........................................

More information

國家圖書館典藏電子全文

國家圖書館典藏電子全文 i ii Abstract The most important task in human resource management is to encourage and help employees to develop their potential so that they can fully contribute to the organization s goals. The main

More information

SHIMPO_表1-表4

SHIMPO_表1-表4 For servo motor ABLEREDUCER SSeries Coaxial shaft series Features S series Standard backlash is 3 arc-min, ideal for precision control. High rigidity & high torque were achived by uncaged needle roller

More information

OSI OSI 15% 20% OSI OSI ISO International Standard Organization 1984 OSI Open-data System Interface Reference Model OSI OSI OSI OSI ISO Prototype Prot

OSI OSI 15% 20% OSI OSI ISO International Standard Organization 1984 OSI Open-data System Interface Reference Model OSI OSI OSI OSI ISO Prototype Prot OSI OSI OSI 15% 20% OSI OSI ISO International Standard Organization 1984 OSI Open-data System Interface Reference Model OSI OSI OSI OSI ISO Prototype Protocol OSI OSI OSI OSI OSI O S I 2-1 Application

More information

論文格式

論文格式 June 15, pp1-15 精 實 生 產 對 生 產 製 造 採 購 及 供 應 鏈 影 響 之 個 案 研 究 Case study: the influence of lean production on producing, purchasing and supply chain 劉 岳 芳 Yueh-Fang Liu 1 王 超 弘 Chau-Hung Wang 2 摘 要 台 灣 汽

More information

Panaboard Overlayer help

Panaboard Overlayer help Panaboard Overlayer Image Capture Software for Electronic Whiteboard (Panaboard) ... 3... 5... 6... 13...14 Panaboard Overlayer 1. 2. 3. 4. 4-1. 4-2. [ / ] ( ) 4-3. 5. 6. 6-1. 6-2. [ / ] ( ) 7. Panaboard

More information

untitled

untitled Ogre Rendering System http://antsam.blogone.net [email protected] geometry systemmaterial systemshader systemrendering system API API DirectX OpenGL API Pipeline Abstraction API Pipeline Pipeline configurationpipeline

More information

LH_Series_Rev2014.pdf

LH_Series_Rev2014.pdf REMINDERS Product information in this catalog is as of October 2013. All of the contents specified herein are subject to change without notice due to technical improvements, etc. Therefore, please check

More information

untitled

untitled LBS Research and Application of Location Information Management Technology in LBS TP319 10290 UDC LBS Research and Application of Location Information Management Technology in LBS , LBS PDA LBS

More information

Microsoft Word - 第四組心得.doc

Microsoft Word - 第四組心得.doc 徐 婉 真 這 四 天 的 綠 島 人 權 體 驗 營 令 我 印 象 深 刻, 尤 其 第 三 天 晚 上 吳 豪 人 教 授 的 那 堂 課, 他 讓 我 聽 到 不 同 於 以 往 的 正 義 之 聲 轉 型 正 義, 透 過 他 幽 默 熱 情 的 語 調 激 起 了 我 對 政 治 的 興 趣, 願 意 在 未 來 多 關 心 社 會 多 了 解 政 治 第 一 天 抵 達 綠 島 不 久,

More information

Bus Hound 5

Bus Hound 5 Bus Hound 5.0 ( 1.0) 21IC 2007 7 BusHound perisoft PC hound Bus Hound 6.0 5.0 5.0 Bus Hound, IDE SCSI USB 1394 DVD Windows9X,WindowsMe,NT4.0,2000,2003,XP XP IRP Html ZIP SCSI sense USB Bus Hound 1 Bus

More information

入學考試網上報名指南

入學考試網上報名指南 入 學 考 試 網 上 報 名 指 南 On-line Application Guide for Admission Examination 16/01/2015 University of Macau Table of Contents Table of Contents... 1 A. 新 申 請 網 上 登 記 帳 戶 /Register for New Account... 2 B. 填

More information

<4D6963726F736F667420506F776572506F696E74202D20B5DAD2BBD5C228B4F2D3A1B0E6292E707074205BBCE6C8DDC4A3CABD5D>

<4D6963726F736F667420506F776572506F696E74202D20B5DAD2BBD5C228B4F2D3A1B0E6292E707074205BBCE6C8DDC4A3CABD5D> Homeworks ( 第 三 版 ):.4 (,, 3).5 (, 3).6. (, 3, 5). (, 4).4.6.7 (,3).9 (, 3, 5) Chapter. Number systems and codes 第 一 章. 数 制 与 编 码 . Overview 概 述 Information is of digital forms in a digital system, and

More information

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc References (Section 5.2) Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 15-16, 2010 H.-T. Lin (NTU CSIE) References OOP 03/15-16/2010 0 / 22 Fun Time (1) What happens in memory? 1 i n t i ; 2

More information

國 立 政 治 大 學 教 育 學 系 2016 新 生 入 學 手 冊 目 錄 表 11 國 立 政 治 大 學 教 育 學 系 博 士 班 資 格 考 試 抵 免 申 請 表... 46 論 文 題 目 申 報 暨 指 導 教 授... 47 表 12 國 立 政 治 大 學 碩 博 士 班 論

國 立 政 治 大 學 教 育 學 系 2016 新 生 入 學 手 冊 目 錄 表 11 國 立 政 治 大 學 教 育 學 系 博 士 班 資 格 考 試 抵 免 申 請 表... 46 論 文 題 目 申 報 暨 指 導 教 授... 47 表 12 國 立 政 治 大 學 碩 博 士 班 論 國 立 政 治 大 學 教 育 學 系 2016 新 生 入 學 手 冊 目 錄 一 教 育 學 系 簡 介... 1 ( 一 ) 成 立 時 間... 1 ( 二 ) 教 育 目 標 與 發 展 方 向... 1 ( 三 ) 授 課 師 資... 2 ( 四 ) 行 政 人 員... 3 ( 五 ) 核 心 能 力 與 課 程 規 劃... 3 ( 六 ) 空 間 環 境... 12 ( 七 )

More information

IP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I

IP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I 2004 5 IP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I Abstract The techniques of digital video processing, transferring

More information

1.ai

1.ai HDMI camera ARTRAY CO,. LTD Introduction Thank you for purchasing the ARTCAM HDMI camera series. This manual shows the direction how to use the viewer software. Please refer other instructions or contact

More information

4. 每 组 学 生 将 写 有 习 语 和 含 义 的 两 组 卡 片 分 别 洗 牌, 将 顺 序 打 乱, 然 后 将 两 组 卡 片 反 面 朝 上 置 于 课 桌 上 5. 学 生 依 次 从 两 组 卡 片 中 各 抽 取 一 张, 展 示 给 小 组 成 员, 并 大 声 朗 读 卡

4. 每 组 学 生 将 写 有 习 语 和 含 义 的 两 组 卡 片 分 别 洗 牌, 将 顺 序 打 乱, 然 后 将 两 组 卡 片 反 面 朝 上 置 于 课 桌 上 5. 学 生 依 次 从 两 组 卡 片 中 各 抽 取 一 张, 展 示 给 小 组 成 员, 并 大 声 朗 读 卡 Tips of the Week 课 堂 上 的 英 语 习 语 教 学 ( 二 ) 2015-04-19 吴 倩 MarriottCHEI 大 家 好! 欢 迎 来 到 Tips of the Week! 这 周 我 想 和 老 师 们 分 享 另 外 两 个 课 堂 上 可 以 开 展 的 英 语 习 语 教 学 活 动 其 中 一 个 活 动 是 一 个 充 满 趣 味 的 游 戏, 另 外

More information

Chinese oil import policies and reforms 随 着 经 济 的 发 展, 目 前 中 国 石 油 消 费 总 量 已 经 跃 居 世 界 第 二 作 为 一 个 负 责 任 的 大 国, 中 国 正 在 积 极 推 进 能 源 进 口 多 元 化, 鼓 励 替 代

Chinese oil import policies and reforms 随 着 经 济 的 发 展, 目 前 中 国 石 油 消 费 总 量 已 经 跃 居 世 界 第 二 作 为 一 个 负 责 任 的 大 国, 中 国 正 在 积 极 推 进 能 源 进 口 多 元 化, 鼓 励 替 代 Chinese oil import policies and reforms SINOPEC EDRI 2014.8 Chinese oil import policies and reforms 随 着 经 济 的 发 展, 目 前 中 国 石 油 消 费 总 量 已 经 跃 居 世 界 第 二 作 为 一 个 负 责 任 的 大 国, 中 国 正 在 积 极 推 进 能 源 进 口 多 元 化,

More information

/ / (FC 3)...

/ / (FC 3)... Modbus/TCP 1.0 1999 3 29 Andy Swales Schneider [email protected] ... 2 1.... 3 2.... 3 2.1.. 3 2.2..4 2.3..4 2.4... 5 3.... 5 3.1 0... 5 3.2 1... 5 3.3 2... 6 3.4 / /... 7 4.... 7 5.... 8 5.1 0... 9

More information

(Methods) Client Server Microsoft Winsock Control VB 1 VB Microsoft Winsock Control 6.0 Microsoft Winsock Control 6.0 1(a). 2

(Methods) Client Server Microsoft Winsock Control VB 1 VB Microsoft Winsock Control 6.0 Microsoft Winsock Control 6.0 1(a). 2 (2005-01-26) (2005-01-26) (2005-02-27) PIC_SERVER (9) VB TCP/UDP Visual Basic Microsoft Winsock Control (MSWINSCK.OCX) UDP TCP Client Server Visual Basic UDP/TCP PIC_SERVER UDP/TCP 1. Microsoft Winsock

More information

A Study on the Relationships of the Co-construction Contract A Study on the Relationships of the Co-Construction Contract ( ) ABSTRACT Co-constructio in the real estate development, holds the quite

More information

Epson

Epson WH / MS CMP0087-00 TC WH/MS EPSON EPSON EXCEED YOUR VISION EXCEED YOUR VISION Seiko Corporation Microsoft and Windows are registered trademarks of Microsoft Corporation. Mac and Mac OS are registered trademarks

More information

2015年4月11日雅思阅读预测机经(新东方版)

2015年4月11日雅思阅读预测机经(新东方版) 剑 桥 雅 思 10 第 一 时 间 解 析 阅 读 部 分 1 剑 桥 雅 思 10 整 体 内 容 统 计 2 剑 桥 雅 思 10 话 题 类 型 从 以 上 统 计 可 以 看 出, 雅 思 阅 读 的 考 试 话 题 一 直 广 泛 多 样 而 题 型 则 稳 中 有 变 以 剑 桥 10 的 test 4 为 例 出 现 的 三 篇 文 章 分 别 是 自 然 类, 心 理 研 究 类,

More information

Preface This guide is intended to standardize the use of the WeChat brand and ensure the brand's integrity and consistency. The guide applies to all d

Preface This guide is intended to standardize the use of the WeChat brand and ensure the brand's integrity and consistency. The guide applies to all d WeChat Search Visual Identity Guidelines WEDESIGN 2018. 04 Preface This guide is intended to standardize the use of the WeChat brand and ensure the brand's integrity and consistency. The guide applies

More information

124 第十三期 Conflicts in the Takeover of the Land in Taiwan after the Sino-Japanese War A Case in the Change of the Japanese Names of the Taiwanese Peopl

124 第十三期 Conflicts in the Takeover of the Land in Taiwan after the Sino-Japanese War A Case in the Change of the Japanese Names of the Taiwanese Peopl 123 戰後初期臺灣土地接收的糾紛 以更改日式姓名的臺人遭遇為例 124 第十三期 Conflicts in the Takeover of the Land in Taiwan after the Sino-Japanese War A Case in the Change of the Japanese Names of the Taiwanese People Abstract By Ho Fung-jiao

More information

SHIMPO_表1-表4

SHIMPO_表1-表4 For servo motor ABLEREDUCER L Series Features Coaxial shaft series L series Helical gears contribute to reduce vibration and noise. Standard backlash is 5 arc-min, ideal for precision control. High rigidity

More information

untitled

untitled 20 90 1998 2001 1 Abstract Under the environment of drastic competitive market, risk and uncertainty that the enterprise faces are greater and greater, the profit ability of enterprise assets rises and

More information

2

2 1 2 3 4 PHY (RAN1) LTE/LTE-A 6.3 Enhanced Downlink Multiple Antenna Transmission 6.3.1 CSI RS 6.4 Uplink Multiple Antenna Transmission 6.4.1 Transmission modes and Signalling requirements for SU-MIMO 6.5

More information

Chn 116 Neh.d.01.nis

Chn 116 Neh.d.01.nis 31 尼 希 米 书 尼 希 米 的 祷 告 以 下 是 哈 迦 利 亚 的 儿 子 尼 希 米 所 1 说 的 话 亚 达 薛 西 王 朝 二 十 年 基 斯 流 月 *, 我 住 在 京 城 书 珊 城 里 2 我 的 兄 弟 哈 拿 尼 和 其 他 一 些 人 从 犹 大 来 到 书 珊 城 我 向 他 们 打 听 那 些 劫 后 幸 存 的 犹 太 人 家 族 和 耶 路 撒 冷 的 情 形

More information

K301Q-D VRT中英文说明书141009

K301Q-D VRT中英文说明书141009 THE INSTALLING INSTRUCTION FOR CONCEALED TANK Important instuction:.. Please confirm the structure and shape before installing the toilet bowl. Meanwhile measure the exact size H between outfall and infall

More information

中国科学技术大学学位论文模板示例文档

中国科学技术大学学位论文模板示例文档 University of Science and Technology of China A dissertation for doctor s degree An Example of USTC Thesis Template for Bachelor, Master and Doctor Author: Zeping Li Speciality: Mathematics and Applied

More information

Lorem ipsum dolor sit amet, consectetuer adipiscing elit

Lorem ipsum dolor sit amet, consectetuer adipiscing elit English for Study in Australia 留 学 澳 洲 英 语 讲 座 Lesson 3: Make yourself at home 第 三 课 : 宾 至 如 归 L1 Male: 各 位 朋 友 好, 欢 迎 您 收 听 留 学 澳 洲 英 语 讲 座 节 目, 我 是 澳 大 利 亚 澳 洲 广 播 电 台 的 节 目 主 持 人 陈 昊 L1 Female: 各 位

More information

Microsoft Word - ChineseSATII .doc

Microsoft Word - ChineseSATII .doc 中 文 SAT II 冯 瑶 一 什 么 是 SAT II 中 文 (SAT Subject Test in Chinese with Listening)? SAT Subject Test 是 美 国 大 学 理 事 会 (College Board) 为 美 国 高 中 生 举 办 的 全 国 性 专 科 标 准 测 试 考 生 的 成 绩 是 美 国 大 学 录 取 新 生 的 重 要 依

More information

L L L-1 L-1 L-1 L-1 L-1 L-2 L-1 L-1 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-3 L-3 L-3 L-3 L-2 L-2 L-2 L-2 L-2 15 14 13 12 11 10 9 8 7

L L L-1 L-1 L-1 L-1 L-1 L-2 L-1 L-1 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-3 L-3 L-3 L-3 L-2 L-2 L-2 L-2 L-2 15 14 13 12 11 10 9 8 7 Compensation Design - L L L-1 L-1 L-1 L-1 L-1 L-2 L-1 L-1 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-2 L-3 L-3 L-3 L-3 L-2 L-2 L-2 L-2 L-2 15 14 13 12 11 10 9 8 7 100,000 80,000 $ 60,000 40,000 20,000 80,000

More information

6-7 6-8 6-9 Process Data flow Data store External entity 6-10 Context diagram Level 0 diagram Level 1 diagram Level 2 diagram 6-11 6-12

6-7 6-8 6-9 Process Data flow Data store External entity 6-10 Context diagram Level 0 diagram Level 1 diagram Level 2 diagram 6-11 6-12 6-1 6-2 6-3 6-4 6-5 6-6 6-7 6-8 6-9 Process Data flow Data store External entity 6-10 Context diagram Level 0 diagram Level 1 diagram Level 2 diagram 6-11 6-12 6-13 6-14 6-15 6-16 6-17 6-18 6-19 6-20 6-21

More information

建國科大 許您一個海闊天空的未來 建國科大本著術德兼修五育並重的教育方針 持續努力的朝向專業教學型大學邁進 期許建國的學生能成為企業所樂用的人才 建國科大多元性發展與延伸觸角 如 教學卓越計畫 產官學合作 國際交流活動等等 讓師生能充實基礎實力 更提升競爭力 不管將來是要升學或是就業 都能一帆風順

建國科大 許您一個海闊天空的未來 建國科大本著術德兼修五育並重的教育方針 持續努力的朝向專業教學型大學邁進 期許建國的學生能成為企業所樂用的人才 建國科大多元性發展與延伸觸角 如 教學卓越計畫 產官學合作 國際交流活動等等 讓師生能充實基礎實力 更提升競爭力 不管將來是要升學或是就業 都能一帆風順 校刊 Chienkuo Monthly 224 2 0 11.4.1 6 出刊 學 力 實 力 願 力 建國科技大學辦學 卓越 優質 傑出 奉准101年起以公立標準招收繁星計畫學生 焦 點 報 導 建國科技大學奉准招收繁星計畫學生 學力實力願力 自動化工程系參加 2011臺灣無人飛機設計競賽 脫穎而出 獲得五座獎盃 兩 岸 交 流 華中科技大學武昌分校金國華董事長蒞校參訪 策略聯盟計畫 建國科技大學美容系舉辦新娘造型專題競賽活動

More information

#FT66/68CN(01~07)

#FT66/68CN(01~07) : KX-FT66CN KX-FT68CN KX-FT66 Panasonic Panasonic ( ) KX-FT66 KX-FT68 : CN KX-FT66 : ( KME ) KME Kyushu Matsushita Electric Co., Ltd. 2000 2000 2 E. F. 1. 14. ( 2. ) 3. 15. 4. 5. / 6. 1. 2. 7. 3. 4. 8.

More information

Microsoft PowerPoint - ATF2015.ppt [相容模式]

Microsoft PowerPoint - ATF2015.ppt [相容模式] Improving the Video Totalized Method of Stopwatch Calibration Samuel C.K. Ko, Aaron Y.K. Yan and Henry C.K. Ma The Government of Hong Kong Special Administrative Region (SCL) 31 Oct 2015 1 Contents Introduction

More information