计算机网络复习运输层

运输层(网络层不保证可靠传输,运输层保证可靠传输)
运输层协议概述
进程之间的通信
网络层主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑通信
运输层的两个主要协议
传输控制协议TCP 尽管下面的网络是不可靠的,但这种逻辑通信信道就相当于一条全双工的可靠信道
用户数据报协议UDP
不可靠信道
都有复用和分用,以及检错的功能,
运输层的端口(16位)
服务器使用的端口号
熟知端口号(0-1023)
登记端口号(1024-65535)
客户端使用的端口号
短暂端口号(49152-65535)
端口号只具有本地意义,它只是为了标志本计算机应用层中的各个进程在和运输层交互时的层间接口,在互联网的不同计算机中,相同的端口号是没有关联的。
两台计算机中的进程要相互通信,不仅要知道对方的IP地址(为了找到对方的计算机),而且还要知道对方的端口号(为了找到对方计算机中的应用进程)


用户数据报协议UDP
UDP概述
  • UDP是无连接的
  • UDP使用尽最大努力交付
  • UDP是面对报文的
  • UDP没有拥塞控制
  • UDP支持一对一,一对多,多对一和多对对的交互通信
  • 首部开销小
UDP的首部格式
  • 源端口
  • 目的端口
  • 长度
  • 检验和

传输控制协议TCP概述
TCP最主要的特点
  • TCP是面向连接的运输层服务
  • 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的(一对一)
  • TCP提供可靠交付的服务
  • TCP提供全双工通信
面向字节流
TCP的连接
TCP把连接作为最基本的抽象,TCP用主机上的IP地址加主机上的端口号作为TCP连接的端点。这样的端点就叫套接字(socket)或插口。



可靠传输的工作原理
1.停止等待协议
  • 无差错情况
  • 出现差错
  • 确认丢失和确认迟到
  • 信道利用率
  • 能够在不可靠的传输网络上实现可靠的通信。每发送完一个分组就停止发送,等待对方的确认,在收到确认后再发送下一个分组。分组需要编号
2.连续ARQ协议
  • 提高信道利用率
  • 发送方维持一个发送窗口,凡位于发送窗口内的分组都可连续发送出去,而不需要等待对方的确认。而接收方一般采用累计确认,对按序到达的最后一个分组发送确认,表明到这个分组为止的所有分组都已正确到达了


TCP报文段的首部格式
  • 源端口(2字节)和目的端口(2字节
  • 序号(4字节)
  • 本报文段所发送数据的第一个字节的序号
  • 确认号(4字节)
  • 期望收到对方下一个报文段的第一个数据字节的序号
  • 数据偏移(4位)
  • 保留(6位)
  • 紧急 URG
  • 确认ACK(ACKnowledgement)
  • 推送(Push)
  • 复位RST(ReSet)
  • 同步SYN(SYNchronization)
  • 终止FIN(FINis)
  • 窗口(2字节)
  • 窗口值作为接收方让发送方设置其发送窗口的依据。
  • 窗口值是进程在动态变着的
  • 检验和(2字节)
  • 紧急指针(2字节)
  • 选项(长度可变,最长可达40字节) TCP报文段首部的前20个字节是固定的,后面有4N字节是根据需要而增加的选项(N是整数)在一个TCP连接中传送的字节流中每一个字节都按顺序编号

TCP可靠传输的实现
  1. 以字节为单位的滑动窗口
  2. 超时重传时间的选择
  3. 选择确认SACK
TCP流量控制
利用滑动窗口实现流量控制
流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。
发送方的发送窗口不能超过接收方给出的接收窗口的数值,TCP窗口单位是字节,不是报文段
TCP的传输效率
TCP的拥塞控制
拥塞控制的一般原理:防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。拥塞控制所要做的都有一个前提:网络能够承受现有的网络负荷。拥塞控制是一个全局性的过程,涉及到所有的主机、路由器,以及与降低网络传输性能有关的所有因素。
TCP的拥塞控制方法
慢开始( slow-start )、拥塞避免( congestion avoidance )、快重传( fast retransmit )和快恢复( fast recovery )
TCP的运输连接管理
运输连接有三个阶段
  • 连接建立
  • 数据传送
  • 连接释放

TCP连接建立-三报文握手机制

TCP的连接释放-四报文握手机制

TCP的有限状态机

计算机网络中的四种计时器:持续计时器,超时重传计时器,时间等待计时器,保活计时器





阅读更多
个人分类: 计算机网络
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭