网络课件网络课件-第7章-2003_第1页
网络课件网络课件-第7章-2003_第2页
网络课件网络课件-第7章-2003_第3页
网络课件网络课件-第7章-2003_第4页
网络课件网络课件-第7章-2003_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

1、第七章 运输层传输服务面向连接的TCP协议无连接的UDP协议socket编程概述17.1 传输服务为应用进程提供端到端的服务增强网络层提供的服务质量QoS应用进程应用进程接口传输协议TPDU传输实体传输实体接口网络层网络层2传输实体Transport Entity在收/发两端的传输层实现对等实体通信的硬件或软件 利用网络层提供的点到点的分组传输服务 向高层提供端到端的TPDU(传输协议数据单元)传输服务3传输层的地位用户进程管理向上提供标准的传输服务向下屏蔽不同的通信子网传输层Transport传输层Transport通信子网4OSI下三层OSI下三层OSI上三层OSI上三层传输层的必要性网络

2、层的分组传输是不可靠的无法确定数据到达终点的时间 子网中各站点存储转发的随机性无法确定数据未达终点的状态 丢失/延迟/即刻到达有必要增强网络层提供的服务质量57.2面向连接的TCP协议TCP协议概述TCP的端口TCP的TPDUTCP的连接管理TCP的传输控制6TCP协议的基本概念Transmission Control Protocol为应用进程提供可靠的、端到端的、面向连接的字节流通信的协议利用网络层IP协议提供的不可靠的分组传输服务,解决分组的重传和排序问题由RFC793正式定义为Internet的许多著名应用提供传输服务7TCP协议的传输实体接口接口8应用进程TCPIP软件实现 用户进程

3、 操作系统核心的一部分 管理TCP字节流 实现与IP层的接口TCP连接的性质全双工 支持同时的双向传输Unicast 只支持两端点之间的通信,不支持Multicast 和Broadcast面向字节流9TCP的端口用套接口创建通信端点TCP协议的端口定义TCP协议的保留端口TCP连接举例10收发双方创建套接口通信端点什么是套接口socket 4BSD UNIX首先提出的进程通信机制用套接口标识用户进程通信的端点 TCP的端点标识(访问端口,主机IP地址)11TCP协议的端口定义用16bit区分216个端口众所周知端口 全局分配,用于标准服务器 取值小于1024临时端口 本地分配(主机建立连接时为

4、用户进程动态分配的端口) 取值大于等于102412TCP保留端口举例Port13应用层F T PT E L N E TS M T PH T T PD N SS N M P传输层2123258053161FTP应用连接端口举例应用:ftp主机A主机B建立端到端的连接ClientServer(21, )众所周知端口(1234, 94)临时端口14TCP协议TCP头部 固定部分:20字节 可选部分数据 适应IP的载荷能力(小于65535Byte) 适应网络的MTU15TCP的封装TCPsegment16帧IP头部TCP头部应用数据IP头部TC

5、P头部应用数据TCP头部应用数据应用数据TCP首部源端口目的端口序列号确认号偏移保留标志窗口校验和紧急指针任选填空数据部分17TCP首部的标志字段URG ACK PSH RST SYNFIN紧急指针域有效确认域有效不必缓冲区满即可上传复位,用于或错误连接用于建立连接的同步序号表示发送方到达数据结尾18TCP的连接管理建立连接 服务器:LISTEN,ACCEPT 客户机:CONNECT释放连接 CLOSE19三次握手建立连接Three-way handshaking正常建立连接过程20三次握手建立TCP连接主机A主机B21三次握手建立连接过程连接请求(seq=x)接受连接,回送确认(seq=y,

6、ACK=x+1)发送数据,回送确认(seq=x,ACK=y+1)连接成功!主机A主机B22释放连接非对称释放 发送释放请求后单方终止连接 有可能丢失对方发送的数据对称释放 各自独立发出释放连接请求 收到对方的释放确认之后才可释放连接 Two-army问题23三次握手?主机A主机B24改进的三次握手主机A主机B演示25Two-army Problem蓝军1蓝军2发送同时进攻的建议接受同时进攻的建议收到对方的确认通信兵穿越防地,不可靠通信蓝军2不知道蓝军1是否收到确认,不能贸然行动26TCP的滑动窗口使用选择重传ARQ.ACK 2.接收有可能乱序接收方ACK接收窗口中的第一个编号270123456

7、789100123456789107.3无连接的UDP协议UDP协议概述UDP的PortUDP的报文格式UDP传输服务举例UDP与TCP的比较28UDP协议概述为应用进程提供无连接的数据传输服务适用场合 实时数据传输 节省建立/释放连接和重传的开销由应用层解决纠错问题由RFC768定义标准29UDP的端点标识:Port用216端口区分不同的应用进程发送端分配源端口,指定宿端口,构造UDP数据报,交IP接收端匹配UDP头部宿端口的应用进程匹配成功,数据报排入相应的队列,若端口队列满, 则丢弃数据报匹配不成功,丢弃数据报,回送“宿端口不可达” 的ICMP报文30UDP保留端口举例Port31应用层

8、N A M E S E R V E RB O O T PT F T PS U N R P CD N S传输层42676911153UDP的PDUUDP协议数据单元 数据报datagram UDP数据报的封装UDP头部UDP伪头部32UDP数据报的封装UDP数据报33帧IP头部UDP头部应用数据IP头部UDP头部应用数据UDP头部应用数据应用数据UDP首部16bit16bit34全“0”:不选;全“1”:校验和为0。最小值为8UDP源端口UDP宿端口UDP长度UDP校验和UDP伪首部信息取自IP层报头,计入校验和,用于检错。3532bit源IP地址宿IP地址00000000协议=17UDP长度UDP与TCP的比较TCP 面向连接的传输服务 unicastUDP 无连接的传输服务broadcast/multicast367.4 套接字什么是套接字socket4BSD UNIX首先提出的进程通信机制用套

温馨提示

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

评论

0/150

提交评论