传输层协议引入•传输层位于TCP/IP协议栈第四层,为应用程序提供服务。传输层定义了主机应用程序之间端到端的连通性。目标•掌握TCP协议特性•掌握UDP协议特性目录•1.TCP•2.UDP•3.案例分析Page5传输层协议概述UDPTCPHTTP、Telnet、FTPTFTP、Ping、etcTCP/UDPIPEthernet、802.3、PPP接口和线缆传输层协议•传输层位于应用层和网络层之间,为终端主机提供端到端的连接,以及流量控制(由窗口机制实现)、可靠性(由序列号和确认技术实现)、支持全双工传输等等。传输层协议有两种:TCP和UDP。虽然TCP和UDP都使用相同的网络层协议IP,但是TCP和UDP却为应用层提供完全不同的服务。•传输控制协议TCP:为应用程序提供可靠的面向连接的通信服务,适用于要求得到响应的应用程序。目前,许多流行的应用程序都使用TCP。•用户数据报协议UDP:提供了无连接通信,且不对传送数据包进行可靠的保证。适合于一次传输小量数据,可靠性则由应用层来负责。目录•1.TCP•2.UDP•3.案例分析Page8TCP协议概述•TCP为应用程序提供一种面向连接的、可靠的服务。•TCP的可靠性:面向连接的传输最大报文段长度传输确认机制首部和数据的检验和流量控制Page9TCP首部包格式015163120字节16位目的端口号32位序列号16位窗口大小16位检验和选项16位源端口号32位确认序列号首部长度保留位URGRSTACKPSHSYNFIN16位紧急指针数据TCPHeadTCPDataIPHeadTCP数据段Page10TCP连接的建立ClientServerPage11TCP连接的终止ClientServerPage12端到端通信传输虚电路Host发现——MSS•当建立一个连接时,连接的双方需要协商MSS•MSS的默认值为536,因此它允许IP数据报长度为576字节HostAHostBHostA(MSS)HostB(MSS)Page14可靠性传输传输虚电路HostHost源目的Send1Acknowledge2Send2Acknowledge3Send2Acknowledge2Page15滑动窗口机制需要修改窗口大小数据发送太快了!目录•1.TCP•2.UDP•3.案例分析Page17UDP协议概述•UDP为应用程序提供面向无连接的服务。传输数据之前源端和目的端不需要建立连接。•不需要维护连接状态,收发状态等,因此服务器可同时向多个客户端传输相同的消息。•UDP适用于对传输效率要求高的运用。Page18UDP包格式UDPHeadUDPData01516318字节16位目的端口号16位UDP长度16位源端口号数据16位UDP检验和UDP工作过程进程数据进程UDP头UDP数据IP数据IP报头进程数据帧尾帧头进程数据进程UDP头UDP数据IP数据IP报头进程数据帧尾帧头发送端接收端Page20TCPVSUDPTCPUDP面向连接面向无连接是否连接可靠的不可靠的传输可靠性传输大量的数据传输效率高应用场合慢快速度目录•1.TCP•2.UDP•3.案例分析抓包获取TCP报文抓包获取UDP报文OICQ总结•TCP掌握TCP基本概念、报文格式、三次握手、差错控制机制、流量控制技术、可靠性保证UDP掌握UDP基本概念、报文格式、工作过程