ip网络技术基础课件(英文)_图文_第1页
ip网络技术基础课件(英文)_图文_第2页
ip网络技术基础课件(英文)_图文_第3页
ip网络技术基础课件(英文)_图文_第4页
ip网络技术基础课件(英文)_图文_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,End-to-End Protocol,Outline Simple Demultiplexer (UDP) Reliable Byte-Stream (TCP)Connection Establishment/TerminationSliding 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-to-End Protocols,Underlying best-effort networkdrop messagesre-orders messagesdelivers duplicate copies of a given messagelimits messages to some finite sizedelivers messages after an arbitrarily long delayCommon end-to-end servicesguarantee message deliverydeliver messages in the same order they are sentdeliver at most one copy of each messagesupport arbitrarily large messagessupport synchronizationallow the receiver to flow control the sendersupport multiple application processes on each host,4,Transport layer uses the network layer, to send and receive data.Transport Protocol Data Unit (TPDU)Each layer adds its partTCP segment, IP packet, Data link frame,Overview of Transport Layer,5,Overview of Transport Layer(cont.),6,Two types of transport servicesconnection-orientedconnectionless,End-to-End Protocols,7,Simple Demultiplexor (UDP),Transport protocol above IPsimply passes IP through to the upper (application) layersUnreliable and unordered datagram serviceAdds multiplexingNo flow controlEndpoints identified by portsservers have well-known portsFTP - 21, Telnet - 23, http - 80, pop - 110, DNS - 53,8,UDP “Features”,Gives apps the option to send packets unreliablyUseful for multicast appsLow delay transmission for interactive text/audio/videoMinimal connection state: “connectionless”Minimal connection setup timeNo congestion control blast awayBuild own application-level protocol on top of UDP,9,UDP,UDP Header:Only 8 bytes! (vs. IP 20 bytes header)Source port for UDP sending processDest port for UDP receiving processLength in bytes of UDP header + payloadChecksum over UDP header + payload,Source Port #,Dest. Port #,UDP length,Checksum,16,32,UDP payload data,UDP payload,IPhdr,UDPhdr,Error Detection,10,Error Detection,Why is there error detection in the transport layer given that the same function is provided by the data link layerReliable 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-orientedTCP provides:Reliable delivery of packets,Stream or in-order delivery,Full duplexFlow control: keep sender from overrunning receiverCongestion 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 connection oriented user-to-user serviceconnection managementNo 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) withIP address of the host16-bit number local to the host called a port,14,Transport Control Protocol(cont.),15,Data Link Versus Transport,Potentially connects many different hostsneed explicit connection establishment and termination Potentially different RTTneed adaptive timeout mechanismPotentially long delay in networkneed to be prepared for arrival of very old packetsPotentially different capacity at destination need to accommodate different node capacityPotentially different network capacityneed to be prepared for network congestion,16,TCP Segment,A segment consists of a fixed 20-byte header (plus an optional part) followed 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 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 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 header(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, SrcIPAddr, DsrPort, DstIPAddr)Sliding window + flow controlacknowledgment, 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,Connection Termination,30,State Transition Diagram,31,Sliding Window Revisited,Sending sideLastByteAcked = LastByteSentLastByteSent = LastByteWrittenbuffer bytes between LastByteAcked and LastByteWritten,Receiving sideLastByteRead NextByteExpectedNextByteExpected = LastByteRcvd +1buffer bytes between NextByteRead and LastByteRcvd,32,Flow Control,Send buffer size: MaxSendBufferReceive buffer size: MaxRcvBufferReceiving sideLastByteRcvd - LastByteRead MaxSenderBufferAlways send ACK in response to arriving data segmentPersist when AdvertisedWindow = 0,33,Flow Control,Transport protocols resemble the data link protocolsFlow control, error control, sequencingA sliding window is used for flow controlDifferencesA 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 strategy in the transport layer.The receiver may not dedicate specific buffers to specific connections.,34,Flow Control,Dynamic buffer management - credit mechanismInitially, the sender requests a certain number of buffers (credit), based on its perceived needs.The receiver grants as many of these as 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,601,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 cannot 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 window 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 s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论