版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,End-to-End Protocol,Outline Simple Demultiplexer (UDP) Reliable Byte-Stream (TCP) Connection Establishment/Termination Sliding Window Revisited Flow Control,2,The Layered Network Stack,Physical Layer,Application Layer,Transport Layer (TCP/UDP,Network Layer (IP,Data Link Layer,Internet Stack,3,End-
2、to-End Protocols,Underlying best-effort network drop messages re-orders messages delivers duplicate copies of a given message limits messages to some finite size delivers messages after an arbitrarily long delay Common end-to-end services guarantee message delivery deliver messages in the same order
3、 they are sent deliver at most one copy of each message support arbitrarily large messages support synchronization allow the receiver to flow control the sender support multiple application processes on each host,4,Transport layer uses the network layer, to send and receive data. Transport Protocol
4、Data Unit (TPDU) Each layer adds its part TCP segment, IP packet, Data link frame,Overview of Transport Layer,5,Overview of Transport Layer(cont.,6,Two types of transport services connection-oriented connectionless,End-to-End Protocols,7,Simple Demultiplexor (UDP,Transport protocol above IP simply p
5、asses IP through to the upper (application) layers Unreliable and unordered datagram service Adds multiplexing No flow control Endpoints identified by ports servers have well-known ports FTP - 21, Telnet - 23, http - 80, pop - 110, DNS - 53,8,UDP “Features,Gives apps the option to send packets unrel
6、iably Useful for multicast apps Low delay transmission for interactive text/audio/video Minimal connection state: “connectionless” Minimal connection setup time No congestion control blast away Build own application-level protocol on top of UDP,9,UDP,UDP Header: Only 8 bytes! (vs. IP 20 bytes header
7、) Source port for UDP sending process Dest port for UDP receiving process Length in bytes of UDP header + payload Checksum over UDP header + payload,Source Port ,Dest. Port ,UDP length,Checksum,16,32,UDP payload data,UDP payload,IP hdr,UDP hdr,Error Detection,10,Error Detection,Why is there error de
8、tection in the transport layer given that the same function is provided by the data link layer Reliable transmission along each link is still no guarantee of error-free transmission between the source and the destination,11,Error Detection (cont.,12,TCP Overview,Connection-oriented TCP provides: Rel
9、iable delivery of packets, Stream or in-order delivery,Full duplex Flow control: keep sender from overrunning receiver Congestion control: keep sender from overrunning network,13,Transport Control Protocol,Provides a reliable end-to-end byte stream over an unreliable network such as IP. Provides con
10、nection oriented user-to-user service connection management No intermediate nodes are involved in connection establishment. TCP service is obtained by having both the sender and receiver create end points called sockets. Each socket is associated (bound) with IP address of the host 16-bit number loc
11、al to the host called a port,14,Transport Control Protocol(cont.,15,Data Link Versus Transport,Potentially connects many different hosts need explicit connection establishment and termination Potentially different RTT need adaptive timeout mechanism Potentially long delay in network need to be prepa
12、red for arrival of very old packets Potentially different capacity at destination need to accommodate different node capacity Potentially different network capacity need to be prepared for network congestion,16,TCP Segment,A segment consists of a fixed 20-byte header (plus an optional part) followed
13、 by zero or more data bytes,17,TCP Segment (cont.,Source port (16 bits) Specifies the application sending the segment,18,TCP Segment (cont.,Destination port (16 bits) Identifies the application to which the segment is sent,19,TCP Segment (cont.,Sequence number (32 bits) Contains the sequence number
14、of the first byte of data,20,TCP Segment (cont.,Acknowledgment number (32 bits) Contains the byte sequence number which the receiving TCP entity expects to receive next,21,TCP Segment (cont.,Header length (4 bits): the size of the TCP header,22,TCP Segment (cont.,Flags (6 bits) Control functions for
15、 establishing and removing connections etc. Include URG, ACK, PSH, RST, SYN, FIN,23,TCP Segment (cont.,Window (16 bits) Tells the receiving TCP entity how many data bytes the sending TCP entity can accept,24,TCP Segment (cont.,Checksum (16 bits) Used for transport layer error detection. pseudo heade
16、r(12Bytes) + TCP header + data,25,TCP Segment (cont.,Urgent pointer (16 bits) Signal the receiver to deliver the data to the higher layer as quickly as possible,26,TCP Segment (cont.,Options/padding - maximum segment size,27,Segment Format (cont,Each connection identified with 4-tuple: (SrcPort, Src
17、IPAddr, DsrPort, DstIPAddr) Sliding window + flow control acknowledgment, SequenceNum, AdvertisedWinow,28,Connection Establishment,Active participant,client,Passive participant,server,SYN, SequenceNum,x,SYN + ACK, SequenceNum,y,ACK, Acknowledgment,y,1,Acknowledgment,x,1,SequenceNum =x+1,29,Connectio
18、n Termination,30,State Transition Diagram,31,Sliding Window Revisited,Sending side LastByteAcked = LastByteSent LastByteSent = LastByteWritten buffer bytes between LastByteAcked and LastByteWritten,Receiving side LastByteRead NextByteExpected NextByteExpected = LastByteRcvd +1 buffer bytes between N
19、extByteRead and LastByteRcvd,32,Flow Control,Send buffer size: MaxSendBuffer Receive buffer size: MaxRcvBuffer Receiving side LastByteRcvd - LastByteRead MaxSenderBuffer Always send ACK in response to arriving data segment Persist when AdvertisedWindow = 0,33,Flow Control,Transport protocols resembl
20、e the data link protocols Flow control, error control, sequencing A sliding window is used for flow control Differences A router usually has only a few links to others, while a transport entity may have numerous connections. This difference makes it impractical to implement a data link buffering str
21、ategy in the transport layer. The receiver may not dedicate specific buffers to specific connections,34,Flow Control,Dynamic buffer management - credit mechanism Initially, the sender requests a certain number of buffers (credit), based on its perceived needs. The receiver grants as many of these as
22、 it can afford. Every time the sender transmits a TPDU, it decreases its allocation (credit), stopping when the allocation (credit) reaches zero. The receiver returns both acknowledgments and buffer allocations (credit,35,Move forward by ACK,100,200,300,400,500,600,700,800,900,101,201,301,401,501,60
23、1,701,801,1,Data that can be sent,不可发送,Sender wants to send 900 bytes 9 segments(100 bytes each segment). The sender window is 500 bytes. Sender can move the window forward by the ACK from the receiver. In addition, the sender maintain a pointer to identify the data which have been sent,Data that ca
24、nnot be sent,36,100,200,300,400,500,600,700,800,900,101,201,301,401,501,601,701,801,1,不可发送,100,200,300,400,500,600,700,800,900,101,201,301,401,501,601,701,801,1,发送窗口,可发送,不可发送,Send window moves forward,The sender have send 400 bytes. And the sender only receive the ACK of the top 200 bytes. The windo
25、w is 500. So the sender can still send 300 bytes,Data that can be sent,Move forward by ACK,500,600,700,800,900,501,601,701,801,不可发送,Data that cannot be sent,Data that can be sent,Data that cannot be sent,37,100,200,300,400,500,600,700,800,900,101,201,301,401,501,601,701,801,1,pointer,The sender receive the ACK of the following 200 bytes. The window is changed to 400. So the sender can send 400 bytes,100,200,300,400,500,600,700,800,900,101,201,301,401,501,601,701,801,1,不可发送,Send window moves forward,Data that can be sent,Data that cannot be sent,Data that
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化妆品生产传染病上报流程图
- 高血压急症处理-症状识别与应对
- 超声在儿科疾病诊断中的应用
- 健康能源:能源行业传染病自查制度
- 妊娠高血压综合征麻醉的教育培训
- 健身路径:传染病防治的中医知识
- 农业助手:薏苡仁病虫害防治技巧
- 内勤合同范本8篇
- 安全生产专项工作部署会议讲话发言稿
- 市政道路改建工程启动
- 水风光多能互补导论
- 中医师承合同(共)
- 西游记读书指导课评课
- 2024年全国两会精神主要内容
- 布草洗涤工艺
- 旅游产品策划方案
- 课后服务质量和效果提升策略研究
- 实践报告:基于安卓天气预报系统的设计与实现
- 基于Multisim的电子系统设计、仿真与综合应用
- 俄罗斯市场分析报告
- 毕业设计(论文)核桃剥壳机设计(全套图纸三维)
评论
0/150
提交评论