第08章TCP/IP的传输层主要内容传输层是用户设备为上层应用提供分段功能,并且对下层来的数据进行重组。传输层的数据流是在源和目的之间的一个逻辑连接。TCPUDPTCP协议TCP一种面向连接可靠的协议;通过滑动窗口提供流控制,通过序列号和确认提供可靠性。TCP重发一切没有收到的数据,在通讯的两端提供一条虚拟线路。TCP的优势在于为段的可靠传播提供了保证。TCP的报文格式sourceport–源端口destinationport–目的端口sequencenumber–用来保证数据顺序到达的号码acknowledgmentnumber-期望收到的下一个TCP段HLEN–报头中32-bit的数目reserved–设为0codebits–用于控制(比如:建立或终止一个会话)window–发送方愿意接受的Byte数目checksum–报头和数据域的校验urgentpointer–指向紧急数据的末端option–目前有一个被定义:最大TCP段大小data–上层协议数据源端口目的端口序号确认号报头长度保留域编码位窗口校验和紧急指针选项数据端口号TCP和UDP都通过端口(或socket)号向上层传送信息。端口号用于跟踪在网络中同时进行的不同会话。三次握手面向连接的服务包括三个阶段:建立连接数据传输拆除连接建立连接SendSYN(seq=100ctl=SYN)SYNreceivedSendSYN,ACK(seq=300ack=101ctl=syn,ack)Established(seq=101ack=301ctl=ack)HostAHostB123SYNreceived确认与重传肯定确认与重传PAR(Positiveacknowledgmentandretransmission)是许多协议提供可靠性的常用技术。在PAR中,源端发出一个包,启动一个定时器,在下一个包发出前等待确认的到来。如果在收到确认之前定时器超时,则源端回重发这个包,也重新启动定时器。演示:确认与重传滑动窗口滑动窗口是一种流控机制,它要求源端在发送一定量的数据后要从目的端取得确认。演示:windowsUDP协议用户数据报协议(UDP)是TCP/IP协议栈中的无连接传输协议。UDP没有确认以及有保证的发送,是一个进行数据报交换的简单协议。必须由其它的协议来进行错误处理和重传操作。UDP报文格式使用UDP的协议有:TFTP(TrivialFileTransferProtocol)SNMP(SimpleNetworkManagementProtocol)DHCP(DynamicHostControlProtocol)DNS(DomainNameSystem)